“dzb”
2022-10-09 2bb0e066fdc522beb51dd13f6a72cd67bd5d6a58
src/views/operate/baseSetting/violation/createUser/index.vue
@@ -11,38 +11,22 @@
                    <el-form-item class="optionItem" label="新增名称:" prop="name">
                        <el-input v-model="things.name" placeholder="请输入新增名称"></el-input>
                    </el-form-item>
                    <!-- 所属类型 -->
                    <el-form-item class="optionItems" label="所属类型:" prop="typeThird">
                        <el-select v-model="things.typeThird" placeholder="请选择所属类型" >
                            <el-option v-for="item in typeThirdList" :key="item.id" :label="item.name"
                    <!-- 请选择级别 -->
                    <el-form-item class="optionItem" label="级别:" prop="level">
                        <el-select v-model="things.level" placeholder="请选择所属类型" @change="resetParentList">
                            <el-option v-for="item in levelList" :key="item.value" :label="item.label"
                                :value="item.value">
                            </el-option>
                        </el-select>
                    </el-form-item>
                    <!-- 父级id -->
                    <el-form-item class="optionItem" label="父级:" prop="parentId">
                        <el-select v-model="things.parentId" placeholder="请选择所属类型" >
                            <el-option v-for="item in parentList" :key="item.id" :label="item.name"
                                :value="item.id">
                            </el-option>
                        </el-select>
                    </el-form-item>
                    <!-- 所属大类 -->
                    <el-form-item class="optionItem" label="所属大类:" prop="typeSecond">
                        <el-select v-model="things.typeSecond" placeholder="请选择所属类型" >
                            <el-option v-for="item in typeSecondList" :key="item.id" :label="item.name"
                                :value="item.id">
                            </el-option>
                        </el-select>
                    </el-form-item>
                    <!-- 请输入新增等级 -->
                    <el-form-item class="optionItem" label="案件等级:" prop="level">
                        <el-select v-model="things.level" placeholder="请选择所属类型" >
                            <el-option v-for="item in eventLevelList" :key="item.id" :label="item.name"
                                :value="item.id">
                            </el-option>
                        </el-select>
                    </el-form-item>
                    <!-- 所属小类 -->
                    <!-- <el-form-item class="optionItem" label="所属小类:" prop="typeFirst">
                        <el-select v-model="things.typeFirst" placeholder="请选择所属类型" disabled>
                            <el-option v-for="item in typeFirstList" :key="item.id" :label="item.name"
                                :value="item.id">
                            </el-option>
                        </el-select>
                    </el-form-item> -->
                    <!-- 案由 -->
                    <el-form-item class="optionItem" label="案由:" prop="type">
                        <el-input type="textarea" autosize v-model="things.type" placeholder="请输入案由描述内容"></el-input>
@@ -75,14 +59,17 @@
                callback(new Error('新增违规等级不能为空'));
            }
        }
        // const checkId = (rule,value,callback)=>{
        //     if(value){
        //         callback();
        //     }else{
        //         callback(new Error('新增违规等级不能为空'));
        //     }
        // }
        return {
            things: {
                // number: 0,
                // type: '',
                name:'',
                typeFirst: '',
                typeSecond: '',
                typeThird: '',
                parentId:'',
                level:'',
            },
            createThings:{
@@ -95,21 +82,35 @@
                    {
                        required:true,trigger:'change',validator:checkLevel
                    }
                ]
                ],
                // parentId:[
                //     {
                //         required:true,trigger:'change',validator:checkId
                //     }
                // ]
            },
            roleList: [],
            typeThirdList:[],
            typeSecondList:[],
            // typeFirstList:[],
            eventLevelList:[]
            levelList:[
                {
                    label:"违规中类型",
                    value:1,
                },
                {
                    label:"大类",
                    value:2,
                },
                {
                    label:"小类",
                    value:3,
                },
                {
                    label:"案由",
                    value:4,
                },
            ],
            parentList:[],
        }
    },
    created() {
        // 获取所属类型列表
        this.getTypeThird();
        this.getTypeSecond();
        // this.getTypeFirst();
        this.getEventLevel();
    },
    methods: {
        // 查询所属类型
@@ -119,7 +120,7 @@
                url: "sccg/violations/query/type_first",
            })
                .then(res => {
                    this.typeThirdList = res.data;
                    this.parentList = res.data;
                })
        },
        // 查询所属大类
@@ -129,36 +130,84 @@
                url: "sccg/violations/query/type_second",
            })
                .then(res => {
                    this.typeSecondList = res.data;
                    this.parentList = res.data;
                })
        },
        // 查询所属小类
        // getTypeFirst(){
        //     this.$axios({
        //         method: 'get',
        //         url: "sccg/violations/query/type_third",
        //     })
        //         .then(res => {
        //             this.typeFirstList = res.data;
        //         })
        // },
        // 获取案件等级列表
        getTypeFirst(){
            this.$axios({
                method: 'get',
                url: "sccg/violations/query/type_third",
            })
                .then(res => {
                    this.parentList = res.data;
                })
        },
        // 查询所属案由
        getEventLevel() {
            this.$axios({
                method: 'get',
                url: 'sccg/violations/query/event_type'
                url: 'sccg/violations/query/type_four'
            })
                .then(res => {
                    console.log(res);
                    this.eventLevelList = res.data;
                })
                    this.parentList = res.data;
                })
        },
        // 提交新增违规类型
        handleSubmit(){
            console.log(this.things);
            this.$refs.user.validate((valid)=>{
                console.log(valid);
                if(valid){
                    const {things} = this;
                    this.$axios({
                        method:'post',
                        url:'sccg/violations/addition/type',
                        data:{
                            code:'1111',
                            level:things.parentId === '' ? things.level : things.level+1,
                            name:things.name,
                            parentId:things.parentId=== '' ? 0 : things.parentId,
                            typeCode:'01',
                            typeName:'问题类型',
                            remark:things.type,
                        }
                    })
                    .then(res=>{
                        console.log(res);
                        if(res.code === 200){
                            this.$message({
                                type:'success',
                                message:'添加成功'
                            })
                            this.$emit('changeDialog',{flag:false});
                        }else{
                            this.$message({
                                type:'error',
                                message:"添加失败"
                            })
                        }
                    })
                }else{
                    return false;
                }
            })
        },
        // 案件级别变化
        resetParentList(index){
            if(index === 1){
                this.getTypeThird();
            }else if(index === 2){
                this.getTypeSecond();
            }else if(index === 3){
                this.getTypeFirst();
            }else{
                this.getEventLevel();
            }
        }
    },
    props: ['getUserList']
    props: ['changeDialog']
}
</script>
<style lang="scss" scoped>