From 8f03059619b5a5e9574b71d2ada27b76db2ffd7a Mon Sep 17 00:00:00 2001
From: Admin <978517621@qq.com>
Date: 星期五, 18 十一月 2022 16:48:28 +0800
Subject: [PATCH] 新增

---
 src/views/specialCheck/components/feedbackDetails.vue |  761 +++++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 587 insertions(+), 174 deletions(-)

diff --git a/src/views/specialCheck/components/feedbackDetails.vue b/src/views/specialCheck/components/feedbackDetails.vue
index 46bfba4..bd6ee74 100644
--- a/src/views/specialCheck/components/feedbackDetails.vue
+++ b/src/views/specialCheck/components/feedbackDetails.vue
@@ -10,42 +10,51 @@
             <span></span>
             <div class="">烟花爆竹批发企业检查情况反馈表</div>
             <span>
-                <el-button type="primary">查看企业自查表</el-button>
+                <el-button type="primary" @click="openSelfCheck()">查看企业自查表</el-button>
             </span>
          </div>
         <div class="feed-report">
             <div class="feed-tit">
-                <div>企业名称: <span class="m-color">沙湾市国华商贸有限公司</span></div>
-                <div>所属省市县: <span class="m-color">新疆维吾尔自治区塔城地区沙湾县</span></div>
-                <div>检查层级: <span class="m-color">省级</span></div>
-                <div>检查单位: <span class="m-color">新疆维吾尔自治区应急管理厅</span></div>
+                <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.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" style="display: flex;align-items: center">
-                    <span style="white-space: nowrap">检查时间:</span>
+                <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">
-                    <span style="white-space: nowrap">是否检查出隐患:</span>
-                    <el-radio-group v-model="feedbackForm.isRisky">
+                    <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-show="feedbackForm.isRisky == 1">
+            <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.riskList">
+                    <tr v-for="(item,index) in feedbackForm.hiddendangerInfos">
                         <td>{{index + 1}}</td>
-                        <td><el-input type="textarea" :rows="1" placeholder="请输入内容" v-model="item.info"></el-input></td>
                         <td>
-                            <el-radio-group v-model="item.level">
+                            <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>
@@ -55,73 +64,72 @@
                         </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-50">隐患总数</td>
-                        <td class="m-color w-50">重大隐患数量</td>
-                    </tr>
-                    <tr>
-                        <td class="w-50 mid"><el-input v-model="feedbackForm.totalRisk"></el-input></td>
-                        <td class="w-50 mid"><el-input v-model="feedbackForm.majorNum"></el-input></td>
-                    </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-input v-model="feedbackForm.fine"></el-input></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-radio-group v-model="feedbackForm.isRectify">
-                                <el-radio :label="1">是</el-radio>
-                                <el-radio :label="0">否</el-radio>
-                            </el-radio-group>
+                            <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-radio-group v-model="feedbackForm.isRevoke">
+                            <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-radio-group v-model="feedbackForm.isSuspended">
+                            <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>
-            <div>
-                注:重大隐患判定标准:<el-link href="https://www.mem.gov.cn/gk/zcjd/201802/t20180202233295.shtml" target="_blank" type="primary">https://www.mem.gov.cn/gk/zcjd/201802/t20180202 233295.shtml</el-link>
-            </div>
+            </el-form>
             <div style="display: flex;justify-content: center;margin: 20px 0">
                 <el-button @click="confirmBack()">返回列表</el-button>
-                <el-button type="primary">提交</el-button>
+                <el-button type="primary" @click="confirmSubmit('feedbackForm')">提交</el-button>
+            </div>
             </div>
         </div>
+<!--        <div style="margin-top: 20px;text-align: center">-->
+<!--            重大隐患判定标准:<el-link href="https://www.mem.gov.cn/gk/zcjd/201802/t20180202233295.shtml" target="_blank" type="primary">https://www.mem.gov.cn/gk/zcjd/201802/t20180202 233295.shtml</el-link>-->
+<!--        </div>-->
+        <el-divider/>
         <div class="feed-data">
-            <div class="m-color data-time">2022年04月07日</div>
+            <div class="m-color data-time">{{tabCheckTime}}</div>
             <el-tabs v-model="activeTab" type="border-card" @tab-click="handleSwitch">
-                <el-tab-pane label="本级" name="1">
-                    <div class="record-list">
-                        <div class="record-item" v-for="(item,index) in recordList" :key="index">
+                <el-tab-pane :label="unitType==1 ? '本级': '省级'" name="1">
+                    <div v-if="checkData.provinceCheckStatus == 1" class="record-list">
+                        <div class="record-item">
                             <table class="record-table">
-                                <tr>
-                                    <td class="w-75 m-color b-font dark-bg">烟花爆竹批发企业检查情况反馈表</td>
-                                    <td class="w-25">
-                                        <el-button type="primary" icon="el-icon-edit" plain @click="editRecord(index)">编辑</el-button>
-                                    </td>
-                                </tr>
+                                <tr class="m-color b-font" style="background: #409EFF;color: #fff;text-align: center">烟花爆竹批发企业检查情况反馈表</tr>
                                 <tr>
                                     <td class="m-color w-50">被检查企业名称</td>
                                     <td class="m-color w-50">所属省市县</td>
                                 </tr>
                                 <tr>
