From 03f0e2a3220106ec2a9dd8f53d3ef5ab824c3ae7 Mon Sep 17 00:00:00 2001
From: 马宇豪 <978517621@qq.com>
Date: 星期五, 10 一月 2025 09:47:02 +0800
Subject: [PATCH] 添加OCR

---
 src/views/specialCheck/components/feedbackDetails.vue |  245 +++++++++++++++++++++++++++---------------------
 1 files changed, 139 insertions(+), 106 deletions(-)

diff --git a/src/views/specialCheck/components/feedbackDetails.vue b/src/views/specialCheck/components/feedbackDetails.vue
index bd6ee74..8a38697 100644
--- a/src/views/specialCheck/components/feedbackDetails.vue
+++ b/src/views/specialCheck/components/feedbackDetails.vue
@@ -5,10 +5,11 @@
         :close-on-click-modal="false"
         width="75%"
         center
+        @close="resetForm()"
     >
          <div slot="title" class="dialog-title">
             <span></span>
-            <div class="">烟花爆竹批发企业检查情况反馈表</div>
+            <div class="">烟花爆竹{{enterpriseType==1?'批发':'零售'}}企业检查情况反馈表</div>
             <span>
                 <el-button type="primary" @click="openSelfCheck()">查看企业自查表</el-button>
             </span>
@@ -17,98 +18,98 @@
             <div class="feed-tit">
                 <div>企业名称: <span class="m-color">{{ corpInfo.enterpriseName }}</span></div>
                 <div>所属省市县: <span class="m-color">{{ corpInfo.enterpriseProvince + corpInfo.enterpriseCity + corpInfo.enterpriseArea }}</span></div>
-                <div>检查层级: <span class="m-color">{{ corpInfo.checkUnitType == 1 ? '省级':(corpInfo.checkUnitType == 2 ? '市级' : '区县级') }}</span></div>
+                <div>检查层级: <span class="m-color">{{ corpInfo.checkUnitType == 1 ? '省级':(corpInfo.checkUnitType == 2 ? '地(州、市)级' : '区县级') }}</span></div>
                 <div>检查单位: <span class="m-color">{{ corpInfo.checkUnit }}</span></div>
             </div>
