2024-05-14 18:16:51 +08:00
|
|
|
|
<template>
|
2025-05-13 15:42:47 +08:00
|
|
|
|
<view class="specialOperations">
|
|
|
|
|
|
<headers class="fixedheader" :themeType="true" :showBack="true">
|
|
|
|
|
|
<view class="headerName"> 特种作业 </view>
|
|
|
|
|
|
</headers>
|
|
|
|
|
|
<view class="sp-menu-wrapper" style="padding-top: 44px">
|
|
|
|
|
|
<view class="menu-title"> 作业中心 </view>
|
|
|
|
|
|
<view class="sp-menu">
|
|
|
|
|
|
<view class="menu-item" @click="handleNavigateTo(20)">
|
|
|
|
|
|
<view class="item-icon">
|
|
|
|
|
|
<image src="@/static/specialOperations/fireWork.png"></image>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view class="item-text">
|
|
|
|
|
|
<text>新动火作业</text>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view class="menu-item" @click="handleNavigateTo(1)">
|
|
|
|
|
|
<view class="item-icon">
|
|
|
|
|
|
<image src="@/static/specialOperations/fireWork.png"></image>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view class="item-text">
|
|
|
|
|
|
<text>动火作业</text>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view class="menu-item" @click="handleNavigateTo(2)">
|
|
|
|
|
|
<view class="item-icon">
|
|
|
|
|
|
<image src="@/static/specialOperations/limitSpaceWork.png"></image>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view class="item-text">
|
|
|
|
|
|
<text>受限空间</text>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view class="menu-item" @click="handleNavigateTo(3)">
|
|
|
|
|
|
<view class="item-icon">
|
|
|
|
|
|
<image src="@/static/specialOperations/bindPlatePlug.png"></image>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view class="item-text">
|
|
|
|
|
|
<text>盲板抽堵</text>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view class="menu-item" @click="handleNavigateTo(4)">
|
|
|
|
|
|
<view class="item-icon">
|
|
|
|
|
|
<image src="@/static/specialOperations/highJob.png"></image>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view class="item-text">
|
|
|
|
|
|
<text>高处作业</text>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view class="menu-item" @click="handleNavigateTo(5)">
|
|
|
|
|
|
<view class="item-icon">
|
|
|
|
|
|
<image src="@/static/specialOperations/hoistSafe.png"></image>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view class="item-text">
|
|
|
|
|
|
<text>吊装安全</text>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view class="menu-item" @click="handleNavigateTo(6)">
|
|
|
|
|
|
<view class="item-icon">
|
|
|
|
|
|
<image src="@/static/specialOperations/tempElectricity.png"></image>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view class="item-text">
|
|
|
|
|
|
<text>临时用电</text>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view class="menu-item" @click="handleNavigateTo(7)">
|
|
|
|
|
|
<view class="item-icon">
|
|
|
|
|
|
<image src="@/static/specialOperations/groundSafe.png"></image>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view class="item-text">
|
|
|
|
|
|
<text>动土作业</text>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view class="menu-item" @click="handleNavigateTo(8)">
|
|
|
|
|
|
<view class="item-icon">
|
|
|
|
|
|
<image src="@/static/specialOperations/openCircuit.png"></image>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view class="item-text">
|
|
|
|
|
|
<text>断路作业</text>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view class="sp-menu-wrapper">
|
|
|
|
|
|
<view class="menu-title"> 统计分析 </view>
|
|
|
|
|
|
<view class="search-btn-wrapper">
|
|
|
|
|
|
<view class="search-btn" :class="{ active: searchType === 1 }" @click="handleSearchType(1)"> 最近7天 </view>
|
|
|
|
|
|
<view class="search-btn" :class="{ active: searchType === 2 }" @click="handleSearchType(2)"> 最近30天 </view>
|
|
|
|
|
|
<view class="search-btn" :class="{ active: searchType === 3 }" @click="handleSearchType(3)"> 自定义 </view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view class="sp-menu-wrapper">
|
|
|
|
|
|
<view class="menu-title"> 特殊作业数量趋势 </view>
|
|
|
|
|
|
<view class="chart-wrapper">
|
|
|
|
|
|
<u-charts
|
|
|
|
|
|
class="ucharts"
|
|
|
|
|
|
:cWidth="355"
|
|
|
|
|
|
:cHeight="300"
|
|
|
|
|
|
canvas-id="lineChart"
|
|
|
|
|
|
chartType="line"
|
|
|
|
|
|
:opts="chartOptions"
|
|
|
|
|
|
ref="lineChart"
|
|
|
|
|
|
/>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- 筛选条件弹框 -->
|
|
|
|
|
|
<uni-popup class="screenDialog" ref="screenShow" :maskClick="true" @change="closeMenu" :show="popupShow">
|
|
|
|
|
|
<view class="screenContent">
|
|
|
|
|
|
<scroll-view style="height: 100%" scroll-y>
|
|
|
|
|
|
<view class="closeIcon" @click="closeBtn"> × </view>
|
|
|
|
|
|
<view class="screenTitle"> 筛选条件 </view>
|
|
|
|
|
|
|
|
|
|
|
|
<view class="titleItem">自定义时间</view>
|
|
|
|
|
|
<view class="screenItem">
|
|
|
|
|
|
<view class="screenI" style="width: 140px; position: relative">
|
|
|
|
|
|
<dateTimePicker
|
|
|
|
|
|
v-if="startTime === ''"
|
|
|
|
|
|
placeholder="开始时间"
|
|
|
|
|
|
fields="day"
|
|
|
|
|
|
@change="pickerChange($event, 'startTime')"
|
|
|
|
|
|
class="dateTimePicker"
|
|
|
|
|
|
>
|
|
|
|
|
|
</dateTimePicker>
|
|
|
|
|
|
<view v-else>{{ startTime }}</view>
|
|
|
|
|
|
<view v-if="startTime != ''" @click="showTimePicker(1)" style="position: absolute; top: -1vh; left: 34vw; font-size: 16px"
|
|
|
|
|
|
>×</view
|
|
|
|
|
|
>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<span style="color: gray; margin: 6% 5px">一</span>
|
|
|
|
|
|
<view class="screenI" style="width: 140px; position: relative">
|
|
|
|
|
|
<dateTimePicker
|
|
|
|
|
|
v-if="endTime === ''"
|
|
|
|
|
|
placeholder="结束时间"
|
|
|
|
|
|
fields="day"
|
|
|
|
|
|
@change="pickerChange($event, 'endTime')"
|
|
|
|
|
|
class="dateTimePicker"
|
|
|
|
|
|
>
|
|
|
|
|
|
</dateTimePicker>
|
|
|
|
|
|
<view v-else>{{ endTime }}</view>
|
|
|
|
|
|
<view v-if="endTime != ''" @click="showTimePicker(2)" style="position: absolute; top: -1vh; left: 34vw; font-size: 16px"
|
|
|
|
|
|
>×</view
|
|
|
|
|
|
>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
<view class="line"></view>
|
|
|
|
|
|
|
|
|
|
|
|
<view class="footerBtn">
|
|
|
|
|
|
<view class="foterLeft" @click="resettingBtn"> 重置 </view>
|
|
|
|
|
|
<view class="foterRight" @click="closeRed"> 确定 </view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
</scroll-view>
|
|
|
|
|
|
</view>
|
|
|
|
|
|
</uni-popup>
|
|
|
|
|
|
<levitatedsphere :x="100" :y="80"></levitatedsphere>
|
|
|
|
|
|
</view>
|
2024-05-14 18:16:51 +08:00
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
|
|
<script>
|
2025-05-13 15:42:47 +08:00
|
|
|
|
import { GetDateStr } from '../../../static/js/util.js'
|
|
|
|
|
|
import uCharts from '@/components/u-charts/component.vue'
|
|
|
|
|
|
import dateTimePicker from '@/components/dateTimePicker/index.vue'
|
|
|
|
|
|
import levitatedsphere from '@/components/levitatedsphere/levitatedsphere.vue'
|
|
|
|
|
|
import headers from '../../../components/headers/headers.vue'
|
|
|
|
|
|
export default {
|
|
|
|
|
|
navigationBarTitleText: '页面标题',
|
|
|
|
|
|
components: {
|
|
|
|
|
|
uCharts,
|
|
|
|
|
|
dateTimePicker
|
|
|
|
|
|
},
|
|
|
|
|
|
data() {
|
|
|
|
|
|
return {
|
|
|
|
|
|
userInfo: {},
|
|
|
|
|
|
moduleList: [],
|
|
|
|
|
|
menuList: [],
|
|
|
|
|
|
searchType: 1, // 1:最近7天 2:最近30天 3:自定义
|
|
|
|
|
|
startTime: '',
|
|
|
|
|
|
endTime: '',
|
|
|
|
|
|
popupShow: false,
|
|
|
|
|
|
chartOptions: {
|
|
|
|
|
|
legends: true,
|
|
|
|
|
|
legend: {
|
|
|
|
|
|
show: true,
|
|
|
|
|
|
position: 'top',
|
|
|
|
|
|
lineHeight: 18
|
|
|
|
|
|
},
|
|
|
|
|
|
categories: [],
|
|
|
|
|
|
series: []
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
onReady() {},
|
|
|
|
|
|
created() {},
|
|
|
|
|
|
mounted() {},
|
|
|
|
|
|
onLoad() {
|
|
|
|
|
|
this.searchType = 1
|
|
|
|
|
|
this.startTime = GetDateStr(-7, '-')
|
|
|
|
|
|
this.endTime = GetDateStr(0, '-')
|
|
|
|
|
|
this.getChartData()
|
|
|
|
|
|
// uni.showLoading({
|
|
|
|
|
|
// title: "加载中...",
|
|
|
|
|
|
// })
|
|
|
|
|
|
// setTimeout(() =>{
|
|
|
|
|
|
// this.userInfo = JSON.parse(uni.getStorageSync('userInfo'))
|
|
|
|
|
|
// this.moduleList = this.userInfo.menuAuthority.moduleList
|
|
|
|
|
|
// this.moduleList.map(item => {
|
|
|
|
|
|
// if(item.plugin === "specialOperations") this.menuList = item.menuList
|
|
|
|
|
|
// })
|
|
|
|
|
|
// if(this.menuList.length > 0){
|
|
|
|
|
|
// this.menuList.map(item => {
|
|
|
|
|
|
// if(item.path === "/project/specialWork/fireWork") item.iconImg = 'fireWork.png'
|
|
|
|
|
|
// if(item.path === "/project/specialWork/confinedSpaceWork") item.iconImg = 'limitSpaceWork.png'
|
|
|
|
|
|
// if(item.path === "/project/specialWork/blindPlugWork") item.iconImg = 'bindPlatePlug.png'
|
|
|
|
|
|
// if(item.path === "/project/specialWork/towerOverWork") item.iconImg = 'highJob.png'
|
|
|
|
|
|
// if(item.path === "/project/specialWork/riggingOutWork") item.iconImg = 'hoistSafe.png'
|
|
|
|
|
|
// if(item.path === "/project/specialWork/temporaryPowerWork") item.iconImg = 'tempElectricity.png'
|
|
|
|
|
|
// if(item.path === "/project/specialWork/startBuildingWork") item.iconImg = 'groundSafe.png'
|
|
|
|
|
|
// if(item.path === "/project/specialWork/disconnectionWork") item.iconImg = 'openCircuit.png'
|
|
|
|
|
|
// })
|
|
|
|
|
|
// }
|
|
|
|
|
|
// console.log("userInfo=======================",this.userInfo);
|
|
|
|
|
|
// console.log("moduleList=======================",this.moduleList);
|
|
|
|
|
|
// },500)
|
|
|
|
|
|
// uni.hideLoading()
|
|
|
|
|
|
},
|
|
|
|
|
|
methods: {
|
|
|
|
|
|
handleSearchType(val) {
|
|
|
|
|
|
if (val === this.searchType) return
|
|
|
|
|
|
this.searchType = val
|
|
|
|
|
|
if (val === 1) {
|
|
|
|
|
|
this.startTime = GetDateStr(-7, '-')
|
|
|
|
|
|
this.endTime = GetDateStr(0, '-')
|
|
|
|
|
|
this.getChartData()
|
|
|
|
|
|
}
|
|
|
|
|
|
if (val === 2) {
|
|
|
|
|
|
this.startTime = GetDateStr(-30, '-')
|
|
|
|
|
|
this.endTime = GetDateStr(0, '-')
|
|
|
|
|
|
this.getChartData()
|
|
|
|
|
|
}
|
|
|
|
|
|
if (val === 3) {
|
|
|
|
|
|
this.startTime = ''
|
|
|
|
|
|
this.endTime = ''
|
|
|
|
|
|
this.$refs.screenShow.open()
|
|
|
|
|
|
this.popupShow = true
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
handleNavigateTo(val) {
|
|
|
|
|
|
// if(val === "/project/specialWork/fireWork") uni.navigateTo({ url: "./fireWork/work" })
|
|
|
|
|
|
// if(val === "/project/specialWork/confinedSpaceWork") uni.navigateTo({ url: "./limitSpaceWork/work" })
|
|
|
|
|
|
// if(val === "/project/specialWork/blindPlugWork") uni.navigateTo({ url: "./bindPlatePlug/work" })
|
|
|
|
|
|
// if(val === "/project/specialWork/towerOverWork") uni.navigateTo({ url: "./highJob/work" })
|
|
|
|
|
|
// if(val === "/project/specialWork/riggingOutWork") uni.navigateTo({ url: "./hoistSafe/work" })
|
|
|
|
|
|
// if(val === "/project/specialWork/temporaryPowerWork") uni.navigateTo({ url: "./tempElectricity/work" })
|
|
|
|
|
|
// if(val === "/project/specialWork/startBuildingWork") uni.navigateTo({ url: "./groundSafe/work" })
|
|
|
|
|
|
// if(val === "/project/specialWork/disconnectionWork") uni.navigateTo({ url: "./openCircuit/work" })
|
|
|
|
|
|
if (val === 20) uni.navigateTo({ url: './fireWork/newWork' })
|
|
|
|
|
|
if (val === 1) uni.navigateTo({ url: './fireWork/work' })
|
|
|
|
|
|
if (val === 2) uni.navigateTo({ url: './limitSpaceWork/work' })
|
|
|
|
|
|
if (val === 3) uni.navigateTo({ url: './bindPlatePlug/work' })
|
|
|
|
|
|
if (val === 4) uni.navigateTo({ url: './highJob/work' })
|
|
|
|
|
|
if (val === 5) uni.navigateTo({ url: './hoistSafe/work' })
|
|
|
|
|
|
if (val === 6) uni.navigateTo({ url: './tempElectricity/work' })
|
|
|
|
|
|
if (val === 7) uni.navigateTo({ url: './groundSafe/work' })
|
|
|
|
|
|
if (val === 8) uni.navigateTo({ url: './openCircuit/work' })
|
|
|
|
|
|
},
|
|
|
|
|
|
//点击重新选择时间
|
|
|
|
|
|
showTimePicker(type) {
|
|
|
|
|
|
if (type == 1) {
|
|
|
|
|
|
this.startTime = ''
|
|
|
|
|
|
} else {
|
|
|
|
|
|
this.endTime = ''
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
pickerChange(e, type) {
|
|
|
|
|
|
console.log(e, '======')
|
|
|
|
|
|
if (type === 'startTime') {
|
|
|
|
|
|
this.startTime = e.f1
|
|
|
|
|
|
} else {
|
|
|
|
|
|
this.endTime = e.f1
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
closeMenu(e) {
|
|
|
|
|
|
console.log('关闭!!!!', e)
|
|
|
|
|
|
if (e.show == false) {
|
|
|
|
|
|
this.popupShow = false
|
|
|
|
|
|
if (!this.startTime || !this.endTime) {
|
|
|
|
|
|
this.searchType = 1
|
|
|
|
|
|
this.startTime = GetDateStr(-7, '-')
|
|
|
|
|
|
this.endTime = GetDateStr(0, '-')
|
|
|
|
|
|
this.getChartData()
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
resettingBtn() {
|
|
|
|
|
|
this.$refs.screenShow.close()
|
|
|
|
|
|
this.popupShow = false
|
|
|
|
|
|
this.searchType = 1
|
|
|
|
|
|
this.startTime = GetDateStr(-7, '-')
|
|
|
|
|
|
this.endTime = GetDateStr(0, '-')
|
|
|
|
|
|
this.getChartData()
|
|
|
|
|
|
},
|
|
|
|
|
|
closeRed() {
|
|
|
|
|
|
this.$refs.screenShow.close()
|
|
|
|
|
|
this.popupShow = false
|
|
|
|
|
|
this.getChartData()
|
|
|
|
|
|
},
|
|
|
|
|
|
//关闭筛选
|
|
|
|
|
|
closeBtn() {
|
|
|
|
|
|
this.$refs.screenShow.close()
|
|
|
|
|
|
this.popupShow = false
|
|
|
|
|
|
},
|
|
|
|
|
|
getChartData() {
|
|
|
|
|
|
this.sendRequest({
|
|
|
|
|
|
url: 'xmgl/xzSpecial/countSpecialByData',
|
|
|
|
|
|
method: 'post',
|
|
|
|
|
|
data: {
|
|
|
|
|
|
projectSn: JSON.parse(uni.getStorageSync('userInfo')).sn,
|
|
|
|
|
|
startTime: this.startTime,
|
|
|
|
|
|
endTime: this.endTime
|
|
|
|
|
|
},
|
|
|
|
|
|
success: res => {
|
|
|
|
|
|
if (res.code == 200) {
|
|
|
|
|
|
console.log('getChartData======================', res)
|
|
|
|
|
|
let list = res.result || []
|
|
|
|
|
|
let categories = []
|
|
|
|
|
|
let series = []
|
|
|
|
|
|
let data1 = {
|
|
|
|
|
|
name: '新动火',
|
|
|
|
|
|
data: []
|
|
|
|
|
|
}
|
|
|
|
|
|
let data2 = {
|
|
|
|
|
|
name: '受限空间',
|
|
|
|
|
|
data: []
|
|
|
|
|
|
}
|
|
|
|
|
|
let data3 = {
|
|
|
|
|
|
name: '盲板抽堵',
|
|
|
|
|
|
data: []
|
|
|
|
|
|
}
|
|
|
|
|
|
let data4 = {
|
|
|
|
|
|
name: '高处作业',
|
|
|
|
|
|
data: []
|
|
|
|
|
|
}
|
|
|
|
|
|
let data5 = {
|
|
|
|
|
|
name: '吊装安全',
|
|
|
|
|
|
data: []
|
|
|
|
|
|
}
|
|
|
|
|
|
let data6 = {
|
|
|
|
|
|
name: '临时用电',
|
|
|
|
|
|
data: []
|
|
|
|
|
|
}
|
|
|
|
|
|
let data7 = {
|
|
|
|
|
|
name: '动土作业',
|
|
|
|
|
|
data: []
|
|
|
|
|
|
}
|
|
|
|
|
|
let data8 = {
|
|
|
|
|
|
name: '断路作业',
|
|
|
|
|
|
data: []
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
list.forEach(item => {
|
|
|
|
|
|
categories.push(item.date)
|
|
|
|
|
|
data1.data.push(item.xzSpecialOperationFireSafetyNum)
|
|
|
|
|
|
data2.data.push(item.xzLimitSpaceSafeNum)
|
|
|
|
|
|
data3.data.push(item.xzBlindPlatePlugSafeNum)
|
|
|
|
|
|
data4.data.push(item.xzHighJobSafeNum)
|
|
|
|
|
|
data5.data.push(item.xzHoistSafetyWorkNum)
|
|
|
|
|
|
data6.data.push(item.xzTemporaryElectricitySafeNum)
|
|
|
|
|
|
data7.data.push(item.xzGroundSafetNum)
|
|
|
|
|
|
data8.data.push(item.xzOpenCircuitSafeNum)
|
|
|
|
|
|
})
|
|
|
|
|
|
series = [data1, data2, data3, data4, data5, data6, data7, data8]
|
|
|
|
|
|
this.chartOptions.series = series
|
|
|
|
|
|
this.chartOptions.categories = categories
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
2024-05-14 18:16:51 +08:00
|
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
|
|
<style lang="scss">
|
2025-05-13 15:42:47 +08:00
|
|
|
|
.specialOperations {
|
|
|
|
|
|
background-color: #f1f3f5;
|
|
|
|
|
|
height: 100vh;
|
|
|
|
|
|
.fixedheader {
|
|
|
|
|
|
position: fixed;
|
|
|
|
|
|
top: 0;
|
|
|
|
|
|
left: 0;
|
|
|
|
|
|
width: 100%;
|
|
|
|
|
|
z-index: 2;
|
|
|
|
|
|
}
|
|
|
|
|
|
.sp-menu-wrapper {
|
|
|
|
|
|
width: 100%;
|
|
|
|
|
|
// padding-top: 200rpx;
|
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
|
margin-bottom: 24rpx;
|
|
|
|
|
|
.menu-title {
|
|
|
|
|
|
height: 80rpx;
|
|
|
|
|
|
font-size: 32rpx;
|
|
|
|
|
|
line-height: 40rpx;
|
|
|
|
|
|
font-weight: bold;
|
|
|
|
|
|
padding: 0 38rpx;
|
|
|
|
|
|
margin-bottom: 20rpx;
|
|
|
|
|
|
color: #333333;
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
border-bottom: 2rpx solid rgba(187, 187, 187, 0.1);
|
|
|
|
|
|
}
|
|
|
|
|
|
.sp-menu {
|
|
|
|
|
|
margin: 0 38rpx;
|
|
|
|
|
|
// height: 1200rpx;
|
|
|
|
|
|
// height: 1000rpx;
|
|
|
|
|
|
// background-color: darkred;
|
|
|
|
|
|
display: grid;
|
|
|
|
|
|
grid-gap: 24rpx;
|
|
|
|
|
|
grid-template-columns: repeat(4, 1fr);
|
|
|
|
|
|
// grid-template-columns: repeat(auto-fill, 220rpx);
|
|
|
|
|
|
// place-items: center;
|
|
|
|
|
|
// justify-content: center;
|
|
|
|
|
|
.menu-item {
|
|
|
|
|
|
// width: 220rpx;
|
|
|
|
|
|
height: 160rpx;
|
|
|
|
|
|
// background-color: darkblue;
|
|
|
|
|
|
// box-shadow: 0px 8rpx 15rpx 0px rgba(219,229,255,0.6);
|
|
|
|
|
|
border-radius: 10rpx;
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
justify-content: center;
|
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
|
.item-icon {
|
|
|
|
|
|
// width: 220rpx;
|
|
|
|
|
|
// height: 220rpx;
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
justify-content: center;
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
margin-bottom: 14rpx;
|
|
|
|
|
|
image {
|
|
|
|
|
|
width: 66rpx;
|
|
|
|
|
|
height: 86rpx;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
.item-text {
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
// width: 220rpx;
|
|
|
|
|
|
height: 54rpx;
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
justify-content: center;
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
text {
|
|
|
|
|
|
text-align: center;
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
justify-content: center;
|
|
|
|
|
|
white-space: nowrap;
|
|
|
|
|
|
font-size: 28rpx;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
.search-btn-wrapper {
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
justify-content: center;
|
|
|
|
|
|
height: 80rpx;
|
|
|
|
|
|
gap: 60rpx;
|
|
|
|
|
|
.search-btn {
|
|
|
|
|
|
width: 160rpx;
|
|
|
|
|
|
height: 60rpx;
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
justify-content: center;
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
background-color: rgba(182, 182, 182, 0.15);
|
|
|
|
|
|
color: rgba(14, 32, 76, 1);
|
|
|
|
|
|
border-radius: 30rpx;
|
|
|
|
|
|
border: 1px solid rgba(128, 128, 128, 0.13);
|
|
|
|
|
|
font-size: 24rpx;
|
|
|
|
|
|
&.active {
|
|
|
|
|
|
background-color: rgba(61, 150, 253, 1);
|
|
|
|
|
|
color: #fff;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.screenDialog {
|
|
|
|
|
|
position: absolute;
|
|
|
|
|
|
// top: 11%;
|
|
|
|
|
|
height: 95%;
|
|
|
|
|
|
/* background: pink; */
|
|
|
|
|
|
background: white;
|
|
|
|
|
|
width: 100%;
|
|
|
|
|
|
border-radius: 20px;
|
|
|
|
|
|
margin-left: -4%;
|
|
|
|
|
|
background-color: white;
|
|
|
|
|
|
/* 设置为半透明的灰色 */
|
|
|
|
|
|
z-index: 9;
|
|
|
|
|
|
/* 设置一个较大的 z-index 值,保证遮罩层在最上层 */
|
|
|
|
|
|
|
|
|
|
|
|
.closeIcon {
|
|
|
|
|
|
float: right;
|
|
|
|
|
|
font-size: 25px;
|
|
|
|
|
|
color: gray;
|
|
|
|
|
|
margin-right: 3%;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.screenTitle {
|
|
|
|
|
|
text-align: center;
|
|
|
|
|
|
margin-top: 4%;
|
|
|
|
|
|
font-size: 18px;
|
|
|
|
|
|
font-weight: 500;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.uni-popup__wrapper-box {
|
|
|
|
|
|
height: 70vh;
|
|
|
|
|
|
overflow: scroll;
|
|
|
|
|
|
position: fixed;
|
|
|
|
|
|
bottom: 0;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.screenContent {
|
|
|
|
|
|
width: 100vw;
|
|
|
|
|
|
height: 40%;
|
|
|
|
|
|
// width: 90%;
|
|
|
|
|
|
// margin: -65% 0%;
|
|
|
|
|
|
overflow: scroll;
|
|
|
|
|
|
// position: relative;
|
|
|
|
|
|
// margin-top: 180%;
|
|
|
|
|
|
border-radius: 20px 20px 0 0;
|
|
|
|
|
|
// margin-left: -4%;
|
|
|
|
|
|
background-color: white;
|
|
|
|
|
|
padding-left: 10%;
|
|
|
|
|
|
position: fixed;
|
|
|
|
|
|
left: 0;
|
|
|
|
|
|
bottom: 0;
|
|
|
|
|
|
|
|
|
|
|
|
.titleItem {
|
|
|
|
|
|
font-size: 14px;
|
|
|
|
|
|
|
|
|
|
|
|
.regionText {
|
|
|
|
|
|
display: inline-block;
|
|
|
|
|
|
margin-left: 16%;
|
|
|
|
|
|
width: 190px;
|
|
|
|
|
|
white-space: nowrap;
|
|
|
|
|
|
text-overflow: ellipsis;
|
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.screenItem {
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
flex-wrap: wrap;
|
|
|
|
|
|
|
|
|
|
|
|
.screenI {
|
|
|
|
|
|
width: 100px;
|
|
|
|
|
|
font-size: 12px;
|
|
|
|
|
|
height: 30px;
|
|
|
|
|
|
background: #f7f8fa;
|
|
|
|
|
|
border-radius: 15px;
|
|
|
|
|
|
text-align: center;
|
|
|
|
|
|
line-height: 30px;
|
|
|
|
|
|
color: gray;
|
|
|
|
|
|
margin: 5% 0;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.screenText {
|
|
|
|
|
|
width: 90px;
|
|
|
|
|
|
font-size: 12px;
|
|
|
|
|
|
height: 30px;
|
|
|
|
|
|
background: #f7f8fa;
|
|
|
|
|
|
border-radius: 15px;
|
|
|
|
|
|
text-align: center;
|
|
|
|
|
|
line-height: 30px;
|
|
|
|
|
|
color: #000;
|
|
|
|
|
|
margin: 5% 5% 5% 0%;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.active {
|
|
|
|
|
|
width: 90px;
|
|
|
|
|
|
font-size: 12px;
|
|
|
|
|
|
height: 30px;
|
|
|
|
|
|
background: #edf2fe;
|
|
|
|
|
|
border-radius: 15px;
|
|
|
|
|
|
text-align: center;
|
|
|
|
|
|
line-height: 30px;
|
|
|
|
|
|
color: #000;
|
|
|
|
|
|
margin: 5% 5% 5% 0%;
|
|
|
|
|
|
border: 1px solid #5181f6;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.screenTextClose {
|
|
|
|
|
|
width: 90px;
|
|
|
|
|
|
font-size: 12px;
|
|
|
|
|
|
height: 30px;
|
|
|
|
|
|
text-align: center;
|
|
|
|
|
|
line-height: 30px;
|
|
|
|
|
|
color: #000;
|
|
|
|
|
|
margin: 5% 5% 5% 0%;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.footerBtn {
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
text-align: center;
|
|
|
|
|
|
line-height: 40px;
|
|
|
|
|
|
margin-top: 2%;
|
|
|
|
|
|
// margin-left: 6%;
|
|
|
|
|
|
position: absolute;
|
|
|
|
|
|
width: 100%;
|
|
|
|
|
|
bottom: 20px;
|
|
|
|
|
|
|
|
|
|
|
|
.foterLeft {
|
|
|
|
|
|
width: 43%;
|
|
|
|
|
|
background: #f6f7f8;
|
|
|
|
|
|
height: 40px;
|
|
|
|
|
|
border-top-left-radius: 20px;
|
|
|
|
|
|
border-bottom-left-radius: 20px;
|
|
|
|
|
|
color: #5181f6;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.foterRight {
|
|
|
|
|
|
width: 43%;
|
|
|
|
|
|
background: #5181f6;
|
|
|
|
|
|
height: 40px;
|
|
|
|
|
|
border-top-right-radius: 20px;
|
|
|
|
|
|
border-bottom-right-radius: 20px;
|
|
|
|
|
|
color: #fff;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
::v-deep .placeholder {
|
|
|
|
|
|
padding-left: 40px;
|
|
|
|
|
|
}
|
2024-05-14 18:16:51 +08:00
|
|
|
|
}
|
|
|
|
|
|
</style>
|