-                                    <td class="w-50">沙湾市国华商贸有限公司</td>
-                                    <td class="w-50">新疆维吾尔自治区乌鲁木齐市米东区</td>
+                                    <td class="w-50">{{ checkData.enterpriseName }}</td>
+                                    <td class="w-50">{{ checkData.enterpriseProvince + checkData.enterpriseCity + checkData.enterpriseArea }}</td>
                                 </tr>
                                 <tr>
                                     <td class="m-color w-25">检查层级</td>
@@ -131,15 +139,28 @@
                                 </tr>
                                 <tr>
                                     <td class="w-25">省级</td>
-                                    <td class="w-25">新疆维吾尔自治区应急管理厅</td>
-                                    <td class="w-25">{{ item.checkTime }}</td>
-                                    <td class="w-25">{{ item.isRisky }}</td>
+                                    <td class="w-25">{{ checkData.provinceCheckName }}</td>
+                                    <td class="w-25">{{ checkData.provinceCheckTime }}</td>
+                                    <td class="w-25">{{ checkData.provinceHiddendangerStatus == 1 ? '是' : '否' }}</td>
                                 </tr>
-                                <tr v-if="item.isRisky=='1'"><td class="m-color">序号</td><td class="m-color">检查出的隐患问题</td><td class="m-color">隐患等级</td></tr>
-                                <tr v-if="item.isRisky=='1'" v-for="(x,i) in item.riskList">
-                                    <td>{{ i + 1 }}</td>
-                                    <td class="overText">{{ x.info }}</td>
-                                    <td>{{ x.level }}</td>
+                                <tr class="m-color b-font" style="text-align: center" v-if="checkData.areaHiddendangerStatus == 1">检查情况</tr>
+                                <tr v-if="checkData.provinceHiddendangerStatus == 1">
+                                    <td class="m-color w-5">序号</td>
+                                    <td class="m-color w-25">检查出的隐患问题</td>
+                                    <td class="m-color w-10">隐患等级</td>
+                                    <td class="m-color w-25">整改措施</td>
+                                    <td class="m-color w-10">整改资金(元)</td>
+                                    <td class="m-color w-10">责任人</td>
+                                    <td class="m-color w-15">隐患状态</td>
+                                </tr>
+                                <tr v-if="checkData.provinceHiddendangerStatus == 1" v-for="(x,i) in checkData.provinceHiddendangerInfos">
+                                    <td class="w-5">{{ i + 1 }}</td>
+                                    <td class="overText w-25">{{ x.spotCheckHiddendanger }}</td>
+                                    <td class="w-10">{{ x.hiddendangerLevel==1?'一般隐患':'重大隐患' }}</td>
+                                    <td class="overText w-25">{{ x.rectifyMeasure }}</td>
+                                    <td class="w-10">{{ x.rectifyPrice }}</td>
+                                    <td class="overText w-10">{{ x.chargePerson }}</td>
+                                    <td class="w-15">{{ x.rectifyStatus==1?'已整改完成':'未整改完成' }}</td>
                                 </tr>
                                 <tr class="m-color b-font" style="text-align: center">合计</tr>
                                 <tr>
@@ -147,35 +168,202 @@
                                     <td class="m-color w-50">重大隐患数量</td>
                                 </tr>
                                 <tr>
-                                    <td class="w-50">{{ item.totalRisk }}</td>
-                                    <td class="w-50">{{ item.majorNum }}</td>
+                                    <td class="w-50">{{ checkData.provinceHiddendangerSum ? checkData.provinceHiddendangerSum : 0}}</td>
+                                    <td class="w-50">{{ checkData.provinceMajorHiddendangerNum ? checkData.provinceMajorHiddendangerNum : 0}}</td>
                                 </tr>
-                                <tr v-if="item.isRisky=='1'" class="m-color b-font" style="text-align: center">执法处罚情况</tr>
-                                <tr v-if="item.isRisky=='1'">
+                                <tr v-if="checkData.provinceHiddendangerStatus== 1" class="m-color b-font" style="text-align: center">执法处罚情况</tr>
+                                <tr v-if="checkData.provinceHiddendangerStatus== 1">
                                     <td class="m-color w-25">罚款金额(万元)</td>
-                                    <td class="w-25">{{ item.fine }}</td>
+                                    <td class="w-25">{{ checkData.provinceAmerceMoney }}</td>
                                     <td class="m-color w-25">是否责令停产整顿</td>
                                     <td class="w-25">
-                                        {{ item.isRectify }}
+                                        {{ checkData.provinceStopProductionStatus == 1 ? '是': '否' }}
                                     </td>
                                 </tr>
-                                <tr v-if="item.isRisky=='1'">
+                                <tr v-if="checkData.provinceHiddendangerStatus== 1">
                                     <td class="m-color w-25">是否吊销许可证</td>
                                     <td class="w-25">
