From 49a5757c36d73524c74bc27fcecf486368d80311 Mon Sep 17 00:00:00 2001 From: 王震 <10952869+daywangzhen@user.noreply.gitee.com> Date: 星期二, 12 九月 2023 09:08:22 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- src/components/view/standard-table/technology.vue | 144 ++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 115 insertions(+), 29 deletions(-) diff --git a/src/components/view/standard-table/technology.vue b/src/components/view/standard-table/technology.vue index 835a583..cffdb58 100644 --- a/src/components/view/standard-table/technology.vue +++ b/src/components/view/standard-table/technology.vue @@ -1,46 +1,57 @@ <template> <div class="standard"> <div> - <el-table :data="tableData" style="width: 100%;margin-bottom: 20px;" row-key="name" border + <el-table :data="tableData" max-height="675" row-key="rowId" border + @select-all="selectAll" @select="selectTr" ref="multipleTable" + :header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'left'}" @selection-change="handleSelectionChange" default-expand-all :tree-props="{ children: 'children', hasChildren: 'hasChildren' }"> <el-table-column type="selection" width="55"> </el-table-column> - <el-table-column type="index" width="50" label="搴忓彿"> + <el-table-column type="index" width="60" label="搴忓彿"> </el-table-column> <el-table-column prop="father" label="宸ュ簭" sortable width="200px"> <template slot-scope="scope"> - <el-tag v-if="scope.row.children" :type="scope.row.children ? 'primary' : 'success'"> - <div class="firstDiv" :style="{ color: scope.row.children ? '#16a7ff' : '#58c173' }"> - 01 - </div> - </el-tag> + <el-tag v-if="scope.row.children" type="primary">01</el-tag> <span style="color: black"> {{ scope.row.father }} </span> </template> </el-table-column> - <el-table-column prop="name" sortable label="宸ヨ壓鍚嶇О"> + <el-table-column sortable label="宸ヨ壓鍚嶇О"> <template slot-scope="scope"> - <el-tag v-if="!scope.row.children"> - <div class="firstDiv" :style="`color: ${scope.row.children? '#16a7ff' : '#58c173'}`"> - 02 - </div> - </el-tag> - <span style="color: black"> - {{ scope.row.name }} - </span> - </template> + <el-tag type="success" v-if="!scope.row.children">02</el-tag> + <span style="color: black">{{ scope.row.name }}</span> + </template> </el-table-column> <el-table-column prop="dg" label="璁惧缁�"> + <template slot-scope="scope"> + <div class="showDiv"> + <span>{{scope.row.dg}}</span> + <div @click="showDialog">閫夋嫨</div> + </div> + </template> </el-table-column> - <el-table-column prop="pq" label="鐢熶骇瀹氶"> - </el-table-column> - <el-table-column prop="" label="鎿嶄綔"> - <el-butten style="color: rgb(137, 137, 229);">缂栬緫</el-butten> + <el-table-column prop="pq" label="鐢熶骇瀹氶(涓�/澶�)"> + <template slot-scope="scope"> + <el-input v-model="scope.row.pq" + v-if="scope.row.pq != null" + @blur="updatePq(scope.row)" + ></el-input> + </template> </el-table-column> </el-table> </div> + <el-dialog + title="閫夋嫨璁惧缁�" + :visible.sync="deviceGroupDialog" + width="30%"> + <span>杩欐槸涓�娈典俊鎭�</span> + <span slot="footer" class="dialog-footer"> + <el-button type="primary" @click="deviceGroupDialog = false">纭� 瀹�</el-button> + <el-button @click="deviceGroupDialog = false">鍙� 娑�</el-button> + </span> + </el-dialog> </div> </template> @@ -48,20 +59,77 @@ export default { data() { return { - selects: [] + deviceGroupDialog:false, + selects: [], + isAllSelect:false, } }, props:['tableData','tableType'], created() { - console.log(this.tableData,this.tableType) + console.log(this.tableData) }, mounted() { }, methods: { + // 琛ㄦ牸鏍戝叏閮ㄩ�変腑閰嶇疆 + // 鍏ㄩ��/鍙栨秷閫夋搷浣� + selectAll(val) { + this.isAllSelect = !this.isAllSelect; + let data = this.tableData; + this.toggleSelect(data, this.isAllSelect, "all"); + }, + //閫夋嫨鏌愯 + selectTr(selection, row) { + this.$set(row, "isChecked", !row.isChecked); + this.$nextTick(() => { + this.isAllSelect = row.isChecked; + this.toggleSelect(row, row.isChecked, "tr"); + }); + }, + //閫掑綊瀛愮骇 + toggleSelect(data, flag, type) { + if (type === "all") { + if (data.length > 0) { + data.forEach((item) => { + this.toggleSelection(item, flag); + if (item.children && item.children.length > 0) { + this.toggleSelect(item.children, flag, type); + } + }); + } + } else { + if (data.children && data.children.length > 0) { + data.children.forEach((item) => { + item.isChecked = !item.isChecked; + this.$refs.multipleTable.toggleRowSelection(item, flag); + this.toggleSelect(item, flag, type); + }); + } + } + }, handleSelectionChange(val) { - this.selects = val; - } + this.deleteList = []; + val.forEach((v) => { + if (v.id !== undefined) { + this.deleteList.push(v.id); + } + }); + }, + // 琛ㄦ牸鏍戝叏閮ㄩ�変腑閰嶇疆 缁撴潫 + showDialog(){ + this.deviceGroupDialog = true + }, + updatePq(row){ + this.$axios.post(this.$api.url.technologyWrite,{ + id : row.id, + productionQuota : row.pq + }).then(res=>{ + this.$message.success(res.message); + }).catch(error=>{ + this.$message.error(error.message); + }) + }, } } </script> @@ -70,6 +138,24 @@ .standard { width: 100%; height: 100%; + } + .standard .showDiv{ + cursor: pointer; + } + .standard .showDiv div{ + color:#407ab9; + display: none; + } + .showDiv span{ + cursor: pointer; + display: block; + width: 100%; + } + .showDiv:hover span{ + display: none; + } + .showDiv:hover div{ + display: block; } </style> <style> @@ -98,13 +184,13 @@ overflow: auto; } - .standard .el-table__body-wrapper { + /* .standard .el-table__body-wrapper { height: 100%; - } + } */ - .standard .el-table__body { + /* .standard .el-table__body { height: 100%; - } + } */ .standard .el-table .el-table__row:not([class*="el-table__row--level-"]) td:nth-child(3){ padding-left: 23px !important; } -- Gitblit v1.9.3