| ¶Ô±ÈÐÂÎļþ |
| | |
| | | <!-- |
| | | * @Date: 2024-05-12 20:02:31 |
| | | * @LastEditors: Sneed |
| | | * @LastEditTime: 2024-05-12 21:34:13 |
| | | * @FilePath: /belleson-frontend/Users/mache/Documents/demo/cps-web/src/views/console/tooling/Tray.vue |
| | | --> |
| | | <template> |
| | | <el-container> |
| | | <el-aside width="200px"> |
| | | <el-container> |
| | | <el-main> |
| | | <el-tree default-expand-all ref="group" node-key="id" :data="treeData" :props="{ |
| | | label: 'name', |
| | | disabled: 'isGroup' |
| | | }" @node-click="nodeClick"> |
| | | <template #default="{ node, data }"> |
| | | <span :class="data.isGroup ? 'active' : ''" class="custom-tree-node"> |
| | | <span>{{ |
| | | node.label || data.code }}</span> |
| | | </span> |
| | | </template> |
| | | </el-tree> |
| | | </el-main> |
| | | <el-footer> |
| | | <el-button>æ·»å æçç»</el-button> |
| | | </el-footer> |
| | | </el-container> |
| | | </el-aside> |
| | | <!-- <el-main> --> |
| | | <el-container v-if="selectNode.id"> |
| | | <el-header> |
| | | <el-button @click="table_add" type="primary" icon="el-icon-plus"></el-button> |
| | | <import-table style="margin:0 8px" :exportUrl="exportUrl" :uploadUrl="uploadUrl"></import-table> |
| | | <el-button type="danger" plain icon="el-icon-delete" @click="batchDel"></el-button> |
| | | <el-input v-model="params.keyWord" style="width: 240px;margin-left: auto;" placeholder="请è¾å
¥æ£ç´¢å
容" |
| | | clearable></el-input> |
| | | <el-button @click="search" type="primary" icon="el-icon-search"></el-button> |
| | | </el-header> |
| | | <el-main> |
| | | <el-row> |
| | | <el-col :span="10"> |
| | | <scTable highlight-current-row @dataChange="dataChange" @row-click="rowClick" ref="table" |
| | | :params="params" :apiObj="apiObj" @selection-change="selectionChange" stripe> |
| | | <el-table-column type="selection" width="50"></el-table-column> |
| | | <el-table-column label="æçç¼å·" prop="code" width="120"></el-table-column> |
| | | <el-table-column label="æçåç§°" prop="name" width="120"></el-table-column> |
| | | <el-table-column label="å¯ç¨ç¶æ" prop="type" width="120"></el-table-column> |
| | | <el-table-column label="æä½" fixed="right" align="right" width="160"> |
| | | <template #default="scope"> |
| | | <el-button-group> |
| | | <el-button text type="primary" size="small" |
| | | @click="table_edit(scope.row, scope.$index)">ç¼è¾</el-button> |
| | | <el-popconfirm title="ç¡®å®å é¤åï¼" @confirm="table_del([scope.row], '0')"> |
| | | <template #reference> |
| | | <el-button text type="primary" size="small">å é¤</el-button> |
| | | </template> |
| | | </el-popconfirm> |
| | | </el-button-group> |
| | | </template> |
| | | </el-table-column> |
| | | </scTable> |
| | | </el-col> |
| | | <el-col :span="14"> |
| | | <h2>æçä¿¡æ¯</h2> |
| | | <el-container> |
| | | <el-main> |
| | | <div class="tuopan-info"> |
| | | <div> |
| | | tup |
| | | </div> |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | æç颿°: {{ }} |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | æç颿°: {{ }} |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | æç颿°: {{ }} |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | æç颿°: {{ }} |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | æç颿°: {{ }} |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | æç颿°: {{ }} |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | æç颿°: {{ }} |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | æç颿°: {{ }} |
| | | </el-col> |
| | | </el-row> |
| | | </div> |
| | | |
| | | </el-main> |
| | | </el-container> |
| | | </el-col> |
| | | </el-row> |
| | | </el-main> |
| | | </el-container> |
| | | <!-- </el-main> --> |
| | | </el-container> |
| | | </template> |
| | | |
| | | <script> |
| | | import importTable from '@/layout/components/importTable.vue' |
| | | export default { |
| | | components: { |
| | | importTable |
| | | }, |
| | | data() { |
| | | return { |
| | | treeData: [], |
| | | params: { |
| | | keyword: '' |
| | | }, |
| | | info: {}, |
| | | selectNode: {}, |
| | | apiObj: { |
| | | get: async (data) => { |
| | | let params = { |
| | | ...data |
| | | } |
| | | return await this.$HTTP.get(`/api/blade-cps/tray/page/${this.selectNode.id}`, { keyword: this.params.keyword }, { params }).then(res => { |
| | | return res |
| | | }) |
| | | } |
| | | }, |
| | | } |
| | | }, |
| | | watch: { |
| | | 'selectNode.id': { |
| | | handler(val) { |
| | | if (val) { |
| | | this.queryInfo() |
| | | } else { |
| | | this.info = {} |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | created() { |
| | | this.init() |
| | | }, |
| | | methods: { |
| | | init() { |
| | | this.$HTTP.post(`/api/blade-cps/tray/tooling-tree`, { |
| | | groupCategory: 1, |
| | | groupType: "group_tray" |
| | | }).then(res => { |
| | | this.treeData = res.data |
| | | this.selectNode = res.data[0] |
| | | }) |
| | | }, |
| | | queryInfo() { |
| | | if (!this.selectNode.id) return |
| | | this.$refs?.table?.reload() |
| | | // this.$HTTP.get(`/api/blade-cps/tray/${this.selectNode.id}`).then(res => { |
| | | // this.info = res.data |
| | | // }) |
| | | // this.$HTTP.get(`/api/blade-cps/tray-surface/list/${this.selectNode.id}`).then(res => { |
| | | // this.info = res.data |
| | | // }) |
| | | }, |
| | | queryChildInfo() { |
| | | if (!this.selectNode.id) return |
| | | this.$HTTP.get(`/api/blade-cps/tray/${this.selectNode.id}`).then(res => { |
| | | this.info = res.data |
| | | }) |
| | | this.$HTTP.get(`/api/blade-cps/tray-surface/list/${this.selectNode.id}`).then(res => { |
| | | this.info = res.data |
| | | }) |
| | | }, |
| | | nodeClick(node) { |
| | | this.selectNode = node |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | .custom-tree-node.active { |
| | | color: #ccc; |
| | | } |
| | | |
| | | .empty { |
| | | justify-content: center; |
| | | } |
| | | |
| | | .tuopan-info { |
| | | display: flex; |
| | | } |
| | | </style> |