Your Name
2022-09-26 df06d5adebeedb5edca6264450671792ccbd9d4e
src/views/system/department/component/deptDialog.vue
@@ -4,18 +4,30 @@
            <el-form :model="departmentForm" size="default" label-width="90px">
                <el-row :gutter="35">
                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                        <el-form-item label="部门等级">
                            <el-select v-model="departmentForm.depLevel" placeholder="请输入部门等级" class="input-add" clearable>
                                <el-option
                                v-for="item in depLevelList"
                                :key="item.id"
                                :label="item.name"
                                :value="item.id"
                                ></el-option>
                            </el-select>
                        </el-form-item>
                    </el-col>
                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                        <el-form-item label="上级部门">
                            <el-cascader :options="deptData" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" placeholder="请选择部门" clearable class="w100" v-model="departmentForm.parentDepId"> </el-cascader>
                            <el-cascader :options="deptData" class="input-add" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" placeholder="请选择部门" clearable v-model="departmentForm.parentDepId"> </el-cascader>
                        </el-form-item>
                    </el-col>
                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                        <el-form-item label="部门名称">
                            <el-input v-model="departmentForm.depName" placeholder="请输入部门名称" clearable></el-input>
                            <el-input v-model="departmentForm.depName" class="input-add" placeholder="请输入部门名称" clearable></el-input>
                        </el-form-item>
                    </el-col>
                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                        <el-form-item label="部门描述">
                            <el-input v-model="departmentForm.depInfo" type="textarea" placeholder="请输入部门描述" maxlength="150"></el-input>
                            <el-input v-model="departmentForm.depInfo" class="input-add" type="textarea" placeholder="请输入部门描述" maxlength="150"></el-input>
                        </el-form-item>
                    </el-col>
                </el-row>
@@ -49,8 +61,14 @@
        depName: string;
        depInfo: string;
        parentDepId: string;
        depLevel:null | number
    };
    deptData: Array<TableDataRow>;
    depLevelList: Array<Type>;
}
interface Type{
    id:number;
    name:string
}
export default defineComponent({
@@ -62,10 +80,18 @@
            departmentForm: {
                depName: '',
                parentDepId: '',
                depInfo: ''
                depInfo: '',
                depLevel:null,
            },
            deptData: [] // 部门数据
            deptData: [], // 部门数据
            depLevelList: [
                {id:1,name:'公司'},
                {id:2,name:'事业部'},
                {id:3,name:'车间'},
                {id:4,name:'班组'}
            ] // 部门数据
        });
        // 打开弹窗
        const openDialog = (type: string, value: any, departmentList: []) => {
            state.isShowDialog = true;
@@ -75,6 +101,7 @@
                state.departmentForm = {
                    depName: '',
                    parentDepId: '',
                    depLevel:null,
                    depInfo: ''
                };
            } else {