资源监测页面

dev
zc 3 years ago
parent 9f03e896b7
commit 440aeee070
  1. 3
      ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
  2. 33
      ruoyi-ui/src/views/picture/resource-monitoring/dialog-module/guide-detail.vue
  3. 8
      ruoyi-ui/src/views/picture/resource-monitoring/dialog-module/iot-detail.vue
  4. 10
      ruoyi-ui/src/views/picture/resource-monitoring/dialog-module/worker-detail.vue
  5. 11
      ruoyi-ui/src/views/picture/resource-monitoring/index.vue
  6. 137
      ruoyi-ui/src/views/picture/resource-monitoring/resoure-dialog.vue

@ -93,11 +93,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</select>
<select id="selectAllocatedList" parameterType="SysUser" resultMap="SysUserResult">
select distinct u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.phonenumber, u.status, u.create_time
select distinct u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.phonenumber, u.status, u.create_time,e.organ_name as organName
from sys_user u
left join sys_dept d on u.dept_id = d.dept_id
left join sys_user_role ur on u.user_id = ur.user_id
left join sys_role r on r.role_id = ur.role_id
left join ti_enterprise_info e on u.organ_code = e.organ_code
where u.del_flag = '0' and r.role_id = #{roleId}
<if test="userName != null and userName != ''">
AND u.user_name like concat('%', #{userName}, '%')

@ -1,37 +1,39 @@
<template>
<div class="p-dialog-box">
<div class="p-dialog-title"><span class="p-dialog-title-text">导游信息</span></div>
<!-- <div class="p-dialog-title"><span class="p-dialog-title-text">导游信息</span></div>-->
<div class="display-flex p-container p-t-large p-b-large">
<div class="p-dialog-img m-r-super">
<i class="iconfont icon-admin"></i>
<div class="">
<i class="iconfont resource-monitoring"></i>
<div>导游等级</div>
<div>初级</div>
<img :src="detailData.coverImg" style="width: 100%" />
<div>
<dict-tag :options="dict.type.guide_level" :value="detailData.level"/>
</div>
</div>
</div>
<div class="p-dialog-message flex-auto">
<div class="p-dialog-name">张欣欣</div>
<div class="p-dialog-name">{{detailData.guideName}}</div>
<div class="display-flex">
<div class="p-dialog-item m-t-small col-6">
<div class="p-dialog-label">服务语种</div>
<div class="p-dialog-con num">中文</div>
<div class="p-dialog-con num">
<dict-tag :options="dict.type.guide_languages" :value="detailData.languages.split(',')"/>
</div>
</div>
<div class="p-dialog-item m-t-small col-6">
<div class="p-dialog-label">导游证号</div>
<div class="p-dialog-con num">5642652</div>
<div class="p-dialog-con num">{{detailData.cardNumber}}</div>
</div>
<div class="p-dialog-item m-t-small col-6">
<div class="p-dialog-label">资格证号</div>
<div class="p-dialog-con num">SD55464</div>
<div class="p-dialog-con num">{{detailData.certificateNumber}}</div>
</div>
<div class="p-dialog-item m-t-small col-6">
<div class="p-dialog-label">手机号码</div>
<div class="p-dialog-con num">15233336666</div>
<div class="p-dialog-con num">{{detailData.telephone}}</div>
</div>
<div class="p-dialog-item m-t-small col-12">
<div class="p-dialog-label">所属机构</div>
<div class="p-dialog-con">嵩山景区综合管理平台</div>
<div class="p-dialog-con">{{detailData.travel == null || detailData.travel == undefined ? detailData.industryName:detailData.travel}}</div>
</div>
</div>
</div>
@ -42,7 +44,14 @@
<script>
export default {
name: "guide-detail"
name: "guide-detail",
props: ['detailData','interfacePath','dataType'],
dicts: ['sys_user_sex','guide_level','guide_languages'],
data() {
return {
baseUrl: process.env.VUE_APP_BASE_API
}
},
}
</script>

@ -24,7 +24,7 @@
设备品牌
</div>
<div class="d-form-body">
海康
<dict-tag :options="dict.type.dev_brand_dict" :value="detailData.devBrand" />
</div>
</div>
</el-col>
@ -34,7 +34,7 @@
运行状态
</div>
<div class="d-form-body">
在线
{{detailData.runStatus == 0 ?'离线':'在线'}}
</div>
</div>
</el-col>
@ -45,7 +45,7 @@
规格型号
</div>
<div class="d-form-body">
室外球机
<dict-tag :options="dict.type.dev_model_dict" :value="detailData.devModel" />
</div>
</div>
</el-col>
@ -65,6 +65,8 @@
<script>
export default {
name: "iot-detail",
props: ['detailData','interfacePath','dataType'],
dicts: ['dev_brand_dict','dev_model_dict'],
data() {
return {
navList: [{name: "首页"}, {name: "客流"}, {name: "网评"}, {name: "投诉"}, {name: "全景"}, {name: "微信"}],

@ -1,13 +1,12 @@
<template>
<!-- 工作人员 详情 -->
<div class="p-dialog-box">
<div class="p-dialog-title"><span class="p-dialog-title-text">工作人员</span></div>
<div class="display-flex p-container p-t-large p-b-large">
<div class="p-dialog-img m-r-super"><i class="iconfont icon-admin"></i></div>
<div class="p-dialog-message flex-auto">
<div class="p-dialog-name">嵩山景区管理委员会</div>
<div class="p-dialog-item m-t-small">信息办</div>
<div class="p-dialog-item m-t-mini">大数据管理<span class="num">15225060040</span></div>
<div class="p-dialog-name">{{detailData.organName}}</div>
<div class="p-dialog-item m-t-small">{{detailData.dept.deptName}}</div>
<div class="p-dialog-item m-t-mini">{{detailData.nickName}}<span class="num">{{detailData.phonenumber}}</span></div>
</div>
</div>
</div>
@ -15,6 +14,7 @@
<script>
export default {
name: "work-detail"
name: "work-detail",
props: ['detailData','interfacePath','dataType'],
}
</script>

@ -172,7 +172,7 @@
<base-overflow height="calc(100% - 120rem)" class="p-resource-type">
<div class="p-resource-list">
<div class="p-resource-list-item" v-for="(item,index) in resourceListData" :key="index"
@click="getDialog(item.resourceName,'detail',item.id)">
@click="getDialog(item.resourceName,'detail',item.id == undefined ? item.userId : item.id)">
<div v-if="currentData.dataType == 'guide'" class="p-resource-list-img m-r-large">
<img :src="baseUrl+item.coverImg">
</div>
@ -260,6 +260,7 @@ import resoureDialog from "@/views/picture/resource-monitoring/resoure-dialog";
import BaseClose from "@/views/components/p-close/BaseClose";
import AMap from 'AMap'
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
import Treeselect from "@riophae/vue-treeselect";
import { getBasicResourceCount,getRsourceMenuGroupList,getBasicList,getAreaSupervisor,getBasicDetail } from "@/api/picture/resource-monitoring/resourceMonitoring";
@ -523,12 +524,16 @@ export default {
} else {
this.getBasicDetail(id);
}
this.dialogName = title
if(this.currentData.dataType == 'guide'){
this.dialogName = '导游信息';
}else if(this.currentData.dataType == '01'){
this.dialogName = '工作人员信息'
}
this.dialogType = type
},
getBasicDetail(id){
let url = this.currentData.interfacePath + id;
if(!this.currentData.interfacePath.includes("guide") && !this.currentData.interfacePath.includes("user") && !this.currentData.interfacePath.includes("venue")){
if(!this.currentData.interfacePath.includes("guide") && !this.currentData.interfacePath.includes("user") && !this.currentData.interfacePath.includes("venue") && !this.currentData.interfacePath.includes("iot") && !this.currentData.interfacePath.includes("iot")){
url += "/" + this.currentData.dataType;
}
console.log(url);

@ -2,101 +2,96 @@
<div class="p-resoure-dialog">
<!-- 旅游场所 ----------------------------------------------------- -->
<!-- 景区 scenic 娱乐 fun-->
<tourList
v-if="type == 'sceniclist' || type == 'funlist' || type == 'hotellist' || type == 'rurallist' || type == 'homestaylist' || type == 'foodlist' || type == 'shoppinglist' || type == 'travellist'"
:listData="propsData" :total="total" :dataType="dataType" :interfacePath="interfacePath"></tourList>
<tourDetail v-if="type == 'scenicdetail' || type == 'ruraldetail' || type == 'fundetail'" :detailData="propsData"
:dataType="dataType" :interfacePath="interfacePath"></tourDetail>
<tourList v-if="type == 'sceniclist' || type == 'funlist' || type == 'hotellist' || type == 'rurallist' || type == 'homestaylist' || type == 'foodlist' || type == 'shoppinglist' || type == 'travellist'" :listData="propsData" :total="total" :dataType="dataType" :interfacePath="interfacePath"></tourList>
<tourDetail v-if="type == 'scenicdetail' || type == 'ruraldetail' || type == 'fundetail' || type == 'hoteldetail' || type == 'homestaydetail' || type == 'fooddetail' || type == 'shoppingdetail' || dataType == 'travel'" :detailData="propsData" :dataType="dataType" :interfacePath="interfacePath"></tourDetail>
<!--文化场馆列表-->
<venueList
v-if="type == 'museumlist' || type == 'artgallerylist' || type == 'culturallist' || type == 'memorialhalllist' || type == 'librarylist' || type == 'technologylist' || type == 'gymnasiumlist'"
:listData="propsData" :total="total" :dataType="dataType" :interfacePath="interfacePath"></venueList>
<venueList v-if="type == 'museumlist' || type == 'artgallerylist' || type == 'culturallist' || type == 'memorialhalllist' || type == 'librarylist' || type == 'technologylist' || type == 'gymnasiumlist'" :listData="propsData" :total="total" :dataType="dataType" :interfacePath="interfacePath"></venueList>
<venueDetail v-if="type == 'museumdetail' || type == 'artgallerydetail' || type == 'culturaldetail' || type == 'memorialhalldetail' || type == 'librarydetail' || type == 'technologydetail' || type == 'gymnasiumdetail'" :detailData="propsData" :dataType="dataType" :interfacePath="interfacePath"></venueDetail>
<!--游客服务列表-->
<touristList
v-if="type == 'toiletlist' || type == 'carparklist' || type == 'bustoplist' || type == 'railstationlist' || type == 'airportlist' || type == 'charginglist' || type == 'gastationlist' || type == 'trafficlist' || type == 'wharflist' || type == 'tourservicelist' || type == 'entrepotlist' || type == 'spotlist' || type == 'ticketlist' || type == 'inletexitlist' || type == 'cablewaylist' || type == 'placelist' || type == 'buildinglist' || type == 'otherlist' || type == 'flowerlist' || type == 'halllist' || type == 'exhibitlist' || type == 'collectionlist'"
:listData="propsData" :total="total" :dataType="dataType" :interfacePath="interfacePath"></touristList>
<touristList v-if="type == 'toiletlist' || type == 'carparklist' || type == 'bustoplist' || type == 'railstationlist' || type == 'airportlist' || type == 'charginglist' || type == 'gastationlist' || type == 'trafficlist' || type == 'wharflist' || type == 'tourservicelist' || type == 'entrepotlist' || type == 'spotlist' || type == 'ticketlist' || type == 'inletexitlist' || type == 'cablewaylist' || type == 'placelist' || type == 'buildinglist' || type == 'otherlist' || type == 'flowerlist' || type == 'halllist' || type == 'exhibitlist' || type == 'collectionlist'" :listData="propsData" :total="total" :dataType="dataType" :interfacePath="interfacePath"></touristList>
<tourisDetail v-if="type == 'toiletdetail'" :detailData="propsData" :dataType="dataType" :interfacePath="interfacePath"></tourisDetail>
<!-- 酒店 hotel -->
<!-- <hotelList v-if="type == 'hotellist'" :listData="propsData" :total="total" :dataType="dataType" :interfacePath="interfacePath"></hotelList>-->
<hotelDetail v-if="type == 'hoteldetail'" :detailData="propsData"></hotelDetail>
<!-- <hotelDetail v-if="type == 'hoteldetail'" :detailData="propsData"></hotelDetail>-->
<!-- 物联设备 ----------------------------------------------------- -->
<iotList
v-if="type == 'videolist' || type == 'passflowlist' || type == 'broadcastlist' || type == 'ledlist' || type == 'wifilist' || type == 'polelist' || type == 'patrollist' || type == 'reportlist' || type == 'soslist' || type == 'vibelist' || type == 'geologilist' || type == 'firelist' || type == 'intrudelist'"
:listData="propsData" :total="total" :dataType="dataType" :interfacePath="interfacePath"></iotList>
<videoDetail v-if="type == 'videodetail'" :detailData="propsData"></videoDetail>
<iotDetail v-if="type == 'passflowdetail'"></iotDetail>
<iotList v-if="type == 'videolist' || type == 'passflowlist' || type == 'broadcastlist' || type == 'ledlist' || type == 'wifilist' || type == 'polelist' || type == 'patrollist' || type == 'reportlist' || type == 'soslist' || type == 'vibelist' || type == 'geologilist' || type == 'firelist' || type == 'intrudelist'" :listData="propsData" :total="total" :dataType="dataType" :interfacePath="interfacePath"></iotList>
<!-- <videoDetail v-if="type == 'videodetail'" :detailData="propsData"></videoDetail>-->
<iotDetail v-if="type == 'videodetail' || type == 'passflowdetail' || type == 'broadcastdetail' || type == 'leddetail' || type == 'wifidetail' || type == 'poledetail' || type == 'patroldetail' || type == 'reportdetail' || type == 'sosdetail' || type == 'vibedetail' || type == 'geologidetail' || type == 'firedetail' || type == 'intrudedetail'" :detailData="propsData" :dataType="dataType" :interfacePath="interfacePath"></iotDetail>
<!--应急场所------------------------------>
<emergencyList
v-if="type == 'emergmangelist' || type == 'medicalalist' || type == 'firecolist' || type == 'takerefugelist' || type == 'armedlist'"
:listData="propsData" :total="total" :dataType="dataType" :interfacePath="interfacePath"></emergencyList>
<emergencyList v-if="type == 'emergmangelist' || type == 'medicalalist' || type == 'firecolist' || type == 'takerefugelist' || type == 'armedlist'" :listData="propsData" :total="total" :dataType="dataType" :interfacePath="interfacePath"></emergencyList>
<!-- 游客服务 ----------------------------------------------------- -->
<!-- 工作人员 worker -->
<workerList v-if="type == '01list'" :listData="propsData" :total="total" :dataType="dataType"
:interfacePath="interfacePath"></workerList>
<workerDetail v-if="type == '01detail'"></workerDetail>
<workerList v-if="type == '01list'" :listData="propsData" :total="total" :dataType="dataType" :interfacePath="interfacePath"></workerList>
<workerDetail v-if="type == '01detail'" :detailData="propsData" :dataType="dataType" :interfacePath="interfacePath"></workerDetail>
<!-- 导游 guide -->
<guideList v-if="type == 'guidelist'" :listData="propsData" :total="total" :dataType="dataType"
:interfacePath="interfacePath"></guideList>
<guideDetail v-if="type == 'guidedetail'"></guideDetail>
<guideList v-if="type == 'guidelist'" :listData="propsData" :total="total" :dataType="dataType" :interfacePath="interfacePath"></guideList>
<guideDetail v-if="type == 'guidedetail'" :detailData="propsData" :dataType="dataType" :interfacePath="interfacePath"></guideDetail>
<!-- 游玩景点 spot -->
<!-- <spotList v-if="type == 'spotlist'" :listData="propsData" :total="total" :dataType="dataType" :interfacePath="interfacePath"></spotList>-->
<spotDetail v-if="type == 'spotdetail'" :detailData="propsData"></spotDetail>
<spotDetail v-if="type == 'spotdetail' || type == 'carparkdetail' || type == 'bustopdetail' || type == 'railstationdetail' || type == 'airportdetail' || type == 'chargingdetail' || type == 'gastationdetail' || type == 'trafficdetail' || type == 'wharfdetail' || type == 'tourservicedetail' || type == 'entrepotdetail' || type == 'ticketdetail' || type == 'inletexitdetail' || type == 'cablewaydetail' || type == 'placedetail' || type == 'buildingdetail' || type == 'otherdetail' || type == 'flowerdetail' || type == 'halldetail' || type == 'exhibitdetail' || type == 'collectiondetail'" :detailData="propsData" :dataType="dataType" :interfacePath="interfacePath"></spotDetail>
<!-- name type -->
</div>
</template>
<script>
// -----------------------------------------------------
//
import tourList from "@/views/picture/resource-monitoring/dialog-module/tour-list";
// scenic
import tourDetail from "@/views/picture/resource-monitoring/dialog-module/tour-detail";
// hotel
import hotelDetail from "@/views/picture/resource-monitoring/dialog-module/hotel-detail";
// -----------------------------------------------------
//
import tourList from "@/views/picture/resource-monitoring/dialog-module/tour-list";
// scenic
import tourDetail from "@/views/picture/resource-monitoring/dialog-module/tour-detail";
// hotel
import hotelDetail from "@/views/picture/resource-monitoring/dialog-module/hotel-detail";
//-----------------------------------------------------------
//
import venueList from "@/views/picture/resource-monitoring/dialog-module/venue-list";
//
import venueDetail from "@/views/picture/resource-monitoring/dialog-module/venue-detail";
//-----------------------------------------------------------
//
import touristList from "@/views/picture/resource-monitoring/dialog-module/tourist-list";
//
import tourisDetail from "@/views/picture/resource-monitoring/dialog-module/tourist-detail";
// -----------------------------------------------------
//
import iotList from "@/views/picture/resource-monitoring/dialog-module/iot-list";
//-----------------------------------------------------------
//
import venueList from "@/views/picture/resource-monitoring/dialog-module/venue-list";
//-----------------------------------------------------------
//
import touristList from "@/views/picture/resource-monitoring/dialog-module/tourist-list";
//--------------------------------------------------------
import emergencyList from "@/views/picture/resource-monitoring/dialog-module/emergency-list";
// -----------------------------------------------------
//
import iotList from "@/views/picture/resource-monitoring/dialog-module/iot-list";
import iotDetail from "@/views/picture/resource-monitoring/dialog-module/iot-detail";
//--------------------------------------------------------
import emergencyList from "@/views/picture/resource-monitoring/dialog-module/emergency-list";
// -----------------------------------------------------
// worker
import workerList from "@/views/picture/resource-monitoring/dialog-module/worker-list";
// worker
import workerDetail from "@/views/picture/resource-monitoring/dialog-module/worker-detail";
// guide
import guideList from "@/views/picture/resource-monitoring/dialog-module/guide-list";
// guide
import guideDetail from "@/views/picture/resource-monitoring/dialog-module/guide-detail";
// spot
import spotList from "@/views/picture/resource-monitoring/dialog-module/spot-list";
// spot
import spotDetail from "@/views/picture/resource-monitoring/dialog-module/spot-detail";
import VenueDetail from "./dialog-module/venue-detail";
//
import iotDetail from "@/views/picture/resource-monitoring/dialog-module/iot-detail";
// -----------------------------------------------------
// worker
import workerList from "@/views/picture/resource-monitoring/dialog-module/worker-list";
// worker
import workerDetail from "@/views/picture/resource-monitoring/dialog-module/worker-detail";
// guide
import guideList from "@/views/picture/resource-monitoring/dialog-module/guide-list";
// guide
import guideDetail from "@/views/picture/resource-monitoring/dialog-module/guide-detail";
// spot
import spotList from "@/views/picture/resource-monitoring/dialog-module/spot-list";
// spot
import spotDetail from "@/views/picture/resource-monitoring/dialog-module/spot-detail";
export default {
name: "resoure-dialog",
components: {
VenueDetail,
tourList,tourDetail,venueList,hotelDetail,iotDetail,
iotList,touristList,emergencyList,venueDetail,tourisDetail,
workerList,workerDetail,guideDetail,spotList,guideList,spotDetail},
export default {
name: "resoure-dialog",
components: {
tourList, tourDetail, venueList, hotelDetail,
iotList, iotDetail, touristList, emergencyList,
workerList, workerDetail, guideDetail, spotList, guideList, spotDetail
},
props: ['propsData', 'type', 'total', 'interfacePath', 'dataType'],
mounted() {
console.log('this.type',this.type)
}
}
props: ['propsData','type','total','interfacePath','dataType']
}
</script>

Loading…
Cancel
Save