Преглед на файлове

Squashed commit of the following:

commit c8aa97fb21e2d3a74c2285cab00307ea32ca7d10
Author: yin_yu820 <895937358@qq.com>
Date:   Tue Apr 4 15:39:28 2023 +0800

    更新
LuChongMei преди 2 години
родител
ревизия
2db2b1cea8

+ 7 - 12
public/index.html

@@ -1,25 +1,20 @@
 <!DOCTYPE html>
 <html lang="">
-
-<head>
+  <head>
     <meta charset="utf-8">
     <meta http-equiv="X-UA-Compatible" content="IE=edge">
     <meta name="viewport" content="width=device-width,initial-scale=1.0">
     <link rel="icon" href="<%= BASE_URL %>favicon.ico">
-    <title>
-        <%= htmlWebpackPlugin.options.title %>
-    </title>
+    <title><%= htmlWebpackPlugin.options.title %></title>
 
     <!--小程序SDK 只有在小程序容器中才能加载到 -->
-    <script src="shinemosdk://20000/index.js"></script>
-</head>
-
-<body>
+	  <script src="shinemosdk://20000/index.js"></script>
+  </head>
+  <body>
     <noscript>
       <strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
     </noscript>
     <div id="app"></div>
     <!-- built files will be auto injected -->
-</body>
-
-</html>
+  </body>
+</html>

+ 5 - 0
src/api/nonReligiousInformation/nonReligiousInformationService.js

@@ -7,6 +7,11 @@ export default class nonReligiousInformationService {
             inputForm
         )
     }