-                                        {{ item.isRevoke }}
+                                        {{ checkData.provinceRevokeLicenseStatus == 1 ? '是': '否' }}
                                     </td>
                                     <td class="m-color w-25">是否暂扣许可证</td>
                                     <td class="w-25">
-                                        {{ item.isSuspended }}
+                                        {{ checkData.provinceDetainLicenseStatus == 1 ? '是': '否' }}
                                     </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>
+                                </tr>
                             </table>
-                            <el-divider/>
                         </div>
                     </div>
+                    <div v-else style="font-size: 20px;font-weight: bolder;text-align: center">
+                        暂无本级检查反馈
+                    </div>
                 </el-tab-pane>
-                <el-tab-pane label="市级" name="2">市级</el-tab-pane>
-                <el-tab-pane label="县级" name="3">县级</el-tab-pane>
+                <el-tab-pane :label="unitType==2 ? '本级': '市级'" name="2">
+                    <div v-if="checkData.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>
+                                    <td class="m-color w-50">被检查企业名称</td>
+                                    <td class="m-color w-50">所属省市县</td>
+                                </tr>
+                                <tr>
+                                    <td class="w-50">{{ checkData.enterpriseName }}</td>
+                                    <td class="w-50">{{ checkData.enterpriseProvince + checkData.enterpriseCity + checkData.enterpriseArea }}</td>
+                                </tr>
+                                <tr>
+                                    <td class="m-color w-25">检查层级</td>
+                                    <td class="m-color w-25">检查单位</td>
+                                    <td class="m-color w-25">检查时间</td>
+                                    <td class="m-color w-25">是否检查出隐患问题</td>
+                                </tr>
+                                <tr>
+                                    <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>
+                                </tr>
+                                <tr class="m-color b-font" style="text-align: center" v-if="checkData.areaHiddendangerStatus == 1">检查情况</tr>
+                                <tr v-if="checkData.cityHiddendangerStatus == 1">
+                                    <td class="m-color w-5">序号</td>
+                                    <td class="m-color w-25">检查出的隐患问题</td>
+                                    <td class="m-color w-10">隐患等级</td>
+                                    <td class="m-color w-25">整改措施</td>
+                                    <td class="m-color w-10">整改资金(元)</td>
+                                    <td class="m-color w-10">责任人</td>
+                                    <td class="m-color w-15">隐患状态</td>
+                                </tr>
+                                <tr v-if="checkData.cityHiddendangerStatus == 1" v-for="(x,i) in checkData.cityHiddendangerInfos">
+                                    <td class="w-5">{{ i + 1 }}</td>
+                                    <td class="overText w-25">{{ x.spotCheckHiddendanger }}</td>
+                                    <td class="w-10">{{ x.hiddendangerLevel==1?'一般隐患':'重大隐患' }}</td>
+                                    <td class="overText w-25">{{ x.rectifyMeasure }}</td>
+                                    <td class="w-10">{{ x.rectifyPrice }}</td>
+                                    <td class="overText w-10">{{ x.chargePerson }}</td>
+                                    <td class="w-15">{{ x.rectifyStatus==1?'已整改完成':'未整改完成' }}</td>
+                                </tr>
+                                <tr class="m-color b-font" style="text-align: center">合计</tr>
+                                <tr>
+                                    <td class="m-color w-50">隐患总数</td>
+                                    <td class="m-color w-50">重大隐患数量</td>
+                                </tr>
+                                <tr>
+                                    <td class="w-50">{{ checkData.cityHiddendangerSum ? checkData.cityHiddendangerSum : 0}}</td>
+                                    <td class="w-50">{{ checkData.cityMajorHiddendangerNum ? checkData.cityMajorHiddendangerNum : 0}}</td>
+                                </tr>
+                                <tr v-if="checkData.cityHiddendangerStatus== 1" class="m-color b-font" style="text-align: center">执法处罚情况</tr>
+                                <tr v-if="checkData.cityHiddendangerStatus== 1">
+                                    <td class="m-color w-25">罚款金额(万元)</td>
+                                    <td class="w-25">{{ checkData.cityAmerceMoney }}</td>
+                                    <td class="m-color w-25">是否责令停产整顿</td>
+                                    <td class="w-25">
+                                        {{ checkData.cityStopProductionStatus == 1 ? '是': '否' }}
+                                    </td>
+                                </tr>
+                                <tr v-if="checkData.cityHiddendangerStatus== 1">
+                                    <td class="m-color w-25">是否吊销许可证</td>
+                                    <td class="w-25">
+                                        {{ checkData.cityRevokeLicenseStatus == 1 ? '是': '否' }}
+                                    </td>
+                                    <td class="m-color w-25">是否暂扣许可证</td>
+                                    <td class="w-25">
+                                        {{ checkData.cityDetainLicenseStatus == 1 ? '是': '否' }}
+                                    </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>
+                                </tr>
+                            </table>
+                        </div>
+                    </div>
+                    <div v-else style="font-size: 20px;font-weight: bolder;text-align: center">
+                        暂无本级检查反馈
+                    </div>
+                </el-tab-pane>
+                <el-tab-pane :label="unitType==3 ? '本级': '区县级'" name="3">
+                    <div v-if="checkData.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>
+                                    <td class="m-color w-50">被检查企业名称</td>
+                                    <td class="m-color w-50">所属省市县</td>
+                                </tr>
+                                <tr>
+                                    <td class="w-50">{{ checkData.enterpriseName }}</td>
+                                    <td class="w-50">{{ checkData.enterpriseProvince + checkData.enterpriseCity + checkData.enterpriseArea }}</td>
+                                </tr>
+                                <tr>
+                                    <td class="m-color w-25">检查层级</td>
+                                    <td class="m-color w-25">检查单位</td>
+                                    <td class="m-color w-25">检查时间</td>
+                                    <td class="m-color w-25">是否检查出隐患问题</td>
+                                </tr>
+                                <tr>
+                                    <td class="w-25">区县级</td>
+                                    <td class="w-25">{{ checkData.areaCheckName }}</td>
+                                    <td class="w-25">{{ checkData.areaCheckTime }}</td>
+                                    <td class="w-25">{{ checkData.areaHiddendangerStatus == 1 ? '是' : '否' }}</td>
+                                </tr>
+                                <tr class="m-color b-font" style="text-align: center" v-if="checkData.areaHiddendangerStatus == 1">检查情况</tr>
+                                <tr v-if="checkData.areaHiddendangerStatus == 1">
+                                    <td class="m-color w-5">序号</td>
+                                    <td class="m-color w-25">检查出的隐患问题</td>
+                                    <td class="m-color w-10">隐患等级</td>
+                                    <td class="m-color w-25">整改措施</td>
+                                    <td class="m-color w-10">整改资金(元)</td>
+                                    <td class="m-color w-10">责任人</td>
+                                    <td class="m-color w-15">隐患状态</td>
+                                </tr>
+                                <tr v-if="checkData.areaHiddendangerStatus == 1" v-for="(x,i) in checkData.areaHiddendangerInfos">
+                                    <td class="w-5">{{ i + 1 }}</td>
+                                    <td class="overText w-25">{{ x.spotCheckHiddendanger }}</td>
+                                    <td class="w-10">{{ x.hiddendangerLevel==1?'一般隐患':'重大隐患' }}</td>
+                                    <td class="overText w-25">{{ x.rectifyMeasure }}</td>
+                                    <td class="w-10">{{ x.rectifyPrice }}</td>
+                                    <td class="overText w-10">{{ x.chargePerson }}</td>
+                                    <td class="w-15">{{ x.rectifyStatus==1?'已整改完成':'未整改完成' }}</td>
+                                </tr>
+                                <tr class="m-color b-font" style="text-align: center">合计</tr>
+                                <tr>
+                                    <td class="m-color w-50">隐患总数</td>
+                                    <td class="m-color w-50">重大隐患数量</td>
+                                </tr>
+                                <tr>
+                                    <td class="w-50">{{ checkData.areaHiddendangerSum ? checkData.areaHiddendangerSum : 0}}</td>
+                                    <td class="w-50">{{ checkData.areaMajorHiddendangerNum ? checkData.areaMajorHiddendangerNum : 0 }}</td>
+                                </tr>
+                                <tr v-if="checkData.areaHiddendangerStatus== 1" class="m-color b-font" style="text-align: center">执法处罚情况</tr>
+                                <tr v-if="checkData.areaHiddendangerStatus== 1">
+                                    <td class="m-color w-25">罚款金额(万元)</td>
+                                    <td class="w-25">{{ checkData.areaAmerceMoney }}</td>
+                                    <td class="m-color w-25">是否责令停产整顿</td>
+                                    <td class="w-25">
+                                        {{ checkData.areaStopProductionStatus == 1 ? '是': '否' }}
+                                    </td>
+                                </tr>
+                                <tr v-if="checkData.areaHiddendangerStatus== 1">
+                                    <td class="m-color w-25">是否吊销许可证</td>
+                                    <td class="w-25">
+                                        {{ checkData.areaRevokeLicenseStatus == 1 ? '是': '否' }}
+                                    </td>
+                                    <td class="m-color w-25">是否暂扣许可证</td>
+                                    <td class="w-25">
+                                        {{ checkData.areaDetainLicenseStatus == 1 ? '是': '否' }}
+                                    </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>
+                                </tr>
+                            </table>
+                        </div>
+                    </div>
+                    <div v-else style="font-size: 20px;font-weight: bolder;text-align: center">
+                        暂无本级检查反馈
+                    </div>
+                </el-tab-pane>
             </el-tabs>
         </div>
 
