浏览代码

Squashed commit of the following:

commit 11e9bc37b3aaa5af3dfd7f0e17a4ccfe0d99dba0
Author: yin_yu820 <895937358@qq.com>
Date:   Thu Apr 6 13:29:08 2023 +0800

    修改新增页面
LuChongMei 2 年之前
父节点
当前提交
91402700f8

+ 8 - 1
src/api/sys/tools.js

@@ -22,7 +22,14 @@ export default class Tools {
             `/religioussites/fire/fireEquipment/list`,
             params
         )
-    };    
+    };  
+    //非宗教类组织列表
+    NonReligiousInformationOrgList(params) {
+        return request.get(
+            `/zjzz/religion/listByGrid`,
+            params
+        )
+    };  
     // 文件上传
     uploadFile(formData, uploadPath) {
         return request.uploadFile(

+ 28 - 4
src/views/activityMan/nonReligiousInformation/nonReligiousInformationInfo.vue

@@ -9,14 +9,15 @@
       </div>
       <div class="info">
         <p>非宗教类别:{{ getCategories(info.nonReligiousCategories) }}</p>
-        <p>组织名称:{{ info.siteName.name }}</p>
+        <p>组织名称:{{ info.siteName.organizationName }}</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>
+        <p>事件内容:</p>
+        <div v-html="info.eventContent" class="showhtml"> </div>
       </div>
-      <van-button v-if="canAudit" type="primary" class="btn-sub">审核</van-button>
+      <van-button v-if="canAudit" type="primary" class="btn-sub" @click="update">审核</van-button>
     </div>
   </template>
     
@@ -27,7 +28,7 @@
   import { useRoute } from "vue-router";
   export default {
     setup() {
-      window.xm.setNavigationBarTitle({ title: '其他有害信息详情'})
+      //window.xm.setNavigationBarTitle({ title: '其他有害信息详情'})
       let isLoading = ref(true);
       let canAudit = ref(false);
       // 活动信息
@@ -45,6 +46,20 @@
         isLoading.value = false;
       });
 
+      // 审核通过
+      const update = () => {
+        isLoading.value = true;
+        info.value.assessment = 1;
+        new nonReligiousInformationService().save(info.value).then((res) => {
+          console.log(res);
+          isLoading.value = false;
+          window.xm.showToast({
+             message:"审核成功!"
+          })
+          history.back();
+        });
+      };
+
         //字典配置
         const getCategories= (key ) => {
             let re="";
@@ -92,10 +107,13 @@
             return re;
         };
 
+        
+
       return {
         info,
         isLoading,
         canAudit,
+        update,
         getCategories,
       };
     },
@@ -144,4 +162,10 @@
     text-align: center;
     margin-top: 80px;
   }
+  .showhtml{
+      margin: 5px;
+      padding: 10px;
+      border: 1px solid #ccc;
+      border-radius: 12px;
+    }
   </style>

+ 442 - 4
src/views/activityMan/nonReligiousInformation/nonReligiousInformationView.vue

@@ -1,6 +1,444 @@
 <template>