+    queryById(id) {
+        return request.get(
+            '/nonreligiousinformation/nonReligiousInformation/queryById', { id: id }
+        )
+    };
     list(params) {
         return request.get(
             `/nonreligiousinformation/nonReligiousInformation/list`,

+ 5 - 0
src/api/religiousConference/religiousConferenceService.js

@@ -7,6 +7,11 @@ export default class religiousConferenceService {
             inputForm
         )
     }
+    queryById(id) {
+        return request.get(
+            '/zzcssb/religiousConference/queryById', { id: id }
+        )
+    };
     list(params) {
         return request.get(
             `/zzcssb/religiousConference/list`,

+ 5 - 0
src/api/securityFacilitiesErr/securityFacilitiesErrService.js

@@ -7,6 +7,11 @@ export default class securityFacilitiesErrService {
             inputForm
         )
     }
+    queryById(id) {
+        return request.get(
+            '/afssyc/securityFacilitiesErr/queryById', { id: id }
+        )
+    };
     list(params) {
         return request.get(
             `/afssyc/securityFacilitiesErr/list`,

+ 6 - 1
src/api/siteInspection/siteInspectionServer.js → src/api/siteInspection/siteInspectionService.js

@@ -1,5 +1,5 @@
 import request from '@/utils/request'
-export default class siteInspectionServer {
+export default class siteInspectionService {
     // 保存
     save(inputForm) {
         return request.post(
@@ -7,6 +7,11 @@ export default class siteInspectionServer {
             inputForm
         )
     }
+    queryById(id) {
+        return request.get(
+            '/csjcqk/siteInspection/queryById', { id: id }
+        )
+    };
     list(params) {
         return request.get(
             `/csjcqk/siteInspection/list`,

+ 14 - 0
src/api/sys/tools.js

@@ -9,6 +9,20 @@ export default class Tools {
             params
         )
     };
+    //视频音频点位列表
+    videoPointList(params) {
+        return request.get(
+            `/religioussites/videopoint/videoPoint/list`,
+            params
+        )
+    }; 
+    //消防点位列表
+    fireStationList(params) {
+        return request.get(
+            `/religioussites/fire/fireEquipment/list`,
+            params
+        )
+    };    
     // 文件上传
     uploadFile(formData, uploadPath) {
         return request.uploadFile(

+ 56 - 0
src/router/index.js

@@ -56,7 +56,23 @@ const routes = [{
         meta: {
             isShowTarbar: true,
         }
+    },{
+        path: '/siteInspectionInfo',
+        name: 'siteInspectionInfo',
+        component: () =>
+            import ('../views/activityMan/siteInspection/siteInspectionInfo.vue'),
+        meta: {
+            isShowTarbar: true,
+        }
     }, {
+        path: '/securityFacilitiesErrView',
+        name: 'securityFacilitiesErrView',
+        component: () =>
+            import ('../views/activityMan/securityFacilitiesErr/securityFacilitiesErrView.vue'),
+        meta: {
+            isShowTarbar: true,
+        }
+    },{
         path: '/securityFacilitiesErrList',
         name: 'securityFacilitiesErrList',
         component: () =>
@@ -65,6 +81,22 @@ const routes = [{
             isShowTarbar: true,
         }
     }, {
+        path: '/securityFacilitiesErrInfo',
+        name: 'securityFacilitiesErrInfo',
+        component: () =>
+            import ('../views/activityMan/securityFacilitiesErr/securityFacilitiesErrInfo.vue'),
+        meta: {
+            isShowTarbar: true,
+        }
+    },{
+        path: '/religiousConferenceView',
+        name: 'religiousConferenceView',
+        component: () =>
+            import ('../views/activityMan/religiousConference/religiousConferenceView.vue'),
+        meta: {
+            isShowTarbar: true,
+        }
+    },{
         path: '/religiousConferenceList',
         name: 'religiousConferenceList',
         component: () =>
@@ -73,6 +105,22 @@ const routes = [{
             isShowTarbar: true,
         }
     }, {
+        path: '/religiousConferenceInfo',
+        name: 'religiousConferenceInfo',
+        component: () =>
+            import ('../views/activityMan/religiousConference/religiousConferenceInfo.vue'),
+        meta: {
+            isShowTarbar: true,
+        }
+    }, {
+        path: '/nonReligiousInformationView',
+        name: 'nonReligiousInformationView',
+        component: () =>
+            import ('../views/activityMan/nonReligiousInformation/nonReligiousInformationView.vue'),
+        meta: {
+            isShowTarbar: true,
+        }
+    },{
         path: '/nonReligiousInformationList',
         name: 'nonReligiousInformationList',
         component: () =>
@@ -80,6 +128,14 @@ const routes = [{
         meta: {
             isShowTarbar: true,
         }
+    },{
+        path: '/nonReligiousInformationInfo',
+        name: 'nonReligiousInformationInfo',
+        component: () =>
+            import ('../views/activityMan/nonReligiousInformation/nonReligiousInformationInfo.vue'),
+        meta: {
+            isShowTarbar: true,
+        }
     }, {
         path: '/toBeDone',
         name: 'toBeDone',

+ 0 - 3
src/store/index.js

@@ -14,11 +14,8 @@ const store =createStore({
             window.localStorage.setItem(TOKEN_Key,state.user);
         },
         setPcToken(state,data){
-            console.log("设置token1");
             state.pctoken=data;
-            console.log("设置token2");
             window.localStorage.setItem(PCTOKEN_Key,state.pctoken);
-            console.log("设置token3"+state.pctoken);
         },
         setSelectColor(state,data){
             state.selectcolor=data;

+ 147 - 0
src/views/activityMan/nonReligiousInformation/nonReligiousInformationInfo.vue

@@ -0,0 +1,147 @@
+<template>
+
+    <van-loading size="16px" v-if="isLoading">加载中...</van-loading>
+    <div class="main" v-if="!isLoading">
+      <div class="banner">
+        <h2>扎实提升“三力”</h2>
+        <h2>深入推进“三化”</h2>
+        <h2>坚持“三个思维”</h2>
+      </div>
+      <div class="info">
+        <p>非宗教类别:{{ getCategories(info.nonReligiousCategories) }}</p>
+        <p>组织名称:{{ info.siteName.name }}</p>
+        <p>时&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;间:{{ info.reportingTime }}</p>
+        <p>地&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;点:{{ info.placeSelectName }}</p>
+        <p>详细地址:{{ info.placeDetailed }}</p>
+        <p>事件概述:{{ info.eventOverview }}</p>
+        <p>事件内容:{{ info.eventContent }}</p>
+      </div>
+      <van-button v-if="canAudit" type="primary" class="btn-sub">审核</van-button>
+    </div>
+  </template>
+    
+    <script>
+  import { ref } from "vue";
+  import nonReligiousInformationService from "@/api/nonReligiousInformation/nonReligiousInformationService";
+  import UserManage from "@/api/user/UserManage";
+  import { useRoute } from "vue-router";
+  export default {
+    setup() {
+      window.xm.setNavigationBarTitle({ title: '其他有害信息详情'})
+      let isLoading = ref(true);
+      let canAudit = ref(false);
+      // 活动信息
+      const info = ref({        
+      });
+      let route = useRoute();
+      new nonReligiousInformationService().queryById(route.query.id).then((data) => {
+        info.value = data;
+        if(data.assessment=="0"){
+          canAudit.value = true;
+        }else{
+          canAudit.value = false;
+        }      
+
+        isLoading.value = false;
+      });
+
+        //字典配置
+        const getCategories= (key ) => {
+            let re="";
+            switch(key){
+            case "1":
+                re="宗教组织";
+                break;
+            case "10":
+                re="邪教组织";
+                break;
+            case "11":
+                re="地下神学院";
+                break;
+            case "2":
+                re="地下教会";
+                break;
+            case "3":
+                re="韩美境外渗透组织";
+                break;
+            case "4":
+                re="本地精神控制类有害培训机构";
+                break;      
+            case "5":
+                re="“呼喊派”骨干组织";
+                break;
+            case "6":
+                re="“改革宗”地下教会组织";
+                break;
+            case "7":
+                re="藏传佛教本地组织";
+                break;
+            case "8":
+                re="学生传教组织";
+                break;
+            case "9":
+                re="“义诊医疗”地下教会组织";
+                break;
+            case "91":
+                re="“亚文化”传教组织";
+                break;
+            case "92":
+                re="重点公司组织";
+                break;          
+            }
+            return re;
+        };
+
+      return {
+        info,
+        isLoading,
+        canAudit,
+        getCategories,
+      };
+    },
+  };
+  </script>
+    
+  <style lang="less">
+  .main {
+    background: #fff;
+    position: relative;
+    top: 40px;
+  }
+  .banner {
+    background-color: #36a7f3;
+    padding: 20px 50px 40px 50px;
+    color: #fff;
+    h2 {
+      &:nth-child(1) {
+        margin-top: 0px;
+        text-align: left;
+      }
+      &:nth-child(2) {
+        text-align: center;
+      }
+      &:nth-child(3) {
+        text-align: right;
+      }
+    }
+  }
+  .info {
+    position: relative;
+    width: 86vw;
+    margin: 10px auto;
+    padding: 10px;
+    background: #fff;
+    border-radius: 20px;
+    top: -50px;
+    font-size: 14px;
+  }
+  .btn-sub {
+    width: 90%;
+    border-radius: 20px;
+    margin-left: 5%;
+  }
+  .van-loading {
+    text-align: center;
+    margin-top: 80px;
+  }
+  </style>

+ 9 - 1
src/views/activityMan/nonReligiousInformation/nonReligiousInformationList.vue

@@ -207,6 +207,13 @@ setup() {
         });
     }
   };
+  // 详情跳转
+  const goInfo = (val) => {
+      router.push({
+        path: "/nonReligiousInformationInfo",
+        query: { id: val },
+      });
+    };
   return {
     onClickLeft,
     onClickTab,
@@ -215,9 +222,10 @@ setup() {
     getCategories,
     loading,
     finished,
-    value,
+    value,    
     onClickRight,
     tabIndex,
+    goInfo,
     beforeClose,
   };
 },

+ 98 - 0
src/views/activityMan/religiousConference/religiousConferenceInfo.vue

@@ -0,0 +1,98 @@
+<template>
+
+    <van-loading size="16px" v-if="isLoading">加载中...</van-loading>
+    <div class="main" v-if="!isLoading">
+      <div class="banner">
+        <h2>扎实提升“三力”</h2>
+        <h2>深入推进“三化”</h2>
+        <h2>坚持“三个思维”</h2>
+      </div>
+      <div class="info">
+        <p>会议地点:{{ info.placeSelectName }}</p>
+        <p>详细地址:{{ info.venueDetailed }}</p>
+        <p>会议时间:{{ info.meetingTime }}</p>
+        <p>会议场所:{{ info.siteName.name }}</p>
+        <p>参会人员:{{ info.participants.name }}</p>
+        <p>附&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;件:<span style="color: #6892ff">活动申请书</span></p>
+        <p>会议议题:{{ info.meetingTopics }}</p>
+      </div>
+      <van-button v-if="canAudit" type="primary" class="btn-sub">审核</van-button>
+    </div>
+  </template>
+    
+    <script>
+  import { ref } from "vue";
+  import religiousConferenceService from "@/api/religiousConference/religiousConferenceService";
+  import UserManage from "@/api/user/UserManage";
+  import { useRoute } from "vue-router";
+  export default {
+    setup() {
+      window.xm.setNavigationBarTitle({ title: '负责人会议详情'})
+      let isLoading = ref(true);
+      let canAudit = ref(false);
+      // 活动信息
+      const info = ref({        
+      });
+      let route = useRoute();
+      new religiousConferenceService().queryById(route.query.id).then((data) => {
+        info.value = data;
+        if(data.assessment=="0"){
+          canAudit.value = true;
+        }else{
+          canAudit.value = false;
+        }      
+
+        isLoading.value = false;
+      });
+      return {
+        info,
+        isLoading,
+        canAudit,
+      };
+    },
+  };
+  </script>
+    
+  <style lang="less">
+  .main {
+    background: #fff;
+    position: relative;
+    top: 40px;
+  }
+  .banner {
+    background-color: #36a7f3;
+    padding: 20px 50px 40px 50px;
+    color: #fff;
+    h2 {
+      &:nth-child(1) {
+        margin-top: 0px;
+        text-align: left;
+      }
+      &:nth-child(2) {
+        text-align: center;
+      }
+      &:nth-child(3) {
+        text-align: right;
+      }
+    }
+  }
+  .info {
+    position: relative;
+    width: 86vw;
+    margin: 10px auto;
+    padding: 10px;
+    background: #fff;
+    border-radius: 20px;
+    top: -50px;
+    font-size: 14px;
+  }
+  .btn-sub {
+    width: 90%;
+    border-radius: 20px;
+    margin-left: 5%;
+  }
+  .van-loading {
+    text-align: center;
+    margin-top: 80px;
+  }
+  </style>

+ 8 - 0
src/views/activityMan/religiousConference/religiousConferenceList.vue

@@ -159,6 +159,13 @@ setup() {
         });
     }
   };
+  // 详情跳转
+  const goInfo = (val) => {
+      router.push({
+        path: "/religiousConferenceInfo",
+        query: { id: val },
+      });
+    };
   return {
     onClickLeft,
     onClickTab,
@@ -169,6 +176,7 @@ setup() {
     value,
     onClickRight,
     tabIndex,
+    goInfo,
     beforeClose,
   };
 },

+ 99 - 0
src/views/activityMan/securityFacilitiesErr/securityFacilitiesErrInfo.vue

@@ -0,0 +1,99 @@
+<template>
+
+    <van-loading size="16px" v-if="isLoading">加载中...</van-loading>
+    <div class="main" v-if="!isLoading">
+      <div class="banner">
+        <h2>扎实提升“三力”</h2>
+        <h2>深入推进“三化”</h2>
+        <h2>坚持“三个思维”</h2>
+      </div>
+      <div class="info">
+        <p>场所名称:{{ info.siteName.name }}</p>
+        <p v-if="info.facilityType=='1'">设施类型:消防设备</p>
+        <p v-if="info.facilityType=='0'">设施类型:监控、音频</p>
+        <p v-if="info.facilityType=='1'">场所消防点位:{{ info.siteFireProtection.name }}</p>
+        <p v-if="info.facilityType=='0'">视频音频点位:{{ info.videoAudioPoint.name }}</p>
+        <p>位&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;置:{{ info.position }}</p>
+        <p>附&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;件:<span style="color: #6892ff">活动申请书</span></p>
+        <p>异常内容:{{ info.abnormalContent }}</p>
+      </div>
+      <van-button v-if="canAudit" type="primary" class="btn-sub">审核</van-button>
+    </div>
+  </template>
+    
+    <script>
+  import { ref } from "vue";
+  import securityFacilitiesErrService from "@/api/securityFacilitiesErr/securityFacilitiesErrService";
+  import UserManage from "@/api/user/UserManage";
+  import { useRoute } from "vue-router";
+  export default {
+    setup() {
+      window.xm.setNavigationBarTitle({ title: '安防设施异常详情'})
+      let isLoading = ref(true);
+      let canAudit = ref(false);
+      // 活动信息
+      const info = ref({        
+      });
+      let route = useRoute();
+      new securityFacilitiesErrService().queryById(route.query.id).then((data) => {
+        info.value = data;
+        if(data.assessment=="0"){
+          canAudit.value = true;
+        }else{
+          canAudit.value = false;
+        }      
+
+        isLoading.value = false;
+      });
+      return {
+        info,
+        isLoading,
+        canAudit,
+      };
+    },
+  };
+  </script>
+    
+  <style lang="less">
+  .main {
+    background: #fff;
+    position: relative;
+    top: 40px;
+  }
+  .banner {
+    background-color: #36a7f3;
+    padding: 20px 50px 40px 50px;
+    color: #fff;
+    h2 {
+      &:nth-child(1) {
+        margin-top: 0px;
+        text-align: left;
+      }
+      &:nth-child(2) {
+        text-align: center;
+      }
+      &:nth-child(3) {
+        text-align: right;
+      }
+    }
+  }
+  .info {
+    position: relative;
+    width: 86vw;
+    margin: 10px auto;
+    padding: 10px;
+    background: #fff;
+    border-radius: 20px;
+    top: -50px;
+    font-size: 14px;
+  }
+  .btn-sub {
+    width: 90%;
+    border-radius: 20px;
+    margin-left: 5%;
+  }
+  .van-loading {
+    text-align: center;
+    margin-top: 80px;
+  }
+  </style>

+ 8 - 0
src/views/activityMan/securityFacilitiesErr/securityFacilitiesErrList.vue

@@ -174,6 +174,13 @@ setup() {
         });
     }
   };
+  // 详情跳转
+  const goInfo = (val) => {
+      router.push({
+        path: "/securityFacilitiesErrInfo",
+        query: { id: val },
+      });
+    };
   return {
     onClickLeft,
     onClickTab,
@@ -184,6 +191,7 @@ setup() {
     value,
     onClickRight,
     tabIndex,
+    goInfo,
     beforeClose,
   };
 },

+ 360 - 4
src/views/activityMan/securityFacilitiesErr/securityFacilitiesErrView.vue

@@ -1,6 +1,362 @@
 <template>
-    <div class="about">
-      <h1>This is an about page</h1>
+  <van-nav-bar
+    title="信息上报中心"
+    left-text=""
+    left-arrow
+    @click-left="onClickLeft"
+  />
+  <div class="main">
+    <p class="title">安防设施异常上报</p>
+    <div class="formArea">
+      <p class="miniTitle">基础信息</p>
+      <van-cell-group>
+        <van-field
+          v-model="securityFacilitiesErr.siteName.name"
+          readonly
+          required
+          label="场所名称:"
+          placeholder="请选择"
+          input-align="right"
+          right-icon="arrow-down"
+          @click="showPlace = true"
+        />
+        <van-popup v-model:show="showPlace" round position="bottom">
+          <van-picker
+            title="场所选择"
+            :columns="places"
+            :columns-field-names="customFieldName"
+            @cancel="showPlace = false"
+            @confirm="getPlace"
+          />
+        </van-popup>
+      </van-cell-group>
+
+      <van-cell-group>
+        
+        <van-field
+          v-model="securityFacilitiesErr.facilityTypename"
+          center
+          readonly
+          required
+          label="设施类型:"
+          placeholder="请选择"
+          input-align="right"
+          right-icon="arrow-down"
+          @click="showLx = true"
+        />
+        <van-popup v-model:show="showLx" round position="bottom">
+          <van-picker
+            title="设施类型选择"
+            :columns="facilityTypes"
+            @cancel="showLx = false"
+            @confirm="getfacilityType"
+          />
+        </van-popup>
+      </van-cell-group>
+
+      <van-cell-group v-if="securityFacilitiesErr.facilityType==''">        
+        <van-field
+          v-model="securityFacilitiesErr.facilityTypename"
+          center
+          readonly
+          required
+          label="位置:"
+          placeholder="请选择"
+          input-align="right"
+          right-icon="arrow-down"
+        />
+      </van-cell-group>
+
+      <van-cell-group v-if="securityFacilitiesErr.facilityType=='0'">
+        <van-field
+          v-model="securityFacilitiesErr.videoAudioPoint.name"
+          readonly
+          required
+          label="音视频点位:"
+          placeholder="请选择"
+          input-align="right"
+          right-icon="arrow-down"
+          @click="showVideoAudio = true"
+        />
+        <van-popup v-model:show="showVideoAudio" round position="bottom">
+          <van-picker
+            title="音视频点位选择"
+            :columns="VideoAudios"
+            :columns-field-names="customFieldName"
+            @cancel="showVideoAudio = false"
+            @confirm="setVideoAudios"
+          />
+        </van-popup>
+      </van-cell-group>
+
+      <van-cell-group  v-if="securityFacilitiesErr.facilityType=='1'">
+        <van-field
+          v-model="securityFacilitiesErr.siteFireProtection.name"
+          readonly
+          required
+          label="消防点位:"
+          placeholder="请选择"
+          input-align="right"
+          right-icon="arrow-down"
+          @click="showFireStation = true"
+        />
+        <van-popup v-model:show="showFireStation" round position="bottom">
+          <van-picker
+            title="消防点位选择"
+            :columns="FireStations"
+            :columns-field-names="customFieldName"
+            @cancel="showFireStation = false"
+            @confirm="setFireStations"
+          />
+        </van-popup>
+      </van-cell-group>
+
+      
+
+      <van-cell-group>
+        <van-field name="uploader" label="附件:">
+          <template #input>
+            <van-uploader>
+              <van-button icon="plus">上传文件</van-button>
+            </van-uploader>
+          </template>
+        </van-field>
+      </van-cell-group>
+      <van-cell-group>
+        <div class="rowTextArea">
+          <van-field
+            v-model="securityFacilitiesErr.abnormalContent"
+            center
+            rows="2"
+            type="textarea"
+            label="异常内容:"
+            label-align="top"
+          />
+        </div>
+      </van-cell-group>
     </div>
-  </template>
-  
+    <div class="subbtn">
+      <van-button type="primary" @click="submit">提交</van-button>
+      <van-button type="default" hairline>取消</van-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import { reactive, ref } from "vue";
+import personList from "../personList.vue";
+import securityFacilitiesErrService from "@/api/securityFacilitiesErr/securityFacilitiesErrService";
+import tools from "@/api/sys/tools";
+export default {
+  components: { personList },
+  setup() {
+    const onClickLeft = () => {
+      history.back();
+    };
+    const securityFacilitiesErr = reactive({
+      id: "",
+      siteName: {
+        id: "",
+      },
+      facilityType: "",
+      videoAudioPoint:{
+        id: "",
+      },
+      siteFireProtection:{
+        id: "",
+      },
+      position: "",
+      abnormalContent: "",
+      //附件
+      enclosure: "",
+      state: "0",
+      assessment: "0",
+    });
+    // 场所名称
+    let places = ref([]);
+    const customFieldName = {
+      text: "name",
+      value: "id",
+    };
+    new tools()
+      .placeList({
+        current: 1,
+        size: 10000,
+      })
+      .then(({ records }) => {
+        places.value.push(...records);
+      });
+    let showPlace = ref(false);
+    const getPlace = ({ selectedOptions }) => {
+      showPlace.value = false;
+      securityFacilitiesErr.siteName = selectedOptions[0];
+      //场所选择完成后刷新
+      getVideoAudioList();
+      getFireStationList();
+    };
+    //选择设施类型
+    let showLx = ref(false);
+    const facilityTypes = [{text:"监控、音频",value:"0"},{text:"消防设备",value:"1"}];
+    const getfacilityType= ({ selectedOptions }) => {      
+      securityFacilitiesErr.facilityType = selectedOptions[0].value;
+      securityFacilitiesErr.facilityTypename = selectedOptions[0].text;
+      getVideoAudioList();
+      getFireStationList();
+      showLx.value = false;
+    };
+
+    //选择视频音频点位
+    let showVideoAudio = ref(false);
+    let VideoAudios = ref([]);
+    //同时选择好场所、设施类型后才获取视频列表
+    const getVideoAudioList= () => {    
+      if(securityFacilitiesErr.siteName.id!=""&&securityFacilitiesErr.facilityType=="0"){
+        new tools()
+        .videoPointList({
+          current: 1,
+          size: 10000,
+          siteId: securityFacilitiesErr.siteName.id,
+        })
+        .then(({ records }) => {
+          VideoAudios.value=records;
+        });
+      }
+      
+    };
+    const setVideoAudios= ({ selectedOptions }) => {      
+      securityFacilitiesErr.videoAudioPoint = selectedOptions[0];
+      securityFacilitiesErr.position=selectedOptions[0].position;
+      showVideoAudio.value = false;
+    };
+    
+    
+    //选择消防点位
+    let showFireStation = ref(false);
+    let FireStations = ref([]);
+    //同时选择好场所、设施类型后才获取消防点位列表
+    const getFireStationList= () => {    
+      if(securityFacilitiesErr.siteName.id!=""&&securityFacilitiesErr.facilityType=="1"){
+        new tools()
+        .fireStationList({
+          current: 1,
+          size: 10000,
+          siteId: securityFacilitiesErr.siteName.id,
+        })
+        .then(({ records }) => {
+          FireStations.value=records;
+        });
+      }
+      
+    };
+    const setFireStations= ({ selectedOptions }) => {      
+      securityFacilitiesErr.siteFireProtection = selectedOptions[0];
+      securityFacilitiesErr.position=selectedOptions[0].position;
+      showFireStation.value = false;
+    };
+
+    // 提交数据
+    const submit = () => {
+      //添加保存前判断
+
+      new securityFacilitiesErrService().save(securityFacilitiesErr).then((res) => {
+        if(res.data=="保存安防设施异常成功"){
+          window.xm.showToast({
+             message:"保存成功!"
+          })
+          history.back();
+        }
+
+      });
+    };
+    return {
+      securityFacilitiesErr,
+      // 场所
+      customFieldName,
+      showPlace,
+      places,
+      getPlace,
+      //设施类型选择
+      showLx,
+      facilityTypes,
+      getfacilityType,
+      //选择视频音频点位
+      showVideoAudio,
+      getVideoAudioList,
+      VideoAudios,
+      setVideoAudios,
+
+      //选择消防点位
+      showFireStation,
+      getFireStationList,
+      FireStations,
+      setFireStations,
+      
+      // 返回
+      onClickLeft,
+      submit,
+    };
+  },
+};
+</script>
+
+<style scoped>
+* {
+  margin: 0;
+  padding: 0;
+}
+.main {
+  background: #fff;
+}
+.main p {
+  height: 40px;
+  line-height: 40px;
+  color: #36a7f3;
+  border-bottom: 1px solid #eee;
+}
+.title {
+  font-size: 20px;
+  font-weight: 700;
+  padding-left: 20px;
+}
+.miniTitle {
+  font-size: 16px;
+}
+.formArea {
+  padding: 0px 20px;
+}
+.formArea .van-cell-group .van-field__label {
+  height: 40px;
+}
+.formArea .van-cell-group .van-cell {
+  line-height: 40px;
+}
+.van-cell__value .van-field__right-icon .van-icon-location {
+  color: #36a7f3 !important;
+}
+.rowTextArea::v-deep .van-field__value {
+  width: 94%;
+  border: 2px solid #ccc;
+  border-radius: 10px;
+  padding: 10px;
+}
+.rowTextArea::v-deep .van-cell {
+  display: flow-root;
+}
+.subbtn {
+  margin: 20px;
+  text-align: center;
+}
+.subbtn .van-button {
+  width: 40%;
+  margin: 5px;
+}
+.van-uploader .van-button {
+  border: none;
+  color: #36a7f3;
+  top: -4px;
+}
+.van-dialog {
+  width: 80%;
+  top: 50%;
+}
+</style>

+ 98 - 0
src/views/activityMan/siteInspection/siteInspectionInfo.vue

@@ -0,0 +1,98 @@
+<template>
+
+    <van-loading size="16px" v-if="isLoading">加载中...</van-loading>
+    <div class="main" v-if="!isLoading">
+      <div class="banner">
+        <h2>扎实提升“三力”</h2>
+        <h2>深入推进“三化”</h2>
+        <h2>坚持“三个思维”</h2>
+      </div>
+      <div class="info">
+        <p>场所名称:{{ info.siteName.name }}</p>
+        <p>地&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;点:{{ info.place }}</p>
+        <p>详细地址:{{ info.placeDel }}</p>
+        <p>督查时间:{{ info.supervisionTime }}</p>
+        <p>附&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;件:<span style="color: #6892ff">活动申请书</span></p>
+        <p>督查内容:{{ info.supervisionContent }}</p>
+      </div>
+      <van-button v-if="canAudit" type="primary" class="btn-sub">审核</van-button>
+    </div>
+  </template>
+    
+    <script>
+  import { ref } from "vue";
+  import siteInspectionService from "@/api/siteInspection/siteInspectionService";
+  import UserManage from "@/api/user/UserManage";
+  import { useRoute } from "vue-router";
+  export default {
+    setup() {
+      window.xm.setNavigationBarTitle({ title: '场所检查详情'})
+      let isLoading = ref(true);
+      let canAudit = ref(false);
+      // 活动信息
+      const info = ref({        
+      });
+      let route = useRoute();
+      new siteInspectionService().queryById(route.query.id).then((data) => {
+        info.value = data;
+        if(data.assessment=="0"){
+          canAudit.value = true;
+        }else{
+          canAudit.value = false;
+        }
+        
+
+        isLoading.value = false;
+      });
+      return {
+        info,
+        isLoading,
+        canAudit,
+      };
+    },
+  };
+  </script>
+    
+  <style lang="less">
+  .main {
+    background: #fff;
+    position: relative;
+    top: 40px;
+  }
+  .banner {
+    background-color: #36a7f3;
+    padding: 20px 50px 40px 50px;
+    color: #fff;
+    h2 {
+      &:nth-child(1) {
+        margin-top: 0px;
+        text-align: left;
+      }
+      &:nth-child(2) {
+        text-align: center;
+      }
+      &:nth-child(3) {
+        text-align: right;
+      }
+    }
+  }
+  .info {
+    position: relative;
+    width: 86vw;
+    margin: 10px auto;
+    padding: 10px;
+    background: #fff;
+    border-radius: 20px;
+    top: -50px;
+    font-size: 14px;
+  }
+  .btn-sub {
+    width: 90%;
+    border-radius: 20px;
+    margin-left: 5%;
+  }
+  .van-loading {
+    text-align: center;
+    margin-top: 80px;
+  }
+  </style>

+ 12 - 4
src/views/activityMan/siteInspection/siteInspectionList.vue

@@ -27,13 +27,13 @@
       :key="item.id"
       :before-close="beforeClose"
     >
-      <div class="list_item">
+      <div class="list_item" @click="goInfo(item.id)">
         <div class="item-left">
           <p style="color: #c4c4c4">{{ item.supervisionTime }}</p>
           <p v-if="item.assessment==0" style="color: red">待审核</p>
           <p v-if="item.assessment==1" style="color: gray">已审核</p>
         </div>
-        <van-cell is-link to="siteInspectionView">
+        <van-cell is-link >
           <template #title>
             {{ item.siteName.name }}({{ item.placeDel}})
           </template>
@@ -53,7 +53,7 @@
   <script>
  import { ref } from "vue";
 import router from "@/router";
-import siteInspectionServer from "@/api/siteInspection/siteInspectionServer";
+import siteInspectionService from "@/api/siteInspection/siteInspectionService";
 export default {
   name: "siteInspectionList",
   setup() {
@@ -83,7 +83,7 @@ export default {
     };
     const onLoad = () => {
       // 异步更新数据
-      new siteInspectionServer()
+      new siteInspectionService()
         .list({
           current: index + 1,
           size: 10,
@@ -117,6 +117,13 @@ export default {
           });
       }
     };
+    // 详情跳转
+    const goInfo = (val) => {
+      router.push({
+        path: "/siteInspectionInfo",
+        query: { id: val },
+      });
+    };
     return {
       onClickLeft,
       onClickTab,
@@ -127,6 +134,7 @@ export default {
       value,
       onClickRight,
       tabIndex,
+      goInfo,
       beforeClose,
     };
   },

+ 2 - 2
src/views/activityMan/siteInspection/siteInspectionView.vue

@@ -130,7 +130,7 @@
 <script>
 import { reactive, ref } from "vue";
 import personList from "../personList.vue";
-import siteInspectionServer from "@/api/siteInspection/siteInspectionServer";
+import siteInspectionService from "@/api/siteInspection/siteInspectionService";
 import tools from "@/api/sys/tools";
 export default {
   components: { personList },
@@ -213,7 +213,7 @@ export default {
     const submit = () => {
       //添加保存前判断
 
-      new siteInspectionServer().save(siteInspection).then((res) => {
+      new siteInspectionService().save(siteInspection).then((res) => {
         if(res.data=="保存场所检查情况成功"){
           window.xm.showToast({
              message:"保存成功!"