Your Name
2022-08-03 6e1be6afed910d217199278bb3f89d8922dfc5af
src/views/doublePrevent/riskCheckManage/checkTaskManage/checkWork/index.vue
@@ -41,7 +41,11 @@
                    </template>
                </el-table-column>
                <el-table-column prop="taskUnitName" label="任务单元" show-overflow-tooltip></el-table-column>
                <el-table-column prop="execUserName" label="执行人" show-overflow-tooltip></el-table-column>
                <el-table-column prop="execDepId" label="执行部门" show-overflow-tooltip>
                    <template #default="scope">
                        {{ parseNumber(scope.row.execDepId, '执行部门') }}
                    </template>
                </el-table-column>
                <el-table-column prop="checkCycle" label="排查周期" show-overflow-tooltip>
                    <template #default="scope">
                        <span>
@@ -52,13 +56,23 @@
                        </span>
                    </template>
                </el-table-column>
                <el-table-column prop="validTime" label="排查周期" show-overflow-tooltip>
                <el-table-column prop="validTime" label="有效时间" show-overflow-tooltip>
                    <template #default="scope">
                        <span>
                            {{ scope.row.validTime }}
                        </span>
                        <span>
                            {{ parseNumber(scope.row.validTimeUnit, '排查周期') }}
                        </span>
                    </template>
                </el-table-column>
                <el-table-column prop="validTime" label="提醒时间" show-overflow-tooltip>
                    <template #default="scope">
                        <span>
                            {{ scope.row.noticeTime }}
                        </span>
                        <span>
                            {{ parseNumber(scope.row.noticeTimeUnit, '排查周期') }}
                        </span>
                    </template>
                </el-table-column>
@@ -109,14 +123,15 @@
        params: {
            pageIndex: number;
            pageSize: number;
            checkWorkType: number | null;
            checkWorkStatus: number | null;
            checkWorkType: number | null | '';
            checkWorkStatus: number | null | '';
            checkWorkName: string | null;
        };
    };
    timeType: Array<levelListState>;
    taskUnitList: Array<taskUnit>;
    departmentList: Array<DepartmentState>;
    departmentRecursionList: Array<DepartmentState>;
    checkWorkTypeList: Array<levelListState>;
    checkWorkStatusList: Array<levelListState>;
}
@@ -124,7 +139,11 @@
    id: number;
    name: string;
}
interface DepartmentState {}
interface DepartmentState {
    depId: number;
    depName: string;
    children: Array<DepartmentState>;
}
interface taskUnit {
    id: number;
    taskUnitName: string;
@@ -150,14 +169,14 @@
            },
            taskUnitList: [],
            departmentList: [],
            departmentRecursionList: [],
            checkWorkTypeList: [
                { id: 1, name: '日常作业' },
                { id: 2, name: '周期作业' }
            ],
            checkWorkStatusList: [
                { id: 1, name: '开启' },
                { id: 2, name: '关闭' },
                { id: 2, name: '过期' }
                { id: 2, name: '关闭' }
            ],
            timeType: [
                { id: 1, name: '分' },
@@ -169,6 +188,8 @@
        });
        // 初始化表格数据
        const initWorkTableData = async () => {
            state.workData.params.checkWorkType = state.workData.params.checkWorkType === '' ? null : state.workData.params.checkWorkType;
            state.workData.params.checkWorkStatus = state.workData.params.checkWorkStatus === '' ? null : state.workData.params.checkWorkStatus;
            let res = await workApi().getWorkList(state.workData.params);
            if (res.data.code === '200') {
                state.workData.data = res.data.data;
@@ -186,6 +207,7 @@
            let res = await departmentApi().getDepartmentList();
            if (res.data.code === '200') {
                state.departmentList = res.data.data;
                recursion(state.departmentList);
            } else {
                ElMessage({
                    type: 'warning',
@@ -236,14 +258,57 @@
                .catch(() => {});
        };
        const parseNumber = (value: string | number, type: string) => {
        const recursion = (value: any) => {
            for (let i of value) {
                if (i.children.length !== 0) {
                    state.departmentRecursionList.push(i);
                    recursion(i.children);
                } else {
                    state.departmentRecursionList.push(i);
                }
            }
        };
        const parseNumber = (value: number, type: string) => {
            if (type === '排查类型') {
                return state.checkWorkTypeList.find((item) => item.id === value)?.name;
            } else if (type === '排查周期') {
                return state.timeType.find((item) => item.id == value)?.name;
            } else if (type === '执行部门') {
                return state.departmentRecursionList.find((item) => item.depId === value)?.depName;
                // return state.departmentList.find((item: any) => {
                //     if (item.children.length !== 0) {
                //         if (item.depId === value) {
                //             return item;
                //         } else {
                //             return recursion(item.children, value);
                //         }
                //     } else {
                //         if (item.depId === value) {
                //             return item;
                //         }
                //     }
                // })?.depName;
            }
        };
        // const recursion = (children: any, value: number | string) => {
        //     debugger;
        //     return children.find((item: any) => {
        //         if (item.children.length !== 0) {
        //             if (item.depId === value) {
        //                 return item;
        //             } else {
        //                 return recursion(item.children, value);
        //             }
        //         } else {
        //             if (item.depId === value) {
        //                 return item;
        //             }
        //         }
        //     });
        // };
        const handleSearch = () => {
            initWorkTableData();
        };