-            <div v-if="(unitType==1 && checkData.provinceCheckStatus==0)||(unitType==2 && checkData.cityCheckStatus==0)||(unitType==3 && checkData.areaCheckStatus==0)">
-            <el-form :model="feedbackForm" :rules="rules" ref="feedbackForm" class="demo-ruleForm">
-            <el-row :gutter="40" type="flex" align="middle" style="margin: 20px 0">
-                <el-col :span="8">
-                    <el-form-item label="检查时间:" prop="checkTime" style="display: flex;align-items: center">
-<!--                    <span style="white-space: nowrap">检查时间:</span>-->
-                    <el-date-picker
-                        v-model="feedbackForm.checkTime"
-                        type="datetime"
-                        value-format="yyyy-MM-dd HH:mm:ss"
-                        placeholder="选择日期时间">
-                    </el-date-picker>
-                    </el-form-item>
-                </el-col>
-                <el-col :span="12" style="display: flex;align-items: center">
-                    <el-form-item label="是否检查出隐患:" prop="hiddendangerStatus" style="display: flex;align-items: center">
-<!--                    <span style="white-space: nowrap">是否检查出隐患:</span>-->
-                    <el-radio-group v-model="feedbackForm.hiddendangerStatus">
-                        <el-radio :label="1">是</el-radio>
-                        <el-radio :label="0">否</el-radio>
-                    </el-radio-group>
-                    </el-form-item>
-                </el-col>
-            </el-row>
-            <div class="report-list" v-if="feedbackForm.hiddendangerStatus == 1">
-                <table class="report-table">
-                    <th class="m-color b-font" style="background: #337ecc;color: #fff">检查情况</th>
-                    <tr><td class="m-color">序号</td><td class="m-color">检查出的隐患问题</td><td class="m-color">隐患等级</td><td class="m-color">操作</td></tr>
-                    <tr v-for="(item,index) in feedbackForm.hiddendangerInfos">
-                        <td>{{index + 1}}</td>
-                        <td>
-                            <el-input type="textarea" :rows="1" placeholder="请输入内容" v-model="item.spotCheckHiddendanger"></el-input>
-                        </td>
-                        <td>
-                            <el-radio-group v-model="item.hiddendangerLevel">
-                                <el-radio :label="1">一般隐患</el-radio>
-                                <el-radio :label="2">重大隐患</el-radio>
-                            </el-radio-group>
-                        </td>
-                        <td>
-                            <el-button type="text" @click="deleteItem(index)">删除</el-button>
-                        </td>
-                    </tr>
-                    <tr style="text-align: center"><el-button icon="el-icon-plus" type="primary" plain round @click="addItem()">添加行</el-button></tr>
-                    <tr class="m-color b-font" style="text-align: center">执法处罚情况</tr>
-                    <tr>
-                        <td class="m-color w-25 mid">罚款金额(万元)</td>
-                        <td class="w-25 mid">
-                            <el-form-item prop="amerceMoney">
-                                <el-input v-model="feedbackForm.amerceMoney" type="number" placeholder="请输入罚款金额,未罚款则填“0”"></el-input>
-                            </el-form-item>
-                        </td>
-                        <td class="m-color w-25 mid">是否责令停产整顿</td>
-                        <td class="w-25 mid">
-                            <el-form-item prop="stopProductionStatus">
-                                <el-radio-group v-model="feedbackForm.stopProductionStatus">
+            <div style="width: 100%" v-if="(unitType==1 && !provinceCheckStatus)||(unitType==2 && !cityCheckStatus)||(unitType==3 && !areaCheckStatus)">
+                <el-form :model="feedbackForm" :rules="rules" ref="feedbackForm" class="demo-ruleForm">
+                <el-row :gutter="40" type="flex" align="middle" style="margin: 20px 0">
+                    <el-col :span="8">
+                        <el-form-item label="检查时间:" prop="checkTime" style="display: flex;align-items: center">
+    <!--                    <span style="white-space: nowrap">检查时间:</span>-->
+                        <el-date-picker
+                            v-model="feedbackForm.checkTime"
+                            type="datetime"
+                            value-format="yyyy-MM-dd HH:mm:ss"
+                            placeholder="选择日期时间">
+                        </el-date-picker>
+                        </el-form-item>
+                    </el-col>
+                    <el-col :span="12" style="display: flex;align-items: center">
+                        <el-form-item label="是否检查出隐患:" prop="hiddendangerStatus" style="display: flex;align-items: center">
+    <!--                    <span style="white-space: nowrap">是否检查出隐患:</span>-->
+                        <el-radio-group v-model="feedbackForm.hiddendangerStatus">
+                            <el-radio :label="1">是</el-radio>
+                            <el-radio :label="0">否</el-radio>
+                        </el-radio-group>
+                        </el-form-item>
+                    </el-col>
+                </el-row>
+                <div class="report-list" v-if="feedbackForm.hiddendangerStatus == 1">
+                    <table class="report-table">
+                        <th class="m-color b-font" style="background: #337ecc;color: #fff">检查情况</th>
+                        <tr><td class="m-color">序号</td><td class="m-color">检查出的隐患问题</td><td class="m-color">隐患等级</td><td class="m-color">操作</td></tr>
+                        <tr v-for="(item,index) in feedbackForm.hiddendangerInfos">
+                            <td>{{index + 1}}</td>
+                            <td>
+                                <el-input type="textarea" :rows="1" placeholder="请输入内容" v-model="item.spotCheckHiddendanger"></el-input>
+                            </td>
+                            <td>
+                                <el-radio-group v-model="item.hiddendangerLevel">
+                                    <el-radio :label="1">一般隐患</el-radio>
+                                    <el-radio :label="2">重大隐患</el-radio>
+                                </el-radio-group>
+                            </td>
+                            <td>
+                                <el-button type="text" @click="deleteItem(index)">删除</el-button>
+                            </td>
+                        </tr>
+                        <tr style="text-align: center"><el-button icon="el-icon-plus" style="height: 32px;padding: 0 30px;margin: 12px" type="primary" plain round @click="addItem()">添加行</el-button></tr>
+                        <tr class="m-color b-font" style="text-align: center">执法处罚情况</tr>
+                        <tr>
+                            <td class="m-color w-25 mid">罚款金额(万元)</td>
+                            <td class="w-25 mid">
+                                <el-form-item prop="amerceMoney">
+                                    <el-input v-model="feedbackForm.amerceMoney" type="number" placeholder="请输入罚款金额,未罚款则填“0”"></el-input>
+                                </el-form-item>
+                            </td>
+                            <td class="m-color w-25 mid">是否责令停产整顿</td>
+                            <td class="w-25 mid">
+                                <el-form-item prop="stopProductionStatus">
+                                    <el-radio-group v-model="feedbackForm.stopProductionStatus">
+                                        <el-radio :label="1">是</el-radio>
+                                        <el-radio :label="0">否</el-radio>
+                                    </el-radio-group>
+                                </el-form-item>
+                            </td>
+                        </tr>
+                        <tr>
+                            <td class="m-color w-25 mid">是否吊销许可证</td>
+                            <td class="w-25 mid">
+                                <el-form-item prop="revokeLicenseStatus">
+                                <el-radio-group v-model="feedbackForm.revokeLicenseStatus">
                                     <el-radio :label="1">是</el-radio>
                                     <el-radio :label="0">否</el-radio>
                                 </el-radio-group>
