@ebuilding/biz-comm 3.3.2 → 3.3.4
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.
- package/components/filter/src/default/index.d.ts +10 -0
- package/components/formula/src/rule-event/index.d.ts +2 -0
- package/fesm2022/components.filter.mjs +79 -9
- package/fesm2022/components.filter.mjs.map +1 -1
- package/fesm2022/components.formula.mjs +11 -10
- package/fesm2022/components.formula.mjs.map +1 -1
- package/fesm2022/other.formula.mjs +14 -13
- package/fesm2022/other.formula.mjs.map +1 -1
- package/other/formula/src/rule-event/index.d.ts +2 -0
- package/package.json +26 -26
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components.filter.mjs","sources":["../../../../packages/biz-comm/components/filter/src/default/index.ts","../../../../packages/biz-comm/components/filter/src/default/index.html","../../../../packages/biz-comm/components/filter/src/compare-filter/index.ts","../../../../packages/biz-comm/components/filter/src/compare-filter/index.html","../../../../packages/biz-comm/components/filter/src/index.module.ts","../../../../packages/biz-comm/components/filter/components.filter.ts"],"sourcesContent":["import { Component, OnInit, Input, EventEmitter, Output, OnChanges, SimpleChanges } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { _HttpClient } from '@delon/theme';\r\nimport { NzSelectModule } from 'ng-zorro-antd/select';\r\nimport { NzInputModule } from 'ng-zorro-antd/input';\r\nimport { NzInputNumberModule } from 'ng-zorro-antd/input-number';\r\nimport { NzButtonModule } from 'ng-zorro-antd/button';\r\nimport { NzDatePickerModule } from 'ng-zorro-antd/date-picker';\r\nimport { NzIconModule } from 'ng-zorro-antd/icon';\r\n\r\nimport { GramDeonLookUpModule } from '@ebuilding/biz-comm/components/lookup';\r\nimport { ModuleAPI } from '@ebuilding/base/shared.var/shared.constant';\r\nimport { FilterType, CompareType, CompareConditions, BracketType, SpecialField } from '@ebuilding/base/shared.util/static';\r\nimport _ from 'lodash';\r\n\r\n@Component({\r\n selector: 'gram-filter',\r\n templateUrl: './index.html',\r\n styleUrls: ['./index.less'],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n NzSelectModule,\r\n NzInputModule,\r\n NzInputNumberModule,\r\n NzButtonModule,\r\n NzDatePickerModule,\r\n NzIconModule,\r\n GramDeonLookUpModule\r\n ]\r\n})\r\nexport class GramDeonFilterComponent implements OnInit, OnChanges {\n _data: any = null;\r\n loading: boolean = true;\r\n listItem: any[] = [];\r\n\r\n @Input() title: any = null;\r\n\r\n @Input() data: any = null;\r\n\r\n tableData: any[] = [];\n filterData: any[] = [];\n argumentData: any[] = [];\n itemOptions: any = {};\r\n\r\n @Output() dataChange: EventEmitter<any> = new EventEmitter();\r\n FilterTypeData: any[] = FilterType();\r\n BracketTypeData: any[] = BracketType();\r\n SpecialFieldData: any[] = SpecialField();\r\n CompareTypeData: any[] = CompareType();\r\n CompareConditionsData: any[] = CompareConditions().filter((item: any) => {\n return item.value != 'IN' && item.value != 'LIKE' && item.value != 'LEFT_LIKE' && item.value != 'RIGHT_LIKE';\n });\n readonly DateValueModeData: any[] = [\n { value: 'FIXED', label: '固定日期' },\n { value: '${today}', label: '运行当天' },\n { value: '${monthStart}', label: '当月月初' },\n { value: '${nextMonthStart}', label: '下月月初' },\n { value: '${monthEnd}', label: '当月月末' },\n ];\n\r\n constructor(public http: _HttpClient) { }\r\n\r\n ngOnInit() { }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['data']) {\r\n if (this.data!! && this.data.tableData!!) {\r\n this.tableData = _.cloneDeep(this.data.tableData);\n this.argumentData = Array.isArray(this.data.argumentData) ? _.cloneDeep(this.data.argumentData) : [];\n if (this.data.filterData!! && this.data.filterData.length > 0) {\r\n this.data.filterData.forEach((item: any) => {\r\n let arrTable: any[] = this.tableData.filter((table: any) => {\r\n return table.code == item.cellTable;\r\n });\r\n if (arrTable!! && arrTable.length > 0) {\r\n if (arrTable[0].listField!! && arrTable[0].listField.length > 0 && item.cellField!!) {\r\n let arrField: any[] = arrTable[0].listField.filter((field: any) => {\r\n return field.code == item.cellField;\r\n });\r\n if (arrField!! && arrField.length > 0) {\n item['fieldType'] = arrField[0].type;\n this.normalizeDateValue(item);\n }\n }\r\n this.initValueConfig(item, arrTable[0].name);\r\n }\r\n });\r\n }\r\n this.filterData = this.data.filterData;\r\n this.initPageData();\r\n }\r\n }\r\n }\r\n\r\n initPageData() {\r\n let listItemId: any[] = [];\r\n this.tableData.forEach((table: any) => {\r\n if (table!! && table.listField!! && table.listField.length > 0) {\r\n table.listField.forEach((field: any) => {\r\n if (field.type == 'ITEM' && field.refId!!) {\r\n listItemId.push(field.refId);\r\n }\r\n });\r\n }\r\n });\r\n listItemId = [...new Set(listItemId)];\r\n if (listItemId != null && listItemId.length > 0) {\r\n this.http.post(`${ModuleAPI.user}/user/sys/listItemByIds`, { idList: listItemId }).subscribe((res: any) => {\r\n if (res.success && res.result!! && res.result.length > 0) {\r\n res.result.forEach((item: any) => {\r\n this.itemOptions[item.id] = item.listDetail;\r\n });\r\n }\r\n });\r\n }\r\n }\r\n\r\n addCondition() {\r\n if (this.filterData!!) {\r\n this.filterData = [...this.filterData, {}];\r\n } else {\r\n this.filterData = [{}];\r\n }\r\n this.dataChange.emit(this.filterData);\r\n }\r\n\r\n delCondition(i: number) {\r\n if (this.filterData!!) {\r\n this.filterData = this.filterData.filter((a: any, index: number) => {\r\n return index != i;\r\n });\r\n }\r\n this.dataChange.emit(this.filterData);\r\n }\r\n\r\n getFieldData(cellTable: any) {\r\n let fieldArray: any[] = [];\r\n this.tableData.forEach((item: any) => {\r\n if (item.code == cellTable) {\r\n fieldArray = item.listField;\r\n }\r\n });\r\n return fieldArray;\r\n }\r\n\r\n /**\r\n * 获取常用参数\r\n * @param cellTable\r\n * @param cellField\r\n * @returns\r\n */\r\n getItemData(cellTable: any, cellField: any) {\r\n let array: any[] = [];\r\n this.tableData.forEach((table: any) => {\r\n if (table.code == cellTable) {\r\n table.listField.forEach((field: any) => {\r\n if (field.type == 'ITEM' && field.code == cellField && field.refId!!) {\r\n if (this.itemOptions!! && this.itemOptions[field.refId]!!) {\r\n array = this.itemOptions[field.refId];\r\n }\r\n }\r\n });\r\n }\r\n });\r\n return array;\r\n }\r\n\r\n tableChange(e: any, item: any) {\r\n item['cellField'] = null;\r\n item['fieldType'] = null;\r\n item['cellValue'] = null;\r\n item['cellMultiple'] = null;\r\n }\r\n\r\n fieldChange(e: any, item: any) {\r\n item['fieldType'] = null;\r\n item['cellValue'] = null;\r\n item['cellMultiple'] = null;\r\n item['cellValueConfig'] = null;\r\n if (item.cellTable!! && item.cellField!!) {\r\n this.tableData.forEach((t: any) => {\r\n if (t.code == item.cellTable) {\r\n t.listField.forEach((f: any) => {\r\n if (f.code == item.cellField) {\n item.fieldType = f.type;\n item.cellMultiple = f.multiple;\n this.normalizeDateValue(item);\n\n this.initValueConfig(item, t.name);\n }\r\n });\r\n }\r\n });\r\n }\r\n }\r\n\r\n operationChange(e: any, item: any) {\n if (item.cellOperation == 'SQL_RULES') {\r\n item['cellTable'] = null;\r\n item['cellField'] = null;\r\n item['parameterTable'] = null;\r\n item['parameterField'] = null;\r\n item['cellValue'] = null;\r\n }\r\n }\r\n\r\n refDataChange(e: any, item: any) {\r\n if (e!! && e.id!!) {\r\n item['cellValue'] = e.id;\r\n item['cellValueInfo'] = e;\r\n } else {\r\n item['cellValue'] = null;\r\n item['cellValueInfo'] = null;\r\n }\r\n }\r\n\r\n initValueConfig(item: any, tableName: any) {\n item.cellValueConfig = {\r\n type: 'ref2',\r\n label: tableName,\r\n selectType: 'single',\r\n isRowData: true,\r\n parameter: {\r\n tableCode: item.cellTable,\r\n fieldCode: item.cellField,\r\n },\r\n };\n }\n\n /** 返回筛选右值来源;模板参数使用结构化表达式保存,运行时仍通过预编译参数绑定。 */\n valueSourceMode(item: any): 'FIXED' | 'ARGUMENT' {\n return /^\\$\\{(?:argument|arg)\\.[A-Za-z][A-Za-z0-9_]{0,63}}$/.test(String(item?.cellValue || '').trim())\n ? 'ARGUMENT'\n : 'FIXED';\n }\n\n /** 切换筛选右值来源时清理上一种来源的值,避免固定值和模板参数相互污染。 */\n valueSourceModeChange(mode: 'FIXED' | 'ARGUMENT', item: any) {\n item.cellValue = mode === 'ARGUMENT' && this.argumentData.length\n ? `\\${argument.${this.argumentData[0].argumentCode}}`\n : null;\n }\n\n argumentCode(item: any): string | null {\n const match = /^\\$\\{(?:argument|arg)\\.([A-Za-z][A-Za-z0-9_]{0,63})}$/.exec(String(item?.cellValue || '').trim());\n return match ? match[1] : null;\n }\n\n argumentChange(code: string, item: any) {\n item.cellValue = code ? `\\${argument.${code}}` : null;\n }\n\n /**\n * 判断字段是否使用日期编辑器,DATE 和 DATETIME 使用同一套日期值处理逻辑。\n */\n isDateField(fieldType: any): boolean {\n return fieldType === 'DATE' || fieldType === 'DATETIME';\n }\n\n /**\n * 返回日期值的选择模式。动态日期变量使用下拉选项,避免直接传给日期组件造成 Invalid time value。\n */\n dateValueMode(value: any): string {\n const text = typeof value === 'string' ? value.trim() : '';\n return this.DateValueModeData.some((item: any) => item.value !== 'FIXED' && item.value === text)\n ? text\n : 'FIXED';\n }\n\n /**\n * 切换日期来源。选择固定日期时清空动态变量,等待用户重新选择具体日期。\n */\n dateValueModeChange(mode: string, item: any) {\n if (mode === 'FIXED') {\n item.cellValue = item.cellValue instanceof Date && !Number.isNaN(item.cellValue.getTime())\n ? item.cellValue\n : null;\n return;\n }\n item.cellValue = mode;\n }\n\n /**\n * 将接口返回的日期字符串转换为日期组件需要的 Date,动态日期变量保持原值。\n */\n private normalizeDateValue(item: any) {\n if (!this.isDateField(item?.fieldType) || item?.cellValue == null || item.cellValue === '') {\n return;\n }\n if (this.dateValueMode(item.cellValue) !== 'FIXED') {\n return;\n }\n if (this.valueSourceMode(item) === 'ARGUMENT') {\n return;\n }\n if (item.cellValue instanceof Date) {\n if (Number.isNaN(item.cellValue.getTime())) {\n item.cellValue = null;\n }\n return;\n }\n const parsed = this.parseDate(item.cellValue);\n item.cellValue = parsed;\n }\n\n /**\n * 兼容数据库常见的 yyyy-MM-dd、yyyy-MM-dd HH:mm:ss 和 ISO 日期格式。\n */\n private parseDate(value: any): Date | null {\n const text = String(value).trim();\n const dateOnly = /^(\\d{4})-(\\d{2})-(\\d{2})$/.exec(text);\n if (dateOnly) {\n const date = new Date(Number(dateOnly[1]), Number(dateOnly[2]) - 1, Number(dateOnly[3]));\n return Number.isNaN(date.getTime()) ? null : date;\n }\n const normalized = text.replace(' ', 'T');\n const date = new Date(normalized);\n return Number.isNaN(date.getTime()) ? null : date;\n }\n}\n","<div class=\"header-box\">\r\n {{title}}\r\n <a (click)=\"addCondition()\">\r\n <i nz-icon nzType=\"plus-circle\"></i>\r\n 新增\r\n </a>\r\n</div>\r\n<div class=\"body-box\">\r\n <ng-container *ngIf=\"filterData!! && filterData.length>0;else tmpEmpty\">\r\n <ng-container *ngFor=\"let item of filterData;let i=index\">\r\n <ul>\r\n <li class=\"leftBracket\">\r\n <nz-select [(ngModel)]=\"item.leftBracket\" nzAllowClear>\r\n <ng-container *ngFor=\"let option of BracketTypeData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n <li class=\"leftBracket\">\r\n <nz-select [(ngModel)]=\"item.leftBracket2\" nzAllowClear>\r\n <ng-container *ngFor=\"let option of BracketTypeData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n <li class=\"cellOperation\">\r\n <nz-select [(ngModel)]=\"item.cellOperation\" nzAllowClear (ngModelChange)=\"operationChange($event,item)\">\r\n <ng-container *ngFor=\"let option of CompareConditionsData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n <li *ngIf=\"item?.cellOperation!='SQL_RULES'\" class=\"conditionTable\">\r\n <nz-select [(ngModel)]=\"item.cellTable\" nzAllowClear (ngModelChange)=\"tableChange($event,item)\">\r\n <ng-container *ngFor=\"let option of tableData\">\r\n <nz-option [nzValue]=\"option.code\" [nzLabel]=\"option.name\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n\r\n <li *ngIf=\"item?.cellOperation!='SQL_RULES'\" class=\"conditionField\">\r\n <nz-select [(ngModel)]=\"item.cellField\" nzAllowClear (ngModelChange)=\"fieldChange($event,item)\">\r\n <ng-container *ngFor=\"let option of getFieldData(item.cellTable)\">\r\n <nz-option [nzValue]=\"option.code\" [nzLabel]=\"option.name\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n <li *ngIf=\"item?.cellOperation!='SQL_RULES'\">\r\n <ng-container *ngIf=\"item.cellTable!! && item.cellField!! && item.fieldType!!\">\r\n <div class=\"cellValue\" [class.date-cell-value]=\"isDateField(item.fieldType)\">\n <nz-select\n *ngIf=\"argumentData.length\"\n class=\"value-source-select\"\n [ngModel]=\"valueSourceMode(item)\"\n (ngModelChange)=\"valueSourceModeChange($event, item)\"\n >\n <nz-option nzValue=\"FIXED\" nzLabel=\"固定值\"></nz-option>\n <nz-option nzValue=\"ARGUMENT\" nzLabel=\"模板参数\"></nz-option>\n </nz-select>\n <nz-select\n *ngIf=\"argumentData.length && valueSourceMode(item) === 'ARGUMENT'\"\n [ngModel]=\"argumentCode(item)\"\n (ngModelChange)=\"argumentChange($event, item)\"\n nzPlaceHolder=\"请选择模板参数\"\n >\n <nz-option\n *ngFor=\"let argument of argumentData\"\n [nzValue]=\"argument.argumentCode\"\n [nzLabel]=\"argument.argumentName\"\n ></nz-option>\n </nz-select>\n <ng-container *ngIf=\"valueSourceMode(item) === 'FIXED'\">\n <ng-container [ngSwitch]=\"item.fieldType\">\n <ng-container *ngSwitchCase=\"'BOOLEAN'\">\r\n <nz-select [(ngModel)]=\"item.cellValue\">\r\n <nz-option nzValue=\"0\" nzLabel=\"否\"></nz-option>\r\n <nz-option nzValue=\"1\" nzLabel=\"是\"></nz-option>\r\n </nz-select>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'DATETIME'\">\n <ng-container *ngTemplateOutlet=\"dateValueEditor; context: { $implicit: item }\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'DATE'\">\n <ng-container *ngTemplateOutlet=\"dateValueEditor; context: { $implicit: item }\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'INT'\">\r\n <nz-input-number [(ngModel)]=\"item.cellValue\" [nzStep]=\"1\" [nzPrecision]=\"0\"></nz-input-number>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'FLOAT'\">\r\n <nz-input-number [(ngModel)]=\"item.cellValue\" [nzStep]=\"1\" [nzPrecision]=\"2\"></nz-input-number>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'ITEM'\">\r\n <ng-container *ngIf=\"item?.cellMultiple==true;else tmp1\">暂不支持多选</ng-container>\r\n <ng-template #tmp1>\r\n <nz-select [(ngModel)]=\"item.cellValue\" nzAllowClear>\r\n <ng-container *ngFor=\"let option of getItemData(item.cellTable,item.cellField)\">\r\n <nz-option [nzValue]=\"option.code\" [nzLabel]=\"option.name\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </ng-template>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'REF'\">\r\n <ng-container *ngIf=\"item?.cellMultiple==true;else tmp2\">暂不支持多选</ng-container>\r\n <ng-template #tmp2>\r\n <gram-lookup\r\n [config]=\"item.cellValueConfig\"\r\n [data]=\"item.cellValueInfo\"\r\n (valueChange)=\"refDataChange($event,item)\"\r\n ></gram-lookup>\r\n </ng-template>\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n <input nz-input [(ngModel)]=\"item.cellValue\" />\r\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n </ng-container>\r\n </li>\r\n <li *ngIf=\"item?.cellOperation=='SQL_RULES' \">\r\n <div class=\"cellValue\">\r\n <input nz-input [(ngModel)]=\"item.cellValue\" />\r\n </div>\r\n </li>\r\n <li class=\"rightBracket\">\r\n <nz-select [(ngModel)]=\"item.rightBracket\" nzAllowClear>\r\n <ng-container *ngFor=\"let option of BracketTypeData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n <li class=\"rightBracket\">\r\n <nz-select [(ngModel)]=\"item.rightBracket2\" nzAllowClear>\r\n <ng-container *ngFor=\"let option of BracketTypeData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n <li class=\"cellFunction\">\r\n <nz-select [(ngModel)]=\"item.cellFunction\" nzAllowClear>\r\n <ng-container *ngFor=\"let option of FilterTypeData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n <div class=\"btnDel\">\r\n <a (click)=\"delCondition(i)\">\r\n <i nz-icon nzType=\"delete\"></i>\r\n </a>\r\n </div>\r\n </ul>\r\n </ng-container>\r\n </ng-container>\r\n</div>\n\n<ng-template #dateValueEditor let-dateItem>\n <ng-container\n *ngIf=\"dateItem?.cellOperation!='DATE_YEAR'\n && dateItem?.cellOperation!='DATE_MONTH'\n && dateItem?.cellOperation!='DATE_WEEK'\n && dateItem?.cellOperation!='DATE_QUARTER'\"\n >\n <div class=\"date-value-editor\" [class.dynamic-value]=\"dateValueMode(dateItem.cellValue) !== 'FIXED'\">\n <nz-select\n [ngModel]=\"dateValueMode(dateItem.cellValue)\"\n (ngModelChange)=\"dateValueModeChange($event, dateItem)\"\n nzPlaceHolder=\"日期来源\"\n >\n <nz-option\n *ngFor=\"let option of DateValueModeData\"\n [nzValue]=\"option.value\"\n [nzLabel]=\"option.label\"\n ></nz-option>\n </nz-select>\n <nz-date-picker\n *ngIf=\"dateValueMode(dateItem.cellValue) === 'FIXED'\"\n [(ngModel)]=\"dateItem.cellValue\"\n [nzShowTime]=\"dateItem.fieldType === 'DATETIME'\"\n [nzFormat]=\"dateItem.fieldType === 'DATETIME' ? 'yyyy-MM-dd HH:mm:ss' : 'yyyy-MM-dd'\"\n nzPlacement=\"bottomLeft\"\n nzPlaceHolder=\"请选择日期\"\n [nzAllowClear]=\"true\"\n ></nz-date-picker>\n </div>\n </ng-container>\n</ng-template>\n\n<ng-template #tmpEmpty>\n <div class=\"empty\">\r\n <div class=\"image\"><img src=\"assets/images/default/empty2.png\" /></div>\r\n </div>\r\n</ng-template>\r\n","import { Component, OnInit, Input, EventEmitter, Output, OnChanges, SimpleChanges } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { NzSelectModule } from 'ng-zorro-antd/select';\r\nimport { NzInputModule } from 'ng-zorro-antd/input';\r\nimport { NzInputNumberModule } from 'ng-zorro-antd/input-number';\r\nimport { NzButtonModule } from 'ng-zorro-antd/button';\r\nimport { NzDatePickerModule } from 'ng-zorro-antd/date-picker';\r\nimport { NzIconModule } from 'ng-zorro-antd/icon';\r\n\r\nimport { GramDeonLookUpModule } from '@ebuilding/biz-comm/components/lookup';\r\nimport { FilterType, CompareType, CompareConditions, BracketType, SpecialField, CompareFieldType } from '@ebuilding/base/shared.util/static';\r\nimport _ from 'lodash';\r\n\r\nexport interface IData {\r\n tableCode?: any;\r\n tableFieldData: any[];\r\n sourceTableData: any[];\r\n fieldOptions: any;\r\n filterData: any[];\r\n}\r\n\r\n@Component({\r\n selector: 'gram-filter-compare',\r\n templateUrl: './index.html',\r\n styleUrls: ['./index.less'],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n NzSelectModule,\r\n NzInputModule,\r\n NzInputNumberModule,\r\n NzButtonModule,\r\n NzDatePickerModule,\r\n NzIconModule,\r\n GramDeonLookUpModule\r\n ]\r\n})\r\nexport class GramFilterCompareComponent implements OnInit, OnChanges {\r\n loading: boolean = true;\r\n\r\n /**\r\n * 常量\r\n */\r\n FilterTypeData: any[] = FilterType();\r\n BracketTypeData: any[] = BracketType();\r\n SpecialFieldData: any[] = SpecialField();\r\n CompareTypeData: any[] = CompareType();\r\n CompareFieldTypeData: any[] = CompareFieldType();\r\n CompareConditionsData: any[] = CompareConditions().filter((item: any) => {\r\n return item.value != 'IN' && item.value != 'LIKE' && item.value != 'LEFT_LIKE' && item.value != 'RIGHT_LIKE';\r\n });\r\n\r\n /**\r\n * 基础数据\r\n */\r\n tableFieldData: any[];\r\n sourceTableData: any[];\r\n fieldOptions: any;\r\n filterData: any[] = [];\r\n\r\n @Input() title: any = null;\r\n\r\n @Input() data: IData;\r\n\r\n @Output() dataChange: EventEmitter<any> = new EventEmitter();\r\n\r\n constructor() { }\r\n\r\n ngOnInit() { }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['data']) {\r\n if (this.data!!) {\r\n this.tableFieldData = _.cloneDeep(this.data.tableFieldData);\r\n this.sourceTableData = _.cloneDeep(this.data.sourceTableData);\r\n this.fieldOptions = _.cloneDeep(this.data.fieldOptions);\r\n this.filterData = this.data.filterData;\r\n if (this.filterData!! && this.filterData.length > 0) {\r\n this.filterData.forEach((a: any) => {\r\n this.tableFieldData.forEach((b: any) => {\r\n if (b.value == a.cellField) {\r\n a['cellFieldType'] = b.type;\r\n a['cellFieldMultiple'] = b.multiple;\r\n if (this.fieldOptions!! && this.fieldOptions[a.cellField]!!) {\r\n a['cellFieldOptions'] = this.fieldOptions[a.cellField];\r\n }\r\n }\r\n });\r\n });\r\n }\r\n }\r\n }\r\n }\r\n\r\n addCondition() {\r\n if (this.filterData!!) {\r\n this.filterData = [\r\n ...this.filterData,\r\n {\r\n cellOperation: 'EQ',\r\n cellType: 'FIELD',\r\n },\r\n ];\r\n } else {\r\n this.filterData = [\r\n {\r\n cellOperation: 'EQ',\r\n cellType: 'FIELD',\r\n },\r\n ];\r\n }\r\n this.dataChange.emit(this.filterData);\r\n }\r\n\r\n delCondition(i: number) {\r\n if (this.filterData!!) {\r\n this.filterData = this.filterData.filter((a: any, index: number) => {\r\n return index != i;\r\n });\r\n }\r\n this.dataChange.emit(this.filterData);\r\n }\r\n\r\n cellFieldChange(e: any, item: any) {\r\n item['cellFieldType'] = null;\r\n item['cellFieldOptions'] = null;\r\n item['cellFieldMultiple'] = null;\r\n if (item.cellField!!) {\r\n this.tableFieldData.forEach((a: any) => {\r\n if (a.value == item.cellField) {\r\n item['cellFieldType'] = a.type;\r\n item['cellFieldMultiple'] = a.multiple;\r\n if (this.fieldOptions!! && this.fieldOptions[item.cellField]!!) {\r\n item['cellFieldOptions'] = this.fieldOptions[item.cellField];\r\n }\r\n this.initValueConfig(item, a.name);\r\n }\r\n });\r\n }\r\n this.dataChange.emit(this.filterData);\r\n }\r\n\r\n tableChange(e: any, item: any) {\r\n item['parameterField'] = null;\r\n item['cellValue'] = null;\r\n this.dataChange.emit(this.filterData);\r\n }\r\n\r\n getFieldData(parameterTable: any) {\r\n let arr: any[] = [];\r\n this.sourceTableData.forEach((item: any) => {\r\n if (item.code == parameterTable) {\r\n arr = item.listField;\r\n }\r\n });\r\n return arr;\r\n }\r\n\r\n operationChange(e: any, item: any) {\r\n if (item.cellOperation == 'SQL_RULES') {\r\n item['cellTable'] = null;\r\n item['cellField'] = null;\r\n item['parameterTable'] = null;\r\n item['parameterField'] = null;\r\n item['cellValue'] = null;\r\n }\r\n this.dataChange.emit(this.filterData);\r\n }\r\n\r\n refDataChange(e: any, item: any) {\r\n if (e!! && e.id!!) {\r\n item['cellValue'] = e.id;\r\n item['cellValueInfo'] = e;\r\n } else {\r\n item['cellValue'] = null;\r\n item['cellValueInfo'] = null;\r\n }\r\n }\r\n\r\n initValueConfig(item: any, tableName: any) {\r\n item.cellValueConfig = {\r\n type: 'ref2',\r\n label: tableName,\r\n selectType: 'single',\r\n isRowData: true,\r\n parameter: {\r\n tableCode: this.data?.tableCode,\r\n fieldCode: item.cellField,\r\n },\r\n };\r\n }\r\n}\r\n","<div class=\"header-box\">\r\n {{title}}\r\n <a (click)=\"addCondition()\">\r\n <i nz-icon nzType=\"plus-circle\"></i>\r\n 新增\r\n </a>\r\n</div>\r\n<div class=\"body-box\">\r\n <ng-container *ngIf=\"filterData!! && filterData.length>0;else tmpEmpty\">\r\n <ng-container *ngFor=\"let item of filterData;let i=index\">\r\n <ul>\r\n <li class=\"leftBracket\">\r\n <nz-select [(ngModel)]=\"item.leftBracket\" nzAllowClear>\r\n <ng-container *ngFor=\"let option of BracketTypeData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n <li class=\"leftBracket\">\r\n <nz-select [(ngModel)]=\"item.leftBracket2\" nzAllowClear>\r\n <ng-container *ngFor=\"let option of BracketTypeData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n\r\n <!-- 字段匹配类型 -->\r\n <li class=\"cellOperation\" *ngIf=\"item?.cellOperation!='SQL_RULES'\">\r\n <nz-select [(ngModel)]=\"item.cellType\">\r\n <ng-container *ngFor=\"let option of CompareFieldTypeData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n\r\n <!-- 字段 -->\r\n <li class=\"cellOperation\" *ngIf=\"item?.cellOperation!='SQL_RULES'\">\r\n <nz-select [(ngModel)]=\"item.cellField\" nzAllowClear (ngModelChange)=\"cellFieldChange($event,item)\">\r\n <ng-container *ngFor=\"let option of tableFieldData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n\r\n <!-- 操作符 -->\r\n <li class=\"cellOperation\">\r\n <nz-select [(ngModel)]=\"item.cellOperation\" nzAllowClear (ngModelChange)=\"operationChange($event,item)\">\r\n <ng-container *ngFor=\"let option of CompareConditionsData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n <ng-container *ngIf=\"item?.cellOperation!='SQL_RULES'\">\r\n <!-- 字段匹配类型--自定义值 -->\r\n <ng-container *ngIf=\"item.cellType=='CUSTOM' && item.cellFieldType!!\">\r\n <ng-container [ngSwitch]=\"item.cellFieldType\">\r\n <ng-container *ngSwitchCase=\"'ITEM'\">\r\n <li class=\"cellOperation\">\r\n <ng-container *ngIf=\"item?.cellFieldMultiple==true;else tmp1\">暂不支持多选</ng-container>\r\n <ng-template #tmp1>\r\n <nz-select [(ngModel)]=\"item.cellValue\">\r\n <ng-container *ngFor=\"let option of item.cellFieldOptions\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </ng-template>\r\n </li>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'BOOLEAN'\">\r\n <li class=\"cellOperation\">\r\n <nz-select [(ngModel)]=\"item.cellValue\">\r\n <ng-container *ngFor=\"let option of item.cellFieldOptions\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'REF'\">\r\n <li class=\"cellOperation\">\r\n <ng-container *ngIf=\"item?.cellFieldMultiple==true;else tmp2\">暂不支持多选</ng-container>\r\n <ng-template #tmp2>\r\n <gram-lookup\r\n [config]=\"item.cellValueConfig\"\r\n [data]=\"item.cellValueInfo\"\r\n (valueChange)=\"refDataChange($event,item)\"\r\n ></gram-lookup>\r\n </ng-template>\r\n </li>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'TEXT'\">\r\n <li class=\"cellOperation\">\r\n <input nz-input [(ngModel)]=\"item.cellValue\" />\r\n </li>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'TEXTAREA'\">\r\n <li class=\"cellOperation\">\r\n <input nz-input [(ngModel)]=\"item.cellValue\" />\r\n </li>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'INT'\">\r\n <li class=\"cellOperation\">\r\n <nz-input-number [(ngModel)]=\"item.cellValue\" [nzStep]=\"1\" [nzPrecision]=\"0\"></nz-input-number>\r\n </li>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'FLOAT'\">\r\n <li class=\"cellOperation\">\r\n <nz-input-number [(ngModel)]=\"item.cellValue\" [nzStep]=\"1\"></nz-input-number>\r\n </li>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'DATETIME'\">\r\n <li class=\"cellOperation\">\r\n <nz-date-picker [(ngModel)]=\"item.cellValue\" nzShowTime nzFormat=\"yyyy-MM-dd HH:mm:ss\"></nz-date-picker>\r\n </li>\r\n </ng-container>\r\n <ng-container *ngSwitchDefault> </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <!-- 字段匹配类型--字段匹配 -->\r\n <ng-container *ngIf=\"item.cellType=='FIELD'\">\r\n <li class=\"conditionTable\">\r\n <nz-select [(ngModel)]=\"item.parameterTable\" nzAllowClear (ngModelChange)=\"tableChange($event,item)\">\r\n <ng-container *ngFor=\"let option of sourceTableData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n\r\n <li class=\"conditionField\">\r\n <nz-select [(ngModel)]=\"item.parameterField\" nzAllowClear>\r\n <ng-container *ngFor=\"let option of getFieldData(item.parameterTable)\">\r\n <nz-option [nzValue]=\"option.code\" [nzLabel]=\"option.name\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <li *ngIf=\"item?.cellOperation=='SQL_RULES' \">\r\n <div class=\"cellValue\">\r\n <input nz-input [(ngModel)]=\"item.cellValue\" />\r\n </div>\r\n </li>\r\n <li class=\"rightBracket\">\r\n <nz-select [(ngModel)]=\"item.rightBracket\" nzAllowClear>\r\n <ng-container *ngFor=\"let option of BracketTypeData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n <li class=\"rightBracket\">\r\n <nz-select [(ngModel)]=\"item.rightBracket2\" nzAllowClear>\r\n <ng-container *ngFor=\"let option of BracketTypeData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n <li class=\"cellFunction\">\r\n <nz-select [(ngModel)]=\"item.cellFunction\" nzAllowClear>\r\n <ng-container *ngFor=\"let option of FilterTypeData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n <div class=\"btnDel\">\r\n <a (click)=\"delCondition(i)\">\r\n <i nz-icon nzType=\"delete\"></i>\r\n </a>\r\n </div>\r\n </ul>\r\n </ng-container>\r\n </ng-container>\r\n</div>\r\n\r\n<ng-template #tmpEmpty>\r\n <div class=\"empty\">\r\n <div class=\"image\"><img src=\"assets/images/default/empty2.png\" /></div>\r\n </div>\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { GramDeonFilterComponent } from './default/index';\r\nimport { GramFilterCompareComponent } from './compare-filter/index';\r\n\r\nconst components: any[] = [GramDeonFilterComponent, GramFilterCompareComponent];\r\n\r\n@NgModule({\r\n imports: [\r\n ...components\r\n ],\r\n exports: [...components],\r\n})\r\nexport class GramDeonFilterModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","i4","i5","i7","i8","i9"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"components.filter.mjs","sources":["../../../../packages/biz-comm/components/filter/src/default/index.ts","../../../../packages/biz-comm/components/filter/src/default/index.html","../../../../packages/biz-comm/components/filter/src/compare-filter/index.ts","../../../../packages/biz-comm/components/filter/src/compare-filter/index.html","../../../../packages/biz-comm/components/filter/src/index.module.ts","../../../../packages/biz-comm/components/filter/components.filter.ts"],"sourcesContent":["import { Component, OnInit, Input, EventEmitter, Output, OnChanges, SimpleChanges } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { _HttpClient } from '@delon/theme';\r\nimport { NzSelectModule } from 'ng-zorro-antd/select';\r\nimport { NzInputModule } from 'ng-zorro-antd/input';\r\nimport { NzInputNumberModule } from 'ng-zorro-antd/input-number';\r\nimport { NzButtonModule } from 'ng-zorro-antd/button';\r\nimport { NzDatePickerModule } from 'ng-zorro-antd/date-picker';\r\nimport { NzIconModule } from 'ng-zorro-antd/icon';\r\n\r\nimport { GramDeonLookUpModule } from '@ebuilding/biz-comm/components/lookup';\r\nimport { ModuleAPI } from '@ebuilding/base/shared.var/shared.constant';\r\nimport { FilterType, CompareType, CompareConditions, BracketType, SpecialField } from '@ebuilding/base/shared.util/static';\r\nimport _ from 'lodash';\r\n\r\n@Component({\r\n selector: 'gram-filter',\r\n templateUrl: './index.html',\r\n styleUrls: ['./index.less'],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n NzSelectModule,\r\n NzInputModule,\r\n NzInputNumberModule,\r\n NzButtonModule,\r\n NzDatePickerModule,\r\n NzIconModule,\r\n GramDeonLookUpModule\r\n ]\r\n})\r\nexport class GramDeonFilterComponent implements OnInit, OnChanges {\n _data: any = null;\r\n loading: boolean = true;\r\n listItem: any[] = [];\r\n\r\n @Input() title: any = null;\r\n\r\n @Input() data: any = null;\r\n\r\n tableData: any[] = [];\n filterData: any[] = [];\n argumentData: any[] = [];\n itemOptions: any = {};\r\n\r\n @Output() dataChange: EventEmitter<any> = new EventEmitter();\r\n FilterTypeData: any[] = FilterType();\r\n BracketTypeData: any[] = BracketType();\r\n SpecialFieldData: any[] = SpecialField();\r\n CompareTypeData: any[] = CompareType();\r\n CompareConditionsData: any[] = CompareConditions().filter((item: any) => {\n return item.value != 'LIKE' && item.value != 'LEFT_LIKE' && item.value != 'RIGHT_LIKE';\n });\n readonly DateValueModeData: any[] = [\n { value: 'FIXED', label: '固定日期' },\n { value: '${today}', label: '运行当天' },\n { value: '${monthStart}', label: '当月月初' },\n { value: '${nextMonthStart}', label: '下月月初' },\n { value: '${monthEnd}', label: '当月月末' },\n ];\n\r\n constructor(public http: _HttpClient) { }\r\n\r\n ngOnInit() { }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['data']) {\r\n if (this.data!! && this.data.tableData!!) {\r\n this.tableData = _.cloneDeep(this.data.tableData);\n this.argumentData = Array.isArray(this.data.argumentData) ? _.cloneDeep(this.data.argumentData) : [];\n if (this.data.filterData!! && this.data.filterData.length > 0) {\r\n this.data.filterData.forEach((item: any) => {\r\n let arrTable: any[] = this.tableData.filter((table: any) => {\r\n return table.code == item.cellTable;\r\n });\r\n if (arrTable!! && arrTable.length > 0) {\r\n if (arrTable[0].listField!! && arrTable[0].listField.length > 0 && item.cellField!!) {\r\n let arrField: any[] = arrTable[0].listField.filter((field: any) => {\r\n return field.code == item.cellField;\r\n });\r\n if (arrField!! && arrField.length > 0) {\n item['fieldType'] = arrField[0].type;\n item['cellMultiple'] = arrField[0].multiple;\n this.normalizeDateValue(item);\n }\n }\n this.initValueConfig(item, arrTable[0].name);\n this.restoreValue(item);\n }\r\n });\r\n }\r\n this.filterData = this.data.filterData;\r\n this.initPageData();\r\n }\r\n }\r\n }\r\n\r\n initPageData() {\r\n let listItemId: any[] = [];\r\n this.tableData.forEach((table: any) => {\r\n if (table!! && table.listField!! && table.listField.length > 0) {\r\n table.listField.forEach((field: any) => {\r\n if (field.type == 'ITEM' && field.refId!!) {\r\n listItemId.push(field.refId);\r\n }\r\n });\r\n }\r\n });\r\n listItemId = [...new Set(listItemId)];\r\n if (listItemId != null && listItemId.length > 0) {\r\n this.http.post(`${ModuleAPI.user}/user/sys/listItemByIds`, { idList: listItemId }).subscribe((res: any) => {\r\n if (res.success && res.result!! && res.result.length > 0) {\r\n res.result.forEach((item: any) => {\r\n this.itemOptions[item.id] = item.listDetail;\r\n });\r\n }\r\n });\r\n }\r\n }\r\n\r\n addCondition() {\r\n if (this.filterData!!) {\r\n this.filterData = [...this.filterData, {}];\r\n } else {\r\n this.filterData = [{}];\r\n }\r\n this.dataChange.emit(this.filterData);\r\n }\r\n\r\n delCondition(i: number) {\r\n if (this.filterData!!) {\r\n this.filterData = this.filterData.filter((a: any, index: number) => {\r\n return index != i;\r\n });\r\n }\r\n this.dataChange.emit(this.filterData);\r\n }\r\n\r\n getFieldData(cellTable: any) {\r\n let fieldArray: any[] = [];\r\n this.tableData.forEach((item: any) => {\r\n if (item.code == cellTable) {\r\n fieldArray = item.listField;\r\n }\r\n });\r\n return fieldArray;\r\n }\r\n\r\n /**\r\n * 获取常用参数\r\n * @param cellTable\r\n * @param cellField\r\n * @returns\r\n */\r\n getItemData(cellTable: any, cellField: any) {\r\n let array: any[] = [];\r\n this.tableData.forEach((table: any) => {\r\n if (table.code == cellTable) {\r\n table.listField.forEach((field: any) => {\r\n if (field.type == 'ITEM' && field.code == cellField && field.refId!!) {\r\n if (this.itemOptions!! && this.itemOptions[field.refId]!!) {\r\n array = this.itemOptions[field.refId];\r\n }\r\n }\r\n });\r\n }\r\n });\r\n return array;\r\n }\r\n\r\n tableChange(e: any, item: any) {\r\n item['cellField'] = null;\r\n item['fieldType'] = null;\r\n item['cellValue'] = null;\n item['cellMultiple'] = null;\n item['cellValueInfo'] = null;\n item['cellValues'] = null;\n }\r\n\r\n fieldChange(e: any, item: any) {\r\n item['fieldType'] = null;\r\n item['cellValue'] = null;\r\n item['cellMultiple'] = null;\n item['cellValueConfig'] = null;\n item['cellValueInfo'] = null;\n item['cellValues'] = null;\n if (item.cellTable!! && item.cellField!!) {\r\n this.tableData.forEach((t: any) => {\r\n if (t.code == item.cellTable) {\r\n t.listField.forEach((f: any) => {\r\n if (f.code == item.cellField) {\n item.fieldType = f.type;\n item.cellMultiple = f.multiple;\n this.normalizeDateValue(item);\n\n this.initValueConfig(item, t.name);\n this.restoreValue(item);\n }\r\n });\r\n }\r\n });\r\n }\r\n }\r\n\r\n operationChange(e: any, item: any) {\n if (item.cellOperation == 'SQL_RULES') {\r\n item['cellTable'] = null;\r\n item['cellField'] = null;\r\n item['parameterTable'] = null;\r\n item['parameterField'] = null;\n item['cellValue'] = null;\n item['cellValueInfo'] = null;\n item['cellValues'] = null;\n return;\n }\n this.initValueConfig(item, this.getTableName(item.cellTable));\n this.restoreValue(item);\n }\n\n refDataChange(e: any, item: any) {\n const values = (Array.isArray(e) ? e : [e]).filter((value: any) => value && value.id);\n if (!values.length) {\n item['cellValue'] = null;\n item['cellValueInfo'] = null;\n return;\n }\n if (this.isMultipleValue(item)) {\n item['cellValueInfo'] = values;\n item['cellValue'] = JSON.stringify(values.map((value: any) => ({ id: value.id, name: value.name })));\n } else {\n item['cellValue'] = values[0].id;\n item['cellValueInfo'] = values[0];\n }\n }\n\r\n initValueConfig(item: any, tableName: any) {\n item.cellValueConfig = {\r\n type: 'ref2',\r\n label: tableName,\r\n selectType: this.isMultipleValue(item) ? 'multiple' : 'single',\n isRowData: true,\r\n parameter: {\r\n tableCode: item.cellTable,\r\n fieldCode: item.cellField,\r\n },\r\n };\n }\n\n /** 包含/不包含和字段本身配置为多选时,右值按多选集合保存。 */\n isMultipleValue(item: any): boolean {\n return item?.cellMultiple === true || item?.cellOperation === 'IN' || item?.cellOperation === 'NOT_IN';\n }\n\n /** 人员表、组织表的主键条件使用统一选择框,而不是暴露 ID 文本输入。 */\n valueEditorType(item: any): string {\n if (item?.cellField === 'id' && ['p_employee', 'p_org'].includes(String(item?.cellTable || '').toLowerCase())) {\n return 'REF';\n }\n return item?.fieldType;\n }\n\n itemValuesChange(values: any[], item: any) {\n const list = Array.isArray(values) ? values.filter((value: any) => value !== null && value !== undefined) : [];\n item.cellValues = list;\n item.cellValue = list.length ? JSON.stringify(list) : null;\n }\n\n private getTableName(tableCode: any): string {\n return this.tableData.find((table: any) => table.code === tableCode)?.name || '';\n }\n\n /**\n * 兼容旧的单值、逗号分隔值,以及新版 JSON 值集合;新版 REF 同时保留名称,刷新后可回显。\n */\n private restoreValue(item: any) {\n if (item?.cellValue == null || item.cellValue === '') {\n return;\n }\n const multiple = this.isMultipleValue(item);\n let parsed: any = item.cellValue;\n try {\n parsed = JSON.parse(item.cellValue);\n } catch {\n parsed = item.cellValue;\n }\n const values = Array.isArray(parsed)\n ? parsed\n : multiple\n ? String(parsed).split(',').map((value: string) => value.trim()).filter(Boolean)\n : [parsed];\n if (this.valueEditorType(item) === 'REF') {\n const references = values.map((value: any) => {\n if (value && typeof value === 'object') {\n return { id: value.id ?? value.code ?? value.value, name: value.name ?? value.id ?? value.code ?? value.value };\n }\n return { id: value, name: value };\n }).filter((value: any) => value.id);\n item.cellValueInfo = multiple ? references : references[0] || null;\n }\n if (item.fieldType === 'ITEM' && multiple) {\n item.cellValues = values.map((value: any) => value?.code ?? value?.value ?? value).filter(Boolean);\n }\n }\n\n /** 返回筛选右值来源;模板参数使用结构化表达式保存,运行时仍通过预编译参数绑定。 */\n valueSourceMode(item: any): 'FIXED' | 'ARGUMENT' {\n return /^\\$\\{(?:argument|arg)\\.[A-Za-z][A-Za-z0-9_]{0,63}}$/.test(String(item?.cellValue || '').trim())\n ? 'ARGUMENT'\n : 'FIXED';\n }\n\n /** 切换筛选右值来源时清理上一种来源的值,避免固定值和模板参数相互污染。 */\n valueSourceModeChange(mode: 'FIXED' | 'ARGUMENT', item: any) {\n item.cellValue = mode === 'ARGUMENT' && this.argumentData.length\n ? `\\${argument.${this.argumentData[0].argumentCode}}`\n : null;\n }\n\n argumentCode(item: any): string | null {\n const match = /^\\$\\{(?:argument|arg)\\.([A-Za-z][A-Za-z0-9_]{0,63})}$/.exec(String(item?.cellValue || '').trim());\n return match ? match[1] : null;\n }\n\n argumentChange(code: string, item: any) {\n item.cellValue = code ? `\\${argument.${code}}` : null;\n }\n\n /**\n * 判断字段是否使用日期编辑器,DATE 和 DATETIME 使用同一套日期值处理逻辑。\n */\n isDateField(fieldType: any): boolean {\n return fieldType === 'DATE' || fieldType === 'DATETIME';\n }\n\n /**\n * 返回日期值的选择模式。动态日期变量使用下拉选项,避免直接传给日期组件造成 Invalid time value。\n */\n dateValueMode(value: any): string {\n const text = typeof value === 'string' ? value.trim() : '';\n return this.DateValueModeData.some((item: any) => item.value !== 'FIXED' && item.value === text)\n ? text\n : 'FIXED';\n }\n\n /**\n * 切换日期来源。选择固定日期时清空动态变量,等待用户重新选择具体日期。\n */\n dateValueModeChange(mode: string, item: any) {\n if (mode === 'FIXED') {\n item.cellValue = item.cellValue instanceof Date && !Number.isNaN(item.cellValue.getTime())\n ? item.cellValue\n : null;\n return;\n }\n item.cellValue = mode;\n }\n\n /**\n * 将接口返回的日期字符串转换为日期组件需要的 Date,动态日期变量保持原值。\n */\n private normalizeDateValue(item: any) {\n if (!this.isDateField(item?.fieldType) || item?.cellValue == null || item.cellValue === '') {\n return;\n }\n if (this.dateValueMode(item.cellValue) !== 'FIXED') {\n return;\n }\n if (this.valueSourceMode(item) === 'ARGUMENT') {\n return;\n }\n if (item.cellValue instanceof Date) {\n if (Number.isNaN(item.cellValue.getTime())) {\n item.cellValue = null;\n }\n return;\n }\n const parsed = this.parseDate(item.cellValue);\n item.cellValue = parsed;\n }\n\n /**\n * 兼容数据库常见的 yyyy-MM-dd、yyyy-MM-dd HH:mm:ss 和 ISO 日期格式。\n */\n private parseDate(value: any): Date | null {\n const text = String(value).trim();\n const dateOnly = /^(\\d{4})-(\\d{2})-(\\d{2})$/.exec(text);\n if (dateOnly) {\n const date = new Date(Number(dateOnly[1]), Number(dateOnly[2]) - 1, Number(dateOnly[3]));\n return Number.isNaN(date.getTime()) ? null : date;\n }\n const normalized = text.replace(' ', 'T');\n const date = new Date(normalized);\n return Number.isNaN(date.getTime()) ? null : date;\n }\n}\n","<div class=\"header-box\">\r\n {{title}}\r\n <a (click)=\"addCondition()\">\r\n <i nz-icon nzType=\"plus-circle\"></i>\r\n 新增\r\n </a>\r\n</div>\r\n<div class=\"body-box\">\r\n <ng-container *ngIf=\"filterData!! && filterData.length>0;else tmpEmpty\">\r\n <ng-container *ngFor=\"let item of filterData;let i=index\">\r\n <ul>\r\n <li class=\"leftBracket\">\r\n <nz-select [(ngModel)]=\"item.leftBracket\" nzAllowClear>\r\n <ng-container *ngFor=\"let option of BracketTypeData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n <li class=\"leftBracket\">\r\n <nz-select [(ngModel)]=\"item.leftBracket2\" nzAllowClear>\r\n <ng-container *ngFor=\"let option of BracketTypeData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n <li class=\"cellOperation\">\r\n <nz-select [(ngModel)]=\"item.cellOperation\" nzAllowClear (ngModelChange)=\"operationChange($event,item)\">\r\n <ng-container *ngFor=\"let option of CompareConditionsData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n <li *ngIf=\"item?.cellOperation!='SQL_RULES'\" class=\"conditionTable\">\r\n <nz-select [(ngModel)]=\"item.cellTable\" nzAllowClear (ngModelChange)=\"tableChange($event,item)\">\r\n <ng-container *ngFor=\"let option of tableData\">\r\n <nz-option [nzValue]=\"option.code\" [nzLabel]=\"option.name\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n\r\n <li *ngIf=\"item?.cellOperation!='SQL_RULES'\" class=\"conditionField\">\r\n <nz-select [(ngModel)]=\"item.cellField\" nzAllowClear (ngModelChange)=\"fieldChange($event,item)\">\r\n <ng-container *ngFor=\"let option of getFieldData(item.cellTable)\">\r\n <nz-option [nzValue]=\"option.code\" [nzLabel]=\"option.name\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n <li *ngIf=\"item?.cellOperation!='SQL_RULES'\">\r\n <ng-container *ngIf=\"item.cellTable!! && item.cellField!! && item.fieldType!!\">\r\n <div class=\"cellValue\" [class.date-cell-value]=\"isDateField(item.fieldType)\">\n <nz-select\n *ngIf=\"argumentData.length\"\n class=\"value-source-select\"\n [ngModel]=\"valueSourceMode(item)\"\n (ngModelChange)=\"valueSourceModeChange($event, item)\"\n >\n <nz-option nzValue=\"FIXED\" nzLabel=\"固定值\"></nz-option>\n <nz-option nzValue=\"ARGUMENT\" nzLabel=\"模板参数\"></nz-option>\n </nz-select>\n <nz-select\n *ngIf=\"argumentData.length && valueSourceMode(item) === 'ARGUMENT'\"\n [ngModel]=\"argumentCode(item)\"\n (ngModelChange)=\"argumentChange($event, item)\"\n nzPlaceHolder=\"请选择模板参数\"\n >\n <nz-option\n *ngFor=\"let argument of argumentData\"\n [nzValue]=\"argument.argumentCode\"\n [nzLabel]=\"argument.argumentName\"\n ></nz-option>\n </nz-select>\n <ng-container *ngIf=\"valueSourceMode(item) === 'FIXED'\">\n <ng-container [ngSwitch]=\"valueEditorType(item)\">\n <ng-container *ngSwitchCase=\"'BOOLEAN'\">\r\n <nz-select [(ngModel)]=\"item.cellValue\">\r\n <nz-option nzValue=\"0\" nzLabel=\"否\"></nz-option>\r\n <nz-option nzValue=\"1\" nzLabel=\"是\"></nz-option>\r\n </nz-select>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'DATETIME'\">\n <ng-container *ngTemplateOutlet=\"dateValueEditor; context: { $implicit: item }\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'DATE'\">\n <ng-container *ngTemplateOutlet=\"dateValueEditor; context: { $implicit: item }\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'INT'\">\r\n <nz-input-number [(ngModel)]=\"item.cellValue\" [nzStep]=\"1\" [nzPrecision]=\"0\"></nz-input-number>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'FLOAT'\">\r\n <nz-input-number [(ngModel)]=\"item.cellValue\" [nzStep]=\"1\" [nzPrecision]=\"2\"></nz-input-number>\r\n </ng-container>\n <ng-container *ngSwitchCase=\"'ITEM'\">\n <nz-select\n *ngIf=\"isMultipleValue(item); else singleItem\"\n [ngModel]=\"item.cellValues\"\n (ngModelChange)=\"itemValuesChange($event, item)\"\n nzMode=\"multiple\"\n nzAllowClear\n >\n <ng-container *ngFor=\"let option of getItemData(item.cellTable,item.cellField)\">\n <nz-option [nzValue]=\"option.code\" [nzLabel]=\"option.name\"></nz-option>\n </ng-container>\n </nz-select>\n <ng-template #singleItem>\n <nz-select [(ngModel)]=\"item.cellValue\" nzAllowClear>\n <ng-container *ngFor=\"let option of getItemData(item.cellTable,item.cellField)\">\n <nz-option [nzValue]=\"option.code\" [nzLabel]=\"option.name\"></nz-option>\n </ng-container>\n </nz-select>\n </ng-template>\n </ng-container>\n <ng-container *ngSwitchCase=\"'REF'\">\n <gram-lookup\n [config]=\"item.cellValueConfig\"\n [data]=\"item.cellValueInfo\"\n (valueChange)=\"refDataChange($event,item)\"\n ></gram-lookup>\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n <input nz-input [(ngModel)]=\"item.cellValue\" />\r\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n </ng-container>\r\n </li>\r\n <li *ngIf=\"item?.cellOperation=='SQL_RULES' \">\r\n <div class=\"cellValue\">\r\n <input nz-input [(ngModel)]=\"item.cellValue\" />\r\n </div>\r\n </li>\r\n <li class=\"rightBracket\">\r\n <nz-select [(ngModel)]=\"item.rightBracket\" nzAllowClear>\r\n <ng-container *ngFor=\"let option of BracketTypeData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n <li class=\"rightBracket\">\r\n <nz-select [(ngModel)]=\"item.rightBracket2\" nzAllowClear>\r\n <ng-container *ngFor=\"let option of BracketTypeData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n <li class=\"cellFunction\">\r\n <nz-select [(ngModel)]=\"item.cellFunction\" nzAllowClear>\r\n <ng-container *ngFor=\"let option of FilterTypeData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n <div class=\"btnDel\">\r\n <a (click)=\"delCondition(i)\">\r\n <i nz-icon nzType=\"delete\"></i>\r\n </a>\r\n </div>\r\n </ul>\r\n </ng-container>\r\n </ng-container>\r\n</div>\n\n<ng-template #dateValueEditor let-dateItem>\n <ng-container\n *ngIf=\"dateItem?.cellOperation!='DATE_YEAR'\n && dateItem?.cellOperation!='DATE_MONTH'\n && dateItem?.cellOperation!='DATE_WEEK'\n && dateItem?.cellOperation!='DATE_QUARTER'\"\n >\n <div class=\"date-value-editor\" [class.dynamic-value]=\"dateValueMode(dateItem.cellValue) !== 'FIXED'\">\n <nz-select\n [ngModel]=\"dateValueMode(dateItem.cellValue)\"\n (ngModelChange)=\"dateValueModeChange($event, dateItem)\"\n nzPlaceHolder=\"日期来源\"\n >\n <nz-option\n *ngFor=\"let option of DateValueModeData\"\n [nzValue]=\"option.value\"\n [nzLabel]=\"option.label\"\n ></nz-option>\n </nz-select>\n <nz-date-picker\n *ngIf=\"dateValueMode(dateItem.cellValue) === 'FIXED'\"\n [(ngModel)]=\"dateItem.cellValue\"\n [nzShowTime]=\"dateItem.fieldType === 'DATETIME'\"\n [nzFormat]=\"dateItem.fieldType === 'DATETIME' ? 'yyyy-MM-dd HH:mm:ss' : 'yyyy-MM-dd'\"\n nzPlacement=\"bottomLeft\"\n nzPlaceHolder=\"请选择日期\"\n [nzAllowClear]=\"true\"\n ></nz-date-picker>\n </div>\n </ng-container>\n</ng-template>\n\n<ng-template #tmpEmpty>\n <div class=\"empty\">\r\n <div class=\"image\"><img src=\"assets/images/default/empty2.png\" /></div>\r\n </div>\r\n</ng-template>\r\n","import { Component, OnInit, Input, EventEmitter, Output, OnChanges, SimpleChanges } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { NzSelectModule } from 'ng-zorro-antd/select';\r\nimport { NzInputModule } from 'ng-zorro-antd/input';\r\nimport { NzInputNumberModule } from 'ng-zorro-antd/input-number';\r\nimport { NzButtonModule } from 'ng-zorro-antd/button';\r\nimport { NzDatePickerModule } from 'ng-zorro-antd/date-picker';\r\nimport { NzIconModule } from 'ng-zorro-antd/icon';\r\n\r\nimport { GramDeonLookUpModule } from '@ebuilding/biz-comm/components/lookup';\r\nimport { FilterType, CompareType, CompareConditions, BracketType, SpecialField, CompareFieldType } from '@ebuilding/base/shared.util/static';\r\nimport _ from 'lodash';\r\n\r\nexport interface IData {\r\n tableCode?: any;\r\n tableFieldData: any[];\r\n sourceTableData: any[];\r\n fieldOptions: any;\r\n filterData: any[];\r\n}\r\n\r\n@Component({\r\n selector: 'gram-filter-compare',\r\n templateUrl: './index.html',\r\n styleUrls: ['./index.less'],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n NzSelectModule,\r\n NzInputModule,\r\n NzInputNumberModule,\r\n NzButtonModule,\r\n NzDatePickerModule,\r\n NzIconModule,\r\n GramDeonLookUpModule\r\n ]\r\n})\r\nexport class GramFilterCompareComponent implements OnInit, OnChanges {\r\n loading: boolean = true;\r\n\r\n /**\r\n * 常量\r\n */\r\n FilterTypeData: any[] = FilterType();\r\n BracketTypeData: any[] = BracketType();\r\n SpecialFieldData: any[] = SpecialField();\r\n CompareTypeData: any[] = CompareType();\r\n CompareFieldTypeData: any[] = CompareFieldType();\r\n CompareConditionsData: any[] = CompareConditions().filter((item: any) => {\r\n return item.value != 'IN' && item.value != 'LIKE' && item.value != 'LEFT_LIKE' && item.value != 'RIGHT_LIKE';\r\n });\r\n\r\n /**\r\n * 基础数据\r\n */\r\n tableFieldData: any[];\r\n sourceTableData: any[];\r\n fieldOptions: any;\r\n filterData: any[] = [];\r\n\r\n @Input() title: any = null;\r\n\r\n @Input() data: IData;\r\n\r\n @Output() dataChange: EventEmitter<any> = new EventEmitter();\r\n\r\n constructor() { }\r\n\r\n ngOnInit() { }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes['data']) {\r\n if (this.data!!) {\r\n this.tableFieldData = _.cloneDeep(this.data.tableFieldData);\r\n this.sourceTableData = _.cloneDeep(this.data.sourceTableData);\r\n this.fieldOptions = _.cloneDeep(this.data.fieldOptions);\r\n this.filterData = this.data.filterData;\r\n if (this.filterData!! && this.filterData.length > 0) {\r\n this.filterData.forEach((a: any) => {\r\n this.tableFieldData.forEach((b: any) => {\r\n if (b.value == a.cellField) {\r\n a['cellFieldType'] = b.type;\r\n a['cellFieldMultiple'] = b.multiple;\r\n if (this.fieldOptions!! && this.fieldOptions[a.cellField]!!) {\r\n a['cellFieldOptions'] = this.fieldOptions[a.cellField];\r\n }\r\n }\r\n });\r\n });\r\n }\r\n }\r\n }\r\n }\r\n\r\n addCondition() {\r\n if (this.filterData!!) {\r\n this.filterData = [\r\n ...this.filterData,\r\n {\r\n cellOperation: 'EQ',\r\n cellType: 'FIELD',\r\n },\r\n ];\r\n } else {\r\n this.filterData = [\r\n {\r\n cellOperation: 'EQ',\r\n cellType: 'FIELD',\r\n },\r\n ];\r\n }\r\n this.dataChange.emit(this.filterData);\r\n }\r\n\r\n delCondition(i: number) {\r\n if (this.filterData!!) {\r\n this.filterData = this.filterData.filter((a: any, index: number) => {\r\n return index != i;\r\n });\r\n }\r\n this.dataChange.emit(this.filterData);\r\n }\r\n\r\n cellFieldChange(e: any, item: any) {\r\n item['cellFieldType'] = null;\r\n item['cellFieldOptions'] = null;\r\n item['cellFieldMultiple'] = null;\r\n if (item.cellField!!) {\r\n this.tableFieldData.forEach((a: any) => {\r\n if (a.value == item.cellField) {\r\n item['cellFieldType'] = a.type;\r\n item['cellFieldMultiple'] = a.multiple;\r\n if (this.fieldOptions!! && this.fieldOptions[item.cellField]!!) {\r\n item['cellFieldOptions'] = this.fieldOptions[item.cellField];\r\n }\r\n this.initValueConfig(item, a.name);\r\n }\r\n });\r\n }\r\n this.dataChange.emit(this.filterData);\r\n }\r\n\r\n tableChange(e: any, item: any) {\r\n item['parameterField'] = null;\r\n item['cellValue'] = null;\r\n this.dataChange.emit(this.filterData);\r\n }\r\n\r\n getFieldData(parameterTable: any) {\r\n let arr: any[] = [];\r\n this.sourceTableData.forEach((item: any) => {\r\n if (item.code == parameterTable) {\r\n arr = item.listField;\r\n }\r\n });\r\n return arr;\r\n }\r\n\r\n operationChange(e: any, item: any) {\r\n if (item.cellOperation == 'SQL_RULES') {\r\n item['cellTable'] = null;\r\n item['cellField'] = null;\r\n item['parameterTable'] = null;\r\n item['parameterField'] = null;\r\n item['cellValue'] = null;\r\n }\r\n this.dataChange.emit(this.filterData);\r\n }\r\n\r\n refDataChange(e: any, item: any) {\r\n if (e!! && e.id!!) {\r\n item['cellValue'] = e.id;\r\n item['cellValueInfo'] = e;\r\n } else {\r\n item['cellValue'] = null;\r\n item['cellValueInfo'] = null;\r\n }\r\n }\r\n\r\n initValueConfig(item: any, tableName: any) {\r\n item.cellValueConfig = {\r\n type: 'ref2',\r\n label: tableName,\r\n selectType: 'single',\r\n isRowData: true,\r\n parameter: {\r\n tableCode: this.data?.tableCode,\r\n fieldCode: item.cellField,\r\n },\r\n };\r\n }\r\n}\r\n","<div class=\"header-box\">\r\n {{title}}\r\n <a (click)=\"addCondition()\">\r\n <i nz-icon nzType=\"plus-circle\"></i>\r\n 新增\r\n </a>\r\n</div>\r\n<div class=\"body-box\">\r\n <ng-container *ngIf=\"filterData!! && filterData.length>0;else tmpEmpty\">\r\n <ng-container *ngFor=\"let item of filterData;let i=index\">\r\n <ul>\r\n <li class=\"leftBracket\">\r\n <nz-select [(ngModel)]=\"item.leftBracket\" nzAllowClear>\r\n <ng-container *ngFor=\"let option of BracketTypeData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n <li class=\"leftBracket\">\r\n <nz-select [(ngModel)]=\"item.leftBracket2\" nzAllowClear>\r\n <ng-container *ngFor=\"let option of BracketTypeData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n\r\n <!-- 字段匹配类型 -->\r\n <li class=\"cellOperation\" *ngIf=\"item?.cellOperation!='SQL_RULES'\">\r\n <nz-select [(ngModel)]=\"item.cellType\">\r\n <ng-container *ngFor=\"let option of CompareFieldTypeData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n\r\n <!-- 字段 -->\r\n <li class=\"cellOperation\" *ngIf=\"item?.cellOperation!='SQL_RULES'\">\r\n <nz-select [(ngModel)]=\"item.cellField\" nzAllowClear (ngModelChange)=\"cellFieldChange($event,item)\">\r\n <ng-container *ngFor=\"let option of tableFieldData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n\r\n <!-- 操作符 -->\r\n <li class=\"cellOperation\">\r\n <nz-select [(ngModel)]=\"item.cellOperation\" nzAllowClear (ngModelChange)=\"operationChange($event,item)\">\r\n <ng-container *ngFor=\"let option of CompareConditionsData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n <ng-container *ngIf=\"item?.cellOperation!='SQL_RULES'\">\r\n <!-- 字段匹配类型--自定义值 -->\r\n <ng-container *ngIf=\"item.cellType=='CUSTOM' && item.cellFieldType!!\">\r\n <ng-container [ngSwitch]=\"item.cellFieldType\">\r\n <ng-container *ngSwitchCase=\"'ITEM'\">\r\n <li class=\"cellOperation\">\r\n <ng-container *ngIf=\"item?.cellFieldMultiple==true;else tmp1\">暂不支持多选</ng-container>\r\n <ng-template #tmp1>\r\n <nz-select [(ngModel)]=\"item.cellValue\">\r\n <ng-container *ngFor=\"let option of item.cellFieldOptions\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </ng-template>\r\n </li>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'BOOLEAN'\">\r\n <li class=\"cellOperation\">\r\n <nz-select [(ngModel)]=\"item.cellValue\">\r\n <ng-container *ngFor=\"let option of item.cellFieldOptions\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'REF'\">\r\n <li class=\"cellOperation\">\r\n <ng-container *ngIf=\"item?.cellFieldMultiple==true;else tmp2\">暂不支持多选</ng-container>\r\n <ng-template #tmp2>\r\n <gram-lookup\r\n [config]=\"item.cellValueConfig\"\r\n [data]=\"item.cellValueInfo\"\r\n (valueChange)=\"refDataChange($event,item)\"\r\n ></gram-lookup>\r\n </ng-template>\r\n </li>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'TEXT'\">\r\n <li class=\"cellOperation\">\r\n <input nz-input [(ngModel)]=\"item.cellValue\" />\r\n </li>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'TEXTAREA'\">\r\n <li class=\"cellOperation\">\r\n <input nz-input [(ngModel)]=\"item.cellValue\" />\r\n </li>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'INT'\">\r\n <li class=\"cellOperation\">\r\n <nz-input-number [(ngModel)]=\"item.cellValue\" [nzStep]=\"1\" [nzPrecision]=\"0\"></nz-input-number>\r\n </li>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'FLOAT'\">\r\n <li class=\"cellOperation\">\r\n <nz-input-number [(ngModel)]=\"item.cellValue\" [nzStep]=\"1\"></nz-input-number>\r\n </li>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'DATETIME'\">\r\n <li class=\"cellOperation\">\r\n <nz-date-picker [(ngModel)]=\"item.cellValue\" nzShowTime nzFormat=\"yyyy-MM-dd HH:mm:ss\"></nz-date-picker>\r\n </li>\r\n </ng-container>\r\n <ng-container *ngSwitchDefault> </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <!-- 字段匹配类型--字段匹配 -->\r\n <ng-container *ngIf=\"item.cellType=='FIELD'\">\r\n <li class=\"conditionTable\">\r\n <nz-select [(ngModel)]=\"item.parameterTable\" nzAllowClear (ngModelChange)=\"tableChange($event,item)\">\r\n <ng-container *ngFor=\"let option of sourceTableData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n\r\n <li class=\"conditionField\">\r\n <nz-select [(ngModel)]=\"item.parameterField\" nzAllowClear>\r\n <ng-container *ngFor=\"let option of getFieldData(item.parameterTable)\">\r\n <nz-option [nzValue]=\"option.code\" [nzLabel]=\"option.name\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <li *ngIf=\"item?.cellOperation=='SQL_RULES' \">\r\n <div class=\"cellValue\">\r\n <input nz-input [(ngModel)]=\"item.cellValue\" />\r\n </div>\r\n </li>\r\n <li class=\"rightBracket\">\r\n <nz-select [(ngModel)]=\"item.rightBracket\" nzAllowClear>\r\n <ng-container *ngFor=\"let option of BracketTypeData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n <li class=\"rightBracket\">\r\n <nz-select [(ngModel)]=\"item.rightBracket2\" nzAllowClear>\r\n <ng-container *ngFor=\"let option of BracketTypeData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n <li class=\"cellFunction\">\r\n <nz-select [(ngModel)]=\"item.cellFunction\" nzAllowClear>\r\n <ng-container *ngFor=\"let option of FilterTypeData\">\r\n <nz-option [nzValue]=\"option.value\" [nzLabel]=\"option.label\"></nz-option>\r\n </ng-container>\r\n </nz-select>\r\n </li>\r\n <div class=\"btnDel\">\r\n <a (click)=\"delCondition(i)\">\r\n <i nz-icon nzType=\"delete\"></i>\r\n </a>\r\n </div>\r\n </ul>\r\n </ng-container>\r\n </ng-container>\r\n</div>\r\n\r\n<ng-template #tmpEmpty>\r\n <div class=\"empty\">\r\n <div class=\"image\"><img src=\"assets/images/default/empty2.png\" /></div>\r\n </div>\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { GramDeonFilterComponent } from './default/index';\r\nimport { GramFilterCompareComponent } from './compare-filter/index';\r\n\r\nconst components: any[] = [GramDeonFilterComponent, GramFilterCompareComponent];\r\n\r\n@NgModule({\r\n imports: [\r\n ...components\r\n ],\r\n exports: [...components],\r\n})\r\nexport class GramDeonFilterModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","i4","i5","i7","i8","i9"],"mappings":"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"}
|
|
@@ -470,6 +470,7 @@ class FormulaRuleEventComponent {
|
|
|
470
470
|
formulaValue = null;
|
|
471
471
|
formulaTxt = null;
|
|
472
472
|
fieldData = [];
|
|
473
|
+
functionData = [];
|
|
473
474
|
codeMirrorOptions = {};
|
|
474
475
|
set config(value) {
|
|
475
476
|
this._config = value;
|
|
@@ -491,15 +492,20 @@ class FormulaRuleEventComponent {
|
|
|
491
492
|
lineNumbers: false,
|
|
492
493
|
matchBrackets: true,
|
|
493
494
|
specialChars: /[\u0000-\u001f\u007f\u00ad\u200c-\u200f\u2028\u2029\ufeff]/,
|
|
494
|
-
mode:
|
|
495
|
+
mode: 'formula',
|
|
495
496
|
labelMap: null,
|
|
496
497
|
};
|
|
497
498
|
}
|
|
498
499
|
getPageData() {
|
|
499
500
|
this.loading = true;
|
|
500
|
-
if (this.config &&
|
|
501
|
+
if (this.config &&
|
|
502
|
+
this.config.sourceField &&
|
|
503
|
+
this.config.sourceField.length > 0) {
|
|
501
504
|
this.fieldData = _.cloneDeep(this.config.sourceField);
|
|
502
505
|
}
|
|
506
|
+
if (Array.isArray(this.config?.functionData)) {
|
|
507
|
+
this.functionData = _.cloneDeep(this.config.functionData);
|
|
508
|
+
}
|
|
503
509
|
if (this.config?.value) {
|
|
504
510
|
this.formulaValue = this.config.value;
|
|
505
511
|
}
|
|
@@ -522,21 +528,16 @@ class FormulaRuleEventComponent {
|
|
|
522
528
|
type: 'save',
|
|
523
529
|
data: {
|
|
524
530
|
value: this.formulaValue,
|
|
525
|
-
text: this.formulaTxt
|
|
531
|
+
text: this.formulaTxt,
|
|
526
532
|
},
|
|
527
533
|
});
|
|
528
534
|
}
|
|
529
535
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: FormulaRuleEventComponent, deps: [{ token: i2.NzDrawerRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
530
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: FormulaRuleEventComponent, isStandalone: true, selector: "formula-rule-event", inputs: { config: "config" }, ngImport: i0, template: "<div class=\"codemirror\">\
|
|
536
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: FormulaRuleEventComponent, isStandalone: true, selector: "formula-rule-event", inputs: { config: "config" }, ngImport: i0, template: "<div class=\"codemirror\">\n <deon-codemirror\n #codemirror\n [title]=\"''\"\n (textChange)=\"textChange($event)\"\n [fieldData]=\"fieldData\"\n [functionData]=\"functionData\"\n [options]=\"codeMirrorOptions\"\n [(ngModel)]=\"formulaValue\"\n >\n </deon-codemirror>\n</div>\n\n<div class=\"deon-button\">\n <button nz-button nzType=\"default\" (click)=\"btnCancel()\" type=\"button\">\n <i nz-icon nzType=\"cancel\"></i>\u53D6\u6D88\n </button>\n <button nz-button nzType=\"primary\" (click)=\"btnSave()\" type=\"button\">\n <i nz-icon nzType=\"save\"></i>\u4FDD\u5B58\n </button>\n</div>\n", styles: [":host ::ng-deep{display:flex;flex:1;flex-direction:column;width:100%;height:100%}:host ::ng-deep .codemirror{flex:1;padding:20px 20px 15px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: NzButtonModule }, { kind: "component", type: i6.NzButtonComponent, selector: "button[nz-button], a[nz-button]", inputs: ["nzBlock", "nzGhost", "nzSearch", "nzLoading", "nzDanger", "disabled", "tabIndex", "nzType", "nzShape", "nzSize"], exportAs: ["nzButton"] }, { kind: "directive", type: i7.ɵNzTransitionPatchDirective, selector: "[nz-button], nz-button-group, [nz-icon], nz-icon, [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { kind: "directive", type: i8.NzWaveDirective, selector: "[nz-wave],button[nz-button]:not([nzType=\"link\"]):not([nzType=\"text\"])", inputs: ["nzWaveExtraNode"], exportAs: ["nzWave"] }, { kind: "ngmodule", type: GramCodemirrorModule }, { kind: "component", type: i6$1.GramCodemirrorComponent, selector: "deon-codemirror", inputs: ["title", "name", "autoFocus", "fieldData", "functionData", "options"], outputs: ["validationResult", "textChange"] }] });
|
|
531
537
|
}
|
|
532
538
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: FormulaRuleEventComponent, decorators: [{
|
|
533
539
|
type: Component,
|
|
534
|
-
args: [{ selector: 'formula-rule-event', imports: [
|
|
535
|
-
CommonModule,
|
|
536
|
-
FormsModule,
|
|
537
|
-
NzButtonModule,
|
|
538
|
-
GramCodemirrorModule
|
|
539
|
-
], template: "<div class=\"codemirror\">\r\n <deon-codemirror #codemirror [title]=\"''\" (textChange)=\"textChange($event)\" [fieldData]=\"fieldData\"\r\n [options]=\"codeMirrorOptions\" [(ngModel)]=\"formulaValue\">\r\n </deon-codemirror>\r\n</div>\r\n\r\n<div class=\"deon-button\">\r\n <button nz-button nzType=\"default\" (click)=\"btnCancel()\" type=\"button\"><i nz-icon nzType=\"cancel\"></i>\u53D6\u6D88</button>\r\n <button nz-button nzType=\"primary\" (click)=\"btnSave()\" type=\"button\"><i nz-icon nzType=\"save\"></i>\u4FDD\u5B58</button>\r\n</div>", styles: [":host ::ng-deep{display:flex;flex:1;flex-direction:column;width:100%;height:100%}:host ::ng-deep .codemirror{flex:1;padding:20px 20px 15px}\n"] }]
|
|
540
|
+
args: [{ selector: 'formula-rule-event', imports: [CommonModule, FormsModule, NzButtonModule, GramCodemirrorModule], template: "<div class=\"codemirror\">\n <deon-codemirror\n #codemirror\n [title]=\"''\"\n (textChange)=\"textChange($event)\"\n [fieldData]=\"fieldData\"\n [functionData]=\"functionData\"\n [options]=\"codeMirrorOptions\"\n [(ngModel)]=\"formulaValue\"\n >\n </deon-codemirror>\n</div>\n\n<div class=\"deon-button\">\n <button nz-button nzType=\"default\" (click)=\"btnCancel()\" type=\"button\">\n <i nz-icon nzType=\"cancel\"></i>\u53D6\u6D88\n </button>\n <button nz-button nzType=\"primary\" (click)=\"btnSave()\" type=\"button\">\n <i nz-icon nzType=\"save\"></i>\u4FDD\u5B58\n </button>\n</div>\n", styles: [":host ::ng-deep{display:flex;flex:1;flex-direction:column;width:100%;height:100%}:host ::ng-deep .codemirror{flex:1;padding:20px 20px 15px}\n"] }]
|
|
540
541
|
}], ctorParameters: () => [{ type: i2.NzDrawerRef }], propDecorators: { config: [{
|
|
541
542
|
type: Input
|
|
542
543
|
}] } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components.formula.mjs","sources":["../../../../packages/biz-comm/components/formula/src/formula.service.ts","../../../../packages/biz-comm/components/formula/src/default/index.ts","../../../../packages/biz-comm/components/formula/src/default/index.html","../../../../packages/biz-comm/components/formula/src/form-setting/index.ts","../../../../packages/biz-comm/components/formula/src/form-setting/index.html","../../../../packages/biz-comm/components/formula/src/form-item/index.ts","../../../../packages/biz-comm/components/formula/src/form-item/index.html","../../../../packages/biz-comm/components/formula/src/rule-event/index.ts","../../../../packages/biz-comm/components/formula/src/rule-event/index.html","../../../../packages/biz-comm/components/formula/src/index.module.ts","../../../../packages/biz-comm/components/formula/components.formula.ts"],"sourcesContent":["import { Directive } from '@angular/core';\r\nimport { _HttpClient } from '@delon/theme';\r\n@Directive()\r\nexport class FormulaService {\r\n\r\n loading: boolean = true;\r\n\r\n codeMirrorOptions: any = null;\r\n\r\n /**\r\n * ID \r\n */\r\n formulaValue: any = null;\r\n\r\n /**\r\n * Name\r\n */\r\n formulaTxt: any = null;\r\n\r\n /**\r\n * 左边项目集合\r\n */\r\n fieldData: any[] = [];\r\n\r\n initOptions() {\r\n this.codeMirrorOptions = {\r\n autoCloseBrackets: true,\r\n keywords: [],\r\n textWrapping: true,\r\n lineWrapping: true,\r\n lineNumbers: false,\r\n matchBrackets: true,\r\n specialChars:\r\n /[\\u0000-\\u001f\\u007f\\u00ad\\u200c-\\u200f\\u2028\\u2029\\ufeff]/,\r\n mode: \"formula\",\r\n labelMap: null,\r\n };\r\n }\r\n}","\r\nimport { Component, OnInit, Input, AfterViewInit } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { _HttpClient } from '@delon/theme';\r\nimport { NzButtonModule } from 'ng-zorro-antd/button';\r\nimport { NzInputModule } from 'ng-zorro-antd/input';\r\nimport { NzSpinModule } from 'ng-zorro-antd/spin';\r\nimport { NzMessageService } from 'ng-zorro-antd/message';\r\n\r\nimport { NzDrawerRef } from '@ebuilding/base/components/drawer';\r\nimport { ModuleAPI } from '@ebuilding/base/shared.var/shared.constant';\r\nimport { GramCodemirrorModule } from '@ebuilding/base/components/codemirror';\r\n\r\nimport { FormulaService } from \"../formula.service\";\r\nimport _ from 'lodash';\r\n\r\n@Component({\r\n selector: 'formula-main',\r\n templateUrl: './index.html',\r\n styleUrls: ['./index.less'],\r\n providers: [FormulaService],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n NzButtonModule,\r\n NzInputModule,\r\n NzSpinModule,\r\n GramCodemirrorModule\r\n ]\r\n})\r\nexport class FormulaMainComponent implements OnInit, AfterViewInit {\r\n _config: any = null;\r\n\r\n loading: boolean = true;\r\n name: any = null;\r\n formulaValue: any = null;\r\n formulaTxt: any = null;\r\n fieldData: any[] = [];\r\n codeMirrorOptions: any = {};\r\n dataInfo: any = null;\r\n\r\n @Input()\r\n set config(value: any) {\r\n this._config = value;\r\n this.getPageData();\r\n }\r\n get config() {\r\n return this._config;\r\n }\r\n\r\n constructor(public http: _HttpClient, public drawerRef: NzDrawerRef<any>, public msg: NzMessageService, public formulaSrv: FormulaService) { }\r\n\r\n ngOnInit(): void { }\r\n\r\n ngAfterViewInit(): void {\r\n this.formulaSrv.codeMirrorOptions = {\r\n autoCloseBrackets: true,\r\n keywords: [],\r\n textWrapping: true,\r\n lineWrapping: true,\r\n lineNumbers: false,\r\n matchBrackets: true,\r\n specialChars:\r\n /[\\u0000-\\u001f\\u007f\\u00ad\\u200c-\\u200f\\u2028\\u2029\\ufeff]/,\r\n mode: \"formula\",\r\n labelMap: null,\r\n };\r\n this.codeMirrorOptions = {\r\n autoCloseBrackets: true,\r\n keywords: [],\r\n textWrapping: true,\r\n lineWrapping: true,\r\n lineNumbers: false,\r\n matchBrackets: true,\r\n specialChars:\r\n /[\\u0000-\\u001f\\u007f\\u00ad\\u200c-\\u200f\\u2028\\u2029\\ufeff]/,\r\n mode: \"formula\",\r\n labelMap: null,\r\n };\r\n }\r\n\r\n getPageData() {\r\n this.loading = true;\r\n if (this.config!! && this.config.sourceField!! && this.config.sourceField.length > 0) {\r\n this.fieldData = _.cloneDeep(this.config.sourceField);\r\n }\r\n if (this.config.type == \"EDIT\") {\r\n this.http.post(`${ModuleAPI.rule}/rule/formula/getInfoById/${this.config.formulaId}`).subscribe((res: any) => {\r\n if (res!! && res.success && res.result!!) {\r\n this.dataInfo = res.result;\r\n this.formulaValue = res.result.actualFormula;\r\n this.formulaTxt = res.result.actualFormulaTxt;\r\n }\r\n this.loading = false;\r\n });\r\n } else {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n textChange(e: any) {\r\n this.formulaTxt = e;\r\n }\r\n\r\n btnCancel() {\r\n this.drawerRef.close({\r\n type: 'close',\r\n data: null,\r\n });\r\n }\r\n\r\n btnSave() {\r\n if (this.name == null || this.name == \"\") {\r\n this.msg.warning(\"请输入表达式名称\");\r\n return;\r\n }\r\n if (this.config.type == \"ADD\") {\r\n this.saveAdd();\r\n } else {\r\n this.saveUpdate();\r\n }\r\n }\r\n\r\n saveAdd() {\r\n this.http.post(`${ModuleAPI.rule}/rule/formula/addInfo`, {\r\n sourceId: this.config.sourceId,\r\n sourceType: this.config.sourceType,\r\n name: this.name,\r\n actualFormula: this.formulaValue,\r\n actualFormulaTxt: this.formulaTxt\r\n }).subscribe((res: any) => {\r\n if (res.success) {\r\n this.msg.success(\"保存成功\");\r\n this.config[\"id\"] = res.result;\r\n this.drawerRef.close({\r\n type: 'save',\r\n data: {\r\n formulaId: this.config[\"id\"],\r\n formulaValue: this.formulaValue\r\n },\r\n });\r\n }\r\n this.loading = false;\r\n });\r\n }\r\n\r\n saveUpdate() {\r\n this.http.post(`${ModuleAPI.rule}/rule/formula/updateInfo`, {\r\n id: this.config.id,\r\n sourceId: this.config.sourceId,\r\n sourceType: this.config.sourceType,\r\n name: this.name,\r\n actualFormula: this.formulaValue,\r\n actualFormulaTxt: this.formulaTxt\r\n }).subscribe((res: any) => {\r\n if (res.success) {\r\n this.msg.success(\"保存成功\");\r\n this.drawerRef.close({\r\n type: 'save',\r\n data: {\r\n formulaId: this.config[\"id\"],\r\n formulaValue: this.formulaValue\r\n },\r\n });\r\n }\r\n this.loading = false;\r\n });\r\n }\r\n\r\n}","<div class=\"name\">\r\n <span>*</span>\r\n <label>表达式名称</label>\r\n <input nz-input placeholder=\"请输入表达式名称\" [(ngModel)]=\"name\" />\r\n</div>\r\n\r\n<div class=\"codemirror\">\r\n <!-- <deon-codemirror #codemirror [title]=\"''\" (textChange)=\"textChange($event)\" [fieldData]=\"fieldData\"\r\n [options]=\"codeMirrorOptions\" [(ngModel)]=\"formulaValue\">\r\n </deon-codemirror> -->\r\n</div>\r\n\r\n<div class=\"deon-button\">\r\n <button nz-button nzType=\"default\" (click)=\"btnCancel()\" type=\"button\"><i nz-icon nzType=\"cancel\"></i>取消</button>\r\n <button nz-button nzType=\"primary\" (click)=\"btnSave()\" type=\"button\"><i nz-icon nzType=\"save\"></i>保存</button>\r\n</div>","import { Component, OnInit, Input, AfterViewInit } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { _HttpClient } from '@delon/theme';\r\nimport { NzButtonModule } from 'ng-zorro-antd/button';\r\nimport { NzInputModule } from 'ng-zorro-antd/input';\r\nimport { NzSpinModule } from 'ng-zorro-antd/spin';\r\nimport { NzMessageService } from 'ng-zorro-antd/message';\r\n\r\nimport { NzDrawerRef } from '@ebuilding/base/components/drawer';\r\nimport { ModuleAPI } from '@ebuilding/base/shared.var/shared.constant';\r\nimport { GramCodemirrorModule } from '@ebuilding/base/components/codemirror';\r\n\r\nimport { of, zip } from 'rxjs';\r\nimport _ from 'lodash';\r\n\r\n@Component({\r\n selector: 'formula-form-setting',\r\n templateUrl: './index.html',\r\n styleUrls: ['./index.less'],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n NzButtonModule,\r\n NzInputModule,\r\n NzSpinModule,\r\n GramCodemirrorModule\r\n ]\r\n})\r\nexport class FormulaFormSettingComponent implements OnInit, AfterViewInit {\r\n _config: any = null;\r\n\r\n loading: boolean = true;\r\n name: any = null;\r\n formulaValue: any = null;\r\n formulaTxt: any = null;\r\n fieldData: any[] = [];\r\n codeMirrorOptions: any = {};\r\n dataInfo: any = null;\r\n\r\n @Input()\r\n set config(value: any) {\r\n this._config = value;\r\n this.getPageData();\r\n }\r\n get config() {\r\n return this._config;\r\n }\r\n\r\n constructor(public http: _HttpClient, public drawerRef: NzDrawerRef<any>, public msg: NzMessageService) { }\r\n\r\n ngOnInit(): void { }\r\n\r\n ngAfterViewInit(): void {\r\n this.codeMirrorOptions = {\r\n autoCloseBrackets: true,\r\n keywords: [],\r\n textWrapping: true,\r\n lineWrapping: true,\r\n lineNumbers: false,\r\n matchBrackets: true,\r\n specialChars: /[\\u0000-\\u001f\\u007f\\u00ad\\u200c-\\u200f\\u2028\\u2029\\ufeff]/,\r\n mode: 'formula',\r\n labelMap: null,\r\n };\r\n }\r\n\r\n getFormulaInfo() {\r\n if (this.config.type == 'EDIT') {\r\n return this.http.post(`${ModuleAPI.rule}/rule/formula/getInfoById/${this.config.id}`);\r\n } else {\r\n return of(null);\r\n }\r\n }\r\n\r\n getPageData() {\r\n this.loading = true;\r\n new Promise((resolve: any) => {\r\n zip(this.getFormulaInfo(), this.http.post(`${ModuleAPI.paas}/apaas/form/rule/${this.config.sourceId}`)).subscribe(\r\n ([a, b]) => {\r\n if (a!! && a.success && a.result!!) {\r\n this.dataInfo = a.result;\r\n this.name = this.dataInfo?.name;\r\n this.formulaValue = this.dataInfo?.actualFormula;\r\n this.formulaTxt = this.dataInfo?.actualFormulaTxt;\r\n }\r\n if (b.success && b.result!!) {\r\n this.fieldData = [\r\n {\r\n label: '表单字段',\r\n listField: b.result.map((res: any) => {\r\n return {\r\n key: res.itemKey,\r\n label: `[${res.tableName}]-${res.itemLabel}`,\r\n };\r\n }),\r\n },\r\n ];\r\n }\r\n this.loading = false;\r\n },\r\n () => {\r\n this.loading = false;\r\n },\r\n () => {\r\n this.loading = false;\r\n resolve();\r\n },\r\n );\r\n });\r\n }\r\n\r\n textChange(e: any) {\r\n this.formulaTxt = e;\r\n }\r\n\r\n btnCancel() {\r\n this.drawerRef.close({\r\n type: 'close',\r\n data: null,\r\n });\r\n }\r\n\r\n btnSave() {\r\n if (this.name == null || this.name == '') {\r\n this.msg.warning('请输入表达式名称');\r\n return;\r\n }\r\n if (this.config.type == 'ADD') {\r\n this.saveAdd();\r\n } else {\r\n this.saveUpdate();\r\n }\r\n }\r\n\r\n saveAdd() {\r\n this.http\r\n .post(`${ModuleAPI.rule}/rule/formula/addInfo`, {\r\n sourceId: this.config.sourceId,\r\n sourceType: 'FORM',\r\n name: this.name,\r\n actualFormula: this.formulaValue,\r\n actualFormulaTxt: this.formulaTxt,\r\n })\r\n .subscribe((res: any) => {\r\n if (res.success) {\r\n this.msg.success('保存成功');\r\n this.config['id'] = res.result;\r\n\r\n this.drawerRef.close({\r\n type: 'save',\r\n data: null,\r\n });\r\n }\r\n this.loading = false;\r\n });\r\n }\r\n\r\n saveUpdate() {\r\n this.http\r\n .post(`${ModuleAPI.rule}/rule/formula/updateInfo`, {\r\n id: this.config.id,\r\n sourceId: this.config.sourceId,\r\n sourceType: 'FORM',\r\n name: this.name,\r\n actualFormula: this.formulaValue,\r\n actualFormulaTxt: this.formulaTxt,\r\n })\r\n .subscribe((res: any) => {\r\n if (res.success) {\r\n this.msg.success('保存成功');\r\n\r\n this.drawerRef.close({\r\n type: 'save',\r\n data: null,\r\n });\r\n }\r\n this.loading = false;\r\n });\r\n }\r\n}\r\n","<nz-spin [nzSpinning]=\"loading\" nzTip=\"拼命加载中...\" class=\"deon-list-spin\">\r\n <div class=\"name\">\r\n <label>名称</label>\r\n <input nz-input placeholder=\"请输入名称\" [(ngModel)]=\"name\" />\r\n </div>\r\n <div class=\"codemirror\" *ngIf=\"codeMirrorOptions!!\">\r\n <!-- <deon-codemirror\r\n #codemirror\r\n (textChange)=\"textChange($event)\"\r\n [options]=\"codeMirrorOptions\"\r\n [fieldData]=\"fieldData\"\r\n [(ngModel)]=\"formulaValue\"\r\n >\r\n </deon-codemirror> -->\r\n </div>\r\n\r\n <div class=\"deon-button\" *ngIf=\"!config.isView\">\r\n <button nz-button nzType=\"default\" (click)=\"btnCancel()\" type=\"button\"><i nz-icon nzType=\"close\"></i>取消</button>\r\n <button nz-button nzType=\"primary\" (click)=\"btnSave()\" type=\"button\"><i nz-icon nzType=\"save\"></i>保存</button>\r\n </div>\r\n</nz-spin>","\r\nimport { Component, OnInit, Input, AfterViewInit } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { _HttpClient } from '@delon/theme';\r\nimport { NzButtonModule } from 'ng-zorro-antd/button';\r\nimport { NzInputModule } from 'ng-zorro-antd/input';\r\nimport { NzSpinModule } from 'ng-zorro-antd/spin';\r\n\r\nimport { NzMessageService } from 'ng-zorro-antd/message';\r\nimport { NzDrawerRef } from '@ebuilding/base/components/drawer';\r\nimport { GramCodemirrorModule } from '@ebuilding/base/components/codemirror';\r\nimport { FormulaService } from \"../formula.service\";\r\n\r\n/**\r\n * 为表单字段内部服务\r\n */\r\n@Component({\r\n selector: 'formula-form-item',\r\n templateUrl: './index.html',\r\n styleUrls: ['./index.less'],\r\n providers: [FormulaService],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n NzButtonModule,\r\n NzInputModule,\r\n NzSpinModule,\r\n GramCodemirrorModule\r\n ]\r\n})\r\nexport class FormulaFormItemComponent implements OnInit, AfterViewInit {\r\n _config: any = null;\r\n\r\n loading: boolean = true;\r\n name: any = null;\r\n formulaValue: any = null;\r\n formulaTxt: any = null;\r\n fieldData: any[] = [];\r\n codeMirrorOptions: any = {};\r\n dataInfo: any = null;\r\n\r\n @Input()\r\n set config(value: any) {\r\n this._config = value;\r\n this.getPageData();\r\n }\r\n get config() {\r\n return this._config;\r\n }\r\n\r\n constructor(public http: _HttpClient, public drawerRef: NzDrawerRef<any>, public msg: NzMessageService) { }\r\n\r\n ngOnInit(): void { }\r\n\r\n ngAfterViewInit(): void {\r\n this.codeMirrorOptions = {\r\n autoCloseBrackets: true,\r\n keywords: [],\r\n textWrapping: true,\r\n lineWrapping: true,\r\n lineNumbers: false,\r\n matchBrackets: true,\r\n specialChars:\r\n /[\\u0000-\\u001f\\u007f\\u00ad\\u200c-\\u200f\\u2028\\u2029\\ufeff]/,\r\n mode: \"formula\",\r\n labelMap: null,\r\n };\r\n }\r\n\r\n getPageData() {\n if (this.config!! && this.config.data!! && this.config.data.id!!) {\n this.formulaValue = this.payrollItemKey(this.config.data.id);\n this.formulaTxt = this.config.data.name;\n }\n this.loading = false;\n }\n\r\n textChange(e: any) {\r\n if (!this.config.isView) {\r\n this.formulaTxt = e;\r\n }\r\n }\r\n\r\n btnCancel() {\r\n this.drawerRef.close({\r\n type: 'close',\r\n data: null,\r\n });\r\n }\r\n\r\n btnSave() {\n if (this.formulaValue!!) {\n this.drawerRef.close({\n type: 'save',\n data: {\n id: this.payrollItemKey(this.formulaValue),\n name: this.formulaTxt\n }\n });\n } else {\r\n this.drawerRef.close({\r\n type: 'save',\r\n data: null\r\n });\r\n }\n }\n\n private payrollItemKey(value: any) {\n const key = `${value || ''}`;\n return key && !key.startsWith('d_') ? `d_${key}` : key;\n }\n\n}\n","<nz-spin [nzSpinning]=\"loading\" nzTip=\"拼命加载中...\" class=\"deon-list-spin\">\r\n <div class=\"codemirror\" *ngIf=\"codeMirrorOptions!!\">\r\n <!-- <deon-codemirror #codemirror (textChange)=\"textChange($event)\" [options]=\"codeMirrorOptions\" [fieldData]=\"fieldData\"\r\n [(ngModel)]=\"formulaValue\">\r\n </deon-codemirror> -->\r\n </div>\r\n\r\n <div class=\"deon-button\" *ngIf=\"!config.isView\">\r\n <button nz-button nzType=\"default\" (click)=\"btnCancel()\" type=\"button\"><i nz-icon nzType=\"close\"></i>取消</button>\r\n <button nz-button nzType=\"primary\" (click)=\"btnSave()\" type=\"button\"><i nz-icon nzType=\"save\"></i>保存</button>\r\n </div>\r\n</nz-spin>","\r\nimport { Component, OnInit, Input, AfterViewInit } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { NzButtonModule } from 'ng-zorro-antd/button';\r\n\r\nimport { NzDrawerRef } from '@ebuilding/base/components/drawer';\r\nimport { GramCodemirrorModule } from '@ebuilding/base/components/codemirror';\r\n\r\nimport _ from 'lodash';\r\n\r\n@Component({\r\n selector: 'formula-rule-event',\r\n templateUrl: './index.html',\r\n styleUrls: ['./index.less'],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n NzButtonModule,\r\n GramCodemirrorModule\r\n ]\r\n})\r\nexport class FormulaRuleEventComponent implements OnInit, AfterViewInit {\r\n _config: any = null;\r\n\r\n loading: boolean = true;\r\n formulaValue: any = null;\r\n formulaTxt: any = null;\r\n fieldData: any[] = [];\r\n codeMirrorOptions: any = {};\r\n\r\n @Input()\r\n set config(value: any) {\r\n this._config = value;\r\n this.getPageData();\r\n }\r\n get config() {\r\n return this._config;\r\n }\r\n\r\n constructor(public drawerRef: NzDrawerRef<any>) { }\r\n\r\n ngOnInit(): void { }\r\n\r\n ngAfterViewInit(): void {\r\n this.codeMirrorOptions = {\r\n autoCloseBrackets: true,\r\n keywords: [],\r\n textWrapping: true,\r\n lineWrapping: true,\r\n lineNumbers: false,\r\n matchBrackets: true,\r\n specialChars:\r\n /[\\u0000-\\u001f\\u007f\\u00ad\\u200c-\\u200f\\u2028\\u2029\\ufeff]/,\r\n mode: \"formula\",\r\n labelMap: null,\r\n };\r\n }\r\n\r\n getPageData() {\r\n this.loading = true;\r\n if (this.config!! && this.config.sourceField!! && this.config.sourceField.length > 0) {\r\n this.fieldData = _.cloneDeep(this.config.sourceField);\r\n }\r\n if (this.config?.value) {\r\n this.formulaValue = this.config.value;\r\n }\r\n if (this.config?.text) {\r\n this.formulaTxt = this.config.text;\r\n }\r\n this.loading = false;\r\n }\r\n\r\n textChange(e: any) {\r\n this.formulaTxt = e;\r\n }\r\n\r\n btnCancel() {\r\n this.drawerRef.close({\r\n type: 'close',\r\n data: null,\r\n });\r\n }\r\n\r\n btnSave() {\r\n this.drawerRef.close({\r\n type: 'save',\r\n data: {\r\n value: this.formulaValue,\r\n text: this.formulaTxt\r\n },\r\n });\r\n }\r\n\r\n}","<div class=\"codemirror\">\r\n <deon-codemirror #codemirror [title]=\"''\" (textChange)=\"textChange($event)\" [fieldData]=\"fieldData\"\r\n [options]=\"codeMirrorOptions\" [(ngModel)]=\"formulaValue\">\r\n </deon-codemirror>\r\n</div>\r\n\r\n<div class=\"deon-button\">\r\n <button nz-button nzType=\"default\" (click)=\"btnCancel()\" type=\"button\"><i nz-icon nzType=\"cancel\"></i>取消</button>\r\n <button nz-button nzType=\"primary\" (click)=\"btnSave()\" type=\"button\"><i nz-icon nzType=\"save\"></i>保存</button>\r\n</div>","import { NgModule } from '@angular/core';\r\nimport { FormulaMainComponent } from './default/index';\r\nimport { FormulaFormSettingComponent } from './form-setting/index';\r\nimport { FormulaFormItemComponent } from './form-item/index';\r\nimport { FormulaRuleEventComponent } from './rule-event/index';\r\nconst components: any[] = [FormulaMainComponent, FormulaFormSettingComponent, FormulaFormItemComponent, FormulaRuleEventComponent];\r\n\r\n@NgModule({\r\n imports: [...components],\r\n exports: [...components],\r\n})\r\nexport class FormulaModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i4.FormulaService","i5","i6","i7","i1","i2","i3","i4"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"components.formula.mjs","sources":["../../../../packages/biz-comm/components/formula/src/formula.service.ts","../../../../packages/biz-comm/components/formula/src/default/index.ts","../../../../packages/biz-comm/components/formula/src/default/index.html","../../../../packages/biz-comm/components/formula/src/form-setting/index.ts","../../../../packages/biz-comm/components/formula/src/form-setting/index.html","../../../../packages/biz-comm/components/formula/src/form-item/index.ts","../../../../packages/biz-comm/components/formula/src/form-item/index.html","../../../../packages/biz-comm/components/formula/src/rule-event/index.ts","../../../../packages/biz-comm/components/formula/src/rule-event/index.html","../../../../packages/biz-comm/components/formula/src/index.module.ts","../../../../packages/biz-comm/components/formula/components.formula.ts"],"sourcesContent":["import { Directive } from '@angular/core';\r\nimport { _HttpClient } from '@delon/theme';\r\n@Directive()\r\nexport class FormulaService {\r\n\r\n loading: boolean = true;\r\n\r\n codeMirrorOptions: any = null;\r\n\r\n /**\r\n * ID \r\n */\r\n formulaValue: any = null;\r\n\r\n /**\r\n * Name\r\n */\r\n formulaTxt: any = null;\r\n\r\n /**\r\n * 左边项目集合\r\n */\r\n fieldData: any[] = [];\r\n\r\n initOptions() {\r\n this.codeMirrorOptions = {\r\n autoCloseBrackets: true,\r\n keywords: [],\r\n textWrapping: true,\r\n lineWrapping: true,\r\n lineNumbers: false,\r\n matchBrackets: true,\r\n specialChars:\r\n /[\\u0000-\\u001f\\u007f\\u00ad\\u200c-\\u200f\\u2028\\u2029\\ufeff]/,\r\n mode: \"formula\",\r\n labelMap: null,\r\n };\r\n }\r\n}","\r\nimport { Component, OnInit, Input, AfterViewInit } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { _HttpClient } from '@delon/theme';\r\nimport { NzButtonModule } from 'ng-zorro-antd/button';\r\nimport { NzInputModule } from 'ng-zorro-antd/input';\r\nimport { NzSpinModule } from 'ng-zorro-antd/spin';\r\nimport { NzMessageService } from 'ng-zorro-antd/message';\r\n\r\nimport { NzDrawerRef } from '@ebuilding/base/components/drawer';\r\nimport { ModuleAPI } from '@ebuilding/base/shared.var/shared.constant';\r\nimport { GramCodemirrorModule } from '@ebuilding/base/components/codemirror';\r\n\r\nimport { FormulaService } from \"../formula.service\";\r\nimport _ from 'lodash';\r\n\r\n@Component({\r\n selector: 'formula-main',\r\n templateUrl: './index.html',\r\n styleUrls: ['./index.less'],\r\n providers: [FormulaService],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n NzButtonModule,\r\n NzInputModule,\r\n NzSpinModule,\r\n GramCodemirrorModule\r\n ]\r\n})\r\nexport class FormulaMainComponent implements OnInit, AfterViewInit {\r\n _config: any = null;\r\n\r\n loading: boolean = true;\r\n name: any = null;\r\n formulaValue: any = null;\r\n formulaTxt: any = null;\r\n fieldData: any[] = [];\r\n codeMirrorOptions: any = {};\r\n dataInfo: any = null;\r\n\r\n @Input()\r\n set config(value: any) {\r\n this._config = value;\r\n this.getPageData();\r\n }\r\n get config() {\r\n return this._config;\r\n }\r\n\r\n constructor(public http: _HttpClient, public drawerRef: NzDrawerRef<any>, public msg: NzMessageService, public formulaSrv: FormulaService) { }\r\n\r\n ngOnInit(): void { }\r\n\r\n ngAfterViewInit(): void {\r\n this.formulaSrv.codeMirrorOptions = {\r\n autoCloseBrackets: true,\r\n keywords: [],\r\n textWrapping: true,\r\n lineWrapping: true,\r\n lineNumbers: false,\r\n matchBrackets: true,\r\n specialChars:\r\n /[\\u0000-\\u001f\\u007f\\u00ad\\u200c-\\u200f\\u2028\\u2029\\ufeff]/,\r\n mode: \"formula\",\r\n labelMap: null,\r\n };\r\n this.codeMirrorOptions = {\r\n autoCloseBrackets: true,\r\n keywords: [],\r\n textWrapping: true,\r\n lineWrapping: true,\r\n lineNumbers: false,\r\n matchBrackets: true,\r\n specialChars:\r\n /[\\u0000-\\u001f\\u007f\\u00ad\\u200c-\\u200f\\u2028\\u2029\\ufeff]/,\r\n mode: \"formula\",\r\n labelMap: null,\r\n };\r\n }\r\n\r\n getPageData() {\r\n this.loading = true;\r\n if (this.config!! && this.config.sourceField!! && this.config.sourceField.length > 0) {\r\n this.fieldData = _.cloneDeep(this.config.sourceField);\r\n }\r\n if (this.config.type == \"EDIT\") {\r\n this.http.post(`${ModuleAPI.rule}/rule/formula/getInfoById/${this.config.formulaId}`).subscribe((res: any) => {\r\n if (res!! && res.success && res.result!!) {\r\n this.dataInfo = res.result;\r\n this.formulaValue = res.result.actualFormula;\r\n this.formulaTxt = res.result.actualFormulaTxt;\r\n }\r\n this.loading = false;\r\n });\r\n } else {\r\n this.loading = false;\r\n }\r\n }\r\n\r\n textChange(e: any) {\r\n this.formulaTxt = e;\r\n }\r\n\r\n btnCancel() {\r\n this.drawerRef.close({\r\n type: 'close',\r\n data: null,\r\n });\r\n }\r\n\r\n btnSave() {\r\n if (this.name == null || this.name == \"\") {\r\n this.msg.warning(\"请输入表达式名称\");\r\n return;\r\n }\r\n if (this.config.type == \"ADD\") {\r\n this.saveAdd();\r\n } else {\r\n this.saveUpdate();\r\n }\r\n }\r\n\r\n saveAdd() {\r\n this.http.post(`${ModuleAPI.rule}/rule/formula/addInfo`, {\r\n sourceId: this.config.sourceId,\r\n sourceType: this.config.sourceType,\r\n name: this.name,\r\n actualFormula: this.formulaValue,\r\n actualFormulaTxt: this.formulaTxt\r\n }).subscribe((res: any) => {\r\n if (res.success) {\r\n this.msg.success(\"保存成功\");\r\n this.config[\"id\"] = res.result;\r\n this.drawerRef.close({\r\n type: 'save',\r\n data: {\r\n formulaId: this.config[\"id\"],\r\n formulaValue: this.formulaValue\r\n },\r\n });\r\n }\r\n this.loading = false;\r\n });\r\n }\r\n\r\n saveUpdate() {\r\n this.http.post(`${ModuleAPI.rule}/rule/formula/updateInfo`, {\r\n id: this.config.id,\r\n sourceId: this.config.sourceId,\r\n sourceType: this.config.sourceType,\r\n name: this.name,\r\n actualFormula: this.formulaValue,\r\n actualFormulaTxt: this.formulaTxt\r\n }).subscribe((res: any) => {\r\n if (res.success) {\r\n this.msg.success(\"保存成功\");\r\n this.drawerRef.close({\r\n type: 'save',\r\n data: {\r\n formulaId: this.config[\"id\"],\r\n formulaValue: this.formulaValue\r\n },\r\n });\r\n }\r\n this.loading = false;\r\n });\r\n }\r\n\r\n}","<div class=\"name\">\r\n <span>*</span>\r\n <label>表达式名称</label>\r\n <input nz-input placeholder=\"请输入表达式名称\" [(ngModel)]=\"name\" />\r\n</div>\r\n\r\n<div class=\"codemirror\">\r\n <!-- <deon-codemirror #codemirror [title]=\"''\" (textChange)=\"textChange($event)\" [fieldData]=\"fieldData\"\r\n [options]=\"codeMirrorOptions\" [(ngModel)]=\"formulaValue\">\r\n </deon-codemirror> -->\r\n</div>\r\n\r\n<div class=\"deon-button\">\r\n <button nz-button nzType=\"default\" (click)=\"btnCancel()\" type=\"button\"><i nz-icon nzType=\"cancel\"></i>取消</button>\r\n <button nz-button nzType=\"primary\" (click)=\"btnSave()\" type=\"button\"><i nz-icon nzType=\"save\"></i>保存</button>\r\n</div>","import { Component, OnInit, Input, AfterViewInit } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { _HttpClient } from '@delon/theme';\r\nimport { NzButtonModule } from 'ng-zorro-antd/button';\r\nimport { NzInputModule } from 'ng-zorro-antd/input';\r\nimport { NzSpinModule } from 'ng-zorro-antd/spin';\r\nimport { NzMessageService } from 'ng-zorro-antd/message';\r\n\r\nimport { NzDrawerRef } from '@ebuilding/base/components/drawer';\r\nimport { ModuleAPI } from '@ebuilding/base/shared.var/shared.constant';\r\nimport { GramCodemirrorModule } from '@ebuilding/base/components/codemirror';\r\n\r\nimport { of, zip } from 'rxjs';\r\nimport _ from 'lodash';\r\n\r\n@Component({\r\n selector: 'formula-form-setting',\r\n templateUrl: './index.html',\r\n styleUrls: ['./index.less'],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n NzButtonModule,\r\n NzInputModule,\r\n NzSpinModule,\r\n GramCodemirrorModule\r\n ]\r\n})\r\nexport class FormulaFormSettingComponent implements OnInit, AfterViewInit {\r\n _config: any = null;\r\n\r\n loading: boolean = true;\r\n name: any = null;\r\n formulaValue: any = null;\r\n formulaTxt: any = null;\r\n fieldData: any[] = [];\r\n codeMirrorOptions: any = {};\r\n dataInfo: any = null;\r\n\r\n @Input()\r\n set config(value: any) {\r\n this._config = value;\r\n this.getPageData();\r\n }\r\n get config() {\r\n return this._config;\r\n }\r\n\r\n constructor(public http: _HttpClient, public drawerRef: NzDrawerRef<any>, public msg: NzMessageService) { }\r\n\r\n ngOnInit(): void { }\r\n\r\n ngAfterViewInit(): void {\r\n this.codeMirrorOptions = {\r\n autoCloseBrackets: true,\r\n keywords: [],\r\n textWrapping: true,\r\n lineWrapping: true,\r\n lineNumbers: false,\r\n matchBrackets: true,\r\n specialChars: /[\\u0000-\\u001f\\u007f\\u00ad\\u200c-\\u200f\\u2028\\u2029\\ufeff]/,\r\n mode: 'formula',\r\n labelMap: null,\r\n };\r\n }\r\n\r\n getFormulaInfo() {\r\n if (this.config.type == 'EDIT') {\r\n return this.http.post(`${ModuleAPI.rule}/rule/formula/getInfoById/${this.config.id}`);\r\n } else {\r\n return of(null);\r\n }\r\n }\r\n\r\n getPageData() {\r\n this.loading = true;\r\n new Promise((resolve: any) => {\r\n zip(this.getFormulaInfo(), this.http.post(`${ModuleAPI.paas}/apaas/form/rule/${this.config.sourceId}`)).subscribe(\r\n ([a, b]) => {\r\n if (a!! && a.success && a.result!!) {\r\n this.dataInfo = a.result;\r\n this.name = this.dataInfo?.name;\r\n this.formulaValue = this.dataInfo?.actualFormula;\r\n this.formulaTxt = this.dataInfo?.actualFormulaTxt;\r\n }\r\n if (b.success && b.result!!) {\r\n this.fieldData = [\r\n {\r\n label: '表单字段',\r\n listField: b.result.map((res: any) => {\r\n return {\r\n key: res.itemKey,\r\n label: `[${res.tableName}]-${res.itemLabel}`,\r\n };\r\n }),\r\n },\r\n ];\r\n }\r\n this.loading = false;\r\n },\r\n () => {\r\n this.loading = false;\r\n },\r\n () => {\r\n this.loading = false;\r\n resolve();\r\n },\r\n );\r\n });\r\n }\r\n\r\n textChange(e: any) {\r\n this.formulaTxt = e;\r\n }\r\n\r\n btnCancel() {\r\n this.drawerRef.close({\r\n type: 'close',\r\n data: null,\r\n });\r\n }\r\n\r\n btnSave() {\r\n if (this.name == null || this.name == '') {\r\n this.msg.warning('请输入表达式名称');\r\n return;\r\n }\r\n if (this.config.type == 'ADD') {\r\n this.saveAdd();\r\n } else {\r\n this.saveUpdate();\r\n }\r\n }\r\n\r\n saveAdd() {\r\n this.http\r\n .post(`${ModuleAPI.rule}/rule/formula/addInfo`, {\r\n sourceId: this.config.sourceId,\r\n sourceType: 'FORM',\r\n name: this.name,\r\n actualFormula: this.formulaValue,\r\n actualFormulaTxt: this.formulaTxt,\r\n })\r\n .subscribe((res: any) => {\r\n if (res.success) {\r\n this.msg.success('保存成功');\r\n this.config['id'] = res.result;\r\n\r\n this.drawerRef.close({\r\n type: 'save',\r\n data: null,\r\n });\r\n }\r\n this.loading = false;\r\n });\r\n }\r\n\r\n saveUpdate() {\r\n this.http\r\n .post(`${ModuleAPI.rule}/rule/formula/updateInfo`, {\r\n id: this.config.id,\r\n sourceId: this.config.sourceId,\r\n sourceType: 'FORM',\r\n name: this.name,\r\n actualFormula: this.formulaValue,\r\n actualFormulaTxt: this.formulaTxt,\r\n })\r\n .subscribe((res: any) => {\r\n if (res.success) {\r\n this.msg.success('保存成功');\r\n\r\n this.drawerRef.close({\r\n type: 'save',\r\n data: null,\r\n });\r\n }\r\n this.loading = false;\r\n });\r\n }\r\n}\r\n","<nz-spin [nzSpinning]=\"loading\" nzTip=\"拼命加载中...\" class=\"deon-list-spin\">\r\n <div class=\"name\">\r\n <label>名称</label>\r\n <input nz-input placeholder=\"请输入名称\" [(ngModel)]=\"name\" />\r\n </div>\r\n <div class=\"codemirror\" *ngIf=\"codeMirrorOptions!!\">\r\n <!-- <deon-codemirror\r\n #codemirror\r\n (textChange)=\"textChange($event)\"\r\n [options]=\"codeMirrorOptions\"\r\n [fieldData]=\"fieldData\"\r\n [(ngModel)]=\"formulaValue\"\r\n >\r\n </deon-codemirror> -->\r\n </div>\r\n\r\n <div class=\"deon-button\" *ngIf=\"!config.isView\">\r\n <button nz-button nzType=\"default\" (click)=\"btnCancel()\" type=\"button\"><i nz-icon nzType=\"close\"></i>取消</button>\r\n <button nz-button nzType=\"primary\" (click)=\"btnSave()\" type=\"button\"><i nz-icon nzType=\"save\"></i>保存</button>\r\n </div>\r\n</nz-spin>","\r\nimport { Component, OnInit, Input, AfterViewInit } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { _HttpClient } from '@delon/theme';\r\nimport { NzButtonModule } from 'ng-zorro-antd/button';\r\nimport { NzInputModule } from 'ng-zorro-antd/input';\r\nimport { NzSpinModule } from 'ng-zorro-antd/spin';\r\n\r\nimport { NzMessageService } from 'ng-zorro-antd/message';\r\nimport { NzDrawerRef } from '@ebuilding/base/components/drawer';\r\nimport { GramCodemirrorModule } from '@ebuilding/base/components/codemirror';\r\nimport { FormulaService } from \"../formula.service\";\r\n\r\n/**\r\n * 为表单字段内部服务\r\n */\r\n@Component({\r\n selector: 'formula-form-item',\r\n templateUrl: './index.html',\r\n styleUrls: ['./index.less'],\r\n providers: [FormulaService],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n NzButtonModule,\r\n NzInputModule,\r\n NzSpinModule,\r\n GramCodemirrorModule\r\n ]\r\n})\r\nexport class FormulaFormItemComponent implements OnInit, AfterViewInit {\r\n _config: any = null;\r\n\r\n loading: boolean = true;\r\n name: any = null;\r\n formulaValue: any = null;\r\n formulaTxt: any = null;\r\n fieldData: any[] = [];\r\n codeMirrorOptions: any = {};\r\n dataInfo: any = null;\r\n\r\n @Input()\r\n set config(value: any) {\r\n this._config = value;\r\n this.getPageData();\r\n }\r\n get config() {\r\n return this._config;\r\n }\r\n\r\n constructor(public http: _HttpClient, public drawerRef: NzDrawerRef<any>, public msg: NzMessageService) { }\r\n\r\n ngOnInit(): void { }\r\n\r\n ngAfterViewInit(): void {\r\n this.codeMirrorOptions = {\r\n autoCloseBrackets: true,\r\n keywords: [],\r\n textWrapping: true,\r\n lineWrapping: true,\r\n lineNumbers: false,\r\n matchBrackets: true,\r\n specialChars:\r\n /[\\u0000-\\u001f\\u007f\\u00ad\\u200c-\\u200f\\u2028\\u2029\\ufeff]/,\r\n mode: \"formula\",\r\n labelMap: null,\r\n };\r\n }\r\n\r\n getPageData() {\n if (this.config!! && this.config.data!! && this.config.data.id!!) {\n this.formulaValue = this.payrollItemKey(this.config.data.id);\n this.formulaTxt = this.config.data.name;\n }\n this.loading = false;\n }\n\r\n textChange(e: any) {\r\n if (!this.config.isView) {\r\n this.formulaTxt = e;\r\n }\r\n }\r\n\r\n btnCancel() {\r\n this.drawerRef.close({\r\n type: 'close',\r\n data: null,\r\n });\r\n }\r\n\r\n btnSave() {\n if (this.formulaValue!!) {\n this.drawerRef.close({\n type: 'save',\n data: {\n id: this.payrollItemKey(this.formulaValue),\n name: this.formulaTxt\n }\n });\n } else {\r\n this.drawerRef.close({\r\n type: 'save',\r\n data: null\r\n });\r\n }\n }\n\n private payrollItemKey(value: any) {\n const key = `${value || ''}`;\n return key && !key.startsWith('d_') ? `d_${key}` : key;\n }\n\n}\n","<nz-spin [nzSpinning]=\"loading\" nzTip=\"拼命加载中...\" class=\"deon-list-spin\">\r\n <div class=\"codemirror\" *ngIf=\"codeMirrorOptions!!\">\r\n <!-- <deon-codemirror #codemirror (textChange)=\"textChange($event)\" [options]=\"codeMirrorOptions\" [fieldData]=\"fieldData\"\r\n [(ngModel)]=\"formulaValue\">\r\n </deon-codemirror> -->\r\n </div>\r\n\r\n <div class=\"deon-button\" *ngIf=\"!config.isView\">\r\n <button nz-button nzType=\"default\" (click)=\"btnCancel()\" type=\"button\"><i nz-icon nzType=\"close\"></i>取消</button>\r\n <button nz-button nzType=\"primary\" (click)=\"btnSave()\" type=\"button\"><i nz-icon nzType=\"save\"></i>保存</button>\r\n </div>\r\n</nz-spin>","import { Component, OnInit, Input, AfterViewInit } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { NzButtonModule } from 'ng-zorro-antd/button';\n\nimport { NzDrawerRef } from '@ebuilding/base/components/drawer';\nimport {\n FormulaFunctionGroup,\n GramCodemirrorModule,\n} from '@ebuilding/base/components/codemirror';\n\nimport _ from 'lodash';\n\n@Component({\n selector: 'formula-rule-event',\n templateUrl: './index.html',\n styleUrls: ['./index.less'],\n imports: [CommonModule, FormsModule, NzButtonModule, GramCodemirrorModule],\n})\nexport class FormulaRuleEventComponent implements OnInit, AfterViewInit {\n _config: any = null;\n\n loading: boolean = true;\n formulaValue: any = null;\n formulaTxt: any = null;\n fieldData: any[] = [];\n functionData: FormulaFunctionGroup[] = [];\n codeMirrorOptions: any = {};\n\n @Input()\n set config(value: any) {\n this._config = value;\n this.getPageData();\n }\n get config() {\n return this._config;\n }\n\n constructor(public drawerRef: NzDrawerRef<any>) {}\n\n ngOnInit(): void {}\n\n ngAfterViewInit(): void {\n this.codeMirrorOptions = {\n autoCloseBrackets: true,\n keywords: [],\n textWrapping: true,\n lineWrapping: true,\n lineNumbers: false,\n matchBrackets: true,\n specialChars:\n /[\\u0000-\\u001f\\u007f\\u00ad\\u200c-\\u200f\\u2028\\u2029\\ufeff]/,\n mode: 'formula',\n labelMap: null,\n };\n }\n\n getPageData() {\n this.loading = true;\n if (\n this.config!! &&\n this.config.sourceField!! &&\n this.config.sourceField.length > 0\n ) {\n this.fieldData = _.cloneDeep(this.config.sourceField);\n }\n if (Array.isArray(this.config?.functionData)) {\n this.functionData = _.cloneDeep(this.config.functionData);\n }\n if (this.config?.value) {\n this.formulaValue = this.config.value;\n }\n if (this.config?.text) {\n this.formulaTxt = this.config.text;\n }\n this.loading = false;\n }\n\n textChange(e: any) {\n this.formulaTxt = e;\n }\n\n btnCancel() {\n this.drawerRef.close({\n type: 'close',\n data: null,\n });\n }\n\n btnSave() {\n this.drawerRef.close({\n type: 'save',\n data: {\n value: this.formulaValue,\n text: this.formulaTxt,\n },\n });\n }\n}\n","<div class=\"codemirror\">\n <deon-codemirror\n #codemirror\n [title]=\"''\"\n (textChange)=\"textChange($event)\"\n [fieldData]=\"fieldData\"\n [functionData]=\"functionData\"\n [options]=\"codeMirrorOptions\"\n [(ngModel)]=\"formulaValue\"\n >\n </deon-codemirror>\n</div>\n\n<div class=\"deon-button\">\n <button nz-button nzType=\"default\" (click)=\"btnCancel()\" type=\"button\">\n <i nz-icon nzType=\"cancel\"></i>取消\n </button>\n <button nz-button nzType=\"primary\" (click)=\"btnSave()\" type=\"button\">\n <i nz-icon nzType=\"save\"></i>保存\n </button>\n</div>\n","import { NgModule } from '@angular/core';\r\nimport { FormulaMainComponent } from './default/index';\r\nimport { FormulaFormSettingComponent } from './form-setting/index';\r\nimport { FormulaFormItemComponent } from './form-item/index';\r\nimport { FormulaRuleEventComponent } from './rule-event/index';\r\nconst components: any[] = [FormulaMainComponent, FormulaFormSettingComponent, FormulaFormItemComponent, FormulaRuleEventComponent];\r\n\r\n@NgModule({\r\n imports: [...components],\r\n exports: [...components],\r\n})\r\nexport class FormulaModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i4.FormulaService","i5","i6","i7","i1","i2","i3","i4"],"mappings":"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"}
|