-    <div class="about">
-      <h1>This is an about page</h1>
+  <van-nav-bar
+    fixed
+    title="信息上报中心"
+    left-text=""
+    left-arrow
+    @click-left="onClickLeft"
+  />
+  <van-loading size="16px" v-show="isLoading">加载中...</van-loading>
+  <div class="main" v-show="!isLoading">
+    <p class="title">非宗教类信息上报</p>
+    <div class="formArea">
+      <p class="miniTitle">基础信息</p>
+
+      <van-cell-group>
+        <van-field
+          v-model="inputForm.nonReligiousCategoriesname"
+          readonly
+          required
+          label="非宗教类别:"
+          placeholder="请选择"
+          input-align="right"
+          right-icon="arrow-down"
+          @click="showCategories = true"
+        />
+        <van-popup v-model:show="showCategories" round position="bottom">
+          <van-picker
+            title="选择非宗教类别"
+            :columns="Categories"
+            :columns-field-names="customFieldName"
+            @cancel="showCategories = false"
+            @confirm="getCategories"
+          />
+        </van-popup>
+      </van-cell-group>
+
+      <van-cell-group>
+        <van-field
+          v-model="inputForm.siteName.name"
+          readonly
+          required
+          label="组织名称:"
+          placeholder="请选择"
+          input-align="right"
+          right-icon="arrow-down"
+          @click="showOrganizations = true"
+        />
+        <van-dialog
+          v-model:show="showOrganizations"
+          title="选择组织名称"
+          show-cancel-button
+          @confirm="reselected2"
+        >
+          <organizations-list @selected="selected2" :type="1"></organizations-list>
+        </van-dialog>
+      </van-cell-group>
+
+      <van-cell-group>
+        <van-field
+          v-model="inputForm.reportingTime"
+          center
+          readonly
+          label="时间:"
+          placeholder="请选择时间"
+          input-align="right"
+          right-icon="arrow-down"
+          @click="showAct = true"
+        />
+        <van-popup v-model:show="showAct" round position="bottom">
+          <van-picker-group
+            :tabs="['选择日期', '选择时间']"
+            next-step-text="下一步"
+            @confirm="getTime"
+            @cancel="showAct = false"
+          >
+            <van-date-picker v-model="currentDate" />
+            <van-time-picker
+              v-model="currentTime"
+              :columns-type="columnsType"
+            />
+          </van-picker-group>
+        </van-popup>
+      </van-cell-group>
+
+      <van-cell-group>
+        <van-field
+          v-model="inputForm.placeSelectName"
+          center
+          readonly
+          required
+          label="地点:"
+          placeholder="请选择"
+          input-align="right"
+          right-icon="arrow-down"
+          @click="showArea = true"
+        />
+        <van-popup v-model:show="showArea" round position="bottom">
+          <van-cascader
+            v-model="cascaderValue"
+            title="请选择所在地区"
+            :options="options"
+            @close="showArea = false"
+            @finish="onFinish"
+            :field-names="fieldNames"
+          />
+        </van-popup>
+      </van-cell-group>
+
+      <van-cell-group>
+        <van-field
+          v-model="inputForm.placeDetailed"
+          center
+          label="详细地址:"
+          placeholder="请填写具体地址"
+          input-align="right"
+          right-icon="location"
+        />
+      </van-cell-group>
+
+      <van-cell-group>
+        <van-field label="事件内容:" label-align="top">
+          <template #input>
+            <wang-editor ref="contentEditor" v-model="inputForm.eventContent" />
+          </template>
+        </van-field>
+      </van-cell-group>
+
+      <!-- <van-cell-group>
+        <van-field
+          v-model="inputForm.eventOverview"
+          center
+          label="事件概述:"
+          placeholder="请填写事件概述"
+          input-align="right"
+          right-icon="location"
+        />
+      </van-cell-group> -->
+
+      <van-cell-group>
+        <div class="rowTextArea">
+          <van-field
+            v-model="inputForm.eventOverview"
+            center
+            rows="1"
+            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 { ref, onMounted } from "vue";
+import personList from "../personList.vue";
+import organizationsList from "../organizationsList.vue";
+import tools from "@/api/sys/tools";
+import nonReligiousInformationService from "@/api/nonReligiousInformation/nonReligiousInformationService";
+import UserManage from "@/api/user/UserManage";
+import { useRoute } from "vue-router";
+// 富文本编辑器
+import WangEditor from "@/components/editor/WangEditor";
+export default {
+  components: { personList, WangEditor,organizationsList },
+  setup() {
+    // 加载
+    let isLoading = ref(true);
+    // 返回
+    const onClickLeft = () => {
+      history.back();
+    };
+    //信息
+    let inputForm = ref({
+      id: "",
+      nonReligiousCategoriesname: "",
+      nonReligiousCategories: "",
+      siteName: {
+        id: "",
+        name: "",
+      },
+      place: "320900",
+      placeSelectName: "盐城市",
+      placeSelectType3: "320900",
+      placeSelectType4: "",
+      placeSelectType5: "",
+      placeSelectType6: "",
+      placeDetailed: "",
+      reportingTime: "",
+      participants: {
+        id: "",
+        name: "",
+      },
+      eventContent: "",
+      state: "0",
+      assessment: "0",
+      eventOverview: "",
+    });
+    const contentEditor = ref(null);
+    let route = useRoute();
+    onMounted(() => {
+      // 根据路由初始化
+      if (route.query.id) {
+        new nonReligiousInformationService()
+          .queryById(route.query.id)
+          .then((data) => {
+            inputForm.value = data;
+            let ids = data.participants.id.split(",");
+            inputForm.value.participants.name = "";
+            ids.forEach((item) => {
+              new UserManage().queryById(item).then((data) => {
+                inputForm.value.participants.name += data.name + ",";
+              });
+            });
+            contentEditor.value.init(inputForm.value.eventContent);
+            isLoading.value = false;
+          });
+      } else {
+        contentEditor.value.init(inputForm.value.eventContent);
+        isLoading.value = false;
+      }
+    });
+
+
+    // 非宗教类别
+    let showCategories = ref(false);
+    let Categories = ref([{"name":"宗教组织","id":"1"},{"name":"邪教组织","id":"10"},{"name":"地下神学院","id":"11"},{"name":"地下教会","id":"2"},
+    {"name":"韩美境外渗透组织","id":"3"},{"name":"本地精神控制类有害培训机构","id":"4"},{"name":"“呼喊派”骨干组织","id":"5"},
+    {"name":"“改革宗”地下教会组织","id":"6"},{"name":"藏传佛教本地组织","id":"7"},{"name":"学生传教组织","id":"8"},
+    {"name":"“义诊医疗”地下教会组织","id":"9"},{"name":"“亚文化”传教组织","id":"91"},{"name":"重点公司组织","id":"92"},]);
+    const customFieldName = {
+      text: "name",
+      value: "id",
+    };
+    const getCategories = ({ selectedOptions }) => {
+      showCategories.value = false;
+      inputForm.value.nonReligiousCategories = selectedOptions[0].id;
+      inputForm.value.nonReligiousCategoriesname = selectedOptions[0].name;
+      console.log(selectedOptions[0]);
+      console.log(selectedOptions[0].name);
+      //类别选择完成后刷新
+      //getVideoAudioList();
+    };
+
+
+
+
+    //组织名称
+    let showOrganizations = ref(false);
+    let list2 = {
+      value: [],
+      type: "",
+    };
+    const selected2 = (val, type) => {
+      list2.value = val;
+      list2.type = type;
+    };
+    const reselected2 = () => {
+      let ids = [];
+      let names = [];
+      if (list2.type == 1) {
+        list2.value.forEach((item) => {
+          ids.push(item.id);
+          names.push(item.organizationName);
+        });
+        inputForm.value.siteName.id = ids.join(",");
+        inputForm.value.siteName.name = names.join(",");
+      }
+    };
+
+
+    // 获取活动时间
+    let showAct = ref(false);
+    let currentDate = ref(["" + new Date().getFullYear(), "01", "01"]);
+    let currentTime = ref(["00", "00", "00"]);
+    const columnsType = ["hour", "minute", "second"];
+    const getTime = () => {
+      showAct.value = false;
+      inputForm.value.reportingTime = `${currentDate.value.join(
+        "-"
+      )} ${currentTime.value.join(":")}`;
+    };
+
+    // 地区选择
+    let showArea = ref(false);
+    const cascaderValue = ref("");
+    const fieldNames = {
+      text: "name",
+      value: "code",
+      children: "children",
+    };
+    // 选项列表,children 代表子选项,支持多级嵌套
+    let options = ref([]);
+    new tools().treeData().then((res) => {
+      options.value.push(res[0]);
+    });
+    // 全部选项选择完毕后,会触发 finish 事件
+    const onFinish = ({ selectedOptions }) => {
+      showArea.value = false;
+      inputForm.value.placeSelectName = selectedOptions
+        .map((option) => option.name)
+        .join("/");
+        console.log("选择地区:"+selectedOptions);
+
+        inputForm.value.place = selectedOptions
+        .map((option) => option.id)
+        .join("/");
+
+        inputForm.value.placeSelectType3= selectedOptions[0].id;
+        inputForm.value.placeSelectType4= selectedOptions[1].id;
+        inputForm.value.placeSelectType5= selectedOptions[2].id;
+        console.log("11:"+inputForm.value);
+
+        //inputForm.value.placeSelectType6= selectedOptions[2].id,
+
+    };
+    const submit = () => {
+      isLoading.value = true;
+      new nonReligiousInformationService().save(inputForm.value).then((res) => {
+        if(res.data=="保存非宗教类信息上报成功"){
+          window.xm.showToast({
+             message:"保存成功!"
+          })
+          onClickLeft();
+        isLoading.value = false;
+        }
+      });
+    };
+    return {
+      isLoading,
+      inputForm,
+      //非宗教类别
+      showCategories,
+      Categories,
+      customFieldName,
+      getCategories,
+      //组织名称
+      showOrganizations,
+      selected2,
+      reselected2,
+      // 活动时间
+      showAct,
+      currentDate,
+      currentTime,
+      columnsType,
+      getTime,
+      // 返回
+      onClickLeft,
+
+      // 地区选择
+      showArea,
+      fieldNames,
+      options,
+      onFinish,
+      cascaderValue,
+      contentEditor,
+      // change,
+      submit,
+    };
+  },
+};
+</script>
+
+  <style scoped>
+* {
+  margin: 0;
+  padding: 0;
+}
+.main {
+  background: #fff;
+  position: relative;
+  top: 40px;
+}
+.title,
+.miniTitle {
+  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;
+}
+#editor {
+  position: relative;
+  height: 200px;
+}
+.w-e-text-container {
+  height: 150px !important;
+}
+.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%;
+}
+.van-loading {
+  text-align: center;
+  margin-top: 80px;
+}
+
+.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;
+}
+</style>

