DetailInfo.vue 6.92 KB
Newer Older
耿迪迪's avatar
耿迪迪 committed
1 2 3
<template>
  <el-dialog title="详情" :visible.sync="detailOpen" width="900px" append-to-body destroy-on-close :close-on-click-modal="false">
    <el-form label-width="140px">
4
      <el-row class="el-row-table"> 
耿迪迪's avatar
耿迪迪 committed
5
          <el-col :span="12">
6 7
            <el-form-item label="重要风险点名称">
              <span v-if="detailInfo.fRiskName">{{ detailInfo.fRiskName }}</span>
耿迪迪's avatar
耿迪迪 committed
8 9 10 11 12
              <span v-else>-</span>
            </el-form-item>
          </el-col>

          <el-col :span="12">
13 14
            <el-form-item label="重要风险点编码">
              <span v-if="detailInfo.fRiskCode">{{ detailInfo.fRiskCode }}</span>
耿迪迪's avatar
耿迪迪 committed
15 16 17 18 19
              <span v-else>-</span>
            </el-form-item>
          </el-col>

          <el-col :span="12">
20
            <el-form-item label="燃气企业"> 
21
              <span v-if="detailInfo.companyName">{{ detailInfo.companyName }}</span>
22
              <span v-else>-</span>
耿迪迪's avatar
耿迪迪 committed
23 24 25 26
            </el-form-item>
          </el-col>

          <el-col :span="12">
27
            <el-form-item label="县级行政区">
28
              <span v-if="detailInfo.regionName">{{ detailInfo.regionName }}</span>
耿迪迪's avatar
耿迪迪 committed
29 30 31 32 33 34 35 36 37 38 39
              <span v-else>-</span>
            </el-form-item>
          </el-col>

          <el-col :span="12">
            <el-form-item label="重要风险点类型">
              <span v-if="detailInfo.fRiskType">{{ $parent.fRiskTypeFormat(detailInfo) }}</span>
              <span v-else>-</span>
            </el-form-item>
          </el-col>

40
          <el-col :span="24">
耿迪迪's avatar
耿迪迪 committed
41 42 43 44 45 46
            <el-form-item label="所在位置地址描述">
              <span v-if="detailInfo.fRiskPlaceDetail">{{ detailInfo.fRiskPlaceDetail }}</span>
              <span v-else>-</span>
            </el-form-item>
          </el-col>

47
          <el-col :span="24">
耿迪迪's avatar
耿迪迪 committed
48 49 50 51 52 53
            <el-form-item label="风险构成">
              <span v-if="detailInfo.fRiskStructure">{{ detailInfo.fRiskStructure }}</span>
              <span v-else>-</span>
            </el-form-item>
          </el-col>

54
          <el-col :span="24">
耿迪迪's avatar
耿迪迪 committed
55 56 57 58 59 60
            <el-form-item label="风险管控措施">
              <span v-if="detailInfo.fRiskControlMeasures">{{ detailInfo.fRiskControlMeasures }}</span>
              <span v-else>-</span>
            </el-form-item>
          </el-col>

61
          <el-col :span="24">
耿迪迪's avatar
耿迪迪 committed
62 63 64 65
            <el-form-item label="备注">
              <span v-if="detailInfo.fRemark">{{ detailInfo.fRemark }}</span>
              <span v-else>-</span>
            </el-form-item>
66 67 68 69 70 71
          </el-col>  
          <el-col :span="24">
            <el-form-item label="经纬度位置"> 
              <div id="risk-map" style="height: 300px"></div>
            </el-form-item>
          </el-col>
72

73 74 75 76 77 78
      </el-row>
    </el-form>
    
    <el-divider content-position="left">上报时态</el-divider>
    <el-form label-width="170px">
      <el-row class="el-row-table">   
79
          <el-col :span="12">
80
                <el-form-item :label="fUploadTypeLable" >
81 82
                  <span>{{fUploadType}}</span> 
                </el-form-item>
耿迪迪's avatar
耿迪迪 committed
83 84
          </el-col>

85
          <el-col :span="12">
86
              <el-form-item :label="fUploadTimeLabel" >
87 88 89
                <span>{{ fUploadTime }}</span> 
              </el-form-item>
          </el-col>
90
              
91
          <el-col :span="12"> 
92
            <el-form-item  v-if="this.$store.state.user.roleId == 3" label="企业端上报时间" >
93 94
              <span>{{ detailInfo.entUploadTime }}</span>
            </el-form-item>
95
          </el-col> 
