From de5e674a5655cd5c8d5457d1be8182519625d265 Mon Sep 17 00:00:00 2001
From: 马宇豪 <978517621@qq.com>
Date: 星期三, 12 三月 2025 15:35:47 +0800
Subject: [PATCH] 修改

---
 src/views/analyse/identify/components/identifyDialog.vue | 1226 +++++++++++++++++++++++++++++++++++----------------------
 1 files changed, 748 insertions(+), 478 deletions(-)

diff --git a/src/views/analyse/identify/components/identifyDialog.vue b/src/views/analyse/identify/components/identifyDialog.vue
index a764ab6..d403a07 100644
--- a/src/views/analyse/identify/components/identifyDialog.vue
+++ b/src/views/analyse/identify/components/identifyDialog.vue
@@ -1,510 +1,780 @@
 <template>
-    <div class="system-menu-dialog-container">
-        <el-dialog :title="identifyDialogState.title" v-model="identifyDialogState.identifyDialogVisible" width="600px">
-            <el-form ref="identifyFormRef" :rules="identifyDialogState.identifyFormRules" :model="identifyDialogState.identifyForm" 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="identificationMethod">-->
-<!--                            <el-select class="input-length" :disabled="true" v-model="identifyDialogState.identifyForm.identificationMethod" style="width:100%" placeholder="辨识方法" clearable>-->
-<!--                                <el-option v-for="item in identifyDialogState.identificationMethodList" :key="item.id" :label="item.name" :value="item.id"></el-option>-->
-<!--                            </el-select>-->
-<!--                        </el-form-item>-->
-<!--                    </el-col>-->
+  <div class="system-menu-dialog-container">
+    <el-dialog :title="identifyDialogState.title" v-model="identifyDialogState.identifyDialogVisible" width="600px">
+      <el-form ref="identifyFormRef" :rules="identifyDialogState.identifyFormRules"
+               :model="identifyDialogState.identifyForm" 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="identificationMethod">-->
+          <!--                            <el-select class="input-length" :disabled="true" v-model="identifyDialogState.identifyForm.identificationMethod" style="width:100%" placeholder="辨识方法" clearable>-->
+          <!--                                <el-option v-for="item in identifyDialogState.identificationMethodList" :key="item.id" :label="item.name" :value="item.id"></el-option>-->
+          <!--                            </el-select>-->
+          <!--                        </el-form-item>-->
+          <!--                    </el-col>-->
 