@@ -186,21 +374,23 @@
             :close-on-click-modal="false"
             width="50%"
             center
+            @close="resetEdit()"
         >
-            <el-form ref="editFormRef" :model="editForm" label-width="160px" class="edit-form">
-                <el-row gutter="80">
+            <el-form ref="editForm" :rule="rules" :model="editForm" label-width="160px" class="edit-form">
+                <el-row :gutter="80">
                     <el-col :span="12">
-                        <el-form-item label="检查时间:">
+                        <el-form-item label="检查时间:" prop="checkTime">
                             <el-date-picker
                                 v-model="editForm.checkTime"
                                 type="datetime"
+                                value-format="yyyy-MM-dd HH:mm:ss"
                                 placeholder="选择日期时间">
                             </el-date-picker>
                         </el-form-item>
                     </el-col>
                     <el-col :span="12">
-                        <el-form-item label="是否检查出隐患问题:">
-                            <el-radio-group v-model="editForm.isRisky">
+                        <el-form-item label="是否检查出隐患问题:" prop="hiddendangerStatus">
+                            <el-radio-group v-model="editForm.hiddendangerStatus">
                                 <el-radio :label="1">是</el-radio>
                                 <el-radio :label="0">否</el-radio>
                             </el-radio-group>
@@ -208,14 +398,16 @@
                     </el-col>
                 </el-row>
 
