zhanghua
2025-07-16 7c20fd15b7fbc2bd5756b39d5ab655cc849ffcc3
src/views/operate/baseSetting/illegalBuild/createUser/index.vue
@@ -18,12 +18,18 @@
                    </el-form-item>
                    <!-- 父级id -->
                    <el-form-item class="optionItem" label="父级:" prop="parentId">
                        <el-select v-model="things.parentId" placeholder="请选择所属父级" :disabled="things.level===1">
                        <el-select ref="projectApplicant" v-model="things.parentId" placeholder="请选择所属父级" :disabled="things.level===1">
                            <!-- <el-option v-for="item in parentList" :key="item.id" :label="item.name" :value="item.id">
                            </el-option> -->
                            <el-option :value="mylabel">
                                <el-tree ref="tree" :check-strictly="true"  :data="parentList" :props="defaultProps" show-checkbox
                                    @check-change="handleCheck" default-expand-all node-key="id">
                                <el-tree ref="tree" :check-strictly="true"
                                         :data="parentList"
                                         :props="defaultProps"
                                         :show-checkbox="false"
                                         @check-change="handleCheck"
                                         @node-click="handleCheck"
                                         default-expand-all
                                         node-key="id">
                                </el-tree>
                            </el-option>
                        </el-select>
@@ -67,7 +73,6 @@
                parentId:'',
                level:'',
            },
            parentList: [],
            createIll: {
                name: [
                    { required: true, trigger: 'blur', validator: checkName }
@@ -80,7 +85,7 @@
            },
            levelList: [
                {
                    label: "违建中类型",
                    label: "违建类型",
                    value: 1,
                },
                {
@@ -128,9 +133,7 @@
        },
        // 提交新增违规类型
        handleSubmit() {
            console.log(this.things);
            this.$refs.user.validate((valid) => {
                console.log(valid);
                if (valid) {
                    const { things,selectOrg } = this;
                    this.$axios({
@@ -147,7 +150,6 @@
                        }
                    })
                        .then(res => {
                            console.log(res);
                            if (res.code === 200) {
                                this.$message({
                                    type: 'success',
@@ -167,54 +169,49 @@
            })
        },
        // 案件级别变化
        async resetParentList(index) {
            if (index === 1) {
            }else{
                this.parentList = await this.getTypeThird()
                // this.parentList = this.addChildren(await this.getTypeThird(), await this.getTypeSecond());
            }
        },
        // addChildren(parentArr, childArr) {
        //     // console.log(parentArr.length,childArr);
        //     parentArr.forEach(item => {
        //         item.children = [];
        //         childArr.forEach(child => {
        //             if (item.id === child.parentId) {
        //                 item.children.push(child);
        //             }
        //         })
        //     })
        //     console.log(parentArr);
        //     return parentArr;
        // },
         async resetParentList(index) {
           if (index === 1) {
           } else {
             this.parentList = await this.getTypeThird()
           }
         },
        handleCheck(data, checked) {
          //只能点击最后一级
          if(checked.childNodes.length == 0){
            this.things.parentId = data.name;
            console.log(this.selectOrg.orgsid);
            // 获取当前选择的id在数组中的索引
            const indexs = this.selectOrg.orgsid.indexOf(data.id)
            // 如果不存在数组中,并且数组中已经有一个id并且checked为true的时候,代表不能再次选择。
            if (indexs < 0 && this.selectOrg.orgsid.length === 1 && checked) {
                this.$message({
                    message: '只能选择一个区域!',
                    type: 'warning',
                    showClose: true
                })
                // 设置已选择的节点为false 很重要
                this.$refs.tree.setChecked(data, false)
            } else if (this.selectOrg.orgsid.length === 0 && checked) {
                // 发现数组为空 并且是已选择
                // 防止数组有值,首先清空,再push
                this.selectOrg.orgsid = []
                this.selectOrg.orgsid.push(data.id)
            } else if (
                indexs >= 0 &&
                this.selectOrg.orgsid.length === 1 &&
                !checked
            ) {
                // 再次直接进行赋值为空操作
                this.selectOrg.orgsid = []
            }
            let _this = this;
            _this.$refs.projectApplicant.blur();
            this.selectOrg.orgsid = []
            this.selectOrg.orgsid.push(data.id)
          }else {
            return
          }
            // this.things.parentId = data.name;
            // // 获取当前选择的id在数组中的索引
            // const indexs = this.selectOrg.orgsid.indexOf(data.id)
            // // 如果不存在数组中,并且数组中已经有一个id并且checked为true的时候,代表不能再次选择。
            // if (indexs < 0 && this.selectOrg.orgsid.length === 1 && checked) {
            //     this.$message({
            //         message: '只能选择一个区域!',
            //         type: 'warning',
            //         showClose: true
            //     })
            //     // 设置已选择的节点为false 很重要
            //     this.$refs.tree.setChecked(data, false)
            // } else if (this.selectOrg.orgsid.length === 0 && checked) {
            //     // 发现数组为空 并且是已选择
            //     // 防止数组有值,首先清空,再push
            //     this.selectOrg.orgsid = []
            //     this.selectOrg.orgsid.push(data.id)
            // } else if (
            //     indexs >= 0 &&
            //     this.selectOrg.orgsid.length === 1 &&
            //     !checked
            // ) {
            //     // 再次直接进行赋值为空操作
            //     this.selectOrg.orgsid = []
            // }
        },
    },
    props: ['changeDialog']
@@ -223,13 +220,12 @@
<style lang="scss" scoped>
.createUser {
    border-radius: 1px;
    background-color: #09152f;
    background-color: #fff;
    main {
        // border: 1px solid #fff;
        text-align: left;
        padding: 0 55px;
        background-color: #09152f;
        background-color: #fff;
        padding-bottom: 50px;
        .mainContent {
@@ -270,18 +266,18 @@
        }
    }
    &::v-deep .el-textarea__inner {
        background-color: #09152f;
        border: 1px solid #17324c;
    }
    // &::v-deep .el-textarea__inner {
    //     // background-color: #09152f;
    //     border: 1px solid #17324c;
    // }
    ::v-deep .el-form-item__label {
        color: #4b9bb7;
    }
    // ::v-deep .el-form-item__label {
    //     color: #4b9bb7;
    // }
    ::v-deep .el-input__inner {
        background-color: #09152f;
        border: 1px solid #17324c;
    }
    // ::v-deep .el-input__inner {
    //     // background-color: #09152f;
    //     border: 1px solid #17324c;
    // }
}
</style>
</style>