+ 164 - 0
src/views/activityMan/organizationsList.vue

@@ -0,0 +1,164 @@
+<template>
+    <div class="siteList">
+      <van-search
+        v-model="value"
+        show-action
+        placeholder="请输入搜索关键词"
+        @search="onSearch"
+        @cancel="onCancel"
+      />
+      <van-list
+        v-model:loading="loading"
+        :finished="finished"
+        finished-text="没有更多了"
+        @load="onLoad"
+      >
+        <van-checkbox-group
+          v-if="type == 1"
+          v-model="checked"
+          ref="checkboxGroup"
+        >
+          <van-button type="primary" size="mini" @click="checkAll"
+            >全选</van-button
+          >
+          <van-cell-group inset>
+            <van-cell
+              v-for="(item, index) in list"
+              clickable
+              :key="item"
+              :title="item.organizationName"
+              @click="toggle(index)"
+            >
+              <template #right-icon>
+                <van-checkbox
+                  shape="square"
+                  :name="item"
+                  :ref="(el) => (checkboxRefs[index] = el)"
+                />
+              </template>
+            </van-cell>
+          </van-cell-group>
+        </van-checkbox-group>
+        <van-radio-group v-if="type == 0" v-model="checked">
+          <van-cell-group inset>
+            <van-cell
+              v-for="item in list"
+              clickable
+              :key="item"
+              :title="item.organizationName"
+              @click="selectes(item)"
+            >
+              <template #right-icon>
+                <van-radio :name="item" />
+              </template>
+            </van-cell>
+          </van-cell-group>
+        </van-radio-group>
+      </van-list>
+    </div>
+  </template>
+  
+  <script>
+  import { ref } from "vue";
+  import tools from "@/api/sys/tools";
+  export default {
+    name: "organizationsList",
+    emits: ["selected"],
+    props: ["type"],
+    setup(props, { emit }) {
+      const list = ref([]);
+      const loading = ref(false);
+      const finished = ref(false);
+      let index = 0;
+      const onLoad = () => {
+        // 异步更新数据
+        new tools()
+        .NonReligiousInformationOrgList({
+            current: index + 1,
+            size: 10,
+            organizationType:1,//这边加筛选值
+        })
+        .then(({ records }) => {
+            list.value.push(...records);
+            // 加载状态结束
+            loading.value = false;
+            index++;
+            // 数据全部加载完成
+            if (records.length < 10) {
+              finished.value = true;
+            }
+        });
+        
+      };
+      // 搜索
+      const value = ref("");
+      const onSearch = (val) => showToast(val);
+      const onCancel = () => showToast("取消");
+      // 选择组织
+      const checked = ref([]);
+      const checkboxRefs = ref([]);
+      const checkboxGroup = ref(null);
+      const toggle = (index) => {
+        checkboxRefs.value[index].toggle();
+        emit("selected", checked.value, 1);
+      };
+      // 全选
+      const checkAll = () => {
+        checkboxGroup.value.toggleAll(true);
+        emit("selected", checked.value, 1);
+      };
+      const selectes = (val) => {
+        checked.value = val;
+        //console.log(props.type);
+        //console.log(111);
+        emit("selected", checked.value, 0);
+      };
+  
+      return {
+        // 场所
+        list,
+        onLoad,
+        loading,
+        finished,
+        // 搜索
+        value,
+        onSearch,
+        onCancel,
+        // 全选
+        checkAll,
+        toggle,
+        checked,
+        checkboxRefs,
+        checkboxGroup,
+        // 单选
+        selectes,
+      };
+    },
+  };
+  </script>
+  
+  <style scoped>
+  .siteList {
+    height: 65vh;
+    overflow: auto;
+    margin: 10px;
+  }
+  .van-button {
+    top: -5px;
+  }
+  .search {
+    height: 40px;
+    line-height: 40px;
+  }
+  .van-list {
+    height: 80%;
+    margin-top: 5px;
+  }
+  .keyword {
+    width: 70%;
+    height: 25px;
+    border-radius: 25px;
+    border: 1px solid;
+    padding-left: 15px;
+  }
+  </style>

