Your Name
2022-08-18 d9bb98ca91dc00e852ce2a8477c3e4957afa7183
src/views/specialWorkSystem/workFlow/approveRule/index.vue
@@ -3,27 +3,25 @@
        <div style="height: 100%">
            <el-row class="homeCard">
                <div class="basic-line">
                    <span>任务类型:</span>
                    <el-select v-model="tableData.params.workType" clearable filterable class="input-box" placeholder="任务类型">
                    <span>规则名称:</span>
                    <el-select v-model="tableData.params.searchParams.ruleName" clearable filterable class="input-box" placeholder="任务类型">
                        <el-option v-for="item in workTypeList" :key="item.id" :label="item.name" :value="item.id"></el-option>
                    </el-select>
                </div>
                <div class="basic-line">
                    <span>任务类型:</span>
                    <el-select v-model="tableData.params.workType" clearable filterable class="input-box" placeholder="任务类型">
                    <span>部门:</span>
                    <el-cascader placeholder="部门名称" :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" clearable filterable class="input-box" v-model="tableData.params.searchParams.depId"> </el-cascader>
                </div>
                <div class="basic-line">
                    <span>作业类型:</span>
                    <el-select v-model="tableData.params.searchParams.workType" clearable filterable class="input-box" placeholder="作业类型">
                        <el-option v-for="item in workTypeList" :key="item.id" :label="item.name" :value="item.id"></el-option>
                    </el-select>
                </div>
                <div class="basic-line">
                    <span>任务类型:</span>
                    <el-select v-model="tableData.params.workType" clearable filterable class="input-box" placeholder="任务类型">
                        <el-option v-for="item in workTypeList" :key="item.id" :label="item.name" :value="item.id"></el-option>
                    </el-select>
                </div>
                <div class="basic-line">
                    <span>任务类型:</span>
                    <el-select v-model="tableData.params.workType" clearable filterable class="input-box" placeholder="任务类型">
                        <el-option v-for="item in workTypeList" :key="item.id" :label="item.name" :value="item.id"></el-option>
                    <span>作业等级:</span>
                    <el-select v-model="tableData.params.searchParams.workLevel" clearable filterable class="input-box" placeholder="作业等级">
                        <el-option v-for="item in workLevelList" :key="item.id" :label="item.name" :value="item.id"></el-option>
                    </el-select>
                </div>
                <div style="padding-bottom: 10px">
@@ -40,39 +38,27 @@
                        </el-col>
                        <el-button type="primary" :icon="Refresh" size="default" />
                    </el-row>
                    <el-table ref="multipleTableRef" :data="tableData.ApproveRuleData" style="width: 100%" height="calc(100% - 100px)" :header-cell-style="{ background: '#fafafa' }" @selection-change="handleSelectionChange">
                    <el-table ref="multipleTableRef" :data="tableData.approveRuleData" style="width: 100%" height="calc(100% - 100px)" :header-cell-style="{ background: '#fafafa' }" @selection-change="handleSelectionChange">
                        <el-table-column type="selection" width="55" />
                        <el-table-column property="unitName" label="任务名称" />
                        <el-table-column property="workType" label="任务类型">
                        <el-table-column property="ruleName" label="任务名称" />
                        <el-table-column property="workType" label="作业类型">
                            <template #default="scope">
                                <span>
                                    {{ parseNumber(scope.row.workType, '任务类型') }}
                                    {{ parseNumber(scope.row.workType, '作业类型') }}
                                </span>
                            </template>
                        </el-table-column>
                        <el-table-column property="execClassgroupId" label="巡检班组">
                        <el-table-column property="workLevel" label="作业等级">
                            <template #default="scope">
                                <span>
                                    {{ parseNumber(scope.row.execClassgroupId, '巡检班组') }}
                                    {{ parseNumber(scope.row.workLevel, '作业等级') }}
                                </span>
                            </template>
                        </el-table-column>
                        <el-table-column property="frequency" label="检查频次">
                            <template #default="scope">
                                <span>
                                    {{ scope.row.checkCycle }}
                                </span>
                                <span>
                                    {{ scope.row.checkCycleUnit }}
                                </span>
                            </template>
                        </el-table-column>
                        <el-table-column property="firstStartTime" label="任务开始时间" />
                        <el-table-column prop="createUserName" label="创建人" show-overflow-tooltip></el-table-column>
                        <el-table-column prop="createUname" label="创建人" show-overflow-tooltip></el-table-column>
                        <el-table-column prop="gmtCreate" label="创建时间" show-overflow-tooltip></el-table-column>
                        <el-table-column prop="lastEditUserName" label="最后修改人" show-overflow-tooltip></el-table-column>
                        <el-table-column prop="gmtModitify" label="最后修改时间" show-overflow-tooltip></el-table-column>
                        <el-table-column property="status" label="状态" width="60" />
                        <el-table-column prop="modifiedUname" label="最后修改人" show-overflow-tooltip></el-table-column>
                        <el-table-column prop="gmtModified" label="最后修改时间" show-overflow-tooltip></el-table-column>
                        <el-table-column fixed="right" label="操作" align="center" width="300">
                            <template #default="scope">
                                <el-button link type="primary" size="small" :icon="View" @click="openApproveRuleDialog('查看', scope.row)">查看</el-button>
