| | |
| | | <template> |
| | | <div class="product-tree-container"> |
| | | <el-input |
| | | placeholder="输入名称进行过滤" |
| | | style="width: 60%" |
| | | v-model="filterText" |
| | | size="small" |
| | | clearable |
| | | ></el-input> |
| | | <el-button type="primary" @click="add()" style="margin: 10px 0 0 10px;padding: 9px 18px !important;">新增</el-button> |
| | | <!-- <el-input |
| | | placeholder="输入名称进行过滤" |
| | | style="width: 60%" |
| | | v-model="filterText" |
| | | size="small" |
| | | clearable |
| | | ></el-input>--> |
| | | <el-button v-if="isShow" type="primary" @click="add()" |
| | | style="margin: 10px 0 0 10px;padding: 9px 18px !important;">新增型号 |
| | | </el-button> |
| | | <el-divider></el-divider> |
| | | <el-tree |
| | | style="height: 90%;overflow: auto" |
| | |
| | | :data="productList" |
| | | :props="defaultProps" |
| | | default-expand-all |
| | | node-key="id" |
| | | :current-node-key="defaultId" |
| | | :expand-on-click-node="false" |
| | | :highlight-current="true" |
| | | @node-click="handleNodeClick" |
| | |
| | | type: Boolean, |
| | | default: true |
| | | }, |
| | | isShow: { |
| | | type: Boolean, |
| | | default: true |
| | | }, |
| | | basic: { |
| | | type: Number, |
| | | default: 1 |
| | | }, |
| | | productId: { |
| | | type: Number, |
| | | default: null |
| | | }, |
| | | }, |
| | | |
| | | data() { |
| | | return { |
| | | filterText: '', |
| | | productList: [], |
| | | defaultId: '', |
| | | defaultProps: { |
| | | children: 'children', |
| | | label: 'name' |
| | |
| | | AddOrUpdate |
| | | } |
| | | , |
| | | mounted() { |
| | | this.getProductList() |
| | | } |
| | | , |
| | | /* mounted() { |
| | | this.getProductList() |
| | | },*/ |
| | | methods: { |
| | | // 获取系统列表 |
| | | async getProductList() { |
| | | let params = { |
| | | showXdy:this.showXdy |
| | | showXdy: this.showXdy, |
| | | ztShow: this.basic, |
| | | productId: this.productId |
| | | } |
| | | let res = await this.$http.get('/basicInfo/XhProductModel/tree',{params:params}) |
| | | let res = await this.$http.get('/basicInfo/XhProductModel/tree', {params: params}) |
| | | this.productList = res.data |
| | | if (this.basic === 3) { |
| | | if (this.productList && this.productList[0].children) { |
| | | this.defaultId = this.productList[0].children[0].id |
| | | this.$nextTick(() => { |
| | | this.$refs.tree.setCurrentKey(this.defaultId); //一定要加这个选中了否则样式没有出来 |
| | | }); |
| | | this.$emit('on-default', this.defaultId) |
| | | } |
| | | } else{ |
| | | if (this.productList[0].id) { |
| | | this.defaultId = this.productList[0].id |
| | | this.$nextTick(() => { |
| | | this.$refs.tree.setCurrentKey(this.defaultId); //一定要加这个选中了否则样式没有出来 |
| | | }); |
| | | this.$emit('on-default', this.defaultId) |
| | | } |
| | | } |
| | | console.log(res.data, 'async getProductList()') |
| | | } |
| | | , |
| | | }, |
| | | add() { |
| | | this.$refs.AddOrUpdate.$refs.dialog.init(null, {id: null, type: 'tree'}) |
| | | } |
| | | , |
| | | this.$refs.AddOrUpdate.$refs.dialog.init(null, {id: null, type: 'xh'}) |
| | | }, |
| | | filterNode(value, data) { |
| | | if (!value) return true |
| | | return data.name.indexOf(value) !== -1 |
| | | } |
| | | , |
| | | }, |
| | | handleNodeClick(data) { |
| | | this.$emit('on-selected', data) |
| | | } |
| | | }, |
| | | } |
| | | } |
| | | </script> |