|
|
@@ -3,27 +3,39 @@
|
|
|
<el-button type="primary" size="small" @click="dialogFormVisible=true" >设置分类</el-button>
|
|
|
<el-dialog append-to-body title="设置分类" :visible.sync="dialogFormVisible" width="900px">
|
|
|
<div class="drawer__panel" >
|
|
|
- <el-tree
|
|
|
+ <el-table
|
|
|
+ :data="classList"
|
|
|
+ stripe
|
|
|
+ row-key="itemclassid"
|
|
|
+ size="small"
|
|
|
+ :tree-props="{children: 'children', hasChildren: 'hasChildren'}">
|
|
|
+ <el-table-column>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ prop="itemclassname"
|
|
|
+ label="分类名称">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ label="操作"
|
|
|
+ width="50">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-button type="text" size="mini" v-if="scope.row.disabled" @click="onSubmit(scope.row)">添 加</el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ <!-- <el-tree
|
|
|
ref="tree"
|
|
|
:data="classList"
|
|
|
show-checkbox
|
|
|
node-key="itemclassid"
|
|
|
:default-expand-all="true"
|
|
|
:default-checked-keys="data.checkArr">
|
|
|
- </el-tree>
|
|
|
- <!-- <selectTable v-if="dialogFormVisible" idName="itemclassid" ref="table" v-model="result" :layout="tablecols" :data="tableList" :custom="true">
|
|
|
- <template v-slot:customcol="scope">
|
|
|
- <div v-if="scope.column.columnname == 'amount'">
|
|
|
- <el-input :disabled="!isEdit(scope.column.data)" v-model="scope.column.data.amount" size="small"></el-input>
|
|
|
- </div>
|
|
|
- <div v-else>{{scope.column.data[scope.column.columnname]}}</div>
|
|
|
- </template>
|
|
|
- </selectTable> -->
|
|
|
+ </el-tree> -->
|
|
|
</div>
|
|
|
- <div slot="footer" class="dialog-footer">
|
|
|
+ <!-- <div slot="footer" class="dialog-footer">
|
|
|
<el-button size="small" @click="dialogFormVisible=false" class="normal-btn-width">取 消</el-button>
|
|
|
<el-button size="small" type="primary" @click="onSubmit" class="normal-btn-width">确 定</el-button>
|
|
|
- </div>
|
|
|
+ </div> -->
|
|
|
</el-dialog>
|
|
|
</div>
|
|
|
</template>
|
|
|
@@ -44,33 +56,42 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
methods:{
|
|
|
- async onSubmit () {
|
|
|
- // let arr = this.$refs.table.allArr.map(item => item.itemclassid)
|
|
|
- // if (!arr) return this.$message({
|
|
|
- // title:'提示',
|
|
|
- // message:'请选择分类',
|
|
|
- // type:'warning'
|
|
|
- // })
|
|
|
- let arr = this.$refs.tree.getCheckedNodes().map(item => item.itemclassid)
|
|
|
+ // async onSubmit () {
|
|
|
+ // let arr = this.$refs.tree.getCheckedNodes().map(item => item.itemclassid)
|
|
|
+ // let res = await this.$api.requested({
|
|
|
+ // "id": 20220927090102,
|
|
|
+ // "content": {
|
|
|
+ // "itemclassids":arr,
|
|
|
+ // "itemid": this.data.data.itemid,
|
|
|
+ // "itemno":this.data.data.itemno
|
|
|
+ // },
|
|
|
+ // })
|
|
|
+ // this.tool.showMessage(res,() => {
|
|
|
+ // this.$emit('onSuccess')
|
|
|
+ // this.dialogFormVisible = false
|
|
|
+ // })
|
|
|
+ // },
|
|
|
+ async onSubmit (data) {
|
|
|
let res = await this.$api.requested({
|
|
|
"id": 20220927090102,
|
|
|
"content": {
|
|
|
- "itemclassids":arr,
|
|
|
+ "itemclassids":[data.itemclassid],
|
|
|
"itemid": this.data.data.itemid,
|
|
|
"itemno":this.data.data.itemno
|
|
|
},
|
|
|
})
|
|
|
this.tool.showMessage(res,() => {
|
|
|
this.$emit('onSuccess')
|
|
|
- this.dialogFormVisible = false
|
|
|
+ this.getClassList()
|
|
|
})
|
|
|
},
|
|
|
async getClassList () {
|
|
|
let res = await this.$api.requested({
|
|
|
- "id": "20220922110403",
|
|
|
+ "id": "20230325141103",
|
|
|
"version":1,
|
|
|
"content": {
|
|
|
"sa_brandid":0,
|
|
|
+ "itemid": this.$route.query.id,
|
|
|
"where": {
|
|
|
istool: this.data.istool ? 1 : 0
|
|
|
}
|
|
|
@@ -81,49 +102,43 @@ export default {
|
|
|
return {
|
|
|
itemclassname:item.brandname,
|
|
|
itemclassid:index + 1,
|
|
|
- disabled:true,
|
|
|
- subdep: item.ttemclass
|
|
|
+ subdep: item.ttemclass,
|
|
|
}
|
|
|
})
|
|
|
this.classList = this.createDeep(res.data)
|
|
|
- // this.tableList = this.compileTable(res.data)
|
|
|
- },
|
|
|
- compileTable (data) {
|
|
|
- let arr = []
|
|
|
- function deep (brand,ttemclass) {
|
|
|
- console.log(brand);
|
|
|
- let arr2 = []
|
|
|
- for (let index = 0; index < ttemclass.subdep.length; index++) {
|
|
|
- let obj = {
|
|
|
- brandname:brand.itemclassname,
|
|
|
- sa_brandid:brand.itemclassid,
|
|
|
- itemclassname2:ttemclass.itemclassname,
|
|
|
- itemclassid2:ttemclass.itemclassid,
|
|
|
- itemclassname:ttemclass.subdep[index].itemclassname,
|
|
|
- itemclassfullname:ttemclass.subdep[index].itemclassfullname,
|
|
|
- itemclassid:ttemclass.subdep[index].itemclassid,
|
|
|
- itemclassnum:ttemclass.subdep[index].itemclassnum,
|
|
|
- }
|
|
|
- arr2.push(obj)
|
|
|
- }
|
|
|
- return arr2
|
|
|
- }
|
|
|
- for (let i = 0; i< data.length; i++) {
|
|
|
- console.log(data[i]);
|
|
|
- for (let j = 0; j < data[i].subdep.length; j++) {
|
|
|
- arr.push(...deep(data[i],data[i].subdep[j]))
|
|
|
- }
|
|
|
- }
|
|
|
- return arr
|
|
|
+ console.log(this.classList);
|
|
|
},
|
|
|
+ // createDeep (data) {
|
|
|
+ // let arr = []
|
|
|
+ // function createNodes (node) {
|
|
|
+ // let elNode = {
|
|
|
+ // label:node.itemclassname,
|
|
|
+ // itemclassid:node.itemclassid,
|
|
|
+ // disabled:node.disabled ? true : false,
|
|
|
+ // children:[]
|
|
|
+ // }
|
|
|
+ // if (node.subdep && node.subdep.length > 0) {
|
|
|
+ // for (let index = 0; index < node.subdep.length; index++) {
|
|
|
+ // elNode.children.push(createNodes(node.subdep[index]))
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+ // return elNode
|
|
|
+ // }
|
|
|
+
|
|
|
+ // data.forEach(item => {
|
|
|
+ // this.disabledId.push(item.itemclassid)
|
|
|
+ // arr.push(createNodes(item))
|
|
|
+ // })
|
|
|
+ // return arr
|
|
|
+ // },
|
|
|
createDeep (data) {
|
|
|
let arr = []
|
|
|
- function createNodes (node) {
|
|
|
+ function createNodes (node,first) {
|
|
|
let elNode = {
|
|
|
- label:node.itemclassname,
|
|
|
+ itemclassname:node.itemclassfullname ? node.itemclassfullname : node.itemclassname,
|
|
|
itemclassid:node.itemclassid,
|
|
|
- disabled:node.disabled ? true : false,
|
|
|
- children:[]
|
|
|
+ children:[],
|
|
|
+ disabled:first ? false : true
|
|
|
}
|
|
|
if (node.subdep && node.subdep.length > 0) {
|
|
|
for (let index = 0; index < node.subdep.length; index++) {
|
|
|
@@ -135,7 +150,7 @@ export default {
|
|
|
|
|
|
data.forEach(item => {
|
|
|
this.disabledId.push(item.itemclassid)
|
|
|
- arr.push(createNodes(item))
|
|
|
+ arr.push(createNodes(item,true))
|
|
|
})
|
|
|
return arr
|
|
|
},
|