提交 fc11a999 编写于 作者: WodahsOrez's avatar WodahsOrez

数据选择,动态代码表,自动完成类编辑器上下文参数处理

上级 e561d524
...@@ -100,12 +100,20 @@ export default class AppAutocomplete extends Vue { ...@@ -100,12 +100,20 @@ export default class AppAutocomplete extends Vue {
@Prop() public name!: string; @Prop() public name!: string;
/** /**
* 编辑器参数 * 局部上下文导航参数
* *
* @type {string} * @type {any}
* @memberof AppAutocomplete * @memberof AppAutocomplete
*/ */
@Prop() public itemParam?: any; @Prop() public localContext!:any;
/**
* 局部导航参数
*
* @type {any}
* @memberof AppAutocomplete
*/
@Prop() public localParam!:any;
/** /**
* 值项名称 * 值项名称
...@@ -119,7 +127,7 @@ export default class AppAutocomplete extends Vue { ...@@ -119,7 +127,7 @@ export default class AppAutocomplete extends Vue {
* 值 * 值
* *
* @type {*} * @type {*}
* @memberof AppPicker * @memberof AppAutocomplete
*/ */
@Model('change') public value?: any; @Model('change') public value?: any;
...@@ -127,7 +135,7 @@ export default class AppAutocomplete extends Vue { ...@@ -127,7 +135,7 @@ export default class AppAutocomplete extends Vue {
* 当前值 * 当前值
* *
* @type {string} * @type {string}
* @memberof AppPicker * @memberof AppAutocomplete
*/ */
public curvalue: string = ''; public curvalue: string = '';
...@@ -160,7 +168,7 @@ export default class AppAutocomplete extends Vue { ...@@ -160,7 +168,7 @@ export default class AppAutocomplete extends Vue {
* *
* @param {*} newVal * @param {*} newVal
* @param {*} oldVal * @param {*} oldVal
* @memberof AppPicker * @memberof AppAutocomplete
*/ */
@Watch('value') @Watch('value')
public onValueChange(newVal: any, oldVal: any) { public onValueChange(newVal: any, oldVal: any) {
...@@ -277,19 +285,19 @@ export default class AppAutocomplete extends Vue { ...@@ -277,19 +285,19 @@ export default class AppAutocomplete extends Vue {
*/ */
public handlePublicParams(arg: any): boolean { public handlePublicParams(arg: any): boolean {
if (!this.data) { if (!this.data) {
this.$Notice.error({ title: (this.$t('components.appPicker.error') as any), desc: (this.$t('components.appPicker.formdataException') as any) }); this.$Notice.error({ title: (this.$t('components.AppAutocomplete.error') as any), desc: (this.$t('components.AppAutocomplete.formdataException') as any) });
return false; return false;
} }
// 合并表单参数 // 合并表单参数
arg.param = this.viewparams ? JSON.parse(JSON.stringify(this.viewparams)) : {}; arg.param = this.viewparams ? JSON.parse(JSON.stringify(this.viewparams)) : {};
arg.context = this.context ? JSON.parse(JSON.stringify(this.context)) : {}; arg.context = this.context ? JSON.parse(JSON.stringify(this.context)) : {};
// 附加参数处理 // 附加参数处理
if (this.itemParam && this.itemParam.context) { if (this.localContext && Object.keys(this.localContext).length >0) {
let _context = this.$util.formatData(this.data,arg.context,this.itemParam.context); let _context = this.$util.computedNavData(this.data,arg.context,arg.param,this.localContext);
Object.assign(arg.context,_context); Object.assign(arg.context,_context);
} }
if (this.itemParam && this.itemParam.param) { if (this.localParam && Object.keys(this.localParam).length >0) {
let _param = this.$util.formatData(this.data,arg.param,this.itemParam.param); let _param = this.$util.computedNavData(this.data,arg.param,arg.param,this.localParam);
Object.assign(arg.param,_param); Object.assign(arg.param,_param);
} }
return true; return true;
......
...@@ -57,23 +57,31 @@ export default class AppCheckBox extends Vue { ...@@ -57,23 +57,31 @@ export default class AppCheckBox extends Vue {
* 传入表单数据 * 传入表单数据
* *
* @type {*} * @type {*}
* @memberof DropDownList * @memberof AppCheckBox
*/ */
@Prop() public data?: any; @Prop() public data?: any;
/** /**
* 传入额外参数 * 局部上下文导航参数
* *
* @type {*} * @type {any}
* @memberof DropDownList * @memberof AppCheckBox
*/
@Prop() public localContext!:any;
/**
* 局部导航参数
*
* @type {any}
* @memberof AppCheckBox
*/ */
@Prop() public itemParam?: any; @Prop() public localParam!:any;
/** /**
* 视图上下文 * 视图上下文
* *
* @type {*} * @type {*}
* @memberof AppAutocomplete * @memberof AppCheckBox
*/ */
@Prop() public context!: any; @Prop() public context!: any;
...@@ -81,7 +89,7 @@ export default class AppCheckBox extends Vue { ...@@ -81,7 +89,7 @@ export default class AppCheckBox extends Vue {
* 视图参数 * 视图参数
* *
* @type {*} * @type {*}
* @memberof AppFormDRUIPart * @memberof AppCheckBox
*/ */
@Prop() public viewparams!: any; @Prop() public viewparams!: any;
...@@ -203,19 +211,19 @@ export default class AppCheckBox extends Vue { ...@@ -203,19 +211,19 @@ export default class AppCheckBox extends Vue {
* *
* @param {*} arg * @param {*} arg
* @returns * @returns
* @memberof DropDownList * @memberof AppCheckBox
*/ */
public handlePublicParams(arg: any) { public handlePublicParams(arg: any) {
// 合并表单参数 // 合并表单参数
arg.param = this.viewparams ? JSON.parse(JSON.stringify(this.viewparams)) : {}; arg.param = this.viewparams ? JSON.parse(JSON.stringify(this.viewparams)) : {};
arg.context = this.context ? JSON.parse(JSON.stringify(this.context)) : {}; arg.context = this.context ? JSON.parse(JSON.stringify(this.context)) : {};
// 附加参数处理 // 附加参数处理
if (this.itemParam && this.itemParam.context) { if (this.localContext && Object.keys(this.localContext).length >0) {
let _context = this.$util.formatData(this.data,arg.context,this.itemParam.context); let _context = this.$util.computedNavData(this.data,arg.context,arg.param,this.localContext);
Object.assign(arg.context,_context); Object.assign(arg.context,_context);
} }
if (this.itemParam && this.itemParam.param) { if (this.localParam && Object.keys(this.localParam).length >0) {
let _param = this.$util.formatData(this.data,arg.param,this.itemParam.param); let _param = this.$util.computedNavData(this.data,arg.param,arg.param,this.localParam);
Object.assign(arg.param,_param); Object.assign(arg.param,_param);
} }
} }
...@@ -253,7 +261,7 @@ export default class AppCheckBox extends Vue { ...@@ -253,7 +261,7 @@ export default class AppCheckBox extends Vue {
/** /**
* 监听表单数据变化 * 监听表单数据变化
* *
* @memberof AppOrgSelect * @memberof AppCheckBox
*/ */
@Watch('data',{immediate:true,deep:true}) @Watch('data',{immediate:true,deep:true})
onDataChange(newVal: any, oldVal: any) { onDataChange(newVal: any, oldVal: any) {
......
...@@ -62,7 +62,7 @@ export default class AppEmbedPicker extends Vue { ...@@ -62,7 +62,7 @@ export default class AppEmbedPicker extends Vue {
* 表单数据 * 表单数据
* *
* @type {*} * @type {*}
* @memberof AppPicker * @memberof AppEmbedPicker
*/ */
@Prop() public data!: any; @Prop() public data!: any;
...@@ -95,7 +95,7 @@ export default class AppEmbedPicker extends Vue { ...@@ -95,7 +95,7 @@ export default class AppEmbedPicker extends Vue {
* 值项名称 * 值项名称
* *
* @type {string} * @type {string}
* @memberof AppPicker * @memberof AppEmbedPicker
*/ */
@Prop() public valueItem?: string; @Prop() public valueItem?: string;
...@@ -103,7 +103,7 @@ export default class AppEmbedPicker extends Vue { ...@@ -103,7 +103,7 @@ export default class AppEmbedPicker extends Vue {
* 关联视图名称 * 关联视图名称
* *
* @type {string} * @type {string}
* @memberof AppPicker * @memberof AppEmbedPicker
*/ */
@Prop() public refviewname?: string; @Prop() public refviewname?: string;
...@@ -127,17 +127,25 @@ export default class AppEmbedPicker extends Vue { ...@@ -127,17 +127,25 @@ export default class AppEmbedPicker extends Vue {
* 属性项名称 * 属性项名称
* *
* @type {string} * @type {string}
* @memberof AppPicker * @memberof AppEmbedPicker
*/ */
@Prop() public name!: string; @Prop() public name!: string;
/** /**
* 关联视图参数 * 局部上下文导航参数
* *
* @type {*} * @type {any}
* @memberof AppEmbedPicker * @memberof AppEmbedPicker
*/ */
@Prop() public itemParam: any; @Prop() public localContext!:any;
/**
* 局部导航参数
*
* @type {any}
* @memberof AppEmbedPicker
*/
@Prop() public localParam!:any;
/** /**
* 是否忽略之变化 * 是否忽略之变化
...@@ -160,8 +168,8 @@ export default class AppEmbedPicker extends Vue { ...@@ -160,8 +168,8 @@ export default class AppEmbedPicker extends Vue {
* *
* @memberof AppEmbedPicker * @memberof AppEmbedPicker
*/ */
public setViewParam(activeData: any) { public setViewParam() {
if (!this.itemParam || !activeData) { if (!this.data) {
return; return;
} }
let arg: any = {}; let arg: any = {};
...@@ -169,17 +177,13 @@ export default class AppEmbedPicker extends Vue { ...@@ -169,17 +177,13 @@ export default class AppEmbedPicker extends Vue {
let param: any = JSON.parse(JSON.stringify(this.viewparams)); let param: any = JSON.parse(JSON.stringify(this.viewparams));
let context: any = JSON.parse(JSON.stringify(this.context)); let context: any = JSON.parse(JSON.stringify(this.context));
// 附加参数处理 // 附加参数处理
if (this.itemParam.context) { if (this.localContext && Object.keys(this.localContext).length >0) {
let _context = this.$util.formatData(activeData,context,this.itemParam.context); let _context = this.$util.computedNavData(this.data,arg.context,arg.param,this.localContext);
Object.assign(context,_context); Object.assign(arg.context,_context);
}
if (this.itemParam.param) {
let _param = this.$util.formatData(activeData,param,this.itemParam.param);
Object.assign(param,_param);
} }
if (this.itemParam.parentdata) { if (this.localParam && Object.keys(this.localParam).length >0) {
let _parentdata = this.$util.formatData(activeData,param,this.itemParam.parentdata); let _param = this.$util.computedNavData(this.data,arg.param,arg.param,this.localParam);
Object.assign(param,_parentdata); Object.assign(arg.param,_param);
} }
this.viewdata = JSON.stringify(context); this.viewdata = JSON.stringify(context);
this.viewparam = JSON.stringify(param); this.viewparam = JSON.stringify(param);
...@@ -196,7 +200,7 @@ export default class AppEmbedPicker extends Vue { ...@@ -196,7 +200,7 @@ export default class AppEmbedPicker extends Vue {
onActivedataChange(newVal: any, oldVal: any) { onActivedataChange(newVal: any, oldVal: any) {
const newFormData: any = JSON.parse(newVal); const newFormData: any = JSON.parse(newVal);
const oldDormData: any = JSON.parse(oldVal); const oldDormData: any = JSON.parse(oldVal);
this.setViewParam(newFormData); this.setViewParam();
if (!this.refreshitems || this.ignorefieldvaluechange) { if (!this.refreshitems || this.ignorefieldvaluechange) {
return; return;
} }
...@@ -215,7 +219,7 @@ export default class AppEmbedPicker extends Vue { ...@@ -215,7 +219,7 @@ export default class AppEmbedPicker extends Vue {
if(this.formState) { if(this.formState) {
this.formStateEvent = this.formState.subscribe(({ tag, action, data }) => { this.formStateEvent = this.formState.subscribe(({ tag, action, data }) => {
if (Object.is('load', action)) { if (Object.is('load', action)) {
this.setViewParam(JSON.parse(this.data)); this.setViewParam();
} }
}); });
} }
......
...@@ -45,12 +45,20 @@ export default class AppMpicker extends Vue { ...@@ -45,12 +45,20 @@ export default class AppMpicker extends Vue {
@Prop() curvalue?: any; @Prop() curvalue?: any;
/** /**
* 表单项参数 * 局部上下文导航参数
* *
* @type {any} * @type {any}
* @memberof AppPicker * @memberof AppMpicker
*/
@Prop() public localContext!:any;
/**
* 局部导航参数
*
* @type {any}
* @memberof AppMpicker
*/ */
@Prop() public itemParam: any; @Prop() public localParam!:any;
/** /**
* 表单项名称 * 表单项名称
...@@ -61,7 +69,7 @@ export default class AppMpicker extends Vue { ...@@ -61,7 +69,7 @@ export default class AppMpicker extends Vue {
* 视图上下文 * 视图上下文
* *
* @type {*} * @type {*}
* @memberof AppFormDRUIPart * @memberof AppMpicker
*/ */
@Prop() public context!: any; @Prop() public context!: any;
...@@ -69,7 +77,7 @@ export default class AppMpicker extends Vue { ...@@ -69,7 +77,7 @@ export default class AppMpicker extends Vue {
* 视图参数 * 视图参数
* *
* @type {*} * @type {*}
* @memberof AppFormDRUIPart * @memberof AppMpicker
*/ */
@Prop() public viewparams!: any; @Prop() public viewparams!: any;
...@@ -77,7 +85,7 @@ export default class AppMpicker extends Vue { ...@@ -77,7 +85,7 @@ export default class AppMpicker extends Vue {
* AC参数 * AC参数
* *
* @type {*} * @type {*}
* @memberof AppFormDRUIPart * @memberof AppMpicker
*/ */
@Prop({default: () => {}}) public acParams?: any; @Prop({default: () => {}}) public acParams?: any;
...@@ -85,7 +93,7 @@ export default class AppMpicker extends Vue { ...@@ -85,7 +93,7 @@ export default class AppMpicker extends Vue {
* 应用实体主信息属性名称 * 应用实体主信息属性名称
* *
* @type {string} * @type {string}
* @memberof AppAutocomplete * @memberof AppMpicker
*/ */
@Prop({default: 'srfmajortext'}) public deMajorField!: string; @Prop({default: 'srfmajortext'}) public deMajorField!: string;
...@@ -93,7 +101,7 @@ export default class AppMpicker extends Vue { ...@@ -93,7 +101,7 @@ export default class AppMpicker extends Vue {
* 应用实体主键属性名称 * 应用实体主键属性名称
* *
* @type {string} * @type {string}
* @memberof AppAutocomplete * @memberof AppMpicker
*/ */
@Prop({default: 'srfkey'}) public deKeyField!: string; @Prop({default: 'srfkey'}) public deKeyField!: string;
...@@ -101,7 +109,7 @@ export default class AppMpicker extends Vue { ...@@ -101,7 +109,7 @@ export default class AppMpicker extends Vue {
* 表单服务 * 表单服务
* *
* @type {*} * @type {*}
* @memberof AppFormDRUIPart * @memberof AppMpicker
*/ */
@Prop() public service?: any; @Prop() public service?: any;
...@@ -242,19 +250,19 @@ export default class AppMpicker extends Vue { ...@@ -242,19 +250,19 @@ export default class AppMpicker extends Vue {
*/ */
public handlePublicParams(arg: any): boolean { public handlePublicParams(arg: any): boolean {
if (!this.activeData) { if (!this.activeData) {
this.$Notice.error({ title: (this.$t('components.appPicker.error') as any), desc: (this.$t('components.appPicker.formdataException') as any) }); this.$Notice.error({ title: (this.$t('components.AppMpicker.error') as any), desc: (this.$t('components.AppMpicker.formdataException') as any) });
return false; return false;
} }
// 合并表单参数 // 合并表单参数
arg.param = this.viewparams ? JSON.parse(JSON.stringify(this.viewparams)) : {}; arg.param = this.viewparams ? JSON.parse(JSON.stringify(this.viewparams)) : {};
arg.context = this.context ? JSON.parse(JSON.stringify(this.context)) : {}; arg.context = this.context ? JSON.parse(JSON.stringify(this.context)) : {};
// 附加参数处理 // 附加参数处理
if (this.itemParam && this.itemParam.context) { if (this.localContext && Object.keys(this.localContext).length >0) {
let _context = this.$util.formatData(this.activeData,arg.context,this.itemParam.context); let _context = this.$util.computedNavData(this.activeData,arg.context,arg.param,this.localContext);
Object.assign(arg.context,_context); Object.assign(arg.context,_context);
} }
if (this.itemParam && this.itemParam.param) { if (this.localParam && Object.keys(this.localParam).length >0) {
let _param = this.$util.formatData(this.activeData,arg.param,this.itemParam.param); let _param = this.$util.computedNavData(this.activeData,arg.param,arg.param,this.localParam);
Object.assign(arg.param,_param); Object.assign(arg.param,_param);
} }
return true; return true;
......
<template> <template>
<div class="app-picker-select-view"> <div class="app-picker-select-view">
<Dropdown :visible="visible" trigger="custom" style="left:0px;width: 100%" @on-clickoutside="() => {triggerMenu(false);}" > <Dropdown :visible="visible" trigger="custom" style="left:0px;width: 100%" @on-clickoutside="() => {triggerMenu(false);}" >
<Input v-if="isSingleSelect" v-model="queryValue" class="tree-input" type="text" :placeholder="placeholder ? placeholder : $t('components.appPickerSelectView.placeholder')" :disabled="disabled" @on-change="OnInputChange" @on-focus="()=>{triggerMenu(true);}" > <Input v-if="isSingleSelect" v-model="queryValue" class="tree-input" type="text" :placeholder="placeholder ? placeholder : $t('components.AppPickerSelectViewSelectView.placeholder')" :disabled="disabled" @on-change="OnInputChange" @on-focus="()=>{triggerMenu(true);}" >
<template v-slot:suffix> <template v-slot:suffix>
<i v-if="queryValue && !disabled" class='el-icon-circle-close' @click="onClear"></i> <i v-if="queryValue && !disabled" class='el-icon-circle-close' @click="onClear"></i>
<Icon :type="visible ? 'ios-arrow-up' : 'ios-arrow-down'" class="icon-arrow" @click="() => {triggerMenu();}"></Icon> <Icon :type="visible ? 'ios-arrow-up' : 'ios-arrow-down'" class="icon-arrow" @click="() => {triggerMenu();}"></Icon>
...@@ -34,12 +34,12 @@ import { ViewTool } from '@/utils/view-tool/view-tool'; ...@@ -34,12 +34,12 @@ import { ViewTool } from '@/utils/view-tool/view-tool';
@Component({ @Component({
}) })
export default class AppPickerSelectView extends Vue { export default class AppPickerSelectViewSelectView extends Vue {
/** /**
* 视图上下文 * 视图上下文
* *
* @type {*} * @type {*}
* @memberof AppFormDRUIPart * @memberof AppPickerSelectView
*/ */
@Prop() public context!: any; @Prop() public context!: any;
...@@ -47,7 +47,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -47,7 +47,7 @@ export default class AppPickerSelectView extends Vue {
* 视图参数 * 视图参数
* *
* @type {*} * @type {*}
* @memberof AppFormDRUIPart * @memberof AppPickerSelectView
*/ */
@Prop() public viewparams!: any; @Prop() public viewparams!: any;
...@@ -55,7 +55,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -55,7 +55,7 @@ export default class AppPickerSelectView extends Vue {
* 是否单选 * 是否单选
* *
* @type {*} * @type {*}
* @memberof AppFormDRUIPart * @memberof AppPickerSelectView
*/ */
@Prop({default: 'true'}) public isSingleSelect!: any; @Prop({default: 'true'}) public isSingleSelect!: any;
...@@ -63,7 +63,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -63,7 +63,7 @@ export default class AppPickerSelectView extends Vue {
* 当前多选框选中值的key集合 * 当前多选框选中值的key集合
* *
* @type {string} * @type {string}
* @memberof AppTreePicker * @memberof AppPickerSelectView
*/ */
public keySet: any = []; public keySet: any = [];
...@@ -71,7 +71,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -71,7 +71,7 @@ export default class AppPickerSelectView extends Vue {
* 当前多选框选中项对象集合 * 当前多选框选中项对象集合
* *
* @type {string} * @type {string}
* @memberof AppTreePicker * @memberof AppPickerSelectView
*/ */
public selectItems: Array<any> = []; public selectItems: Array<any> = [];
...@@ -79,7 +79,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -79,7 +79,7 @@ export default class AppPickerSelectView extends Vue {
* 所有操作过的下拉选项对象集合 * 所有操作过的下拉选项对象集合
* *
* @type {string} * @type {string}
* @memberof AppTreePicker * @memberof AppPickerSelectView
*/ */
public items: Array<any> = []; public items: Array<any> = [];
...@@ -87,7 +87,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -87,7 +87,7 @@ export default class AppPickerSelectView extends Vue {
* 视图参数 * 视图参数
* *
* @type {string} * @type {string}
* @memberof AppTreePicker * @memberof AppPickerSelectView
*/ */
public viewparam: any = JSON.stringify(this.viewparams); public viewparam: any = JSON.stringify(this.viewparams);
...@@ -95,7 +95,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -95,7 +95,7 @@ export default class AppPickerSelectView extends Vue {
* 视图上下文 * 视图上下文
* *
* @type {string} * @type {string}
* @memberof AppTreePicker * @memberof AppPickerSelectView
*/ */
public viewdata: any = JSON.stringify(this.context); public viewdata: any = JSON.stringify(this.context);
...@@ -103,7 +103,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -103,7 +103,7 @@ export default class AppPickerSelectView extends Vue {
* 表单数据 * 表单数据
* *
* @type {*} * @type {*}
* @memberof AppPicker * @memberof AppPickerSelectView
*/ */
@Prop() public data!: any; @Prop() public data!: any;
...@@ -111,7 +111,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -111,7 +111,7 @@ export default class AppPickerSelectView extends Vue {
* 值 * 值
* *
* @type {*} * @type {*}
* @memberof AppTreePicker * @memberof AppPickerSelectView
*/ */
@Prop() public value: any; @Prop() public value: any;
...@@ -119,7 +119,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -119,7 +119,7 @@ export default class AppPickerSelectView extends Vue {
* 是否启用 * 是否启用
* *
* @type {boolean} * @type {boolean}
* @memberof AppPicker * @memberof AppPickerSelectView
*/ */
@Prop({default: false}) public disabled!: boolean; @Prop({default: false}) public disabled!: boolean;
...@@ -127,7 +127,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -127,7 +127,7 @@ export default class AppPickerSelectView extends Vue {
* 应用实体主信息属性名称 * 应用实体主信息属性名称
* *
* @type {string} * @type {string}
* @memberof AppAutocomplete * @memberof AppPickerSelectView
*/ */
@Prop({default: 'srfmajortext'}) public deMajorField!: string; @Prop({default: 'srfmajortext'}) public deMajorField!: string;
...@@ -135,7 +135,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -135,7 +135,7 @@ export default class AppPickerSelectView extends Vue {
* 应用实体主键属性名称 * 应用实体主键属性名称
* *
* @type {string} * @type {string}
* @memberof AppAutocomplete * @memberof AppPickerSelectView
*/ */
@Prop({default: 'srfkey'}) public deKeyField!: string; @Prop({default: 'srfkey'}) public deKeyField!: string;
...@@ -143,7 +143,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -143,7 +143,7 @@ export default class AppPickerSelectView extends Vue {
* 输入框值(搜索值) * 输入框值(搜索值)
* *
* @type {string} * @type {string}
* @memberof AppTreePicker * @memberof AppPickerSelectView
*/ */
public queryValue: any = ''; public queryValue: any = '';
...@@ -151,7 +151,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -151,7 +151,7 @@ export default class AppPickerSelectView extends Vue {
* 值项名称 * 值项名称
* *
* @type {string} * @type {string}
* @memberof AppPicker * @memberof AppPickerSelectView
*/ */
@Prop() public valueitem!: string; @Prop() public valueitem!: string;
...@@ -159,7 +159,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -159,7 +159,7 @@ export default class AppPickerSelectView extends Vue {
* 关联视图名称 * 关联视图名称
* *
* @type {string} * @type {string}
* @memberof AppPicker * @memberof AppPickerSelectView
*/ */
@Prop() public pickupView?: any; @Prop() public pickupView?: any;
...@@ -167,7 +167,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -167,7 +167,7 @@ export default class AppPickerSelectView extends Vue {
* 数据链接视图参数 * 数据链接视图参数
* *
* @type {*} * @type {*}
* @memberof AppPicker * @memberof AppPickerSelectView
*/ */
@Prop() public linkview?: any; @Prop() public linkview?: any;
...@@ -175,7 +175,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -175,7 +175,7 @@ export default class AppPickerSelectView extends Vue {
* 提示信息 * 提示信息
* *
* @type {string} * @type {string}
* @memberof AppTreePicker * @memberof AppPickerSelectView
*/ */
@Prop() public placeholder!: string; @Prop() public placeholder!: string;
...@@ -183,23 +183,31 @@ export default class AppPickerSelectView extends Vue { ...@@ -183,23 +183,31 @@ export default class AppPickerSelectView extends Vue {
* 属性项名称 * 属性项名称
* *
* @type {string} * @type {string}
* @memberof AppPicker * @memberof AppPickerSelectView
*/ */
@Prop() public name!: string; @Prop() public name!: string;
/** /**
* 编辑器参数 * 局部上下文导航参数
* *
* @type {*} * @type {any}
* @memberof AppTreePicker * @memberof AppPickerSelectView
*/
@Prop() public localContext!:any;
/**
* 局部导航参数
*
* @type {any}
* @memberof AppPickerSelectView
*/ */
@Prop() public itemParam: any; @Prop() public localParam!:any;
/** /**
* 下拉显示控制变量 * 下拉显示控制变量
* *
* @type {string} * @type {string}
* @memberof AppTreePicker * @memberof AppPickerSelectView
*/ */
public visible: boolean = false; public visible: boolean = false;
...@@ -207,7 +215,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -207,7 +215,7 @@ export default class AppPickerSelectView extends Vue {
* 父视图数据 * 父视图数据
* *
* @type {string} * @type {string}
* @memberof AppTreePicker * @memberof AppPickerSelectView
*/ */
public srfparentdata: any = {}; public srfparentdata: any = {};
...@@ -215,7 +223,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -215,7 +223,7 @@ export default class AppPickerSelectView extends Vue {
* 输入框change事件 * 输入框change事件
* *
* @param $event 事件对象 * @param $event 事件对象
* @memberof AppTreePicker * @memberof AppPickerSelectView
*/ */
public OnInputChange($event: any){ public OnInputChange($event: any){
let _viewdata = Object.assign({ query: this.queryValue }, JSON.parse(this.viewdata)) ; let _viewdata = Object.assign({ query: this.queryValue }, JSON.parse(this.viewdata)) ;
...@@ -226,7 +234,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -226,7 +234,7 @@ export default class AppPickerSelectView extends Vue {
* 输入框change事件 * 输入框change事件
* *
* @param $event 事件对象 * @param $event 事件对象
* @memberof AppTreePicker * @memberof AppPickerSelectView
*/ */
public triggerMenu(visible?: boolean){ public triggerMenu(visible?: boolean){
if(this.disabled){ if(this.disabled){
...@@ -244,26 +252,23 @@ export default class AppPickerSelectView extends Vue { ...@@ -244,26 +252,23 @@ export default class AppPickerSelectView extends Vue {
* *
* @param {*} arg * @param {*} arg
* @returns * @returns
* @memberof AppPicker * @memberof AppPickerSelectView
*/ */
public handlePublicParams(arg: any): boolean { public handlePublicParams(arg: any): boolean {
if (!this.itemParam) {
return true;
}
if (!this.data) { if (!this.data) {
this.$Notice.error({ title: (this.$t('components.appPickerSelectView.error') as any), desc: (this.$t('components.appPickerSelectView.formdataException') as any) }); this.$Notice.error({ title: (this.$t('components.AppPickerSelectViewSelectView.error') as any), desc: (this.$t('components.AppPickerSelectViewSelectView.formdataException') as any) });
return false; return false;
} }
// 合并表单参数 // 合并表单参数
arg.param = this.viewparams ? JSON.parse(JSON.stringify(this.viewparams)) : {}; arg.param = this.viewparams ? JSON.parse(JSON.stringify(this.viewparams)) : {};
arg.context = this.context ? JSON.parse(JSON.stringify(this.context)) : {}; arg.context = this.context ? JSON.parse(JSON.stringify(this.context)) : {};
// 附加参数处理 // 附加参数处理
if (this.itemParam.context) { if (this.localContext && Object.keys(this.localContext).length >0) {
let _context = this.$util.formatData(this.data,arg.context,this.itemParam.context); let _context = this.$util.computedNavData(this.data,arg.context,arg.param,this.localContext);
Object.assign(arg.context,_context); Object.assign(arg.context,_context);
} }
if (this.itemParam.param) { if (this.localParam && Object.keys(this.localParam).length >0) {
let _param = this.$util.formatData(this.data,arg.param,this.itemParam.param); let _param = this.$util.computedNavData(this.data,arg.param,arg.param,this.localParam);
Object.assign(arg.param,_param); Object.assign(arg.param,_param);
} }
return true; return true;
...@@ -274,7 +279,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -274,7 +279,7 @@ export default class AppPickerSelectView extends Vue {
* *
* @param {*} newVal * @param {*} newVal
* @param {*} oldVal * @param {*} oldVal
* @memberof AppFormDRUIPart * @memberof AppPickerSelectView
*/ */
@Watch('data',{deep:true}) @Watch('data',{deep:true})
onActivedataChange(newVal: any, oldVal: any) { onActivedataChange(newVal: any, oldVal: any) {
...@@ -294,14 +299,14 @@ export default class AppPickerSelectView extends Vue { ...@@ -294,14 +299,14 @@ export default class AppPickerSelectView extends Vue {
* *
* @param {*} newVal * @param {*} newVal
* @param {*} oldVal * @param {*} oldVal
* @memberof AppPicker * @memberof AppPickerSelectView
*/ */
@Watch('value', { deep: true }) @Watch('value', { deep: true })
public onValueChange(newVal: any, oldVal: any) { public onValueChange(newVal: any, oldVal: any) {
if(this.isSingleSelect){ if(this.isSingleSelect){
this.queryValue = newVal; this.queryValue = newVal;
if (!this.data || !this.valueitem || !this.data[this.valueitem]) { if (!this.data || !this.valueitem || !this.data[this.valueitem]) {
this.$Notice.error({ title: (this.$t('components.appPickerSelectView.error') as any), desc: (this.$t('components.appPickerSelectView.editor') as any)+this.name+(this.$t('components.appPickerSelectView.valueitemException') as any) }); this.$Notice.error({ title: (this.$t('components.AppPickerSelectViewSelectView.error') as any), desc: (this.$t('components.AppPickerSelectViewSelectView.editor') as any)+this.name+(this.$t('components.AppPickerSelectViewSelectView.valueitemException') as any) });
}else{ }else{
let _viewparam = JSON.parse(this.viewparam); let _viewparam = JSON.parse(this.viewparam);
_viewparam.selectedData = [{srfkey: this.data[this.valueitem], srfmajortext: this.value }]; _viewparam.selectedData = [{srfkey: this.data[this.valueitem], srfmajortext: this.value }];
...@@ -330,7 +335,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -330,7 +335,7 @@ export default class AppPickerSelectView extends Vue {
/** /**
* 生命周期 * 生命周期
* *
* @memberof AppTreePicker * @memberof AppPickerSelectView
*/ */
public created() { public created() {
// 公共参数处理 // 公共参数处理
...@@ -347,7 +352,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -347,7 +352,7 @@ export default class AppPickerSelectView extends Vue {
/** /**
* vue 生命周期 * vue 生命周期
* *
* @memberof SelectType * @memberof AppPickerSelectView
*/ */
public destroyed() { public destroyed() {
...@@ -357,7 +362,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -357,7 +362,7 @@ export default class AppPickerSelectView extends Vue {
* 设置值 * 设置值
* *
* @param {*} item * @param {*} item
* @memberof AppTreePicker * @memberof AppPickerSelectView
*/ */
public onViewdatasChange($event: any) { public onViewdatasChange($event: any) {
if($event.length == 0){ if($event.length == 0){
...@@ -409,11 +414,11 @@ export default class AppPickerSelectView extends Vue { ...@@ -409,11 +414,11 @@ export default class AppPickerSelectView extends Vue {
/** /**
* 打开链接视图 * 打开链接视图
* *
* @memberof AppPicker * @memberof AppPickerSelectView
*/ */
public openLinkView($event: any): void { public openLinkView($event: any): void {
if (!this.data || !this.valueitem || !this.data[this.valueitem]) { if (!this.data || !this.valueitem || !this.data[this.valueitem]) {
console.error({ title: (this.$t('components.appPickerSelectView.error') as any), desc: (this.$t('components.appPickerSelectView.editor') as any)+this.name+(this.$t('components.appPickerSelectView.valueitemException') as any) }); console.error({ title: (this.$t('components.AppPickerSelectViewSelectView.error') as any), desc: (this.$t('components.AppPickerSelectViewSelectView.editor') as any)+this.name+(this.$t('components.AppPickerSelectViewSelectView.valueitemException') as any) });
return; return;
} }
// 公共参数处理 // 公共参数处理
...@@ -447,7 +452,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -447,7 +452,7 @@ export default class AppPickerSelectView extends Vue {
* @private * @private
* @param {string} viewpath * @param {string} viewpath
* @param {*} data * @param {*} data
* @memberof AppPicker * @memberof AppPickerSelectView
*/ */
private openIndexViewTab(view: any, context: any, param: any): void { private openIndexViewTab(view: any, context: any, param: any): void {
const routePath = this.$viewTool.buildUpRoutePath(this.$route, this.context, view.deResParameters, view.parameters, [context] , param); const routePath = this.$viewTool.buildUpRoutePath(this.$route, this.context, view.deResParameters, view.parameters, [context] , param);
...@@ -461,7 +466,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -461,7 +466,7 @@ export default class AppPickerSelectView extends Vue {
* @param {*} $event * @param {*} $event
* @param {*} view * @param {*} view
* @param {*} data * @param {*} data
* @memberof AppPicker * @memberof AppPickerSelectView
*/ */
private openPopOver($event: any, view: any, context: any, param: any): void { private openPopOver($event: any, view: any, context: any, param: any): void {
let container: Subject<any> = this.$apppopover.openPop($event, view, context, param); let container: Subject<any> = this.$apppopover.openPop($event, view, context, param);
...@@ -480,7 +485,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -480,7 +485,7 @@ export default class AppPickerSelectView extends Vue {
* @private * @private
* @param {*} view * @param {*} view
* @param {*} data * @param {*} data
* @memberof AppPicker * @memberof AppPickerSelectView
*/ */
private openPopupModal(view: any, context: any, param: any): void { private openPopupModal(view: any, context: any, param: any): void {
let container: Subject<any> = this.$appmodal.openModal(view, context, param); let container: Subject<any> = this.$appmodal.openModal(view, context, param);
...@@ -498,7 +503,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -498,7 +503,7 @@ export default class AppPickerSelectView extends Vue {
* @private * @private
* @param {*} view * @param {*} view
* @param {*} data * @param {*} data
* @memberof AppPicker * @memberof AppPickerSelectView
*/ */
private openDrawer(view: any, context: any, param: any): void { private openDrawer(view: any, context: any, param: any): void {
let container: Subject<any> = this.$appdrawer.openDrawer(view, context, param); let container: Subject<any> = this.$appdrawer.openDrawer(view, context, param);
...@@ -514,7 +519,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -514,7 +519,7 @@ export default class AppPickerSelectView extends Vue {
* 打开页面关闭 * 打开页面关闭
* *
* @param {*} result * @param {*} result
* @memberof AppPicker * @memberof AppPickerSelectView
*/ */
public openViewClose(result: any) { public openViewClose(result: any) {
let item: any = {}; let item: any = {};
...@@ -536,7 +541,7 @@ export default class AppPickerSelectView extends Vue { ...@@ -536,7 +541,7 @@ export default class AppPickerSelectView extends Vue {
* 下拉选中回调 * 下拉选中回调
* *
* @param {*} selects 当前选中的key值集合 * @param {*} selects 当前选中的key值集合
* @memberof AppMpicker * @memberof AppPickerSelectView
*/ */
public onSelectChange(selects: any) { public onSelectChange(selects: any) {
let val: Array<any> = []; let val: Array<any> = [];
......
...@@ -65,14 +65,14 @@ export default class AppRadioGroup extends Vue { ...@@ -65,14 +65,14 @@ export default class AppRadioGroup extends Vue {
* 传入表单数据 * 传入表单数据
* *
* @type {*} * @type {*}
* @memberof DropDownList * @memberof AppRadioGroup
*/ */
@Prop() public data?: any; @Prop() public data?: any;
/** /**
* 监听表单数据变化 * 监听表单数据变化
* *
* @memberof AppOrgSelect * @memberof AppRadioGroup
*/ */
@Watch('data',{immediate:true,deep:true}) @Watch('data',{immediate:true,deep:true})
onDataChange(newVal: any, oldVal: any) { onDataChange(newVal: any, oldVal: any) {
...@@ -103,18 +103,26 @@ export default class AppRadioGroup extends Vue { ...@@ -103,18 +103,26 @@ export default class AppRadioGroup extends Vue {
@Prop() public disabled?: boolean; @Prop() public disabled?: boolean;
/** /**
* 传入额外参数 * 局部上下文导航参数
* *
* @type {*} * @type {any}
* @memberof DropDownList * @memberof AppRadioGroup
*/
@Prop() public localContext!:any;
/**
* 局部导航参数
*
* @type {any}
* @memberof AppRadioGroup
*/ */
@Prop() public itemParam?: any; @Prop() public localParam!:any;
/** /**
* 视图上下文 * 视图上下文
* *
* @type {*} * @type {*}
* @memberof AppAutocomplete * @memberof AppRadioGroup
*/ */
@Prop() public context!: any; @Prop() public context!: any;
...@@ -122,7 +130,7 @@ export default class AppRadioGroup extends Vue { ...@@ -122,7 +130,7 @@ export default class AppRadioGroup extends Vue {
* 视图参数 * 视图参数
* *
* @type {*} * @type {*}
* @memberof AppFormDRUIPart * @memberof AppRadioGroup
*/ */
@Prop() public viewparams!: any; @Prop() public viewparams!: any;
...@@ -161,19 +169,19 @@ export default class AppRadioGroup extends Vue { ...@@ -161,19 +169,19 @@ export default class AppRadioGroup extends Vue {
* *
* @param {*} arg * @param {*} arg
* @returns * @returns
* @memberof DropDownList * @memberof AppRadioGroup
*/ */
public handlePublicParams(arg: any) { public handlePublicParams(arg: any) {
// 合并表单参数 // 合并表单参数
arg.param = this.viewparams ? JSON.parse(JSON.stringify(this.viewparams)) : {}; arg.param = this.viewparams ? JSON.parse(JSON.stringify(this.viewparams)) : {};
arg.context = this.context ? JSON.parse(JSON.stringify(this.context)) : {}; arg.context = this.context ? JSON.parse(JSON.stringify(this.context)) : {};
// 附加参数处理 // 附加参数处理
if (this.itemParam && this.itemParam.context) { if (this.localContext && Object.keys(this.localContext).length >0) {
let _context = this.$util.formatData(this.data,arg.context,this.itemParam.context); let _context = this.$util.computedNavData(this.data,arg.context,arg.param,this.localContext);
Object.assign(arg.context,_context); Object.assign(arg.context,_context);
} }
if (this.itemParam && this.itemParam.param) { if (this.localParam && Object.keys(this.localParam).length >0) {
let _param = this.$util.formatData(this.data,arg.param,this.itemParam.param); let _param = this.$util.computedNavData(this.data,arg.param,arg.param,this.localParam);
Object.assign(arg.param,_param); Object.assign(arg.param,_param);
} }
} }
......
...@@ -72,12 +72,20 @@ export default class AppSpan extends Vue { ...@@ -72,12 +72,20 @@ export default class AppSpan extends Vue {
@Prop() public data?: any; @Prop() public data?: any;
/** /**
* 传入额外参数 * 局部上下文导航参数
* *
* @type {*} * @type {any}
* @memberof AppSpan
*/
@Prop() public localContext!:any;
/**
* 局部导航参数
*
* @type {any}
* @memberof AppSpan * @memberof AppSpan
*/ */
@Prop() public itemParam?: any; @Prop() public localParam!:any;
/** /**
* 视图上下文 * 视图上下文
......
...@@ -36,7 +36,7 @@ export default class AppTreePicker extends Vue { ...@@ -36,7 +36,7 @@ export default class AppTreePicker extends Vue {
* 视图上下文 * 视图上下文
* *
* @type {*} * @type {*}
* @memberof AppFormDRUIPart * @memberof AppTreePicker
*/ */
@Prop() public context!: any; @Prop() public context!: any;
...@@ -44,7 +44,7 @@ export default class AppTreePicker extends Vue { ...@@ -44,7 +44,7 @@ export default class AppTreePicker extends Vue {
* 视图参数 * 视图参数
* *
* @type {*} * @type {*}
* @memberof AppFormDRUIPart * @memberof AppTreePicker
*/ */
@Prop() public viewparams!: any; @Prop() public viewparams!: any;
...@@ -52,7 +52,7 @@ export default class AppTreePicker extends Vue { ...@@ -52,7 +52,7 @@ export default class AppTreePicker extends Vue {
* 表单数据 * 表单数据
* *
* @type {*} * @type {*}
* @memberof AppPicker * @memberof AppTreePicker
*/ */
@Prop() public data!: any; @Prop() public data!: any;
...@@ -68,7 +68,7 @@ export default class AppTreePicker extends Vue { ...@@ -68,7 +68,7 @@ export default class AppTreePicker extends Vue {
* 是否启用 * 是否启用
* *
* @type {boolean} * @type {boolean}
* @memberof AppPicker * @memberof AppTreePicker
*/ */
@Prop({default: false}) public disabled!: boolean; @Prop({default: false}) public disabled!: boolean;
...@@ -101,7 +101,7 @@ export default class AppTreePicker extends Vue { ...@@ -101,7 +101,7 @@ export default class AppTreePicker extends Vue {
* 值项名称 * 值项名称
* *
* @type {string} * @type {string}
* @memberof AppPicker * @memberof AppTreePicker
*/ */
@Prop() public valueItem?: string; @Prop() public valueItem?: string;
...@@ -109,7 +109,7 @@ export default class AppTreePicker extends Vue { ...@@ -109,7 +109,7 @@ export default class AppTreePicker extends Vue {
* 关联视图名称 * 关联视图名称
* *
* @type {string} * @type {string}
* @memberof AppPicker * @memberof AppTreePicker
*/ */
@Prop() public refviewname?: string; @Prop() public refviewname?: string;
...@@ -125,17 +125,25 @@ export default class AppTreePicker extends Vue { ...@@ -125,17 +125,25 @@ export default class AppTreePicker extends Vue {
* 属性项名称 * 属性项名称
* *
* @type {string} * @type {string}
* @memberof AppPicker * @memberof AppTreePicker
*/ */
@Prop() public name!: string; @Prop() public name!: string;
/** /**
* 关联视图参数 * 局部上下文导航参数
* *
* @type {*} * @type {any}
* @memberof AppTreePicker * @memberof AppTreePicker
*/ */
@Prop() public itemParam: any; @Prop() public localContext!:any;
/**
* 局部导航参数
*
* @type {any}
* @memberof AppTreePicker
*/
@Prop() public localParam!:any;
/** /**
* 是否忽略之变化 * 是否忽略之变化
...@@ -210,8 +218,8 @@ export default class AppTreePicker extends Vue { ...@@ -210,8 +218,8 @@ export default class AppTreePicker extends Vue {
* *
* @memberof AppTreePicker * @memberof AppTreePicker
*/ */
public setViewParam(activeData: any) { public setViewParam() {
if (!this.itemParam || !activeData) { if (!this.data) {
return; return;
} }
let arg: any = {}; let arg: any = {};
...@@ -219,17 +227,13 @@ export default class AppTreePicker extends Vue { ...@@ -219,17 +227,13 @@ export default class AppTreePicker extends Vue {
let param: any = JSON.parse(JSON.stringify(this.viewparams)); let param: any = JSON.parse(JSON.stringify(this.viewparams));
let context: any = JSON.parse(JSON.stringify(this.context)); let context: any = JSON.parse(JSON.stringify(this.context));
// 附加参数处理 // 附加参数处理
if (this.itemParam.context) { if (this.localContext && Object.keys(this.localContext).length >0) {
let _context = this.$util.formatData(activeData,context,this.itemParam.context); let _context = this.$util.computedNavData(this.data,arg.context,arg.param,this.localContext);
Object.assign(context,_context); Object.assign(arg.context,_context);
} }
if (this.itemParam.param) { if (this.localParam && Object.keys(this.localParam).length >0) {
let _param = this.$util.formatData(activeData,param,this.itemParam.param); let _param = this.$util.computedNavData(this.data,arg.param,arg.param,this.localParam);
Object.assign(param,_param); Object.assign(arg.param,_param);
}
if (this.itemParam.parentdata) {
let _parentdata = this.$util.formatData(activeData,param,this.itemParam.parentdata);
Object.assign(param,_parentdata);
} }
this.viewdata = JSON.stringify(context); this.viewdata = JSON.stringify(context);
this.viewparam = JSON.stringify(param); this.viewparam = JSON.stringify(param);
...@@ -240,13 +244,13 @@ export default class AppTreePicker extends Vue { ...@@ -240,13 +244,13 @@ export default class AppTreePicker extends Vue {
* *
* @param {*} newVal * @param {*} newVal
* @param {*} oldVal * @param {*} oldVal
* @memberof AppFormDRUIPart * @memberof AppTreePicker
*/ */
@Watch('data') @Watch('data')
onActivedataChange(newVal: any, oldVal: any) { onActivedataChange(newVal: any, oldVal: any) {
const newFormData: any = JSON.parse(newVal); const newFormData: any = JSON.parse(newVal);
const oldDormData: any = JSON.parse(oldVal); const oldDormData: any = JSON.parse(oldVal);
this.setViewParam(newFormData); this.setViewParam();
if (!this.refreshitems || this.ignorefieldvaluechange) { if (!this.refreshitems || this.ignorefieldvaluechange) {
return; return;
} }
...@@ -261,7 +265,7 @@ export default class AppTreePicker extends Vue { ...@@ -261,7 +265,7 @@ export default class AppTreePicker extends Vue {
* *
* @param {*} newVal * @param {*} newVal
* @param {*} oldVal * @param {*} oldVal
* @memberof AppPicker * @memberof AppTreePicker
*/ */
@Watch('value') @Watch('value')
public onValueChange(newVal: any, oldVal: any) { public onValueChange(newVal: any, oldVal: any) {
...@@ -277,7 +281,7 @@ export default class AppTreePicker extends Vue { ...@@ -277,7 +281,7 @@ export default class AppTreePicker extends Vue {
if(this.formState) { if(this.formState) {
this.formStateEvent = this.formState.subscribe(({ tag, action, data }) => { this.formStateEvent = this.formState.subscribe(({ tag, action, data }) => {
if (Object.is('load', action)) { if (Object.is('load', action)) {
this.setViewParam(JSON.parse(this.data)); this.setViewParam();
} }
}); });
} }
...@@ -286,7 +290,7 @@ export default class AppTreePicker extends Vue { ...@@ -286,7 +290,7 @@ export default class AppTreePicker extends Vue {
/** /**
* vue 生命周期 * vue 生命周期
* *
* @memberof SelectType * @memberof AppTreePicker
*/ */
public destroyed() { public destroyed() {
if (this.formStateEvent) { if (this.formStateEvent) {
......
...@@ -79,12 +79,20 @@ export default class CodeList extends Vue { ...@@ -79,12 +79,20 @@ export default class CodeList extends Vue {
@Prop() public data?: any; @Prop() public data?: any;
/** /**
* 传入额外参数 * 局部上下文导航参数
* *
* @type {*} * @type {any}
* @memberof CodeList
*/
@Prop() public localContext!:any;
/**
* 局部导航参数
*
* @type {any}
* @memberof CodeList * @memberof CodeList
*/ */
@Prop() public itemParam?: any; @Prop() public localParam!:any;
/** /**
* 视图上下文 * 视图上下文
...@@ -270,12 +278,12 @@ export default class CodeList extends Vue { ...@@ -270,12 +278,12 @@ export default class CodeList extends Vue {
arg.param = this.viewparams ? JSON.parse(JSON.stringify(this.viewparams)) : {}; arg.param = this.viewparams ? JSON.parse(JSON.stringify(this.viewparams)) : {};
arg.context = this.context ? JSON.parse(JSON.stringify(this.context)) : {}; arg.context = this.context ? JSON.parse(JSON.stringify(this.context)) : {};
// 附加参数处理 // 附加参数处理
if (this.itemParam && this.itemParam.context) { if (this.localContext && Object.keys(this.localContext).length >0) {
let _context = this.$util.formatData(this.data,arg.context,this.itemParam.context); let _context = this.$util.computedNavData(this.data,arg.context,arg.param,this.localContext);
Object.assign(arg.context,_context); Object.assign(arg.context,_context);
} }
if (this.itemParam && this.itemParam.param) { if (this.localParam && Object.keys(this.localParam).length >0) {
let _param = this.$util.formatData(this.data,arg.param,this.itemParam.param); let _param = this.$util.computedNavData(this.data,arg.param,arg.param,this.localParam);
Object.assign(arg.param,_param); Object.assign(arg.param,_param);
} }
} }
......
...@@ -85,12 +85,20 @@ export default class DropDownListMpicker extends Vue { ...@@ -85,12 +85,20 @@ export default class DropDownListMpicker extends Vue {
@Prop() public placeholder?: string; @Prop() public placeholder?: string;
/** /**
* 传入额外参数 * 局部上下文导航参数
* *
* @type {*} * @type {any}
* @memberof DropDownListMpicker
*/
@Prop() public localContext!:any;
/**
* 局部导航参数
*
* @type {any}
* @memberof DropDownListMpicker * @memberof DropDownListMpicker
*/ */
@Prop() public itemParam?: any; @Prop() public localParam!:any;
/** /**
* 视图上下文 * 视图上下文
...@@ -157,12 +165,12 @@ export default class DropDownListMpicker extends Vue { ...@@ -157,12 +165,12 @@ export default class DropDownListMpicker extends Vue {
arg.param = this.viewparams ? JSON.parse(JSON.stringify(this.viewparams)) : {}; arg.param = this.viewparams ? JSON.parse(JSON.stringify(this.viewparams)) : {};
arg.context = this.context ? JSON.parse(JSON.stringify(this.context)) : {}; arg.context = this.context ? JSON.parse(JSON.stringify(this.context)) : {};
// 附加参数处理 // 附加参数处理
if (this.itemParam.context) { if (this.localContext && Object.keys(this.localContext).length >0) {
let _context = this.$util.formatData(this.data,arg.context,this.itemParam.context); let _context = this.$util.computedNavData(this.data,arg.context,arg.param,this.localContext);
Object.assign(arg.context,_context); Object.assign(arg.context,_context);
} }
if (this.itemParam.param) { if (this.localParam && Object.keys(this.localParam).length >0) {
let _param = this.$util.formatData(this.data,arg.param,this.itemParam.param); let _param = this.$util.computedNavData(this.data,arg.param,arg.param,this.localParam);
Object.assign(arg.param,_param); Object.assign(arg.param,_param);
} }
} }
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册