-                <div class="form-list" v-if="editForm.isRisky==1">
+                <div class="form-list" v-if="editForm.hiddendangerStatus==1">
                     <table class="form-table">
                         <th><span>序号</span><span>检查出的隐患问题</span><span>隐患等级</span><span>操作</span></th>
-                        <tr v-for="(item,index) in editForm.riskList">
+                        <tr v-for="(item,index) in editForm.hiddendangerInfos">
                             <td class="num">{{index + 1}}</td>
-                            <td class="info"><el-input type="textarea" :rows="1" placeholder="请输入内容" v-model="item.info"></el-input></td>
+                            <td class="info">
+                                <el-input type="textarea" :rows="1" placeholder="请输入内容" v-model="item.spotCheckHiddendanger"></el-input>
+                            </td>
                             <td class="level">
-                                <el-radio-group v-model="item.level">
+                                <el-radio-group v-model="item.hiddendangerLevel">
                                     <el-radio :label="1">一般隐患</el-radio>
                                     <el-radio :label="2">重大隐患</el-radio>
                                 </el-radio-group>
@@ -227,45 +419,33 @@
                         <tr style="text-align: center"><el-button type="primary" plain icon="el-icon-plus" @click="addEditItem()">添加行</el-button></tr>
                     </table>
                 </div>
-                <el-row gutter="80" v-if="editForm.isRisky==1">
+                <el-row :gutter="80" v-if="editForm.hiddendangerStatus==1">
                     <el-col :span="12">
-                        <el-form-item label="隐患总数:">
-                            <el-input v-model="editForm.totalRisk"></el-input>
+                        <el-form-item label="罚款金额(万元):" prop="amerceMoney">
+                            <el-input v-model="editForm.amerceMoney" type="number" placeholder="请输入罚款金额,未罚款则填“0”"></el-input>
                         </el-form-item>
                     </el-col>
                     <el-col :span="12">
-                        <el-form-item label="是否责令停产整顿:">
-                            <el-radio-group v-model="editForm.isRectify">
+                        <el-form-item label="是否责令停产整顿:" prop="stopProductionStatus">
+                            <el-radio-group v-model="editForm.stopProductionStatus">
                                 <el-radio :label="1">是</el-radio>
                                 <el-radio :label="0">否</el-radio>
                             </el-radio-group>
                         </el-form-item>
                     </el-col>
                 </el-row>
-                <el-row gutter="80" v-if="editForm.isRisky==1">
+                <el-row :gutter="80" v-if="editForm.hiddendangerStatus==1">
                     <el-col :span="12">
-                        <el-form-item label="重大隐患数量:">
-                            <el-input v-model="editForm.majorNum"></el-input>
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="12">
-                        <el-form-item label="是否吊销许可证:">
-                            <el-radio-group v-model="editForm.isRevoke">
+                        <el-form-item label="是否吊销许可证:" prop="revokeLicenseStatus">
+                            <el-radio-group v-model="editForm.revokeLicenseStatus">
                                 <el-radio :label="1">是</el-radio>
                                 <el-radio :label="0">否</el-radio>
                             </el-radio-group>
                         </el-form-item>
                     </el-col>
-                </el-row>
-                <el-row gutter="80" v-if="editForm.isRisky==1">
                     <el-col :span="12">
-                        <el-form-item label="罚款金额(万元):">
-                            <el-input v-model="editForm.fine"></el-input>
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="12">
-                        <el-form-item label="是否暂扣许可证:">
-                            <el-radio-group v-model="editForm.isSuspended">
+                        <el-form-item label="是否暂扣许可证:" prop="detainLicenseStatus">
+                            <el-radio-group v-model="editForm.detainLicenseStatus">
                                 <el-radio :label="1">是</el-radio>
                                 <el-radio :label="0">否</el-radio>
                             </el-radio-group>
@@ -274,82 +454,70 @@
                 </el-row>
             </el-form>
             <span slot="footer" class="dialog-footer">
-              <el-button>取消</el-button>
-              <el-button type="primary">提交</el-button>
+              <el-button @click="editDialog = false">取消</el-button>
+              <el-button type="primary" @click="postEdit('editForm')">提交</el-button>
             </span>
         </el-dialog>
+        <check-details ref="report"></check-details>
     </el-dialog>
 </template>
 
 <script>
     import {computePageCount} from "@/utils";