-                            </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                        <td class="m-color w-25 mid">是否吊销许可证</td>
-                        <td class="w-25 mid">
-                            <el-form-item prop="revokeLicenseStatus">
-                            <el-radio-group v-model="feedbackForm.revokeLicenseStatus">
-                                <el-radio :label="1">是</el-radio>
-                                <el-radio :label="0">否</el-radio>
-                            </el-radio-group>
-                            </el-form-item>
-                        </td>
-                        <td class="m-color w-25 mid">是否暂扣许可证</td>
-                        <td class="w-25 mid">
-                            <el-form-item prop="detainLicenseStatus">
-                            <el-radio-group v-model="feedbackForm.detainLicenseStatus">
-                                <el-radio :label="1">是</el-radio>
-                                <el-radio :label="0">否</el-radio>
-                            </el-radio-group>
-                            </el-form-item>
-                        </td>
-                    </tr>
-                </table>
-            </div>
-            </el-form>
-            <div style="display: flex;justify-content: center;margin: 20px 0">
-                <el-button @click="confirmBack()">返回列表</el-button>
-                <el-button type="primary" @click="confirmSubmit('feedbackForm')">提交</el-button>
-            </div>
+                                </el-form-item>
+                            </td>
+                            <td class="m-color w-25 mid">是否暂扣许可证</td>
+                            <td class="w-25 mid">
+                                <el-form-item prop="detainLicenseStatus">
+                                <el-radio-group v-model="feedbackForm.detainLicenseStatus">
+                                    <el-radio :label="1">是</el-radio>
+                                    <el-radio :label="0">否</el-radio>
+                                </el-radio-group>
+                                </el-form-item>
+                            </td>
+                        </tr>
+                    </table>
+                </div>
+                </el-form>
+                <div style="display: flex;justify-content: center;margin: 20px 0">
+                    <el-button @click="confirmBack()">返回列表</el-button>
+                    <el-button type="primary" v-stop-re-click @click="confirmSubmit('feedbackForm')">提交</el-button>
+                </div>
             </div>
         </div>
 <!--        <div style="margin-top: 20px;text-align: center">-->
@@ -119,10 +120,10 @@
             <div class="m-color data-time">{{tabCheckTime}}</div>
             <el-tabs v-model="activeTab" type="border-card" @tab-click="handleSwitch">
                 <el-tab-pane :label="unitType==1 ? '本级': '省级'" name="1">
-                    <div v-if="checkData.provinceCheckStatus == 1" class="record-list">
+                    <div v-if="provinceCheckStatus == 1" class="record-list">
                         <div class="record-item">
                             <table class="record-table">