+ 76 - 51
src/views/activityMan/religiousConference/religiousConferenceInfo.vue

@@ -1,6 +1,5 @@
 <template>
-
-    <van-loading size="16px" v-if="isLoading">加载中...</van-loading>
+    <van-loading size="16px" v-if="isLoading" >加载中...</van-loading>
     <div class="main" v-if="!isLoading">
       <div class="banner">
         <h2>扎实提升“三力”</h2>
@@ -13,25 +12,25 @@
         <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>
+        <p>会议议题:</p>
+          <div v-html="info.meetingTopics" class="showhtml"> </div>
       </div>
-      <van-button v-if="canAudit" type="primary" class="btn-sub">审核</van-button>
+      <van-button v-if="canAudit" type="primary" class="btn-sub" @click="update">审核</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";
+  import religiousConferenceService from "@/api/religiousConference/religiousConferenceService";  
   export default {
     setup() {
-      window.xm.setNavigationBarTitle({ title: '负责人会议详情'})
+      //window.xm.setNavigationBarTitle({ title: '负责人会议详情'})
       let isLoading = ref(true);
       let canAudit = ref(false);
       // 活动信息
-      const info = ref({        
+      const info = ref({     
+        meetingTopics:"",  
       });
       let route = useRoute();
       new religiousConferenceService().queryById(route.query.id).then((data) => {
@@ -41,58 +40,84 @@
         }else{
           canAudit.value = false;
         }      
-
+        console.log(info.value.meetingTopics);
         isLoading.value = false;
       });
+      // 审核通过
+      const update = () => {
+        isLoading.value = true;
+        info.value.assessment = 1;
+        new religiousConferenceService().save(info.value).then((res) => {
+          console.log(res);
+          isLoading.value = false;
+          window.xm.showToast({
+             message:"审核成功!"
+          })
+          history.back();
+        });
+      };
       return {
         info,
         isLoading,
         canAudit,
+        update,
       };
     },
   };
   </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;
+    <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>
+    .info {
+      position: relative;
+      width: 86vw;
+      // height: 120px;
+      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;
+    }
+    #editor {
+      width: 100%;
+      height: 150px;
+      overflow: hidden;
+    }
+    .showhtml{
+      margin: 5px;
+      padding: 10px;
+      border: 1px solid #ccc;
+      border-radius: 12px;
+    }
+    </style>

