Admin
2022-08-22 de56d4ec94969775c9eed6ce65f45ab908068fc9
src/views/intellectInspect/inspectTaskManage/inspectTask/components/inspectTaskDialog.vue
@@ -29,7 +29,7 @@
                    </el-col>
                    <el-col :span="12" style="margin-bottom: 20px">
                        <el-form-item label="巡检周期" prop="checkCycle">
                            <el-input v-model="inspectTaskForm.checkCycle" :disabled="!inspectPointConfirm" placeholder="请输入巡检周期" class="input-add">
                            <el-input v-model="inspectTaskForm.checkCycle" @input="onVerifiyNumberInteger($event, 'checkCycle')" :disabled="!inspectPointConfirm" placeholder="请输入巡检周期" class="input-add">
                                <template #append>
                                    <el-select v-model="inspectTaskForm.checkCycleUnit" :disabled="!inspectPointConfirm" placeholder="选择单位">
                                        <el-option v-for="item in timeList" :key="item.id" :value="item.id" :label="item.name"></el-option>
@@ -40,7 +40,7 @@
                    </el-col>
                    <el-col :span="12" style="margin-bottom: 20px">
                        <el-form-item label="提前通知时间" prop="noticeTime">
                            <el-input v-model="inspectTaskForm.noticeTime" :disabled="!inspectPointConfirm" placeholder="请输入提前通知时间" class="input-add">
                            <el-input @input="onVerifiyNumberInteger($event, 'noticeTime')" v-model="inspectTaskForm.noticeTime" :disabled="!inspectPointConfirm" placeholder="请输入提前通知时间" class="input-add">
                                <template #append>
                                    <el-select v-model="inspectTaskForm.noticeTimeUnit" :disabled="!inspectPointConfirm" placeholder="选择单位">
                                        <el-option v-for="item in timeList" :key="item.id" :value="item.id" :label="item.name"></el-option>
@@ -51,7 +51,7 @@
                    </el-col>
                    <el-col :span="12" style="margin-bottom: 20px">
                        <el-form-item label="有效时间" prop="validTime">
                            <el-input v-model="inspectTaskForm.validTime" :disabled="!inspectPointConfirm" placeholder="请输入有效时间" class="input-add">
                            <el-input v-model="inspectTaskForm.validTime" @input="onVerifiyNumberInteger($event, 'validTime')" :disabled="!inspectPointConfirm" placeholder="请输入有效时间" class="input-add">
                                <template #append>
                                    <el-select v-model="inspectTaskForm.validTimeUnit" :disabled="!inspectPointConfirm" placeholder="选择单位">
                                        <el-option v-for="item in timeList" :key="item.id" :value="item.id" :label="item.name"></el-option>
@@ -77,22 +77,44 @@
                                    <div class="stepCard">
                                        <el-card class="box-card">
                                            <template #header>
                                                <div class="card-header">
                                                    <div>{{ item.pointId }}</div>
                                                <div class="card-header" v-for="i in inspectPointAllList">
                                                    <div v-if="i.id == item.pointId">
                                                        <span>{{ i.code }}</span>
                                                    </div>
                                                </div>
                                            </template>
                                            <div class="text item">
                                                所属设备区域:<span>{{ item.regionId }}</span>
                                            <div class="text item" v-for="i in regionNameList">
                                                <div v-if="i.id == item.regionId">
                                                    所属设备区域:<span>{{ i.region }}</span>
                                                </div>
                                            </div>
                                            <div class="text item">
                                                关联RFID:<span>{{ item.rfidId }}</span>
                                            <!--                                            <div class="text item">-->
                                            <!--                                                所属设备区域:<span>{{ item.regionId }}</span>-->
                                            <!--                                            </div>-->
                                            <div class="text item" v-for="i in RFIDList">
                                                <div v-if="i.id == item.rfidId">
                                                    所属设备区域:<span>{{ i.rfidName }}</span>
                                                </div>
                                            </div>
                                            <div class="text item">
                                                巡检指标:<span>{{ item.quotaId }}</span>
                                            <!--                                            <div class="text item">-->
                                            <!--                                                关联RFID:<span>{{ item.rfidId }}</span>-->
                                            <!--                                            </div>-->
                                            <div class="text item" v-for="i in quotaList">
                                                <div v-if="i.id == item.quotaId">
                                                    所属设备区域:<span>{{ i.type }}</span>
                                                </div>
                                            </div>
                                            <div class="text item">
                                                数据填报类型:<span>{{ item.dataReportType }}</span>
                                            <!--                                            <div class="text item">-->
                                            <!--                                                巡检指标:<span>{{ item.quotaId }}</span>-->
                                            <!--                                            </div>-->
                                            <div class="text item" v-for="i in dataReportTypeList">
                                                <div v-if="i.id == item.dataReportType">
                                                    所属设备区域:<span>{{ i.name }}</span>
                                                </div>
                                            </div>
                                            <!--                                            <div class="text item">-->
                                            <!--                                                数据填报类型:<span>{{ item.dataReportType }}</span>-->
                                            <!--                                            </div>-->
                                            <div class="text item">
                                                数据参考值:<span>{{ item.firstReferenceValue ? item.firstReferenceValue : item.secondReferenceValue ? item.secondReferenceValue : item.thirdReferenceValue }}</span>
                                            </div>
