@ebuilding/biz-list 2.0.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.
Files changed (131) hide show
  1. package/LICENSE +0 -0
  2. package/README.md +0 -0
  3. package/fesm2022/ebuilding-biz-list.mjs +6 -0
  4. package/fesm2022/ebuilding-biz-list.mjs.map +1 -0
  5. package/fesm2022/list.mjs +315 -0
  6. package/fesm2022/list.mjs.map +1 -0
  7. package/fesm2022/list.tree.mjs +475 -0
  8. package/fesm2022/list.tree.mjs.map +1 -0
  9. package/fesm2022/page-comm.single.mjs +283 -0
  10. package/fesm2022/page-comm.single.mjs.map +1 -0
  11. package/fesm2022/page.mjs +832 -0
  12. package/fesm2022/page.mjs.map +1 -0
  13. package/fesm2022/pre-control.mjs +347 -0
  14. package/fesm2022/pre-control.mjs.map +1 -0
  15. package/fesm2022/pre-control.pre-card.mjs +420 -0
  16. package/fesm2022/pre-control.pre-card.mjs.map +1 -0
  17. package/fesm2022/pre-control.pre-compare.mjs +136 -0
  18. package/fesm2022/pre-control.pre-compare.mjs.map +1 -0
  19. package/fesm2022/pre-control.pre-page-ref.mjs +304 -0
  20. package/fesm2022/pre-control.pre-page-ref.mjs.map +1 -0
  21. package/fesm2022/pre-control.pre-page.mjs +347 -0
  22. package/fesm2022/pre-control.pre-page.mjs.map +1 -0
  23. package/fesm2022/pre-control.pre-report.mjs +206 -0
  24. package/fesm2022/pre-control.pre-report.mjs.map +1 -0
  25. package/fesm2022/pre-control.pre-tree.mjs +925 -0
  26. package/fesm2022/pre-control.pre-tree.mjs.map +1 -0
  27. package/fesm2022/pre-control.single.mjs +347 -0
  28. package/fesm2022/pre-control.single.mjs.map +1 -0
  29. package/fesm2022/pre-dialog.mjs +120 -0
  30. package/fesm2022/pre-dialog.mjs.map +1 -0
  31. package/fesm2022/srv.basic.mjs +561 -0
  32. package/fesm2022/srv.basic.mjs.map +1 -0
  33. package/fesm2022/srv.commEvent.service.mjs +199 -0
  34. package/fesm2022/srv.commEvent.service.mjs.map +1 -0
  35. package/fesm2022/srv.commHeader.service.mjs +91 -0
  36. package/fesm2022/srv.commHeader.service.mjs.map +1 -0
  37. package/fesm2022/srv.commList.service.mjs +92 -0
  38. package/fesm2022/srv.commList.service.mjs.map +1 -0
  39. package/fesm2022/srv.commPage.service.mjs +399 -0
  40. package/fesm2022/srv.commPage.service.mjs.map +1 -0
  41. package/fesm2022/srv.page.service.mjs +701 -0
  42. package/fesm2022/srv.page.service.mjs.map +1 -0
  43. package/index.d.ts +1 -0
  44. package/list/index.d.ts +1 -0
  45. package/list/src/component/card/index.d.ts +18 -0
  46. package/list/src/component/table/index.d.ts +18 -0
  47. package/list/src/component/table-tree/index.d.ts +16 -0
  48. package/list/src/default/index.d.ts +30 -0
  49. package/list/src/index.module.d.ts +10 -0
  50. package/list/src/public_api.d.ts +2 -0
  51. package/list/src/service/list.service.d.ts +38 -0
  52. package/list-tree/index.d.ts +1 -0
  53. package/list-tree/src/component/list/index.d.ts +16 -0
  54. package/list-tree/src/component/tree/index.d.ts +15 -0
  55. package/list-tree/src/default/index.d.ts +26 -0
  56. package/list-tree/src/index.module.d.ts +10 -0
  57. package/list-tree/src/main/index.d.ts +16 -0
  58. package/list-tree/src/public_api.d.ts +3 -0
  59. package/list-tree/src/service/tree.service.d.ts +61 -0
  60. package/package.json +96 -0
  61. package/page/index.d.ts +1 -0
  62. package/page/src/components/import/index.d.ts +41 -0
  63. package/page/src/components/result/index.d.ts +17 -0
  64. package/page/src/default/index.d.ts +101 -0
  65. package/page/src/dialog/index.d.ts +38 -0
  66. package/page/src/index.module.d.ts +10 -0
  67. package/page/src/public_api.d.ts +5 -0
  68. package/page-comm/single/index.d.ts +1 -0
  69. package/page-comm/single/src/components/import/index.d.ts +41 -0
  70. package/page-comm/single/src/components/result/index.d.ts +17 -0
  71. package/page-comm/single/src/default/index.d.ts +21 -0
  72. package/page-comm/single/src/index.module.d.ts +9 -0
  73. package/page-comm/single/src/public_api.d.ts +4 -0
  74. package/pre-control/index.d.ts +1 -0
  75. package/pre-control/pre-card/index.d.ts +1 -0
  76. package/pre-control/pre-card/src/card.service.d.ts +29 -0
  77. package/pre-control/pre-card/src/components/card-other/index.d.ts +18 -0
  78. package/pre-control/pre-card/src/components/card-user/index.d.ts +44 -0
  79. package/pre-control/pre-card/src/data/index.d.ts +32 -0
  80. package/pre-control/pre-card/src/default/index.d.ts +21 -0
  81. package/pre-control/pre-card/src/index.module.d.ts +10 -0
  82. package/pre-control/pre-card/src/public_api.d.ts +3 -0
  83. package/pre-control/pre-compare/index.d.ts +1 -0
  84. package/pre-control/pre-compare/src/default/index.d.ts +20 -0
  85. package/pre-control/pre-compare/src/index.module.d.ts +7 -0
  86. package/pre-control/pre-compare/src/public_api.d.ts +2 -0
  87. package/pre-control/pre-page/index.d.ts +1 -0
  88. package/pre-control/pre-page/src/default/index.d.ts +71 -0
  89. package/pre-control/pre-page/src/index.module.d.ts +7 -0
  90. package/pre-control/pre-page/src/public_api.d.ts +2 -0
  91. package/pre-control/pre-page-ref/index.d.ts +1 -0
  92. package/pre-control/pre-page-ref/src/default/index.d.ts +68 -0
  93. package/pre-control/pre-page-ref/src/index.module.d.ts +8 -0
  94. package/pre-control/pre-page-ref/src/public_api.d.ts +2 -0
  95. package/pre-control/pre-report/index.d.ts +1 -0
  96. package/pre-control/pre-report/src/chart/index.d.ts +16 -0
  97. package/pre-control/pre-report/src/index.module.d.ts +9 -0
  98. package/pre-control/pre-report/src/page/index.d.ts +23 -0
  99. package/pre-control/pre-report/src/page-item/index.d.ts +14 -0
  100. package/pre-control/pre-report/src/public_api.d.ts +3 -0
  101. package/pre-control/pre-tree/index.d.ts +1 -0
  102. package/pre-control/pre-tree/src/components/form-left/index.component.d.ts +22 -0
  103. package/pre-control/pre-tree/src/components/form-right/index.component.d.ts +43 -0
  104. package/pre-control/pre-tree/src/components/list-left/index.component.d.ts +22 -0
  105. package/pre-control/pre-tree/src/components/list-right/index.component.d.ts +37 -0
  106. package/pre-control/pre-tree/src/default/index.d.ts +25 -0
  107. package/pre-control/pre-tree/src/form/index.d.ts +19 -0
  108. package/pre-control/pre-tree/src/index.module.d.ts +14 -0
  109. package/pre-control/pre-tree/src/list/index.d.ts +33 -0
  110. package/pre-control/pre-tree/src/public_api.d.ts +4 -0
  111. package/pre-control/pre-tree/src/service/treeFormService.d.ts +57 -0
  112. package/pre-control/pre-tree/src/service/treeListService.d.ts +56 -0
  113. package/pre-control/single/index.d.ts +1 -0
  114. package/pre-control/single/src/basic.service.d.ts +9 -0
  115. package/pre-control/single/src/components/box/index.d.ts +13 -0
  116. package/pre-control/single/src/components/expand/index.d.ts +13 -0
  117. package/pre-control/single/src/components/item/index.d.ts +17 -0
  118. package/pre-control/single/src/components/tabs/index.d.ts +13 -0
  119. package/pre-control/single/src/index.module.d.ts +7 -0
  120. package/pre-control/single/src/main/index.d.ts +25 -0
  121. package/pre-control/single/src/public_api.d.ts +2 -0
  122. package/pre-dialog/index.d.ts +1 -0
  123. package/pre-dialog/src/index.module.d.ts +7 -0
  124. package/pre-dialog/src/main/index.d.ts +23 -0
  125. package/pre-dialog/src/public_api.d.ts +2 -0
  126. package/service/basic/index.d.ts +118 -0
  127. package/service/commEvent.service/index.d.ts +48 -0
  128. package/service/commHeader.service/index.d.ts +26 -0
  129. package/service/commList.service/index.d.ts +26 -0
  130. package/service/commPage.service/index.d.ts +44 -0
  131. package/service/page.service/index.d.ts +127 -0