+ 1 - 1
src/views/activityMan/religiousConference/religiousConferenceView.vue

@@ -16,6 +16,7 @@
           v-model="inputForm.placeSelectName"
           center
           readonly
+          required
           label="会议地点:"
           placeholder="请选择"
           input-align="right"
@@ -107,7 +108,6 @@
         <van-field
           v-model="inputForm.participants.name"
           center
-          required
           label="参会人员:"
           placeholder="请选择参会人员"
           input-align="right"

+ 32 - 2
src/views/activityMan/securityFacilitiesErr/securityFacilitiesErrInfo.vue

@@ -14,10 +14,16 @@
         <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>
+          附&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;件:
+          <span v-if="fileList.length != 0" style="color: #6892ff">{{
+            fileList[0].name
+          }}</span>
+          <span v-else style="color: red">无</span>
+        </p>
         <p>异常内容:{{ info.abnormalContent }}</p>
       </div>
-      <van-button v-if="canAudit" type="primary" class="btn-sub">审核</van-button>
+      <van-button v-if="canAudit" type="primary" class="btn-sub" @click="update">审核</van-button>
     </div>
   </template>
     
@@ -34,6 +40,7 @@
       // 活动信息
       const info = ref({        
       });
+      let fileList = ref([]);
       let route = useRoute();
       new securityFacilitiesErrService().queryById(route.query.id).then((data) => {
         info.value = data;
@@ -43,11 +50,34 @@
           canAudit.value = false;
         }      
 
+        info.value.enclosure.split("|").forEach((item) => {
+          if (item.trim().length > 0) {
+            fileList.value.push({
+              name: decodeURIComponent(item.substring(item.lastIndexOf("/") + 1)),
+              url: item,
+            });
+          }
+        });
         isLoading.value = false;
       });