@@ -178,6 +200,7 @@
import { ElMessage } from 'element-plus/es';
import { inspectTaskApi } from '/@/api/intellectInspectSystem/inspectTask';
import { facilityAreaApi } from '/@/api/intellectInspectSystem/facilityAreaManage';
import { verifiyNumberInteger } from '/@/utils/toolsValidate';
interface dataState {
    title: string;
    pointTitle: string;
@@ -215,12 +238,16 @@
    classGroup: Array<classGroup>;
    quotaList: Array<quota>;
    inspectPointAllList: Array<inspectPointAllState>;
    regionNameList: Array<inspectPointAllState>;
    RFIDList: Array<inspectPointAllState>;
}
interface inspectPointAllState {
    id: number;
    code: string;
    regionId: number;
    rfidId: number;
    rfidName: string;
    region: string;
}
interface classGroup {
    depId: number;
@@ -317,6 +344,8 @@
            classGroup: [],
            quotaList: [],
            inspectPointAllList: [],
            regionNameList: [],
            RFIDList: [],
            dataReportTypeList: [
                { id: 1, name: '选择' },
                { id: 2, name: '填空' },
@@ -365,7 +394,9 @@
            }
        };
        const showInspectTaskDialog = (type: string, value: { id: number; uuid: string }, workTypeList: [], department: [], timeType: [], classGroupList: [], quotaList: [], inspectPointAllList: []) => {
        const showInspectTaskDialog = (type: string, value: { id: number; uuid: string }, workTypeList: [], department: [], timeType: [], classGroupList: [], quotaList: [], inspectPointAllList: [], regionNameList: [], RFIDList: []) => {
            data.regionNameList = regionNameList;
            data.RFIDList = RFIDList;
            data.quotaList = JSON.parse(JSON.stringify(quotaList));
            data.timeList = JSON.parse(JSON.stringify(timeType));
            data.inspectPointAllList = JSON.parse(JSON.stringify(inspectPointAllList));
@@ -404,6 +435,10 @@
                            giveClassGroup();
                            data.inspectTaskForm = JSON.parse(JSON.stringify(res.data.data));
                        } else {
                            ElMessage({
                                type: 'warning',
                                message: res.data.msg
                            });
                        }
                    })
                    .catch((error) => {});
@@ -416,6 +451,10 @@
                        if (res.data.code === '200') {
                            data.inspectTaskForm = JSON.parse(JSON.stringify(res.data.data));
                        } else {
                            ElMessage({
                                type: 'warning',
                                message: res.data.msg
                            });
                        }
                    })
                    .catch((error) => {});
@@ -432,7 +471,8 @@
                data.inspectTaskForm.points.push(data.inspectPointForm);
                data.inspectPointDialog = false;
            } else if (data.title === '新增巡检任务' && data.pointTitle === '修改巡检点') {
                let result = data.inspectTaskForm.points.findIndex((item) => item.id === data.inspectPointForm.id);
                debugger;
                let result = data.inspectTaskForm.points.findIndex((item) => item.execSequence === data.inspectPointForm.execSequence);
                data.inspectTaskForm.points[result] = data.inspectPointForm;
                data.inspectPointDialog = false;
            } else if (data.title === '修改巡检任务' && data.pointTitle === '新增巡检点') {
@@ -466,7 +506,7 @@
                        message: '巡检点修改成功',
                        duration: 2000
                    });
                    let result = data.inspectTaskForm.points.findIndex((item) => item.id === data.inspectPointForm.id);
                    let result = data.inspectTaskForm.points.findIndex((item) => item.execSequence === data.inspectPointForm.execSequence);
                    data.inspectTaskForm.points[result] = data.inspectPointForm;
                    data.inspectPointDialog = false;
                } else {
@@ -556,12 +596,23 @@
            });
        };
        const onVerifiyNumberInteger = (val: number, title: string) => {
            if (title === 'noticeTime') {
                data.inspectTaskForm.noticeTime = Number(verifiyNumberInteger(val.toString())) === 0 ? null : Number(verifiyNumberInteger(val.toString()));
            } else if (title === 'checkCycle') {
                data.inspectTaskForm.checkCycle = Number(verifiyNumberInteger(val.toString())) === 0 ? null : Number(verifiyNumberInteger(val.toString()));
            } else {
                data.inspectTaskForm.validTime = Number(verifiyNumberInteger(val.toString())) === 0 ? null : Number(verifiyNumberInteger(val.toString()));
            }
        };
        return {
            ...toRefs(data),
            inspectTaskFormRef,
            deleteFlow,
            giveQuotaUnit,
            giveClassGroup,
            onVerifiyNumberInteger,
            submitInspectTask,
            submitInspectPoint,
            giveRegionAndRFID,
@@ -575,7 +626,7 @@
<style scoped lang="scss">
$homeNavLengh: 8;
.home-container {
    height: calc(100vh - 114px);
    height: calc(100vh - 144px);
    box-sizing: border-box;
    overflow: hidden;
    .homeCard {