@@ -0,0 +1,925 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Inject, Injectable, Input, Component, EventEmitter, Output, NgModule } from '@angular/core';
3
+ import * as i4$2 from '@angular/common';
4
+ import { CommonModule } from '@angular/common';
5
+ import * as i5 from '@angular/forms';
6
+ import { FormsModule, FormGroup, ReactiveFormsModule } from '@angular/forms';
7
+ import * as i6 from 'ng-zorro-antd/input';
8
+ import { NzInputModule } from 'ng-zorro-antd/input';
9
+ import * as i7 from 'ng-zorro-antd/tree';
10
+ import { NzTreeModule } from 'ng-zorro-antd/tree';
11
+ import * as i8 from 'ng-zorro-antd/icon';
12
+ import { NzIconModule } from 'ng-zorro-antd/icon';
13
+ import * as i9 from 'ng-zorro-antd/button';
14
+ import { NzButtonModule } from 'ng-zorro-antd/button';
15
+ import * as i12 from '@ebuilding/abc/empty';
16
+ import { GramDeonEmptyModule } from '@ebuilding/abc/empty';
17
+ import * as i3$1 from '@ebuilding/base/shared.srv/global.event';
18
+ import { GramGlobalService } from '@ebuilding/base/shared.srv/global.event';
19
+ import * as i4$1 from '@ebuilding/base/shared.srv/commApi.service';
20
+ import { CommAPIService } from '@ebuilding/base/shared.srv/commApi.service';
21
+ import * as i1 from '@angular/router';
22
+ import * as i1$1 from '@delon/theme';
23
+ import * as i3 from 'ng-zorro-antd/modal';
24
+ import * as i4 from 'ng-zorro-antd/message';
25
+ import * as i10 from 'ng-zorro-antd/core/transition-patch';
26
+ import * as i11 from 'ng-zorro-antd/core/wave';
27
+ import * as i5$1 from 'ng-zorro-antd/spin';
28
+ import { NzSpinModule } from 'ng-zorro-antd/spin';
29
+ import * as i12$1 from '@kre-form/core';
30
+ import { FormlyModule } from '@kre-form/core';
31
+ import { NzEmptyModule } from 'ng-zorro-antd/empty';
32
+ import { GramDeonAntdModule } from '@ebuilding/biz-comm/type';
33
+ import { of, zip } from 'rxjs';
34
+ import _ from 'lodash';
35
+ import * as i3$2 from '@ebuilding/base/shared.srv/deon.util';
36
+ import * as i8$1 from '@ebuilding/biz-list/pre-control/pre-page';
37
+ import { PrePageModule } from '@ebuilding/biz-list/pre-control/pre-page';
38
+
39
+ class TreeListService {
40
+ router;
41
+ http;
42
+ modal;
43
+ msg;
44
+ commApiSrv;
45
+ loading = false;
46
+ pageInfo = null;
47
+ treeId = null;
48
+ pageId = null;
49
+ treeAPI = null;
50
+ treeListAPI = null;
51
+ treeKeyWord = null;
52
+ treeShowType = 'tree';
53
+ moduleCode = null;
54
+ /**
55
+ * Tree 节点全部展开
56
+ */
57
+ treeExpandAll = true;
58
+ /**
59
+ * Tree 数据集合
60
+ */
61
+ treeData = [];
62
+ /**
63
+ * 选中的节点
64
+ */
65
+ selectedNode;
66
+ selectedLevel;
67
+ /**
68
+ * 监听常量
69
+ */
70
+ globalConstant = 'reload-tree-list';
71
+ selectedKey = null;
72
+ selectedKeys = [];
73
+ expandedKeys = [];
74
+ sourceData = null;
75
+ constructor(router, http, modal, msg, commApiSrv) {
76
+ this.router = router;
77
+ this.http = http;
78
+ this.modal = modal;
79
+ this.msg = msg;
80
+ this.commApiSrv = commApiSrv;
81
+ }
82
+ initPageData() {
83
+ this.treeAPI = this.commApiSrv.getPageTree(this.moduleCode);
84
+ this.treeListAPI = this.commApiSrv.getPageTreeList(this.moduleCode);
85
+ this.treeKeyWord = null;
86
+ this.treeShowType = 'tree';
87
+ this.loading = false;
88
+ }
89
+ /**
90
+ * 获取 Tree 集合
91
+ */
92
+ getPageTreeData() {
93
+ if (this.treeId) {
94
+ this.loading = true;
95
+ this.treeData = [];
96
+ this.treeShowType = 'tree';
97
+ this.treeExpandAll = true;
98
+ this.http.post(`${this.treeAPI}/${this.treeId}`).subscribe((res) => {
99
+ if (res && res.success == true) {
100
+ let result = res.result;
101
+ if (result && result.basic) {
102
+ this.pageInfo = result.basic;
103
+ }
104
+ if (result && result.treeData && result.treeData.length > 0) {
105
+ this.treeData = [...result.treeData];
106
+ }
107
+ else {
108
+ {
109
+ this.treeData = [];
110
+ }
111
+ }
112
+ }
113
+ this.loading = false;
114
+ });
115
+ }
116
+ }
117
+ /**
118
+ * 获取 Tree 集合
119
+ */
120
+ getPageTreeListData() {
121
+ if (this.treeId) {
122
+ this.loading = true;
123
+ this.treeData = [];
124
+ this.treeShowType = 'list';
125
+ let postData = { pageId: this.treeId, keyword: this.treeKeyWord };
126
+ this.http.post(this.treeListAPI, postData).subscribe((res) => {
127
+ if (res && res.success == true) {
128
+ let result = res.result;
129
+ if (result && result.basic) {
130
+ this.pageInfo = result.basic;
131
+ }
132
+ if (result && result.treeData && result.treeData.length > 0) {
133
+ this.treeData = [...result.treeData];
134
+ }
135
+ else {
136
+ {
137
+ this.treeData = [];
138
+ }
139
+ }
140
+ }
141
+ this.loading = false;
142
+ });
143
+ }
144
+ }
145
+ pageChangeEvent(e) {
146
+ if (this.treeKeyWord) {
147
+ this.getPageTreeListData();
148
+ }
149
+ else {
150
+ this.getPageTreeData();
151
+ }
152
+ }
153
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TreeListService, deps: [{ token: i1.Router }, { token: i1$1._HttpClient }, { token: i3.NzModalService }, { token: i4.NzMessageService }, { token: CommAPIService }], target: i0.ɵɵFactoryTarget.Injectable });
154
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TreeListService });
155
+ }
156
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TreeListService, decorators: [{
157
+ type: Injectable
158
+ }], ctorParameters: () => [{ type: i1.Router }, { type: i1$1._HttpClient }, { type: i3.NzModalService }, { type: i4.NzMessageService }, { type: i4$1.CommAPIService, decorators: [{
159
+ type: Inject,
160
+ args: [CommAPIService]
161
+ }] }] });
162
+
163
+ class TreeMainComponent {
164
+ http;
165
+ cdr;
166
+ treeSrv;
167
+ globalSrv;
168
+ treeConfig = null;
169
+ constructor(http, cdr, treeSrv, globalSrv) {
170
+ this.http = http;
171
+ this.cdr = cdr;
172
+ this.treeSrv = treeSrv;
173
+ this.globalSrv = globalSrv;
174
+ }
175
+ ngOnInit() { }
176
+ ngOnChanges(changes) {
177
+ if (changes["treeConfig"]) {
178
+ if (this.treeConfig) {
179
+ this.getPageData();
180
+ }
181
+ }
182
+ }
183
+ getPageData() {
184
+ this.treeSrv.treeId = this.treeConfig.id;
185
+ if (this.treeConfig?.moduleCode) {
186
+ this.treeSrv.moduleCode = this.treeConfig?.moduleCode;
187
+ }
188
+ this.treeSrv.initPageData();
189
+ this.treeSrv.getPageTreeData();
190
+ }
191
+ btnTreeSearch() {
192
+ if (this.treeSrv.treeKeyWord) {
193
+ this.treeSrv.getPageTreeListData();
194
+ }
195
+ else {
196
+ this.treeSrv.getPageTreeData();
197
+ }
198
+ }
199
+ /**
200
+ * 点击树
201
+ * @param event
202
+ */
203
+ treeClick(event) {
204
+ this.treeSrv.loading = true;
205
+ this.treeSrv.selectedLevel = event.node.level;
206
+ //event.node.isExpanded = !event.node.isExpanded;
207
+ event.node.isExpanded = true;
208
+ this.treeSrv.selectedNode = event.node.origin;
209
+ this.treeSrv.selectedKey = event.node.key;
210
+ this.treeSrv.selectedKeys = [...[event.node.key]];
211
+ this.globalSrv.notifyDataChanged(this.treeSrv.globalConstant, { rd: Math.random() });
212
+ }
213
+ itemClick(event) {
214
+ this.treeSrv.loading = true;
215
+ this.treeSrv.selectedLevel = 0;
216
+ this.treeSrv.selectedNode = { id: event.id, title: event.title };
217
+ this.treeSrv.selectedKey = event.key;
218
+ this.treeSrv.selectedKeys = [...[event.key]];
219
+ this.globalSrv.notifyDataChanged(this.treeSrv.globalConstant, { rd: Math.random() });
220
+ }
221
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TreeMainComponent, deps: [{ token: i1$1._HttpClient }, { token: i0.ChangeDetectorRef }, { token: TreeListService }, { token: i3$1.GramGlobalService }], target: i0.ɵɵFactoryTarget.Component });
222
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: TreeMainComponent, isStandalone: true, selector: "pre-tree", inputs: { treeConfig: "treeConfig" }, providers: [GramGlobalService, CommAPIService, TreeListService], usesOnChanges: true, ngImport: i0, template: "<div class=\"tree-query\">\r\n <nz-input-group nzSearch [nzAddOnAfter]=\"suffixButton\">\r\n <input type=\"text\" nz-input placeholder=\"\u8BF7\u8F93\u5165\u5173\u952E\u5B57\u67E5\u8BE2\" [(ngModel)]=\"treeSrv.treeKeyWord\" />\r\n </nz-input-group>\r\n <ng-template #suffixButton>\r\n <button nz-button nzType=\"primary\" type=\"button\" nzSearch (click)=\"btnTreeSearch()\"><i nz-icon\r\n nzType=\"search\"></i>\u67E5\u8BE2</button>\r\n </ng-template>\r\n</div>\r\n<div class=\"tree-content\">\r\n <ng-container *ngIf=\"treeSrv.treeData!! && treeSrv.treeData.length > 0; else tmpEmpty\">\r\n <ng-container *ngIf=\"treeSrv.treeShowType == 'tree'; else tmpList\">\r\n <nz-tree [nzData]=\"treeSrv.treeData\" [nzExpandAll]=\"treeSrv.treeExpandAll\" [nzExpandedKeys]=\"treeSrv.expandedKeys\"\r\n [nzSelectedKeys]=\"treeSrv.selectedKeys\" (nzClick)=\"treeClick($event)\" [nzTreeTemplate]=\"nzTreeTemplate\">\r\n </nz-tree>\r\n <ng-template #nzTreeTemplate let-node let-origin=\"origin\">\r\n <span class=\"custom-node\">\r\n <span class=\"folder-name\">{{ node.title }}</span>\r\n <ng-container [ngSwitch]=\"origin.effectStatus\">\r\n <ng-container *ngSwitchCase=\"'WAITING'\">\r\n <span class=\"folder-waiting\">\r\n <span nz-icon nzType=\"warning\"></span>\r\n </span>\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n\r\n </ng-container>\r\n </ng-container>\r\n </span>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-template #tmpList>\r\n <ul class=\"list-content\">\r\n <ng-container *ngFor=\"let item of treeSrv.treeData\">\r\n <li (click)=\"itemClick(item)\"\r\n [ngClass]=\"{ 'item-selected': treeSrv.selectedKey!! && item.id == treeSrv.selectedKey }\">\r\n {{ item.title }}\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </ng-template>\r\n </ng-container>\r\n</div>\r\n<ng-template #tmpEmpty>\r\n <div class=\"tree-empty\" *ngIf=\"treeSrv.loading == false\">\r\n <gram-empty state=\"empty9\"></gram-empty>\r\n </div>\r\n</ng-template>", styles: [":host ::ng-deep{display:flex;flex:1;flex-direction:column;width:100%;height:100%;padding:0}:host ::ng-deep .item-selected{color:#fff;background-color:#1177fb}:host ::ng-deep .tree-query{display:flex;width:100%;padding:8px 12px 8px 0;border-bottom:1px solid #eaeaea}:host ::ng-deep .tree-query nz-input-group{width:100%}:host ::ng-deep .list-content{width:100%;margin:0;padding:0}:host ::ng-deep .list-content li{min-height:24px;margin:0 0 4px;padding:6px 10px}:host ::ng-deep .list-content li:hover{background:#d6e9ff;cursor:pointer}:host ::ng-deep .tree-content{flex:1;width:100%;padding:10px 12px;overflow-x:overlay;overflow-y:overlay}:host ::ng-deep .tree-content .ant-tree{width:100%}:host ::ng-deep .tree-content::-webkit-scrollbar{width:8px}:host ::ng-deep .tree-content::-webkit-scrollbar-thumb{background-color:#94949475;border-radius:7px}:host ::ng-deep .tree-content::-webkit-scrollbar-track{background-color:#fff}:host ::ng-deep .tree-content .custom-node{display:flex;width:100%;cursor:pointer}:host ::ng-deep .tree-content .custom-node .folder-waiting{margin-left:10px;color:red}:host ::ng-deep .tree-content .custom-node .folder-operation{display:none;cursor:pointer}:host ::ng-deep .tree-content nz-tree-node-switcher{width:10px!important}:host ::ng-deep .tree-content .ant-tree-indent-unit{width:10px!important}:host ::ng-deep .tree-content .ant-tree-treenode{padding:4px 0}:host ::ng-deep .tree-content .ant-tree-treenode-selected{color:#fff!important;background:#1177fb!important}:host ::ng-deep .tree-content .ant-tree-treenode-selected .custom-node .folder-operation{display:block!important;color:#fff!important}:host ::ng-deep .tree-content .ant-tree-treenode-selected nz-tree-node-title{background:none;transition:none}:host ::ng-deep .tree-content nz-tree-node:hover{background:#d6e9ff}:host ::ng-deep .tree-content nz-tree-node:hover nz-tree-node-title{background:none;transition:none}:host ::ng-deep .tree-content nz-tree-node:hover .custom-node .folder-operation{display:block;color:#1177fb}:host ::ng-deep nz-tree-node-title{width:100%;cursor:pointer}:host ::ng-deep .tree-empty{display:flex;width:100%;height:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4$2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i4$2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i4$2.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: NzInputModule }, { kind: "directive", type: i6.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzBorderless", "nzSize", "nzStepperless", "nzStatus", "disabled"], exportAs: ["nzInput"] }, { kind: "component", type: i6.NzInputGroupComponent, selector: "nz-input-group", inputs: ["nzAddOnBeforeIcon", "nzAddOnAfterIcon", "nzPrefixIcon", "nzSuffixIcon", "nzAddOnBefore", "nzAddOnAfter", "nzPrefix", "nzStatus", "nzSuffix", "nzSize", "nzSearch", "nzCompact"], exportAs: ["nzInputGroup"] }, { kind: "ngmodule", type: NzTreeModule }, { kind: "component", type: i7.NzTreeComponent, selector: "nz-tree", inputs: ["nzShowIcon", "nzHideUnMatched", "nzBlockNode", "nzExpandAll", "nzSelectMode", "nzCheckStrictly", "nzShowExpand", "nzShowLine", "nzCheckable", "nzAsyncData", "nzDraggable", "nzMultiple", "nzExpandedIcon", "nzVirtualItemSize", "nzVirtualMaxBufferPx", "nzVirtualMinBufferPx", "nzVirtualHeight", "nzTreeTemplate", "nzBeforeDrop", "nzData", "nzExpandedKeys", "nzSelectedKeys", "nzCheckedKeys", "nzSearchValue", "nzSearchFunc"], outputs: ["nzExpandedKeysChange", "nzSelectedKeysChange", "nzCheckedKeysChange", "nzSearchValueChange", "nzClick", "nzDblClick", "nzContextMenu", "nzCheckboxChange", "nzExpandChange", "nzOnDragStart", "nzOnDragEnter", "nzOnDragOver", "nzOnDragLeave", "nzOnDrop", "nzOnDragEnd"], exportAs: ["nzTree"] }, { kind: "ngmodule", type: NzIconModule }, { kind: "directive", type: i8.NzIconDirective, selector: "nz-icon,[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "ngmodule", type: NzButtonModule }, { kind: "component", type: i9.NzButtonComponent, selector: "button[nz-button], a[nz-button]", inputs: ["nzBlock", "nzGhost", "nzSearch", "nzLoading", "nzDanger", "disabled", "tabIndex", "nzType", "nzShape", "nzSize"], exportAs: ["nzButton"] }, { kind: "directive", type: i10.ɵNzTransitionPatchDirective, selector: "[nz-button], nz-button-group, [nz-icon], nz-icon, [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { kind: "directive", type: i11.NzWaveDirective, selector: "[nz-wave],button[nz-button]:not([nzType=\"link\"]):not([nzType=\"text\"])", inputs: ["nzWaveExtraNode"], exportAs: ["nzWave"] }, { kind: "ngmodule", type: GramDeonEmptyModule }, { kind: "component", type: i12.GramDeonEmptyComponent, selector: "gram-empty", inputs: ["desc", "state"], outputs: ["emptyClick"] }] });
223
+ }
224
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TreeMainComponent, decorators: [{
225
+ type: Component,
226
+ args: [{ selector: 'pre-tree', providers: [GramGlobalService, CommAPIService, TreeListService], imports: [
227
+ CommonModule,
228
+ FormsModule,
229
+ NzInputModule,
230
+ NzTreeModule,
231
+ NzIconModule,
232
+ NzButtonModule,
233
+ GramDeonEmptyModule
234
+ ], template: "<div class=\"tree-query\">\r\n <nz-input-group nzSearch [nzAddOnAfter]=\"suffixButton\">\r\n <input type=\"text\" nz-input placeholder=\"\u8BF7\u8F93\u5165\u5173\u952E\u5B57\u67E5\u8BE2\" [(ngModel)]=\"treeSrv.treeKeyWord\" />\r\n </nz-input-group>\r\n <ng-template #suffixButton>\r\n <button nz-button nzType=\"primary\" type=\"button\" nzSearch (click)=\"btnTreeSearch()\"><i nz-icon\r\n nzType=\"search\"></i>\u67E5\u8BE2</button>\r\n </ng-template>\r\n</div>\r\n<div class=\"tree-content\">\r\n <ng-container *ngIf=\"treeSrv.treeData!! && treeSrv.treeData.length > 0; else tmpEmpty\">\r\n <ng-container *ngIf=\"treeSrv.treeShowType == 'tree'; else tmpList\">\r\n <nz-tree [nzData]=\"treeSrv.treeData\" [nzExpandAll]=\"treeSrv.treeExpandAll\" [nzExpandedKeys]=\"treeSrv.expandedKeys\"\r\n [nzSelectedKeys]=\"treeSrv.selectedKeys\" (nzClick)=\"treeClick($event)\" [nzTreeTemplate]=\"nzTreeTemplate\">\r\n </nz-tree>\r\n <ng-template #nzTreeTemplate let-node let-origin=\"origin\">\r\n <span class=\"custom-node\">\r\n <span class=\"folder-name\">{{ node.title }}</span>\r\n <ng-container [ngSwitch]=\"origin.effectStatus\">\r\n <ng-container *ngSwitchCase=\"'WAITING'\">\r\n <span class=\"folder-waiting\">\r\n <span nz-icon nzType=\"warning\"></span>\r\n </span>\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n\r\n </ng-container>\r\n </ng-container>\r\n </span>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-template #tmpList>\r\n <ul class=\"list-content\">\r\n <ng-container *ngFor=\"let item of treeSrv.treeData\">\r\n <li (click)=\"itemClick(item)\"\r\n [ngClass]=\"{ 'item-selected': treeSrv.selectedKey!! && item.id == treeSrv.selectedKey }\">\r\n {{ item.title }}\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </ng-template>\r\n </ng-container>\r\n</div>\r\n<ng-template #tmpEmpty>\r\n <div class=\"tree-empty\" *ngIf=\"treeSrv.loading == false\">\r\n <gram-empty state=\"empty9\"></gram-empty>\r\n </div>\r\n</ng-template>", styles: [":host ::ng-deep{display:flex;flex:1;flex-direction:column;width:100%;height:100%;padding:0}:host ::ng-deep .item-selected{color:#fff;background-color:#1177fb}:host ::ng-deep .tree-query{display:flex;width:100%;padding:8px 12px 8px 0;border-bottom:1px solid #eaeaea}:host ::ng-deep .tree-query nz-input-group{width:100%}:host ::ng-deep .list-content{width:100%;margin:0;padding:0}:host ::ng-deep .list-content li{min-height:24px;margin:0 0 4px;padding:6px 10px}:host ::ng-deep .list-content li:hover{background:#d6e9ff;cursor:pointer}:host ::ng-deep .tree-content{flex:1;width:100%;padding:10px 12px;overflow-x:overlay;overflow-y:overlay}:host ::ng-deep .tree-content .ant-tree{width:100%}:host ::ng-deep .tree-content::-webkit-scrollbar{width:8px}:host ::ng-deep .tree-content::-webkit-scrollbar-thumb{background-color:#94949475;border-radius:7px}:host ::ng-deep .tree-content::-webkit-scrollbar-track{background-color:#fff}:host ::ng-deep .tree-content .custom-node{display:flex;width:100%;cursor:pointer}:host ::ng-deep .tree-content .custom-node .folder-waiting{margin-left:10px;color:red}:host ::ng-deep .tree-content .custom-node .folder-operation{display:none;cursor:pointer}:host ::ng-deep .tree-content nz-tree-node-switcher{width:10px!important}:host ::ng-deep .tree-content .ant-tree-indent-unit{width:10px!important}:host ::ng-deep .tree-content .ant-tree-treenode{padding:4px 0}:host ::ng-deep .tree-content .ant-tree-treenode-selected{color:#fff!important;background:#1177fb!important}:host ::ng-deep .tree-content .ant-tree-treenode-selected .custom-node .folder-operation{display:block!important;color:#fff!important}:host ::ng-deep .tree-content .ant-tree-treenode-selected nz-tree-node-title{background:none;transition:none}:host ::ng-deep .tree-content nz-tree-node:hover{background:#d6e9ff}:host ::ng-deep .tree-content nz-tree-node:hover nz-tree-node-title{background:none;transition:none}:host ::ng-deep .tree-content nz-tree-node:hover .custom-node .folder-operation{display:block;color:#1177fb}:host ::ng-deep nz-tree-node-title{width:100%;cursor:pointer}:host ::ng-deep .tree-empty{display:flex;width:100%;height:100%}\n"] }]
235
+ }], ctorParameters: () => [{ type: i1$1._HttpClient }, { type: i0.ChangeDetectorRef }, { type: TreeListService }, { type: i3$1.GramGlobalService }], propDecorators: { treeConfig: [{
236
+ type: Input
237
+ }] } });
238
+
239
+ class TreeFormService {
240
+ router;
241
+ http;
242
+ modal;
243
+ msg;
244
+ commApiSrv;
245
+ id = null;
246
+ loading = true;
247
+ pageInfo = null;
248
+ treeId = null;
249
+ formId = null;
250
+ treeAPI = null;
251
+ treeListAPI = null;
252
+ treeKeyWord = null;
253
+ treeShowType = 'tree';
254
+ moduleCode = 'user';
255
+ /**
256
+ * Tree 节点全部展开
257
+ */
258
+ treeExpandAll = true;
259
+ /**
260
+ * Tree 数据集合
261
+ */
262
+ treeData = [];
263
+ /**
264
+ * 选中的节点
265
+ */
266
+ selectedNode = null;
267
+ selectedLevel;
268
+ formType = 'ADD';
269
+ /**
270
+ * 监听常量
271
+ */
272
+ globalConstant = 'reload-tree-form';
273
+ selectedKey = null;
274
+ selectedKeys = [];
275
+ expandedKeys = [];
276
+ constructor(router, http, modal, msg, commApiSrv) {
277
+ this.router = router;
278
+ this.http = http;
279
+ this.modal = modal;
280
+ this.msg = msg;
281
+ this.commApiSrv = commApiSrv;
282
+ }
283
+ initPageData() {
284
+ this.treeAPI = this.commApiSrv.getPageTree(this.moduleCode);
285
+ this.treeListAPI = this.commApiSrv.getPageTreeList(this.moduleCode);
286
+ this.treeKeyWord = null;
287
+ this.treeShowType = 'tree';
288
+ this.formType = 'ADD';
289
+ this.loading = true;
290
+ }
291
+ /**
292
+ * 获取 Tree 集合
293
+ */
294
+ getPageTreeData() {
295
+ if (this.treeId) {
296
+ this.loading = true;
297
+ this.treeData = [];
298
+ this.treeShowType = 'tree';
299
+ this.treeExpandAll = true;
300
+ this.http.post(`${this.treeAPI}/${this.treeId}`).subscribe((res) => {
301
+ if (res && res.success == true) {
302
+ let result = res.result;
303
+ if (result && result.basic) {
304
+ this.pageInfo = result.basic;
305
+ }
306
+ if (result && result.treeData && result.treeData.length > 0) {
307
+ this.treeData = [...result.treeData];
308
+ }
309
+ else {
310
+ {
311
+ this.treeData = [];
312
+ }
313
+ }
314
+ }
315
+ this.loading = false;
316
+ });
317
+ }
318
+ }
319
+ /**
320
+ * 获取 Tree 集合
321
+ */
322
+ getPageTreeListData() {
323
+ if (this.treeId) {
324
+ this.loading = true;
325
+ this.treeData = [];
326
+ this.treeShowType = 'list';
327
+ let postData = { pageId: this.treeId, keyword: this.treeKeyWord };
328
+ this.http.post(this.treeListAPI, postData).subscribe((res) => {
329
+ if (res && res.success == true) {
330
+ let result = res.result;
331
+ if (result && result.basic) {
332
+ this.pageInfo = result.basic;
333
+ }
334
+ if (result && result.treeData && result.treeData.length > 0) {
335
+ this.treeData = [...result.treeData];
336
+ }
337
+ else {
338
+ {
339
+ this.treeData = [];
340
+ }
341
+ }
342
+ }
343
+ this.loading = false;
344
+ });
345
+ }
346
+ }
347
+ treeFormReload() {
348
+ this.formType = 'ADD';
349
+ this.selectedKey = null;
350
+ this.selectedKeys = [];
351
+ this.selectedNode = null;
352
+ this.selectedLevel = null;
353
+ }
354
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TreeFormService, deps: [{ token: i1.Router }, { token: i1$1._HttpClient }, { token: i3.NzModalService }, { token: i4.NzMessageService }, { token: CommAPIService }], target: i0.ɵɵFactoryTarget.Injectable });
355
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TreeFormService });
356
+ }
357
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TreeFormService, decorators: [{
358
+ type: Injectable
359
+ }], ctorParameters: () => [{ type: i1.Router }, { type: i1$1._HttpClient }, { type: i3.NzModalService }, { type: i4.NzMessageService }, { type: i4$1.CommAPIService, decorators: [{
360
+ type: Inject,
361
+ args: [CommAPIService]
362
+ }] }] });
363
+
364
+ class TreeFormLeftComponent {
365
+ http;
366
+ cdr;
367
+ treeSrv;
368
+ globalSrv;
369
+ constructor(http, cdr, treeSrv, globalSrv) {
370
+ this.http = http;
371
+ this.cdr = cdr;
372
+ this.treeSrv = treeSrv;
373
+ this.globalSrv = globalSrv;
374
+ this.treeSrv.getPageTreeData();
375
+ }
376
+ ngOnInit() { }
377
+ btnTreeSearch() {
378
+ if (this.treeSrv.treeKeyWord) {
379
+ this.treeSrv.getPageTreeListData();
380
+ }
381
+ else {
382
+ this.treeSrv.getPageTreeData();
383
+ }
384
+ }
385
+ /**
386
+ * 点击树
387
+ * @param event
388
+ */
389
+ treeClick(event) {
390
+ this.treeSrv.loading = true;
391
+ this.treeSrv.selectedLevel = event.node.level;
392
+ //event.node.isExpanded = !event.node.isExpanded;
393
+ event.node.isExpanded = true;
394
+ this.treeSrv.selectedNode = event.node.origin;
395
+ this.treeSrv.selectedKey = event.node.key;
396
+ this.treeSrv.selectedKeys = [...[event.node.key]];
397
+ this.treeSrv.formType = 'EDIT';
398
+ this.treeSrv.id = this.treeSrv.selectedNode?.id;
399
+ this.globalSrv.notifyDataChanged(this.treeSrv.globalConstant, { rd: Math.random() });
400
+ }
401
+ itemClick(e) {
402
+ this.treeSrv.loading = true;
403
+ this.treeSrv.selectedLevel = 0;
404
+ this.treeSrv.selectedNode = e;
405
+ this.treeSrv.selectedKey = e.key;
406
+ this.treeSrv.selectedKeys = [...[e.key]];
407
+ this.treeSrv.formType = 'EDIT';
408
+ this.treeSrv.id = this.treeSrv.selectedNode?.id;
409
+ this.globalSrv.notifyDataChanged(this.treeSrv.globalConstant, { rd: Math.random() });
410
+ }
411
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TreeFormLeftComponent, deps: [{ token: i1$1._HttpClient }, { token: i0.ChangeDetectorRef }, { token: TreeFormService }, { token: i3$1.GramGlobalService }], target: i0.ɵɵFactoryTarget.Component });
412
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: TreeFormLeftComponent, isStandalone: true, selector: "tree-form-left", ngImport: i0, template: "<div class=\"tree-query\">\r\n <nz-input-group nzSearch [nzAddOnAfter]=\"suffixButton\">\r\n <input type=\"text\" nz-input placeholder=\"\u8BF7\u8F93\u5165\u5173\u952E\u5B57\u67E5\u8BE2\" [(ngModel)]=\"treeSrv.treeKeyWord\" />\r\n </nz-input-group>\r\n <ng-template #suffixButton>\r\n <button nz-button nzType=\"primary\" type=\"button\" nzSearch (click)=\"btnTreeSearch()\"><i nz-icon\r\n nzType=\"search\"></i>\u67E5\u8BE2</button>\r\n </ng-template>\r\n</div>\r\n<div class=\"tree-content\">\r\n <ng-container *ngIf=\"treeSrv.treeData!! && treeSrv.treeData.length > 0; else tmpEmpty\">\r\n <ng-container *ngIf=\"treeSrv.treeShowType == 'tree'; else tmpList\">\r\n <nz-tree [nzData]=\"treeSrv.treeData\" [nzExpandAll]=\"treeSrv.treeExpandAll\" [nzExpandedKeys]=\"treeSrv.expandedKeys\"\r\n [nzSelectedKeys]=\"treeSrv.selectedKeys\" (nzClick)=\"treeClick($event)\" [nzTreeTemplate]=\"nzTreeTemplate\">\r\n </nz-tree>\r\n <ng-template #nzTreeTemplate let-node let-origin=\"origin\">\r\n <span class=\"custom-node\">\r\n <span class=\"folder-name\">{{ node.title }}</span>\r\n </span>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-template #tmpList>\r\n <ul class=\"list-content\">\r\n <ng-container *ngFor=\"let item of treeSrv.treeData\">\r\n <li (click)=\"itemClick(item)\"\r\n [ngClass]=\"{ 'item-selected': treeSrv?.['selectedItem'] && item.id == treeSrv?.['selectedItem']?.['id'] }\">\r\n {{ item.title }}\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </ng-template>\r\n </ng-container>\r\n</div>\r\n<ng-template #tmpEmpty>\r\n <div class=\"tree-empty\" *ngIf=\"treeSrv.loading == false\">\r\n <gram-empty state=\"empty9\"></gram-empty>\r\n </div>\r\n</ng-template>", styles: [":host ::ng-deep{display:flex;flex:1;flex-direction:column;width:100%;height:100%;padding:0}:host ::ng-deep .item-selected{color:#fff;background-color:#1177fb}:host ::ng-deep .tree-query{display:flex;width:100%;padding:8px 12px;border-bottom:1px solid #eaeaea}:host ::ng-deep .tree-query nz-input-group{width:100%}:host ::ng-deep .list-content{width:100%;margin:0;padding:0}:host ::ng-deep .list-content li{min-height:24px;margin:0 0 4px;padding:6px 10px}:host ::ng-deep .list-content li:hover{background:#d6e9ff;cursor:pointer}:host ::ng-deep .tree-content{flex:1;width:100%;padding:10px 12px;overflow-x:overlay;overflow-y:overlay}:host ::ng-deep .tree-content .ant-tree{width:100%}:host ::ng-deep .tree-content::-webkit-scrollbar{width:8px}:host ::ng-deep .tree-content::-webkit-scrollbar-thumb{background-color:#94949475;border-radius:7px}:host ::ng-deep .tree-content::-webkit-scrollbar-track{background-color:#fff}:host ::ng-deep .tree-content .custom-node{display:flex;width:100%;cursor:pointer}:host ::ng-deep .tree-content .custom-node .folder-name{flex:1}:host ::ng-deep .tree-content .custom-node .folder-operation{display:none;cursor:pointer}:host ::ng-deep .tree-content nz-tree-node-switcher{width:10px!important}:host ::ng-deep .tree-content .ant-tree-indent-unit{width:10px!important}:host ::ng-deep .tree-content .ant-tree-treenode{padding:4px 0}:host ::ng-deep .tree-content .ant-tree-treenode-selected{color:#fff!important;background:#1177fb!important}:host ::ng-deep .tree-content .ant-tree-treenode-selected .custom-node .folder-operation{display:block!important;color:#fff!important}:host ::ng-deep .tree-content .ant-tree-treenode-selected nz-tree-node-title{background:none;transition:none}:host ::ng-deep .tree-content nz-tree-node:hover{background:#d6e9ff}:host ::ng-deep .tree-content nz-tree-node:hover nz-tree-node-title{background:none;transition:none}:host ::ng-deep .tree-content nz-tree-node:hover .custom-node .folder-operation{display:block;color:#1177fb}:host ::ng-deep nz-tree-node-title{width:100%;cursor:pointer}:host ::ng-deep .tree-empty{display:flex;width:100%;height:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: NzTreeModule }, { kind: "component", type: i7.NzTreeComponent, selector: "nz-tree", inputs: ["nzShowIcon", "nzHideUnMatched", "nzBlockNode", "nzExpandAll", "nzSelectMode", "nzCheckStrictly", "nzShowExpand", "nzShowLine", "nzCheckable", "nzAsyncData", "nzDraggable", "nzMultiple", "nzExpandedIcon", "nzVirtualItemSize", "nzVirtualMaxBufferPx", "nzVirtualMinBufferPx", "nzVirtualHeight", "nzTreeTemplate", "nzBeforeDrop", "nzData", "nzExpandedKeys", "nzSelectedKeys", "nzCheckedKeys", "nzSearchValue", "nzSearchFunc"], outputs: ["nzExpandedKeysChange", "nzSelectedKeysChange", "nzCheckedKeysChange", "nzSearchValueChange", "nzClick", "nzDblClick", "nzContextMenu", "nzCheckboxChange", "nzExpandChange", "nzOnDragStart", "nzOnDragEnter", "nzOnDragOver", "nzOnDragLeave", "nzOnDrop", "nzOnDragEnd"], exportAs: ["nzTree"] }, { kind: "ngmodule", type: NzButtonModule }, { kind: "component", type: i9.NzButtonComponent, selector: "button[nz-button], a[nz-button]", inputs: ["nzBlock", "nzGhost", "nzSearch", "nzLoading", "nzDanger", "disabled", "tabIndex", "nzType", "nzShape", "nzSize"], exportAs: ["nzButton"] }, { kind: "directive", type: i10.ɵNzTransitionPatchDirective, selector: "[nz-button], nz-button-group, [nz-icon], nz-icon, [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { kind: "directive", type: i11.NzWaveDirective, selector: "[nz-wave],button[nz-button]:not([nzType=\"link\"]):not([nzType=\"text\"])", inputs: ["nzWaveExtraNode"], exportAs: ["nzWave"] }, { kind: "ngmodule", type: NzInputModule }, { kind: "directive", type: i6.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzBorderless", "nzSize", "nzStepperless", "nzStatus", "disabled"], exportAs: ["nzInput"] }, { kind: "component", type: i6.NzInputGroupComponent, selector: "nz-input-group", inputs: ["nzAddOnBeforeIcon", "nzAddOnAfterIcon", "nzPrefixIcon", "nzSuffixIcon", "nzAddOnBefore", "nzAddOnAfter", "nzPrefix", "nzStatus", "nzSuffix", "nzSize", "nzSearch", "nzCompact"], exportAs: ["nzInputGroup"] }, { kind: "ngmodule", type: GramDeonEmptyModule }, { kind: "component", type: i12.GramDeonEmptyComponent, selector: "gram-empty", inputs: ["desc", "state"], outputs: ["emptyClick"] }] });
413
+ }
414
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TreeFormLeftComponent, decorators: [{
415
+ type: Component,
416
+ args: [{ selector: 'tree-form-left', imports: [
417
+ CommonModule,
418
+ FormsModule,
419
+ NzTreeModule,
420
+ NzButtonModule,
421
+ NzInputModule,
422
+ GramDeonEmptyModule
423
+ ], template: "<div class=\"tree-query\">\r\n <nz-input-group nzSearch [nzAddOnAfter]=\"suffixButton\">\r\n <input type=\"text\" nz-input placeholder=\"\u8BF7\u8F93\u5165\u5173\u952E\u5B57\u67E5\u8BE2\" [(ngModel)]=\"treeSrv.treeKeyWord\" />\r\n </nz-input-group>\r\n <ng-template #suffixButton>\r\n <button nz-button nzType=\"primary\" type=\"button\" nzSearch (click)=\"btnTreeSearch()\"><i nz-icon\r\n nzType=\"search\"></i>\u67E5\u8BE2</button>\r\n </ng-template>\r\n</div>\r\n<div class=\"tree-content\">\r\n <ng-container *ngIf=\"treeSrv.treeData!! && treeSrv.treeData.length > 0; else tmpEmpty\">\r\n <ng-container *ngIf=\"treeSrv.treeShowType == 'tree'; else tmpList\">\r\n <nz-tree [nzData]=\"treeSrv.treeData\" [nzExpandAll]=\"treeSrv.treeExpandAll\" [nzExpandedKeys]=\"treeSrv.expandedKeys\"\r\n [nzSelectedKeys]=\"treeSrv.selectedKeys\" (nzClick)=\"treeClick($event)\" [nzTreeTemplate]=\"nzTreeTemplate\">\r\n </nz-tree>\r\n <ng-template #nzTreeTemplate let-node let-origin=\"origin\">\r\n <span class=\"custom-node\">\r\n <span class=\"folder-name\">{{ node.title }}</span>\r\n </span>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-template #tmpList>\r\n <ul class=\"list-content\">\r\n <ng-container *ngFor=\"let item of treeSrv.treeData\">\r\n <li (click)=\"itemClick(item)\"\r\n [ngClass]=\"{ 'item-selected': treeSrv?.['selectedItem'] && item.id == treeSrv?.['selectedItem']?.['id'] }\">\r\n {{ item.title }}\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </ng-template>\r\n </ng-container>\r\n</div>\r\n<ng-template #tmpEmpty>\r\n <div class=\"tree-empty\" *ngIf=\"treeSrv.loading == false\">\r\n <gram-empty state=\"empty9\"></gram-empty>\r\n </div>\r\n</ng-template>", styles: [":host ::ng-deep{display:flex;flex:1;flex-direction:column;width:100%;height:100%;padding:0}:host ::ng-deep .item-selected{color:#fff;background-color:#1177fb}:host ::ng-deep .tree-query{display:flex;width:100%;padding:8px 12px;border-bottom:1px solid #eaeaea}:host ::ng-deep .tree-query nz-input-group{width:100%}:host ::ng-deep .list-content{width:100%;margin:0;padding:0}:host ::ng-deep .list-content li{min-height:24px;margin:0 0 4px;padding:6px 10px}:host ::ng-deep .list-content li:hover{background:#d6e9ff;cursor:pointer}:host ::ng-deep .tree-content{flex:1;width:100%;padding:10px 12px;overflow-x:overlay;overflow-y:overlay}:host ::ng-deep .tree-content .ant-tree{width:100%}:host ::ng-deep .tree-content::-webkit-scrollbar{width:8px}:host ::ng-deep .tree-content::-webkit-scrollbar-thumb{background-color:#94949475;border-radius:7px}:host ::ng-deep .tree-content::-webkit-scrollbar-track{background-color:#fff}:host ::ng-deep .tree-content .custom-node{display:flex;width:100%;cursor:pointer}:host ::ng-deep .tree-content .custom-node .folder-name{flex:1}:host ::ng-deep .tree-content .custom-node .folder-operation{display:none;cursor:pointer}:host ::ng-deep .tree-content nz-tree-node-switcher{width:10px!important}:host ::ng-deep .tree-content .ant-tree-indent-unit{width:10px!important}:host ::ng-deep .tree-content .ant-tree-treenode{padding:4px 0}:host ::ng-deep .tree-content .ant-tree-treenode-selected{color:#fff!important;background:#1177fb!important}:host ::ng-deep .tree-content .ant-tree-treenode-selected .custom-node .folder-operation{display:block!important;color:#fff!important}:host ::ng-deep .tree-content .ant-tree-treenode-selected nz-tree-node-title{background:none;transition:none}:host ::ng-deep .tree-content nz-tree-node:hover{background:#d6e9ff}:host ::ng-deep .tree-content nz-tree-node:hover nz-tree-node-title{background:none;transition:none}:host ::ng-deep .tree-content nz-tree-node:hover .custom-node .folder-operation{display:block;color:#1177fb}:host ::ng-deep nz-tree-node-title{width:100%;cursor:pointer}:host ::ng-deep .tree-empty{display:flex;width:100%;height:100%}\n"] }]
424
+ }], ctorParameters: () => [{ type: i1$1._HttpClient }, { type: i0.ChangeDetectorRef }, { type: TreeFormService }, { type: i3$1.GramGlobalService }] });
425
+
426
+ class TreeFormRightComponent {
427
+ http;
428
+ msg;
429
+ utilService;
430
+ commAPISrv;
431
+ globalSrv;
432
+ treeSrv;
433
+ form = new FormGroup({});
434
+ model = {};
435
+ options = {};
436
+ fields = [];
437
+ get isAdd() {
438
+ let result = true;
439
+ if (this.treeSrv.pageInfo?.maxLevel &&
440
+ this.treeSrv.selectedLevel &&
441
+ _.isNumber(this.treeSrv.pageInfo?.maxLevel) &&
442
+ this.treeSrv.pageInfo?.maxLevel <= this.treeSrv.selectedLevel) {
443
+ result = false;
444
+ }
445
+ return result;
446
+ }
447
+ constructor(http, msg, utilService, commAPISrv, globalSrv, treeSrv) {
448
+ this.http = http;
449
+ this.msg = msg;
450
+ this.utilService = utilService;
451
+ this.commAPISrv = commAPISrv;
452
+ this.globalSrv = globalSrv;
453
+ this.treeSrv = treeSrv;
454
+ this.globalSrv.subscribe(this.treeSrv.globalConstant, (res) => {
455
+ this.resetForm();
456
+ this.getPageConfig();
457
+ });
458
+ this.getPageConfig();
459
+ }
460
+ ngOnInit() { }
461
+ ngOnDestroy() {
462
+ this.resetForm();
463
+ this.globalSrv.removeSubscribe(this.treeSrv.globalConstant);
464
+ }
465
+ resetForm() {
466
+ this.form = new FormGroup({});
467
+ this.model = {};
468
+ this.options = {};
469
+ this.fields = [];
470
+ }
471
+ /**
472
+ * 重新加载
473
+ */
474
+ btnReload() {
475
+ this.treeSrv.treeFormReload();
476
+ // this.options?.resetModel();
477
+ // this.model = {};
478
+ // this.form = new FormGroup({});
479
+ this.resetForm();
480
+ this.getPageConfig();
481
+ }
482
+ btnSave() {
483
+ if (this.treeSrv.formId) {
484
+ if (!this.form.valid) {
485
+ return;
486
+ }
487
+ this.treeSrv.loading = true;
488
+ let apiName = null;
489
+ if (this.treeSrv.formType == 'ADD') {
490
+ apiName = this.commAPISrv.getFormAdd(this.treeSrv.moduleCode);
491
+ }
492
+ else if (this.treeSrv.formType == 'EDIT') {
493
+ apiName = this.commAPISrv.getFormUpdate(this.treeSrv.moduleCode);
494
+ }
495
+ this.http
496
+ .post(`${apiName}`, {
497
+ id: this.treeSrv.id,
498
+ formId: this.treeSrv.formId,
499
+ modelJson: this.model,
500
+ })
501
+ .subscribe((res) => {
502
+ this.treeSrv.loading = false;
503
+ if (res && res.success == true) {
504
+ this.msg.success('保存成功!');
505
+ if (this.treeSrv.treeKeyWord) {
506
+ this.treeSrv.getPageTreeListData();
507
+ }
508
+ else {
509
+ this.treeSrv.getPageTreeData();
510
+ }
511
+ this.form = new FormGroup({});
512
+ this.model = {};
513
+ this.options = {};
514
+ this.fields = [];
515
+ this.getPageConfig();
516
+ }
517
+ }, () => {
518
+ this.treeSrv.loading = false;
519
+ });
520
+ }
521
+ }
522
+ /*
523
+ 获取设计
524
+ */
525
+ getDesign() {
526
+ if (this.treeSrv.formId) {
527
+ let apiName = this.commAPISrv.getFormDesign(this.treeSrv.moduleCode, this.treeSrv.formId);
528
+ return this.http.post(`${apiName}`);
529
+ }
530
+ else {
531
+ return of(null);
532
+ }
533
+ }
534
+ /*
535
+ 获取角色
536
+ */
537
+ getRole() {
538
+ let params = {
539
+ formId: this.treeSrv.formId,
540
+ type: this.treeSrv.formType,
541
+ };
542
+ let apiName = this.commAPISrv.getFormRole(this.treeSrv.moduleCode);
543
+ return this.http.post(`${apiName}`, params);
544
+ }
545
+ /*
546
+ 获取配置-下拉选项
547
+ */
548
+ getDropDown() {
549
+ let apiName = this.commAPISrv.getFormDropDown(this.treeSrv.moduleCode, this.treeSrv.formId);
550
+ return this.http.post(`${apiName}`);
551
+ }
552
+ /*
553
+ 获取配置-表单数据
554
+ */
555
+ getFromModel() {
556
+ let params = {
557
+ formId: this.treeSrv.formId,
558
+ id: this.treeSrv.id,
559
+ };
560
+ if (this.treeSrv.formType != 'ADD' && this.treeSrv.id) {
561
+ let apiName = this.commAPISrv.getFormModel(this.treeSrv.moduleCode);
562
+ return this.http.post(`${apiName}`, params);
563
+ }
564
+ else {
565
+ return of(null);
566
+ }
567
+ }
568
+ /*
569
+ 获取配置-表单默认值
570
+ */
571
+ getFromDefaultModel() {
572
+ if (this.treeSrv.formType == 'ADD' && this.treeSrv.formId) {
573
+ let apiName = this.commAPISrv.getFormDefaultModel(this.treeSrv.moduleCode);
574
+ return this.http.post(`${apiName}/${this.treeSrv.formId}`);
575
+ }
576
+ else {
577
+ return of(null);
578
+ }
579
+ }
580
+ /**
581
+ * 组装配置
582
+ */
583
+ getPageConfig() {
584
+ if (this.treeSrv.formId) {
585
+ new Promise((resolve) => {
586
+ zip(this.getDesign(), this.getRole(), this.getDropDown(), this.getFromModel(), this.getFromDefaultModel()).subscribe(([design, role, drop, d, m]) => {
587
+ if (design.success == true && _.get(design, 'result.basic.json')) {
588
+ let fieldConfigs = JSON.parse(_.get(design, 'result.basic.json'));
589
+ let fieldRole = {};
590
+ let fieldOptions = {};
591
+ //字段权限
592
+ if (role?.success == true && role?.result) {
593
+ fieldRole = role.result;
594
+ }
595
+ //字段Options
596
+ if (drop.success == true && drop.result) {
597
+ fieldOptions = drop.result;
598
+ }
599
+ //默认值
600
+ if (d && d.success == true && d.result) {
601
+ this.model = Object.assign(this.model, d.result);
602
+ }
603
+ //获取的表单值
604
+ if (m && m.success == true && m.result) {
605
+ this.model = Object.assign(this.model, m.result);
606
+ }
607
+ //this.utilService.initFormFieldConfig(fieldConfigs, fieldRole, fieldOptions, this.model, this, (e: any, field: any) => { });
608
+ this.fields = fieldConfigs;
609
+ setTimeout(() => {
610
+ if (this.options != undefined && this.options != null && this.options?.resetModel) {
611
+ this.options?.resetModel();
612
+ }
613
+ }, 0);
614
+ }
615
+ this.treeSrv.loading = false;
616
+ }, () => {
617
+ this.treeSrv.loading = false;
618
+ }, () => {
619
+ this.treeSrv.loading = false;
620
+ resolve();
621
+ });
622
+ });
623
+ }
624
+ }
625
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TreeFormRightComponent, deps: [{ token: i1$1._HttpClient }, { token: i4.NzMessageService }, { token: i3$2.DeonFormUtilService }, { token: i4$1.CommAPIService }, { token: i3$1.GramGlobalService }, { token: TreeFormService }], target: i0.ɵɵFactoryTarget.Component });
626
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: TreeFormRightComponent, isStandalone: true, selector: "tree-form-right", ngImport: i0, template: "<form [formGroup]=\"form\" (ngSubmit)=\"btnSave()\">\r\n <div class=\"deon-head\">\r\n <div class=\"left\">\r\n <ul>\r\n <li>\u64CD\u4F5C\u7C7B\u578B\uFF1A{{ treeSrv.formType == 'ADD' ? '\u65B0\u589E' : '\u7F16\u8F91' }}</li>\r\n <li *ngIf=\"treeSrv.selectedNode!!\">\u9009\u4E2D\u9879\uFF1A{{ treeSrv.selectedNode?.title }}</li>\r\n <li *ngIf=\"treeSrv.selectedNode!!\">\u9009\u4E2D\u5C42\u7EA7\uFF1A{{ treeSrv.selectedLevel + 1 }}</li>\r\n </ul>\r\n </div>\r\n <div class=\"right\">\r\n <button nz-button nzType=\"default\" (click)=\"btnReload()\" type=\"button\"><i nz-icon\r\n nzType=\"reload\"></i>\u6E05\u9664\u9009\u9879</button>\r\n <ng-container *ngIf=\"isAdd == true\">\r\n <button nz-button nzType=\"primary\"><i nz-icon nzType=\"save\"></i>\u4FDD\u5B58</button>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div class=\"deon-from\">\r\n <ng-container *ngIf=\"fields && fields.length > 0; else emptyPage\">\r\n <formly-form [model]=\"model\" [fields]=\"fields\" [options]=\"options\" [form]=\"form\"> </formly-form>\r\n </ng-container>\r\n <ng-template #emptyPage>\r\n <!-- <nz-empty *ngIf=\"loading !== true\"></nz-empty> -->\r\n </ng-template>\r\n </div>\r\n</form>", styles: [":host ::ng-deep{display:flex;flex:1;flex-direction:column;width:100%;height:100%;padding:0}:host ::ng-deep form{display:inline-flex;flex-direction:column;overflow:hidden}:host ::ng-deep .deon-head{display:flex;height:auto;padding:8px 12px;border-bottom:1px solid #eaeaea}:host ::ng-deep .deon-head .left{flex:1}:host ::ng-deep .deon-head .left ul{display:flex;align-items:center;height:100%;margin:0;padding:0;list-style:none}:host ::ng-deep .deon-head .left ul li{padding:0 25px 0 0}:host ::ng-deep .repeat-table{border:0!important}:host ::ng-deep .field-panel-box{padding:0!important}:host ::ng-deep deon-nz-field-repeat{margin-bottom:0!important}:host ::ng-deep .fieldbox-children{margin-top:3px;border:1px solid #eaeaea}:host ::ng-deep .fieldbox-children .repeat-label{padding:0 5px;border-bottom:1px solid #eaeaea}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: NzEmptyModule }, { kind: "ngmodule", type: NzButtonModule }, { kind: "component", type: i9.NzButtonComponent, selector: "button[nz-button], a[nz-button]", inputs: ["nzBlock", "nzGhost", "nzSearch", "nzLoading", "nzDanger", "disabled", "tabIndex", "nzType", "nzShape", "nzSize"], exportAs: ["nzButton"] }, { kind: "directive", type: i10.ɵNzTransitionPatchDirective, selector: "[nz-button], nz-button-group, [nz-icon], nz-icon, [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { kind: "directive", type: i11.NzWaveDirective, selector: "[nz-wave],button[nz-button]:not([nzType=\"link\"]):not([nzType=\"text\"])", inputs: ["nzWaveExtraNode"], exportAs: ["nzWave"] }, { kind: "ngmodule", type: FormlyModule }, { kind: "component", type: i12$1.FormlyForm, selector: "formly-form", inputs: ["form", "model", "fields", "options"], outputs: ["modelChange"] }, { kind: "ngmodule", type: GramDeonAntdModule }] });
627
+ }
628
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TreeFormRightComponent, decorators: [{
629
+ type: Component,
630
+ args: [{ selector: 'tree-form-right', imports: [
631
+ CommonModule,
632
+ FormsModule,
633
+ ReactiveFormsModule,
634
+ NzEmptyModule,
635
+ NzButtonModule,
636
+ FormlyModule,
637
+ GramDeonAntdModule
638
+ ], template: "<form [formGroup]=\"form\" (ngSubmit)=\"btnSave()\">\r\n <div class=\"deon-head\">\r\n <div class=\"left\">\r\n <ul>\r\n <li>\u64CD\u4F5C\u7C7B\u578B\uFF1A{{ treeSrv.formType == 'ADD' ? '\u65B0\u589E' : '\u7F16\u8F91' }}</li>\r\n <li *ngIf=\"treeSrv.selectedNode!!\">\u9009\u4E2D\u9879\uFF1A{{ treeSrv.selectedNode?.title }}</li>\r\n <li *ngIf=\"treeSrv.selectedNode!!\">\u9009\u4E2D\u5C42\u7EA7\uFF1A{{ treeSrv.selectedLevel + 1 }}</li>\r\n </ul>\r\n </div>\r\n <div class=\"right\">\r\n <button nz-button nzType=\"default\" (click)=\"btnReload()\" type=\"button\"><i nz-icon\r\n nzType=\"reload\"></i>\u6E05\u9664\u9009\u9879</button>\r\n <ng-container *ngIf=\"isAdd == true\">\r\n <button nz-button nzType=\"primary\"><i nz-icon nzType=\"save\"></i>\u4FDD\u5B58</button>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div class=\"deon-from\">\r\n <ng-container *ngIf=\"fields && fields.length > 0; else emptyPage\">\r\n <formly-form [model]=\"model\" [fields]=\"fields\" [options]=\"options\" [form]=\"form\"> </formly-form>\r\n </ng-container>\r\n <ng-template #emptyPage>\r\n <!-- <nz-empty *ngIf=\"loading !== true\"></nz-empty> -->\r\n </ng-template>\r\n </div>\r\n</form>", styles: [":host ::ng-deep{display:flex;flex:1;flex-direction:column;width:100%;height:100%;padding:0}:host ::ng-deep form{display:inline-flex;flex-direction:column;overflow:hidden}:host ::ng-deep .deon-head{display:flex;height:auto;padding:8px 12px;border-bottom:1px solid #eaeaea}:host ::ng-deep .deon-head .left{flex:1}:host ::ng-deep .deon-head .left ul{display:flex;align-items:center;height:100%;margin:0;padding:0;list-style:none}:host ::ng-deep .deon-head .left ul li{padding:0 25px 0 0}:host ::ng-deep .repeat-table{border:0!important}:host ::ng-deep .field-panel-box{padding:0!important}:host ::ng-deep deon-nz-field-repeat{margin-bottom:0!important}:host ::ng-deep .fieldbox-children{margin-top:3px;border:1px solid #eaeaea}:host ::ng-deep .fieldbox-children .repeat-label{padding:0 5px;border-bottom:1px solid #eaeaea}\n"] }]
639
+ }], ctorParameters: () => [{ type: i1$1._HttpClient }, { type: i4.NzMessageService }, { type: i3$2.DeonFormUtilService }, { type: i4$1.CommAPIService }, { type: i3$1.GramGlobalService }, { type: TreeFormService }] });
640
+
641
+ class TreeFormComponent {
642
+ http;
643
+ cdr;
644
+ treeSrv;
645
+ globalSrv;
646
+ layoutData = null;
647
+ treeConfig = null;
648
+ constructor(http, cdr, treeSrv, globalSrv) {
649
+ this.http = http;
650
+ this.cdr = cdr;
651
+ this.treeSrv = treeSrv;
652
+ this.globalSrv = globalSrv;
653
+ }
654
+ ngOnInit() { }
655
+ ngOnChanges(changes) {
656
+ if (changes["treeConfig"]) {
657
+ if (this.treeConfig) {
658
+ this.getPageData();
659
+ }
660
+ }
661
+ }
662
+ getPageData() {
663
+ /**
664
+ * 初始化
665
+ */
666
+ this.treeSrv.initPageData();
667
+ //this.layoutData = this.data.layoutData;
668
+ this.treeSrv.treeId = this.treeConfig?.treeId;
669
+ this.treeSrv.formId = this.treeConfig?.formId;
670
+ this.treeSrv.loading = false;
671
+ this.layoutData = _.cloneDeep(this.treeConfig);
672
+ }
673
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TreeFormComponent, deps: [{ token: i1$1._HttpClient }, { token: i0.ChangeDetectorRef }, { token: TreeFormService }, { token: i3$1.GramGlobalService }], target: i0.ɵɵFactoryTarget.Component });
674
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: TreeFormComponent, isStandalone: true, selector: "pre-tree-form", inputs: { treeConfig: "treeConfig" }, providers: [GramGlobalService, CommAPIService, TreeFormService], usesOnChanges: true, ngImport: i0, template: "<nz-spin [nzSpinning]=\"treeSrv.loading\" nzTip=\"\u62FC\u547D\u52A0\u8F7D\u4E2D...\" class=\"deon-list-spin\">\r\n <div class=\"tree-content\" *ngIf=\"layoutData!!\">\r\n <div class=\"tree-left\"><tree-form-left></tree-form-left></div>\r\n <div class=\"tree-right\"><tree-form-right></tree-form-right></div>\r\n </div>\r\n</nz-spin>", styles: [":host ::ng-deep{display:flex;flex:1;flex-direction:column;width:100%;height:100%}:host ::ng-deep .work-content{padding:0}:host ::ng-deep .tree-content{display:flex;flex-direction:row;width:100%;height:100%;padding:0}:host ::ng-deep .tree-content .tree-left{display:flex;flex-direction:column;width:300px;height:100%;border-right:1px solid #eaeaea}:host ::ng-deep .tree-content .tree-left .tree-content{width:300px;padding:10px 12px}:host ::ng-deep .tree-content .tree-right{display:flex;flex:1;height:100%;overflow:auto}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: NzSpinModule }, { kind: "component", type: i5$1.NzSpinComponent, selector: "nz-spin", inputs: ["nzIndicator", "nzSize", "nzTip", "nzDelay", "nzSimple", "nzSpinning"], exportAs: ["nzSpin"] }, { kind: "component", type: TreeFormLeftComponent, selector: "tree-form-left" }, { kind: "component", type: TreeFormRightComponent, selector: "tree-form-right" }] });
675
+ }
676
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TreeFormComponent, decorators: [{
677
+ type: Component,
678
+ args: [{ selector: 'pre-tree-form', providers: [GramGlobalService, CommAPIService, TreeFormService], imports: [
679
+ CommonModule,
680
+ NzSpinModule,
681
+ TreeFormLeftComponent,
682
+ TreeFormRightComponent
683
+ ], template: "<nz-spin [nzSpinning]=\"treeSrv.loading\" nzTip=\"\u62FC\u547D\u52A0\u8F7D\u4E2D...\" class=\"deon-list-spin\">\r\n <div class=\"tree-content\" *ngIf=\"layoutData!!\">\r\n <div class=\"tree-left\"><tree-form-left></tree-form-left></div>\r\n <div class=\"tree-right\"><tree-form-right></tree-form-right></div>\r\n </div>\r\n</nz-spin>", styles: [":host ::ng-deep{display:flex;flex:1;flex-direction:column;width:100%;height:100%}:host ::ng-deep .work-content{padding:0}:host ::ng-deep .tree-content{display:flex;flex-direction:row;width:100%;height:100%;padding:0}:host ::ng-deep .tree-content .tree-left{display:flex;flex-direction:column;width:300px;height:100%;border-right:1px solid #eaeaea}:host ::ng-deep .tree-content .tree-left .tree-content{width:300px;padding:10px 12px}:host ::ng-deep .tree-content .tree-right{display:flex;flex:1;height:100%;overflow:auto}\n"] }]
684
+ }], ctorParameters: () => [{ type: i1$1._HttpClient }, { type: i0.ChangeDetectorRef }, { type: TreeFormService }, { type: i3$1.GramGlobalService }], propDecorators: { treeConfig: [{
685
+ type: Input
686
+ }] } });
687
+
688
+ class TreeListLeftComponent {
689
+ http;
690
+ cdr;
691
+ treeSrv;
692
+ globalSrv;
693
+ constructor(http, cdr, treeSrv, globalSrv) {
694
+ this.http = http;
695
+ this.cdr = cdr;
696
+ this.treeSrv = treeSrv;
697
+ this.globalSrv = globalSrv;
698
+ this.treeSrv.getPageTreeData();
699
+ }
700
+ ngOnInit() { }
701
+ btnTreeSearch() {
702
+ if (this.treeSrv.treeKeyWord) {
703
+ this.treeSrv.getPageTreeListData();
704
+ }
705
+ else {
706
+ this.treeSrv.getPageTreeData();
707
+ }
708
+ }
709
+ /**
710
+ * 点击树
711
+ * @param event
712
+ */
713
+ treeClick(event) {
714
+ this.treeSrv.loading = true;
715
+ this.treeSrv.selectedLevel = event.node.level;
716
+ //event.node.isExpanded = !event.node.isExpanded;
717
+ event.node.isExpanded = true;
718
+ this.treeSrv.selectedNode = event.node.origin;
719
+ this.treeSrv.selectedKey = event.node.key;
720
+ this.treeSrv.selectedKeys = [...[event.node.key]];
721
+ this.globalSrv.notifyDataChanged(this.treeSrv.globalConstant, { rd: Math.random() });
722
+ }
723
+ itemClick(event) {
724
+ this.treeSrv.loading = true;
725
+ this.treeSrv.selectedLevel = 0;
726
+ this.treeSrv.selectedNode = { id: event.id, title: event.title };
727
+ this.treeSrv.selectedKey = event.key;
728
+ this.treeSrv.selectedKeys = [...[event.key]];
729
+ this.globalSrv.notifyDataChanged(this.treeSrv.globalConstant, { rd: Math.random() });
730
+ }
731
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TreeListLeftComponent, deps: [{ token: i1$1._HttpClient }, { token: i0.ChangeDetectorRef }, { token: TreeListService }, { token: i3$1.GramGlobalService }], target: i0.ɵɵFactoryTarget.Component });
732
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: TreeListLeftComponent, isStandalone: true, selector: "tree-list-left", ngImport: i0, template: "<div class=\"tree-query\">\r\n <nz-input-group nzSearch [nzAddOnAfter]=\"suffixButton\">\r\n <input type=\"text\" nz-input placeholder=\"\u8BF7\u8F93\u5165\u5173\u952E\u5B57\u67E5\u8BE2\" [(ngModel)]=\"treeSrv.treeKeyWord\" />\r\n </nz-input-group>\r\n <ng-template #suffixButton>\r\n <button nz-button nzType=\"primary\" type=\"button\" nzSearch (click)=\"btnTreeSearch()\"><i nz-icon\r\n nzType=\"search\"></i>\u67E5\u8BE2</button>\r\n </ng-template>\r\n</div>\r\n<div class=\"tree-content\">\r\n <ng-container *ngIf=\"treeSrv.treeData!! && treeSrv.treeData.length > 0; else tmpEmpty\">\r\n <ng-container *ngIf=\"treeSrv.treeShowType == 'tree'; else tmpList\">\r\n <nz-tree [nzData]=\"treeSrv.treeData\" [nzExpandAll]=\"treeSrv.treeExpandAll\" [nzExpandedKeys]=\"treeSrv.expandedKeys\"\r\n [nzSelectedKeys]=\"treeSrv.selectedKeys\" (nzClick)=\"treeClick($event)\" [nzTreeTemplate]=\"nzTreeTemplate\">\r\n </nz-tree>\r\n <ng-template #nzTreeTemplate let-node let-origin=\"origin\">\r\n <span class=\"custom-node\">\r\n <span class=\"folder-name\">{{ node.title }}</span>\r\n <ng-container [ngSwitch]=\"origin.effectStatus\">\r\n <ng-container *ngSwitchCase=\"'WAITING'\">\r\n <span class=\"folder-waiting\">\r\n <span nz-icon nzType=\"warning\"></span>\r\n </span>\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n\r\n </ng-container>\r\n </ng-container>\r\n </span>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-template #tmpList>\r\n <ul class=\"list-content\">\r\n <ng-container *ngFor=\"let item of treeSrv.treeData\">\r\n <li (click)=\"itemClick(item)\"\r\n [ngClass]=\"{ 'item-selected': treeSrv.selectedKey!! && item.id == treeSrv.selectedKey }\">\r\n {{ item.title }}\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </ng-template>\r\n </ng-container>\r\n</div>\r\n<ng-template #tmpEmpty>\r\n <div class=\"tree-empty\" *ngIf=\"treeSrv.loading == false\">\r\n <gram-empty state=\"empty9\"></gram-empty>\r\n </div>\r\n</ng-template>", styles: [":host ::ng-deep{display:flex;flex:1;flex-direction:column;width:100%;height:100%;padding:0}:host ::ng-deep .item-selected{color:#fff;background-color:#1177fb}:host ::ng-deep .tree-query{display:flex;width:100%;padding:8px 12px 8px 0;border-bottom:1px solid #eaeaea}:host ::ng-deep .tree-query nz-input-group{width:100%}:host ::ng-deep .list-content{width:100%;margin:0;padding:0}:host ::ng-deep .list-content li{min-height:24px;margin:0 0 4px;padding:6px 10px}:host ::ng-deep .list-content li:hover{background:#d6e9ff;cursor:pointer}:host ::ng-deep .tree-content{flex:1;width:100%;padding:10px 12px;overflow-x:overlay;overflow-y:overlay}:host ::ng-deep .tree-content .ant-tree{width:100%}:host ::ng-deep .tree-content::-webkit-scrollbar{width:8px}:host ::ng-deep .tree-content::-webkit-scrollbar-thumb{background-color:#94949475;border-radius:7px}:host ::ng-deep .tree-content::-webkit-scrollbar-track{background-color:#fff}:host ::ng-deep .tree-content .custom-node{display:flex;width:100%;cursor:pointer}:host ::ng-deep .tree-content .custom-node .folder-waiting{margin-left:10px;color:red}:host ::ng-deep .tree-content .custom-node .folder-operation{display:none;cursor:pointer}:host ::ng-deep .tree-content nz-tree-node-switcher{width:10px!important}:host ::ng-deep .tree-content .ant-tree-indent-unit{width:10px!important}:host ::ng-deep .tree-content .ant-tree-treenode{padding:4px 0}:host ::ng-deep .tree-content .ant-tree-treenode-selected{color:#fff!important;background:#1177fb!important}:host ::ng-deep .tree-content .ant-tree-treenode-selected .custom-node .folder-operation{display:block!important;color:#fff!important}:host ::ng-deep .tree-content .ant-tree-treenode-selected nz-tree-node-title{background:none;transition:none}:host ::ng-deep .tree-content nz-tree-node:hover{background:#d6e9ff}:host ::ng-deep .tree-content nz-tree-node:hover nz-tree-node-title{background:none;transition:none}:host ::ng-deep .tree-content nz-tree-node:hover .custom-node .folder-operation{display:block;color:#1177fb}:host ::ng-deep nz-tree-node-title{width:100%;cursor:pointer}:host ::ng-deep .tree-empty{display:flex;width:100%;height:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4$2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i4$2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i4$2.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: NzInputModule }, { kind: "directive", type: i6.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzBorderless", "nzSize", "nzStepperless", "nzStatus", "disabled"], exportAs: ["nzInput"] }, { kind: "component", type: i6.NzInputGroupComponent, selector: "nz-input-group", inputs: ["nzAddOnBeforeIcon", "nzAddOnAfterIcon", "nzPrefixIcon", "nzSuffixIcon", "nzAddOnBefore", "nzAddOnAfter", "nzPrefix", "nzStatus", "nzSuffix", "nzSize", "nzSearch", "nzCompact"], exportAs: ["nzInputGroup"] }, { kind: "ngmodule", type: NzTreeModule }, { kind: "component", type: i7.NzTreeComponent, selector: "nz-tree", inputs: ["nzShowIcon", "nzHideUnMatched", "nzBlockNode", "nzExpandAll", "nzSelectMode", "nzCheckStrictly", "nzShowExpand", "nzShowLine", "nzCheckable", "nzAsyncData", "nzDraggable", "nzMultiple", "nzExpandedIcon", "nzVirtualItemSize", "nzVirtualMaxBufferPx", "nzVirtualMinBufferPx", "nzVirtualHeight", "nzTreeTemplate", "nzBeforeDrop", "nzData", "nzExpandedKeys", "nzSelectedKeys", "nzCheckedKeys", "nzSearchValue", "nzSearchFunc"], outputs: ["nzExpandedKeysChange", "nzSelectedKeysChange", "nzCheckedKeysChange", "nzSearchValueChange", "nzClick", "nzDblClick", "nzContextMenu", "nzCheckboxChange", "nzExpandChange", "nzOnDragStart", "nzOnDragEnter", "nzOnDragOver", "nzOnDragLeave", "nzOnDrop", "nzOnDragEnd"], exportAs: ["nzTree"] }, { kind: "ngmodule", type: NzIconModule }, { kind: "directive", type: i8.NzIconDirective, selector: "nz-icon,[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "ngmodule", type: NzButtonModule }, { kind: "component", type: i9.NzButtonComponent, selector: "button[nz-button], a[nz-button]", inputs: ["nzBlock", "nzGhost", "nzSearch", "nzLoading", "nzDanger", "disabled", "tabIndex", "nzType", "nzShape", "nzSize"], exportAs: ["nzButton"] }, { kind: "directive", type: i10.ɵNzTransitionPatchDirective, selector: "[nz-button], nz-button-group, [nz-icon], nz-icon, [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { kind: "directive", type: i11.NzWaveDirective, selector: "[nz-wave],button[nz-button]:not([nzType=\"link\"]):not([nzType=\"text\"])", inputs: ["nzWaveExtraNode"], exportAs: ["nzWave"] }, { kind: "ngmodule", type: GramDeonEmptyModule }, { kind: "component", type: i12.GramDeonEmptyComponent, selector: "gram-empty", inputs: ["desc", "state"], outputs: ["emptyClick"] }] });
733
+ }
734
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TreeListLeftComponent, decorators: [{
735
+ type: Component,
736
+ args: [{ selector: 'tree-list-left', imports: [
737
+ CommonModule,
738
+ FormsModule,
739
+ NzInputModule,
740
+ NzTreeModule,
741
+ NzIconModule,
742
+ NzButtonModule,
743
+ GramDeonEmptyModule
744
+ ], template: "<div class=\"tree-query\">\r\n <nz-input-group nzSearch [nzAddOnAfter]=\"suffixButton\">\r\n <input type=\"text\" nz-input placeholder=\"\u8BF7\u8F93\u5165\u5173\u952E\u5B57\u67E5\u8BE2\" [(ngModel)]=\"treeSrv.treeKeyWord\" />\r\n </nz-input-group>\r\n <ng-template #suffixButton>\r\n <button nz-button nzType=\"primary\" type=\"button\" nzSearch (click)=\"btnTreeSearch()\"><i nz-icon\r\n nzType=\"search\"></i>\u67E5\u8BE2</button>\r\n </ng-template>\r\n</div>\r\n<div class=\"tree-content\">\r\n <ng-container *ngIf=\"treeSrv.treeData!! && treeSrv.treeData.length > 0; else tmpEmpty\">\r\n <ng-container *ngIf=\"treeSrv.treeShowType == 'tree'; else tmpList\">\r\n <nz-tree [nzData]=\"treeSrv.treeData\" [nzExpandAll]=\"treeSrv.treeExpandAll\" [nzExpandedKeys]=\"treeSrv.expandedKeys\"\r\n [nzSelectedKeys]=\"treeSrv.selectedKeys\" (nzClick)=\"treeClick($event)\" [nzTreeTemplate]=\"nzTreeTemplate\">\r\n </nz-tree>\r\n <ng-template #nzTreeTemplate let-node let-origin=\"origin\">\r\n <span class=\"custom-node\">\r\n <span class=\"folder-name\">{{ node.title }}</span>\r\n <ng-container [ngSwitch]=\"origin.effectStatus\">\r\n <ng-container *ngSwitchCase=\"'WAITING'\">\r\n <span class=\"folder-waiting\">\r\n <span nz-icon nzType=\"warning\"></span>\r\n </span>\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n\r\n </ng-container>\r\n </ng-container>\r\n </span>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-template #tmpList>\r\n <ul class=\"list-content\">\r\n <ng-container *ngFor=\"let item of treeSrv.treeData\">\r\n <li (click)=\"itemClick(item)\"\r\n [ngClass]=\"{ 'item-selected': treeSrv.selectedKey!! && item.id == treeSrv.selectedKey }\">\r\n {{ item.title }}\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </ng-template>\r\n </ng-container>\r\n</div>\r\n<ng-template #tmpEmpty>\r\n <div class=\"tree-empty\" *ngIf=\"treeSrv.loading == false\">\r\n <gram-empty state=\"empty9\"></gram-empty>\r\n </div>\r\n</ng-template>", styles: [":host ::ng-deep{display:flex;flex:1;flex-direction:column;width:100%;height:100%;padding:0}:host ::ng-deep .item-selected{color:#fff;background-color:#1177fb}:host ::ng-deep .tree-query{display:flex;width:100%;padding:8px 12px 8px 0;border-bottom:1px solid #eaeaea}:host ::ng-deep .tree-query nz-input-group{width:100%}:host ::ng-deep .list-content{width:100%;margin:0;padding:0}:host ::ng-deep .list-content li{min-height:24px;margin:0 0 4px;padding:6px 10px}:host ::ng-deep .list-content li:hover{background:#d6e9ff;cursor:pointer}:host ::ng-deep .tree-content{flex:1;width:100%;padding:10px 12px;overflow-x:overlay;overflow-y:overlay}:host ::ng-deep .tree-content .ant-tree{width:100%}:host ::ng-deep .tree-content::-webkit-scrollbar{width:8px}:host ::ng-deep .tree-content::-webkit-scrollbar-thumb{background-color:#94949475;border-radius:7px}:host ::ng-deep .tree-content::-webkit-scrollbar-track{background-color:#fff}:host ::ng-deep .tree-content .custom-node{display:flex;width:100%;cursor:pointer}:host ::ng-deep .tree-content .custom-node .folder-waiting{margin-left:10px;color:red}:host ::ng-deep .tree-content .custom-node .folder-operation{display:none;cursor:pointer}:host ::ng-deep .tree-content nz-tree-node-switcher{width:10px!important}:host ::ng-deep .tree-content .ant-tree-indent-unit{width:10px!important}:host ::ng-deep .tree-content .ant-tree-treenode{padding:4px 0}:host ::ng-deep .tree-content .ant-tree-treenode-selected{color:#fff!important;background:#1177fb!important}:host ::ng-deep .tree-content .ant-tree-treenode-selected .custom-node .folder-operation{display:block!important;color:#fff!important}:host ::ng-deep .tree-content .ant-tree-treenode-selected nz-tree-node-title{background:none;transition:none}:host ::ng-deep .tree-content nz-tree-node:hover{background:#d6e9ff}:host ::ng-deep .tree-content nz-tree-node:hover nz-tree-node-title{background:none;transition:none}:host ::ng-deep .tree-content nz-tree-node:hover .custom-node .folder-operation{display:block;color:#1177fb}:host ::ng-deep nz-tree-node-title{width:100%;cursor:pointer}:host ::ng-deep .tree-empty{display:flex;width:100%;height:100%}\n"] }]
745
+ }], ctorParameters: () => [{ type: i1$1._HttpClient }, { type: i0.ChangeDetectorRef }, { type: TreeListService }, { type: i3$1.GramGlobalService }] });
746
+
747
+ class TreeListRightComponent {
748
+ http;
749
+ msg;
750
+ utilService;
751
+ commAPISrv;
752
+ globalSrv;
753
+ treeSrv;
754
+ pageConfig = null;
755
+ buttonEvent = new EventEmitter();
756
+ operationEvent = new EventEmitter();
757
+ componentEvent = new EventEmitter();
758
+ constructor(http, msg, utilService, commAPISrv, globalSrv, treeSrv) {
759
+ this.http = http;
760
+ this.msg = msg;
761
+ this.utilService = utilService;
762
+ this.commAPISrv = commAPISrv;
763
+ this.globalSrv = globalSrv;
764
+ this.treeSrv = treeSrv;
765
+ this.globalSrv.subscribe(this.treeSrv.globalConstant, (res) => {
766
+ this.getPageConfig();
767
+ });
768
+ this.getPageConfig();
769
+ }
770
+ ngOnInit() { }
771
+ ngOnDestroy() {
772
+ this.globalSrv.removeSubscribe(this.treeSrv.globalConstant);
773
+ }
774
+ getPageConfig() {
775
+ let nodeId = null;
776
+ let nodeInfo = null;
777
+ if (this.treeSrv.selectedNode?.id) {
778
+ nodeId = this.treeSrv.selectedNode?.id;
779
+ nodeInfo = {
780
+ id: nodeId,
781
+ name: this.treeSrv.selectedNode?.title,
782
+ };
783
+ }
784
+ let arg = {
785
+ ID: nodeId,
786
+ VAR1: nodeInfo,
787
+ };
788
+ if (this.treeSrv.sourceData && this.treeSrv.sourceData.listParameterArg) {
789
+ arg = Object.assign(arg, this.treeSrv.sourceData.listParameterArg);
790
+ }
791
+ this.pageConfig = {
792
+ pageId: this.treeSrv.pageId,
793
+ parameterArg: arg,
794
+ rd: Math.random(),
795
+ };
796
+ this.treeSrv.loading = false;
797
+ }
798
+ /**
799
+ * 页面按钮点击事件
800
+ * @param e
801
+ */
802
+ buttonClick(e) {
803
+ this.buttonEvent.emit(e);
804
+ }
805
+ /**
806
+ * 页面列表-操作列点击事件
807
+ * @param e
808
+ */
809
+ operationClick(e) {
810
+ this.operationEvent.emit(e);
811
+ }
812
+ componentClick(e) {
813
+ this.componentEvent.emit(e);
814
+ }
815
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TreeListRightComponent, deps: [{ token: i1$1._HttpClient }, { token: i4.NzMessageService }, { token: i3$2.DeonFormUtilService }, { token: i4$1.CommAPIService }, { token: i3$1.GramGlobalService }, { token: TreeListService }], target: i0.ɵɵFactoryTarget.Component });
816
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: TreeListRightComponent, isStandalone: true, selector: "tree-list-right", outputs: { buttonEvent: "buttonEvent", operationEvent: "operationEvent", componentEvent: "componentEvent" }, ngImport: i0, template: "<ng-container *ngIf=\"pageConfig!!\">\r\n <pre-page [pageConfig]=\"pageConfig\" (buttonEvent)=\"buttonClick($event)\" (operationEvent)=\"operationClick($event)\"\r\n (componentEvent)=\"componentClick($event)\" (pageChangeEvent)=\"treeSrv.pageChangeEvent($event)\"></pre-page>\r\n</ng-container>", styles: [":host ::ng-deep{display:flex;flex:1;flex-direction:column;width:100%;height:100%;padding:8px 15px}:host ::ng-deep form{overflow:hidden}:host ::ng-deep .deon-head{display:flex;height:auto;padding:8px 12px;border-bottom:1px solid #eaeaea}:host ::ng-deep .deon-head .left{flex:1}:host ::ng-deep .deon-head .left ul{display:flex;align-items:center;height:100%;margin:0;padding:0;list-style:none}:host ::ng-deep .deon-head .left ul li{padding:0 25px 0 0}:host ::ng-deep .repeat-table{border:0!important}:host ::ng-deep .field-panel-box{padding:0!important}:host ::ng-deep deon-nz-field-repeat{margin-bottom:0!important}:host ::ng-deep .fieldbox-children{margin-top:3px;border:1px solid #eaeaea}:host ::ng-deep .fieldbox-children .repeat-label{padding:0 5px;border-bottom:1px solid #eaeaea}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: PrePageModule }, { kind: "component", type: i8$1.PrePageComponent, selector: "pre-page", inputs: ["pageId", "pageCode", "pageConfig", "layoutData", "rd", "parameterArg"], outputs: ["advancedEvent", "buttonEvent", "buttonAfterEvent", "selectEvent", "operationEvent", "componentEvent", "pageLoadAfterEvent", "pageLoadConfigEvent"] }] });
817
+ }
818
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TreeListRightComponent, decorators: [{
819
+ type: Component,
820
+ args: [{ selector: 'tree-list-right', imports: [
821
+ CommonModule,
822
+ FormsModule,
823
+ PrePageModule
824
+ ], template: "<ng-container *ngIf=\"pageConfig!!\">\r\n <pre-page [pageConfig]=\"pageConfig\" (buttonEvent)=\"buttonClick($event)\" (operationEvent)=\"operationClick($event)\"\r\n (componentEvent)=\"componentClick($event)\" (pageChangeEvent)=\"treeSrv.pageChangeEvent($event)\"></pre-page>\r\n</ng-container>", styles: [":host ::ng-deep{display:flex;flex:1;flex-direction:column;width:100%;height:100%;padding:8px 15px}:host ::ng-deep form{overflow:hidden}:host ::ng-deep .deon-head{display:flex;height:auto;padding:8px 12px;border-bottom:1px solid #eaeaea}:host ::ng-deep .deon-head .left{flex:1}:host ::ng-deep .deon-head .left ul{display:flex;align-items:center;height:100%;margin:0;padding:0;list-style:none}:host ::ng-deep .deon-head .left ul li{padding:0 25px 0 0}:host ::ng-deep .repeat-table{border:0!important}:host ::ng-deep .field-panel-box{padding:0!important}:host ::ng-deep deon-nz-field-repeat{margin-bottom:0!important}:host ::ng-deep .fieldbox-children{margin-top:3px;border:1px solid #eaeaea}:host ::ng-deep .fieldbox-children .repeat-label{padding:0 5px;border-bottom:1px solid #eaeaea}\n"] }]
825
+ }], ctorParameters: () => [{ type: i1$1._HttpClient }, { type: i4.NzMessageService }, { type: i3$2.DeonFormUtilService }, { type: i4$1.CommAPIService }, { type: i3$1.GramGlobalService }, { type: TreeListService }], propDecorators: { buttonEvent: [{
826
+ type: Output
827
+ }], operationEvent: [{
828
+ type: Output
829
+ }], componentEvent: [{
830
+ type: Output
831
+ }] } });
832
+
833
+ class TreeListComponent {
834
+ http;
835
+ cdr;
836
+ treeSrv;
837
+ globalSrv;
838
+ layoutData = null;
839
+ treeConfig = null;
840
+ buttonEvent = new EventEmitter();
841
+ operationEvent = new EventEmitter();
842
+ componentEvent = new EventEmitter();
843
+ constructor(http, cdr, treeSrv, globalSrv) {
844
+ this.http = http;
845
+ this.cdr = cdr;
846
+ this.treeSrv = treeSrv;
847
+ this.globalSrv = globalSrv;
848
+ }
849
+ ngOnInit() { }
850
+ ngOnChanges(changes) {
851
+ if (changes["treeConfig"]) {
852
+ if (this.treeConfig) {
853
+ this.getPageData();
854
+ }
855
+ }
856
+ }
857
+ getPageData() {
858
+ /**
859
+ * 初始化
860
+ */
861
+ this.treeSrv.initPageData();
862
+ this.treeSrv.treeId = this.treeConfig?.treeId;
863
+ this.treeSrv.pageId = this.treeConfig?.pageId;
864
+ this.treeSrv.loading = false;
865
+ this.layoutData = _.cloneDeep(this.treeConfig);
866
+ }
867
+ /**
868
+ * 页面按钮点击事件
869
+ * @param e
870
+ */
871
+ buttonClick(e) {
872
+ this.buttonEvent.emit(e);
873
+ }
874
+ /**
875
+ * 页面列表-操作列点击事件
876
+ * @param e
877
+ */
878
+ operationClick(e) {
879
+ this.operationEvent.emit(e);
880
+ }
881
+ componentClick(e) {
882
+ this.componentEvent.emit(e);
883
+ }
884
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TreeListComponent, deps: [{ token: i1$1._HttpClient }, { token: i0.ChangeDetectorRef }, { token: TreeListService }, { token: i3$1.GramGlobalService }], target: i0.ɵɵFactoryTarget.Component });
885
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: TreeListComponent, isStandalone: true, selector: "pre-tree-list", inputs: { treeConfig: "treeConfig" }, outputs: { buttonEvent: "buttonEvent", operationEvent: "operationEvent", componentEvent: "componentEvent" }, providers: [GramGlobalService, CommAPIService, TreeListService], usesOnChanges: true, ngImport: i0, template: "<nz-spin [nzSpinning]=\"treeSrv.loading\" nzTip=\"\u62FC\u547D\u52A0\u8F7D\u4E2D...\" class=\"deon-list-spin\">\r\n <div class=\"tree-content\" *ngIf=\"layoutData!!\">\r\n <div class=\"tree-left\"><tree-list-left></tree-list-left></div>\r\n <div class=\"tree-right\"><tree-list-right (buttonEvent)=\"buttonClick($event)\"\r\n (operationEvent)=\"operationClick($event)\" (componentEvent)=\"componentClick($event)\"></tree-list-right></div>\r\n </div>\r\n</nz-spin>", styles: [":host ::ng-deep{display:flex;flex:1;flex-direction:column;width:100%;height:100%;overflow:auto}:host ::ng-deep .tree-content{display:flex;flex-direction:row;width:100%;height:100%;padding:0;overflow:auto}:host ::ng-deep .tree-content .tree-left{display:flex;flex-direction:column;width:300px;height:100%;border-right:1px solid #eaeaea}:host ::ng-deep .tree-content .tree-left .tree-query{padding:8px 12px}:host ::ng-deep .tree-content .tree-left .tree-content{width:300px;padding:10px 12px}:host ::ng-deep .tree-content .tree-right{flex:1;overflow:auto}:host ::ng-deep .tree-content .tree-right tree-list-right{padding:0}:host ::ng-deep .tree-content .tree-right tree-list-right page-info-single{padding:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: NzSpinModule }, { kind: "component", type: i5$1.NzSpinComponent, selector: "nz-spin", inputs: ["nzIndicator", "nzSize", "nzTip", "nzDelay", "nzSimple", "nzSpinning"], exportAs: ["nzSpin"] }, { kind: "component", type: TreeListLeftComponent, selector: "tree-list-left" }, { kind: "component", type: TreeListRightComponent, selector: "tree-list-right", outputs: ["buttonEvent", "operationEvent", "componentEvent"] }] });
886
+ }
887
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TreeListComponent, decorators: [{
888
+ type: Component,
889
+ args: [{ selector: 'pre-tree-list', providers: [GramGlobalService, CommAPIService, TreeListService], imports: [
890
+ CommonModule,
891
+ NzSpinModule,
892
+ TreeListLeftComponent,
893
+ TreeListRightComponent
894
+ ], template: "<nz-spin [nzSpinning]=\"treeSrv.loading\" nzTip=\"\u62FC\u547D\u52A0\u8F7D\u4E2D...\" class=\"deon-list-spin\">\r\n <div class=\"tree-content\" *ngIf=\"layoutData!!\">\r\n <div class=\"tree-left\"><tree-list-left></tree-list-left></div>\r\n <div class=\"tree-right\"><tree-list-right (buttonEvent)=\"buttonClick($event)\"\r\n (operationEvent)=\"operationClick($event)\" (componentEvent)=\"componentClick($event)\"></tree-list-right></div>\r\n </div>\r\n</nz-spin>", styles: [":host ::ng-deep{display:flex;flex:1;flex-direction:column;width:100%;height:100%;overflow:auto}:host ::ng-deep .tree-content{display:flex;flex-direction:row;width:100%;height:100%;padding:0;overflow:auto}:host ::ng-deep .tree-content .tree-left{display:flex;flex-direction:column;width:300px;height:100%;border-right:1px solid #eaeaea}:host ::ng-deep .tree-content .tree-left .tree-query{padding:8px 12px}:host ::ng-deep .tree-content .tree-left .tree-content{width:300px;padding:10px 12px}:host ::ng-deep .tree-content .tree-right{flex:1;overflow:auto}:host ::ng-deep .tree-content .tree-right tree-list-right{padding:0}:host ::ng-deep .tree-content .tree-right tree-list-right page-info-single{padding:0}\n"] }]
895
+ }], ctorParameters: () => [{ type: i1$1._HttpClient }, { type: i0.ChangeDetectorRef }, { type: TreeListService }, { type: i3$1.GramGlobalService }], propDecorators: { treeConfig: [{
896
+ type: Input
897
+ }], buttonEvent: [{
898
+ type: Output
899
+ }], operationEvent: [{
900
+ type: Output
901
+ }], componentEvent: [{
902
+ type: Output
903
+ }] } });
904
+
905
+ const COMPONENTS = [TreeMainComponent, TreeFormComponent, TreeListComponent];
906
+ const COMPONENTS_NOROUNT = [TreeListLeftComponent, TreeListRightComponent, TreeFormLeftComponent, TreeFormRightComponent];
907
+ class PreTreeModule {
908
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: PreTreeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
909
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.15", ngImport: i0, type: PreTreeModule, imports: [CommonModule, TreeMainComponent, TreeFormComponent, TreeListComponent, TreeListLeftComponent, TreeListRightComponent, TreeFormLeftComponent, TreeFormRightComponent], exports: [TreeMainComponent, TreeFormComponent, TreeListComponent] });
910
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: PreTreeModule, imports: [CommonModule, COMPONENTS, COMPONENTS_NOROUNT] });
911
+ }
912
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: PreTreeModule, decorators: [{
913
+ type: NgModule,
914
+ args: [{
915
+ imports: [CommonModule, ...COMPONENTS, ...COMPONENTS_NOROUNT],
916
+ exports: [...COMPONENTS],
917
+ }]
918
+ }] });
919
+
920
+ /**
921
+ * Generated bundle index. Do not edit.
922
+ */
923
+
924
+ export { PreTreeModule, TreeFormComponent, TreeListComponent, TreeMainComponent };
925
+ //# sourceMappingURL=pre-control.pre-tree.mjs.map