From 3bd55592b33a86c8b0dce21a9e8ea6126b9c2d94 Mon Sep 17 00:00:00 2001 From: zxl <763096477@qq.com> Date: 星期五, 21 三月 2025 10:36:44 +0800 Subject: [PATCH] Merge branch 'dev' --- src/views/projectEngineering/projectLibrary/index.vue | 70 +++-- src/views/projectEngineering/projectLibrary/component/legalPerson.vue | 5 src/components/VisibilityToolbar/index.vue | 10 src/views/components/Map/index.vue | 23 - src/api/codingRuler/codingRuler.js | 68 +++++ src/views/codingRuler/index.vue | 485 ++++++++++++++++++++++++++++++++++++++++ 6 files changed, 608 insertions(+), 53 deletions(-) diff --git a/src/api/codingRuler/codingRuler.js b/src/api/codingRuler/codingRuler.js new file mode 100644 index 0000000..1833bfe --- /dev/null +++ b/src/api/codingRuler/codingRuler.js @@ -0,0 +1,68 @@ +import request from '@/utils/request' + +// 鑾峰彇鍒嗛〉 +export const getCodingRulers = (params) => { + return request({ + url: "/coding-ruler/page", + method: "GET", + params: params + }) +} + +// 鑾峰彇鍒楄〃 +export const getCodingRulerList = () => { + return request({ + url: "/coding-ruler/list", + method: "GET" + }) +} + +// 閫氳繃id鑾峰彇 +export const getCodingRulerById = (params) => { + return request({ + url: "/coding-ruler/" + params, + method: "GET" + }) +} + +// 閫氳繃id鍒犻櫎 +export const deleteCodingRulerById = (params) => { + return request({ + url: "/coding-ruler/" + params, + method: "DELETE" + }) +} + +// 鎵归噺鍒犻櫎 +export const deleteCodingRulerByIds = (params) => { + return request({ + url: "/coding-ruler/batch", + method: "DELETE", + data: params + }) +} + +// 淇敼 +export const editCodingRuler = (params) => { + return request({ + url: "/coding-ruler/", + method: "PUT", + data: params + }) +} + +// 娣诲姞 +export const addCodingRuler = (params) => { + return request({ + url: "/coding-ruler/", + method: "POST", + data: params + }) +} +// 閫氳繃id淇敼鍚姩鐘舵�� +export const changeCodingRulerStatus = (params) =>{ + return request({ + url:'/coding-ruler/change/' + params, + method: "GET", + }) +} diff --git a/src/components/VisibilityToolbar/index.vue b/src/components/VisibilityToolbar/index.vue index 9471870..9f875e7 100644 --- a/src/components/VisibilityToolbar/index.vue +++ b/src/components/VisibilityToolbar/index.vue @@ -23,10 +23,10 @@ <span>淇℃伅鏄鹃殣绛涢��</span> </div> <div slot="default" style="margin-left: 20px;margin-top: 20px"> - <el-table :data="getPage" style="width: 95%; height: 80%;;margin-bottom: 40px;"> + <el-table :row-key="row => { return row.id }" :data="getPage" style="width: 95%; height: 80%;;margin-bottom: 40px;" > <el-table-column prop="index" label="搴忓彿" width="80"></el-table-column> <el-table-column prop="label" label="鏁版嵁鍚嶇О"></el-table-column> - <el-table-column prop="visible" label="鏄惁鏄剧ず"> + <el-table-column prop="visible" label="鏄惁鏄剧ず" > <template slot-scope="scope"> <el-switch v-model="scope.row.visible" @@ -37,9 +37,10 @@ ></el-switch> </template> </el-table-column> - <el-table-column prop="date" label="鎺掑簭"> + <el-table-column prop="sort" label="鎺掑簭"> <template slot-scope="scope"> - <el-input-number v-model="scope.row.sort" :min="0" style="width: 120px" @change="sortChange(scope.row, $event)"></el-input-number> + <el-input-number v-model="scope.row.sort" :min="0" style="width: 120px" + @change="sortChange(scope.row, $event)"></el-input-number> </template> </el-table-column> </el-table> @@ -148,6 +149,7 @@ this.saveList.push(row) } } + console this.$emit('update:columns', row); }, handlePageChange(page) { diff --git a/src/views/codingRuler/index.vue b/src/views/codingRuler/index.vue new file mode 100644 index 0000000..c207652 --- /dev/null +++ b/src/views/codingRuler/index.vue @@ -0,0 +1,485 @@ +<template> + <div class="app-container"> + <div v-loading="loading"> + <div class="slot"> + <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="75px"> + <el-form-item label="椤圭洰鐮佺被鍨�" prop="projectCodeType"> + <el-select v-model="queryParams.projectCodeType" placeholder="椤圭洰鐮佺被鍨�" @change="handleQuery"> + <el-option + v-for="dict in dict.type.coding_type" + :key="dict.value" + :value="dict.value" + :label="dict.label" + > + </el-option> + </el-select> + + </el-form-item> + <el-form-item label="鍖洪棿绫诲瀷" prop="intervalType"> + <el-select v-model="queryParams.intervalType" placeholder="鍖洪棿绫诲瀷" @change="handleQuery"> + <el-option + v-for="dict in dict.type.interval_type" + :key="dict.value" + :value="dict.value" + :label="dict.label" + > + </el-option> + </el-select> + </el-form-item> + <el-form-item> + <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button> + <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button> + </el-form-item> + </el-form> + <div class="right-section"> + <div class="add-btn"> + <el-tooltip content="鏂板" effect="dark" placement="top"> + <el-button :disabled="!isReserve" circle icon="el-icon-plus" @click="add()" size="small"/> + </el-tooltip> + </div> + </div> + </div> + <el-table + :data="tableData" + row-key="id" + border + @selection-change="handleSelectionChange"> + <el-table-column + type="selection" + width="55"> + </el-table-column> + <el-table-column + + prop="projectCodeType" + label="椤圭洰鐮佺被鍨�" + > + <template slot-scope="scope"> + <dict-tag :options="dict.type.coding_type" :value="scope.row.projectCodeType"/> + </template> + </el-table-column> + <el-table-column + prop="intervalType" + label="鍖洪棿绫诲瀷" + > + <template slot-scope="scope"> + <dict-tag :options="dict.type.interval_type" :value="scope.row.intervalType"/> + </template> + </el-table-column> + <el-table-column + prop="leftSymbol" + label="宸︾鍙�" + > + <template slot-scope="scope"> + <dict-tag :options="dict.type.sys_coding_operator" :value="scope.row.leftSymbol"/> + </template> + </el-table-column> + <el-table-column + prop="leftValue" + label="宸﹀��" + > + </el-table-column> + <el-table-column + prop="rightSymbol" + label="鍙崇鍙�" + > + <template slot-scope="scope"> + <dict-tag :options="dict.type.sys_coding_operator" :value="scope.row.rightSymbol"/> + </template> + </el-table-column> + <el-table-column + prop="rightValue" + label="鍙冲��" + > + </el-table-column> + <el-table-column + prop="status" + label="鐘舵��" + > + <template slot-scope="scope"> + <el-tag :type="scope.row.status === 0 ? 'info' : 'success'"> + {{scope.row.status === 0 ? "鏈惎鐢�" : "鍚敤"}} + </el-tag> + </template> + </el-table-column> + <el-table-column + label="鎿嶄綔" min-width="100"> + <template slot-scope="scope"> + <el-button v-if="editShow" size="medium" type="text" + @click="changeStatus(scope.row)"> + {{scope.row.status === 0 ? "鍚敤" : "鍋滅敤"}} + </el-button> + + <el-button v-if="editShow" size="medium" type="text" + @click="editCodingRuler(scope.row)" + :disabled="scope.row.status === 1" + >缂栬緫</el-button> + + <el-button v-if="delShow" size="medium" + type="text" + @click="deleteCodingRuler(scope.row)" + :disabled="scope.row.status === 1" + >鍒犻櫎</el-button> + </template> + </el-table-column> + </el-table> + <pagination + v-show="total>0" + :total="total" + :page.sync="queryParams.currentPage" + :limit.sync="queryParams.pageSize" + @pagination="getList" + /> + <el-dialog width="45%" :title="dialogTitle" @close="closeDialog" :visible.sync="open" :show-close="true" :close-on-click-modal="true" :destroy-on-close="true"> + <el-form :model="codingRulerForm" :rules="rules" ref="codingRulerForm"> + <el-form-item label="椤圭洰鐮佺被鍨�" :label-width="formLabelWidth" prop="projectCodeType"> + <el-select v-model="codingRulerForm.projectCodeType" placeholder="椤圭洰鐮佺被鍨�" @change="changeOption($event)"> + <el-option + v-for="dict in dict.type.coding_type" + :key="dict.value" + :value="dict.value" + :label="dict.label" + > + </el-option> + </el-select> + </el-form-item> + <el-form-item label="鍖洪棿绫诲瀷" :label-width="formLabelWidth" prop="intervalType"> + <el-select v-model="codingRulerForm.intervalType" placeholder="鍖洪棿绫诲瀷" @change="changeOption($event)"> + <el-option + v-for="dict in dict.type.interval_type" + :key="dict.value" + :value="dict.value" + :label="dict.label" + > + </el-option> + </el-select> + </el-form-item> + <el-row> + <el-col :span="12"> + <el-form-item label="宸︾鍙�" :label-width="formLabelWidth" prop="leftSymbol" > + <el-select v-model="codingRulerForm.leftSymbol" placeholder="閫夋嫨绗﹀彿" @change="changeOption($event)"> + <el-option + v-for="dict in leftOption" + :key="dict.value" + :value="dict.value" + :label="dict.label.replace('澶т簬', '>') + .replace('灏忎簬', '<') + .replace('澶х瓑浜�', '>=') + .replace('绛変簬', '=') + .replace('灏忎簬绛変簬', '<=')" + > + </el-option> + </el-select> + + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="宸﹀��" :label-width="formLabelWidth" prop="leftValue"> + <el-input v-model="codingRulerForm.leftValue" autocomplete="off" type="number" :min="0"></el-input> + </el-form-item> + </el-col> + </el-row> + </el-form> + <el-form :model="singleForm" :rules="rules2" ref="singleForm" v-show="isSingleInterval"> + <el-row> + <el-col :span="12"> + <el-form-item label="鍙崇鍙�" :label-width="formLabelWidth" prop="rightSymbol" > + <el-select v-model="singleForm.rightSymbol" placeholder="閫夋嫨绗﹀彿" @change="changeOption($event)"> + <el-option + v-for="dict in rightOption" + :key="dict.value" + :value="dict.value" + :label="dict.label.replace('澶т簬', '>') + .replace('灏忎簬', '<') + .replace('澶х瓑浜�', '>=') + .replace('绛変簬', '=') + .replace('灏忎簬绛変簬', '<=')" + > + </el-option> + </el-select> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="鍙冲��" :label-width="formLabelWidth" prop="rightValue"> + <el-input v-model="singleForm.rightValue" autocomplete="off" type="number" :min="0"></el-input> + </el-form-item> + </el-col> + </el-row> + + </el-form> + + <div slot="footer" class="dialog-footer"> + <el-button @click="closeDialog">鍙� 娑�</el-button> + <el-button type="primary" @click="addOrEditCodingRuler">纭� 瀹�</el-button> + </div> + </el-dialog> + </div> + </div> +</template> + +<script> +import { + addCodingRuler, + changeCodingRulerStatus, + deleteCodingRulerById, + editCodingRuler, + getCodingRulers +} from '@/api/codingRuler/codingRuler.js' + +export default { + dicts: ['sys_coding_operator','coding_type','interval_type'], + name: "CodingRulerDialog", + data() { + return { + rules2:{ + rightSymbol:[{ required: true, message: '璇疯緭鍏ュ彸绗﹀彿', trigger: 'blur' }], + rightValue:[{ required: true, message: '璇疯緭鍏ュ彸鍊�', trigger: 'blur' }], + }, + rules:{ + projectCodeType: [{ required: true, message: '璇疯緭鍏ラ」鐩爜绫诲瀷', trigger: 'blur' }], + intervalType: [{ required: true, message: '璇疯緭鍏ュ尯闂寸被鍨�', trigger: 'blur' }], + leftSymbol: [{ required: true, message: '璇疯緭鍏ュ乏绗﹀彿', trigger: 'blur' }], + leftValue: [{ required: true, message: '璇疯緭鍏ュ乏鍊�', trigger: 'blur' }], + }, + // 鏄惁涓哄崟鍖洪棿 + isSingleInterval:false, + // 寮瑰嚭妗嗘爣棰� + dialogTitle:"", + //鏄惁鏂板鏉′欢 + isReserve: true, + // 鑳藉惁淇敼鏉′欢 + editShow:true, + // 鑳藉惁鍒犻櫎鏉′欢 + delShow:true, + // 鎬绘潯鏁� + total:0, + // 琛ㄦ牸鍐呭 + tableData:[], + // 鏄惁寮�鍚悳绱㈡潯浠� + showSearch:true, + queryParams:{ + intervalType:'', + currentPage: 1, + pageSize: 10, + projectCodeType:'', + }, + formLabelWidth: '120px', + // 琛ㄥ崟鍙傛暟 + codingRulerForm:{ + projectCodeType:'', + intervalType:'', + leftSymbol:'', + leftValue:'', + + }, + singleForm:{ + rightSymbol:'', + rightValue:'', + }, + // 鏄惁鏄剧ず寮瑰嚭灞� + open: false, + // 閫変腑鏁扮粍 + ids: [], + loading:false, + } + }, + computed:{ + leftOption(){ + if (this.codingRulerForm.intervalType === null || this.codingRulerForm.intervalType === ''){ + return this.dict.type.sys_coding_operator + }else { + if (this.codingRulerForm.intervalType === 'interval'){ + return this.dict.type.sys_coding_operator.filter(item => item.value <= 2); + }else { + return this.dict.type.sys_coding_operator; + + } + } + }, + rightOption(){ + return this.dict.type.sys_coding_operator.filter(item => item.value >= 2); + } + }, + created(){ + + }, + mounted() { + // 鍒濆鍖栬〃鍗曟暟鎹� + this.getList(); + }, + watch:{ + 'codingRulerForm.intervalType'(val){ + if (val && val === 'single_interval'){ + this.isSingleInterval = false; + }else if (val === 'interval'){ + this.isSingleInterval =true; + }else { + this.isSingleInterval =false; + } + } + }, + methods: { + // 娓呴櫎楠岃瘉鏍峰紡浠ュ強鍗曞尯闂村彸绗﹀彿鐨勫�� + changeOption(e){ + if (e === 'single_interval'){ + this.singleForm.rightValue = null; + this.singleForm.rightSymbol = null; + } + }, + // 鑾峰彇琛ㄦ牸鏁版嵁 + getList(){ + this.loading = true; + getCodingRulers(this.queryParams).then(res =>{ + this.tableData = res.data; + this.total = res.total; + this.loading = false; + }) + + }, + // 淇敼 + editCodingRuler(row){ + this.open = true; + this.dialogTitle = "缂栬緫"; + // 琛ㄥ崟璧嬪�� + // 鎷疯礉 + this.codingRulerForm = {...row}; + this.singleForm = {...row}; + }, + // 鍒犻櫎 + deleteCodingRuler(row){ + this.$modal.confirm('鏄惁鍒犻櫎閫変腑缂栫爜瑙勫垯?').then(function(){ + return deleteCodingRulerById(row.id); + }).then(() =>{ + this.getList(); + this.$modal.msgSuccess("鍒犻櫎鎴愬姛"); + }).catch(() => {}); + }, + // 鏂板 + add(){ + this.open = true; + this.dialogTitle = "鏂板"; + }, + // 鍙栨秷 + closeDialog() { + this.open = false; + this.clearForm(); + }, + // 娓呯┖琛ㄥ崟 + clearForm() { + this.codingRulerForm = { + id :null, + projectCodeType:null, + intervalType:null, + leftSymbol:null, + leftValue:null, + } + this.singleForm ={ + rightSymbol:null, + rightValue:null, + } + this.resetForm("codingRulerForm"); + this.resetForm("singleForm"); + this.isSingleInterval = false; + }, + + handleSelectionChange(val) { + this.ids = val.map(item => item.id) + console.log(ids) + }, + // 鎼滅储鎸夐挳鎿嶄綔 + handleQuery() { + this.queryParams.pageNum = 1; + this.getList(); + }, + // 閲嶇疆鎼滅储 + resetQuery(){ + this.resetForm("queryForm"); + this.handleQuery(); + }, + // 鐘舵�佸垏鎹� + changeStatus(row){ + changeCodingRulerStatus(row.id).then(res =>{ + this.getList(); + this.$message.info(res.msg) + }) + }, + async addOrEditCodingRuler() { + + // 榛樿 + let intervalState = false; + + if(this.codingRulerForm.intervalType && this.codingRulerForm.intervalType === "interval"){ + // 鍖洪棿鎯呭喌 + intervalState = true; + }else { + intervalState = false; + } + if (intervalState){ + let need1 = false; + let need2 = false; + let warning = false; + await this.$refs["singleForm"].validate((valid) =>{ + if (valid){ + need1 = true; + } + }) + await this.$refs["codingRulerForm"].validate((valid) => { + if (valid) { + need2 = true; + if(this.codingRulerForm.leftValue >= this.singleForm.rightValue){ + warning = true; + } + } + }); + if (warning){ + this.$message.warning("鍙冲�煎簲璇ュぇ浜庡乏鍊�") + return + } + if (need1 && need2){ + this.addOrEdit(); + } + }else { + this.$refs["codingRulerForm"].validate((valid) => { + if (valid) { + this.addOrEdit(); + } + }); + } + }, + async addOrEdit(){ + const form = this.codingRulerForm; + form.rightSymbol = this.singleForm.rightSymbol; + form.rightValue = this.singleForm.rightValue; + if (this.dialogTitle === "鏂板") { + await addCodingRuler(form).then((res) => { + this.$message.success(res.msg); + this.open = false; + this.getList(); + }) + } else if (this.dialogTitle === "缂栬緫" && this.codingRulerForm.id){ + await editCodingRuler(form).then((res) => { + this.$message.success(res.msg); + this.open = false; + this.getList() + }) + } + this.isSingleInterval = false; + } + + + } +} +</script> + +<style scoped> +.right-section { + display: flex; + + + .add-btn { + margin: 0 10px; + } +} +.slot { + display: flex; +} +</style> diff --git a/src/views/components/Map/index.vue b/src/views/components/Map/index.vue index 2b838fd..f59eef7 100644 --- a/src/views/components/Map/index.vue +++ b/src/views/components/Map/index.vue @@ -281,17 +281,10 @@ }, showProjectStatusStr(status) { switch (status) { - case "1": - return "鍌ㄥ椤圭洰"; - case "2": - return "鍓嶆湡椤圭洰"; - case "3": - return "瀹炴柦椤圭洰"; - case "4": - return "绔e伐椤圭洰"; - case "5": - return "寮傚父椤圭洰"; - + case "pendding": + return "鏈紑宸�"; + case "working": + return "宸插紑宸�"; default: return "寮傚父椤圭洰"; } @@ -410,11 +403,11 @@ ? item.yearInvestAmount + "鍏�" : "鏆傛棤鏁版嵁", projectAddr: item.projectAddress, - projectStatus: item.usedStatus, + projectStatus: item.projectStatus, }; - + _this.makeMask(item.longitude, item.latitude, config); - + if (item.longitude && item.longitude > maxX) { maxX = item.longitude; } @@ -428,7 +421,7 @@ minY = item.latitude; } }); - + this.moveTo( (parseFloat(maxX) + parseFloat(minX)) / 2, (parseFloat(maxY) + parseFloat(minY)) / 2 diff --git a/src/views/projectEngineering/projectLibrary/component/legalPerson.vue b/src/views/projectEngineering/projectLibrary/component/legalPerson.vue index 26a9ed0..72aa0c8 100644 --- a/src/views/projectEngineering/projectLibrary/component/legalPerson.vue +++ b/src/views/projectEngineering/projectLibrary/component/legalPerson.vue @@ -246,7 +246,7 @@ } this.legalPersonForm.projectId = this.projectForm.id; - this.handleBlur(); + }, beforeDestroy() { if(Object.keys(this.legalPersonForm).length !==0) localStorage.setItem("legalPersonForm", JSON.stringify(this.legalPersonForm)); @@ -258,6 +258,7 @@ this.options.forEach(item => { if (item.id === row) { this.legalPersonForm = item; + this.legalPersonForm.id = null; } }) } @@ -265,7 +266,7 @@ }, //椤圭洰鍗曚綅杈撳叆鏃惰Е鍙� handleBlur(query){ - console.log(query) + this.legalPersonForm.projectUnit = query; if (this.legalPersonForm.projectUnit !== null && this.legalPersonForm.projectUnit !== '' && this.legalPersonForm.projectUnit !== undefined){ getUnitRegistrationInfoByName(this.legalPersonForm).then(res =>{ diff --git a/src/views/projectEngineering/projectLibrary/index.vue b/src/views/projectEngineering/projectLibrary/index.vue index 2698103..4e15aeb 100644 --- a/src/views/projectEngineering/projectLibrary/index.vue +++ b/src/views/projectEngineering/projectLibrary/index.vue @@ -205,7 +205,6 @@ <!-- 鍔ㄦ�佸垪 --> <el-table-column v-for="item in columnsNew" - :key="item.columns" v-if="item.visible" :prop="item.columns" :label="item.label" @@ -242,15 +241,21 @@ <template v-if="item.slotName === 'importanceType'"> <dict-tag :options="dict.type.sys_key_categories" :value="scope.row.importanceType"/> </template> - <!-- planStartTime --> - <template v-if="item.slotName === 'planStartTime'"> - {{ scope.row.planStartTime ? scope.row.planStartTime.split('-')[0] + '骞�' : '' }} + <!-- plannedStartDate --> + <template v-if="item.slotName === 'plannedStartDate'"> + {{ scope.row.plannedStartDate ? scope.row.plannedStartDate.split('-')[0] + '骞�' : '' }} </template> <!-- usedStatus鎻掓Ы --> <template v-if="item.slotName === 'usedStatus'"> <dict-tag :options="dict.type.sys_used_status" :value="scope.row.usedStatus"/> </template> + <!-- planStartTime --> + <template v-else-if="item.slotName === 'planStartTime'"> + {{ scope.row.planStartTime ? scope.row.planStartTime.split(' ')[0] : '' }} + </template> </template> + <!-- 杞崲璁″垝寮�宸ユ牱寮� 绌烘牸鍒囧壊鏁扮粍 --> + <!-- 榛樿鏄剧ず --> <span v-else>{{ scope.row[item.columns] }}</span> </template> @@ -442,8 +447,8 @@ //杞崲 res.data.forEach((item,index)=>{ item.index = index + 1; - item.key = index; item.label = item.name; + if(item.display === '0'){ item.visible = false }else { @@ -478,9 +483,7 @@ //杞崲 data.forEach((item,index)=>{ item.index = index + 1; - item.key = index; item.label = item.name; - // item.slotName = item.columns; if(item.display === '0'){ item.visible = false }else { @@ -540,28 +543,28 @@ localStorage.removeItem("documentsInfoForm") }, - save(){ - const list =current.map((item, index) => { - item.name = item.label; - item.sort = index + 1; - item.columns = item.id; - item.id = 0; - if(item.slotName === undefined){ - item.slotName = null; - } - if(item.visible){ - item.display = "1"; - }else { - item.display ="0"; - } - return item; - }); - console.log(list) - addList(list).then(res=>{ - console.log(res.msg) - }) - - }, + // save(){ + // const list =current.map((item, index) => { + // item.name = item.label; + // item.sort = index + 1; + // item.columns = item.id; + // item.id = 0; + // if(item.slotName === undefined){ + // item.slotName = null; + // } + // if(item.visible){ + // item.display = "1"; + // }else { + // item.display ="0"; + // } + // return item; + // }); + // console.log(list) + // addList(list).then(res=>{ + // console.log(res.msg) + // }) + // + // }, // 閲嶇疆鎺掑簭鐨勬柟娉� handleResetSort() { this.hiddenColumnsList(); @@ -579,22 +582,25 @@ }); }, + //鐐瑰嚮鎺掑簭鍔犲噺鏇存柊 handleUpdateSort(row) { //鏇挎崲琛ㄥご鍏冪礌 this.columnsNew = this.columnsNew.map(item => { - if (item.columns === row.columns) { + if (item.id === row.id) { return row; } return item; }); //鏇挎崲浼犲叆鏄鹃殣缁勪欢鏁版嵁 this.defaultColumns = this.defaultColumns.map(item => { - if (item.columns === row.columns) { + if (item.id === row.id) { return row; } return item; }); - this.defaultColumns = this.defaultColumns.sort((a, b) => a.sort - b.sort); + //鏄鹃殣鎺掑簭 + this.defaultColumns.sort((a, b) => a.sort - b.sort); + //涓婚〉琛ㄥご鏁版嵁鎺掑簭 this.columnsNew.sort((a, b) => a.sort - b.sort); //寮哄埗table娓叉煋 -- Gitblit v1.8.0