import { Injectable } from '@angular/core'; import { CheckboxGroupValue } from './entity/conditionvalue/checkboxgroupvalue'; import { HelpValue } from './entity/conditionvalue/helpvalue'; import { TextValue } from './entity/conditionvalue/textvalue'; import { FieldConfig } from './entity/fieldconfig/fieldconfig'; import { TextControl } from './entity/controltype/text/textcontrol'; import { SearchValue } from './entity/conditionvalue/searchvalue'; import { DateValue } from './entity/conditionvalue/datevalue'; import { DateRangeValue } from './entity/conditionvalue/daterangevalue'; import { DateRangeTimeValue } from './entity/conditionvalue/daterangetimevalue'; import { DropDownListValue } from './entity/conditionvalue/dropdownlistvalue'; import { NumberRangeValue } from './entity/conditionvalue/numberrangevaue'; import { IControl } from './entity/controltype/icontrol'; import { DateControl } from './entity/controltype/date/datecontrol'; import { NumberRangeControl } from './entity/controltype/numberrange/numberrangecontrol'; import { SearchControl } from './entity/controltype/search/searchcontrol'; import { DropDownControl } from './entity/controltype/dropdownlist/dropdowncontrol'; import { EnumType } from './entity/controltype/dropdownlist/enumtype'; import { EnumBoolValue } from './entity/controltype/dropdownlist/boolenumvalue'; import { EnumStringValue } from './entity/controltype/dropdownlist/stringenumvalue'; import { EnumIntegerValue } from './entity/controltype/dropdownlist/integerenumvalue'; import { HelpContol } from './entity/controltype/help/helpcontrol'; import { CheckboxValue } from './entity/controltype/checkbox/checkboxvalue'; import { DateRangeControl } from './entity/controltype/datarange/daterangecontrol'; import { DateRangeTimeControl } from './entity/controltype/datarangetime/daterangetimecontrol'; import { CheckboxGroupControl } from './entity/controltype/checkbox/checkboxcontrol'; import { RadioControl } from './entity/controltype/radio/radiocontrol'; import { RadioGroupValue } from './entity/conditionvalue/radiovalue'; import { RadioIEnumValue } from './entity/controltype/radio/ienumvalue'; import { YearValue } from './entity/conditionvalue/yearvalue'; import { MonthValue } from './entity/conditionvalue/month'; import { YearRangeValue } from './entity/conditionvalue/yearrange'; import { MonthRangeValue } from './entity/conditionvalue/monthrange'; import { YearControl } from './entity/controltype/year/yearcontrol'; import { MonthControl } from './entity/controltype/month/monthcontrol'; import { YearRangeControl } from './entity/controltype/yearrange/yearrangecontrol'; import { MonthRangeControl } from './entity/controltype/monthrange/monthrangecontrol'; import { DialogButtonConfig, DialogConfig, InputGroupControl } from './entity/controltype/input-group/inputgroupcontrol'; import { InputGroupValue } from './entity/conditionvalue/inputgroup'; import { NumberControl } from './entity/controltype/number/numbercontrol'; import { NumberValue } from './entity/conditionvalue/numbervalue'; import { FlexibleNumberValue } from './entity/conditionvalue/flexiblenumbervalue'; import { FlexibleNumberControl } from './entity/controltype/flexiblenumbercontrol'; import { FlexibleDateValue } from './entity/conditionvalue/flexibledatevalue'; import { FlexibleDateControl } from './entity/controltype/flexibledatecontrol'; @Injectable({ providedIn: 'root' }) export class FilterService { constructor() { } fieldSchemasConvert(filedSchemas: Array): Array { const fieldConfigs = new Array(); if (!(filedSchemas) || filedSchemas.length <= 0) { return fieldConfigs; } else { filedSchemas.forEach(filedSchema => { const fieldConfig = new FieldConfig(); fieldConfig.id = filedSchema.hasOwnProperty('id') ? filedSchema.id : ''; fieldConfig.labelCode = filedSchema.labelCode; fieldConfig.code = filedSchema.hasOwnProperty('code') ? filedSchema.code : ''; fieldConfig.placeHolder = filedSchema.placeHolder; fieldConfig.beginPlaceHolder = filedSchema.beginPlaceHolder; fieldConfig.endPlaceHolder = filedSchema.endPlaceHolder; fieldConfig.name = filedSchema.name || filedSchema.fieldName; if (filedSchema.value) { fieldConfig.filled = true; } else { fieldConfig.filled = false; } if (!(filedSchema.control) || !(filedSchema.control.controltype)) { fieldConfig.control = new TextControl(); fieldConfig.value = new TextValue(filedSchema.value); } else { if (filedSchema.control.controltype == 'text') { fieldConfig.control = this.getTextControl(filedSchema); fieldConfig.value = new TextValue(filedSchema.value); } else if (filedSchema.control.controltype == 'search') { fieldConfig.control = this.getSearchControl(filedSchema); fieldConfig.value = new SearchValue(filedSchema.value); } else if (filedSchema.control.controltype == 'singleDate') { fieldConfig.control = this.getDateControl(filedSchema); fieldConfig.value = new DateValue(filedSchema.value); } else if (filedSchema.control.controltype == 'year') { fieldConfig.control = this.getYearControl(filedSchema); fieldConfig.value = new YearValue(filedSchema.value); } else if (filedSchema.control.controltype == 'month') { fieldConfig.control = this.getMonthControl(filedSchema); fieldConfig.value = new MonthValue(filedSchema.value); } else if (filedSchema.control.controltype == 'yearRange') { fieldConfig.control = this.getYearRangeControl(filedSchema); fieldConfig.value = new YearRangeValue(filedSchema.value); } else if (filedSchema.control.controltype == 'monthRange') { fieldConfig.control = this.getMonthRangeControl(filedSchema); fieldConfig.value = new MonthRangeValue(filedSchema.value); } else if (filedSchema.control.controltype == 'date') { fieldConfig.control = this.getDateRangeControl(filedSchema); fieldConfig.value = new DateRangeValue(filedSchema.value); } else if (filedSchema.control.controltype == 'datetime') { fieldConfig.control = this.getDateRangeTimeControl(filedSchema); fieldConfig.value = new DateRangeTimeValue(filedSchema.value); } else if (filedSchema.control.controltype == 'dropdown') { fieldConfig.control = this.getDropDownControl(filedSchema); fieldConfig.value = new DropDownListValue(filedSchema.value); // fieldConfig.control = this.getRadioControl(filedSchema); // fieldConfig.value = new RadioGroupValue(filedSchema.value); } else if (filedSchema.control.controltype == 'number') { fieldConfig.control = this.getNumberRangeControl(filedSchema); fieldConfig.value = new NumberRangeValue(filedSchema.value); } else if (filedSchema.control.controltype == 'help') { fieldConfig.control = this.getLookUpEditControl(filedSchema); fieldConfig.value = new HelpValue(filedSchema.value); } else if (filedSchema.control.controltype == 'checkboxgroup') { fieldConfig.control = this.getCheckboxGroupControl(filedSchema); fieldConfig.value = new CheckboxGroupValue(filedSchema.value); } else if (filedSchema.control.controltype == 'radio') { fieldConfig.control = this.getRadioControl(filedSchema); fieldConfig.value = new RadioGroupValue(filedSchema.value); } else if (filedSchema.control.controltype == 'input-group') { fieldConfig.control = this.getInputGroupControl(filedSchema); fieldConfig.value = new InputGroupValue(filedSchema.value); } else if (filedSchema.control.controltype == 'singlenumber') { fieldConfig.control = this.getNumberControl(filedSchema); fieldConfig.value = new NumberValue(filedSchema.value); } else if (filedSchema.control.controltype == 'flexibleNumber') { fieldConfig.control = this.getFlexibleNumberControl(filedSchema); fieldConfig.value = new FlexibleNumberValue(filedSchema.value, fieldConfig.control['single']); } else if (filedSchema.control.controltype == 'flexibleDate') { fieldConfig.control = this.getFlexibleDateControl(filedSchema); fieldConfig.value = new FlexibleDateValue(filedSchema.value, fieldConfig.control['single']); } else if (filedSchema.control.controltype == 'bool-check') { filedSchema.control.enumValues = [{ value: "true", name: filedSchema.name }]; fieldConfig.control = this.getCheckboxGroupControl(filedSchema,true); fieldConfig.value = new CheckboxGroupValue(filedSchema.value); } else { fieldConfig.control = this.getTextControl(filedSchema); fieldConfig.value = new TextValue(filedSchema.value); } } fieldConfig.valueText = fieldConfig.value.getValueText(); // if(filedSchema.control.controltype == 'dropdown'){ // fieldConfig.control.controltype = 'radio' // } // else{ fieldConfig.control.controltype = filedSchema.control.controltype; // } fieldConfigs.push(fieldConfig); }); } return fieldConfigs; } private getTextControl(filedSchema: any): IControl { let textControl = new TextControl(); textControl.placeholder = filedSchema.control.placeholder ? filedSchema.control.placeholder : ''; textControl.isExtend = filedSchema.control.hasOwnProperty('isExtend') ? filedSchema.control.isExtend : false; textControl.showLabel = filedSchema.control.hasOwnProperty('showLabel') ? filedSchema.control.showLabel : true; textControl.required = filedSchema.control.hasOwnProperty('required') ? filedSchema.control.required : false; return textControl; } private getInputGroupControl(filedSchema: any): IControl { let inputGroupControl = new InputGroupControl(); inputGroupControl.placeholder = filedSchema.control.placeholder ? filedSchema.control.placeholder : ''; inputGroupControl.isExtend = filedSchema.control.hasOwnProperty('isExtend') ? filedSchema.control.isExtend : false; inputGroupControl.showLabel = filedSchema.control.hasOwnProperty('showLabel') ? filedSchema.control.showLabel : true; inputGroupControl.required = filedSchema.control.hasOwnProperty('required') ? filedSchema.control.required : false; inputGroupControl.editable = filedSchema.control.hasOwnProperty('editable') ? filedSchema.control.editable : true; inputGroupControl.groupText = filedSchema.control.hasOwnProperty('groupText') ? filedSchema.control.groupText : ''; inputGroupControl.usageMode = filedSchema.control.usageMode; inputGroupControl.dialogOptions = this.setInputGroupDialog(filedSchema.control.usageMode, filedSchema.control.modalConfig, filedSchema.id); inputGroupControl.click = filedSchema.control.click; return inputGroupControl; } private getDateControl(filedSchema: any): IControl { let dateControl = new DateControl(); dateControl.placeholder = filedSchema.control.placeholder ? filedSchema.control.placeholder : ''; dateControl.isExtend = filedSchema.control.hasOwnProperty('isExtend') ? filedSchema.control.isExtend : false; dateControl.showLabel = filedSchema.control.hasOwnProperty('showLabel') ? filedSchema.control.showLabel : true; dateControl.required = filedSchema.control.hasOwnProperty('required') ? filedSchema.control.required : false; dateControl.format = filedSchema.control.format; dateControl.compareType = filedSchema.control.hasOwnProperty('compareType') ? filedSchema.control.compareType : 0; // dateControl.showType = filedSchema.control.hasOwnProperty('showType')? filedSchema.control.showType : ''; return dateControl; } private getYearControl(filedSchema: any): IControl { let yearControl = new YearControl(); yearControl.placeholder = filedSchema.control.placeholder ? filedSchema.control.placeholder : ''; yearControl.isExtend = filedSchema.control.hasOwnProperty('isExtend') ? filedSchema.control.isExtend : false; yearControl.showLabel = filedSchema.control.hasOwnProperty('showLabel') ? filedSchema.control.showLabel : true; yearControl.required = filedSchema.control.hasOwnProperty('required') ? filedSchema.control.required : false; yearControl.format = filedSchema.control.hasOwnProperty('format') ? filedSchema.control.format : ''; yearControl.compareType = filedSchema.control.hasOwnProperty('compareType') ? filedSchema.control.compareType : 0; // yearControl.showType = filedSchema.control.hasOwnProperty('showType')? filedSchema.control.showType : ''; return yearControl; } private getMonthControl(filedSchema: any): IControl { let monthControl = new MonthControl(); monthControl.placeholder = filedSchema.control.placeholder ? filedSchema.control.placeholder : ''; monthControl.isExtend = filedSchema.control.hasOwnProperty('isExtend') ? filedSchema.control.isExtend : false; monthControl.showLabel = filedSchema.control.hasOwnProperty('showLabel') ? filedSchema.control.showLabel : true; monthControl.required = filedSchema.control.hasOwnProperty('required') ? filedSchema.control.required : false; monthControl.format = filedSchema.control.hasOwnProperty('format') ? filedSchema.control.format : ''; monthControl.compareType = filedSchema.control.hasOwnProperty('compareType') ? filedSchema.control.compareType : 0; // yearControl.showType = filedSchema.control.hasOwnProperty('showType')? filedSchema.control.showType : ''; return monthControl; } private getYearRangeControl(filedSchema: any): IControl { let yearRangeControl = new YearRangeControl(); yearRangeControl.isExtend = filedSchema.control.hasOwnProperty('isExtend') ? filedSchema.control.isExtend : false; yearRangeControl.showLabel = filedSchema.control.hasOwnProperty('showLabel') ? filedSchema.control.showLabel : true; yearRangeControl.required = filedSchema.control.hasOwnProperty('required') ? filedSchema.control.required : false; yearRangeControl.placeholder = filedSchema.control.placeholder ? filedSchema.control.placeholder : ''; yearRangeControl.beginPlaceHolder = filedSchema.control.beginPlaceHolder ? filedSchema.control.beginPlaceHolder : ''; yearRangeControl.endPlaceHolder = filedSchema.control.endPlaceHolder ? filedSchema.control.endPlaceHolder : ''; yearRangeControl.format = filedSchema.control.hasOwnProperty('format') ? filedSchema.control.format : ''; return yearRangeControl; } private getMonthRangeControl(filedSchema: any): IControl { let monthRangeControl = new MonthRangeControl(); monthRangeControl.isExtend = filedSchema.control.hasOwnProperty('isExtend') ? filedSchema.control.isExtend : false; monthRangeControl.showLabel = filedSchema.control.hasOwnProperty('showLabel') ? filedSchema.control.showLabel : true; monthRangeControl.required = filedSchema.control.hasOwnProperty('required') ? filedSchema.control.required : false; monthRangeControl.placeholder = filedSchema.control.placeholder ? filedSchema.control.placeholder : ''; monthRangeControl.beginPlaceHolder = filedSchema.control.beginPlaceHolder ? filedSchema.control.beginPlaceHolder : ''; monthRangeControl.endPlaceHolder = filedSchema.control.endPlaceHolder ? filedSchema.control.endPlaceHolder : ''; monthRangeControl.format = filedSchema.control.hasOwnProperty('format') ? filedSchema.control.format : ''; return monthRangeControl; } private getNumberRangeControl(filedSchema: any): IControl { let numberRangeControl = new NumberRangeControl(); numberRangeControl.placeholder = filedSchema.control.placeholder ? filedSchema.control.placeholder : ''; numberRangeControl.beginPlaceHolder = filedSchema.control.beginPlaceHolder ? filedSchema.control.beginPlaceHolder : ''; numberRangeControl.endPlaceHolder = filedSchema.control.endPlaceHolder ? filedSchema.control.endPlaceHolder : ''; numberRangeControl.precision = filedSchema.control.hasOwnProperty('precision') ? filedSchema.control.precision : 2; numberRangeControl.isExtend = filedSchema.control.hasOwnProperty('isExtend') ? filedSchema.control.isExtend : false; numberRangeControl.showLabel = filedSchema.control.hasOwnProperty('showLabel') ? filedSchema.control.showLabel : true; numberRangeControl.required = filedSchema.control.hasOwnProperty('required') ? filedSchema.control.required : false; numberRangeControl.bigNumber = filedSchema.control.hasOwnProperty('bigNumber') ? filedSchema.control.bigNumber : false; return numberRangeControl; } private getNumberControl(filedSchema: any): IControl { let numberControl = new NumberControl(); numberControl.precision = filedSchema.control.hasOwnProperty('precision') ? filedSchema.control.precision : 2; numberControl.placeholder = filedSchema.control.placeholder ? filedSchema.control.placeholder : ''; numberControl.isExtend = filedSchema.control.hasOwnProperty('isExtend') ? filedSchema.control.isExtend : false; numberControl.showLabel = filedSchema.control.hasOwnProperty('showLabel') ? filedSchema.control.showLabel : true; numberControl.required = filedSchema.control.hasOwnProperty('required') ? filedSchema.control.required : false; numberControl.bigNumber = filedSchema.control.hasOwnProperty('bigNumber') ? filedSchema.control.bigNumber : false; return numberControl; } private getFlexibleNumberControl(filedSchema: any): IControl { let flexiblenumberControl = new FlexibleNumberControl(); flexiblenumberControl.placeholder = filedSchema.control.placeholder ? filedSchema.control.placeholder : ''; flexiblenumberControl.beginPlaceHolder = filedSchema.control.beginPlaceHolder ? filedSchema.control.beginPlaceHolder : ''; flexiblenumberControl.endPlaceHolder = filedSchema.control.endPlaceHolder ? filedSchema.control.endPlaceHolder : ''; flexiblenumberControl.precision = filedSchema.control.hasOwnProperty('precision') ? filedSchema.control.precision : 2; flexiblenumberControl.isExtend = filedSchema.control.hasOwnProperty('isExtend') ? filedSchema.control.isExtend : false; flexiblenumberControl.showLabel = filedSchema.control.hasOwnProperty('showLabel') ? filedSchema.control.showLabel : true; flexiblenumberControl.required = filedSchema.control.hasOwnProperty('required') ? filedSchema.control.required : false; flexiblenumberControl.bigNumber = filedSchema.control.hasOwnProperty('bigNumber') ? filedSchema.control.bigNumber : false; flexiblenumberControl.single = filedSchema.control.hasOwnProperty('single') ? filedSchema.control.single : true; return flexiblenumberControl; } private getFlexibleDateControl(filedSchema: any): IControl { let flexibledateControl = new FlexibleDateControl(); flexibledateControl.placeholder = filedSchema.control.placeholder ? filedSchema.control.placeholder : ''; flexibledateControl.beginPlaceHolder = filedSchema.control.beginPlaceHolder ? filedSchema.control.beginPlaceHolder : ''; flexibledateControl.endPlaceHolder = filedSchema.control.endPlaceHolder ? filedSchema.control.endPlaceHolder : ''; flexibledateControl.isExtend = filedSchema.control.hasOwnProperty('isExtend') ? filedSchema.control.isExtend : false; flexibledateControl.showLabel = filedSchema.control.hasOwnProperty('showLabel') ? filedSchema.control.showLabel : true; flexibledateControl.required = filedSchema.control.hasOwnProperty('required') ? filedSchema.control.required : false; flexibledateControl.single = filedSchema.control.hasOwnProperty('single') ? filedSchema.control.single : true; flexibledateControl.format = filedSchema.control.hasOwnProperty('format') ? filedSchema.control.format : ''; flexibledateControl.showType = filedSchema.control.showType; flexibledateControl.showTime = filedSchema.control.showTime; return flexibledateControl; } private getSearchControl(filedSchema: any): IControl { let searchControl = new SearchControl(); searchControl.placeholder = filedSchema.control.placeholder ? filedSchema.control.placeholder : ''; searchControl.isExtend = filedSchema.control.hasOwnProperty('isExtend') ? filedSchema.control.isExtend : false; searchControl.showLabel = filedSchema.control.hasOwnProperty('showLabel') ? filedSchema.control.showLabel : true; searchControl.required = filedSchema.control.hasOwnProperty('required') ? filedSchema.control.required : false; return searchControl; } private getDropDownControl(filedSchema: any): IControl { let dropdowncontrol = new DropDownControl(); dropdowncontrol.placeholder = filedSchema.control.placeholder ? filedSchema.control.placeholder : ''; filedSchema.control.valueType = filedSchema.control.valueType ? filedSchema.control.valueType : '1'; dropdowncontrol.isExtend = filedSchema.control.hasOwnProperty('isExtend') ? filedSchema.control.isExtend : false; dropdowncontrol.showLabel = filedSchema.control.hasOwnProperty('showLabel') ? filedSchema.control.showLabel : true; dropdowncontrol.required = filedSchema.control.hasOwnProperty('required') ? filedSchema.control.required : false; if (filedSchema.control.valueType == "1") { dropdowncontrol.valueType = EnumType.StringType; dropdowncontrol.enumValues = filedSchema.control.enumValues as Array; } else if (filedSchema.control.valueType == "2") { dropdowncontrol.valueType = EnumType.BoolType; dropdowncontrol.enumValues = filedSchema.control.enumValues as Array; } else if (filedSchema.control.valueType == "0") { dropdowncontrol.valueType = EnumType.IntType; dropdowncontrol.enumValues = filedSchema.control.enumValues as Array; } return dropdowncontrol; } private getLookUpEditControl(filedSchema: any): IControl { let lookupEdit = new HelpContol(); if (!!(filedSchema.control.uri)) { lookupEdit.uri = filedSchema.control.uri; } lookupEdit.textField = filedSchema.control.textField; lookupEdit.valueField = filedSchema.control.valueField; lookupEdit.idField = filedSchema.control.idField; lookupEdit.helpId = filedSchema.control.helpId; lookupEdit.mapFields = filedSchema.control.mapFields; lookupEdit.context = filedSchema.control.context; lookupEdit.preEventCmd = filedSchema.control.preEventCmd; lookupEdit.postEventCmd = filedSchema.control.postEventCmd; lookupEdit.enableFullTree = filedSchema.control.enableFullTree; lookupEdit.loadTreeDataType = filedSchema.control.loadTreeDataType; //新增 lookupEdit.singleSelect = filedSchema.control.hasOwnProperty('singleSelect') ? filedSchema.control.singleSelect : true; lookupEdit.expandLevel = filedSchema.control.expandLevel; lookupEdit.enableCascade = filedSchema.control.enableCascade; lookupEdit.isExtend = filedSchema.control.hasOwnProperty('isExtend') ? filedSchema.control.isExtend : false; lookupEdit.displayType = filedSchema.control.hasOwnProperty('displayType') ? filedSchema.control.displayType : "LIST"; lookupEdit.showLabel = filedSchema.control.hasOwnProperty('showLabel') ? filedSchema.control.showLabel : true; lookupEdit.required = filedSchema.control.hasOwnProperty('required') ? filedSchema.control.required : false; lookupEdit.placeholder = filedSchema.control.placeholder ? filedSchema.control.placeholder : ''; return lookupEdit; } private getCheckboxGroupControl(filedSchema: any,boolcheck:boolean = false): IControl { let checkboxGroupcontrol = new CheckboxGroupControl(); checkboxGroupcontrol.enumValues = filedSchema.control.enumValues as Array; checkboxGroupcontrol.isExtend = filedSchema.control.hasOwnProperty('isExtend') ? filedSchema.control.isExtend : false; checkboxGroupcontrol.showLabel = filedSchema.control.hasOwnProperty('showLabel') ? filedSchema.control.showLabel : true; checkboxGroupcontrol.required = filedSchema.control.hasOwnProperty('required') ? filedSchema.control.required : false; if(boolcheck) checkboxGroupcontrol.boolcheck = true; return checkboxGroupcontrol; } private getDateRangeControl(filedSchema: any): IControl { let dateRangeControl = new DateRangeControl(); dateRangeControl.isExtend = filedSchema.control.hasOwnProperty('isExtend') ? filedSchema.control.isExtend : false; dateRangeControl.showLabel = filedSchema.control.hasOwnProperty('showLabel') ? filedSchema.control.showLabel : true; dateRangeControl.required = filedSchema.control.hasOwnProperty('required') ? filedSchema.control.required : false; dateRangeControl.placeholder = filedSchema.control.placeholder ? filedSchema.control.placeholder : ''; dateRangeControl.beginPlaceHolder = filedSchema.control.beginPlaceHolder ? filedSchema.control.beginPlaceHolder : ''; dateRangeControl.endPlaceHolder = filedSchema.control.endPlaceHolder ? filedSchema.control.endPlaceHolder : ''; dateRangeControl.format = filedSchema.control.format; // dateRangeControl.showType = filedSchema.control.hasOwnProperty('showType')? filedSchema.control.showType : ''; return dateRangeControl; } private getDateRangeTimeControl(filedSchema: any): IControl { let dateRangeControl = new DateRangeTimeControl(); dateRangeControl.isExtend = filedSchema.control.hasOwnProperty('isExtend') ? filedSchema.control.isExtend : false; dateRangeControl.showLabel = filedSchema.control.hasOwnProperty('showLabel') ? filedSchema.control.showLabel : true; dateRangeControl.required = filedSchema.control.hasOwnProperty('required') ? filedSchema.control.required : false; dateRangeControl.placeholder = filedSchema.control.placeholder ? filedSchema.control.placeholder : ''; dateRangeControl.beginPlaceHolder = filedSchema.control.beginPlaceHolder ? filedSchema.control.beginPlaceHolder : ''; dateRangeControl.endPlaceHolder = filedSchema.control.endPlaceHolder ? filedSchema.control.endPlaceHolder : ''; dateRangeControl.format = filedSchema.control.format; return dateRangeControl; } private getRadioControl(filedSchema: any): IControl { let checkboxGroupcontrol = new RadioControl(); checkboxGroupcontrol.enumValues = filedSchema.control.enumValues as Array; checkboxGroupcontrol.isExtend = filedSchema.control.hasOwnProperty('isExtend') ? filedSchema.control.isExtend : false; checkboxGroupcontrol.showLabel = filedSchema.control.hasOwnProperty('showLabel') ? filedSchema.control.showLabel : true; checkboxGroupcontrol.required = filedSchema.control.hasOwnProperty('required') ? filedSchema.control.required : false; return checkboxGroupcontrol; } /** * 智能输入框控件需要弹出表单时,将表单配置JSON描述转换为弹出表单命令可接收的弹窗参数 * @param usageMode 智能输入框控件使用模式 * @param modalConfigData 表单配置JSON描述 * @returns 弹出表单命令可接收的弹窗参数 */ private setInputGroupDialog(usageMode: string, modalConfigData: any, id: string): DialogConfig { if (usageMode == 'text' || usageMode == undefined || modalConfigData == undefined || id == undefined) { return undefined; } let dialogConfig = new DialogConfig(); //dialogConfig.modalId = modalConfigData.modalId; dialogConfig.modalId = id; if(modalConfigData.mapFields){ dialogConfig.mapFields = JSON.parse(modalConfigData.mapFields.replace(/\'/g, '"')); } if (modalConfigData.showHeader) { dialogConfig.title = modalConfigData.title; } dialogConfig.width = modalConfigData.width; dialogConfig.height = modalConfigData.height; // dialogConfig.showButtons = modalConfigData.showFooterButtons; // dialogConfig.buttons = this.setInputGroupDialogButtons(modalConfigData.footerButtons); return dialogConfig; } /** * 智能输入框控件需要弹出表单时,将弹窗按钮组配置JSON描述转换为弹出表单命令可接收的弹窗按钮组参数 * @param buttonData 弹窗按钮组配置JSON描述 * @returns 弹出表单命令可接收的弹窗按钮组参数 */ private setInputGroupDialogButtons(buttonData: any): Array { if (!buttonData) { return []; } let button: DialogButtonConfig; return buttonData.map(item => { button = new DialogButtonConfig(); button.text = item.text; if (item.appearance && item.appearance.class) { button.cls = item.appearance.class; } button.handle = item.click; return button; }); } //根据类型,new value值 setValues(controltype, value, single:boolean = true) { if (controltype == 'input') { return new TextValue({'value':value}); } else if (controltype == 'search') { return new SearchValue({'value':value}); } else if (controltype == 'date') { return new DateValue({'value':value}); } else if (controltype == 'year') { return new YearValue({'value':value}); } else if (controltype == 'month') { return new MonthValue({'value':value}); } else if (controltype == 'daterange') { return new DateRangeValue(value); } else if (controltype == 'daterangetime') { return new DateRangeTimeValue(value); } else if (controltype == 'yearrange') { return new YearRangeValue(value); } else if (controltype == 'monthrange') { return new MonthRangeValue(value); } else if (controltype == 'dropdown' || controltype == 'radio') { return new RadioGroupValue({'value':value}); } else if (controltype == 'number') { return new NumberRangeValue(value); } else if (controltype == 'help') { return new HelpValue(value); } else if (controltype == 'checkboxgroup') { return new CheckboxGroupValue({'value':value}); } else if (controltype == 'input-group') { return new InputGroupValue(value); } else if (controltype == 'singlenumber') { return new NumberValue({'value':value}); } else if (controltype == 'flexiblenumber') { return new FlexibleNumberValue(value, single); } else if (controltype == 'flexibledate') { return new FlexibleDateValue(value, single); } else { return new TextValue({'value':value}); } } }