lct
Your Name
2022-08-12 965f7a2479a2cf7c1c56fb298e7fbb855c89e212
src/views/doublePrevent/riskLevel/action/components/riskControlMeasureDialog.vue
@@ -1,54 +1,74 @@
<template>
    <div class="system-add-menu-container">
        <el-dialog :title="title" v-model="isRiskControlMeasureDialog" width="600px">
        <el-dialog :title="title" v-model="isRiskControlMeasureDialog" width="600px" :close-on-click-modal="false">
            <el-form :model="riskControlMeasureForm" :rules="riskControlMeasureFormRules" ref="riskControlMeasureFormRef" size="default" label-width="160px">
                <el-row :gutter="35">
                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                        <el-form-item label="风险事件名称" prop="riskEventId">
                            <el-select class="input-length" :disabled="!disabled" v-model="riskControlMeasureForm.riskEventId" placeholder="请选择风险事件" clearable>
                            <el-select class="input-add" :disabled="!disabled" v-model="riskControlMeasureForm.riskEventId" placeholder="请选择风险事件" clearable>
                                <el-option v-for="item in allSafetyRiskEventData" :key="item.id" :label="item.riskEventName" :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="风险措施编码" prop="controlMeasureCode">
                            <el-input class="input-length" :disabled="!disabled" v-model.trim="riskControlMeasureForm.controlMeasureCode" placeholder="请输入风险措施编码"></el-input>
                            <el-input class="input-add" :disabled="!disabled" v-model.trim="riskControlMeasureForm.controlMeasureCode" placeholder="请输入风险措施编码"></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="管控方式" prop="controlType">
                            <el-select class="input-length" :disabled="!disabled" v-model="riskControlMeasureForm.controlType" placeholder="请选择管控方式" clearable>
                            <el-select class="input-add" :disabled="!disabled" v-model="riskControlMeasureForm.controlType" placeholder="请选择管控方式" clearable>
                                <el-option v-for="item in controlTypeList" :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="管控内容" prop="checkContent">
                            <el-input class="input-length" :disabled="!disabled" type="textarea" :rows="3" v-model.trim="riskControlMeasureForm.checkContent" placeholder="请输入管控内容" clearable> </el-input>
                            <el-input class="input-add" :disabled="!disabled" type="textarea" :rows="3" v-model.trim="riskControlMeasureForm.checkContent" 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="管控措施分类1" prop="classify1">
                            <el-select class="input-length" :disabled="!disabled" v-model="riskControlMeasureForm.classify1" @change="changeClassifyTwoList" placeholder="请选择管控方式" clearable>
                            <el-select class="input-add" :disabled="!disabled" v-model="riskControlMeasureForm.classify1" @change="changeClassifyTwoList" placeholder="请选择管控方式" clearable>
                                <el-option v-for="item in classifyOneList" :key="item.id" :label="item.riskMeasureName" :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="管控措施分类2" prop="classify2">
                            <el-select class="input-length" :disabled="!disabled" v-model="riskControlMeasureForm.classify2" placeholder="请选择管控方式" clearable>
                            <el-select class="input-add" :disabled="!disabled" v-model="riskControlMeasureForm.classify2" placeholder="请选择管控方式" clearable>
                                <el-option v-for="item in classifyTwoList" :key="item.id" :label="item.riskMeasureName" :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="管控措施分类3" prop="classify3">
                            <el-input class="input-length" :disabled="!disabled" v-model.trim="riskControlMeasureForm.classify3" placeholder="请选择管控方式" clearable> </el-input>
                            <el-input class="input-add" :disabled="!disabled" v-model.trim="riskControlMeasureForm.classify3" 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="措施说明" prop="measureDesc">
                            <el-input class="input-length" :disabled="!disabled" type="textarea" :rows="3" v-model.trim="riskControlMeasureForm.measureDesc" placeholder="请输入措施说明" clearable> </el-input>
                            <el-input class="input-add" :disabled="!disabled" type="textarea" :rows="3" v-model.trim="riskControlMeasureForm.measureDesc" placeholder="请输入措施说明" clearable> </el-input>
                        </el-form-item>
                    </el-col>
                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" v-show="personTime">
                        <el-form-item label="创建人" prop="location">
                            <el-input class="input-add" :disabled="!disabled" v-model.trim="riskControlMeasureForm.createByUserName" placeholder="请输入区域位置"></el-input>
                        </el-form-item>
                    </el-col>
                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" v-show="personTime">
                        <el-form-item label="创建时间" prop="location">
                            <el-input class="input-add" :disabled="!disabled" v-model.trim="riskControlMeasureForm.gmtCreate" placeholder="请输入区域位置"></el-input>
                        </el-form-item>
                    </el-col>
                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" v-show="personTime">
                        <el-form-item label="最后修改人" prop="location">
                            <el-input class="input-add" :disabled="!disabled" v-model.trim="riskControlMeasureForm.lastEditUserName" placeholder="请输入区域位置"></el-input>
                        </el-form-item>
                    </el-col>
                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" v-show="personTime">
                        <el-form-item label="最后修改时间" prop="location">
                            <el-input class="input-add" :disabled="!disabled" v-model.trim="riskControlMeasureForm.gmtModitify" placeholder="请输入区域位置"></el-input>
                        </el-form-item>
                    </el-col>
                </el-row>
@@ -67,6 +87,7 @@
interface stateType {
    isRiskControlMeasureDialog: Boolean;
    disabled: Boolean;
    personTime: Boolean;
    riskControlMeasureForm: {
        riskEventId: number | null;
        controlMeasureCode: string | null;
@@ -101,6 +122,7 @@
        const state = reactive<stateType>({
            title: '',
            disabled: false,
            personTime: false,
            controlTypeList: [
                { id: 1, name: '自动化监控' },
                { id: 2, name: '隐患排查' }
@@ -144,6 +166,7 @@
            });
            if (type === '新增') {
                state.disabled = true;
                state.personTime = false;
                state.title = '新增风险管控措施';
                state.riskControlMeasureForm = {
                    riskEventId: null,
@@ -157,12 +180,14 @@
                };
            } else if (type === '查看') {
                state.disabled = false;
                state.personTime = true;
                state.title = '修改风险管控措施';
                state.riskControlMeasureForm.classify1 = JSON.parse(JSON.stringify(value)).classify1;
                state.classifyTwoList = state.classifyTwoListAll.filter((item: any) => item.parentId === state.riskControlMeasureForm.classify1);
                state.riskControlMeasureForm = JSON.parse(JSON.stringify(value));
            } else {
                state.disabled = true;
                state.personTime = false;
                state.title = '修改风险管控措施';
                state.riskControlMeasureForm.classify1 = JSON.parse(JSON.stringify(value)).classify1;
                state.classifyTwoList = state.classifyTwoListAll.filter((item: any) => item.parentId === state.riskControlMeasureForm.classify1);