From 4b88f8fa8ff1e401abaf606db815546af68e0c86 Mon Sep 17 00:00:00 2001 From: 田源 <lastanimals@163.com> Date: 星期四, 27 七月 2023 16:12:12 +0800 Subject: [PATCH] 主题库分类注入数据格式 --- Source/UBCS-WEB/src/components/Tree/attrCrud.vue | 401 +++++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 289 insertions(+), 112 deletions(-) diff --git a/Source/UBCS-WEB/src/components/Tree/attrCrud.vue b/Source/UBCS-WEB/src/components/Tree/attrCrud.vue index 1eb7dde..7218ab2 100644 --- a/Source/UBCS-WEB/src/components/Tree/attrCrud.vue +++ b/Source/UBCS-WEB/src/components/Tree/attrCrud.vue @@ -1,38 +1,38 @@ <template> <div> - <div style="display: flex;flex-wrap: wrap;" v-if="this.crudArrayFlag"> - <el-button-group> + <div style="display: flex;flex-wrap: wrap;" v-if="this.crudArrayFlag"class="app"> + <!--鏂板--> - <el-button v-if="attrEditVisible == false && attrFlagChiledren==false" size="small" type="primary" icon="el-icon-plus" @click="busineHandle">娣诲姞 {{ msg }}</el-button> + <el-button v-if="attrEditVisible == false && attrFlagChiledren==false && (!checkStatus || crudLCStatus=='Editing')" size="small" type="primary" icon="el-icon-plus" @click="busineHandle">娣诲姞 {{ msg }}</el-button> <!-- 鍏ㄥ睆缂栬緫--> - <el-button v-if=" attrEditVisible == false && attrFlagChiledren==false" size="small" @click="fullscreenHandle" icon="el-icon-full-screen">鍏ㄥ睆缂栬緫</el-button> + <el-button v-if=" attrEditVisible == false && attrFlagChiledren==false && (!checkStatus || crudLCStatus=='Editing')" size="small" @click="fullscreenHandle" icon="el-icon-full-screen">鍏ㄥ睆缂栬緫</el-button> <!-- 楠岃瘉瑙勫垯--> - <el-button icon="el-icon-info" size="small" @click="rulesVisible=true">楠岃瘉瑙勫垯</el-button> + <el-button v-if="!checkStatus || crudLCStatus=='Editing'" icon="el-icon-info" size="small" @click="ruleAddHandler">楠岃瘉瑙勫垯</el-button> <!-- 灞炴�у垎缁�--> - <el-button icon="el-icon-menu" size="small" @click="attrVisibleHandle">灞炴�у垎缁�</el-button> - </el-button-group> - <el-button-group> + <el-button v-if="!checkStatus || crudLCStatus=='Editing'" icon="el-icon-menu" size="small" @click="attrVisibleHandle">灞炴�у垎缁�</el-button> + + <!-- 鍒嗙被娉ㄥ叆--> - <el-button icon="el-icon-magic-stick" size="small" @click="injectBtn">鍒嗙被娉ㄥ叆</el-button> + <el-button v-if="!checkStatus || crudLCStatus=='Editing'" icon="el-icon-magic-stick" size="small" @click="injectBtn">鍒嗙被娉ㄥ叆</el-button> <!-- 缁勫悎瑙勫垯--> - <el-button size="small" @click="isShowHandler">缁勫悎瑙勫垯</el-button> + <el-button v-if="!checkStatus || crudLCStatus=='Editing'" size="small" @click="isShowHandler">缁勫悎瑙勫垯</el-button> <!-- 鏋氫妇娉ㄥ叆--> - <el-button size="small" @click="enmuVisHandle">鏋氫妇娉ㄥ叆</el-button> + <el-button v-if="!checkStatus || crudLCStatus=='Editing'" size="small" @click="enmuVisHandle">鏋氫妇娉ㄥ叆</el-button> <!-- 绾ц仈灞炴��--> - <el-button size="small" @click="CascadeHandle">绾ц仈灞炴��</el-button> + <el-button v-if="!checkStatus|| crudLCStatus=='Editing'" size="small" @click="CascadeHandle">绾ц仈灞炴��</el-button> <!-- 棰勮鎺掑簭--> <el-button size="small" @click="orderHandle" icon="el-icon-arrow-down">棰勮鎺掑簭</el-button> - </el-button-group> - <el-button-group> + + <!-- 淇濆瓨--> - <el-button size="small" @click="addsHandler" icon="el-icon-check">淇濆瓨</el-button> + <el-button v-if="!checkStatus|| crudLCStatus=='Editing'" size="small" @click="addsHandler" icon="el-icon-check">淇濆瓨</el-button> <!-- 鍒犻櫎--> - <el-button size="small" @click="CrudRemove" icon="el-icon-delete">鍒犻櫎</el-button> + <el-button v-if="!checkStatus || crudLCStatus=='Editing'" size="small" @click="CrudRemove" icon="el-icon-delete">鍒犻櫎</el-button> <!-- 閲嶇疆--> <el-button size="small" @click="reset" icon="el-icon-refresh-right">閲嶇疆</el-button> <!-- 鍚屾鍒板叾浠栨ā鏉�--> <el-button size="small"@click="syncHandle" icon="el-icon-share">鍚屾鍒板叾浠栨ā鏉�</el-button> - </el-button-group> + <!-- 缂栫爜鐢宠棰勮--> <el-button size="small" @click="applicationHandle" style="">缂栫爜鐢宠棰勮</el-button> <!-- 楠岃瘉瑙勫垯--> @@ -64,7 +64,7 @@ </div> </el-dialog> <!-- 鏋氫妇娉ㄥ叆--> - <el-dialog :visible.sync="enumVisible" append-to-body title="鏋氫妇娉ㄥ叆"> + <el-dialog :visible.sync="enumVisible" append-to-body title="鏋氫妇娉ㄥ叆" :before-close="this.enumBeforeClose"> <!-- 娓叉煋琛ㄦ牸鍙婃寜閽� --> <!-- 娓叉煋琛ㄦ牸鍙婃寜閽� --> <div> @@ -72,11 +72,6 @@ <el-table :data="tableData" style="width: 100%" @cell-click="handleCellClick" @selection-change="handleSelectionChange"> <!-- 娓叉煋琛ㄦ牸鍒楀強浼犲弬 --> - <el-table-column label="搴忓彿" type="index"></el-table-column> - <el-table-column - type="selection" - width="55"> - </el-table-column> <el-table-column label="閫夐」鍊�" prop="key"> <template slot-scope="{ row }"> <!-- 缂栬緫鍜屽睍绀洪�昏緫 --> @@ -103,7 +98,7 @@ <template> <div style="display: flex;justify-content: right;margin-top: 15px"> <el-button size="small" type="primary" @click="enumAddHandle">淇濆瓨</el-button> - <el-button size="small" @click="enumVisible=false">鍙栨秷</el-button> + <el-button size="small" @click="enumCancell">鍙栨秷</el-button> </div> </template> </div> @@ -120,23 +115,23 @@ <div style="padding-top: 15px;padding-left: 35px"> <el-form ref="injectForm" label-width="80px"> <el-form-item label="娉ㄥ叆绫诲瀷"> - <el-radio-group v-model="injectOption.type"> - <el-radio label="鍒嗙被鍚嶇О"></el-radio> - <el-radio label="鍒嗙被浠e彿"></el-radio> + <el-radio-group v-model="injectOption.classifyInvokeAttr"> + <el-radio label="name">鍒嗙被鍚嶇О</el-radio> + <el-radio label="id">鍒嗙被浠e彿</el-radio> </el-radio-group> </el-form-item> <el-form-item label="灞傜骇璁剧疆"> - <el-radio-group v-model="injectOption.set"> - <el-radio label="鏈�灏忓眰"></el-radio> - <el-radio label="鎸囧畾灞�"></el-radio> - <el-input-number v-if="this.injectOption.set == '鎸囧畾灞�'" v-model="injectOption.injectNum" :max="10" :min="0" + <el-radio-group v-model="injectOption.classifyInvokeLevel"> + <el-radio label="min">鏈�灏忓眰</el-radio> + <el-radio label="max">鎸囧畾灞�</el-radio> + <el-input-number v-if="this.injectOption.classifyInvokeLevel == 'max'" v-model="injectOption.classifyNumber" :max="10" :min="0" controls-position="right"></el-input-number> </el-radio-group> </el-form-item> <el-form-item label="鍙慨鏀�"> - <el-radio-group v-model="injectOption.change"> - <el-radio label="鏄�"></el-radio> - <el-radio label="鍚�"></el-radio> + <el-radio-group v-model="injectOption.classifyInvokeEditFlag"> + <el-radio label="true">鏄�</el-radio> + <el-radio label="false">鍚�</el-radio> </el-radio-group> </el-form-item> </el-form> @@ -208,10 +203,11 @@ :thisSceneTableData="thisSceneTableData" :visible.sync="isShowformulaEdit" @updateFormulaContent="updataFormlaContent" + :componentRuleText="componentRuleText" ></formula-editor> <!-- 鏂板 --> <el-dialog :visible.sync="addVisible" append-to-body title="浠庝笟鍔$被鍨嬩腑閫夋嫨灞炴��"> - <avue-crud :data="businessData" :option="businessOption" @selection-change="businessSelect"> + <avue-crud ref="AddOriginPlace" :data="businessData" :option="businessOption" @selection-change="businessSelect"> <template slot="menuLeft"> <div style="display: flex;"> <el-select v-model="SelectValue" placeholder="璇烽�夋嫨" style="width: 150px !important;"> @@ -233,20 +229,24 @@ <el-button size="small" type="primary" @click="addVisible=false">鍙栨秷</el-button> </div> </el-dialog> + <!-- 鍙傜収閰嶇疆--> - <refer-config-form-dialog - ref="referConfigFormDialog" - @echoReferConfig="echoReferConfig" - ></refer-config-form-dialog> + <refer-config-dialog + :display="referConfigVisble" + @setReferConfigValue="setReferConfigValue" + :referConfigOption="referConfigOption" + ></refer-config-dialog> + </div> <el-table :data="ProData" style="width: 100%" - height="280" + height="400" @cell-click="handleCellClicks" @select="selectHandle" @selection-change="selectionChange" v-if="this.crudArrayFlag" ref="referAttrCrud" + v-loading="loading" > <el-table-column type="selection" @@ -269,12 +269,12 @@ @blur="saveRows"></el-input> <el-input-number size="small" controls-position="right" v-if="editingRows === row && editShows== item.prop && item.edit == 'number'" v-model="row[item.prop]" @blur="saveRows" :style="{width:(item.width-10)+'px'}"></el-input-number> - <el-select v-model="row[item.prop]" filterable allow-create default-first-option slot="prepend" v-if="editingRows === row && editShows== item.prop && item.edit == 'select' " @focus="DataChangeHandler(item.editConfig,index)"> + <el-select v-model="row[item.prop]" filterable allow-create default-first-option slot="prepend" v-if="editingRows === row && editShows== item.prop && item.edit == 'select' " @blur="selectChangeHandler(item.editConfig,index)"> <el-option v-for="optionItem in item.data" - :key="optionItem.key" - :label="optionItem.value" - :value="optionItem.key"> + :key="optionItem.dictValue" + :label="optionItem.dictValue" + :value="optionItem.dictValue"> </el-option> </el-select> <el-switch @@ -292,7 +292,7 @@ <el-button size="small" type="text" - @click.native.prevent="CrudRowDel(scope.row)"> + @click.native.prevent="CrudRowDel(scope.$index)"> 绉婚櫎 </el-button> </template> @@ -303,6 +303,7 @@ <script> import {AttrByBtm, gridCodeClassifyTemplateAttr, batchAddSave, copyto,listByFlag} from '@/api/template/templateAttr' +import {getList} from "@/api/refer/table"; export default { name: "attrCrud .vue", @@ -313,6 +314,14 @@ crudOid: { type: String, default: '' + }, + checkStatus:{ + type: Boolean, + default: false + }, + crudLCStatus: { + type: String, + default: 'Editing' }, crudArray: { type: Array, @@ -346,10 +355,46 @@ }, deep:true, immediate:true - } + }, + 'injectOption.classifyInvokeAttr': function(newVal) { + console.log('newVal',newVal) + if (newVal === "name") { + this.injectOption.classifyInvokeAttrName='鍒嗙被鍚嶇О' + } else if (newVal === "id") { + this.injectOption.classifyInvokeAttrName='鍒嗙被浠e彿' + } + return ''; + }, + ProData: { + handler(newVal, oldVal) { + if(this.initializing){ + newVal.forEach((item) => { + item.classifyInvokeText = { + "娉ㄥ叆绫诲瀷": item.classifyInvokeAttr, + "娉ㄥ叆绫诲瀷鍚嶇О": item.classifyInvokeAttrName, + "灞傜骇璁剧疆": item.classifyInvokeLevel, + "鏄惁鍙慨鏀�": item.classifyInvokeEditFlag + }; + }); + } + this.ProData=newVal; + this.initializing = false; + console.log('ProData',this.ProData) + }, + deep: true, + immediate:true + }, }, data() { return { + initializing:false, + loading:false, + referConfigText:"", + referConfigVisble:false, + referConfigOption:{ + referConfig:'', + }, + screenWidth: document.documentElement.clientWidth, // 灞忓箷瀹藉害 //褰撳墠鍗曞厓鏍� CurrentCell:'', // 鏂板 @@ -371,6 +416,7 @@ editingRows: null, editShows:"", attrFlag: false, + referObject:{}, //缂栫爜鐢宠棰勮option applicationoption: { column: [] @@ -772,16 +818,18 @@ addvisible: false, //鍒嗙被娉ㄥ叆option injectOption: { - type: "鍒嗙被鍚嶇О", - set: "鏈�灏忓眰", - change: "鏄�", + classifyInvokeAttrName:'鍒嗙被鍚嶇О', + classifyInvokeAttr: "name", + classifyInvokeEditFlag: "true", + classifyInvokeLevel:'min', //鍒嗙被娉ㄥ叆璁℃暟鍣� - injectNum: 0, + classifyNumber:0, }, // 灞炴�ч獙璇佽緭鍏ユ RulesForm: { expressionText: "", - TestContent: "" + TestContent: "", + ruleRowBds:"" }, //灞炴�ч獙璇佽鍒欓厤缃� rulesOption: { @@ -1204,15 +1252,9 @@ }, { label: "鍒嗙被娉ㄥ叆", - prop: "classifyInvokeLevelName", + prop: "classifyInvokeText", cell: false, edit: 'refer' - }, - { - label: "鍒嗙被娉ㄥ叆", - prop: "classifyInvokeLevel", - cell: false, - edit: 'referName', }, { label: "鏋氫妇娉ㄥ叆", @@ -1322,6 +1364,9 @@ }, //鏃堕棿鏍煎紡涓嬫媺妗� codeDataFlag:false, + // 缁勫悎瑙勫崟鍏冩牸缂栬緫鍥炲~ + componentRuleText:"", + } }, computed:{ @@ -1338,12 +1383,16 @@ oids.push(ele.oid); }); return oids.join(","); - } + }, }, mounted() { }, created() { - + this.option.column.forEach((item,index) => { + if (item.edit == 'select') { + this.selectChangeHandler(item.editConfig,index) + } + }) }, methods: { formAttr(row, column) { @@ -1370,31 +1419,39 @@ //鍙傜収閰嶇疆瀛愮粍浠� echoReferConfig(val){ console.log('val--',val) + this.referObject=val this.$set(this.CurrentCell,'referConfig',JSON.stringify(val)) }, - //鏃堕棿涓嬫媺鏍煎紡 - DataChangeHandler(editConfig,index){ + //鍙緭鍙�変笅鎷� + selectChangeHandler(editConfig,index){ + let that=this; + /*if(that.option.column[index].data && that.option.column[index].data.length>=0){ + return; + }*/ listByFlag(editConfig.extraParams).then(res=>{ - console.log(res); - this.option.column[index].data=res; + that.option.column[index].data=res.data.data; }) }, //灞炴�у垎缁勬寜閽� attrVisibleHandle() { - if (this.attrSelectList.length > 1) { - this.$message.warning('鍙兘閫夋嫨涓�鏉℃ā鏉垮睘鎬�') - } else if (this.attrSelectList < 1) { - this.$message.warning('璇烽�夋嫨涓�鏉℃ā鏉垮睘鎬�') - } else if (this.attrSelectList.length === 1) { + if (this.attrSelectList < 1) { + this.$message.warning('璇烽�夋嫨妯℃澘灞炴��') + } else { this.attrVisible = true; + console.log(this.attrSelectList) } }, //灞炴�у垎缁勬彁浜� attrHandle() { - this.$set(this.attrRow, 'attributeGroup', JSON.stringify(this.attrModel)) - this.attrModel = "" - this.attrVisible = false + console.log(this.attrSelectList) + // this.$set(this.attrRow, 'attributeGroup', this.attrModel) + // this.attrSelectList.attributeGroup=this.attrModel + this.attrSelectList.forEach(item=>{ + item.attributeGroup=this.attrModel + }) + this.attrModel = ""; + this.attrVisible = false; }, //灞炴�у垎缁勬竻绌� attrRemove() { @@ -1404,7 +1461,12 @@ CrudRend() { if (this.crudOid != '') { gridCodeClassifyTemplateAttr({'conditionMap[classifyTemplateOid]': this.crudOid}).then(res => { - this.ProData = res.data.data; + this.loading=true + setTimeout(() => { + this.ProData = res.data.data; + this.loading=false + }, 1000); + }).catch(res => { this.$message.error(res) }) @@ -1429,7 +1491,7 @@ citem.oid = '' this.busineAddList=Object.assign(citem, { orderNum: ++ordernum, - attributedatatype: citem.attrDataType, + attributeDataType: citem.attrDataType, attributeDataTypeText: this.vciFieldTypeMap[citem.attrDataType], controlLength: citem.attributeLength, valueArea: citem.range, @@ -1445,7 +1507,8 @@ sortAttrFlag: 'false', queryAttrFlag: 'true', seniorQueryAttrFlag: 'true', - attrTableWidth: 120 + attrTableWidth: 120, + ts:"" }) this.ProData.push(JSON.parse(JSON.stringify(this.busineAddList))) } @@ -1455,7 +1518,8 @@ }, //涓氬姟绫诲瀷閫夋嫨 businessSelect(selection, row) { - this.busineSelectList = selection + this.busineSelectList = selection; + console.log(selection) }, // 浠庝笟鍔$被鍨嬩腑閫夋嫨鏁版嵁寮圭獥 busineHandle() { @@ -1482,7 +1546,6 @@ 'conditionMap[classifyTemplateOid]': this.Formlist[0].oid, 'conditionMap[oid_notequal]': this.attrOid }).then(res => { - console.log(res) this.CascadeData = res.data.data; }) } @@ -1491,7 +1554,11 @@ CascadeAddHandle() { let CascadeString = ""; CascadeString = this.selectRowArr.id + (this.selectRowArr.name); - this.$set(this.attrRow, 'parentCode', CascadeString) + if(this.CurrentCell){ + this.$set(this.CurrentCell, 'parentCode', CascadeString) + }else { + this.$set(this.attrSelectList[0], 'parentCode', CascadeString) + } this.CascadeVisible = false; }, //绾ц仈灞炴�ф竻闄� @@ -1516,6 +1583,7 @@ //琛ㄦ牸閫夋嫨 selectionChange(list) { this.attrSelectList = list; + console.log(list) }, //淇濆瓨 addsHandler() { @@ -1529,24 +1597,50 @@ this.editingRows = row; this.editShows = column.property; this.rowOid = row.oid; - console.log(row,column) this.CurrentCell=row; if(column.property == 'referConfig' ){ - this.$refs.referConfigFormDialog.isShowReferConfigForm = true; - this.$refs.referConfigFormDialog.onloadAttrData(); - }else if(column.property == 'classifyInvokeLevelName'){ + this.referConfigVisble= true; + this.referConfigOption = { + referConfig: this.referConfigText || '', + } + if(this.CurrentCell.referConfig == ''){ + this.referConfigOption = { + referConfig:'', + } + } + console.log('--',this.referConfigOption) + // this.$refs.referConfigFormDialog.onloadAttrData(); + }else if(column.property == 'classifyInvokeText'){ this.injectVisible=true; }else if(column.property == 'componentRule'){ + if(this.CurrentCell){ + this.CurrentCell.componentRule=this.componentRuleText; + } this.isShowformulaEdit = true; }else if(column.property == 'enumString'){ this.enumVisible=true; + if(this.attrSelectList[0].enumString != ""){ + this.tableData=JSON.parse(this.attrSelectList[0].enumString) + return + } }else if(column.property == 'parentCode'){ + gridCodeClassifyTemplateAttr({ + 'conditionMap[classifyTemplateOid]': this.Formlist[0].oid, + 'conditionMap[oid_notequal]': this.CurrentCell.oid + }).then(res => { + console.log(res) + this.CascadeData = res.data.data; + }) this.CascadeVisible=true; + }else if(column.property == 'verifyRule'){ + this.RulesForm.expressionTextt=this.CurrentCell.verifyRule; + this.rulesVisible=true; + console.log(this.CurrentCell.verifyRule) + console.log(this.RulesForm.expressionText) } }, saveRows() { this.editingRows = null; - console.log('1321') }, // 鏋氫妇娉ㄥ叆娣诲姞涓�琛岀┖鏁版嵁 addRow() { @@ -1572,7 +1666,20 @@ this.$message.warning('璇烽�夋嫨涓�鏉℃ā鏉垮睘鎬�') } else if (this.attrSelectList.length === 1) { this.enumVisible = true; + if(this.attrSelectList[0].enumString != ""){ + this.tableData=JSON.parse(this.attrSelectList[0].enumString) + return + } + } + }, + enumBeforeClose(done){ + this.tableData=[] + done() + }, + enumCancell(){ + this.tableData=[] + this.enumVisible=false; }, //鏋氫妇娉ㄥ叆澶氶�夋 handleSelectionChange(row) { @@ -1580,14 +1687,26 @@ }, //鏋氫妇娉ㄥ叆淇濆瓨 enumAddHandle() { - if (this.enumRow.length < 1) { - this.$message.warning('璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�') - } else { - if(this.CurrentCell){ - this.$set(this.CurrentCell, 'enumString', JSON.stringify(this.enumRow)); + let hasError = false; // 娣诲姞涓�涓彉閲� + this.tableData.forEach((item, index) => { + if (item.key === '') { + this.$message.warning(`绗�${index + 1}琛岀殑閫夐」鍊间笉鑳戒负绌篳); + hasError = true; + return; + } else if (item.value === '') { + this.$message.warning(`绗�${index + 1}琛岀殑閫夐」涓枃鏍囩涓嶈兘涓虹┖`); + hasError = true; + return; + } + }); + // 淇濆瓨鎵ц閫昏緫 + if (!hasError) { + if (this.CurrentCell) { + this.$set(this.CurrentCell, 'enumString', JSON.stringify(this.tableData)); this.enumVisible = false; - }else { - this.$set(this.attrRow, 'enumString', JSON.stringify(this.enumRow)); + } else { + this.$set(this.attrSelectList[0], 'enumString', JSON.stringify(this.tableData)); + this.tableData=[]; this.enumVisible = false; } } @@ -1596,8 +1715,18 @@ saveRow() { this.editingRow = null; }, + //楠岃瘉瑙勫垯鎸夐挳 + ruleAddHandler(){ + if (this.attrSelectList < 1) { + this.$message.warning('璇烽�夋嫨妯℃澘灞炴��') + } else{ + this.rulesVisible=true + } + + }, //瑙勫垯鏍¢獙锛屽弻鍑昏〃鍗曚簨浠� handleRulesRowDBLClick(row) { + this.ruleRowBds=row.bds this.RulesForm.expressionText = row.bds }, // 楠岃瘉瑙勫垯娓呴櫎鍐呭 @@ -1607,11 +1736,21 @@ }, // 楠岃瘉瑙勫垯纭畾 rulesHandle() { + if(this.CurrentCell){ + this.$set(this.CurrentCell,'verifyRule',this.RulesForm.expressionText) + }else { + this.attrSelectList.forEach((item)=>{ + this.$set(item,'verifyRule',this.RulesForm.expressionText) + }) + this.rulesremove() + } this.rulesVisible = false }, //楠岃瘉瑙勫垯妫�鏌� rulesExamine() { - if (this.RulesForm.expressionText.test(this.RulesForm.TestContent)) { + console.log(this.RulesForm.expressionText) + const regex = new RegExp(this.rulesData.ruleRowBds); + if(regex.test(this.RulesForm.TestContent)){ this.$message.success('鏍¢獙鎴愬姛') } }, @@ -1622,32 +1761,58 @@ } else if (this.attrSelectList.length < 1) { this.$message.warning('璇烽�夋嫨涓�鏉℃ā鏉挎暟鎹�') } else if (this.attrSelectList.length === 1) { - this.injectVisible = true + console.log(this.injectOption) + this.injectVisible = true; } }, //鍒嗙被娉ㄥ叆淇濆瓨 injectAddHandle() { + // 瀹氫箟灞曠ず绫诲瀷 let data = { - "娉ㄥ叆绫诲瀷": this.injectOption.type, - "娉ㄥ叆绫诲瀷鍚嶇О": this.injectOption.set, - "灞傜骇璁剧疆": this.injectOption.injectNum, - "鏄惁鍙慨鏀�": this.injectOption.change + "娉ㄥ叆绫诲瀷": this.injectOption.classifyInvokeAttr, + "娉ㄥ叆绫诲瀷鍚嶇О": this.injectOption.classifyInvokeAttrName, + "灞傜骇璁剧疆": this.injectOption.classifyInvokeLevel=='max'?this.injectOption.classifyNumber :'min', + "鏄惁鍙慨鏀�": this.injectOption.classifyInvokeEditFlag } + //鍗曞厓鏍肩紪杈戣祴鍊间竴閬� if(this.CurrentCell){ - this.$set(this.CurrentCell, "classifyInvokeLevelName", data); - this.$set(this.CurrentCell, "classifyInvokeLevel", JSON.stringify(this.injectOption)); + //濡傛灉鏄寚瀹氬眰璧嬪�间负鏁板瓧 + if(this.CurrentCell.classifyInvokeLevel!== 'min'){ + this.CurrentCell.classifyInvokeLevel=this.injectOption.classifyNumber + } + //鍏朵綑姝e父璧嬪�� + this.CurrentCell.classifyInvokeAttr=this.injectOption.classifyInvokeAttr, + this.CurrentCell.classifyInvokeAttrName=this.injectOption.classifyInvokeAttrName, + this.CurrentCell.classifyInvokeEditFlag=this.injectOption.classifyInvokeEditFlag, + this.$set(this.CurrentCell, "classifyInvokeText", data); + this.injectHandleReset() }else { - this.$set(this.attrRow, 'classifyInvokeLevelName', data); - this.$set(this.attrRow, 'classifyInvokeLevel', JSON.stringify(this.injectOption)); + //鍕鹃�夋搷浣� + for (const key in this.injectOption) { + this.attrSelectList[0][key] = this.injectOption[key]; + //濡傛灉鏄寚瀹氬眰璧嬪�间负鏁板瓧 + if(this.injectOption.classifyInvokeLevel !== 'min'){ + this.attrSelectList[0].classifyInvokeLevel=this.injectOption.classifyNumber + } + this.$set(this.attrSelectList[0],'classifyInvokeText',data) + } + this.injectHandleReset() } - this.injectVisible = false + if(this.injectOption.classifyInvokeLevel !== 'min'){ + this.injectOption.classifyInvokeLevel=this.injectOption.classifyNumber; + }else { + this.injectOption.classifyNumber=0; + } + this.injectVisible = false; + }, //鍒嗙被娉ㄥ叆娓呯┖ injectHandleReset() { - this.injectOption.type = ""; - this.injectOption.set = ""; - this.injectOption.change = ""; - this.injectOption.injectNum = ""; + this.injectOption.classifyInvokeAttrName = "鍒嗙被鍚嶇О"; + this.injectOption.classifyInvokeAttr = "name"; + this.injectOption.classifyInvokeLevel = "min"; + this.injectOption.classifyInvokeEditFlag = "true"; + this.injectOption.classifyNumber = "0"; }, // 鍒嗙被娉ㄥ叆鍙栨秷 injectRemove() { @@ -1655,13 +1820,14 @@ }, //灞炴�фā鏉胯〃鏍煎崟鍏冩牸鐐瑰嚮浜嬩欢 //琛ㄦ牸鎿嶄綔鏍忓垹闄� - CrudRowDel(row) { - this.ProData.splice(row.$index, 1) + CrudRowDel(index) { + this.ProData.splice(index, 1) }, //琛ㄦ牸鍒犻櫎 CrudRemove() { this.attrSelectList.forEach((item)=>{ - this.ProData.splice(item.$index, 1) + const index = this.ProData.indexOf(item); + this.ProData.splice(index, 1) }) }, //琛ㄦ牸閲嶇疆 @@ -1712,11 +1878,20 @@ //缁勫悎瑙勫垯纭畾 updataFormlaContent(val) { if(this.CurrentCell){ - this.$set(this.CurrentCell, 'componentRule', JSON.stringify(val)) + this.$set(this.CurrentCell, 'componentRule', val.replace(/"/g, '')) }else { - this.$set(this.attrRow, 'componentRule', JSON.stringify(val)) + this.$set(this.attrRow, 'componentRule', val.replace(/"/g, '')) } + }, + setReferConfigValue(content){ + let submitFormJson = JSON.stringify(content); + this.referConfigText=submitFormJson + if(this.CurrentCell){ + this.$set(this.CurrentCell, 'referConfig', JSON.stringify(content)) + }else { + this.$set(this.attrRow, 'referConfig', JSON.stringify(content)) + } }, // 鎺掑簭 sortChange(val) { @@ -1737,7 +1912,9 @@ </script> <style scoped lang="scss" > -/deep/ .el-button { - margin: 0 10px 10px 0; +.app { + /deep/ .el-button { + margin: 0 10px 10px 0; + } } </style> -- Gitblit v1.9.3