-
+    import { saveSpotCheckReport, getSpotCheckReportInfo, updateSpotCheckReport } from "@/api/specialCheck"
+    import checkDetails from "../../selfCheck/components/checkDetails"
     export default {
-        name: "reportDetails",
+        name: "feedbackDetails",
+        components: {checkDetails},
         data(){
             return{
+                id: null,
+                unitType: null,
                 dialogVisible:false,
                 editDialog: false,
                 activeTab: '1',
+                corpInfo: {},
                 feedbackForm:{
+                    id: null,
                     checkTime: '',
-                    isRisky: '',
-                    riskList: [
+                    hiddendangerStatus: null,
+                    hiddendangerInfos: [
                         {
-                            info: '',
-                            level: ''
+                            spotCheckHiddendanger: '',
+                            hiddendangerLevel: null
                         }
                     ],
-                    totalRisk: '',
-                    majorNum: '',
-                    fine: '',
-                    isRectify: '',
-                    isRevoke: '',
-                    isSuspended: ''
+                    amerceStatus: null,
+                    amerceMoney: null,
+                    stopProductionStatus: null,
+                    revokeLicenseStatus: null,
+                    detainLicenseStatus: null
                 },
-                recordList:[
-                    {
-                        checkTime: '2022-11-02',
-                        isRisky: 1,
-                        riskList: [
-                            {
-                                info: '测试数据一',
-                                level: 1
-                            },
-                            {
-                                info: '测试数据二',
-                                level: 0
-                            }
-                        ],
-                        totalRisk: 1,
-                        majorNum: 0,
-                        fine: '2500',
-                        isRectify: 0,
-                        isRevoke: 0,
-                        isSuspended: 1
-                    },
-                    {
-                        checkTime: '2022-11-02',
-                        isRisky: 0,
-                        riskList: [],
-                        totalRisk: 0,
-                        majorNum: 0,
-                        fine: '',
-                        isRectify: 0,
-                        isRevoke: 0,
-                        isSuspended: 0
-                    }
-                ],
+                rules: {
+                    checkTime: [{ required: true, message: '请选择检查时间', trigger: 'blur' }],
+                    hiddendangerStatus: [{ required: true, message: '请选择是否查出隐患', trigger: 'blur' }],
+                    amerceMoney: [{ required: true, message: '请输入罚款金额(未罚款则填0)', trigger: 'blur' }],
+                    stopProductionStatus: [{ required: true, message: '请选择是否责令停产整顿', trigger: 'blur' }],
+                    revokeLicenseStatus: [{ required: true, message: '请选择是否吊销许可证', trigger: 'blur' }],
+                    detainLicenseStatus: [{ required: true, message: '请选择是否查出暂扣许可证', trigger: 'blur' }]
+                },
+                checkData:{},
+                tabCheckTime: '',
                 editForm:{
+                    id: null,
                     checkTime: '',
-                    isRisky: '',
-                    riskList: [],
-                    totalRisk: '',
-                    majorNum: '',
-                    fine: '',
-                    isRectify: '',
-                    isRevoke: '',
-                    isSuspended: ''
+                    hiddendangerStatus: null,
+                    hiddendangerInfos: [
+                        {
+                            spotCheckHiddendanger: '',
+                            hiddendangerLevel: null
+                        }
+                    ],
+                    amerceStatus: null,
+                    amerceMoney: null,
+                    stopProductionStatus: null,
+                    revokeLicenseStatus: null,
+                    detainLicenseStatus: null
                 }
             }
         },
@@ -359,35 +527,276 @@
             confirmBack(){
                 this.dialogVisible = false
             },
+            openSelfCheck(){
+                const t = this
+                t.$refs.report.id = t.id
+                t.$refs.report.getEnterpriseInfo()
+                t.$refs.report.dialogVisible = true
+            },
             handleSwitch(tab, event) {
-                console.log(tab, event);
+                const t = this
+                if(tab.index == 0){
+                    t.tabCheckTime = t.checkData.provinceCheckTime
+                }else if(tab.index == 1){
+                    t.tabCheckTime = t.checkData.cityCheckTime
+                }else{
+                    t.tabCheckTime = t.checkData.areaCheckTime
+                }
+            },
+
+            async getSpotCheckReportInfo(){
+                const t = this
+                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.checkData.provinceCheckTime = ''
+                        t.checkData.cityCheckTime = ''
+                        t.checkData.areaCheckTime = ''
+                    }else{
+                        t.checkData = res.data.result
+                        t.tabCheckTime = res.data.result.provinceCheckTime
+                    }
+
+                }else{
+                    t.$message({
+                        type:'warning',
+                        message:res.data.message
+                    })
+                }
             },
 
             addItem(){
                 const newItem = {
-                    info: '',
-                    level: ''
+                    spotCheckHiddendanger: '',
+                    hiddendangerLevel: null
                 }
-                this.feedbackForm.riskList.push(newItem)
+                this.feedbackForm.hiddendangerInfos.push(newItem)
             },
             deleteItem(i){
-                console.log(i)
-                this.feedbackForm.riskList.splice(i,1)
-            },
-            editRecord(index){
                 const t = this
+                if(t.feedbackForm.hiddendangerInfos.length == 1){
+                    t.$message({
+                        type:'warning',
+                        message: '检查的隐患信息不可为空'
+                    })
+                }else{
+                    t.feedbackForm.hiddendangerInfos.splice(i,1)
+                }
+            },
+
+            confirmSubmit(formName){
+                const t = this
+                t.$refs[formName].validate(async (valid) => {
+                    if(t.feedbackForm.hiddendangerStatus == 0){
+                        t.feedbackForm.hiddendangerInfos = []
+                        t.feedbackForm.amerceStatus = null
+                        t.feedbackForm.amerceMoney = null
+                        t.feedbackForm.stopProductionStatus = null
+                        t.feedbackForm.revokeLicenseStatus = null
+                        t.feedbackForm.detainLicenseStatus = null
+                    }
+                    if(t.feedbackForm.hiddendangerStatus == 1){
+                        if(t.feedbackForm.hiddendangerInfos.find((e) => e.spotCheckHiddendanger == '') || t.feedbackForm.hiddendangerInfos.find((e) => e.hiddendangerLevel == null)){
+                            t.$message({
+                                type:'warning',
+                                message: '请完善检查的隐患信息'
+                            })
+                            return
+                        }
+                    }
+                    if (valid) {
+                        if(t.feedbackForm.amerceMoney>0){t.feedbackForm.amerceStatus = 1}
+                        else{t.feedbackForm.amerceStatus = 0}
+                        let res = await saveSpotCheckReport(t.feedbackForm)
+                        if(res.data.code === "200"){
+                            t.$message({
+                                type:'success',
+                                message:'提交成功'
+                            })
+                        }else{
+                            t.$message({
+                                type:'warning',
+                                message:res.data.message
+                            })
+                        }
+                        t.feedbackForm = {
+                            id: null,
+                            checkTime: '',
+                            hiddendangerStatus: null,
+                            hiddendangerInfos: [
+                                {
+                                    spotCheckHiddendanger: '',
+                                    hiddendangerLevel: null
+                                }
+                            ],
+                            amerceStatus: null,
+                            amerceMoney: null,
+                            stopProductionStatus: null,
+                            revokeLicenseStatus: null,
+                            detainLicenseStatus: null
+                        },
+                        t.dialogVisible = false
+                    } else {
+                        console.log('error submit!!');
+                        return false;
+                    }
+                });
+            },
+
+            editRecord(type){
+                const t = this
+                t.editForm.id = t.checkData.id
+                if(type == 1){
+                    t.editForm.checkTime = t.checkData.provinceCheckTime
+                    t.editForm.hiddendangerStatus = t.checkData.provinceHiddendangerStatus
+                    if(t.checkData.provinceHiddendangerInfos == null || t.checkData.provinceHiddendangerInfos.length==0){
+                        t.editForm.hiddendangerInfos = [
+                            {
+                                spotCheckHiddendanger: '',
+                                hiddendangerLevel: null
+                            }
+                        ]
+                    }else{t.editForm.hiddendangerInfos = t.checkData.provinceHiddendangerInfos}
+                    t.editForm.amerceMoney = t.checkData.provinceAmerceMoney
+                    t.editForm.stopProductionStatus = t.checkData.provinceStopProductionStatus
+                    t.editForm.revokeLicenseStatus = t.checkData.provinceRevokeLicenseStatus
+                    t.editForm.detainLicenseStatus = t.checkData.provinceDetainLicenseStatus
+                } else if(type == 2){
+                    t.editForm.checkTime = t.checkData.cityCheckTime
+                    t.editForm.hiddendangerStatus = t.checkData.cityHiddendangerStatus
+                    if(t.checkData.cityHiddendangerInfos == null || t.checkData.cityHiddendangerInfos.length==0){
+                        t.editForm.hiddendangerInfos = [
+                            {
+                                spotCheckHiddendanger: '',
+                                hiddendangerLevel: null
+                            }
+                        ]
+                    }else{t.editForm.hiddendangerInfos = t.checkData.cityHiddendangerInfos}
+                    t.editForm.amerceMoney = t.checkData.cityAmerceMoney
+                    t.editForm.stopProductionStatus = t.checkData.cityStopProductionStatus
+                    t.editForm.revokeLicenseStatus = t.checkData.cityRevokeLicenseStatus
+                    t.editForm.detainLicenseStatus = t.checkData.cityDetainLicenseStatus
+                } else{
+                    t.editForm.checkTime = t.checkData.areaCheckTime
+                    t.editForm.hiddendangerStatus = t.checkData.areaHiddendangerStatus
+                    if(t.checkData.areaHiddendangerInfos == null || t.checkData.areaHiddendangerInfos.length==0){
+                        t.editForm.hiddendangerInfos = [
+                            {
+                                spotCheckHiddendanger: '',
+                                hiddendangerLevel: null
+                            }
+                        ]
+                    }else{t.editForm.hiddendangerInfos = t.checkData.areaHiddendangerInfos}
+                    t.editForm.amerceMoney = t.checkData.areaAmerceMoney
+                    t.editForm.stopProductionStatus = t.checkData.areaStopProductionStatus
+                    t.editForm.revokeLicenseStatus = t.checkData.areaRevokeLicenseStatus
+                    t.editForm.detainLicenseStatus = t.checkData.areaDetainLicenseStatus
+                }
                 t.editDialog = true
             },