+      // 审核通过
+      const update = () => {
+        isLoading.value = true;
+        info.value.assessment = 1;
+        new securityFacilitiesErrService().save(info.value).then((res) => {
+          console.log(res);
+          isLoading.value = false;
+          window.xm.showToast({
+             message:"审核成功!"
+          })
+          history.back();
+        });
+      };
       return {
         info,
         isLoading,
+        update,
+        fileList,
         canAudit,
       };
     },

+ 33 - 4
src/views/activityMan/siteInspection/siteInspectionInfo.vue

@@ -12,10 +12,16 @@
         <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>
+          附&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;件:
+          <span v-if="fileList.length != 0" style="color: #6892ff">{{
+            fileList[0].name
+          }}</span>
+          <span v-else style="color: red">无</span>
+        </p>
         <p>督查内容:{{ info.supervisionContent }}</p>
       </div>
-      <van-button v-if="canAudit" type="primary" class="btn-sub">审核</van-button>
+      <van-button v-if="canAudit" type="primary" class="btn-sub" @click="update">审核</van-button>
     </div>
   </template>
     
@@ -26,12 +32,13 @@
   import { useRoute } from "vue-router";
   export default {
     setup() {
-      window.xm.setNavigationBarTitle({ title: '场所检查详情'})
+      //window.xm.setNavigationBarTitle({ title: '场所检查详情'})
       let isLoading = ref(true);
       let canAudit = ref(false);
       // 活动信息
       const info = ref({        
       });
+      let fileList = ref([]);
       let route = useRoute();
       new siteInspectionService().queryById(route.query.id).then((data) => {
         info.value = data;
@@ -41,12 +48,34 @@
           canAudit.value = false;
         }
         
-
+        info.value.enclosure.split("|").forEach((item) => {
+          if (item.trim().length > 0) {
+            fileList.value.push({
+              name: decodeURIComponent(item.substring(item.lastIndexOf("/") + 1)),
+              url: item,
+            });
+          }
+        });
         isLoading.value = false;
       });
+      // 审核通过
+      const update = () => {
+        isLoading.value = true;
+        info.value.assessment = 1;
+        new siteInspectionService().save(info.value).then((res) => {
+          console.log(res);
+          isLoading.value = false;
+          window.xm.showToast({
+             message:"审核成功!"
+          })
+          history.back();
+        });
+      };
       return {
         info,
         isLoading,
+        update,
+        fileList,
         canAudit,
       };
     },

+ 83 - 70
src/views/placeManage/placePerson.vue

@@ -6,7 +6,6 @@
       show-action
       shape="round"
       placeholder="请输入姓名/身份证/场所名称"
-      @search="onSearch"
     >
       <template #action>
         <div>
@@ -22,7 +21,7 @@
       </template>
     </van-search>
   </div>
-  <div class="PersonList" v-if="value1 == 0">
+  <div class="PersonList" v-if="value1 == 0 || value == ''">
     <div
       class="PersonItem"
       v-for="item in dataList"
@@ -38,8 +37,8 @@
             >)
           </p>
         </van-col>
-        <van-col span="6" style="">
-          <div
+        <van-col span="6" style="text-align: right">
+          <!-- <div
             v-for="(item2, index) in item.userManagenmetDetailsDTOList"
             :key="index"
             style="font-size: 12px"
@@ -59,12 +58,16 @@
               <span v-if="item2.value == 4" style="color: #d3c701">佛教</span>
               <span v-if="item2.value == 5" style="color: #a0522d">道教</span>
             </p>
