| | |
| | | <vciWebRefer |
| | | v-if="item.type == 'refer'" |
| | | :referConfig="item.referConfig || {}" |
| | | :value="form[item.referConfig.field] || item.value" |
| | | :text="form[item.referConfig.showField]" |
| | | @setReferValue="setReferValue" |
| | | ></vciWebRefer> |
| | | </template> |
| | | </avue-form> |
| | |
| | | showField:formItem.showField || formItem.field, |
| | | field: formItem.field, |
| | | placeholder: formItem.inputTip, |
| | | options:formItem.referConfig, |
| | | value:'', |
| | | text:'' |
| | | options:formItem.referConfig |
| | | }:{}, |
| | | change: () => { |
| | | this.changeFun(formItem.displayExtension, formItem.prop); |
| | |
| | | return val; |
| | | } |
| | | }, |
| | | changeFun(displayExtension, prop) { |
| | | // executeCode({displayExtension, data: this.form}).then(res => { |
| | | // this.form[prop] = res.data.data |
| | | // }) |
| | | }, |
| | | // 获取swich和已拿到的下拉数据 |
| | | getDataList(type, dicData) { |
| | | if (type === "truefalse") { |
| | |
| | | } |
| | | ); |
| | | }, |
| | | setReferValue(data){ |
| | | if(data.field){ |
| | | this.form[data.field]=data.value || ''; |
| | | this.form[data.showField]=data.text || ''; |
| | | this.$emit("getFormData", this.form); |
| | | } |
| | | } |
| | | }, |
| | | watch: { |
| | | // 表单数据修改反馈到父组件 |
| | |
| | | <template> |
| | | <vciWebReferTree v-if="refertype=='tree'" :value="value" :referConfig="referConfig"></vciWebReferTree> |
| | | <vciWebReferTable v-else-if="refertype=='table'" :value="value" :referConfig="referConfig"></vciWebReferTable> |
| | | <vciWebReferDefalut v-else :value="value" :referConfig="referConfig"></vciWebReferDefalut> |
| | | <vciWebReferTree v-if="refertype=='tree'" @setValue="setValue" :value="value" :text="text" :referConfig="referConfig"></vciWebReferTree> |
| | | <vciWebReferTable v-else-if="refertype=='table'" @setValue="setValue" :value="value" :text="text" :referConfig="referConfig"></vciWebReferTable> |
| | | <vciWebReferDefalut v-else @setValue="setValue" :value="value" :text="text" :referConfig="referConfig"></vciWebReferDefalut> |
| | | </template> |
| | | |
| | | <script> |
| | |
| | | import {validatenull} from "@/util/validate"; |
| | | export default { |
| | | name: "vciWebRefer", |
| | | props:["referConfig"], |
| | | components: { vciWebReferTree,vciWebReferTable,vciWebReferDefalut}, |
| | | props: ["referConfig","value","text"], |
| | | components: {vciWebReferTree, vciWebReferTable, vciWebReferDefalut}, |
| | | data() { |
| | | return { |
| | | refertype: this.referConfig.options.type, |
| | | isMuti: ("true" == this.referConfig.options.isMuti || this.referConfig.options.isMuti == true || this.referConfig.options.muti == true) ? true : false, |
| | | value: this.referConfig.value |
| | | emitData:{} |
| | | }; |
| | | }, |
| | | created() { |
| | | var title =this.referConfig.title || ''; |
| | | title = title.replace(":",""); |
| | | if(title){ |
| | | title = validatenull(this.referConfig.title)?('为【' + title + '】选取值'):this.referConfig.title; |
| | | }else{ |
| | | title = validatenull(this.referConfig.title)?('为【' + this.referConfig.showField + '】选取值'):this.referConfig.title; |
| | | var title = this.referConfig.title || ''; |
| | | title = title.replace(":", ""); |
| | | if (title) { |
| | | title = validatenull(this.referConfig.title) ? ('为【' + title + '】选取值') : this.referConfig.title; |
| | | } else { |
| | | title = validatenull(this.referConfig.title) ? ('为【' + this.referConfig.showField + '】选取值') : this.referConfig.title; |
| | | } |
| | | this.referConfig.title= title; |
| | | this.referConfig.isMuti=this.isMuti |
| | | if(this.refertype=='tree'){ |
| | | console.log('referConfig:') |
| | | console.log(this.referConfig) |
| | | this.referConfig.title = title; |
| | | this.referConfig.isMuti = this.isMuti; |
| | | }, |
| | | methods: { |
| | | setValue(value) { |
| | | this.emitData = value; |
| | | } |
| | | |
| | | }, |
| | | watch:{ |
| | | // 修改反馈到父组件 |
| | | emitData: { |
| | | deep: true, |
| | | immediate: true, |
| | | handler(newV) { |
| | | this.$emit("setReferValue", newV); |
| | | }, |
| | | } |
| | | }, |
| | | mounted() { |
| | | |
| | |
| | | <template> |
| | | <avue-input-tree :props="props" :lazy="lazy" :tree-load="treeLoad" :leaf-only="!referConfig.onlyLeaf" :multiple="isMuti" v-model="value" :placeholder="placeholder" :dic="treeData"></avue-input-tree> |
| | | <avue-input-tree ref="referTree" :props="props" :lazy="lazy" :tree-load="treeLoad" :node-click="nodeClick" :leaf-only="!referConfig.onlyLeaf" :multiple="isMuti" v-model="value" :placeholder="placeholder" :dic="treeData"></avue-input-tree> |
| | | </template> |
| | | |
| | | <script> |
| | |
| | | |
| | | export default { |
| | | name: "vciWebReferTree", |
| | | props:["referConfig","value"], |
| | | props:["referConfig","value","text"], |
| | | data() { |
| | | return { |
| | | options: this.referConfig.options, |
| | |
| | | //value:"value", |
| | | //label:"title" |
| | | }, |
| | | treeUrl: this.referConfig.options.url || '',//'/api/ubcs-code/codeClassify/treeCodeClassify', |
| | | treeUrl: this.referConfig.options.url || '/api/ubcs-code/codeClassify/treeCodeClassify', |
| | | treeData: [], |
| | | currentNode:{}, |
| | | params: {}, |
| | | loadType: {'all': 'all', 'node': 'node'}, |
| | | copyParam: ['btmType', 'lnType', 'toBtmType', 'textField', 'valueField', 'parentFieldName', 'parentValue', 'sort', 'order', 'isDirection', 'whereSql', 'isMuti', 'queryScheme', 'isQueryAllColumn', 'queryColumn', 'split', 'loadType', 'onlyLeaf', 'onlyLeafText', 'parentUsedField'] |
| | |
| | | }, |
| | | created() { |
| | | this.getParams(); |
| | | console.log('referConfig:') |
| | | console.log(this.referConfig) |
| | | }, |
| | | mounted() { |
| | | if(!this.lazy){ |
| | |
| | | methods: { |
| | | getParams:function (){ |
| | | var queryParams = {}; |
| | | debugger; |
| | | if(this.options.extraParams){ |
| | | queryParams = this.options.extraParams; |
| | | } |
| | |
| | | } |
| | | })) |
| | | }); |
| | | }, |
| | | nodeClick(data){ |
| | | //不要用watch监听value值,会找不到text |
| | | this.value=data[this.props.value]; |
| | | this.text=data[this.props.label]; |
| | | this.currentNode=data; |
| | | this.$emit("setValue", {field:this.referConfig.field,showField:this.referConfig.showField,value:this.value,text:this.text,rawData:this.currentNode}); |
| | | } |
| | | |
| | | }, |
| | | watch:{ |
| | | } |
| | | } |
| | | </script> |