-                                <tr class="m-color b-font" style="background: #409EFF;color: #fff;text-align: center">烟花爆竹批发企业检查情况反馈表</tr>
+                                <tr class="m-color b-font" style="background: #034ea2;color: #fff;text-align: center">烟花爆竹{{enterpriseType==1?'批发':'零售'}}企业检查情况反馈表</tr>
                                 <tr>
                                     <td class="m-color w-50">被检查企业名称</td>
                                     <td class="m-color w-50">所属省市县</td>
@@ -191,7 +192,7 @@
                                     </td>
                                 </tr>
                                 <tr style="text-align: center" v-if="unitType == 1">
-                                    <el-button type="primary" icon="el-icon-edit" plain @click="editRecord(1)">修改</el-button>
+                                    <el-button style="height: 32px;padding: 0 30px;margin: 12px" type="primary" icon="el-icon-edit" plain @click="editRecord(1)">修改</el-button>
                                 </tr>
                             </table>
                         </div>
@@ -200,11 +201,11 @@
                         暂无本级检查反馈
                     </div>
                 </el-tab-pane>
-                <el-tab-pane :label="unitType==2 ? '本级': '市级'" name="2">
-                    <div v-if="checkData.cityCheckStatus == 1" class="record-list">
+                <el-tab-pane :label="unitType==2 ? '本级': '地(州、市)级'" name="2">
+                    <div v-if="cityCheckStatus == 1" class="record-list">
                         <div class="record-item">
                             <table class="record-table">
-                                <tr class="m-color b-font" style="background: #409EFF;color: #fff;text-align: center">烟花爆竹批发企业检查情况反馈表</tr>
+                                <tr class="m-color b-font" style="background: #034ea2;color: #fff;text-align: center">烟花爆竹{{enterpriseType==1?'批发':'零售'}}企业检查情况反馈表</tr>
                                 <tr>
                                     <td class="m-color w-50">被检查企业名称</td>
                                     <td class="m-color w-50">所属省市县</td>
@@ -220,7 +221,7 @@
                                     <td class="m-color w-25">是否检查出隐患问题</td>
                                 </tr>
                                 <tr>
-                                    <td class="w-25">市级</td>
+                                    <td class="w-25">地(州、市)级</td>
                                     <td class="w-25">{{ checkData.cityCheckName }}</td>
                                     <td class="w-25">{{ checkData.cityCheckTime }}</td>
                                     <td class="w-25">{{ checkData.cityHiddendangerStatus == 1 ? '是' : '否' }}</td>
@@ -273,7 +274,7 @@
                                     </td>
                                 </tr>
                                 <tr style="text-align: center" v-if="unitType == 2">
-                                    <el-button type="primary" icon="el-icon-edit" plain @click="editRecord(2)">修改</el-button>
+                                    <el-button style="height: 32px;padding: 0 30px;margin: 12px" type="primary" icon="el-icon-edit" plain @click="editRecord(2)">修改</el-button>
                                 </tr>
                             </table>
                         </div>
@@ -283,10 +284,10 @@
                     </div>
                 </el-tab-pane>
                 <el-tab-pane :label="unitType==3 ? '本级': '区县级'" name="3">
-                    <div v-if="checkData.areaCheckStatus == 1" class="record-list">
+                    <div v-if="areaCheckStatus == 1" class="record-list">
                         <div class="record-item">
                             <table class="record-table">
-                                <tr class="m-color b-font" style="background: #409EFF;color: #fff;text-align: center">烟花爆竹批发企业检查情况反馈表</tr>
+                                <tr class="m-color b-font" style="background: #034ea2;color: #fff;text-align: center">烟花爆竹{{enterpriseType==1?'批发':'零售'}}企业检查情况反馈表</tr>
                                 <tr>
                                     <td class="m-color w-50">被检查企业名称</td>
                                     <td class="m-color w-50">所属省市县</td>
@@ -355,7 +356,7 @@
                                     </td>
                                 </tr>
                                 <tr style="text-align: center" v-if="unitType == 3">
-                                    <el-button type="primary" icon="el-icon-edit" plain @click="editRecord(3)">修改</el-button>
+                                    <el-button style="height: 32px;padding: 0 30px;margin: 12px" type="primary" icon="el-icon-edit" plain @click="editRecord(3)">修改</el-button>
                                 </tr>
                             </table>
                         </div>