-          </div>
+          </div> -->
+          <span v-if="item.sex == 1" style="color: #36a7f3">男</span>
+          <span v-if="item.sex == 2" style="color: #d3c701">女</span>
         </van-col>
       </van-row>
       <van-row>
         <van-col span="18">
-          <span style="color:#a2a2a2;" v-if="item.location.id">{{item.location.value}}</span>
+          <span style="color: #a2a2a2" v-if="item.locationName">{{
+            item.locationName
+          }}</span>
         </van-col>
         <van-col span="6" style="text-align: right; font-size: 12px">
           <span v-if="item.personnelType == 1">宗教从业人员</span>
@@ -93,7 +96,7 @@
       </van-row>
     </div>
   </div>
-  <div class="PersonList" v-if="value1 != 0">
+  <div class="PersonList" v-if="value1 != 0 && value != ''">
     <div
       class="PersonItem"
       v-for="item in PersonList"
@@ -109,8 +112,8 @@
             >)
           </p>
         </van-col>
-        <van-col span="6" style="">
-          <div
+        <van-col span="6" style="text-align: right">
+          <!-- <div
             v-for="(item2, index) in item.userManagenmetDetailsDTOList"
             :key="index"
             style="font-size: 12px"
@@ -130,12 +133,16 @@
               <span v-if="item2.value == 4" style="color: #d3c701">佛教</span>
               <span v-if="item2.value == 5" style="color: #a0522d">道教</span>
             </p>
-          </div>
+          </div> -->
+          <span v-if="item.sex == 1" style="color: #36a7f3">男</span>
+          <span v-if="item.sex == 2" style="color: #d3c701">女</span>
         </van-col>
       </van-row>
       <van-row>
         <van-col span="18">
-          <span style="color:#a2a2a2;" v-if="item.location.id">{{item.location.value}}</span>
+          <span style="color: #a2a2a2" v-if="item.locationName">{{
+            item.locationName
+          }}</span>
         </van-col>
         <van-col span="6" style="text-align: right; font-size: 12px">
           <span v-if="item.personnelType == 1">宗教从业人员</span>
@@ -167,57 +174,30 @@
 </template>
 
 <script>
-import {  ref } from "vue";
+import { ref } from "vue";
 import { useRouter } from "vue-router";
 import UserManage from "@/api/user/UserManage";
