From f09e05514d9a9e2623cfa73c4de1ffa98bb30bf8 Mon Sep 17 00:00:00 2001
From: xiejun <xiejun@vci-tech.com>
Date: 星期二, 23 一月 2024 10:09:07 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue | 504 +++++++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 430 insertions(+), 74 deletions(-)
diff --git a/Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue b/Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue
index 3ba7da9..e59f156 100644
--- a/Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue
+++ b/Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue
@@ -1,37 +1,38 @@
-<!-- eslint-disable vue/valid-v-for -->
-<!-- eslint-disable vue/require-v-for-key -->
<template>
<div>
<avue-form
- v-model="form"
- :option="option"
- v-loading="loading"
- ref="form"
- :style="{ minHeight: loading ? '300px' : '' }"
:key="updateIndex"
+ ref="form"
+ v-model="form"
+ v-loading="loading"
+ :option="option"
+ :style="{ minHeight: loading ? '300px' : '' }"
>
- <template :slot="item.prop + 'Label'" v-for="item in slotColumnList">
+ <template v-for="item in slotColumnList" :slot="item.prop + 'Label'">
<span>
<span>{{ item.label }} </span>
<el-tooltip
v-if="item.keyAttr"
class="item"
- effect="dark"
content="璇ュ睘鎬т负鍏抽敭灞炴��"
+ effect="dark"
placement="top-start"
>
<i class="el-icon-star-on key_attr_icon"></i>
</el-tooltip>
</span>
</template>
- <template :slot="item.prop + ''" v-for="item in slotColumnList">
+ <template v-for="item in slotColumnList" :slot="item.prop + ''">
<vciWebRefer
- v-if="item.type == 'refer'"
- :referConfig="item.referConfig || {}"
- :value="form[item.referConfig.field] || item.value"
- :text="form[item.referConfig.showField]"
+ v-if="item.type == 'refer'" :key="item.dataKey"
+ referType="master"
+ :data-key="item.dataKey"
:disabled="item.disabled"
:display="item.display"
+ :referConfig="item.referConfig || {}"
+ :reloadData="item.referConfig.reloadData || false"
+ :text="form[item.referConfig.showField]"
+ :value="form[item.referConfig.field] || item.value"
@setReferValue="setReferValue"
></vciWebRefer>
</template>
@@ -40,12 +41,13 @@
</template>
<script>
-import { getFormDetail } from "@/api/formTemplate";
-import { getDictionary } from "../../api/system/dict";
+import {getFormDetail} from "@/api/formTemplate";
+import {getEnumDictionary} from "../../api/system/dict";
import vciWebRefer from "../refer/vciWebRefer.vue";
+
export default {
name: "FormTemplate",
- components: { vciWebRefer },
+ components: {vciWebRefer},
props: {
// 榛樿绂佺敤鍏冪礌
disabledProp: {
@@ -59,6 +61,10 @@
codeClassifyOid: {
type: String,
default: "",
+ },
+ LoadingStatus: {
+ type: String,
+ default: "code"
},
// 鍒楄〃鏁版嵁oid
rowOid: {
@@ -85,14 +91,39 @@
type: Number,
default: 8,
},
- TreeValue:{
+ TreeValue: {
type: String,
default: "",
},
+ eventList: {
+ type: Array
+ },
+ status: {
+ type: String,
+ default: "",
+ },
+ selectRow: {
+ type: Array,
+ default: []
+ }
},
data() {
return {
- TreeValueForm:'',
+ selectValue: "",
+ //骞翠唬鍙�
+ dataYearCode: {
+ type: "",
+ value: ""
+ },
+ filteredObject: {},
+ filteredArray: [],
+ isSeriesType: {},
+ attrList: [],
+ add: '',
+ codeattrsecValue: '',
+ ValidataValue: false,
+ eventFlag: {},
+ TreeValueForm: '',
updateIndex: 0,
form: {},
option: {
@@ -117,10 +148,18 @@
// 琛ㄥ崟灞炴��
attributes: [],
slotColumnList: [],
+ isShow: "",
};
},
- mounted() {
+ mounted() {
this.handleResize();
+ },
+ updated() {
+ },
+ created() {
+ if (this.LoadingStatus === 'code') {
+ this.loading = false;
+ }
},
computed: {
localTrendsSpan() {
@@ -142,29 +181,74 @@
this.$emit("getFormData", newV);
},
},
- TreeValue:{
- handler(newval,oldval){
- if(newval){
- this.TreeValueForm=newval;
- // console.log(this.TreeValueForm)
+ attrList: {
+ deep: true,
+ immediate: true,
+ handler(newVal, oldVal) {
+ if (newVal) {
+ this.$emit("attrList", newVal)
+ }
+ }
+ },
+ TreeValue: {
+ handler(newval, oldval) {
+ if (newval) {
+ this.TreeValueForm = newval;
}
},
- deep:true,
- immediate:true
+ deep: true,
+ immediate: true
+ },
+ isShow: {
+ handler(newV) {
+ this.$emit("isShow", newV)
+ }
+ },
+ dataYearCode: {
+ deep: true,
+ immediate: true,
+ handler(newV) {
+ this.$emit("dataYearCode", newV)
+ }
+ },
+ selectRow: {
+ handler(newval) {
+ // console.log(newval);
+ let ids = newval.map(item => item.id);
+ this.selectValue = ids.join(",");
+ },
+ deep: true,
+ immediate: true
}
},
methods: {
// 娓叉煋琛ㄥ崟妯℃澘
- templateRender(formItemList,TreeValue) {
+ templateRender(formItemList, TreeValue) {
+ if (this.eventList) {
+ this.eventFlag = this.eventList.some(item => {
+ if (item.classifyInvokeEditFlag === 'true') {
+ this.eventObject = item;
+ return true;
+ }
+ });
+ }
// 鏃犻渶鍒嗙粍鏁版嵁
let column = [];
let group = [];
let dictKeys = [];
let slotColumnList = [];
- let value=''
formItemList.forEach((formItem) => {
formItem = this.resetFormConfig(formItem);
- // console.log('formItem.dicData.value',formItem.dicData)
+ //灞炴�х爜娈佃鍒�
+ if (formItem.secType === "codeattrsec") {
+ this.attrList.push(formItem);
+ }
+ //鏇存敼鏂瑰紡
+ if (formItem.field === "codeStandardEditType") {
+ if (this.status === "amend") {
+ formItem.readOnly = true;
+ }
+ }
if (formItem.type === "line") {
group.push({
label: formItem.text,
@@ -174,13 +258,14 @@
});
return;
}
+
if (
formItem.type === "combox" &&
formItem.comboxKey &&
(!Array.isArray(formItem.dicData) || formItem.dicData.length === 0) &&
(!Array.isArray(formItem.data) || formItem.data.length === 0)
) {
- dictKeys.push({ dictKey: formItem.comboxKey, field: formItem.field });
+ dictKeys.push({dictKey: formItem.comboxKey, field: formItem.field});
}
// 绂佺敤閮ㄥ垎灞炴�э紙澶栭儴浼犲�肩鐢ㄥ拰鍙傜収绂佺敤锛�
if (this.disabledProp.includes(formItem.field)) {
@@ -197,13 +282,39 @@
message = "璇疯緭鍏�";
trigger = "blur";
}
- let fieldMapKey=''
- if( formItem.type == "refer"){
- if(!formItem.fieldMap){
- fieldMapKey=formItem.field+'Id'
- }
+ let fieldMapKey = ''
+ if (formItem.type == "refer" && !formItem.fieldMap) {
+ fieldMapKey = formItem.field + 'Id'
+ formItem.fieldMap = {}
+ formItem.fieldMap[fieldMapKey] = 'id'
+ formItem.fieldMap[formItem.field + 'id'] = 'id'
}
+
let columnItem = {
+ change: (val) => {
+ if (val.column.field === "drawingno") {
+ this.codeattrsecValue = val.value;
+ return;
+ }
+ //淇涓�-绯诲垪鍙�
+ if (val.column.field === "reviseSeries") {
+ if (val.value === "false") {
+ this.isShow = true;
+ } else {
+ this.isShow = false;
+ }
+ }
+ if (val.column.field === "releaseDate") {
+ if (val.value) {
+ this.dataYearCode.type = val.column.valueFormat;
+ this.dataYearCode.value = val.value;
+ } else {
+ this.dataYearCode.type = "";
+ this.dataYearCode.value = "";
+ }
+ }
+ },
+ dataKey: formItem.dataKey || formItem.field,
label: formItem.text,
labelslot: true,
prop: this.$utilFunc.isValuableObj(formItem.referConfig)
@@ -212,40 +323,43 @@
field: formItem.field,
type: this.columnType[formItem.type],
dicData: this.getDataList(formItem.type, formItem.data),
- disabled: this.type === "detail" ? true : formItem.readOnly || (formItem.codeValueApplyStatus && formItem.codeValueApplyStatus == 2 ?true : false) ,
+ disabled: this.type === "detail" ? true : formItem.readOnly || (formItem.codeValueApplyStatus && formItem.codeValueApplyStatus == 2 ? true : false) ||
+ ((formItem.name === "绯诲垪鍙�" && this.status && (formItem.field === "reviseSeries" && formItem.value == 'false') ? true : false)),
prepend: this.preOrSufFixShow("text", formItem.prefix),
append: this.preOrSufFixShow("text", formItem.suffix),
prefixIcon: this.preOrSufFixShow("icon", formItem.prefix),
suffixIcon: this.preOrSufFixShow("icon", formItem.suffix),
- valueFormat:formItem.dateFormate,
+ valueFormat: formItem.dateFormate || "yyyy-MM-dd HH:mm:ss",
format: formItem.dateFormate,
keyAttr: formItem.keyAttr,
- value: (formItem.dicData && formItem.dicData.length > 0 && formItem.secType == "codefixedsec" ? formItem.dicData[0].id : null) ||
- (formItem.secType == "codedatesec"?formItem.codeDateFormatStr: null) || ( TreeValue&& formItem.secType == "codelevelsec" ? TreeValue : null),
+ value: formItem.defaultValue || (formItem.dicData && formItem.dicData.length > 0 && formItem.secType == "codefixedsec" ? formItem.dicData[0].id : null) ||
+ (formItem.secType == "codedatesec" ? formItem.codeDateValue : null) || (TreeValue && formItem.secType == "codelevelsec" ? TreeValue : null) ||
+ (formItem.secType == "codeattrsec" ? this.add : null) || (this.status === "apply" && formItem.field === "codeStandardEditType" ? "1" : null) ||
+ (this.status === "amend" && formItem.field === "codeStandardEditType" ? "2" : null) ||
+ //鐖剁粍浠跺鏋滄槸鍙傜収鏁版嵁浼氬皢selectRow缃┖,selectRow涓嶄负绌哄氨璇存槑涓嶆槸鍙傜収瑕佸洖濉簮鏍囧噯鍙锋暟鎹�
+ (this.status === "amend" ? (this.selectRow && (formItem.field === "oldcode" ? this.selectValue : null)) : null),
placeholder: formItem.inputTip,
comboxKey: formItem.comboxKey,
tip: formItem.tooltips,
- // hidden:formItem.secType && formItem.codeValueApplyStatus == 3 ? true : false,
- // readonly:formItem.codeValueApplyStatus && formItem.codeValueApplyStatus == 2 ?true : false ,
display: !formItem.hidden,
maxlength: formItem.maxlength,
filterable: true,
referConfig:
formItem.type == "refer"
? {
- title: formItem.text,
- showField: formItem.showField || formItem.field,
- field: formItem.field,
- fieldMap:formItem.fieldMap || {fieldMapKey:'id'},
- placeholder: formItem.inputTip,
- options: formItem.referConfig
- }
+ title: formItem.text,
+ showField: formItem.showField || formItem.field,
+ field: formItem.field,
+ fieldMap: formItem.fieldMap || {},
+ placeholder: formItem.inputTip,
+ options: formItem.referConfig
+ }
: {},
span: formItem.span
? formItem.span
: formItem.type === "textarea"
- ? 24
- : this.localTrendsSpan,
+ ? 24
+ : this.localTrendsSpan,
rules: [
{
required: formItem.required,
@@ -264,15 +378,15 @@
value: "key",
},
};
- // console.log('columnItem',columnItem)
+ this.filteredObject = columnItem
slotColumnList.push(columnItem);
- // console.log('slotColumnList',slotColumnList)
if (group.length === 0) {
column.push(columnItem);
} else {
group[group.length - 1]["column"].push(columnItem);
}
});
+
this.slotColumnList = slotColumnList;
this.$set(this.option, "column", column);
this.$set(this.option, "group", group);
@@ -283,12 +397,249 @@
this.geDictData(dictKeys);
this.getFormDetail();
- // console.log('selfColumnConfig',this.selfColumnConfig)
-
+ },
+ //淇敼绾ц仈椤�
+ changeChildItem(items, TreeValue, type) {
+ type = type || "add";
+ let column = this.option.column;
+ let group = this.option.group;
+ // let column = [];
+ // let group = [];
+ let that = this;
+ items.forEach((item) => {
+ let formItem = this.resetFormConfig(item);
+ if (formItem.field == "lcstatus") {
+ formItem.field = formItem.field + "_text";
+ formItem.readOnly = true;
+ }
+ // 璁剧疆琛ㄥ崟鏍¢獙鐨勮鍒欙紝鏂囨湰
+ let message = "璇烽�夋嫨";
+ let trigger = "change";
+ if (formItem.type === "text") {
+ message = "璇疯緭鍏�";
+ trigger = "blur";
+ }
+ let fieldMapKey = ''
+ if (formItem.type == "refer" && !formItem.fieldMap) {
+ fieldMapKey = formItem.field + 'Id'
+ formItem.fieldMap = {}
+ formItem.fieldMap[fieldMapKey] = 'id'
+ formItem.fieldMap[formItem.field + 'id'] = 'id'
+ }
+ let columnItem = {
+ label: formItem.text,
+ labelslot: true,
+ prop: this.$utilFunc.isValuableObj(formItem.referConfig)
+ ? formItem.showField || formItem.field
+ : formItem.field,
+ field: formItem.field,
+ type: this.columnType[formItem.type],
+ dicData: this.getDataList(formItem.type, formItem.data),
+ disabled: this.type === "detail" ? true : formItem.readOnly || (formItem.codeValueApplyStatus && formItem.codeValueApplyStatus == 2 ? true : false) ||
+ (this.status ? (formItem.field === "reviseSeries" ? (formItem.value == 'false' ? true : false) : false) : false),
+ prepend: this.preOrSufFixShow("text", formItem.prefix),
+ append: this.preOrSufFixShow("text", formItem.suffix),
+ prefixIcon: this.preOrSufFixShow("icon", formItem.prefix),
+ suffixIcon: this.preOrSufFixShow("icon", formItem.suffix),
+ valueFormat: formItem.dateFormate || "yyyy-MM-dd HH:mm:ss",
+ format: formItem.dateFormate,
+ keyAttr: formItem.keyAttr,
+ value: formItem.defaultValue || (formItem.dicData && formItem.dicData.length > 0 && formItem.secType == "codefixedsec" ? formItem.dicData[0].id : null) ||
+ (formItem.secType == "codedatesec" ? formItem.codeDateValue : null) || (TreeValue && formItem.secType == "codelevelsec" ? TreeValue : null) ||
+ (formItem.secType == "codeattrsec" ? this.add : null) || (this.status === "apply" && formItem.field === "codeStandardEditType" ? "1" : null) ||
+ (this.status === "amend" && formItem.field === "codeStandardEditType" ? "2" : null) ||
+ //鐖剁粍浠跺鏋滄槸鍙傜収鏁版嵁浼氬皢selectRow缃┖,selectRow涓嶄负绌哄氨璇存槑涓嶆槸鍙傜収瑕佸洖濉簮鏍囧噯鍙锋暟鎹�
+ (this.status === "amend" ? (this.selectRow && (formItem.field === "oldcode" ? this.selectValue : null)) : null),
+ placeholder: formItem.inputTip,
+ comboxKey: formItem.comboxKey,
+ tip: formItem.tooltips,
+ display: !formItem.hidden,
+ maxlength: formItem.maxlength,
+ filterable: true,
+ referConfig:
+ formItem.type == "refer"
+ ? {
+ title: formItem.text,
+ showField: formItem.showField || formItem.field,
+ field: formItem.field,
+ fieldMap: formItem.fieldMap || {},
+ placeholder: formItem.inputTip,
+ options: formItem.referConfig
+ }
+ : {},
+ span: formItem.span
+ ? formItem.span
+ : formItem.type === "textarea"
+ ? 24
+ : this.localTrendsSpan,
+ rules: [
+ {
+ required: formItem.required,
+ message: `${message}${formItem.text}`,
+ trigger,
+ },
+ {
+ // 濡傛灉娌℃湁姝e垯鍒欏尮閰嶄换浣曞瓧绗�
+ pattern: formItem.verify ? formItem.verify : /[\s\S.]*/g,
+ message: formItem.tooltips,
+ trigger,
+ },
+ ],
+ props: {
+ label: "value",
+ value: "key",
+ },
+ };
+ if (group.length === 0) {
+ that.slotColumnList.forEach((colItem, index) => {
+ if (colItem.field == columnItem.field) {
+ that.slotColumnList[index] = columnItem;
+ column[index] = columnItem;
+ return;
+ }
+ })
+ } else {
+ that.slotColumnList.forEach((colItem, index) => {
+ if (colItem.field == columnItem.field) {
+ that.slotColumnList[index] = columnItem;
+ return;
+ }
+ })
+ group.forEach((groupItem, index) => {
+ groupItem.column.forEach((colItem, colIndex) => {
+ if (colItem.field == columnItem.field) {
+ group[index].column[colIndex] = columnItem;
+ return;
+ }
+ })
+ });
+ }
+ });
+ that.$set(that.option, "column", column);
+ that.$set(that.option, "group", group);
+ },
+ //鏍囧噯-淇
+ changeStatusItem(items, TreeValue, type) {
+ type = type || "add";
+ // let column = this.option.column;
+ // let group = this.option.group;
+ let column = [];
+ let group = [];
+ let that = this;
+ items.forEach((item) => {
+ let formItem = this.resetFormConfig(item);
+ if (formItem.field == "lcstatus") {
+ formItem.field = formItem.field + "_text";
+ formItem.readOnly = true;
+ }
+ // 璁剧疆琛ㄥ崟鏍¢獙鐨勮鍒欙紝鏂囨湰
+ let message = "璇烽�夋嫨";
+ let trigger = "change";
+ if (formItem.type === "text") {
+ message = "璇疯緭鍏�";
+ trigger = "blur";
+ }
+ let fieldMapKey = ''
+ if (formItem.type == "refer" && !formItem.fieldMap) {
+ fieldMapKey = formItem.field + 'Id'
+ formItem.fieldMap = {}
+ formItem.fieldMap[fieldMapKey] = 'id'
+ formItem.fieldMap[formItem.field + 'id'] = 'id'
+ }
+ let columnItem = {
+ label: formItem.text,
+ labelslot: true,
+ prop: this.$utilFunc.isValuableObj(formItem.referConfig)
+ ? formItem.showField || formItem.field
+ : formItem.field,
+ field: formItem.field,
+ type: this.columnType[formItem.type],
+ dicData: this.getDataList(formItem.type, formItem.data),
+ disabled: this.type === "detail" ? true : formItem.readOnly || (formItem.codeValueApplyStatus && formItem.codeValueApplyStatus == 2 ? true : false) ||
+ (this.status ? (formItem.field === "reviseSeries" ? (formItem.value == 'false' ? true : false) : false) : false),
+ prepend: this.preOrSufFixShow("text", formItem.prefix),
+ append: this.preOrSufFixShow("text", formItem.suffix),
+ prefixIcon: this.preOrSufFixShow("icon", formItem.prefix),
+ suffixIcon: this.preOrSufFixShow("icon", formItem.suffix),
+ valueFormat: formItem.dateFormate || "yyyy-MM-dd HH:mm:ss",
+ format: formItem.dateFormate,
+ keyAttr: formItem.keyAttr,
+ value: formItem.defaultValue || (formItem.dicData && formItem.dicData.length > 0 && formItem.secType == "codefixedsec" ? formItem.dicData[0].id : null) ||
+ (formItem.secType == "codedatesec" ? formItem.codeDateValue : null) || (TreeValue && formItem.secType == "codelevelsec" ? TreeValue : null) ||
+ (formItem.secType == "codeattrsec" ? this.add : null) || (this.status === "apply" && formItem.field === "codeStandardEditType" ? "1" : null) ||
+ (this.status === "amend" && formItem.field === "codeStandardEditType" ? "2" : null) ||
+ //鐖剁粍浠跺鏋滄槸鍙傜収鏁版嵁浼氬皢selectRow缃┖,selectRow涓嶄负绌哄氨璇存槑涓嶆槸鍙傜収瑕佸洖濉簮鏍囧噯鍙锋暟鎹�
+ (this.status === "amend" ? (this.selectRow && (formItem.field === "oldcode" ? this.selectValue : null)) : null),
+ placeholder: formItem.inputTip,
+ comboxKey: formItem.comboxKey,
+ tip: formItem.tooltips,
+ display: !formItem.hidden,
+ maxlength: formItem.maxlength,
+ filterable: true,
+ referConfig:
+ formItem.type == "refer"
+ ? {
+ title: formItem.text,
+ showField: formItem.showField || formItem.field,
+ field: formItem.field,
+ fieldMap: formItem.fieldMap || {},
+ placeholder: formItem.inputTip,
+ options: formItem.referConfig
+ }
+ : {},
+ span: formItem.span
+ ? formItem.span
+ : formItem.type === "textarea"
+ ? 24
+ : this.localTrendsSpan,
+ rules: [
+ {
+ required: formItem.required,
+ message: `${message}${formItem.text}`,
+ trigger,
+ },
+ {
+ // 濡傛灉娌℃湁姝e垯鍒欏尮閰嶄换浣曞瓧绗�
+ pattern: formItem.verify ? formItem.verify : /[\s\S.]*/g,
+ message: formItem.tooltips,
+ trigger,
+ },
+ ],
+ props: {
+ label: "value",
+ value: "key",
+ },
+ };
+ if (group.length === 0) {
+ that.slotColumnList.forEach((colItem, index) => {
+ if (colItem.field == columnItem.field) {
+ that.slotColumnList[index] = columnItem;
+ column[index] = columnItem;
+ return;
+ }
+ })
+ } else {
+ that.slotColumnList.forEach((colItem, index) => {
+ if (colItem.field == columnItem.field) {
+ that.slotColumnList[index] = columnItem;
+ return;
+ }
+ })
+ group.forEach((groupItem, index) => {
+ groupItem.column.forEach((colItem, colIndex) => {
+ if (colItem.field == columnItem.field) {
+ group[index].column[colIndex] = columnItem;
+ return;
+ }
+ })
+ });
+ }
+ });
+ that.$set(that.option, "column", column);
+ that.$set(that.option, "group", group);
},
// 浣跨敤浼犲叆鐨勮〃鍗曟暟鎹厤缃�
resetFormConfig(formItem) {
- // console.log(this.selfColumnConfig)
for (const configType in this.selfColumnConfig) {
if (Object.hasOwnProperty.call(this.selfColumnConfig, configType)) {
const element = this.selfColumnConfig[configType];
@@ -304,9 +655,7 @@
if (Object.hasOwnProperty.call(element, newAttr)) {
const oldAttr = element[newAttr];
formItem[newAttr] = formItem[oldAttr];
- // console.log(formItem)
- // console.log(newAttr,oldAttr)
- // console.log(formItem[newAttr],formItem[oldAttr])
+
}
}
} else if (configType === "directVoluation") {
@@ -356,13 +705,13 @@
// 寮傛鑾峰彇瀛楀吀鏁版嵁
geDictData(dictKeys) {
dictKeys.forEach((dictObj) => {
- getDictionary({ code: dictObj.dictKey }).then((res) => {
+ getEnumDictionary({code: dictObj.dictKey}).then((res) => {
if (res.data && res.data.code === 200) {
this.option.column = this.option.column.map((item) => {
if (item.field === dictObj.field) {
let dictData = (res.data.data || []).map((itm) => {
- itm.value = itm.dictValue;
- itm.key = itm.dictKey;
+ itm.value = itm.itemName;
+ itm.key = itm.itemValue;
return itm;
});
item.dicData = dictData;
@@ -380,6 +729,7 @@
if (valid) {
done();
resolve(true);
+ this.ValidataValue = true;
} else {
resolve(false);
}
@@ -389,15 +739,18 @@
// 鑾峰彇琛ㄥ崟璇︽儏鏁版嵁
getFormDetail() {
if (this.type === "add") return;
- getFormDetail({ templateOid: this.templateOid, oid: this.rowOid }).then(
- (res) => {
- this.form = Object.assign(this.form, res.data.data[0]);
- this.loading = false;
- }
- );
+ if (this.templateOid) {
+ getFormDetail({templateOid: this.templateOid, oid: this.rowOid}).then(
+ (res) => {
+ this.form = Object.assign(this.form, res.data.data[0]);
+ this.loading = false;
+ }
+ );
+ return;
+ }
+
},
setReferValue(data) {
- // console.log(data)
if (data.field) {
this.form[data.field] = data.value || "";
this.form[data.showField] = data.text || "";
@@ -411,21 +764,24 @@
if (!_item.attributes) {
_item.attributes = _item;
}
+ if (!_item.attributes.data) {
+ _item.attributes.data = {};
+ }
if (mapFields.length == 1) {
var mapField = mapFields[0];
if (mapField.indexOf("attribute.") > -1) {
- temp = _item['attributes'][mapField.subString("attribute.".length)];
+ temp = _item['attributes'][mapField.subString("attribute.".length)] || _item['attributes']['data'][mapField.subString("attribute.".length)];
} else {
- temp = _item['attributes'][mapField] || _item[mapField];
+ temp = _item['attributes'][mapField] || _item['attributes']['data'][mapField] || _item[mapField];
}
} else {
//鏈夊涓�
var mutiTemp = [];
layui.each(mapFields, function (_indexField, _itemField) {
if (_itemField.indexOf("attribute.") > -1) {
- mutiTemp.push(_item['attributes'][_itemField.subString("attribute.".length)]);
+ mutiTemp.push(_item['attributes'][_itemField.subString("attribute.".length)] || _item['attributes']['data'][_itemField.subString("attribute.".length)]);
} else {
- mutiTemp.push(_item['attributes'][_itemField] || _item[_itemField]);
+ mutiTemp.push(_item['attributes'][_itemField] || _item['attributes']['data'][_itemField] || _item[_itemField]);
}
});
temp = mutiTemp.join(' ');
@@ -437,8 +793,8 @@
this.form[key] = value.join(',');
}
}
- this.$emit("getFormData", this.form);
this.$emit("referConfigDataUpdate", data);
+ this.$emit("getFormData", this.form);
}
},
},
--
Gitblit v1.9.3