@@ -416,7 +417,7 @@
                                 <el-button type="text" @click="deleteEditItem(index)">删除</el-button>
                             </td>
                         </tr>
-                        <tr style="text-align: center"><el-button type="primary" plain icon="el-icon-plus" @click="addEditItem()">添加行</el-button></tr>
+                        <tr style="text-align: center"><el-button style="height: 32px;padding: 0 30px;margin-top: 6px" type="primary" plain icon="el-icon-plus" @click="addEditItem()">添加行</el-button></tr>
                     </table>
                 </div>
                 <el-row :gutter="80" v-if="editForm.hiddendangerStatus==1">
@@ -455,7 +456,7 @@
             </el-form>
             <span slot="footer" class="dialog-footer">
               <el-button @click="editDialog = false">取消</el-button>
-              <el-button type="primary" @click="postEdit('editForm')">提交</el-button>
+              <el-button type="primary" v-stop-re-click @click="postEdit('editForm')">提交</el-button>
             </span>
         </el-dialog>
         <check-details ref="report"></check-details>
@@ -473,6 +474,10 @@
             return{
                 id: null,
                 unitType: null,
+                provinceCheckStatus: null,
+                cityCheckStatus: null,
+                areaCheckStatus: null,
+                enterpriseType: null,
                 dialogVisible:false,
                 editDialog: false,
                 activeTab: '1',
@@ -521,6 +526,10 @@
                 }
             }
         },
+        created() {
+            const t = this
+            console.log(t.unitType,t.checkData,'data')
+        },
         watch: {
         },
         methods:{
@@ -530,6 +539,7 @@
             openSelfCheck(){
                 const t = this
                 t.$refs.report.id = t.id
+                t.$refs.report.enterpriseType = t.enterpriseType
                 t.$refs.report.getEnterpriseInfo()
                 t.$refs.report.dialogVisible = true
             },
@@ -549,14 +559,17 @@
                 let res = await getSpotCheckReportInfo({id: t.id})
                 if(res.data.code === "200"){
                     if(res.data.result == null){
-                        t.checkData.provinceCheckStatus = 0
-                        t.checkData.cityCheckStatus = 0
-                        t.checkData.areaCheckStatus = 0
+                        t.provinceCheckStatus = null
+                        t.cityCheckStatus = null
+                        t.areaCheckStatus = null
                         t.checkData.provinceCheckTime = ''
                         t.checkData.cityCheckTime = ''
                         t.checkData.areaCheckTime = ''
                     }else{
                         t.checkData = res.data.result
+                        t.provinceCheckStatus = res.data.result.provinceCheckStatus
+                        t.cityCheckStatus = res.data.result.cityCheckStatus
+                        t.areaCheckStatus = res.data.result.areaCheckStatus
                         t.tabCheckTime = res.data.result.provinceCheckTime
                     }
 
@@ -639,6 +652,7 @@
                             detainLicenseStatus: null
                         },
                         t.dialogVisible = false
+                        t.getSpotCheckReportInfo()
                     } else {
                         console.log('error submit!!');
                         return false;
@@ -759,7 +773,26 @@
                         console.log('error submit!!');
                         return false;
                     }
-                });
+                })
+            },
+            resetForm(){
+                this.activeTab = '1'
+                this.feedbackForm = {
+                    id: null,
+                    checkTime: '',
+                    hiddendangerStatus: null,
+                    hiddendangerInfos: [
+                        {
+                            spotCheckHiddendanger: '',
+                            hiddendangerLevel: null
+                        }
+                    ],
+                    amerceStatus: null,
+                    amerceMoney: null,
+                    stopProductionStatus: null,
+                    revokeLicenseStatus: null,
+                    detainLicenseStatus: null
+                }
             },
             resetEdit(){
                 this.editForm = {
@@ -1001,7 +1034,7 @@
                         width: 75%;
                     }
                     &.dark-bg{
-                        background: #409EFF;
+                        background: #034ea2;
                         color: #fff;
                     }
                     &.overText{

--
Gitblit v1.9.2