@ebuilding/runtime 3.0.9 → 3.1.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.
@@ -86,6 +86,8 @@ export declare abstract class FormDefaultService implements OnDestroy {
86
86
  */
87
87
  getPageConfig(): void;
88
88
  getPageRuleData(field: FormlyFieldConfig, value: any): void;
89
+ /** 解开动态字段值中重复的{key,value}包装。 */
90
+ private unwrapRuleFieldValue;
89
91
  formModelChange(e: any, field: any): void;
90
92
  save(): void;
91
93
  btnClose(): void;
@@ -322,7 +322,7 @@ class FormDefaultService {
322
322
  Object.keys(a).forEach((b) => {
323
323
  tmp[b] = {
324
324
  key: b,
325
- value: a[b]
325
+ value: this.unwrapRuleFieldValue(a[b])
326
326
  };
327
327
  });
328
328
  createModel.push(tmp);
@@ -345,6 +345,7 @@ class FormDefaultService {
345
345
  }
346
346
  this.http.post(`${ModuleAPI.rule}/rule/run/formRule`, {
347
347
  ruleId: field.props?.["callBackRule"],
348
+ formId: this.config?.formId,
348
349
  modelJson: postData
349
350
  }).subscribe((res) => {
350
351
  if (res && res?.success && res?.result) {
@@ -357,6 +358,17 @@ class FormDefaultService {
357
358
  });
358
359
  }
359
360
  }
361
+ /** 解开动态字段值中重复的{key,value}包装。 */
362
+ unwrapRuleFieldValue(value) {
363
+ let current = value;
364
+ const visited = new Set();
365
+ while (current && typeof current === 'object' && !Array.isArray(current)
366
+ && Object.prototype.hasOwnProperty.call(current, 'value') && !visited.has(current)) {
367
+ visited.add(current);
368
+ current = current.value;
369
+ }
370
+ return current;
371
+ }
360
372
  formModelChange(e, field) {
361
373
  if (this.model && field.key) {
362
374
  let key = field.key;
@@ -1 +1 @@
1
- {"version":3,"file":"comm.form.mjs","sources":["../../../../packages/runtime/comm/form/src/service/defaultService.ts","../../../../packages/runtime/comm/form/src/default/index.component.ts","../../../../packages/runtime/comm/form/src/default/index.component.html","../../../../packages/runtime/comm/form/src/service/onlyOneService.ts","../../../../packages/runtime/comm/form/src/components/single/index.component.ts","../../../../packages/runtime/comm/form/src/components/single/index.component.html","../../../../packages/runtime/comm/form/src/components/multiple/index.component.ts","../../../../packages/runtime/comm/form/src/components/multiple/index.component.html","../../../../packages/runtime/comm/form/src/onlyone/index.component.ts","../../../../packages/runtime/comm/form/src/onlyone/index.component.html","../../../../packages/runtime/comm/form/src/service/empCommService.ts","../../../../packages/runtime/comm/form/src/service/empGroupService.ts","../../../../packages/runtime/comm/form/src/components/children/index.component.ts","../../../../packages/runtime/comm/form/src/components/children/index.component.html","../../../../packages/runtime/comm/form/src/empinfo/index.component.ts","../../../../packages/runtime/comm/form/src/empinfo/index.component.html","../../../../packages/runtime/comm/form/src/step/index.component.ts","../../../../packages/runtime/comm/form/src/step/index.component.html","../../../../packages/runtime/comm/form/src/index.module.ts","../../../../packages/runtime/comm/form/comm.form.ts"],"sourcesContent":["import { Directive, OnDestroy, Input, Output, EventEmitter } from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { NzMessageService } from 'ng-zorro-antd/message';\nimport { _HttpClient } from '@delon/theme';\nimport { FormlyFormOptions, FormlyFieldConfig, FormlyFormBuilder } from '@ebuilding-form/core';\nimport { DeonFormUtilService } from '@ebuilding/base/shared.srv/deon.util';\nimport { DeonFormResetService } from '@ebuilding/base/shared.srv/deon2.util';\nimport { ArgType } from '@ebuilding/base/shared.var/shared.constant';\nimport { GramGlobalService } from '@ebuilding/base/shared.srv/global.event';\nimport { CommAPIService } from '@ebuilding/base/shared.srv/commApi.service';\nimport { of, Subject, zip } from 'rxjs';\nimport * as _ from 'lodash';\nimport { ModuleAPI } from '@ebuilding/base/shared.var/shared.constant';\n\n@Directive()\nexport abstract class FormDefaultService implements OnDestroy {\n _config: any = null;\n\n pageConfig: any = null;\n loading: boolean = true;\n headerLoading: boolean = true;\n form = new FormGroup({});\n model: any = {};\n options: FormlyFormOptions = {};\n fields: FormlyFieldConfig[] = [];\n\n /**\n * 表单设计数据\n */\n designBasic: any = null;\n\n /**\n * 配置参数\n */\n argList: any[] = [];\n\n /**\n * 销毁\n */\n onDestroy$ = new Subject<void>();\n\n /**\n * 数据ID\n */\n dataId: any = null;\n\n /**\n * 表单设计ID\n */\n formId: any = null;\n throwField: any = {};\n throwData: any = {};\n\n @Input() set config(value: any) { }\n get config() {\n return null;\n }\n\n /**\n * 是否有数据提交前按钮事件\n */\n preEventRule: boolean = false;\n\n /**\n * 值发生变化调用抛出\n */\n @Output() modelThrowEvent: EventEmitter<any> = new EventEmitter();\n\n /**\n * 加载后抛出事件\n */\n @Output() modelLoadEvent: EventEmitter<any> = new EventEmitter();\n\n /**\n * 保存后抛出事件\n */\n @Output() bttonSaveEvent: EventEmitter<any> = new EventEmitter();\n\n constructor(\n public http: _HttpClient,\n public utilService: DeonFormUtilService,\n public deonFormBuilder: FormlyFormBuilder,\n public globalSrv: GramGlobalService,\n public msg: NzMessageService,\n public commAPISrv: CommAPIService,\n public resetService: DeonFormResetService,\n ) {\n this.globalSrv.subscribe('deon-field-repeat', (res: any) => {\n if (res != undefined && res.field != undefined && res.data != undefined && res.type != undefined) {\n if (res.type == 'delete') {\n this.fields = [...this.fields];\n }\n }\n });\n }\n\n ngOnDestroy() {\n this.onDestroy$.next();\n this.onDestroy$.complete();\n }\n\n /*\n 获取设计\n */\n getDesign() {\n let apiName: any = this.commAPISrv.getFormDesign(this.pageConfig.moduleCode, this.pageConfig.formId);\n return this.http.post(`${apiName}`);\n }\n\n /*\n 获取角色\n */\n getRole() {\n let params: any = {\n formId: this.pageConfig.formId,\n type: this.pageConfig.type,\n };\n let apiName: any = this.commAPISrv.getFormRole(this.pageConfig.moduleCode);\n return this.http.post(`${apiName}`, params);\n }\n\n /*\n 获取配置-下拉选项\n */\n getDropDown() {\n let apiName: any = this.commAPISrv.getFormDropDown(this.pageConfig.moduleCode, this.pageConfig.formId);\n return this.http.post(`${apiName}`);\n }\n\n /*\n 获取配置-表单数据\n */\n getFromModel() {\n let params: any = {\n formId: this.pageConfig.formId,\n id: this.pageConfig.id,\n };\n if (this.pageConfig.relationId!!) {\n params['id'] = this.pageConfig.relationId;\n }\n\n if (this.pageConfig.type != 'ADD' && (this.pageConfig.id!! || this.pageConfig.relationId!!)) {\n let apiName: any = null;\n if (this.pageConfig.api!! && this.pageConfig.api.modelAPI!!) {\n apiName = this.pageConfig.api.modelAPI;\n } else {\n apiName = this.commAPISrv.getFormModel(this.pageConfig.moduleCode);\n }\n return this.http.post(`${apiName}`, params);\n } else {\n return of(null);\n }\n }\n\n /*\n 获取配置-表单默认值\n */\n getFromDefaultModel() {\n if (this.pageConfig.type == 'ADD' && this.pageConfig.formId!!) {\n let apiName: any = null;\n if (this.pageConfig.api!! && this.pageConfig.api.modelDefaultAPI!!) {\n apiName = this.pageConfig.api.modelDefaultAPI;\n } else {\n apiName = this.commAPISrv.getFormDefaultModel(this.pageConfig.moduleCode);\n }\n return this.http.post(`${apiName}/${this.pageConfig.formId}`);\n } else {\n return of(null);\n }\n }\n\n\n /**\n * 获取配置-表单规则\n * @returns \n */\n getFromRuleData() {\n if (this.config.formId!!) {\n return this.http.post(`${ModuleAPI.rule}/rule/form/listByForm/${this.config.formId}`);\n } else {\n return of(null);\n }\n }\n\n /**\n * 获取默认参数\n */\n getFromArgInfo() {\n if (this.argList!! && Array.isArray(this.argList) && this.argList.length > 0) {\n this.argList.forEach((item: any) => {\n switch (item.argType) {\n case ArgType.arg1:\n if (this.pageConfig?.argInfo!! && item.argFieldId!! && item.argName!! && this.pageConfig.argInfo[item.argName]!!) {\n this.model[item.argFieldId] = this.pageConfig?.argInfo[item.argName];\n }\n break;\n case ArgType.arg2:\n if (item.argFieldId!!) {\n this.throwField[item.argFieldId] = item.argName;\n }\n break;\n }\n });\n }\n }\n\n /**\n * 组装配置\n */\n getPageConfig() {\n new Promise((resolve: any) => {\n zip(this.getDesign(), this.getRole(), this.getDropDown(), this.getFromModel(), this.getFromDefaultModel(), this.getFromRuleData()).subscribe(\n ([design, role, drop, d, m, r]) => {\n this.model = {};\n //传入的值\n if (this.pageConfig.model != undefined && this.pageConfig.model != null) {\n this.model = Object.assign(this.model, this.pageConfig.model);\n }\n if (design.success && design.result!!) {\n this.designBasic = design.result?.basic;\n }\n if (this.designBasic!! && _.get(this.designBasic, 'json')!!) {\n /**\n * 配置参数\n */\n if (_.get(design, 'result.listArg')!! && Array.isArray(_.get(design, 'result.listArg'))) {\n this.argList = _.get(design, 'result.listArg');\n }\n this.getFromArgInfo();\n\n /**\n * 判断是否有提交前事件\n */\n if (_.get(design, 'result.preEventRule') == true) {\n this.preEventRule = true;\n }\n\n /**\n * 表单JSON\n */\n let fieldConfigs: FormlyFieldConfig[] = JSON.parse(_.get(design, 'result.basic.json'));\n let fieldRole: any = {};\n let fieldOptions: any = {};\n let fieldRule: any = null;\n\n //字段权限\n if (role.success == true && role.result!!) {\n fieldRole = role.result;\n }\n\n //字段Options\n if (drop.success == true && drop.result!!) {\n fieldOptions = drop.result;\n }\n\n //填充值\n if (d!! && d.success == true && d.result!!) {\n this.model = Object.assign(this.model, d.result);\n }\n\n //权重值\n if (this.pageConfig.weightModel != undefined && this.pageConfig.weightModel != null) {\n this.model = Object.assign(this.model, this.pageConfig.weightModel);\n }\n\n //获取的表单值\n if (m!! && m.success == true && m.result!!) {\n this.model = Object.assign(this.model, m.result);\n }\n\n if (r!! && r.success == true && r.result!!) {\n fieldRule = r.result;\n }\n\n let defaultRole: any = null;\n if (this.config!! && this.config.isView != undefined && this.config.isView != null && this.config.isView == true) {\n defaultRole = {\n read: true,\n };\n }\n this.utilService.initConfig(fieldConfigs, fieldRole, fieldOptions, this.model, fieldRule, null, this, (e: any, field: any) => {\n this.getPageRuleData(field, e);\n });\n\n\n this.fields = fieldConfigs;\n\n setTimeout(() => {\n if (this.options != undefined && this.options != null && this.options?.resetModel) {\n this.options?.resetModel();\n }\n }, 0);\n }\n this.formDataLoadAfter();\n this.loading = false;\n },\n () => {\n this.loading = false;\n },\n () => {\n this.loading = false;\n resolve();\n },\n );\n });\n }\n\n getPageRuleData(field: FormlyFieldConfig, value: any) {\n this.loading = true;\n let postData: any = {};\n let props: any = field.props;\n\n if (props) {\n if (field.props?.[\"callBackFields\"] && Array.isArray(field.props?.[\"callBackFields\"])) {\n field.props?.[\"callBackFields\"].forEach((a: any) => {\n if (this.model!! && this.model[a] != undefined) {\n postData[a] = {\n key: a,\n value: this.model[a]\n }\n }\n });\n }\n if (props[\"arrKey\"]!!) {\n /**\n * 数组内部组件触发\n */\n let findModel: any[] = this.model[props.arrKey];\n let createModel: any[] = [];\n if (findModel!! && Array.isArray(findModel)) {\n findModel.forEach((a: any) => {\n if (a!!) {\n let tmp: any = {};\n Object.keys(a).forEach((b) => {\n tmp[b] = {\n key: b,\n value: a[b]\n }\n });\n createModel.push(tmp);\n }\n });\n }\n postData[props.arrKey] = {\n key: props.arrKey,\n value: createModel\n }\n } else {\n /**\n * 非数组内部触发\n */\n postData[field.key] = {\n key: field.key,\n value: value\n };\n }\n\n this.http.post(`${ModuleAPI.rule}/rule/run/formRule`, {\n ruleId: field.props?.[\"callBackRule\"],\n modelJson: postData\n }).subscribe((res: any) => {\n if (res && res?.success && res?.result) {\n this.resetService.resetConfig(this.fields, this.model, res.result);\n //(<any>this.options)._buildForm(true);\n }\n this.loading = false;\n }, (res: any) => {\n this.loading = false;\n });\n }\n }\n\n formModelChange(e: any, field: any) {\n if (this.model!! && field.key!!) {\n let key: any = field.key;\n\n if (this.throwField!! && this.throwField.hasOwnProperty(key)) {\n /**\n * 触发表单外部\n */\n let value: any = this.throwField[key];\n if (value != undefined && value != null) {\n this.throwData = {};\n Object.keys(this.throwField).forEach((k: any) => {\n this.throwData[value] = this.model[k];\n });\n }\n this.modelThrowDataBefore();\n\n /**\n * 事件抛出\n */\n this.modelThrowEvent.emit(this.throwField);\n } else {\n /**\n * 常规触发\n */\n }\n }\n }\n\n save() {\n if (!this.form.valid) {\n return;\n }\n this.loading = true;\n let apiName = null;\n if (this.pageConfig.type == 'ADD') {\n if (this.pageConfig.api!! && this.pageConfig.api.addAPI!!) {\n apiName = this.pageConfig.api.addAPI;\n } else {\n apiName = this.commAPISrv.getFormAdd(this.pageConfig.moduleCode);\n }\n } else if (this.pageConfig.type == 'EDIT') {\n if (this.pageConfig.api!! && this.pageConfig.api.editAPI!!) {\n apiName = this.pageConfig.api.editAPI;\n } else {\n apiName = this.commAPISrv.getFormUpdate(this.pageConfig.moduleCode);\n }\n }\n\n this.http\n .post(`${apiName}`, {\n id: this.pageConfig.id,\n formId: this.pageConfig.formId,\n modelJson: this.model,\n })\n .subscribe(\n (res: any) => {\n this.loading = false;\n if (res && res.success == true) {\n this.msg.success('保存成功!');\n if (this.pageConfig.type == 'ADD') {\n this.pageConfig.type = 'EDIT';\n this.pageConfig.id = res.result;\n }\n this.bttonSaveEvent.emit(res.result);\n }\n },\n () => {\n this.loading = false;\n },\n );\n }\n\n btnClose() {\n if (this.options != undefined && this.options != null && this.options?.resetModel) {\n this.options?.resetModel();\n }\n }\n\n formDataLoadAfter() { }\n\n modelThrowDataBefore() { }\n}\n","import { Component, OnInit, OnDestroy, Input, Output, SimpleChanges } from '@angular/core';\nimport { _HttpClient } from '@delon/theme';\nimport { NzMessageService } from 'ng-zorro-antd/message';\nimport { DeonFormUtilService } from '@ebuilding/base/shared.srv/deon.util';\nimport { DeonFormResetService } from '@ebuilding/base/shared.srv/deon2.util';\nimport { GramGlobalService } from '@ebuilding/base/shared.srv/global.event';\nimport { CommAPIService } from '@ebuilding/base/shared.srv/commApi.service';\nimport * as _ from 'lodash';\nimport { FormDefaultService } from '../service/defaultService';\n\nimport { RuntimeSharedImportsModule } from '@ebuilding/runtime/shared-imports';\nimport { FormlyModule, FormlyFormBuilder } from '@ebuilding-form/core';\nimport { CardContentModule } from '@ebuilding/biz-comm/other/card';\nimport { GramDeonAntdModule } from '@ebuilding/biz-comm/type';\n/**\n * 常规表单 - 新增、编辑、查�? */\n@Component({\n selector: 'comm-form',\n templateUrl: './index.component.html',\n styleUrls: ['./index.component.less'],\n providers: [GramGlobalService, CommAPIService],\n imports: [\n RuntimeSharedImportsModule,\n FormlyModule,\n GramDeonAntdModule,\n CardContentModule\n ]\n})\nexport class CommFormMainComponent extends FormDefaultService implements OnInit {\n override _config: any = null;\n\n /**\n * 默认配置\n */\n headerDefaultConfig: any = null;\n\n /**\n * 动态配�? */\n headerDynamicConfig: any = null;\n\n /**\n * formId\n * formType\n * moduleCode\n */\n @Input() override set config(value: any) {\n this._config = value;\n if (value!! && value.id!!) {\n this.dataId = value.id;\n }\n if (value!! && value.formId!!) {\n this.formId = value.formId;\n }\n this.getPageData();\n }\n override get config() {\n return this._config;\n }\n\n @Input() setpInfo: any = null;\n\n constructor(\n public override http: _HttpClient,\n public override utilService: DeonFormUtilService,\n public override resetService: DeonFormResetService,\n public override deonFormBuilder: FormlyFormBuilder,\n public override globalSrv: GramGlobalService,\n public override msg: NzMessageService,\n public override commAPISrv: CommAPIService,\n ) {\n super(http, utilService, deonFormBuilder, globalSrv, msg, commAPISrv, resetService);\n }\n\n ngOnInit(): void { }\n\n ngOnChanges(changes: SimpleChanges): void { }\n\n override ngOnDestroy() { }\n\n getPageData() {\n this.pageConfig = {\n type: this.config.formType,\n id: this.dataId,\n formId: this.formId,\n moduleCode: this.config.moduleCode,\n api: this.config?.api,\n argInfo: null,\n model: this.config?.model,\n weightModel: this.config?.weightModel,\n hideButton: this.config?.hideButton == true ? true : false\n };\n\n if (this.config.argInfo!!) {\n this.pageConfig.argInfo = _.cloneDeep(this.config.argInfo);\n }\n\n this.getPageConfig();\n }\n\n headerDataLoadAfter(e: any) {\n this.headerLoading = false;\n }\n\n override formDataLoadAfter() {\n this.headerDefaultConfig = null;\n if (this.designBasic!! && this.designBasic?.izHeader == true) {\n this.headerDefaultConfig = {\n headerId: this.designBasic.headerId,\n id: this.config.id,\n rd: Math.random(),\n };\n } else {\n this.headerLoading = false;\n }\n this.modelLoadEvent.emit(this.model);\n }\n\n override modelThrowDataBefore() {\n this.headerDynamicConfig = null;\n if (this.throwData!!) {\n let exist: boolean = false;\n Object.keys(this.throwData).forEach((key: any) => {\n if (this.throwData[key] != undefined && this.throwData[key] != null) {\n exist = true;\n }\n });\n if (exist) {\n if (this.designBasic?.izHeader == true) {\n this.headerDynamicConfig = { headerId: this.designBasic.headerId, model: this.throwData, rd: Math.random() };\n } else {\n this.headerLoading = false;\n }\n }\n }\n }\n}\n","<nz-spin [nzSpinning]=\"loading == true || headerLoading == true\" nzTip=\"拼命加载中...\" class=\"deon-list-spin\">\n <ng-container *ngIf=\"pageConfig!!\">\n <div class=\"form-header\"\n *ngIf=\"designBasic!! && designBasic?.izHeader == true && (headerDefaultConfig!! || headerDynamicConfig!!)\">\n <card-main [defaultConfig]=\"headerDefaultConfig\" [dynamicConfig]=\"headerDynamicConfig\"\n (pageLoadAfter)=\"headerDataLoadAfter($event)\"></card-main>\n </div>\n <div class=\"form-info\">\n <form [formGroup]=\"form\" (ngSubmit)=\"save()\" #defaultForm>\n <div class=\"deon-from\">\n <ng-container *ngIf=\"fields && fields.length > 0; else emptyPage\">\n <formly-form [model]=\"model\" [fields]=\"fields\" [options]=\"options\" [form]=\"form\"> </formly-form>\n </ng-container>\n <ng-template #emptyPage>\n <nz-empty *ngIf=\"loading !== true\"></nz-empty>\n </ng-template>\n </div>\n <ng-content select=\"[name=deon-content]\"></ng-content>\n <div class=\"deon-button\" *ngIf=\"pageConfig.hideButton!=true\">\n <div class=\"bottom-left\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"[name=bottom-left]\"></ng-content>\n <div class=\"bottom-right\" *ngIf=\"pageConfig.type != 'VIEW' && pageConfig.type != 'PREVIEW'\">\n <button nz-button nzType=\"default\" (click)=\"btnClose()\" type=\"button\"><i nz-icon\n nzType=\"reload\"></i>重置</button>\n <!-- <button nz-button nzType=\"primary\" id=\"DRAFT\" *ngIf=\"draft == true\"><i nz-icon\n nzType=\"hourglass\"></i>暂存</button> -->\n <button nz-button nzType=\"primary\" id=\"SAVE\"><i nz-icon nzType=\"save\"></i>保存</button>\n </div>\n <ng-content select=\"[name=bottom-right]\"></ng-content>\n </div>\n </form>\n </div>\n </ng-container>\n</nz-spin>","import { Component, Input, Output, SimpleChange, EventEmitter } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { FormGroup } from '@angular/forms';\nimport { NzMessageService } from 'ng-zorro-antd/message';\nimport { NzModalService } from 'ng-zorro-antd/modal';\nimport { _HttpClient } from '@delon/theme';\nimport { DeonFormUtilService } from '@ebuilding/base/shared.srv/deon.util';\nimport { CommAPIService } from '@ebuilding/base/shared.srv/commApi.service';\nimport * as _ from 'lodash';\nimport { of, zip } from 'rxjs';\nimport { FormlyFormOptions, FormlyFieldConfig } from '@ebuilding-form/core';\n\n@Component({\n template: ''\n})\nexport abstract class OnlyOneService {\n _config: any = null;\n\n loading: boolean = true;\n form = new FormGroup({});\n //model: any = {};\n options: FormlyFormOptions = {};\n fields: FormlyFieldConfig[] = [];\n\n @Input()\n set config(value: any) {\n if (value!!) {\n if (value.model == undefined || value.model == null) {\n value.model = {};\n }\n this._config = value;\n this.getPageConfig();\n }\n }\n\n get config() {\n return this._config;\n }\n\n @Input() setpInfo: any = null;\n\n /**\n * 值发生变化调用抛出\n */\n @Output() modelThrowEvent: EventEmitter<any> = new EventEmitter();\n\n @Output() pageLoadAfter: EventEmitter<any> = new EventEmitter();\n\n constructor(\n public router: Router,\n public http: _HttpClient,\n public modal: NzModalService,\n public msg: NzMessageService,\n public utilService: DeonFormUtilService,\n public commApiSrv: CommAPIService,\n ) { }\n\n ngOnChanges(changes: any): void {\n if (SimpleChange['formData']) {\n }\n }\n\n /**\n * 重新加载\n */\n btnReload() {\n this.options?.resetModel();\n this.config.model = {};\n this.form = new FormGroup({});\n this.getPageConfig();\n }\n\n /*\n 获取设计\n */\n getDesign() {\n return of(this.config.formInfo.json);\n }\n\n /*\n 获取角色\n */\n getRole() {\n let params: any = {\n formId: this.config.formInfo.id,\n type: this.config.formType,\n };\n let apiName: any = this.commApiSrv.getFormRole(this.config.moduleType);\n return this.http.post(`${apiName}`, params);\n }\n\n /*\n 获取配置-下拉选项\n */\n getDropDown() {\n let apiName: any = this.commApiSrv.getFormDropDown(this.config.moduleType, this.config.formInfo.id);\n return this.http.post(`${apiName}`);\n }\n\n /*\n 获取配置-表单数据\n */\n getFromModel() {\n let apiName: any = this.commApiSrv.getFormModelByForm(this.config.moduleType);\n return this.http.post(`${apiName}/${this.config.formInfo.id}`);\n }\n\n /*\n 获取配置-表单默认值\n */\n getFromDefaultModel() {\n if (this.config.formType == 'ADD' && this.config.formInfo.id!!) {\n let apiName: any = this.commApiSrv.getFormDefaultModel(this.config.moduleType);\n return this.http.post(`${apiName}/${this.config.formInfo.id}`);\n } else {\n return of(null);\n }\n }\n\n /**\n * 组装配置\n */\n getPageConfig() {\n this.loading = true;\n new Promise((resolve: any) => {\n zip(this.getDesign(), this.getRole(), this.getDropDown(), this.getFromDefaultModel(), this.getFromModel()).subscribe(\n ([design, role, drop, d, m]) => {\n let fieldConfigs: FormlyFieldConfig[] = design;\n let fieldRole: any = {};\n let fieldOptions: any = {};\n\n //字段权限\n if (role?.success == true && role?.result!!) {\n fieldRole = role.result;\n }\n\n //字段Options\n if (drop.success == true && drop.result!!) {\n fieldOptions = drop.result;\n }\n if (this.config?.formInfo?.izMultiple == true) {\n //获取的表单值\n if (m!! && m.success == true && m.result!!) {\n this.config.model = Object.assign(this.config.model, {\n multiple_key: m.result,\n });\n }\n } else {\n //默认值\n if (d!! && d.success == true && d.result!!) {\n this.config.model = Object.assign(this.config.model, d.result);\n }\n\n //获取的表单值\n if (m!! && m.success == true && m.result!!) {\n this.config.model = Object.assign(this.config.model, m.result);\n }\n }\n\n // this.utilService.initFormFieldConfig(fieldConfigs, fieldRole, fieldOptions, this.config.model, this, (e: any, field: any) => {\n // this.modelThrowEvent.emit(this.config.model);\n // });\n\n this.fields = fieldConfigs;\n\n setTimeout(() => {\n if (this.options != undefined && this.options != null && this.options?.resetModel) {\n this.options?.resetModel();\n }\n }, 0);\n this.getDataLoadAfter();\n this.loading = false;\n },\n () => {\n this.loading = false;\n },\n () => {\n this.loading = false;\n resolve();\n },\n );\n });\n }\n\n /**\n * 表单数据加载完\n */\n getDataLoadAfter() {\n this.pageLoadAfter.emit(this.config.model);\n }\n}\n","import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { _HttpClient } from '@delon/theme';\nimport { NzMessageService } from 'ng-zorro-antd/message';\nimport { FormlyFieldConfig } from '@ebuilding-form/core';\nimport { DeonFormUtilService } from '@ebuilding/base/shared.srv/deon.util';\nimport { CommAPIService } from '@ebuilding/base/shared.srv/commApi.service';\nimport { OnlyOneService } from '../../service/onlyOneService';\nimport { of, zip } from 'rxjs';\nimport * as _ from 'lodash';\nimport { Router } from '@angular/router';\nimport { NzModalService } from 'ng-zorro-antd/modal';\n\nimport { RuntimeSharedImportsModule } from '@ebuilding/runtime/shared-imports';\nimport { FormlyModule } from '@ebuilding-form/core';\nimport { GramDeonAntdModule } from '@ebuilding/biz-comm/type';\n\n@Component({\n selector: 'form-single',\n templateUrl: `./index.component.html`,\n styleUrls: ['./index.component.less'],\n imports: [\n RuntimeSharedImportsModule,\n FormlyModule,\n GramDeonAntdModule\n ]\n})\nexport class FormSingleComponent extends OnlyOneService implements OnInit, OnDestroy {\n constructor(\n public override router: Router,\n public override http: _HttpClient,\n public override modal: NzModalService,\n public override msg: NzMessageService,\n public commApiSrv3: CommAPIService,\n public override utilService: DeonFormUtilService,\n ) {\n super(router, http, modal, msg, utilService, commApiSrv3);\n }\n\n ngOnInit() { }\n\n ngOnDestroy(): void { }\n\n /*\n 获取设计\n */\n override getDesign() {\n let newField: FormlyFieldConfig[] = JSON.parse(this.config.formInfo.json);\n return of(newField);\n }\n\n /**\n * 上一�? */\n btnLeft() { }\n\n /**\n * 下一�? */\n btnRight() { }\n\n /**\n * 保存按钮\n * @returns\n */\n btnSave() {\n if (!this.form.valid) {\n return;\n }\n this.loading = true;\n let apiName: any = this.commApiSrv.getFormSave(this.config.moduleType, false);\n this.http\n .post(`${apiName}`, {\n formId: this.config.formInfo.id,\n modelJson: this.config.model,\n })\n .subscribe(\n (res: any) => {\n this.loading = false;\n if (res && res.success == true) {\n this.msg.success('保存成功!');\n this.getPageConfig();\n }\n },\n () => {\n this.loading = false;\n },\n );\n }\n}\n","<nz-spin [nzSpinning]=\"loading\" nzTip=\"拼命加载中...\" class=\"deon-list-spin\">\n <form [formGroup]=\"form\" (ngSubmit)=\"btnSave()\">\n <div class=\"deon-from\">\n <ng-container *ngIf=\"fields && fields.length > 0\">\n <formly-form [model]=\"config.model\" [fields]=\"fields\" [options]=\"options\" [form]=\"form\"> </formly-form>\n </ng-container>\n </div>\n <div class=\"deon-bottom\">\n <div class=\"bottom-left\">\n <ng-content></ng-content>\n </div>\n <div class=\"bottom-right\">\n <button nz-button nzType=\"default\" (click)=\"btnReload()\" type=\"button\"><i nz-icon\n nzType=\"reload\"></i>重新加载</button>\n <button nz-button nzType=\"primary\"><i nz-icon nzType=\"save\"></i>保存</button>\n </div>\n </div>\n </form>\n</nz-spin>","import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { _HttpClient } from '@delon/theme';\nimport { Router } from '@angular/router';\nimport { NzMessageService } from 'ng-zorro-antd/message';\nimport { NzModalService } from 'ng-zorro-antd/modal';\nimport { FormlyFieldConfig } from '@ebuilding-form/core';\nimport { DeonFormUtilService } from '@ebuilding/base/shared.srv/deon.util';\nimport { CommAPIService } from '@ebuilding/base/shared.srv/commApi.service';\nimport { OnlyOneService } from '../../service/onlyOneService';\nimport { of } from 'rxjs';\n\nimport { RuntimeSharedImportsModule } from '@ebuilding/runtime/shared-imports';\nimport { FormlyModule } from '@ebuilding-form/core';\nimport { GramDeonAntdModule } from '@ebuilding/biz-comm/type';\n\n@Component({\n selector: 'form-multiple',\n templateUrl: `./index.component.html`,\n styleUrls: ['./index.component.less'],\n imports: [\n RuntimeSharedImportsModule,\n FormlyModule,\n GramDeonAntdModule\n ]\n})\nexport class FormMultipleComponent extends OnlyOneService implements OnInit, OnDestroy {\n constructor(\n public override router: Router,\n public override http: _HttpClient,\n public override modal: NzModalService,\n public override msg: NzMessageService,\n public commApiSrv3: CommAPIService,\n public override utilService: DeonFormUtilService,\n ) {\n super(router, http, modal, msg, utilService, commApiSrv3);\n }\n\n ngOnInit() { }\n\n ngOnDestroy(): void { }\n\n /*\n 获取设计\n */\n override getDesign() {\n let newField: FormlyFieldConfig[] = [\n {\n key: 'multiple_key',\n type: 'repeat',\n fieldArray: {\n fieldGroup: JSON.parse(this.config.formInfo.json),\n },\n },\n ];\n return of(newField);\n }\n\n /*\n 获取配置-表单数据\n */\n override getFromModel() {\n let apiName: any = this.commApiSrv.getFormModelByForm(this.config.moduleType);\n return this.http.post(`${apiName}/${this.config.formInfo.id}`);\n }\n\n btnSave() {\n if (!this.form.valid) {\n return;\n }\n this.loading = true;\n let apiName: any = this.commApiSrv.getFormSave(this.config.moduleType, true);\n this.http\n .post(`${apiName}`, {\n formId: this.config.formInfo.id,\n modelJson: this.config.model['multiple_key'],\n })\n .subscribe(\n (res: any) => {\n this.loading = false;\n if (res && res.success == true) {\n this.msg.success('保存成功!');\n this.getPageConfig();\n }\n },\n () => {\n this.loading = false;\n },\n );\n }\n}\n","<nz-spin [nzSpinning]=\"loading\" nzTip=\"拼命加载中...\" class=\"deon-list-spin\">\n <form [formGroup]=\"form\" (ngSubmit)=\"btnSave()\">\n <div class=\"deon-head\">\n <div class=\"left\"></div>\n <div class=\"right\">\n <button nz-button nzType=\"default\" (click)=\"btnReload()\" type=\"button\"><i nz-icon\n nzType=\"reload\"></i>重新加载</button>\n <button nz-button nzType=\"primary\"><i nz-icon nzType=\"save\"></i>保存</button>\n </div>\n </div>\n <div class=\"deon-from\">\n <ng-container *ngIf=\"fields && fields.length > 0\">\n <formly-form [model]=\"config.model\" [fields]=\"fields\" [options]=\"options\" [form]=\"form\"> </formly-form>\n </ng-container>\n </div>\n </form>\n</nz-spin>","import { Component, OnInit, OnDestroy, Input, Output, EventEmitter, OnChanges, SimpleChanges } from '@angular/core';\nimport { _HttpClient } from '@delon/theme';\nimport { GramGlobalService } from '@ebuilding/base/shared.srv/global.event';\nimport { CommAPIService } from '@ebuilding/base/shared.srv/commApi.service';\nimport * as _ from 'lodash';\n\nimport { RuntimeSharedImportsModule } from '@ebuilding/runtime/shared-imports';\nimport { FormSingleComponent } from '../components/single/index.component';\nimport { FormMultipleComponent } from '../components/multiple/index.component';\n\n/**\n * 表单只有保存【单行数�?或�?多行数据�? 没有新增和编�? */\n@Component({\n selector: 'comm-form-onlyone',\n templateUrl: './index.component.html',\n styleUrls: ['./index.component.less'],\n providers: [GramGlobalService, CommAPIService],\n imports: [\n RuntimeSharedImportsModule,\n FormSingleComponent,\n FormMultipleComponent\n ]\n})\nexport class CommFormOnlyOneComponent implements OnInit, OnDestroy, OnChanges {\n _config: any = null;\n\n loading: boolean = true;\n\n pageConfig: any = null;\n\n /**\n * formId\n * formType\n * moduleCode\n */\n @Input() config: any = null;\n\n @Input() setpInfo: any = null;\n\n /**\n * 值发生变化调用抛�? */\n @Output() modelThrowEvent: EventEmitter<any> = new EventEmitter();\n\n constructor(public http: _HttpClient, public commAPISrv: CommAPIService) { }\n\n ngOnInit(): void { }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['config']) {\n if (this.config!!) {\n this.getFormDesign();\n }\n }\n }\n\n ngOnDestroy() { }\n\n formDataLoadAfter(e: any) { }\n\n formDataChange(e: any) {\n this.modelThrowEvent.emit(e);\n }\n\n /*\n 获取设计\n */\n getFormDesign() {\n this.pageConfig = null;\n if (this.config!! && this.config.formId!! && this.config.moduleCode!!) {\n let apiName: any = this.commAPISrv.getFormDesign(this.config.moduleCode, this.config.formId);\n this.http.post(`${apiName}`).subscribe((res: any) => {\n if (res.success) {\n this.config.moduleType = this.config.moduleCode;\n this.config.formType = this.config.formType;\n this.config.formInfo = _.get(res, 'result.basic');\n }\n this.loading = false;\n });\n } else {\n this.loading = false;\n }\n }\n}\n","<nz-spin [nzSpinning]=\"loading\" nzTip=\"拼命加载中...\" class=\"deon-list-spin\">\n <ng-container *ngIf=\"config!! && config.formInfo!!\">\n <div class=\"form-info\">\n <ng-container *ngIf=\"config?.formInfo?.izMultiple == true; else tmpSingle\">\n <form-multiple [config]=\"config\" [setpInfo]=\"setpInfo\"></form-multiple>\n </ng-container>\n <ng-template #tmpSingle>\n <form-single\n [config]=\"config\"\n [setpInfo]=\"setpInfo\"\n (modelThrowEvent)=\"formDataChange($event)\"\n (pageLoadAfter)=\"formDataLoadAfter($event)\"\n >\n <ng-content></ng-content>\n </form-single>\n </ng-template>\n </div>\n </ng-container>\n</nz-spin>\n","import { Injectable } from '@angular/core';\n@Injectable()\nexport class EmpCommmService {\n /**\n * 外部传入的配置\n */\n sourceConfig: any = null;\n\n /**\n * 头部配置 */\n headerConfig: any = null;\n groupForm: any = null;\n\n groupData: any = null;\n}\n","import { Directive, Input, Output, EventEmitter, OnDestroy } from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { NzMessageService } from 'ng-zorro-antd/message';\nimport { _HttpClient } from '@delon/theme';\nimport { FormlyFormOptions, FormlyFieldConfig, FormlyFormBuilder } from '@ebuilding-form/core';\nimport { DeonFormUtilService } from '@ebuilding/base/shared.srv/deon.util';\nimport { DeonFormResetService } from '@ebuilding/base/shared.srv/deon2.util';\nimport { of, Subject, zip } from 'rxjs';\nimport { ModuleAPI } from '@ebuilding/base/shared.var/shared.constant';\nimport { GramGlobalService } from '@ebuilding/base/shared.srv/global.event';\nimport { CommAPIService } from '@ebuilding/base/shared.srv/commApi.service';\nimport * as _ from 'lodash';\n@Directive()\nexport abstract class EmpGroupService implements OnDestroy {\n pageConfig: any = null;\n\n loading: boolean = true;\n form = new FormGroup({});\n model: any = {};\n options: FormlyFormOptions = {};\n fields: FormlyFieldConfig[] = [];\n\n /**\n * 配置参数\n */\n argList: any[] = [];\n\n /**\n * 销毁\n */\n onDestroy$ = new Subject<void>();\n\n throwField: any = {};\n throwData: any = {};\n\n /**\n * 值发生变化调用抛出\n */\n @Output() modelThrowEvent: EventEmitter<any> = new EventEmitter();\n\n constructor(\n public http: _HttpClient,\n public utilService: DeonFormUtilService,\n public resetService: DeonFormResetService,\n public deonFormBuilder: FormlyFormBuilder,\n public globalSrv: GramGlobalService,\n public msg: NzMessageService,\n public commAPISrv: CommAPIService,\n ) {\n this.globalSrv.subscribe('deon-field-repeat', (res: any) => {\n if (res != undefined && res.field != undefined && res.data != undefined && res.type != undefined) {\n if (res.type == 'delete') {\n this.fields = [...this.fields];\n }\n }\n });\n }\n\n ngOnDestroy() {\n this.onDestroy$.next();\n this.onDestroy$.complete();\n }\n\n /*\n 获取设计\n */\n getDesign() {\n let apiName: any = this.commAPISrv.getFormDesign(this.pageConfig.moduleCode, this.pageConfig.formId);\n return this.http.post(`${apiName}`);\n }\n\n /*\n 获取角色\n */\n getRole() {\n let params: any = {\n formId: this.pageConfig.formId,\n type: this.pageConfig.type,\n };\n let apiName: any = this.commAPISrv.getFormRole(this.pageConfig.moduleCode);\n return this.http.post(`${apiName}`, params);\n }\n\n /*\n 获取配置-下拉选项\n */\n getDropDown() {\n let apiName: any = this.commAPISrv.getFormDropDown(this.pageConfig.moduleCode, this.pageConfig.formId);\n return this.http.post(`${apiName}`);\n }\n\n /*\n 获取配置-表单数据\n */\n getFromModel() {\n let params: any = {\n formId: this.pageConfig.formId,\n id: this.pageConfig.id,\n };\n if (this.pageConfig.type != 'ADD' && this.pageConfig.id!!) {\n let apiName: any = null;\n if (this.pageConfig.api!! && this.pageConfig.api.modelAPI!!) {\n apiName = this.pageConfig.api.modelAPI;\n } else {\n apiName = this.commAPISrv.getFormModel(this.pageConfig.moduleCode);\n }\n return this.http.post(`${apiName}`, params);\n } else {\n return of(null);\n }\n }\n\n /*\n 获取配置-表单默认值\n */\n getFromDefaultModel() {\n if (this.pageConfig.type == 'ADD' && this.pageConfig.formId!!) {\n let apiName: any = null;\n if (this.pageConfig.api!! && this.pageConfig.api.modelDefaultAPI!!) {\n apiName = this.pageConfig.api.modelDefaultAPI;\n } else {\n apiName = this.commAPISrv.getFormDefaultModel(this.pageConfig.moduleCode);\n }\n return this.http.post(`${apiName}/${this.pageConfig.formId}`);\n } else {\n return of(null);\n }\n }\n\n /**\n * 获取配置-表单规则\n * @returns \n */\n getFromRuleData() {\n if (this.pageConfig.formId!!) {\n return this.http.post(`${ModuleAPI.rule}/rule/form/listByForm/${this.pageConfig.formId}`);\n } else {\n return of(null);\n }\n }\n\n\n /**\n * 获取默认参数\n */\n getFromArgInfo() {\n if (this.pageConfig?.argInfo!! && this.argList!! && Array.isArray(this.argList) && this.argList.length > 0) {\n this.argList.forEach((item: any) => {\n if (item.argFieldId!! && item.argName!! && this.pageConfig.argInfo[item.argName]!!) {\n this.model[item.argFieldId] = this.pageConfig?.argInfo[item.argName];\n }\n });\n }\n }\n\n /**\n * 组装配置\n */\n getPageConfig() {\n new Promise((resolve: any) => {\n zip(this.getDesign(), this.getRole(), this.getDropDown(), this.getFromModel(), this.getFromDefaultModel(), this.getFromRuleData()).subscribe(\n ([design, role, drop, d, m, r]) => {\n this.model = {};\n //传入的值\n if (this.pageConfig.model != undefined && this.pageConfig.model != null) {\n this.model = Object.assign(this.model, this.pageConfig.model);\n }\n if (design.success == true && _.get(design, 'result.basic.json')!!) {\n /**\n * 配置参数\n */\n if (_.get(design, 'result.listArg')!! && Array.isArray(_.get(design, 'result.listArg'))) {\n this.argList = _.get(design, 'result.listArg');\n }\n this.getFromArgInfo();\n\n /**\n * 表单JSON\n */\n let fieldConfigs: FormlyFieldConfig[] = JSON.parse(_.get(design, 'result.basic.json'));\n let fieldRole: any = {};\n let fieldOptions: any = {};\n let fieldRule: any = null;\n\n //字段权限\n if (role.success == true && role.result!!) {\n fieldRole = role.result;\n }\n\n //字段Options\n if (drop.success == true && drop.result!!) {\n fieldOptions = drop.result;\n }\n\n //默认值\n if (d!! && d.success == true && d.result!!) {\n this.model = Object.assign(this.model, d.result);\n }\n\n //获取的表单值\n if (m!! && m.success == true && m.result!!) {\n this.model = Object.assign(this.model, m.result);\n }\n\n if (r!! && r.success == true && r.result!!) {\n fieldRule = r.result;\n }\n\n //this.utilService.initFieldCallBack(fieldConfigs, this.throwField);\n\n this.utilService.initConfig(fieldConfigs, fieldRole, fieldOptions, this.model, fieldRule, null, this, (e: any, field: any) => {\n this.getPageRuleData(field, e);\n });\n\n this.fields = fieldConfigs;\n\n setTimeout(() => {\n if (this.options != undefined && this.options != null && this.options?.resetModel) {\n this.options?.resetModel();\n }\n }, 0);\n this.formDataLoadAfter();\n }\n this.loading = false;\n },\n () => {\n this.loading = false;\n },\n () => {\n this.loading = false;\n resolve();\n },\n );\n });\n }\n\n getPageRuleData(field: FormlyFieldConfig, value: any) {\n this.loading = true;\n let postData: any = {};\n postData[field.key] = {\n key: field.key,\n value: value\n };\n if (field?.props && field.props?.[\"callBackFields\"] && field.props?.[\"callBackFields\"]?.length > 0) {\n field.props?.[\"callBackFields\"].forEach((item: any) => {\n if (this.model[item] != undefined) {\n postData[item] = {\n key: item,\n value: this.model[item]\n }\n }\n });\n }\n\n this.http.post(`${ModuleAPI.rule}/rule/run/formRule`, {\n ruleId: field.props?.[\"callBackRule\"],\n modelJson: postData\n }).subscribe((res: any) => {\n if (res!! && res.success && res.result!!) {\n this.resetService.resetConfig(this.fields, this.model, res.result);\n this.fields = [...this.fields];\n }\n this.loading = false;\n }, (res: any) => {\n this.loading = false;\n });\n }\n\n formModelChange(e: any, field: any) {\n if (this.model!! && field.key!!) {\n let key: any = field.key;\n\n if (this.throwField!! && this.throwField.hasOwnProperty(key)) {\n /**\n * 触发表单外部\n */\n let value: any = this.throwField[key];\n if (value != undefined && value != null) {\n this.throwData = {};\n Object.keys(this.throwField).forEach((k: any) => {\n this.throwData[value] = this.model[k];\n });\n }\n this.modelThrowDataBefore();\n\n /**\n * 事件抛出\n */\n this.modelThrowEvent.emit(this.throwField);\n } else {\n /**\n * 常规触发\n */\n }\n }\n }\n\n save(i: number) {\n if (!this.form.valid) {\n return;\n }\n this.loading = true;\n let apiName = null;\n if (this.pageConfig.type == 'ADD') {\n if (this.pageConfig.api!! && this.pageConfig.api.addAPI!!) {\n apiName = this.pageConfig.api.addAPI;\n } else {\n apiName = this.commAPISrv.getFormAdd(this.pageConfig.moduleCode);\n }\n } else if (this.pageConfig.type == 'EDIT') {\n if (this.pageConfig.api!! && this.pageConfig.api.editAPI!!) {\n apiName = this.pageConfig.api.editAPI;\n } else {\n apiName = this.commAPISrv.getFormUpdate(this.pageConfig.moduleCode);\n }\n if (i == 0) {\n apiName = `${ModuleAPI.personnel}/personnel/employee/update`\n }\n }\n this.http\n .post(`${apiName}`, {\n id: this.pageConfig.id,\n formId: this.pageConfig.formId,\n modelJson: this.model,\n })\n .subscribe(\n (res: any) => {\n this.loading = false;\n if (res && res.success == true) {\n this.msg.success('保存成功!');\n }\n },\n () => {\n this.loading = false;\n },\n );\n }\n\n btnClose() {\n this.getPageConfig();\n }\n\n formDataLoadAfter() { }\n\n modelThrowDataBefore() { }\n}\n","import { Component, OnInit, Input, OnChanges, SimpleChanges } from '@angular/core';\nimport { NzMessageService } from 'ng-zorro-antd/message';\nimport { _HttpClient } from '@delon/theme';\nimport { DeonFormUtilService } from '@ebuilding/base/shared.srv/deon.util';\nimport { DeonFormResetService } from '@ebuilding/base/shared.srv/deon2.util';\nimport { GramGlobalService } from '@ebuilding/base/shared.srv/global.event';\nimport { CommAPIService } from '@ebuilding/base/shared.srv/commApi.service';\nimport { EmpCommmService } from '../../service/empCommService';\nimport { EmpGroupService } from '../../service/empGroupService';\nimport * as _ from 'lodash';\n\nimport { RuntimeSharedImportsModule } from '@ebuilding/runtime/shared-imports';\nimport { FormlyModule, FormlyFormBuilder } from '@ebuilding-form/core';\nimport { GramDeonAntdModule } from '@ebuilding/biz-comm/type';\n\n@Component({\n selector: 'emp-children',\n styleUrls: ['./index.component.less'],\n templateUrl: './index.component.html',\n imports: [\n RuntimeSharedImportsModule,\n FormlyModule,\n GramDeonAntdModule\n ]\n})\nexport class EmpChildrenComponent extends EmpGroupService implements OnInit, OnChanges {\n @Input() formInfo: any = null;\n @Input() height: number = 0;\n constructor(\n public override http: _HttpClient,\n public override utilService: DeonFormUtilService,\n public override resetService: DeonFormResetService,\n public override deonFormBuilder: FormlyFormBuilder,\n public override globalSrv: GramGlobalService,\n public override msg: NzMessageService,\n public override commAPISrv: CommAPIService,\n public empCommSrv: EmpCommmService,\n ) {\n super(http, utilService, resetService, deonFormBuilder, globalSrv, msg, commAPISrv);\n }\n\n ngOnInit() { }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['formInfo']) {\n if (this.formInfo!!) {\n this.pageConfig = {\n type: this.empCommSrv.sourceConfig.type,\n id: null,\n formId: this.formInfo.id,\n moduleCode: this.empCommSrv.sourceConfig.moduleCode, //buttonConfig.moduleCode,\n api: this.empCommSrv.sourceConfig.api,\n argInfo: this.empCommSrv.sourceConfig.argInfo,\n };\n\n this.getPageConfig();\n }\n }\n }\n\n /*\n 获取配置-表单数据\n */\n override getFromModel() {\n let params: any = {\n formId: this.pageConfig.formId,\n id: this.empCommSrv.sourceConfig.id,\n };\n\n let apiName: any = this.commAPISrv.getFormModelChildren(this.pageConfig.moduleCode);\n\n return this.http.post(`${apiName}`, params);\n }\n\n override save() {\n if (!this.form.valid) {\n return;\n }\n this.loading = true;\n let apiName = this.commAPISrv.getFormSaveChildren(this.pageConfig.moduleCode);\n this.http\n .post(`${apiName}`, {\n id: this.empCommSrv.sourceConfig.id,\n formId: this.pageConfig.formId,\n modelJson: this.model,\n })\n .subscribe(\n (res: any) => {\n this.loading = false;\n if (res && res.success == true) {\n this.msg.success('保存成功!');\n }\n },\n () => {\n this.loading = false;\n },\n );\n }\n}\n","<nz-spin [nzSpinning]=\"loading\" nzTip=\"拼命加载中...\" class=\"deon-list-spin\">\n <ng-container *ngIf=\"pageConfig!!\">\n <form [formGroup]=\"form\" (ngSubmit)=\"save()\" #defaultForm>\n <div class=\"deon-from\" [ngStyle]=\"{ height: height - 68 + 'px' }\">\n <ng-container *ngIf=\"fields && fields.length > 0; else emptyPage\">\n <formly-form [model]=\"model\" [fields]=\"fields\" [options]=\"options\" [form]=\"form\"> </formly-form>\n </ng-container>\n <ng-template #emptyPage>\n <nz-empty *ngIf=\"loading !== true\"></nz-empty>\n </ng-template>\n </div>\n <div class=\"deon-button\" *ngIf=\"pageConfig.type != 'VIEW' && pageConfig.type != 'PREVIEW'\">\n <button nz-button nzType=\"default\" (click)=\"btnClose()\" type=\"button\"><i nz-icon nzType=\"reload\"></i>重置</button>\n <!-- <button nz-button nzType=\"primary\" id=\"DRAFT\" *ngIf=\"draft == true\"><i nz-icon\n nzType=\"hourglass\"></i>暂存</button> -->\n <button nz-button nzType=\"primary\" id=\"SAVE\"><i nz-icon nzType=\"save\"></i>保存</button>\n </div>\n </form>\n </ng-container>\n</nz-spin>","import { Component, OnInit, HostListener, Input, Renderer2, ElementRef, OnChanges, SimpleChanges } from '@angular/core';\nimport { NzMessageService } from 'ng-zorro-antd/message';\nimport { _HttpClient } from '@delon/theme';\nimport { DeonFormUtilService } from '@ebuilding/base/shared.srv/deon.util';\nimport { DeonFormResetService } from '@ebuilding/base/shared.srv/deon2.util';\nimport { GramGlobalService } from '@ebuilding/base/shared.srv/global.event';\nimport { CommAPIService } from '@ebuilding/base/shared.srv/commApi.service';\nimport { EmpCommmService } from '../service/empCommService';\nimport { EmpGroupService } from '../service/empGroupService';\nimport * as _ from 'lodash';\n\nimport { RuntimeSharedImportsModule } from '@ebuilding/runtime/shared-imports';\nimport { FormlyModule, FormlyFormBuilder } from '@ebuilding-form/core';\nimport { CardContentModule } from '@ebuilding/biz-comm/other/card';\nimport { GramDeonAntdModule } from '@ebuilding/biz-comm/type';\nimport { EmpChildrenComponent } from '../components/children/index.component';\n/**\n * 人员基本信息表单-有多页签\n */\n@Component({\n selector: 'comm-form-emp',\n styleUrls: ['./index.component.less'],\n templateUrl: './index.component.html',\n providers: [CommAPIService, EmpCommmService],\n imports: [\n RuntimeSharedImportsModule,\n FormlyModule,\n GramDeonAntdModule,\n CardContentModule,\n EmpChildrenComponent\n ]\n})\nexport class CommFormEmpMainComponent extends EmpGroupService implements OnInit, OnChanges {\n _config: any = null;\n cardLoading: boolean = true;\n\n @Input()\n set config(value: any) {\n this._config = value;\n if (value!!) {\n this.getPageData();\n }\n }\n get config() {\n return this._config;\n }\n\n height: number = 0;\n\n headerDefaultConfig: any = null;\n\n constructor(\n public override http: _HttpClient,\n public elementRef: ElementRef,\n public renderer: Renderer2,\n public override utilService: DeonFormUtilService,\n public override resetService: DeonFormResetService,\n public override deonFormBuilder: FormlyFormBuilder,\n public override globalSrv: GramGlobalService,\n public override msg: NzMessageService,\n public override commAPISrv: CommAPIService,\n public empCommSrv: EmpCommmService,\n ) {\n super(http, utilService, resetService, deonFormBuilder, globalSrv, msg, commAPISrv);\n }\n\n ngOnInit() { }\n\n ngOnChanges(changes: SimpleChanges): void { }\n\n getPageData() {\n this.loading = true;\n this.empCommSrv.groupData = null;\n let apiName: any = this.commAPISrv.getFormDesign(this.config.moduleCode, this.config.formId);\n this.http.post(`${apiName}`).subscribe((res: any) => {\n this.empCommSrv.sourceConfig = _.cloneDeep(this.config);\n if (res.success) {\n this.empCommSrv.groupData = res.result;\n }\n if (\n this.empCommSrv.groupData!! &&\n this.empCommSrv.groupData.listChildren!! &&\n Array.isArray(this.empCommSrv.groupData.listChildren) &&\n this.empCommSrv.groupData.listChildren.length > 0\n ) {\n /**\n * 获取第一个表�?为基础表单\n */\n let firstData: any = this.empCommSrv.groupData.listChildren[0];\n\n /**\n * 如果不需要Header 则取消loading\n */\n if (this.empCommSrv.groupData.basic?.izHeader != true) {\n this.cardLoading = false;\n }\n\n this.pageConfig = {\n type: this.empCommSrv.sourceConfig.type,\n id: this.empCommSrv.sourceConfig.id,\n formId: firstData.formInfo.id,\n moduleCode: this.empCommSrv.sourceConfig.moduleCode,\n api: this.empCommSrv.sourceConfig.api,\n argInfo: this.empCommSrv.sourceConfig.argInfo,\n };\n\n this.getPageConfig();\n } else {\n this.cardLoading = false;\n this.loading = false;\n }\n });\n }\n\n /**\n * 卡片数据加载完毕回调\n */\n cardDataLoadAfter() {\n this.cardLoading = false;\n this.resizeTable();\n }\n\n /**\n * 表单数据加载完毕回调\n */\n override formDataLoadAfter() {\n if (this.headerDefaultConfig == null) {\n if (this.empCommSrv.groupData!! && this.empCommSrv.groupData.basic!! && this.empCommSrv.groupData.basic.izHeader == true) {\n this.headerDefaultConfig = {\n headerId: this.empCommSrv.groupData.basic.headerId,\n id: this.empCommSrv.sourceConfig.id,\n rd: Math.random(),\n };\n } else {\n this.headerDefaultConfig = null;\n }\n }\n setTimeout(() => {\n this.resizeTable();\n }, 0);\n }\n\n /**\n *抛出事件�? */\n override modelThrowDataBefore() { }\n\n @HostListener('window:resize', ['$event'])\n resize() {\n this.resizeTable();\n }\n resizeTable() {\n let totalHeight: number = this.elementRef.nativeElement.clientHeight;\n let cardHeight: number = 0;\n let tabHeight: number = 70; //tab页签高度45,底部边�?6;上边距8\n if (this.elementRef.nativeElement.querySelector('.basic-info')!!) {\n cardHeight = this.elementRef.nativeElement.querySelector('.basic-info').clientHeight;\n }\n this.height = totalHeight - cardHeight - tabHeight;\n }\n}\n","<nz-spin [nzSpinning]=\"loading\" class=\"deon-list-spin\">\n <div class=\"basic\" *ngIf=\"empCommSrv.groupData!! && empCommSrv.groupData.basic!!\">\n <!-- <ng-container *ngIf=\"empCommSrv.groupData.basic?.izHeader == true && headerDefaultConfig!!\">\n <div class=\"basic-info\">\n <card-main [defaultConfig]=\"headerDefaultConfig\" (pageLoadAfter)=\"cardDataLoadAfter()\"></card-main>\n </div>\n </ng-container> -->\n <div class=\"basic-tabset\" *ngIf=\"cardLoading == false\">\n <nz-tabset>\n <ng-container *ngFor=\"let item of empCommSrv.groupData.listChildren; let i = index\">\n <nz-tab [nzTitle]=\"item.formInfo.name\">\n <ng-template nz-tab>\n <ng-container *ngIf=\"i == 0\">\n <div class=\"basic-form\">\n <form [formGroup]=\"form\" (ngSubmit)=\"save(i)\" #defaultForm>\n <div class=\"deon-from\">\n <ng-container *ngIf=\"fields && fields.length > 0; else emptyPage\">\n <formly-form [model]=\"model\" [fields]=\"fields\" [options]=\"options\" [form]=\"form\"> </formly-form>\n </ng-container>\n <ng-template #emptyPage>\n <nz-empty *ngIf=\"loading !== true\"></nz-empty>\n </ng-template>\n </div>\n <div class=\"deon-button\" *ngIf=\"pageConfig.type != 'VIEW' && pageConfig.type != 'PREVIEW'\">\n <button nz-button bottom=\"default\" (click)=\"btnClose()\" type=\"button\"><i nz-icon\n nzType=\"reload\"></i>重置</button>\n <!-- <button nz-button nzType=\"primary\" id=\"DRAFT\" *ngIf=\"draft == true\"><i nz-icon\n nzType=\"hourglass\"></i>暂存</button> -->\n <button nz-button nzType=\"primary\" id=\"SAVE\"><i nz-icon nzType=\"save\"></i>保存</button>\n </div>\n </form>\n </div>\n </ng-container>\n <ng-container *ngIf=\"i > 0 && height > 0\">\n <emp-children [formInfo]=\"item.formInfo\" [height]=\"height\"></emp-children>\n </ng-container>\n </ng-template>\n </nz-tab>\n </ng-container>\n </nz-tabset>\n </div>\n </div>\n</nz-spin>","import { Component, OnInit, OnDestroy, Input, Output, SimpleChanges } from '@angular/core';\nimport { _HttpClient } from '@delon/theme';\nimport { NzMessageService } from 'ng-zorro-antd/message';\nimport { DeonFormUtilService } from '@ebuilding/base/shared.srv/deon.util';\nimport { DeonFormResetService } from '@ebuilding/base/shared.srv/deon2.util';\nimport { GramGlobalService } from '@ebuilding/base/shared.srv/global.event';\nimport { CommAPIService } from '@ebuilding/base/shared.srv/commApi.service';\nimport * as _ from 'lodash';\nimport { FormDefaultService } from '../service/defaultService';\n\nimport { RuntimeSharedImportsModule } from '@ebuilding/runtime/shared-imports';\nimport { FormlyModule, FormlyFormBuilder } from '@ebuilding-form/core';\nimport { GramDeonAntdModule } from '@ebuilding/biz-comm/type';\nimport { CardContentModule } from '@ebuilding/biz-comm/other/card';\n\n/**\n * 步骤表单 - 新增、编辑、查�? */\n@Component({\n selector: 'comm-form-step',\n templateUrl: './index.component.html',\n styleUrls: ['./index.component.less'],\n providers: [GramGlobalService, CommAPIService],\n imports: [\n RuntimeSharedImportsModule,\n FormlyModule,\n GramDeonAntdModule,\n CardContentModule\n ]\n})\nexport class CommFormStepComponent extends FormDefaultService implements OnInit {\n /**\n * 默认配置\n */\n headerDefaultConfig: any = null;\n\n /**\n * 动态配�? */\n headerDynamicConfig: any = null;\n\n /**\n * formId\n * formType\n * moduleCode\n */\n @Input() override set config(value: any) {\n this._config = value;\n if (value!! && value.id!!) {\n this.dataId = value.id;\n }\n if (value!! && value.formId!!) {\n this.formId = value.formId;\n }\n this.getPageData();\n }\n override get config() {\n return this._config;\n }\n\n @Input() setpInfo: any = null;\n\n constructor(\n public override http: _HttpClient,\n public override utilService: DeonFormUtilService,\n public override deonFormBuilder: FormlyFormBuilder,\n public override globalSrv: GramGlobalService,\n public override msg: NzMessageService,\n public override commAPISrv: CommAPIService,\n public override resetService: DeonFormResetService,\n ) {\n super(http, utilService, deonFormBuilder, globalSrv, msg, commAPISrv, resetService);\n }\n\n ngOnInit(): void { }\n\n ngOnChanges(changes: SimpleChanges): void { }\n\n getPageData() {\n this.pageConfig = {\n type: this.config.formType,\n id: this.dataId,\n formId: this.formId,\n moduleCode: this.config.moduleCode,\n api: this.config?.api,\n argInfo: null,\n };\n\n if (this.config.relationId!!) {\n this.pageConfig['relationId'] = this.config.relationId;\n }\n\n if (this.config.argInfo!!) {\n this.pageConfig.argInfo = _.cloneDeep(this.config.argInfo);\n }\n\n this.getPageConfig();\n }\n\n headerDataLoadAfter(e: any) {\n this.headerLoading = false;\n }\n\n override formDataLoadAfter() {\n this.headerDefaultConfig = null;\n if (this.designBasic!! && this.designBasic?.izHeader == true) {\n this.headerDefaultConfig = {\n headerId: this.designBasic.headerId,\n id: this.config.id,\n rd: Math.random(),\n };\n } else {\n this.headerLoading = false;\n }\n }\n\n override modelThrowDataBefore() {\n this.headerDynamicConfig = null;\n if (this.throwData!!) {\n let exist: boolean = false;\n Object.keys(this.throwData).forEach((key: any) => {\n if (this.throwData[key] != undefined && this.throwData[key] != null) {\n exist = true;\n }\n });\n if (exist) {\n if (this.designBasic?.izHeader == true) {\n this.headerDynamicConfig = { headerId: this.designBasic.headerId, model: this.throwData, rd: Math.random() };\n } else {\n this.headerLoading = false;\n }\n }\n }\n }\n\n saveData() {\n if (this.config.formType == 'ADD') {\n this.save();\n } else {\n if (!this.form.valid) {\n return;\n }\n this.bttonSaveEvent.emit(this.model);\n }\n }\n}\n","<nz-spin [nzSpinning]=\"loading == true || headerLoading == true\" nzTip=\"拼命加载中...\" class=\"deon-list-spin\">\n <ng-container *ngIf=\"pageConfig!!\">\n <div class=\"form-header\"\n *ngIf=\"designBasic!! && designBasic?.izHeader == true && (headerDefaultConfig!! || headerDynamicConfig!!)\">\n <card-main [defaultConfig]=\"headerDefaultConfig\" [dynamicConfig]=\"headerDynamicConfig\"\n (pageLoadAfter)=\"headerDataLoadAfter($event)\"></card-main>\n </div>\n <div class=\"form-info\">\n <form [formGroup]=\"form\" (ngSubmit)=\"saveData()\" #defaultForm>\n <div class=\"deon-from\">\n <ng-container *ngIf=\"fields && fields.length > 0; else emptyPage\">\n <formly-form [model]=\"model\" [fields]=\"fields\" [options]=\"options\" [form]=\"form\"> </formly-form>\n </ng-container>\n <ng-template #emptyPage>\n <nz-empty *ngIf=\"loading !== true\"></nz-empty>\n </ng-template>\n </div>\n <div class=\"deon-button\">\n <div class=\"bottom-left\">\n <ng-content select=\"[name=button-left]\"></ng-content>\n </div>\n <div class=\"bottom-right\">\n <ng-content select=\"[name=button-right]\"></ng-content>\n <ng-container\n *ngIf=\"pageConfig.type != 'VIEW' && (config.effectStatus == null || config.effectStatus == 'DRAFT')\">\n <button nz-button nzType=\"default\" (click)=\"btnClose()\" type=\"button\"><i nz-icon\n nzType=\"reload\"></i>重置</button>\n <ng-container *ngIf=\"config.formType == 'ADD'\">\n <button nz-button nzType=\"primary\" id=\"SAVE\"><i nz-icon nzType=\"hourglass\"></i>暂存</button>\n </ng-container>\n <ng-container *ngIf=\"config.formType == 'EDIT'\">\n <button nz-button nzType=\"primary\" id=\"SAVE\"><i nz-icon nzType=\"save\"></i>提交</button>\n </ng-container>\n </ng-container>\n </div>\n </div>\n </form>\n </div>\n </ng-container>\n</nz-spin>","import { NgModule } from '@angular/core';\nimport { CommFormMainComponent } from './default/index.component';\nimport { CommFormOnlyOneComponent } from './onlyone/index.component';\nimport { CommFormEmpMainComponent } from './empinfo/index.component';\nimport { CommFormStepComponent } from './step/index.component';\nimport { FormSingleComponent } from './components/single/index.component';\nimport { FormMultipleComponent } from './components/multiple/index.component';\nimport { EmpChildrenComponent } from './components/children/index.component';\n\nconst COMPONENTS: any[] = [\n CommFormMainComponent,\n CommFormEmpMainComponent,\n CommFormOnlyOneComponent,\n FormSingleComponent,\n FormMultipleComponent,\n EmpChildrenComponent,\n CommFormStepComponent,\n];\n\n@NgModule({\n imports: [...COMPONENTS],\n exports: [...COMPONENTS],\n})\nexport class CommFormModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i3","i4","i5","i6","i7","i8","i9","i10","i11","i12","i13","i14","i15","i1","i2","i8.EmpCommmService","i16","i17"],"mappings":"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"}
1
+ {"version":3,"file":"comm.form.mjs","sources":["../../../../packages/runtime/comm/form/src/service/defaultService.ts","../../../../packages/runtime/comm/form/src/default/index.component.ts","../../../../packages/runtime/comm/form/src/default/index.component.html","../../../../packages/runtime/comm/form/src/service/onlyOneService.ts","../../../../packages/runtime/comm/form/src/components/single/index.component.ts","../../../../packages/runtime/comm/form/src/components/single/index.component.html","../../../../packages/runtime/comm/form/src/components/multiple/index.component.ts","../../../../packages/runtime/comm/form/src/components/multiple/index.component.html","../../../../packages/runtime/comm/form/src/onlyone/index.component.ts","../../../../packages/runtime/comm/form/src/onlyone/index.component.html","../../../../packages/runtime/comm/form/src/service/empCommService.ts","../../../../packages/runtime/comm/form/src/service/empGroupService.ts","../../../../packages/runtime/comm/form/src/components/children/index.component.ts","../../../../packages/runtime/comm/form/src/components/children/index.component.html","../../../../packages/runtime/comm/form/src/empinfo/index.component.ts","../../../../packages/runtime/comm/form/src/empinfo/index.component.html","../../../../packages/runtime/comm/form/src/step/index.component.ts","../../../../packages/runtime/comm/form/src/step/index.component.html","../../../../packages/runtime/comm/form/src/index.module.ts","../../../../packages/runtime/comm/form/comm.form.ts"],"sourcesContent":["import { Directive, OnDestroy, Input, Output, EventEmitter } from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { NzMessageService } from 'ng-zorro-antd/message';\nimport { _HttpClient } from '@delon/theme';\nimport { FormlyFormOptions, FormlyFieldConfig, FormlyFormBuilder } from '@ebuilding-form/core';\nimport { DeonFormUtilService } from '@ebuilding/base/shared.srv/deon.util';\nimport { DeonFormResetService } from '@ebuilding/base/shared.srv/deon2.util';\nimport { ArgType } from '@ebuilding/base/shared.var/shared.constant';\nimport { GramGlobalService } from '@ebuilding/base/shared.srv/global.event';\nimport { CommAPIService } from '@ebuilding/base/shared.srv/commApi.service';\nimport { of, Subject, zip } from 'rxjs';\nimport * as _ from 'lodash';\nimport { ModuleAPI } from '@ebuilding/base/shared.var/shared.constant';\n\n@Directive()\nexport abstract class FormDefaultService implements OnDestroy {\n _config: any = null;\n\n pageConfig: any = null;\n loading: boolean = true;\n headerLoading: boolean = true;\n form = new FormGroup({});\n model: any = {};\n options: FormlyFormOptions = {};\n fields: FormlyFieldConfig[] = [];\n\n /**\n * 表单设计数据\n */\n designBasic: any = null;\n\n /**\n * 配置参数\n */\n argList: any[] = [];\n\n /**\n * 销毁\n */\n onDestroy$ = new Subject<void>();\n\n /**\n * 数据ID\n */\n dataId: any = null;\n\n /**\n * 表单设计ID\n */\n formId: any = null;\n throwField: any = {};\n throwData: any = {};\n\n @Input() set config(value: any) { }\n get config() {\n return null;\n }\n\n /**\n * 是否有数据提交前按钮事件\n */\n preEventRule: boolean = false;\n\n /**\n * 值发生变化调用抛出\n */\n @Output() modelThrowEvent: EventEmitter<any> = new EventEmitter();\n\n /**\n * 加载后抛出事件\n */\n @Output() modelLoadEvent: EventEmitter<any> = new EventEmitter();\n\n /**\n * 保存后抛出事件\n */\n @Output() bttonSaveEvent: EventEmitter<any> = new EventEmitter();\n\n constructor(\n public http: _HttpClient,\n public utilService: DeonFormUtilService,\n public deonFormBuilder: FormlyFormBuilder,\n public globalSrv: GramGlobalService,\n public msg: NzMessageService,\n public commAPISrv: CommAPIService,\n public resetService: DeonFormResetService,\n ) {\n this.globalSrv.subscribe('deon-field-repeat', (res: any) => {\n if (res != undefined && res.field != undefined && res.data != undefined && res.type != undefined) {\n if (res.type == 'delete') {\n this.fields = [...this.fields];\n }\n }\n });\n }\n\n ngOnDestroy() {\n this.onDestroy$.next();\n this.onDestroy$.complete();\n }\n\n /*\n 获取设计\n */\n getDesign() {\n let apiName: any = this.commAPISrv.getFormDesign(this.pageConfig.moduleCode, this.pageConfig.formId);\n return this.http.post(`${apiName}`);\n }\n\n /*\n 获取角色\n */\n getRole() {\n let params: any = {\n formId: this.pageConfig.formId,\n type: this.pageConfig.type,\n };\n let apiName: any = this.commAPISrv.getFormRole(this.pageConfig.moduleCode);\n return this.http.post(`${apiName}`, params);\n }\n\n /*\n 获取配置-下拉选项\n */\n getDropDown() {\n let apiName: any = this.commAPISrv.getFormDropDown(this.pageConfig.moduleCode, this.pageConfig.formId);\n return this.http.post(`${apiName}`);\n }\n\n /*\n 获取配置-表单数据\n */\n getFromModel() {\n let params: any = {\n formId: this.pageConfig.formId,\n id: this.pageConfig.id,\n };\n if (this.pageConfig.relationId!!) {\n params['id'] = this.pageConfig.relationId;\n }\n\n if (this.pageConfig.type != 'ADD' && (this.pageConfig.id!! || this.pageConfig.relationId!!)) {\n let apiName: any = null;\n if (this.pageConfig.api!! && this.pageConfig.api.modelAPI!!) {\n apiName = this.pageConfig.api.modelAPI;\n } else {\n apiName = this.commAPISrv.getFormModel(this.pageConfig.moduleCode);\n }\n return this.http.post(`${apiName}`, params);\n } else {\n return of(null);\n }\n }\n\n /*\n 获取配置-表单默认值\n */\n getFromDefaultModel() {\n if (this.pageConfig.type == 'ADD' && this.pageConfig.formId!!) {\n let apiName: any = null;\n if (this.pageConfig.api!! && this.pageConfig.api.modelDefaultAPI!!) {\n apiName = this.pageConfig.api.modelDefaultAPI;\n } else {\n apiName = this.commAPISrv.getFormDefaultModel(this.pageConfig.moduleCode);\n }\n return this.http.post(`${apiName}/${this.pageConfig.formId}`);\n } else {\n return of(null);\n }\n }\n\n\n /**\n * 获取配置-表单规则\n * @returns \n */\n getFromRuleData() {\n if (this.config.formId!!) {\n return this.http.post(`${ModuleAPI.rule}/rule/form/listByForm/${this.config.formId}`);\n } else {\n return of(null);\n }\n }\n\n /**\n * 获取默认参数\n */\n getFromArgInfo() {\n if (this.argList!! && Array.isArray(this.argList) && this.argList.length > 0) {\n this.argList.forEach((item: any) => {\n switch (item.argType) {\n case ArgType.arg1:\n if (this.pageConfig?.argInfo!! && item.argFieldId!! && item.argName!! && this.pageConfig.argInfo[item.argName]!!) {\n this.model[item.argFieldId] = this.pageConfig?.argInfo[item.argName];\n }\n break;\n case ArgType.arg2:\n if (item.argFieldId!!) {\n this.throwField[item.argFieldId] = item.argName;\n }\n break;\n }\n });\n }\n }\n\n /**\n * 组装配置\n */\n getPageConfig() {\n new Promise((resolve: any) => {\n zip(this.getDesign(), this.getRole(), this.getDropDown(), this.getFromModel(), this.getFromDefaultModel(), this.getFromRuleData()).subscribe(\n ([design, role, drop, d, m, r]) => {\n this.model = {};\n //传入的值\n if (this.pageConfig.model != undefined && this.pageConfig.model != null) {\n this.model = Object.assign(this.model, this.pageConfig.model);\n }\n if (design.success && design.result!!) {\n this.designBasic = design.result?.basic;\n }\n if (this.designBasic!! && _.get(this.designBasic, 'json')!!) {\n /**\n * 配置参数\n */\n if (_.get(design, 'result.listArg')!! && Array.isArray(_.get(design, 'result.listArg'))) {\n this.argList = _.get(design, 'result.listArg');\n }\n this.getFromArgInfo();\n\n /**\n * 判断是否有提交前事件\n */\n if (_.get(design, 'result.preEventRule') == true) {\n this.preEventRule = true;\n }\n\n /**\n * 表单JSON\n */\n let fieldConfigs: FormlyFieldConfig[] = JSON.parse(_.get(design, 'result.basic.json'));\n let fieldRole: any = {};\n let fieldOptions: any = {};\n let fieldRule: any = null;\n\n //字段权限\n if (role.success == true && role.result!!) {\n fieldRole = role.result;\n }\n\n //字段Options\n if (drop.success == true && drop.result!!) {\n fieldOptions = drop.result;\n }\n\n //填充值\n if (d!! && d.success == true && d.result!!) {\n this.model = Object.assign(this.model, d.result);\n }\n\n //权重值\n if (this.pageConfig.weightModel != undefined && this.pageConfig.weightModel != null) {\n this.model = Object.assign(this.model, this.pageConfig.weightModel);\n }\n\n //获取的表单值\n if (m!! && m.success == true && m.result!!) {\n this.model = Object.assign(this.model, m.result);\n }\n\n if (r!! && r.success == true && r.result!!) {\n fieldRule = r.result;\n }\n\n let defaultRole: any = null;\n if (this.config!! && this.config.isView != undefined && this.config.isView != null && this.config.isView == true) {\n defaultRole = {\n read: true,\n };\n }\n this.utilService.initConfig(fieldConfigs, fieldRole, fieldOptions, this.model, fieldRule, null, this, (e: any, field: any) => {\n this.getPageRuleData(field, e);\n });\n\n\n this.fields = fieldConfigs;\n\n setTimeout(() => {\n if (this.options != undefined && this.options != null && this.options?.resetModel) {\n this.options?.resetModel();\n }\n }, 0);\n }\n this.formDataLoadAfter();\n this.loading = false;\n },\n () => {\n this.loading = false;\n },\n () => {\n this.loading = false;\n resolve();\n },\n );\n });\n }\n\n getPageRuleData(field: FormlyFieldConfig, value: any) {\n this.loading = true;\n let postData: any = {};\n let props: any = field.props;\n\n if (props) {\n if (field.props?.[\"callBackFields\"] && Array.isArray(field.props?.[\"callBackFields\"])) {\n field.props?.[\"callBackFields\"].forEach((a: any) => {\n if (this.model!! && this.model[a] != undefined) {\n postData[a] = {\n key: a,\n value: this.model[a]\n }\n }\n });\n }\n if (props[\"arrKey\"]!!) {\n /**\n * 数组内部组件触发\n */\n let findModel: any[] = this.model[props.arrKey];\n let createModel: any[] = [];\n if (findModel!! && Array.isArray(findModel)) {\n findModel.forEach((a: any) => {\n if (a!!) {\n let tmp: any = {};\n Object.keys(a).forEach((b) => {\n tmp[b] = {\n key: b,\n value: this.unwrapRuleFieldValue(a[b])\n }\n });\n createModel.push(tmp);\n }\n });\n }\n postData[props.arrKey] = {\n key: props.arrKey,\n value: createModel\n }\n } else {\n /**\n * 非数组内部触发\n */\n postData[field.key] = {\n key: field.key,\n value: value\n };\n }\n\n this.http.post(`${ModuleAPI.rule}/rule/run/formRule`, {\n ruleId: field.props?.[\"callBackRule\"],\n formId: this.config?.formId,\n modelJson: postData\n }).subscribe((res: any) => {\n if (res && res?.success && res?.result) {\n this.resetService.resetConfig(this.fields, this.model, res.result);\n //(<any>this.options)._buildForm(true);\n }\n this.loading = false;\n }, (res: any) => {\n this.loading = false;\n });\n }\n }\n\n /** 解开动态字段值中重复的{key,value}包装。 */\n private unwrapRuleFieldValue(value: any): any {\n let current = value;\n const visited = new Set<any>();\n while (current && typeof current === 'object' && !Array.isArray(current)\n && Object.prototype.hasOwnProperty.call(current, 'value') && !visited.has(current)) {\n visited.add(current);\n current = current.value;\n }\n return current;\n }\n\n formModelChange(e: any, field: any) {\n if (this.model!! && field.key!!) {\n let key: any = field.key;\n\n if (this.throwField!! && this.throwField.hasOwnProperty(key)) {\n /**\n * 触发表单外部\n */\n let value: any = this.throwField[key];\n if (value != undefined && value != null) {\n this.throwData = {};\n Object.keys(this.throwField).forEach((k: any) => {\n this.throwData[value] = this.model[k];\n });\n }\n this.modelThrowDataBefore();\n\n /**\n * 事件抛出\n */\n this.modelThrowEvent.emit(this.throwField);\n } else {\n /**\n * 常规触发\n */\n }\n }\n }\n\n save() {\n if (!this.form.valid) {\n return;\n }\n this.loading = true;\n let apiName = null;\n if (this.pageConfig.type == 'ADD') {\n if (this.pageConfig.api!! && this.pageConfig.api.addAPI!!) {\n apiName = this.pageConfig.api.addAPI;\n } else {\n apiName = this.commAPISrv.getFormAdd(this.pageConfig.moduleCode);\n }\n } else if (this.pageConfig.type == 'EDIT') {\n if (this.pageConfig.api!! && this.pageConfig.api.editAPI!!) {\n apiName = this.pageConfig.api.editAPI;\n } else {\n apiName = this.commAPISrv.getFormUpdate(this.pageConfig.moduleCode);\n }\n }\n\n this.http\n .post(`${apiName}`, {\n id: this.pageConfig.id,\n formId: this.pageConfig.formId,\n modelJson: this.model,\n })\n .subscribe(\n (res: any) => {\n this.loading = false;\n if (res && res.success == true) {\n this.msg.success('保存成功!');\n if (this.pageConfig.type == 'ADD') {\n this.pageConfig.type = 'EDIT';\n this.pageConfig.id = res.result;\n }\n this.bttonSaveEvent.emit(res.result);\n }\n },\n () => {\n this.loading = false;\n },\n );\n }\n\n btnClose() {\n if (this.options != undefined && this.options != null && this.options?.resetModel) {\n this.options?.resetModel();\n }\n }\n\n formDataLoadAfter() { }\n\n modelThrowDataBefore() { }\n}\n","import { Component, OnInit, OnDestroy, Input, Output, SimpleChanges } from '@angular/core';\nimport { _HttpClient } from '@delon/theme';\nimport { NzMessageService } from 'ng-zorro-antd/message';\nimport { DeonFormUtilService } from '@ebuilding/base/shared.srv/deon.util';\nimport { DeonFormResetService } from '@ebuilding/base/shared.srv/deon2.util';\nimport { GramGlobalService } from '@ebuilding/base/shared.srv/global.event';\nimport { CommAPIService } from '@ebuilding/base/shared.srv/commApi.service';\nimport * as _ from 'lodash';\nimport { FormDefaultService } from '../service/defaultService';\n\nimport { RuntimeSharedImportsModule } from '@ebuilding/runtime/shared-imports';\nimport { FormlyModule, FormlyFormBuilder } from '@ebuilding-form/core';\nimport { CardContentModule } from '@ebuilding/biz-comm/other/card';\nimport { GramDeonAntdModule } from '@ebuilding/biz-comm/type';\n/**\n * 常规表单 - 新增、编辑、查�? */\n@Component({\n selector: 'comm-form',\n templateUrl: './index.component.html',\n styleUrls: ['./index.component.less'],\n providers: [GramGlobalService, CommAPIService],\n imports: [\n RuntimeSharedImportsModule,\n FormlyModule,\n GramDeonAntdModule,\n CardContentModule\n ]\n})\nexport class CommFormMainComponent extends FormDefaultService implements OnInit {\n override _config: any = null;\n\n /**\n * 默认配置\n */\n headerDefaultConfig: any = null;\n\n /**\n * 动态配�? */\n headerDynamicConfig: any = null;\n\n /**\n * formId\n * formType\n * moduleCode\n */\n @Input() override set config(value: any) {\n this._config = value;\n if (value!! && value.id!!) {\n this.dataId = value.id;\n }\n if (value!! && value.formId!!) {\n this.formId = value.formId;\n }\n this.getPageData();\n }\n override get config() {\n return this._config;\n }\n\n @Input() setpInfo: any = null;\n\n constructor(\n public override http: _HttpClient,\n public override utilService: DeonFormUtilService,\n public override resetService: DeonFormResetService,\n public override deonFormBuilder: FormlyFormBuilder,\n public override globalSrv: GramGlobalService,\n public override msg: NzMessageService,\n public override commAPISrv: CommAPIService,\n ) {\n super(http, utilService, deonFormBuilder, globalSrv, msg, commAPISrv, resetService);\n }\n\n ngOnInit(): void { }\n\n ngOnChanges(changes: SimpleChanges): void { }\n\n override ngOnDestroy() { }\n\n getPageData() {\n this.pageConfig = {\n type: this.config.formType,\n id: this.dataId,\n formId: this.formId,\n moduleCode: this.config.moduleCode,\n api: this.config?.api,\n argInfo: null,\n model: this.config?.model,\n weightModel: this.config?.weightModel,\n hideButton: this.config?.hideButton == true ? true : false\n };\n\n if (this.config.argInfo!!) {\n this.pageConfig.argInfo = _.cloneDeep(this.config.argInfo);\n }\n\n this.getPageConfig();\n }\n\n headerDataLoadAfter(e: any) {\n this.headerLoading = false;\n }\n\n override formDataLoadAfter() {\n this.headerDefaultConfig = null;\n if (this.designBasic!! && this.designBasic?.izHeader == true) {\n this.headerDefaultConfig = {\n headerId: this.designBasic.headerId,\n id: this.config.id,\n rd: Math.random(),\n };\n } else {\n this.headerLoading = false;\n }\n this.modelLoadEvent.emit(this.model);\n }\n\n override modelThrowDataBefore() {\n this.headerDynamicConfig = null;\n if (this.throwData!!) {\n let exist: boolean = false;\n Object.keys(this.throwData).forEach((key: any) => {\n if (this.throwData[key] != undefined && this.throwData[key] != null) {\n exist = true;\n }\n });\n if (exist) {\n if (this.designBasic?.izHeader == true) {\n this.headerDynamicConfig = { headerId: this.designBasic.headerId, model: this.throwData, rd: Math.random() };\n } else {\n this.headerLoading = false;\n }\n }\n }\n }\n}\n","<nz-spin [nzSpinning]=\"loading == true || headerLoading == true\" nzTip=\"拼命加载中...\" class=\"deon-list-spin\">\n <ng-container *ngIf=\"pageConfig!!\">\n <div class=\"form-header\"\n *ngIf=\"designBasic!! && designBasic?.izHeader == true && (headerDefaultConfig!! || headerDynamicConfig!!)\">\n <card-main [defaultConfig]=\"headerDefaultConfig\" [dynamicConfig]=\"headerDynamicConfig\"\n (pageLoadAfter)=\"headerDataLoadAfter($event)\"></card-main>\n </div>\n <div class=\"form-info\">\n <form [formGroup]=\"form\" (ngSubmit)=\"save()\" #defaultForm>\n <div class=\"deon-from\">\n <ng-container *ngIf=\"fields && fields.length > 0; else emptyPage\">\n <formly-form [model]=\"model\" [fields]=\"fields\" [options]=\"options\" [form]=\"form\"> </formly-form>\n </ng-container>\n <ng-template #emptyPage>\n <nz-empty *ngIf=\"loading !== true\"></nz-empty>\n </ng-template>\n </div>\n <ng-content select=\"[name=deon-content]\"></ng-content>\n <div class=\"deon-button\" *ngIf=\"pageConfig.hideButton!=true\">\n <div class=\"bottom-left\">\n <ng-content></ng-content>\n </div>\n <ng-content select=\"[name=bottom-left]\"></ng-content>\n <div class=\"bottom-right\" *ngIf=\"pageConfig.type != 'VIEW' && pageConfig.type != 'PREVIEW'\">\n <button nz-button nzType=\"default\" (click)=\"btnClose()\" type=\"button\"><i nz-icon\n nzType=\"reload\"></i>重置</button>\n <!-- <button nz-button nzType=\"primary\" id=\"DRAFT\" *ngIf=\"draft == true\"><i nz-icon\n nzType=\"hourglass\"></i>暂存</button> -->\n <button nz-button nzType=\"primary\" id=\"SAVE\"><i nz-icon nzType=\"save\"></i>保存</button>\n </div>\n <ng-content select=\"[name=bottom-right]\"></ng-content>\n </div>\n </form>\n </div>\n </ng-container>\n</nz-spin>","import { Component, Input, Output, SimpleChange, EventEmitter } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { FormGroup } from '@angular/forms';\nimport { NzMessageService } from 'ng-zorro-antd/message';\nimport { NzModalService } from 'ng-zorro-antd/modal';\nimport { _HttpClient } from '@delon/theme';\nimport { DeonFormUtilService } from '@ebuilding/base/shared.srv/deon.util';\nimport { CommAPIService } from '@ebuilding/base/shared.srv/commApi.service';\nimport * as _ from 'lodash';\nimport { of, zip } from 'rxjs';\nimport { FormlyFormOptions, FormlyFieldConfig } from '@ebuilding-form/core';\n\n@Component({\n template: ''\n})\nexport abstract class OnlyOneService {\n _config: any = null;\n\n loading: boolean = true;\n form = new FormGroup({});\n //model: any = {};\n options: FormlyFormOptions = {};\n fields: FormlyFieldConfig[] = [];\n\n @Input()\n set config(value: any) {\n if (value!!) {\n if (value.model == undefined || value.model == null) {\n value.model = {};\n }\n this._config = value;\n this.getPageConfig();\n }\n }\n\n get config() {\n return this._config;\n }\n\n @Input() setpInfo: any = null;\n\n /**\n * 值发生变化调用抛出\n */\n @Output() modelThrowEvent: EventEmitter<any> = new EventEmitter();\n\n @Output() pageLoadAfter: EventEmitter<any> = new EventEmitter();\n\n constructor(\n public router: Router,\n public http: _HttpClient,\n public modal: NzModalService,\n public msg: NzMessageService,\n public utilService: DeonFormUtilService,\n public commApiSrv: CommAPIService,\n ) { }\n\n ngOnChanges(changes: any): void {\n if (SimpleChange['formData']) {\n }\n }\n\n /**\n * 重新加载\n */\n btnReload() {\n this.options?.resetModel();\n this.config.model = {};\n this.form = new FormGroup({});\n this.getPageConfig();\n }\n\n /*\n 获取设计\n */\n getDesign() {\n return of(this.config.formInfo.json);\n }\n\n /*\n 获取角色\n */\n getRole() {\n let params: any = {\n formId: this.config.formInfo.id,\n type: this.config.formType,\n };\n let apiName: any = this.commApiSrv.getFormRole(this.config.moduleType);\n return this.http.post(`${apiName}`, params);\n }\n\n /*\n 获取配置-下拉选项\n */\n getDropDown() {\n let apiName: any = this.commApiSrv.getFormDropDown(this.config.moduleType, this.config.formInfo.id);\n return this.http.post(`${apiName}`);\n }\n\n /*\n 获取配置-表单数据\n */\n getFromModel() {\n let apiName: any = this.commApiSrv.getFormModelByForm(this.config.moduleType);\n return this.http.post(`${apiName}/${this.config.formInfo.id}`);\n }\n\n /*\n 获取配置-表单默认值\n */\n getFromDefaultModel() {\n if (this.config.formType == 'ADD' && this.config.formInfo.id!!) {\n let apiName: any = this.commApiSrv.getFormDefaultModel(this.config.moduleType);\n return this.http.post(`${apiName}/${this.config.formInfo.id}`);\n } else {\n return of(null);\n }\n }\n\n /**\n * 组装配置\n */\n getPageConfig() {\n this.loading = true;\n new Promise((resolve: any) => {\n zip(this.getDesign(), this.getRole(), this.getDropDown(), this.getFromDefaultModel(), this.getFromModel()).subscribe(\n ([design, role, drop, d, m]) => {\n let fieldConfigs: FormlyFieldConfig[] = design;\n let fieldRole: any = {};\n let fieldOptions: any = {};\n\n //字段权限\n if (role?.success == true && role?.result!!) {\n fieldRole = role.result;\n }\n\n //字段Options\n if (drop.success == true && drop.result!!) {\n fieldOptions = drop.result;\n }\n if (this.config?.formInfo?.izMultiple == true) {\n //获取的表单值\n if (m!! && m.success == true && m.result!!) {\n this.config.model = Object.assign(this.config.model, {\n multiple_key: m.result,\n });\n }\n } else {\n //默认值\n if (d!! && d.success == true && d.result!!) {\n this.config.model = Object.assign(this.config.model, d.result);\n }\n\n //获取的表单值\n if (m!! && m.success == true && m.result!!) {\n this.config.model = Object.assign(this.config.model, m.result);\n }\n }\n\n // this.utilService.initFormFieldConfig(fieldConfigs, fieldRole, fieldOptions, this.config.model, this, (e: any, field: any) => {\n // this.modelThrowEvent.emit(this.config.model);\n // });\n\n this.fields = fieldConfigs;\n\n setTimeout(() => {\n if (this.options != undefined && this.options != null && this.options?.resetModel) {\n this.options?.resetModel();\n }\n }, 0);\n this.getDataLoadAfter();\n this.loading = false;\n },\n () => {\n this.loading = false;\n },\n () => {\n this.loading = false;\n resolve();\n },\n );\n });\n }\n\n /**\n * 表单数据加载完\n */\n getDataLoadAfter() {\n this.pageLoadAfter.emit(this.config.model);\n }\n}\n","import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { _HttpClient } from '@delon/theme';\nimport { NzMessageService } from 'ng-zorro-antd/message';\nimport { FormlyFieldConfig } from '@ebuilding-form/core';\nimport { DeonFormUtilService } from '@ebuilding/base/shared.srv/deon.util';\nimport { CommAPIService } from '@ebuilding/base/shared.srv/commApi.service';\nimport { OnlyOneService } from '../../service/onlyOneService';\nimport { of, zip } from 'rxjs';\nimport * as _ from 'lodash';\nimport { Router } from '@angular/router';\nimport { NzModalService } from 'ng-zorro-antd/modal';\n\nimport { RuntimeSharedImportsModule } from '@ebuilding/runtime/shared-imports';\nimport { FormlyModule } from '@ebuilding-form/core';\nimport { GramDeonAntdModule } from '@ebuilding/biz-comm/type';\n\n@Component({\n selector: 'form-single',\n templateUrl: `./index.component.html`,\n styleUrls: ['./index.component.less'],\n imports: [\n RuntimeSharedImportsModule,\n FormlyModule,\n GramDeonAntdModule\n ]\n})\nexport class FormSingleComponent extends OnlyOneService implements OnInit, OnDestroy {\n constructor(\n public override router: Router,\n public override http: _HttpClient,\n public override modal: NzModalService,\n public override msg: NzMessageService,\n public commApiSrv3: CommAPIService,\n public override utilService: DeonFormUtilService,\n ) {\n super(router, http, modal, msg, utilService, commApiSrv3);\n }\n\n ngOnInit() { }\n\n ngOnDestroy(): void { }\n\n /*\n 获取设计\n */\n override getDesign() {\n let newField: FormlyFieldConfig[] = JSON.parse(this.config.formInfo.json);\n return of(newField);\n }\n\n /**\n * 上一�? */\n btnLeft() { }\n\n /**\n * 下一�? */\n btnRight() { }\n\n /**\n * 保存按钮\n * @returns\n */\n btnSave() {\n if (!this.form.valid) {\n return;\n }\n this.loading = true;\n let apiName: any = this.commApiSrv.getFormSave(this.config.moduleType, false);\n this.http\n .post(`${apiName}`, {\n formId: this.config.formInfo.id,\n modelJson: this.config.model,\n })\n .subscribe(\n (res: any) => {\n this.loading = false;\n if (res && res.success == true) {\n this.msg.success('保存成功!');\n this.getPageConfig();\n }\n },\n () => {\n this.loading = false;\n },\n );\n }\n}\n","<nz-spin [nzSpinning]=\"loading\" nzTip=\"拼命加载中...\" class=\"deon-list-spin\">\n <form [formGroup]=\"form\" (ngSubmit)=\"btnSave()\">\n <div class=\"deon-from\">\n <ng-container *ngIf=\"fields && fields.length > 0\">\n <formly-form [model]=\"config.model\" [fields]=\"fields\" [options]=\"options\" [form]=\"form\"> </formly-form>\n </ng-container>\n </div>\n <div class=\"deon-bottom\">\n <div class=\"bottom-left\">\n <ng-content></ng-content>\n </div>\n <div class=\"bottom-right\">\n <button nz-button nzType=\"default\" (click)=\"btnReload()\" type=\"button\"><i nz-icon\n nzType=\"reload\"></i>重新加载</button>\n <button nz-button nzType=\"primary\"><i nz-icon nzType=\"save\"></i>保存</button>\n </div>\n </div>\n </form>\n</nz-spin>","import { Component, OnInit, OnDestroy } from '@angular/core';\nimport { _HttpClient } from '@delon/theme';\nimport { Router } from '@angular/router';\nimport { NzMessageService } from 'ng-zorro-antd/message';\nimport { NzModalService } from 'ng-zorro-antd/modal';\nimport { FormlyFieldConfig } from '@ebuilding-form/core';\nimport { DeonFormUtilService } from '@ebuilding/base/shared.srv/deon.util';\nimport { CommAPIService } from '@ebuilding/base/shared.srv/commApi.service';\nimport { OnlyOneService } from '../../service/onlyOneService';\nimport { of } from 'rxjs';\n\nimport { RuntimeSharedImportsModule } from '@ebuilding/runtime/shared-imports';\nimport { FormlyModule } from '@ebuilding-form/core';\nimport { GramDeonAntdModule } from '@ebuilding/biz-comm/type';\n\n@Component({\n selector: 'form-multiple',\n templateUrl: `./index.component.html`,\n styleUrls: ['./index.component.less'],\n imports: [\n RuntimeSharedImportsModule,\n FormlyModule,\n GramDeonAntdModule\n ]\n})\nexport class FormMultipleComponent extends OnlyOneService implements OnInit, OnDestroy {\n constructor(\n public override router: Router,\n public override http: _HttpClient,\n public override modal: NzModalService,\n public override msg: NzMessageService,\n public commApiSrv3: CommAPIService,\n public override utilService: DeonFormUtilService,\n ) {\n super(router, http, modal, msg, utilService, commApiSrv3);\n }\n\n ngOnInit() { }\n\n ngOnDestroy(): void { }\n\n /*\n 获取设计\n */\n override getDesign() {\n let newField: FormlyFieldConfig[] = [\n {\n key: 'multiple_key',\n type: 'repeat',\n fieldArray: {\n fieldGroup: JSON.parse(this.config.formInfo.json),\n },\n },\n ];\n return of(newField);\n }\n\n /*\n 获取配置-表单数据\n */\n override getFromModel() {\n let apiName: any = this.commApiSrv.getFormModelByForm(this.config.moduleType);\n return this.http.post(`${apiName}/${this.config.formInfo.id}`);\n }\n\n btnSave() {\n if (!this.form.valid) {\n return;\n }\n this.loading = true;\n let apiName: any = this.commApiSrv.getFormSave(this.config.moduleType, true);\n this.http\n .post(`${apiName}`, {\n formId: this.config.formInfo.id,\n modelJson: this.config.model['multiple_key'],\n })\n .subscribe(\n (res: any) => {\n this.loading = false;\n if (res && res.success == true) {\n this.msg.success('保存成功!');\n this.getPageConfig();\n }\n },\n () => {\n this.loading = false;\n },\n );\n }\n}\n","<nz-spin [nzSpinning]=\"loading\" nzTip=\"拼命加载中...\" class=\"deon-list-spin\">\n <form [formGroup]=\"form\" (ngSubmit)=\"btnSave()\">\n <div class=\"deon-head\">\n <div class=\"left\"></div>\n <div class=\"right\">\n <button nz-button nzType=\"default\" (click)=\"btnReload()\" type=\"button\"><i nz-icon\n nzType=\"reload\"></i>重新加载</button>\n <button nz-button nzType=\"primary\"><i nz-icon nzType=\"save\"></i>保存</button>\n </div>\n </div>\n <div class=\"deon-from\">\n <ng-container *ngIf=\"fields && fields.length > 0\">\n <formly-form [model]=\"config.model\" [fields]=\"fields\" [options]=\"options\" [form]=\"form\"> </formly-form>\n </ng-container>\n </div>\n </form>\n</nz-spin>","import { Component, OnInit, OnDestroy, Input, Output, EventEmitter, OnChanges, SimpleChanges } from '@angular/core';\nimport { _HttpClient } from '@delon/theme';\nimport { GramGlobalService } from '@ebuilding/base/shared.srv/global.event';\nimport { CommAPIService } from '@ebuilding/base/shared.srv/commApi.service';\nimport * as _ from 'lodash';\n\nimport { RuntimeSharedImportsModule } from '@ebuilding/runtime/shared-imports';\nimport { FormSingleComponent } from '../components/single/index.component';\nimport { FormMultipleComponent } from '../components/multiple/index.component';\n\n/**\n * 表单只有保存【单行数�?或�?多行数据�? 没有新增和编�? */\n@Component({\n selector: 'comm-form-onlyone',\n templateUrl: './index.component.html',\n styleUrls: ['./index.component.less'],\n providers: [GramGlobalService, CommAPIService],\n imports: [\n RuntimeSharedImportsModule,\n FormSingleComponent,\n FormMultipleComponent\n ]\n})\nexport class CommFormOnlyOneComponent implements OnInit, OnDestroy, OnChanges {\n _config: any = null;\n\n loading: boolean = true;\n\n pageConfig: any = null;\n\n /**\n * formId\n * formType\n * moduleCode\n */\n @Input() config: any = null;\n\n @Input() setpInfo: any = null;\n\n /**\n * 值发生变化调用抛�? */\n @Output() modelThrowEvent: EventEmitter<any> = new EventEmitter();\n\n constructor(public http: _HttpClient, public commAPISrv: CommAPIService) { }\n\n ngOnInit(): void { }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['config']) {\n if (this.config!!) {\n this.getFormDesign();\n }\n }\n }\n\n ngOnDestroy() { }\n\n formDataLoadAfter(e: any) { }\n\n formDataChange(e: any) {\n this.modelThrowEvent.emit(e);\n }\n\n /*\n 获取设计\n */\n getFormDesign() {\n this.pageConfig = null;\n if (this.config!! && this.config.formId!! && this.config.moduleCode!!) {\n let apiName: any = this.commAPISrv.getFormDesign(this.config.moduleCode, this.config.formId);\n this.http.post(`${apiName}`).subscribe((res: any) => {\n if (res.success) {\n this.config.moduleType = this.config.moduleCode;\n this.config.formType = this.config.formType;\n this.config.formInfo = _.get(res, 'result.basic');\n }\n this.loading = false;\n });\n } else {\n this.loading = false;\n }\n }\n}\n","<nz-spin [nzSpinning]=\"loading\" nzTip=\"拼命加载中...\" class=\"deon-list-spin\">\n <ng-container *ngIf=\"config!! && config.formInfo!!\">\n <div class=\"form-info\">\n <ng-container *ngIf=\"config?.formInfo?.izMultiple == true; else tmpSingle\">\n <form-multiple [config]=\"config\" [setpInfo]=\"setpInfo\"></form-multiple>\n </ng-container>\n <ng-template #tmpSingle>\n <form-single\n [config]=\"config\"\n [setpInfo]=\"setpInfo\"\n (modelThrowEvent)=\"formDataChange($event)\"\n (pageLoadAfter)=\"formDataLoadAfter($event)\"\n >\n <ng-content></ng-content>\n </form-single>\n </ng-template>\n </div>\n </ng-container>\n</nz-spin>\n","import { Injectable } from '@angular/core';\n@Injectable()\nexport class EmpCommmService {\n /**\n * 外部传入的配置\n */\n sourceConfig: any = null;\n\n /**\n * 头部配置 */\n headerConfig: any = null;\n groupForm: any = null;\n\n groupData: any = null;\n}\n","import { Directive, Input, Output, EventEmitter, OnDestroy } from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { NzMessageService } from 'ng-zorro-antd/message';\nimport { _HttpClient } from '@delon/theme';\nimport { FormlyFormOptions, FormlyFieldConfig, FormlyFormBuilder } from '@ebuilding-form/core';\nimport { DeonFormUtilService } from '@ebuilding/base/shared.srv/deon.util';\nimport { DeonFormResetService } from '@ebuilding/base/shared.srv/deon2.util';\nimport { of, Subject, zip } from 'rxjs';\nimport { ModuleAPI } from '@ebuilding/base/shared.var/shared.constant';\nimport { GramGlobalService } from '@ebuilding/base/shared.srv/global.event';\nimport { CommAPIService } from '@ebuilding/base/shared.srv/commApi.service';\nimport * as _ from 'lodash';\n@Directive()\nexport abstract class EmpGroupService implements OnDestroy {\n pageConfig: any = null;\n\n loading: boolean = true;\n form = new FormGroup({});\n model: any = {};\n options: FormlyFormOptions = {};\n fields: FormlyFieldConfig[] = [];\n\n /**\n * 配置参数\n */\n argList: any[] = [];\n\n /**\n * 销毁\n */\n onDestroy$ = new Subject<void>();\n\n throwField: any = {};\n throwData: any = {};\n\n /**\n * 值发生变化调用抛出\n */\n @Output() modelThrowEvent: EventEmitter<any> = new EventEmitter();\n\n constructor(\n public http: _HttpClient,\n public utilService: DeonFormUtilService,\n public resetService: DeonFormResetService,\n public deonFormBuilder: FormlyFormBuilder,\n public globalSrv: GramGlobalService,\n public msg: NzMessageService,\n public commAPISrv: CommAPIService,\n ) {\n this.globalSrv.subscribe('deon-field-repeat', (res: any) => {\n if (res != undefined && res.field != undefined && res.data != undefined && res.type != undefined) {\n if (res.type == 'delete') {\n this.fields = [...this.fields];\n }\n }\n });\n }\n\n ngOnDestroy() {\n this.onDestroy$.next();\n this.onDestroy$.complete();\n }\n\n /*\n 获取设计\n */\n getDesign() {\n let apiName: any = this.commAPISrv.getFormDesign(this.pageConfig.moduleCode, this.pageConfig.formId);\n return this.http.post(`${apiName}`);\n }\n\n /*\n 获取角色\n */\n getRole() {\n let params: any = {\n formId: this.pageConfig.formId,\n type: this.pageConfig.type,\n };\n let apiName: any = this.commAPISrv.getFormRole(this.pageConfig.moduleCode);\n return this.http.post(`${apiName}`, params);\n }\n\n /*\n 获取配置-下拉选项\n */\n getDropDown() {\n let apiName: any = this.commAPISrv.getFormDropDown(this.pageConfig.moduleCode, this.pageConfig.formId);\n return this.http.post(`${apiName}`);\n }\n\n /*\n 获取配置-表单数据\n */\n getFromModel() {\n let params: any = {\n formId: this.pageConfig.formId,\n id: this.pageConfig.id,\n };\n if (this.pageConfig.type != 'ADD' && this.pageConfig.id!!) {\n let apiName: any = null;\n if (this.pageConfig.api!! && this.pageConfig.api.modelAPI!!) {\n apiName = this.pageConfig.api.modelAPI;\n } else {\n apiName = this.commAPISrv.getFormModel(this.pageConfig.moduleCode);\n }\n return this.http.post(`${apiName}`, params);\n } else {\n return of(null);\n }\n }\n\n /*\n 获取配置-表单默认值\n */\n getFromDefaultModel() {\n if (this.pageConfig.type == 'ADD' && this.pageConfig.formId!!) {\n let apiName: any = null;\n if (this.pageConfig.api!! && this.pageConfig.api.modelDefaultAPI!!) {\n apiName = this.pageConfig.api.modelDefaultAPI;\n } else {\n apiName = this.commAPISrv.getFormDefaultModel(this.pageConfig.moduleCode);\n }\n return this.http.post(`${apiName}/${this.pageConfig.formId}`);\n } else {\n return of(null);\n }\n }\n\n /**\n * 获取配置-表单规则\n * @returns \n */\n getFromRuleData() {\n if (this.pageConfig.formId!!) {\n return this.http.post(`${ModuleAPI.rule}/rule/form/listByForm/${this.pageConfig.formId}`);\n } else {\n return of(null);\n }\n }\n\n\n /**\n * 获取默认参数\n */\n getFromArgInfo() {\n if (this.pageConfig?.argInfo!! && this.argList!! && Array.isArray(this.argList) && this.argList.length > 0) {\n this.argList.forEach((item: any) => {\n if (item.argFieldId!! && item.argName!! && this.pageConfig.argInfo[item.argName]!!) {\n this.model[item.argFieldId] = this.pageConfig?.argInfo[item.argName];\n }\n });\n }\n }\n\n /**\n * 组装配置\n */\n getPageConfig() {\n new Promise((resolve: any) => {\n zip(this.getDesign(), this.getRole(), this.getDropDown(), this.getFromModel(), this.getFromDefaultModel(), this.getFromRuleData()).subscribe(\n ([design, role, drop, d, m, r]) => {\n this.model = {};\n //传入的值\n if (this.pageConfig.model != undefined && this.pageConfig.model != null) {\n this.model = Object.assign(this.model, this.pageConfig.model);\n }\n if (design.success == true && _.get(design, 'result.basic.json')!!) {\n /**\n * 配置参数\n */\n if (_.get(design, 'result.listArg')!! && Array.isArray(_.get(design, 'result.listArg'))) {\n this.argList = _.get(design, 'result.listArg');\n }\n this.getFromArgInfo();\n\n /**\n * 表单JSON\n */\n let fieldConfigs: FormlyFieldConfig[] = JSON.parse(_.get(design, 'result.basic.json'));\n let fieldRole: any = {};\n let fieldOptions: any = {};\n let fieldRule: any = null;\n\n //字段权限\n if (role.success == true && role.result!!) {\n fieldRole = role.result;\n }\n\n //字段Options\n if (drop.success == true && drop.result!!) {\n fieldOptions = drop.result;\n }\n\n //默认值\n if (d!! && d.success == true && d.result!!) {\n this.model = Object.assign(this.model, d.result);\n }\n\n //获取的表单值\n if (m!! && m.success == true && m.result!!) {\n this.model = Object.assign(this.model, m.result);\n }\n\n if (r!! && r.success == true && r.result!!) {\n fieldRule = r.result;\n }\n\n //this.utilService.initFieldCallBack(fieldConfigs, this.throwField);\n\n this.utilService.initConfig(fieldConfigs, fieldRole, fieldOptions, this.model, fieldRule, null, this, (e: any, field: any) => {\n this.getPageRuleData(field, e);\n });\n\n this.fields = fieldConfigs;\n\n setTimeout(() => {\n if (this.options != undefined && this.options != null && this.options?.resetModel) {\n this.options?.resetModel();\n }\n }, 0);\n this.formDataLoadAfter();\n }\n this.loading = false;\n },\n () => {\n this.loading = false;\n },\n () => {\n this.loading = false;\n resolve();\n },\n );\n });\n }\n\n getPageRuleData(field: FormlyFieldConfig, value: any) {\n this.loading = true;\n let postData: any = {};\n postData[field.key] = {\n key: field.key,\n value: value\n };\n if (field?.props && field.props?.[\"callBackFields\"] && field.props?.[\"callBackFields\"]?.length > 0) {\n field.props?.[\"callBackFields\"].forEach((item: any) => {\n if (this.model[item] != undefined) {\n postData[item] = {\n key: item,\n value: this.model[item]\n }\n }\n });\n }\n\n this.http.post(`${ModuleAPI.rule}/rule/run/formRule`, {\n ruleId: field.props?.[\"callBackRule\"],\n modelJson: postData\n }).subscribe((res: any) => {\n if (res!! && res.success && res.result!!) {\n this.resetService.resetConfig(this.fields, this.model, res.result);\n this.fields = [...this.fields];\n }\n this.loading = false;\n }, (res: any) => {\n this.loading = false;\n });\n }\n\n formModelChange(e: any, field: any) {\n if (this.model!! && field.key!!) {\n let key: any = field.key;\n\n if (this.throwField!! && this.throwField.hasOwnProperty(key)) {\n /**\n * 触发表单外部\n */\n let value: any = this.throwField[key];\n if (value != undefined && value != null) {\n this.throwData = {};\n Object.keys(this.throwField).forEach((k: any) => {\n this.throwData[value] = this.model[k];\n });\n }\n this.modelThrowDataBefore();\n\n /**\n * 事件抛出\n */\n this.modelThrowEvent.emit(this.throwField);\n } else {\n /**\n * 常规触发\n */\n }\n }\n }\n\n save(i: number) {\n if (!this.form.valid) {\n return;\n }\n this.loading = true;\n let apiName = null;\n if (this.pageConfig.type == 'ADD') {\n if (this.pageConfig.api!! && this.pageConfig.api.addAPI!!) {\n apiName = this.pageConfig.api.addAPI;\n } else {\n apiName = this.commAPISrv.getFormAdd(this.pageConfig.moduleCode);\n }\n } else if (this.pageConfig.type == 'EDIT') {\n if (this.pageConfig.api!! && this.pageConfig.api.editAPI!!) {\n apiName = this.pageConfig.api.editAPI;\n } else {\n apiName = this.commAPISrv.getFormUpdate(this.pageConfig.moduleCode);\n }\n if (i == 0) {\n apiName = `${ModuleAPI.personnel}/personnel/employee/update`\n }\n }\n this.http\n .post(`${apiName}`, {\n id: this.pageConfig.id,\n formId: this.pageConfig.formId,\n modelJson: this.model,\n })\n .subscribe(\n (res: any) => {\n this.loading = false;\n if (res && res.success == true) {\n this.msg.success('保存成功!');\n }\n },\n () => {\n this.loading = false;\n },\n );\n }\n\n btnClose() {\n this.getPageConfig();\n }\n\n formDataLoadAfter() { }\n\n modelThrowDataBefore() { }\n}\n","import { Component, OnInit, Input, OnChanges, SimpleChanges } from '@angular/core';\nimport { NzMessageService } from 'ng-zorro-antd/message';\nimport { _HttpClient } from '@delon/theme';\nimport { DeonFormUtilService } from '@ebuilding/base/shared.srv/deon.util';\nimport { DeonFormResetService } from '@ebuilding/base/shared.srv/deon2.util';\nimport { GramGlobalService } from '@ebuilding/base/shared.srv/global.event';\nimport { CommAPIService } from '@ebuilding/base/shared.srv/commApi.service';\nimport { EmpCommmService } from '../../service/empCommService';\nimport { EmpGroupService } from '../../service/empGroupService';\nimport * as _ from 'lodash';\n\nimport { RuntimeSharedImportsModule } from '@ebuilding/runtime/shared-imports';\nimport { FormlyModule, FormlyFormBuilder } from '@ebuilding-form/core';\nimport { GramDeonAntdModule } from '@ebuilding/biz-comm/type';\n\n@Component({\n selector: 'emp-children',\n styleUrls: ['./index.component.less'],\n templateUrl: './index.component.html',\n imports: [\n RuntimeSharedImportsModule,\n FormlyModule,\n GramDeonAntdModule\n ]\n})\nexport class EmpChildrenComponent extends EmpGroupService implements OnInit, OnChanges {\n @Input() formInfo: any = null;\n @Input() height: number = 0;\n constructor(\n public override http: _HttpClient,\n public override utilService: DeonFormUtilService,\n public override resetService: DeonFormResetService,\n public override deonFormBuilder: FormlyFormBuilder,\n public override globalSrv: GramGlobalService,\n public override msg: NzMessageService,\n public override commAPISrv: CommAPIService,\n public empCommSrv: EmpCommmService,\n ) {\n super(http, utilService, resetService, deonFormBuilder, globalSrv, msg, commAPISrv);\n }\n\n ngOnInit() { }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['formInfo']) {\n if (this.formInfo!!) {\n this.pageConfig = {\n type: this.empCommSrv.sourceConfig.type,\n id: null,\n formId: this.formInfo.id,\n moduleCode: this.empCommSrv.sourceConfig.moduleCode, //buttonConfig.moduleCode,\n api: this.empCommSrv.sourceConfig.api,\n argInfo: this.empCommSrv.sourceConfig.argInfo,\n };\n\n this.getPageConfig();\n }\n }\n }\n\n /*\n 获取配置-表单数据\n */\n override getFromModel() {\n let params: any = {\n formId: this.pageConfig.formId,\n id: this.empCommSrv.sourceConfig.id,\n };\n\n let apiName: any = this.commAPISrv.getFormModelChildren(this.pageConfig.moduleCode);\n\n return this.http.post(`${apiName}`, params);\n }\n\n override save() {\n if (!this.form.valid) {\n return;\n }\n this.loading = true;\n let apiName = this.commAPISrv.getFormSaveChildren(this.pageConfig.moduleCode);\n this.http\n .post(`${apiName}`, {\n id: this.empCommSrv.sourceConfig.id,\n formId: this.pageConfig.formId,\n modelJson: this.model,\n })\n .subscribe(\n (res: any) => {\n this.loading = false;\n if (res && res.success == true) {\n this.msg.success('保存成功!');\n }\n },\n () => {\n this.loading = false;\n },\n );\n }\n}\n","<nz-spin [nzSpinning]=\"loading\" nzTip=\"拼命加载中...\" class=\"deon-list-spin\">\n <ng-container *ngIf=\"pageConfig!!\">\n <form [formGroup]=\"form\" (ngSubmit)=\"save()\" #defaultForm>\n <div class=\"deon-from\" [ngStyle]=\"{ height: height - 68 + 'px' }\">\n <ng-container *ngIf=\"fields && fields.length > 0; else emptyPage\">\n <formly-form [model]=\"model\" [fields]=\"fields\" [options]=\"options\" [form]=\"form\"> </formly-form>\n </ng-container>\n <ng-template #emptyPage>\n <nz-empty *ngIf=\"loading !== true\"></nz-empty>\n </ng-template>\n </div>\n <div class=\"deon-button\" *ngIf=\"pageConfig.type != 'VIEW' && pageConfig.type != 'PREVIEW'\">\n <button nz-button nzType=\"default\" (click)=\"btnClose()\" type=\"button\"><i nz-icon nzType=\"reload\"></i>重置</button>\n <!-- <button nz-button nzType=\"primary\" id=\"DRAFT\" *ngIf=\"draft == true\"><i nz-icon\n nzType=\"hourglass\"></i>暂存</button> -->\n <button nz-button nzType=\"primary\" id=\"SAVE\"><i nz-icon nzType=\"save\"></i>保存</button>\n </div>\n </form>\n </ng-container>\n</nz-spin>","import { Component, OnInit, HostListener, Input, Renderer2, ElementRef, OnChanges, SimpleChanges } from '@angular/core';\nimport { NzMessageService } from 'ng-zorro-antd/message';\nimport { _HttpClient } from '@delon/theme';\nimport { DeonFormUtilService } from '@ebuilding/base/shared.srv/deon.util';\nimport { DeonFormResetService } from '@ebuilding/base/shared.srv/deon2.util';\nimport { GramGlobalService } from '@ebuilding/base/shared.srv/global.event';\nimport { CommAPIService } from '@ebuilding/base/shared.srv/commApi.service';\nimport { EmpCommmService } from '../service/empCommService';\nimport { EmpGroupService } from '../service/empGroupService';\nimport * as _ from 'lodash';\n\nimport { RuntimeSharedImportsModule } from '@ebuilding/runtime/shared-imports';\nimport { FormlyModule, FormlyFormBuilder } from '@ebuilding-form/core';\nimport { CardContentModule } from '@ebuilding/biz-comm/other/card';\nimport { GramDeonAntdModule } from '@ebuilding/biz-comm/type';\nimport { EmpChildrenComponent } from '../components/children/index.component';\n/**\n * 人员基本信息表单-有多页签\n */\n@Component({\n selector: 'comm-form-emp',\n styleUrls: ['./index.component.less'],\n templateUrl: './index.component.html',\n providers: [CommAPIService, EmpCommmService],\n imports: [\n RuntimeSharedImportsModule,\n FormlyModule,\n GramDeonAntdModule,\n CardContentModule,\n EmpChildrenComponent\n ]\n})\nexport class CommFormEmpMainComponent extends EmpGroupService implements OnInit, OnChanges {\n _config: any = null;\n cardLoading: boolean = true;\n\n @Input()\n set config(value: any) {\n this._config = value;\n if (value!!) {\n this.getPageData();\n }\n }\n get config() {\n return this._config;\n }\n\n height: number = 0;\n\n headerDefaultConfig: any = null;\n\n constructor(\n public override http: _HttpClient,\n public elementRef: ElementRef,\n public renderer: Renderer2,\n public override utilService: DeonFormUtilService,\n public override resetService: DeonFormResetService,\n public override deonFormBuilder: FormlyFormBuilder,\n public override globalSrv: GramGlobalService,\n public override msg: NzMessageService,\n public override commAPISrv: CommAPIService,\n public empCommSrv: EmpCommmService,\n ) {\n super(http, utilService, resetService, deonFormBuilder, globalSrv, msg, commAPISrv);\n }\n\n ngOnInit() { }\n\n ngOnChanges(changes: SimpleChanges): void { }\n\n getPageData() {\n this.loading = true;\n this.empCommSrv.groupData = null;\n let apiName: any = this.commAPISrv.getFormDesign(this.config.moduleCode, this.config.formId);\n this.http.post(`${apiName}`).subscribe((res: any) => {\n this.empCommSrv.sourceConfig = _.cloneDeep(this.config);\n if (res.success) {\n this.empCommSrv.groupData = res.result;\n }\n if (\n this.empCommSrv.groupData!! &&\n this.empCommSrv.groupData.listChildren!! &&\n Array.isArray(this.empCommSrv.groupData.listChildren) &&\n this.empCommSrv.groupData.listChildren.length > 0\n ) {\n /**\n * 获取第一个表�?为基础表单\n */\n let firstData: any = this.empCommSrv.groupData.listChildren[0];\n\n /**\n * 如果不需要Header 则取消loading\n */\n if (this.empCommSrv.groupData.basic?.izHeader != true) {\n this.cardLoading = false;\n }\n\n this.pageConfig = {\n type: this.empCommSrv.sourceConfig.type,\n id: this.empCommSrv.sourceConfig.id,\n formId: firstData.formInfo.id,\n moduleCode: this.empCommSrv.sourceConfig.moduleCode,\n api: this.empCommSrv.sourceConfig.api,\n argInfo: this.empCommSrv.sourceConfig.argInfo,\n };\n\n this.getPageConfig();\n } else {\n this.cardLoading = false;\n this.loading = false;\n }\n });\n }\n\n /**\n * 卡片数据加载完毕回调\n */\n cardDataLoadAfter() {\n this.cardLoading = false;\n this.resizeTable();\n }\n\n /**\n * 表单数据加载完毕回调\n */\n override formDataLoadAfter() {\n if (this.headerDefaultConfig == null) {\n if (this.empCommSrv.groupData!! && this.empCommSrv.groupData.basic!! && this.empCommSrv.groupData.basic.izHeader == true) {\n this.headerDefaultConfig = {\n headerId: this.empCommSrv.groupData.basic.headerId,\n id: this.empCommSrv.sourceConfig.id,\n rd: Math.random(),\n };\n } else {\n this.headerDefaultConfig = null;\n }\n }\n setTimeout(() => {\n this.resizeTable();\n }, 0);\n }\n\n /**\n *抛出事件�? */\n override modelThrowDataBefore() { }\n\n @HostListener('window:resize', ['$event'])\n resize() {\n this.resizeTable();\n }\n resizeTable() {\n let totalHeight: number = this.elementRef.nativeElement.clientHeight;\n let cardHeight: number = 0;\n let tabHeight: number = 70; //tab页签高度45,底部边�?6;上边距8\n if (this.elementRef.nativeElement.querySelector('.basic-info')!!) {\n cardHeight = this.elementRef.nativeElement.querySelector('.basic-info').clientHeight;\n }\n this.height = totalHeight - cardHeight - tabHeight;\n }\n}\n","<nz-spin [nzSpinning]=\"loading\" class=\"deon-list-spin\">\n <div class=\"basic\" *ngIf=\"empCommSrv.groupData!! && empCommSrv.groupData.basic!!\">\n <!-- <ng-container *ngIf=\"empCommSrv.groupData.basic?.izHeader == true && headerDefaultConfig!!\">\n <div class=\"basic-info\">\n <card-main [defaultConfig]=\"headerDefaultConfig\" (pageLoadAfter)=\"cardDataLoadAfter()\"></card-main>\n </div>\n </ng-container> -->\n <div class=\"basic-tabset\" *ngIf=\"cardLoading == false\">\n <nz-tabset>\n <ng-container *ngFor=\"let item of empCommSrv.groupData.listChildren; let i = index\">\n <nz-tab [nzTitle]=\"item.formInfo.name\">\n <ng-template nz-tab>\n <ng-container *ngIf=\"i == 0\">\n <div class=\"basic-form\">\n <form [formGroup]=\"form\" (ngSubmit)=\"save(i)\" #defaultForm>\n <div class=\"deon-from\">\n <ng-container *ngIf=\"fields && fields.length > 0; else emptyPage\">\n <formly-form [model]=\"model\" [fields]=\"fields\" [options]=\"options\" [form]=\"form\"> </formly-form>\n </ng-container>\n <ng-template #emptyPage>\n <nz-empty *ngIf=\"loading !== true\"></nz-empty>\n </ng-template>\n </div>\n <div class=\"deon-button\" *ngIf=\"pageConfig.type != 'VIEW' && pageConfig.type != 'PREVIEW'\">\n <button nz-button bottom=\"default\" (click)=\"btnClose()\" type=\"button\"><i nz-icon\n nzType=\"reload\"></i>重置</button>\n <!-- <button nz-button nzType=\"primary\" id=\"DRAFT\" *ngIf=\"draft == true\"><i nz-icon\n nzType=\"hourglass\"></i>暂存</button> -->\n <button nz-button nzType=\"primary\" id=\"SAVE\"><i nz-icon nzType=\"save\"></i>保存</button>\n </div>\n </form>\n </div>\n </ng-container>\n <ng-container *ngIf=\"i > 0 && height > 0\">\n <emp-children [formInfo]=\"item.formInfo\" [height]=\"height\"></emp-children>\n </ng-container>\n </ng-template>\n </nz-tab>\n </ng-container>\n </nz-tabset>\n </div>\n </div>\n</nz-spin>","import { Component, OnInit, OnDestroy, Input, Output, SimpleChanges } from '@angular/core';\nimport { _HttpClient } from '@delon/theme';\nimport { NzMessageService } from 'ng-zorro-antd/message';\nimport { DeonFormUtilService } from '@ebuilding/base/shared.srv/deon.util';\nimport { DeonFormResetService } from '@ebuilding/base/shared.srv/deon2.util';\nimport { GramGlobalService } from '@ebuilding/base/shared.srv/global.event';\nimport { CommAPIService } from '@ebuilding/base/shared.srv/commApi.service';\nimport * as _ from 'lodash';\nimport { FormDefaultService } from '../service/defaultService';\n\nimport { RuntimeSharedImportsModule } from '@ebuilding/runtime/shared-imports';\nimport { FormlyModule, FormlyFormBuilder } from '@ebuilding-form/core';\nimport { GramDeonAntdModule } from '@ebuilding/biz-comm/type';\nimport { CardContentModule } from '@ebuilding/biz-comm/other/card';\n\n/**\n * 步骤表单 - 新增、编辑、查�? */\n@Component({\n selector: 'comm-form-step',\n templateUrl: './index.component.html',\n styleUrls: ['./index.component.less'],\n providers: [GramGlobalService, CommAPIService],\n imports: [\n RuntimeSharedImportsModule,\n FormlyModule,\n GramDeonAntdModule,\n CardContentModule\n ]\n})\nexport class CommFormStepComponent extends FormDefaultService implements OnInit {\n /**\n * 默认配置\n */\n headerDefaultConfig: any = null;\n\n /**\n * 动态配�? */\n headerDynamicConfig: any = null;\n\n /**\n * formId\n * formType\n * moduleCode\n */\n @Input() override set config(value: any) {\n this._config = value;\n if (value!! && value.id!!) {\n this.dataId = value.id;\n }\n if (value!! && value.formId!!) {\n this.formId = value.formId;\n }\n this.getPageData();\n }\n override get config() {\n return this._config;\n }\n\n @Input() setpInfo: any = null;\n\n constructor(\n public override http: _HttpClient,\n public override utilService: DeonFormUtilService,\n public override deonFormBuilder: FormlyFormBuilder,\n public override globalSrv: GramGlobalService,\n public override msg: NzMessageService,\n public override commAPISrv: CommAPIService,\n public override resetService: DeonFormResetService,\n ) {\n super(http, utilService, deonFormBuilder, globalSrv, msg, commAPISrv, resetService);\n }\n\n ngOnInit(): void { }\n\n ngOnChanges(changes: SimpleChanges): void { }\n\n getPageData() {\n this.pageConfig = {\n type: this.config.formType,\n id: this.dataId,\n formId: this.formId,\n moduleCode: this.config.moduleCode,\n api: this.config?.api,\n argInfo: null,\n };\n\n if (this.config.relationId!!) {\n this.pageConfig['relationId'] = this.config.relationId;\n }\n\n if (this.config.argInfo!!) {\n this.pageConfig.argInfo = _.cloneDeep(this.config.argInfo);\n }\n\n this.getPageConfig();\n }\n\n headerDataLoadAfter(e: any) {\n this.headerLoading = false;\n }\n\n override formDataLoadAfter() {\n this.headerDefaultConfig = null;\n if (this.designBasic!! && this.designBasic?.izHeader == true) {\n this.headerDefaultConfig = {\n headerId: this.designBasic.headerId,\n id: this.config.id,\n rd: Math.random(),\n };\n } else {\n this.headerLoading = false;\n }\n }\n\n override modelThrowDataBefore() {\n this.headerDynamicConfig = null;\n if (this.throwData!!) {\n let exist: boolean = false;\n Object.keys(this.throwData).forEach((key: any) => {\n if (this.throwData[key] != undefined && this.throwData[key] != null) {\n exist = true;\n }\n });\n if (exist) {\n if (this.designBasic?.izHeader == true) {\n this.headerDynamicConfig = { headerId: this.designBasic.headerId, model: this.throwData, rd: Math.random() };\n } else {\n this.headerLoading = false;\n }\n }\n }\n }\n\n saveData() {\n if (this.config.formType == 'ADD') {\n this.save();\n } else {\n if (!this.form.valid) {\n return;\n }\n this.bttonSaveEvent.emit(this.model);\n }\n }\n}\n","<nz-spin [nzSpinning]=\"loading == true || headerLoading == true\" nzTip=\"拼命加载中...\" class=\"deon-list-spin\">\n <ng-container *ngIf=\"pageConfig!!\">\n <div class=\"form-header\"\n *ngIf=\"designBasic!! && designBasic?.izHeader == true && (headerDefaultConfig!! || headerDynamicConfig!!)\">\n <card-main [defaultConfig]=\"headerDefaultConfig\" [dynamicConfig]=\"headerDynamicConfig\"\n (pageLoadAfter)=\"headerDataLoadAfter($event)\"></card-main>\n </div>\n <div class=\"form-info\">\n <form [formGroup]=\"form\" (ngSubmit)=\"saveData()\" #defaultForm>\n <div class=\"deon-from\">\n <ng-container *ngIf=\"fields && fields.length > 0; else emptyPage\">\n <formly-form [model]=\"model\" [fields]=\"fields\" [options]=\"options\" [form]=\"form\"> </formly-form>\n </ng-container>\n <ng-template #emptyPage>\n <nz-empty *ngIf=\"loading !== true\"></nz-empty>\n </ng-template>\n </div>\n <div class=\"deon-button\">\n <div class=\"bottom-left\">\n <ng-content select=\"[name=button-left]\"></ng-content>\n </div>\n <div class=\"bottom-right\">\n <ng-content select=\"[name=button-right]\"></ng-content>\n <ng-container\n *ngIf=\"pageConfig.type != 'VIEW' && (config.effectStatus == null || config.effectStatus == 'DRAFT')\">\n <button nz-button nzType=\"default\" (click)=\"btnClose()\" type=\"button\"><i nz-icon\n nzType=\"reload\"></i>重置</button>\n <ng-container *ngIf=\"config.formType == 'ADD'\">\n <button nz-button nzType=\"primary\" id=\"SAVE\"><i nz-icon nzType=\"hourglass\"></i>暂存</button>\n </ng-container>\n <ng-container *ngIf=\"config.formType == 'EDIT'\">\n <button nz-button nzType=\"primary\" id=\"SAVE\"><i nz-icon nzType=\"save\"></i>提交</button>\n </ng-container>\n </ng-container>\n </div>\n </div>\n </form>\n </div>\n </ng-container>\n</nz-spin>","import { NgModule } from '@angular/core';\nimport { CommFormMainComponent } from './default/index.component';\nimport { CommFormOnlyOneComponent } from './onlyone/index.component';\nimport { CommFormEmpMainComponent } from './empinfo/index.component';\nimport { CommFormStepComponent } from './step/index.component';\nimport { FormSingleComponent } from './components/single/index.component';\nimport { FormMultipleComponent } from './components/multiple/index.component';\nimport { EmpChildrenComponent } from './components/children/index.component';\n\nconst COMPONENTS: any[] = [\n CommFormMainComponent,\n CommFormEmpMainComponent,\n CommFormOnlyOneComponent,\n FormSingleComponent,\n FormMultipleComponent,\n EmpChildrenComponent,\n CommFormStepComponent,\n];\n\n@NgModule({\n imports: [...COMPONENTS],\n exports: [...COMPONENTS],\n})\nexport class CommFormModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i3","i4","i5","i6","i7","i8","i9","i10","i11","i12","i13","i14","i15","i1","i2","i8.EmpCommmService","i16","i17"],"mappings":"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"}
package/package.json CHANGED
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "name": "@ebuilding/runtime",
3
- "version": "3.0.9",
3
+ "version": "3.1.0",
4
4
  "dependencies": {
5
- "@ebuilding/base": "3.0.9",
6
- "@ebuilding/abc": "3.0.9",
7
- "@ebuilding/biz-comm": "3.0.9",
8
- "@ebuilding/biz-form": "3.0.9",
9
- "@ebuilding/biz-list": "3.0.9",
10
- "@ebuilding/chart": "3.0.9",
11
- "@ebuilding/report": "3.0.9",
5
+ "@ebuilding/base": "3.1.0",
6
+ "@ebuilding/abc": "3.1.0",
7
+ "@ebuilding/biz-comm": "3.1.0",
8
+ "@ebuilding/biz-form": "3.1.0",
9
+ "@ebuilding/biz-list": "3.1.0",
10
+ "@ebuilding/chart": "3.1.0",
11
+ "@ebuilding/report": "3.1.0",
12
12
  "@ebuilding-form/core": "20.0.0",
13
13
  "screenfull": "^6.0.2",
14
14
  "tslib": "^2.3.0"
@@ -43,14 +43,14 @@
43
43
  "types": "./e-web/index.d.ts",
44
44
  "default": "./fesm2022/e-web.mjs"
45
45
  },
46
- "./exception": {
47
- "types": "./exception/index.d.ts",
48
- "default": "./fesm2022/exception.mjs"
49
- },
50
46
  "./external": {
51
47
  "types": "./external/index.d.ts",
52
48
  "default": "./fesm2022/external.mjs"
53
49
  },
50
+ "./exception": {
51
+ "types": "./exception/index.d.ts",
52
+ "default": "./fesm2022/exception.mjs"
53
+ },
54
54
  "./home": {
55
55
  "types": "./home/index.d.ts",
56
56
  "default": "./fesm2022/home.mjs"
@@ -63,38 +63,34 @@
63
63
  "types": "./layout/index.d.ts",
64
64
  "default": "./fesm2022/layout.mjs"
65
65
  },
66
- "./comm/default": {
67
- "types": "./comm/default/index.d.ts",
68
- "default": "./fesm2022/comm.default.mjs"
66
+ "./comm/form": {
67
+ "types": "./comm/form/index.d.ts",
68
+ "default": "./fesm2022/comm.form.mjs"
69
69
  },
70
70
  "./comm/list": {
71
71
  "types": "./comm/list/index.d.ts",
72
72
  "default": "./fesm2022/comm.list.mjs"
73
73
  },
74
- "./comm/form": {
75
- "types": "./comm/form/index.d.ts",
76
- "default": "./fesm2022/comm.form.mjs"
74
+ "./comm/default": {
75
+ "types": "./comm/default/index.d.ts",
76
+ "default": "./fesm2022/comm.default.mjs"
77
77
  },
78
78
  "./comm/page": {
79
79
  "types": "./comm/page/index.d.ts",
80
80
  "default": "./fesm2022/comm.page.mjs"
81
81
  },
82
- "./e-web/extend": {
83
- "types": "./e-web/extend/index.d.ts",
84
- "default": "./fesm2022/e-web-extend.mjs"
85
- },
86
82
  "./comm/tree": {
87
83
  "types": "./comm/tree/index.d.ts",
88
84
  "default": "./fesm2022/comm.tree.mjs"
89
85
  },
86
+ "./e-web/extend": {
87
+ "types": "./e-web/extend/index.d.ts",
88
+ "default": "./fesm2022/e-web-extend.mjs"
89
+ },
90
90
  "./e-web/form": {
91
91
  "types": "./e-web/form/index.d.ts",
92
92
  "default": "./fesm2022/e-web-form.mjs"
93
93
  },
94
- "./e-web/list": {
95
- "types": "./e-web/list/index.d.ts",
96
- "default": "./fesm2022/e-web-list.mjs"
97
- },
98
94
  "./e-web/report": {
99
95
  "types": "./e-web/report/index.d.ts",
100
96
  "default": "./fesm2022/e-web-report.mjs"
@@ -103,6 +99,10 @@
103
99
  "types": "./e-web/report-table/index.d.ts",
104
100
  "default": "./fesm2022/e-web-report-table.mjs"
105
101
  },
102
+ "./e-web/list": {
103
+ "types": "./e-web/list/index.d.ts",
104
+ "default": "./fesm2022/e-web-list.mjs"
105
+ },
106
106
  "./e-web/single": {
107
107
  "types": "./e-web/single/index.d.ts",
108
108
  "default": "./fesm2022/e-web-single.mjs"