@@ -119,8 +105,14 @@
    workTypeList: Array<type>;
    departmentList: [];
    userList: [];
    workLevelList: Array<type>;
    deleteList: { ids: Array<deleteType> };
    timeType: Array<type>;
}
interface deleteType {
    ruleId: number;
}
interface type {
    id: number;
    name: string;
@@ -157,8 +149,23 @@
                { id: 7, name: '临时用电作业' },
                { id: 8, name: '盲板抽堵作业' }
            ],
            workLevelList: [
                { id: 1, name: '一级动火作业' },
                { id: 2, name: '二级动火作业' },
                { id: 3, name: '三级动火作业' },
                { id: 4, name: '一级高处作业' },
                { id: 5, name: '二级高处作业' },
                { id: 6, name: '三级高处作业' },
                { id: 7, name: '四级高处作业' },
                { id: 8, name: '一级吊装作业' },
                { id: 9, name: '二级吊装作业' },
                { id: 10, name: '三级吊装作业' },
                { id: 11, name: '抽盲板作业' },
                { id: 12, name: '堵盲板作业' }
            ],
            departmentList: [],
            userList: [],
            deleteList: { ids: [] },
            timeType: [
                { id: 1, name: '分' },
                { id: 2, name: '小时' },
@@ -172,8 +179,8 @@
        const getApproveRule = async () => {
            let res = await approveRuleApi().getApproveRuleList(state.tableData.params);
            if (res.data.code === '200') {
                state.tableData.approveRuleData = res.data.data.records;
                state.tableData.total = res.data.data.total;
                state.tableData.approveRuleData = res.data.data;
                state.tableData.total = res.data.total;
            } else {
                ElMessage({
                    type: 'warning',
@@ -216,7 +223,7 @@
                type: 'warning'
            })
                .then(async () => {
                    let res = await approveRuleApi().deleteApproveRule({ id: row.id });
                    let res = await approveRuleApi().deleteApproveRule(state.deleteList);
                    if (res.data.code === '200') {
                        ElMessage({
                            type: 'success',
@@ -239,12 +246,18 @@
        };
        const parseNumber = (value: number, type: string) => {
            if (type === '任务类型') {
            if (type === '作业类型') {
                return state.workTypeList.find((item) => item.id === value)?.name;
            } else if (type === '检查频次') {
                return state.timeType.find((item) => item.id == value)?.name;
            } else if (type === '作业等级') {
                return state.workLevelList.find((item) => item.id == value)?.name;
            } else {
            }
        };
        const handleSelectionChange = (val: Array<deleteType>) => {
            state.deleteList.ids = val.map((item) => {
                return item.ruleId;
            }) as [];
        };
        // 分页改变
@@ -288,6 +301,7 @@
            parseNumber,
            deleteApproveRule,
            getApproveRule,
            handleSelectionChange,
            onHandleSizeChange,
            onHandleCurrentChange,
            approveRuleDialogRef,