耿迪迪's avatar
耿迪迪 committed
96 97
      </el-row>
    </el-form>
98

耿迪迪's avatar
耿迪迪 committed
99 100 101 102 103
  </el-dialog>

</template>

<script>
104
  import { getInforForDetail } from "@/api/risk/info";
耿迪迪's avatar
耿迪迪 committed
105
  import { EditorMap } from "@/utils/mapClass/getPath.js";
106 107
  import { getDefaultCountyList } from "@/api/area/county";
  import { enterpriseLists } from "@/api/regulation/info";
耿迪迪's avatar
耿迪迪 committed
108 109 110 111
  export default {
    name: "detail-info",
    data(){
        return{
112 113
          fUploadTypeLable: "",
          fUploadTimeLabel: "",
114 115
          enterprises: [],
          countyInfo: [],
耿迪迪's avatar
耿迪迪 committed
116
          detailInfo: {},
117 118 119 120
          enterpriseName:"",
          detailOpen: false,
          fUploadType: "",
          fUploadTime: null
耿迪迪's avatar
耿迪迪 committed
121 122 123 124 125 126 127 128 129
        }
    },
    watch:{
      detailOpen(newVal){
        if(newVal){
          this.initMap();
        }
      }
    },
130 131
    created(){
    },
耿迪迪's avatar
耿迪迪 committed
132
    methods:{
133 134 135 136 137 138 139 140 141 142
      //获取县级
      getCountyInfo(){
        getDefaultCountyList().then(res =>{
          if(res.code == 200 && res.data){
          this.countyInfo =  res.data;
        }
      })
      },
      //所属单位
      getEnterpriseLists(){ 
143 144 145 146
        const param = {};
          enterpriseLists(param).then(response => {
            this.enterprises = response.rows; 
        });
147 148 149 150 151 152 153 154 155 156 157 158 159 160
      },
      beyondCountyFormat(row){
        let info = this.countyInfo.find(item => item.fId == row.fRegionId);
        return info?info.fName:"-";
      },
      beyondCompanyFormat(row){
        let info = this.enterprises.find(item => item.enterpriseId == row.fCompanyId);
        return info?info.enterpriseName:"-";
      },
      //根据不同角色显示不同字段
      showUploadType() {
        let roleId = this.$store.state.user.roleId;
        console.log("roleId == 3" + (roleId == 3))
        if (roleId == 3) {
161
          this.fUploadTypeLable = "上报省厅状态"
162 163 164
          this.fUploadType =  this.detailInfo.govUploadState
        }
        if (roleId == 5) {
165
          this.fUploadTypeLable = "上报状态"
166 167 168 169 170 171 172 173 174 175 176 177 178 179 180
          this.fUploadType =  this.detailInfo.entUploadState
        }

        if (this.fUploadType == '0') {
          this.fUploadType = "未上传"
        }
        if (this.fUploadType == '1') {
          this.fUploadType = "已上传"
        }
      },
      showUploadTime() {

        let roleId = this.$store.state.user.roleId;
        if (roleId == 3) {
          this.fUploadTime =  this.detailInfo.govUploadTime
181
          this.fUploadTimeLabel = "上报省厅时间"
182 183 184
        }
        if (roleId == 5) {
          this.fUploadTime =  this.detailInfo.entUploadTime
185
          this.fUploadTimeLabel = "上报时间"
186 187
        }
      },
耿迪迪's avatar
耿迪迪 committed
188
      getDetailInfo(id){
189 190 191
        getInforForDetail(id).then(res =>{
          if(res.code == 200 && res.data){ 
            this.detailInfo = res.data; 
192 193
            this.showUploadType();
            this.showUploadTime();
耿迪迪's avatar
耿迪迪 committed
194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228
            this.detailOpen = true;
          }
        })
      },
      initMap(){
        this.$nextTick(() => {
          const path = eval(this.$store.state.user.systemSetting.map_center);
          this.gaoMap = new EditorMap("risk-map", {center:path}, this);
          new AMap.Marker({
            map: this.gaoMap.map,
            position: path,
          });
          this.gaoMap.map.setCenter(path)
        })
      },
      destroyed(){
        this.gaoMap.map.destroy();
      },
    }
  }
</script>

<style scoped lang="scss">
  .dbtn {
    display: inline-block;
    line-height: normal;
    padding-left: 2px;
    padding-right: 2px;
    cursor: pointer;
    border-radius: 3px;
    border-style: solid;
    border-width: 0;
    color: rgb(48, 180, 107);
  }
</style>