-            addEditItem(){
-                const newItem = {
-                    info: '',
-                    level: ''
+
+            postEdit(formName){
+                const t = this
+                t.$refs[formName].validate(async (valid) => {
+                    if(t.editForm.hiddendangerStatus == 0){
+                        t.editForm.hiddendangerInfos = []
+                        t.editForm.amerceStatus = null
+                        t.editForm.amerceMoney = null
+                        t.editForm.stopProductionStatus = null
+                        t.editForm.revokeLicenseStatus = null
+                        t.editForm.detainLicenseStatus = null
+                    }
+                    if(t.editForm.hiddendangerStatus == 1){
+                        if(t.editForm.hiddendangerInfos.find((e) => e.spotCheckHiddendanger == '') || t.editForm.hiddendangerInfos.find((e) => e.hiddendangerLevel == null)){
+                            t.$message({
+                                type:'warning',
+                                message: '请完善检查的隐患信息'
+                            })
+                            return
+                        }
+                    }
+                    t.editForm.hiddendangerInfos = Array.from(t.editForm.hiddendangerInfos,item=>{
+                        return {spotCheckHiddendanger: item.spotCheckHiddendanger, hiddendangerLevel: item.hiddendangerLevel, spotCheckUnitType: t.unitType, spotCheckId: t.checkData.id}
+                    })
+                    if (valid) {
+                        if(t.editForm.amerceMoney>0){t.editForm.amerceStatus = 1}
+                        else{t.editForm.amerceStatus = 0}
+                        t.editForm.amerceMoney = Number(t.editForm.amerceMoney)
+                        let res = await updateSpotCheckReport(t.editForm)
+                        if(res.data.code === "200"){
+                            t.$message({
+                                type:'success',
+                                message:'提交成功'
+                            })
+                            t.getSpotCheckReportInfo()
+                        }else{
+                            t.$message({
+                                type:'warning',
+                                message:res.data.message
+                            })
+                        }
+                        t.editForm = {
+                            id: null,
+                            checkTime: '',
+                            hiddendangerStatus: null,
+                            hiddendangerInfos: [
+                                {
+                                    spotCheckHiddendanger: '',
+                                    hiddendangerLevel: null
+                                }
+                            ],
+                            amerceStatus: null,
+                            amerceMoney: null,
+                            stopProductionStatus: null,
+                            revokeLicenseStatus: null,
+                            detainLicenseStatus: null
+                        },
+                        t.editDialog = false
+                    } else {
+                        console.log('error submit!!');
+                        return false;
+                    }
+                });
+            },
+            resetEdit(){
+                this.editForm = {
+                    id: null,
+                    checkTime: '',
+                    hiddendangerStatus: null,
+                    hiddendangerInfos: [
+                    {
+                        spotCheckHiddendanger: '',
+                        hiddendangerLevel: null
+                    }
+                    ],
+                    amerceStatus: null,
+                    amerceMoney: null,
+                    stopProductionStatus: null,
+                    revokeLicenseStatus: null,
+                    detainLicenseStatus: null
                 }
-                this.editForm.riskList.push(newItem)
+            },
+            addEditItem(){
+                const t = this
+                const newItem = {
+                    spotCheckHiddendanger: '',
+                    hiddendangerLevel: null
+                }
+                t.editForm.hiddendangerInfos.push(newItem)
             },
             deleteEditItem(i){
-                console.log(i)
-                this.editForm.riskList.splice(i,1)
+                const t = this
+                if(t.editForm.hiddendangerInfos.length == 1){
+                    t.$message({
+                        type:'warning',
+                        message: '检查的隐患信息不可为空'
+                    })
+                }else{
+                    t.editForm.hiddendangerInfos.splice(i,1)
+                }
             },
         },
     }
@@ -440,8 +849,9 @@
             position: absolute;
             height: 40px;
             line-height: 40px;
-            right: 10px;
+            right: 20px;
             top: 0;
+            z-index: 99999;
         }
     }
 
@@ -569,21 +979,24 @@
                         }
                     }
 
-                    &:nth-of-type(1){
+                    &.w-5{
                         width: 5%;
                     }
-                    &:nth-of-type(2){
-                        width: 60%
+                    &.w-10{
+                        width: 10%;
                     }
-                    &:nth-of-type(3){
-                        width: 35%;
+                    &.w-15{
+                        width: 15%;
                     }
-                    &.w-50{
-                        width: 50%;
+                    &.w-20{
+                        width: 20%;
                     }
                     &.w-25{
                         width: 25%;
                     }
+                    &.w-50{
+                        width: 50%;
+                    }
                     &.w-75{
                         width: 75%;
                     }

--
Gitblit v1.9.2