Fixiaobai
2023-09-15 c7ccbc6510a9350e0a0a5a39a84f46c382d080b3
src/components/view/Technicalindex.vue
@@ -94,7 +94,10 @@
            <!-- 主体右 -->
            <div class="right">
               <el-table :data="tableData" style="width: 100%;overflow-y: auto;min-height: 100%"
                  max-height="100%" row-key="name" border @selection-change="handleSelectionChange"
                  max-height="100%" row-key="name" border
                  @select="selectTr"
                  ref="multipleTable"
                  @selection-change="handleSelectionChange"
                  default-expand-all :tree-props="{children: 'children', hasChildren: 'hasChildren'}">
                  <el-table-column type="selection" width="55">
                  </el-table-column>
@@ -219,7 +222,7 @@
                        <el-col :span="11" :offset="2">
                           <el-form-item label="工艺">
                              <template>
                                 <el-select v-model="form.name" placeholder="请选择" allow-create filterable>
                                 <el-select v-model="form.name" placeholder="请选择" @change="craftrow" allow-create filterable>
                                    <el-option v-for="item in craftapi" :key="item.id" :label="item.name" :value="item.id">
                                    </el-option>
                                 </el-select>
@@ -281,51 +284,93 @@
   export default {
      data() {
         return {
            search: {
               type: 0,
               technology: null,
            },
            //   handleClose:[],
            checkTreeNode: {
               id: '',
            },
            higherlevel: [],
            value: {},
            options: [],
            process: [],
            filterNode: [],
            list: [],
            form: {
               father: '',
               work: '',
               name: '',
               unit: '',
               project: '',
            },
            children: [],
            modifyevent: false,
            dialogVisible: false,
            tableData: [],
            typeselect: 0,
            upData: {},
            upDia: false,
            craftapi: [],
            edit: {
               techFather: '',
               techName: '',
               father: '',
               name: '',
               unit: '',
               id: ''
            }
         }
      },
      mounted() {
              search:{
                type:0,
                technology:null,
              },
            //   handleClose:[],
                checkTreeNode :{
                    id:'',
                },
                higherlevel:[],
                value:{},
                options:[],
                process:[],
                filterNode:[],
                list: [],
                form:{
                    father:'',
                    work:'',
                    name:'',
                    unit:'',
                    project:'',
                },
                children:[],
                modifyevent:false,
                dialogVisible:false,
                tableData: [],
            crafval:'',
                typeselect:0,
                upData:{},
                upDia:false,
                craftapi:[],
                edit:{
                    techFather:'',
                    techName:'',
                    father:'',
                    name:'',
                    unit:'',
                    id:'',
                },
                isAllSelect:false,
            }
        },
        mounted() {
         this.selectAllleft()
         this.selectAllright()
      },
      methods: {
         handleClose() {
        methods:{
              // 表格树全部选中配置
                // 全选/取消选操作
                selectAll(val) {
                    this.isAllSelect = !this.isAllSelect;
                    let data = this.tableData;
                    this.toggleSelect(data, this.isAllSelect, "all");
                },
             //选择某行
          selectTr(selection, row) {
                console.log(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") {
                    console.log('222');
                    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);
                        });
                    }
                }
            },
            handleClose(){
         },
         selectDataList() {
@@ -372,7 +417,8 @@
                  "Content-Type": "application/json"
               }
            }).then(res => {
               this.selectAllright()
               /* this.selectAllright() */
                 this.$parent.removeAllTab()
            })
         },
         submitUpData() { //确定
@@ -385,8 +431,9 @@
            this.$axios.post(this.$api.url.delTechBy, {
               id: this.upData.id
            }).then(res => {
               this.selectAllright()
               /* this.selectAllright() */
               this.$message.success('删除完成')
               this.$parent.removeAllTab()
            })
         },
         deleteRow(index, rows) {
@@ -400,7 +447,8 @@
            this.$axios.post(this.$api.url.delAllTechskill, {
               ids: this.delete
            }).then(res => {
               this.selectAllright()
               /* this.selectAllright() */
               this.$parent.removeAllTab()
            })
         },
         dels() {
@@ -415,6 +463,7 @@
            let cc = this.selects.map(el => {
               return el.id
            })
            cc.splice(0,1)
            this.delete = cc.join(',')
            console.log(this.delete);
            this.delAllTechskill()
@@ -474,6 +523,7 @@
               })[0]
               console.log(one);
               let name = one.children[0].id
               this.checkTreeNode.id = name
               console.log(name);
               this.selectAllrightStart(name)
               this.selectDataList();
@@ -505,12 +555,16 @@
               console.log(this.tableData);
            });
         },
         craftrow(val){
            this.crafval = val
            this.chooseProFath()
         },
         //上级
         chooseProFath() {
            console.log(this.checkTreeNode.id);
            this.$axios.get(this.$api.url.chooseProFath, {
               params: {
                  techTemId: this.checkTreeNode.id
                  techTemId:this.crafval
               }
            }).then(res => {
               this.higherlevel = res.data;
@@ -555,12 +609,15 @@
         modify() {
            this.modifyevent = true
         },
         // deleteRow(index, rows) {
         // console.log();
         // rows.splice(index, 1);
         // },
         handleSelectionChange(val) {
            this.selects = val;
            this.deleteList = [];
                val.forEach((v) => {
                if (v.id !== undefined) {
                    this.deleteList.push(v.id);
                }
                });
         },
         //编辑
@@ -693,4 +750,4 @@
      height: 30px;
      border-radius: 2px;
   }
</style>
</style>