-                    <div style="width: 100%" v-if="identifyDialogState.method === 1">
-                      <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="PHA_检查项目" prop="phaCheckItem">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.phaCheckItem" 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="PHA_存在风险因素" prop="phaRiskFactor">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.phaRiskFactor" 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="PHA_可能产生的后果" prop="phaResult">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.phaResult" 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-select disabled class="input-length" v-model="identifyDialogState.evaluateMethod" style="width:100%" placeholder="" clearable>
-                            <el-option v-for="item in identifyDialogState.evaluateMethodList" :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="phaEvaluateUser">-->
-<!--                          <el-select class="input-length" v-model="identifyDialogState.identifyForm.phaEvaluateUser" style="width:100%" placeholder="" clearable>-->
-<!--                            <el-option v-for="item in identifyDialogState.personList" :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-input class="input-length" disabled v-model="identifyDialogState.evaluateUser" 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="result">
-                          <el-radio-group v-model="identifyDialogState.identifyForm.result" :disabled="identifyDialogState.disabled">
-                            <el-radio :label="1">有风险</el-radio>
-                            <el-radio :label="2">无风险</el-radio>
-                          </el-radio-group>
-                        </el-form-item>
-                      </el-col>
-                      <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="辨识专家建议" prop="identificationDesc">
-                          <el-input class="input-length" type="textarea" :autosize="{ minRows: 3}" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.identificationDesc" placeholder="辨识专家建议" clearable></el-input>
-                        </el-form-item>
-                      </el-col>
-                    </div>
+          <div style="width: 100%" v-if="identifyDialogState.method === 1">
+            <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
+              <el-form-item label="PHA_检查项目" prop="phaCheckItem">
+                <el-input class="input-length" :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.phaCheckItem" 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="PHA_存在风险因素" prop="phaRiskFactor">
+                <el-input class="input-length" :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.phaRiskFactor" 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="PHA_可能产生的后果" prop="phaResult">
+                <el-input class="input-length" :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.phaResult" 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-select disabled class="input-length" v-model="identifyDialogState.evaluateMethod" style="width:100%"
+                           placeholder="" clearable>
+                  <el-option v-for="item in identifyDialogState.evaluateMethodList" :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="phaEvaluateUser">-->
+            <!--                          <el-select class="input-length" v-model="identifyDialogState.identifyForm.phaEvaluateUser" style="width:100%" placeholder="" clearable>-->
+            <!--                            <el-option v-for="item in identifyDialogState.personList" :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-input class="input-length" disabled v-model="identifyDialogState.evaluateUser"
+                          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="result">
+                <el-radio-group v-model="identifyDialogState.identifyForm.result"
+                                :disabled="identifyDialogState.disabled">
+                  <el-radio :label="1">有风险</el-radio>
+                  <el-radio :label="2">无风险</el-radio>
+                </el-radio-group>
+              </el-form-item>
+            </el-col>
+            <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
+              <el-form-item label="辨识专家建议" prop="identificationDesc">
+                <el-input class="input-length" type="textarea" :autosize="{ minRows: 3}"
+                          :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.identificationDesc" 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-upload accept="image/*" :action="identifyDialogState.uploadUrl"
+                           :disabled="identifyDialogState.disabled"
+                           :headers="identifyDialogState.header" method="post" :data="{module: 'identification'}"
+                           :on-success="handleAvatarSuccess" :on-exceed="showTip" :on-preview="handlePictureCardPreview"
+                           :limit='identifyDialogState.imgLimit' v-model:file-list="identifyDialogState.fileList"
+                           list-type="picture-card" :before-upload="picSize" :on-remove="handleRemove"
+                           :before-remove="beforeRemove">
+                  <el-icon>
+                    <Plus/>
+                  </el-icon>
+                  <template #tip>
+                    <div class="el-upload__tip">上传jpg/png图片尺寸小于5M,最多可上传1张</div>
+                  </template>
+                </el-upload>
+              </el-form-item>
+            </el-col>
+          </div>
 
-                    <div style="width: 100%" v-if="identifyDialogState.method === 2">
-                      <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="JHA_作业步骤" prop="jhaCheckItem">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.jhaCheckItem" 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="JHA_危险源或潜在事件" prop="jhaRiskFactor">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.jhaRiskFactor" 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="JHA_可能产生的后果" prop="jhaResult">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.jhaResult" 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-select disabled class="input-length" v-model="identifyDialogState.evaluateMethod" style="width:100%" placeholder="" clearable>
-                            <el-option v-for="item in identifyDialogState.evaluateMethodList" :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="jhaEvaluateUser">-->
-<!--                          <el-select class="input-length" v-model="identifyDialogState.identifyForm.jhaEvaluateUser" style="width:100%" placeholder="" clearable>-->
-<!--                            <el-option v-for="item in identifyDialogState.personList" :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-input class="input-length" disabled v-model="identifyDialogState.evaluateUser" 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="result">
-                          <el-radio-group v-model="identifyDialogState.identifyForm.result" :disabled="identifyDialogState.disabled">
-                            <el-radio :label="1">有风险</el-radio>
-                            <el-radio :label="2">无风险</el-radio>
-                          </el-radio-group>
-                        </el-form-item>
-                      </el-col>
-                      <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="辨识专家建议" prop="identificationDesc">
-                          <el-input class="input-length" type="textarea" :autosize="{ minRows: 3}" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.identificationDesc" placeholder="辨识专家建议" clearable></el-input>
-                        </el-form-item>
-                      </el-col>
-                    </div>
+          <div style="width: 100%" v-if="identifyDialogState.method === 2">
+            <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
+              <el-form-item label="JHA_作业步骤" prop="jhaCheckItem">
+                <el-input class="input-length" :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.jhaCheckItem" 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="JHA_危险源或潜在事件" prop="jhaRiskFactor">
+                <el-input class="input-length" :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.jhaRiskFactor" 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="JHA_可能产生的后果" prop="jhaResult">
+                <el-input class="input-length" :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.jhaResult" 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-select disabled class="input-length" v-model="identifyDialogState.evaluateMethod" style="width:100%"
+                           placeholder="" clearable>
+                  <el-option v-for="item in identifyDialogState.evaluateMethodList" :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="jhaEvaluateUser">-->
+            <!--                          <el-select class="input-length" v-model="identifyDialogState.identifyForm.jhaEvaluateUser" style="width:100%" placeholder="" clearable>-->
+            <!--                            <el-option v-for="item in identifyDialogState.personList" :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-input class="input-length" disabled v-model="identifyDialogState.evaluateUser"
+                          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="result">
+                <el-radio-group v-model="identifyDialogState.identifyForm.result"
+                                :disabled="identifyDialogState.disabled">
+                  <el-radio :label="1">有风险</el-radio>
+                  <el-radio :label="2">无风险</el-radio>
+                </el-radio-group>
+              </el-form-item>
+            </el-col>
+            <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
+              <el-form-item label="辨识专家建议" prop="identificationDesc">
+                <el-input class="input-length" type="textarea" :autosize="{ minRows: 3}"
+                          :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.identificationDesc" 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-upload accept="image/*" :action="identifyDialogState.uploadUrl"
+                           :disabled="identifyDialogState.disabled"
+                           :headers="identifyDialogState.header" method="post" :data="{module: 'identification'}"
+                           :on-success="handleAvatarSuccess" :on-exceed="showTip" :on-preview="handlePictureCardPreview"
+                           :limit='identifyDialogState.imgLimit' v-model:file-list="identifyDialogState.fileList"
+                           list-type="picture-card" :before-upload="picSize" :on-remove="handleRemove"
+                           :before-remove="beforeRemove">
+                  <el-icon>
+                    <Plus/>
+                  </el-icon>
+                  <template #tip>
+                    <div class="el-upload__tip">上传jpg/png图片尺寸小于5M,最多可上传1张</div>
+                  </template>
+                </el-upload>
+              </el-form-item>
+            </el-col>
+          </div>
 
-                    <div style="width: 100%" v-if="identifyDialogState.method === 3">
-                      <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="SCL_检查项目" prop="sclCheckItem">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.sclCheckItem" 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="SCL_检查标准" prop="sclCheckStandard">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.sclCheckStandard" 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="SCL_不符合标准情况" prop="sclCheckUnstandard">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.sclCheckUnstandard" 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="SCL_主要后果" prop="sclCheckResult">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.sclCheckResult" 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-select disabled class="input-length" v-model="identifyDialogState.evaluateMethod" style="width:100%" placeholder="" clearable>
-                            <el-option v-for="item in identifyDialogState.evaluateMethodList" :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="sclEvaluateUser">-->
-<!--                          <el-select class="input-length" v-model="identifyDialogState.identifyForm.sclEvaluateUser" style="width:100%" placeholder="" clearable>-->
-<!--                            <el-option v-for="item in identifyDialogState.personList" :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-input class="input-length" disabled v-model="identifyDialogState.evaluateUser" 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="result">
-                          <el-radio-group v-model="identifyDialogState.identifyForm.result" :disabled="identifyDialogState.disabled">
-                            <el-radio :label="1">有风险</el-radio>
-                            <el-radio :label="2">无风险</el-radio>
-                          </el-radio-group>
-                        </el-form-item>
-                      </el-col>
-                      <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="辨识专家建议" prop="identificationDesc">
-                          <el-input class="input-length" type="textarea" :autosize="{ minRows: 3}" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.identificationDesc" placeholder="辨识专家建议" clearable></el-input>
-                        </el-form-item>
-                      </el-col>
-                    </div>
+          <div style="width: 100%" v-if="identifyDialogState.method === 3">
+            <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
+              <el-form-item label="SCL_检查项目" prop="sclCheckItem">
+                <el-input class="input-length" :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.sclCheckItem" 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="SCL_检查标准" prop="sclCheckStandard">
+                <el-input class="input-length" :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.sclCheckStandard" 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="SCL_不符合标准情况" prop="sclCheckUnstandard">
+                <el-input class="input-length" :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.sclCheckUnstandard" 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="SCL_主要后果" prop="sclCheckResult">
+                <el-input class="input-length" :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.sclCheckResult" 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-select disabled class="input-length" v-model="identifyDialogState.evaluateMethod" style="width:100%"
+                           placeholder="" clearable>
+                  <el-option v-for="item in identifyDialogState.evaluateMethodList" :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="sclEvaluateUser">-->
+            <!--                          <el-select class="input-length" v-model="identifyDialogState.identifyForm.sclEvaluateUser" style="width:100%" placeholder="" clearable>-->
+            <!--                            <el-option v-for="item in identifyDialogState.personList" :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-input class="input-length" disabled v-model="identifyDialogState.evaluateUser"
+                          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="result">
+                <el-radio-group v-model="identifyDialogState.identifyForm.result"
+                                :disabled="identifyDialogState.disabled">
+                  <el-radio :label="1">有风险</el-radio>
+                  <el-radio :label="2">无风险</el-radio>
+                </el-radio-group>
+              </el-form-item>
+            </el-col>
+            <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
+              <el-form-item label="辨识专家建议" prop="identificationDesc">
+                <el-input class="input-length" type="textarea" :autosize="{ minRows: 3}"
+                          :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.identificationDesc" 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-upload accept="image/*" :action="identifyDialogState.uploadUrl"
+                           :disabled="identifyDialogState.disabled"
+                           :headers="identifyDialogState.header" method="post" :data="{module: 'identification'}"
+                           :on-success="handleAvatarSuccess" :on-exceed="showTip" :on-preview="handlePictureCardPreview"
+                           :limit='identifyDialogState.imgLimit' v-model:file-list="identifyDialogState.fileList"
+                           list-type="picture-card" :before-upload="picSize" :on-remove="handleRemove"
+                           :before-remove="beforeRemove">
+                  <el-icon>
+                    <Plus/>
+                  </el-icon>
+                  <template #tip>
+                    <div class="el-upload__tip">上传jpg/png图片尺寸小于5M,最多可上传1张</div>
+                  </template>
+                </el-upload>
+              </el-form-item>
+            </el-col>
+          </div>
 
-                    <div style="width: 100%" v-if="identifyDialogState.method === 4">
-                      <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="HAZOP_节点" prop="hazopNode">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.hazopNode" placeholder="HAZOP_节点" 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="HAZOP_参数" prop="hazopParam">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.hazopParam" placeholder="HAZOP_参数" 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="HAZOP_参数描述" prop="hazopParamDesc">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.hazopParamDesc" placeholder="HAZOP_参数描述" 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="HAZOP_引导词" prop="hazopGuide">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.hazopGuide" placeholder="HAZOP_引导词" 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="HAZOP_偏差" prop="hazopDeviation">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.hazopDeviation" placeholder="HAZOP_偏差" 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="HAZOP_可能原因" prop="hazopPossibleCauses">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.hazopPossibleCauses" placeholder="HAZOP_可能原因" 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="HAZOP_主要后果" prop="hazopResult">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.hazopResult" placeholder="HAZOP_主要后果" 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-select disabled class="input-length" v-model="identifyDialogState.evaluateMethod" style="width:100%" placeholder="" clearable>
-                            <el-option v-for="item in identifyDialogState.evaluateMethodList" :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="hazopEvaluateUser">-->
-<!--                          <el-select class="input-length" v-model="identifyDialogState.identifyForm.hazopEvaluateUser" style="width:100%" placeholder="" clearable>-->
-<!--                            <el-option v-for="item in identifyDialogState.personList" :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-input class="input-length" disabled v-model="identifyDialogState.evaluateUser" 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="result">
-                          <el-radio-group v-model="identifyDialogState.identifyForm.result" :disabled="identifyDialogState.disabled">
-                            <el-radio :label="1">有风险</el-radio>
-                            <el-radio :label="2">无风险</el-radio>
-                          </el-radio-group>
-                        </el-form-item>
-                      </el-col>
-                      <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="辨识专家建议" prop="identificationDesc">
-                          <el-input class="input-length" type="textarea" :autosize="{ minRows: 3}" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.identificationDesc" placeholder="辨识专家建议" clearable></el-input>
-                        </el-form-item>
-                      </el-col>
-                    </div>
+          <div style="width: 100%" v-if="identifyDialogState.method === 4">
+            <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
+              <el-form-item label="HAZOP_节点" prop="hazopNode">
+                <el-input class="input-length" :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.hazopNode" placeholder="HAZOP_节点"
+                          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="HAZOP_参数" prop="hazopParam">
+                <el-input class="input-length" :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.hazopParam" placeholder="HAZOP_参数"
+                          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="HAZOP_参数描述" prop="hazopParamDesc">
+                <el-input class="input-length" :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.hazopParamDesc" placeholder="HAZOP_参数描述"
+                          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="HAZOP_引导词" prop="hazopGuide">
+                <el-input class="input-length" :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.hazopGuide" placeholder="HAZOP_引导词"
+                          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="HAZOP_偏差" prop="hazopDeviation">
+                <el-input class="input-length" :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.hazopDeviation" placeholder="HAZOP_偏差"
+                          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="HAZOP_可能原因" prop="hazopPossibleCauses">
+                <el-input class="input-length" :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.hazopPossibleCauses" placeholder="HAZOP_可能原因"
+                          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="HAZOP_主要后果" prop="hazopResult">
+                <el-input class="input-length" :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.hazopResult" placeholder="HAZOP_主要后果"
+                          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-select disabled class="input-length" v-model="identifyDialogState.evaluateMethod" style="width:100%"
+                           placeholder="" clearable>
+                  <el-option v-for="item in identifyDialogState.evaluateMethodList" :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="hazopEvaluateUser">-->
+            <!--                          <el-select class="input-length" v-model="identifyDialogState.identifyForm.hazopEvaluateUser" style="width:100%" placeholder="" clearable>-->
+            <!--                            <el-option v-for="item in identifyDialogState.personList" :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-input class="input-length" disabled v-model="identifyDialogState.evaluateUser"
+                          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="result">
+                <el-radio-group v-model="identifyDialogState.identifyForm.result"
+                                :disabled="identifyDialogState.disabled">
+                  <el-radio :label="1">有风险</el-radio>
+                  <el-radio :label="2">无风险</el-radio>
+                </el-radio-group>
+              </el-form-item>
+            </el-col>
+            <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
+              <el-form-item label="辨识专家建议" prop="identificationDesc">
+                <el-input class="input-length" type="textarea" :autosize="{ minRows: 3}"
+                          :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.identificationDesc" 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-upload accept="image/*" :action="identifyDialogState.uploadUrl"
+                           :disabled="identifyDialogState.disabled"
+                           :headers="identifyDialogState.header" method="post" :data="{module: 'identification'}"
+                           :on-success="handleAvatarSuccess" :on-exceed="showTip" :on-preview="handlePictureCardPreview"
+                           :limit='identifyDialogState.imgLimit' v-model:file-list="identifyDialogState.fileList"
+                           list-type="picture-card" :before-upload="picSize" :on-remove="handleRemove"
+                           :before-remove="beforeRemove">
+                  <el-icon>
+                    <Plus/>
+                  </el-icon>
+                  <template #tip>
+                    <div class="el-upload__tip">上传jpg/png图片尺寸小于5M,最多可上传1张</div>
+                  </template>
+                </el-upload>
+              </el-form-item>
+            </el-col>
+          </div>
 
-                    <div style="width: 100%" v-if="identifyDialogState.method === 5">
-                      <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="类比法_检查项目" prop="analogyCheckItem">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.analogyCheckItem" 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="analogyReference">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.analogyReference" 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="analogyRiskFactor">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.analogyRiskFactor" 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="analogyResult">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.analogyResult" 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-select disabled class="input-length" v-model="identifyDialogState.evaluateMethod" style="width:100%" placeholder="" clearable>
-                            <el-option v-for="item in identifyDialogState.evaluateMethodList" :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="analogyEvaluateUser">-->
-<!--                          <el-select class="input-length" v-model="identifyDialogState.identifyForm.analogyEvaluateUser" style="width:100%" placeholder="" clearable>-->
-<!--                            <el-option v-for="item in identifyDialogState.personList" :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-input class="input-length" disabled v-model="identifyDialogState.evaluateUser" 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="result">
-                          <el-radio-group v-model="identifyDialogState.identifyForm.result" :disabled="identifyDialogState.disabled">
-                            <el-radio :label="1">有风险</el-radio>
-                            <el-radio :label="2">无风险</el-radio>
-                          </el-radio-group>
-                        </el-form-item>
-                      </el-col>
-                      <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="辨识专家建议" prop="identificationDesc">
-                          <el-input class="input-length" type="textarea" :autosize="{ minRows: 3}" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.identificationDesc" placeholder="辨识专家建议" clearable></el-input>
-                        </el-form-item>
-                      </el-col>
-                    </div>
-                </el-row>
-            </el-form>
-            <template #footer>
+          <div style="width: 100%" v-if="identifyDialogState.method === 5">
+            <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
+              <el-form-item label="类比法_检查项目" prop="analogyCheckItem">
+                <el-input class="input-length" :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.analogyCheckItem" 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="analogyReference">
+                <el-input class="input-length" :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.analogyReference" 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="analogyRiskFactor">
+                <el-input class="input-length" :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.analogyRiskFactor" 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="analogyResult">
+                <el-input class="input-length" :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.analogyResult" 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-select disabled class="input-length" v-model="identifyDialogState.evaluateMethod" style="width:100%"
+                           placeholder="" clearable>
+                  <el-option v-for="item in identifyDialogState.evaluateMethodList" :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="analogyEvaluateUser">-->
+            <!--                          <el-select class="input-length" v-model="identifyDialogState.identifyForm.analogyEvaluateUser" style="width:100%" placeholder="" clearable>-->
+            <!--                            <el-option v-for="item in identifyDialogState.personList" :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-input class="input-length" disabled v-model="identifyDialogState.evaluateUser"
+                          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="result">
+                <el-radio-group v-model="identifyDialogState.identifyForm.result"
+                                :disabled="identifyDialogState.disabled">
+                  <el-radio :label="1">有风险</el-radio>
+                  <el-radio :label="2">无风险</el-radio>
+                </el-radio-group>
+              </el-form-item>
+            </el-col>
+            <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
+              <el-form-item label="辨识专家建议" prop="identificationDesc">
+                <el-input class="input-length" type="textarea" :autosize="{ minRows: 3}"
+                          :disabled="identifyDialogState.disabled"
+                          v-model="identifyDialogState.identifyForm.identificationDesc" 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-upload accept="image/*" :action="identifyDialogState.uploadUrl"
+                           :disabled="identifyDialogState.disabled"
+                           :headers="identifyDialogState.header" method="post" :data="{module: 'identification'}"
+                           :on-success="handleAvatarSuccess" :on-exceed="showTip" :on-preview="handlePictureCardPreview"
+                           :limit='identifyDialogState.imgLimit' v-model:file-list="identifyDialogState.fileList"
+                           list-type="picture-card" :before-upload="picSize" :on-remove="handleRemove"
+                           :before-remove="beforeRemove">
+                  <el-icon>
+                    <Plus/>
+                  </el-icon>
+                  <template #tip>
+                    <div class="el-upload__tip">上传jpg/png图片尺寸小于5M,最多可上传1张</div>
+                  </template>
+                </el-upload>
+              </el-form-item>
+            </el-col>
+          </div>
+        </el-row>
+      </el-form>
+      <template #footer>
 				<span class="dialog-footer">
-					<el-button @click="identifyDialogState.identifyDialogVisible = !identifyDialogState.identifyDialogVisible" size="default">取 消</el-button>
-					<el-button v-if="!identifyDialogState.disabled" type="primary" @click="onSubmitIdentify" size="default">确定</el-button>
+					<el-button @click="identifyDialogState.identifyDialogVisible = !identifyDialogState.identifyDialogVisible"
+                     size="default">取 消</el-button>
+					<el-button v-if="!identifyDialogState.disabled" type="primary" @click="onSubmitIdentify"
+                     size="default">确定</el-button>
 				</span>
-            </template>
-        </el-dialog>
-    </div>
+      </template>
+    </el-dialog>
+    <el-dialog v-model="identifyDialogState.dialogVisible">
+      <el-image style="width: 100%; height: 100%" :src="identifyDialogState.dialogImageUrl"/>
+    </el-dialog>
+  </div>
 </template>
 
 <script setup lang="ts">
-import { reactive, ref } from "vue";
-import {ElMessage} from "element-plus";
+import {reactive, ref} from "vue";
+import {ElMessage, UploadProps} from "element-plus";
 import {identifyApi} from "/@/api/analyse/identify";
 import {isValidKey} from "/@/utils/methods";
+import Cookies from "js-cookie";
+import {useUserInfo} from "/@/stores/userInfo";
+import {storeToRefs} from "pinia";
+import axios from "axios";
 
+const userInfo = useUserInfo();
+const {userInfos} = storeToRefs(userInfo);
 const identifyFormRef = ref()
 
 const identifyDialogState = reactive<IdentifyDialogType>({
-    title: '',
-    method: null,
-    time:[],
-    disabled: false,
-    evaluateMethod: null,
-    evaluateUser: '',
-    identifyDialogVisible: false,
-    identifyForm: {
-        id: null,
-        identificationMethod: null,
-        result: null,
-        identificationDesc: '',
-        analogyCheckItem: '',
-        analogyRiskFactor: '',
-        analogyResult: '',
-        analogyReference: '',
-        hazopNode: '',
-        hazopParam: '',
-        hazopParamDesc: '',
-        hazopGuide: '',
-        hazopDeviation: '',
-        hazopPossibleCauses: '',
-        hazopResult: '',
-        jhaCheckItem: '',
-        jhaRiskFactor: '',
-        jhaResult: '',
-        phaCheckItem: '',
-        phaRiskFactor: '',
-        phaResult: '',
-        sclCheckItem: '',
-        sclCheckStandard: '',
-        sclCheckUnstandard: '',
-        sclCheckResult: '',
-        hazopId: null,
-        jhaId: null,
-        phaId: null,
-        sclId: null,
-        analogyId: null
-    },
-    identifyFormRules: {
-        result: [{ required: true, message: '请选择辨识结果', trigger: 'blur' }],
-        identificationDesc: [{ required: true, message: '请输入辨识专家建议', trigger: 'blur' }],
-        analogyCheckItem: [{ required: true, message: '请输入检查项目', trigger: 'blur' }],
-        analogyRiskFactor: [{ required: true, message: '请输入存在风险因素', trigger: 'blur' }],
-        analogyResult: [{ required: true, message: '请输入可能产生的后果', trigger: 'blur' }],
-        analogyReference: [{ required: true, message: '请输入类比参照', trigger: 'blur' }],
-        hazopNode: [{ required: true, message: '请输入节点', trigger: 'blur' }],
-        hazopParam: [{ required: true, message: '请输入参数', trigger: 'blur' }],
-        hazopParamDesc: [{ required: true, message: '请输入参数描述', trigger: 'blur' }],
-        hazopGuide: [{ required: true, message: '请输入引导词', trigger: 'blur' }],
-        hazopDeviation: [{ required: true, message: '请输入偏差', trigger: 'blur' }],
-        hazopPossibleCauses: [{ required: true, message: '请输入可能原因', trigger: 'blur' }],
-        hazopResult: [{ required: true, message: '请输入主要后果', trigger: 'blur' }],
-        jhaCheckItem: [{ required: true, message: '请输入作业步骤', trigger: 'blur' }],
-        jhaRiskFactor: [{ required: true, message: '请输入危险源或潜在事件', trigger: 'blur' }],
-        jhaResult: [{ required: true, message: '请输入可能产生的后果', trigger: 'blur' }],
-        phaCheckItem: [{ required: true, message: '请输入检查项目', trigger: 'blur' }],
-        phaRiskFactor: [{ required: true, message: '请输入存在风险因素', trigger: 'blur' }],
-        phaResult: [{ required: true, message: '请输入可能产生的后果', trigger: 'blur' }],
-        sclCheckItem: [{ required: true, message: '请输入检查项目', trigger: 'blur' }],
-        sclCheckStandard: [{ required: true, message: '请输入检查标准', trigger: 'blur' }],
-        sclCheckUnstandard: [{ required: true, message: '请输入不符合标准情况', trigger: 'blur' }],
-        sclCheckResult: [{ required: true, message: '请输入主要后果', trigger: 'blur' }]
-    },
-    planList: [],
-    personList: [],
-    identificationMethodList: [
-        {id:1, name: 'PHA'},
-        {id:2, name: 'JHA'},
-        {id:3, name: 'SCL'},
-        {id:4, name: 'HAZOP'},
-        {id:5, name: '类比法'},
-    ],
-    evaluateMethodList: [
-        {id:1, name: 'LEC'},
-        {id:2, name: 'LS'},
-        {id:3, name: 'MES'},
-        {id:4, name: 'RS'},
-    ]
+  title: '',
+  method: null,
+  time: [],
+  disabled: false,
+  evaluateMethod: null,
+  evaluateUser: '',
+  identifyDialogVisible: false,
+  identifyForm: {
+    id: null,
+    identificationMethod: null,
+    result: null,
+    identificationDesc: '',
+    analogyCheckItem: '',
+    analogyRiskFactor: '',
+    analogyResult: '',
+    analogyReference: '',
+    hazopNode: '',
+    hazopParam: '',
+    hazopParamDesc: '',
+    hazopGuide: '',
+    hazopDeviation: '',
+    hazopPossibleCauses: '',
+    hazopResult: '',
+    jhaCheckItem: '',
+    jhaRiskFactor: '',
+    jhaResult: '',
+    phaCheckItem: '',
+    phaRiskFactor: '',
+    phaResult: '',
+    sclCheckItem: '',
+    sclCheckStandard: '',
+    sclCheckUnstandard: '',
+    sclCheckResult: '',
+    hazopId: null,
+    jhaId: null,
+    phaId: null,
+    sclId: null,
+    analogyId: null,
+    fileData: ''
+  },
+  fileList: [],
+  imgLimit: 1,
+  uploadUrl: import.meta.env.VITE_API_URL + '/attachment/upload/url',
+  isOverSize: false,
+  header: {
+    uid: Number(userInfos.value.uid),
+    tk: Cookies.get('token')
+  },
+  dialogVisible: false,
+  dialogImageUrl: '',
+  identifyFormRules: {
+    result: [{required: true, message: '请选择辨识结果', trigger: 'blur'}],
+    identificationDesc: [{required: true, message: '请输入辨识专家建议', trigger: 'blur'}],
+    analogyCheckItem: [{required: true, message: '请输入检查项目', trigger: 'blur'}],
+    analogyRiskFactor: [{required: true, message: '请输入存在风险因素', trigger: 'blur'}],
+    analogyResult: [{required: true, message: '请输入可能产生的后果', trigger: 'blur'}],
+    analogyReference: [{required: true, message: '请输入类比参照', trigger: 'blur'}],
+    hazopNode: [{required: true, message: '请输入节点', trigger: 'blur'}],
+    hazopParam: [{required: true, message: '请输入参数', trigger: 'blur'}],
+    hazopParamDesc: [{required: true, message: '请输入参数描述', trigger: 'blur'}],
+    hazopGuide: [{required: true, message: '请输入引导词', trigger: 'blur'}],
+    hazopDeviation: [{required: true, message: '请输入偏差', trigger: 'blur'}],
+    hazopPossibleCauses: [{required: true, message: '请输入可能原因', trigger: 'blur'}],
+    hazopResult: [{required: true, message: '请输入主要后果', trigger: 'blur'}],
+    jhaCheckItem: [{required: true, message: '请输入作业步骤', trigger: 'blur'}],
+    jhaRiskFactor: [{required: true, message: '请输入危险源或潜在事件', trigger: 'blur'}],
+    jhaResult: [{required: true, message: '请输入可能产生的后果', trigger: 'blur'}],
+    phaCheckItem: [{required: true, message: '请输入检查项目', trigger: 'blur'}],
+    phaRiskFactor: [{required: true, message: '请输入存在风险因素', trigger: 'blur'}],
+    phaResult: [{required: true, message: '请输入可能产生的后果', trigger: 'blur'}],
+    sclCheckItem: [{required: true, message: '请输入检查项目', trigger: 'blur'}],
+    sclCheckStandard: [{required: true, message: '请输入检查标准', trigger: 'blur'}],
+    sclCheckUnstandard: [{required: true, message: '请输入不符合标准情况', trigger: 'blur'}],
+    sclCheckResult: [{required: true, message: '请输入主要后果', trigger: 'blur'}]
+  },
+  planList: [],
+  personList: [],
+  identificationMethodList: [
+    {id: 1, name: 'PHA'},
+    {id: 2, name: 'JHA'},
+    {id: 3, name: 'SCL'},
+    {id: 4, name: 'HAZOP'},
+    {id: 5, name: '类比法'},
+  ],
+  evaluateMethodList: [
+    {id: 1, name: 'LEC'},
+    {id: 2, name: 'LS'},
+    {id: 3, name: 'MES'},
+    {id: 4, name: 'RS'},
+  ]
 })
 
-const showIdentifyDialog = (title: string, value: IdentifyType, identifyQueryForm: identifyQueryFormType,idenForm: IdentifyType,personList: Array<NewPersonListType>) => {
-    identifyDialogState.method = identifyQueryForm.identificationMethod
-    identifyDialogState.identifyDialogVisible = true;
-    identifyDialogState.disabled = false
-    identifyDialogState.evaluateMethod = idenForm.evaluateMethod
-    identifyDialogState.evaluateUser = idenForm.evaluateUser
-    identifyDialogState.personList = personList
-    setTimeout(() => {
-        identifyFormRef.value.clearValidate();
-    });
-    if(title === '新增'){
-        identifyDialogState.title = '新增';
-        identifyDialogState.identifyForm = {
-            id: identifyQueryForm.id,
-            identificationMethod: identifyQueryForm.identificationMethod,
-            result: null,
-            identificationDesc: '',
-            analogyCheckItem: '',
-            analogyRiskFactor: '',
-            analogyResult: '',
-            analogyReference: '',
-            hazopNode: '',
-            hazopParam: '',
-            hazopParamDesc: '',
-            hazopGuide: '',
-            hazopDeviation: '',
-            hazopPossibleCauses: '',
-            hazopResult: '',
-            jhaCheckItem: '',
-            jhaRiskFactor: '',
-            jhaResult: '',
-            phaCheckItem: '',
-            phaRiskFactor: '',
-            phaResult: '',
-            sclCheckItem: '',
-            sclCheckStandard: '',
-            sclCheckUnstandard: '',
-            sclCheckResult: '',
-            hazopId: null,
-            jhaId: null,
-            phaId: null,
-            sclId: null,
-            analogyId: null,
-        };
-    }else if(title === '查看'){
-        identifyDialogState.title = '查看';
-        identifyDialogState.disabled = true
-        for(let i in identifyDialogState.identifyForm){
-            if(isValidKey(i, identifyDialogState.identifyForm)){
-                identifyDialogState.identifyForm[i] = value[i];
-            }
-        }
-    }else{
-        identifyDialogState.title = '编辑';
-        for(let i in identifyDialogState.identifyForm){
-              if(isValidKey(i, identifyDialogState.identifyForm)){
-                  identifyDialogState.identifyForm[i] = value[i];
-              }
-        }
-        identifyDialogState.identifyForm.identificationMethod = identifyQueryForm.identificationMethod
-        console.log(identifyDialogState.identifyForm,'identifyDialogState.identifyForm')
+const showIdentifyDialog = (title: string, value: IdentifyType, identifyQueryForm: identifyQueryFormType, idenForm: IdentifyType, personList: Array<NewPersonListType>) => {
+  identifyDialogState.fileList = []
+  identifyDialogState.method = identifyQueryForm.identificationMethod
+  identifyDialogState.identifyDialogVisible = true;
+  identifyDialogState.disabled = false
+  identifyDialogState.evaluateMethod = idenForm.evaluateMethod
+  identifyDialogState.evaluateUser = idenForm.evaluateUser
+  identifyDialogState.personList = personList
+  setTimeout(() => {
+    identifyFormRef.value.clearValidate();
+  });
+  if (title === '新增') {
+    identifyDialogState.title = '新增';
+    identifyDialogState.identifyForm = {
+      id: identifyQueryForm.id,
+      identificationMethod: identifyQueryForm.identificationMethod,
+      result: null,
+      identificationDesc: '',
+      analogyCheckItem: '',
+      analogyRiskFactor: '',
+      analogyResult: '',
+      analogyReference: '',
+      hazopNode: '',
+      hazopParam: '',
+      hazopParamDesc: '',
+      hazopGuide: '',
+      hazopDeviation: '',
+      hazopPossibleCauses: '',
+      hazopResult: '',
+      jhaCheckItem: '',
+      jhaRiskFactor: '',
+      jhaResult: '',
+      phaCheckItem: '',
+      phaRiskFactor: '',
+      phaResult: '',
+      sclCheckItem: '',
+      sclCheckStandard: '',
+      sclCheckUnstandard: '',
+      sclCheckResult: '',
+      hazopId: null,
+      jhaId: null,
+      phaId: null,
+      sclId: null,
+      analogyId: null,
+      fileData: ''
+    };
+  } else if (title === '查看') {
+    identifyDialogState.title = '查看';
+    identifyDialogState.disabled = true
+    for (let i in identifyDialogState.identifyForm) {
+      if (isValidKey(i, identifyDialogState.identifyForm)) {
+        identifyDialogState.identifyForm[i] = value[i];
+      }
     }
+    if(identifyDialogState.identifyForm.fileData && identifyDialogState.identifyForm.fileData !== ''){
+      const picList = identifyDialogState.identifyForm.fileData.split(',')
+      identifyDialogState.fileList = picList.map((item,index)=>{
+        return {
+          name: index,
+          url: import.meta.env.VITE_API_URL + item
+        }
+      })
+    }
+  } else {
+    identifyDialogState.title = '编辑';
+    for (let i in identifyDialogState.identifyForm) {
+      if (isValidKey(i, identifyDialogState.identifyForm)) {
+        identifyDialogState.identifyForm[i] = value[i];
+      }
+    }
+    identifyDialogState.identifyForm.identificationMethod = identifyQueryForm.identificationMethod
+    if(identifyDialogState.identifyForm.fileData && identifyDialogState.identifyForm.fileData !== ''){
+      const picList = identifyDialogState.identifyForm.fileData.split(',')
+      identifyDialogState.fileList = picList.map((item,index)=>{
+        return {
+          name: index,
+          url: import.meta.env.VITE_API_URL + item
+        }
+      })
+    }
+  }
 };
 
-const onSubmitIdentify = () => {
-    identifyFormRef.value.validate(async(valid: boolean) => {
-        if(valid){
-            if(identifyDialogState.title === '新增'){
-                let { hazopId, jhaId, phaId, sclId, analogyId, ...data } = identifyDialogState.identifyForm
-                let res = await identifyApi().addIdentify(data);
-                if(res.data.code === 100){
-                    emit('refresh',1,res.data.data)
-                    identifyDialogState.identifyDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '新增成功'
-                    })
+// 图片上传
+const showTip = () => {
+  ElMessage({
+    type: 'warning',
+    message: '超出文件上传数量'
+  });
+}
 
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }else{
-                let res = await identifyApi().modIdentify(identifyDialogState.identifyForm)
-                if(res.data.code === 100){
-                    emit('refresh',2,identifyDialogState.identifyForm)
-                    identifyDialogState.identifyDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '编辑成功'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }
-        }else{
-            ElMessage({
-                type: 'warning',
-                message: '请完善基本信息',
-            });
-        }
+const picSize = async (rawFile: any) => {
+  if (rawFile.size / 1024 / 1024 > 5) {
+    ElMessage({
+      type: 'warning',
+      message: '文件大小不能超过5M。'
+    });
+    return false
+  }
+};
+
+const handlePictureCardPreview = (uploadFile: { url: string }) => {
+  identifyDialogState.dialogImageUrl = uploadFile.url!;
+  identifyDialogState.dialogVisible = true;
+};
+
+const upload = async (params: any) => {
+  // const formData = new FormData();
+  // formData.append('file', state.fileList[0].raw);
+  let reader = new FileReader();
+  reader.readAsArrayBuffer(params.file);
+
+  reader.onload = async () => {
+    axios.post(identifyDialogState.uploadUrl, reader.result, {
+      headers: {uid: Number(userInfos.value.uid), tk: Cookies.get('token')}
+    }).then(res => {
+      if (res.data.code === 100) {
+        console.log(res.data.data)
+      }
+    });
+  };
+};
+
+const handleAvatarSuccess: UploadProps['onSuccess'] = (
+    res,
+    uploadFile
+) => {
+  if (res.code == 100) {
+    identifyDialogState.identifyForm.fileData = res.data
+  }else{
+    ElMessage({
+      type: 'warning',
+      message: res.msg
     })
+  }
+}
+const handleRemove: UploadProps['onRemove'] = (uploadFile, uploadFiles) => {
+  console.log(uploadFile, uploadFiles)
+}
+
+const onSubmitIdentify = () => {
+  identifyFormRef.value.validate(async (valid: boolean) => {
+    if (valid) {
+      if (identifyDialogState.title === '新增') {
+        let {hazopId, jhaId, phaId, sclId, analogyId, ...data} = identifyDialogState.identifyForm
+        let res = await identifyApi().addIdentify(data);
+        if (res.data.code === 100) {
+          emit('refresh', 1, res.data.data)
+          identifyDialogState.identifyDialogVisible = false;
+          ElMessage({
+            type: 'success',
+            message: '新增成功'
+          })
+          identifyDialogState.fileList = []
+        } else {
+          ElMessage({
+            type: 'warning',
+            message: res.data.msg,
+          });
+        }
+      } else {
+        if(identifyDialogState.fileList.length == 0){
+          identifyDialogState.identifyForm.fileData = ''
+        }
+        let res = await identifyApi().modIdentify(identifyDialogState.identifyForm)
+        if (res.data.code === 100) {
+          emit('refresh', 2, identifyDialogState.identifyForm)
+          identifyDialogState.identifyDialogVisible = false;
+          ElMessage({
+            type: 'success',
+            message: '编辑成功'
+          })
+          identifyDialogState.fileList = []
+        } else {
+          ElMessage({
+            type: 'warning',
+            message: res.data.msg,
+          });
+        }
+      }
+    } else {
+      ElMessage({
+        type: 'warning',
+        message: '请完善基本信息',
+      });
+    }
+  })
 }
 
 const emit = defineEmits(['refresh'])
 
 defineExpose({
-    showIdentifyDialog
+  showIdentifyDialog
 })
 </script>
 

--
Gitblit v1.9.2