-import placeRegister from "@/api/placeRegister/placeRegister";
 export default {
   setup() {
     const value = ref("");
     const value1 = ref(0);
+    // const option1 = [
+    //   { text: "所有教别", value: 0 },
+    //   { text: "伊斯兰教", value: 1 },
+    //   { text: "基督教", value: 2 },
+    //   { text: "天主教", value: 3 },
+    //   { text: "佛教", value: 4 },
+    //   { text: "道教", value: 5 },
+    // ];
     const option1 = [
-      { text: "所有教别", value: 0 },
-      { text: "伊斯兰教", value: 1 },
-      { text: "基督教", value: 2 },
-      { text: "天主教", value: 3 },
-      { text: "佛教", value: 4 },
-      { text: "道教", value: 5 },
+      { text: "搜索选择", value: 0 },
+      { text: "姓名", value: 1 },
+      { text: "身份证号", value: 2 },
+      { text: "场所名称", value: 3 },
     ];
     let PersonList = ref([]);
     let dataList = ref([]);
-    //宗教选择
-    const changeValue = (value2) => {
-      if (value2 == 0) {
-        PersonList.value = dataList.value;
-      } else {
-        let dealList = [];
-        dataList.value.forEach((L1) => {
-          L1.userManagenmetDetailsDTOList.forEach((L2) => {
-            if (
-              L2.value == value2 &&
-              L2.dataType === "1" &&
-              L2.dataDictionary == "hs_religion_type"
-            ) {
-              dealList.push(L1);
-            }
-          });
-        });
-        PersonList.value = dealList;
-      }
-    };
-
-    //跳转
-    let router = useRouter();
-    const goPlacePersonInfo = (item) => {
-      var data = JSON.stringify(item);
-      router.push({
-        path: "/placePersoninfo",
-        query: { data: data },
-      });
-    };
-
     //数据获取
-    let list = ref([]);
     const loading = ref(false);
     const finished = ref(false);
     new UserManage()
@@ -226,27 +206,60 @@ export default {
         size: 10,
       })
       .then((res) => {
-        list.value.push(...res.records);
-        let Ids = [];
-        list.value.forEach((item) => {
-          Ids.push(item.id);
-        });
-        Ids.forEach((item2) => {
-          new UserManage().queryById(item2).then((res) => {
-            if (res.location.id) {
-              let locationIds = [];
-              let ids = res.location.id;
-              locationIds = ids.split(",");
-              locationIds.forEach((res2) => {
-                new placeRegister().queryById(res2).then((res3) => {
-                  res.location.value += "" + res3.name + ",";
-                });
-              });
-            }
-            dataList.value.push(res);
+        let list2 = [];
+        list2.push(...res.records);
+        list2.forEach((n1) => {
+          let id = n1.id;
+          new UserManage().queryById(id).then((LP) => {
+            n1.userManagenmetDetailsDTOList = LP.userManagenmetDetailsDTOList;
           });
         });
+        dataList.value = list2;
       });
+    //跳转
+    let router = useRouter();
+    const goPlacePersonInfo = (item) => {
+      var data = JSON.stringify(item);
+      router.push({
+        path: "/placePersoninfo",
+        query: { data: data },
+      });
+    };
+    //宗教选择
+    const changeValue = (value2) => {
+      if (value.value != "") {
+        switch (value2) {
+          case 0:
+            PersonList.value = dataList.value;
+            break;
+          case 1:
+            dataList.value.forEach((s1) => {
+              if (s1.name == value.value) {
+                PersonList.value.push(s1);
+              }
+            });
+            break;
+          case 2:
+            dataList.value.forEach((s1) => {
+              if (s1.idcard == value.value) {
+                PersonList.value.push(s1);
+              }
+            });
+            break;
+          case 3:
+            dataList.value.forEach((s1) => {
+              if (s1.locationName == value.value) {
+                PersonList.value.push(s1);
+              }
+            });
+            break;
+          default:
+            break;
+        }
+      }else{
+        PersonList.value.splice(0,PersonList.value.length)
+      }
+    };
     //返回
     const goback = () => {
       history.back();
@@ -261,7 +274,7 @@ export default {
       goPlacePersonInfo,
       changeValue,
       PersonList,
-      dataList
+      dataList,
     };
   },
 };

+ 2 - 12
src/views/placeManage/placePersoninfo.vue

@@ -215,7 +215,6 @@
 <script>
 import { useRouter } from 'vue-router'
 import {onMounted, reactive,ref} from "vue"
-import UserManage from '@/api/user/UserManage';
 export default {
   setup(){
     const data = reactive({
@@ -227,17 +226,8 @@ export default {
     const router = useRouter();
     onMounted(()=>{
       var item = JSON.parse(router.currentRoute.value.query.data)
-      id = item.id
-      console.log(id);
-      //id查询扩展信息
-      new UserManage().queryById(id).then((res)=>{
-        data.data = res
-        
-        console.log(res);
-        // res.userManagenmetDetailsDTOList.forEach(item => {
-        //   data.dataArray.push(item.value);
-        // });
-      })
+      console.log(item);
+      data.data = item;
     })
     //返回
     const goback = () => {

+ 1 - 1
src/views/placeManage/placeTabletInfo.vue

@@ -210,7 +210,7 @@ html {
 .content {
   position: fixed;
   width: 85%;
-  top: 240px;
+  top: 180px;
   left: 50%;
   padding: 20px 10px;
   transform: translateX(-50%);

+ 4 - 2
src/views/tab_a/tabAll.vue

@@ -50,7 +50,7 @@
 	<van-grid :border="false">
 		<van-grid-item icon="../../../loginbg/csdj.png" text="场所登记" @click="goPlaceRegister"/>
 		<van-grid-item icon="../../../loginbg/csry.png" text="场所人员信息" @click="goPlacePerson" />
-		<van-grid-item icon="../../../loginbg/cspw.png" text="牌位管理" />
+		<van-grid-item icon="../../../loginbg/cspw.png" text="牌位管理" @click="goPlaceTablet"/>
 	</van-grid>
 
 	<div class="hLine"></div>
@@ -106,7 +106,9 @@ import userSets from "@/api/sys/userSets";
 			goPlacePerson() {
               this.$router.push("/placePerson");
             },
-
+			goPlaceTablet(){
+				this.$router.push("/placeTablet");
+			},
 			onClickLeft(){
 				history.back();
 			},