Commit cf339574 authored by mahui's avatar mahui

init

parent 6f54a644
......@@ -46,43 +46,7 @@
show:false,
site_id:'',
time:myPublic.dateFormat.format(Date.now(), 'HH:mm:ss YYYY年MM月DD日'),
list:[
// {
// longitude:119.779647,
// latitude:30.24369,
// name:'青山湖国家森林公园',
// address:'浙江省杭州市临安区老圣园路北',
// type:1
// },
// {
// longitude:119.821796,
// latitude:30.254114,
// name:'青山湖街道',
// address:'浙江省杭州市临安区',
// type:1
// },
// {
// longitude:119.790127,
// latitude:30.255317,
// name:'灵山',
// address:'浙江省杭州市临安区',
// type:2
// },
// {
// longitude:119.852565,
// latitude:30.2528,
// name:'青山湖互通',
// address:'浙江省杭州市临安区',
// type:1
// },
// {
// longitude:119.823904,
// latitude:30.24808,
// name:'青山中学',
// address:'浙江省杭州市临安区',
// type:1
// },
]
list:[]
});
const user = computed(()=>{
return store.info;
......@@ -118,7 +82,7 @@
}
function mapShow(coordinate, item, callBack) {
const now = Date.now();
let str = `<img src="${require("@/assets/img/e.png")}" />`;
let str = `<img src="${item.showImage}" />`;
str += `<p style="font-weight: 700">${item.name}${typeChange(item.type)}</p>`;
str += `<p>位置:${item.address}</p>`;
str += `<p id="${now}" style="color: #3396fb;cursor: pointer" onclick="">查看详情<span class="icon-4"></span></p>`;
......
......@@ -11,7 +11,7 @@
<div class="detail-body">
<div class="body-one base" v-if="tab=='base'">
<div class="poster">
<div class="blur-mask" :style="`background-image:url('${detail.poster[detail.index]}')`"></div>
<div class="blur-mask" :style="`background-image:url('${detail.showImage}')`"></div>
<div class="banner">
<el-carousel :interval="5000" arrow="never" style="height: 480px;"
@change="(val)=>{detail.index=val}">
......@@ -279,14 +279,7 @@
show:false,
order_id:'',
detail: {
poster: [
require("@/assets/img/banner-1.png"),
require("@/assets/img/banner-1.png"),
require("@/assets/img/banner-1.png"),
require("@/assets/img/banner-1.png"),
require("@/assets/img/banner-1.png"),
require("@/assets/img/banner-1.png"),
],
poster:[],
index: 0,
yewei:0.7,
type:1
......@@ -419,6 +412,9 @@
function getDetail() {
api.getToiletDetail({id:props.site_id}).then((res)=>{
if(res.code==0){
if(res.data.image){
state.detail.poster = res.data.image.split(',')
}
Object.assign(state.detail,{...res.data});
if(state.detail.type==1){
state.tabs.find(one=>one.value=='process').show = true;
......
......@@ -26,7 +26,8 @@
"script-ext-html-webpack-plugin": "^2.1.4",
"spark-md5": "^3.0.1",
"vue": "^3.2.25",
"vue-router": "^4.0.0-0"
"vue-router": "^4.0.0-0",
"vue3-photo-preview": "^0.2.5"
},
"devDependencies": {
"@vitejs/plugin-legacy": "^1.4.4",
......
......@@ -12,6 +12,7 @@ export default {
<style lang="scss">
// 引入初始化样式
@import '@/style/theme/index.css';
@import '@/style/main.scss';
@import '@/style/base.scss';
@import '@/style/mobile.scss';
......
......@@ -13,6 +13,8 @@ import auth from '@/directive/auth'
import { store } from '@/pinia'
import upload from "@/components/upload.vue"
import newInput from "@/components/input/new-input.vue"
import vue3PhotoPreview from 'vue3-photo-preview';
import 'vue3-photo-preview/dist/index.css';
import App from './App.vue'
const app = createApp(App)
app.config.productionTip = false
......@@ -22,6 +24,7 @@ app
.use(store)
.use(auth)
.use(router)
.use(vue3PhotoPreview)
.use(ElementPlus, { locale: zhCn })
.component('new-upload',upload)
.component('new-input',newInput)
......
This diff is collapsed.
......@@ -79,29 +79,32 @@
</div>
</div>
<el-dialog v-model="dialogFormVisible" :before-close="closeDialog" title="弹窗操作">
<el-form :model="formData" label-position="right" label-width="80px">
<el-form :model="formData" label-position="right" label-width="120px">
<el-form-item label="工单标题:">
<el-input v-model="formData.title" clearable placeholder="请输入"/>
</el-form-item>
<el-form-item label="巡检类型:">
<el-select v-model="formData.type" placeholder="请选择" style="width:100%" clearable>
<el-option v-for="(item,key) in partol_typeOptions" :key="key" :label="item.label"
:value="item.value"/>
</el-select>
</el-form-item>
<el-form-item label="巡检内容:">
<el-input v-model="formData.content" clearable placeholder="请输入"/>
<!--<el-input v-model="formData.content" clearable placeholder="请输入"/>-->
</el-form-item>
<el-form-item label="异常描述:">
<el-input v-model="formData.description" clearable placeholder="请输入"/>
<el-form-item label="巡检图片:">
<new-upload v-if="dialogFormVisible" :limit="99" :list="formData.image?formData.image.split(','):[]" @upload="(file)=>formData.image = file.join(',')" :multiply="true"></new-upload>
</el-form-item>
<el-form-item label="巡检图片多个逗号分隔:">
<el-input v-model="formData.image" clearable placeholder="请输入"/>
<el-form-item label="异常描述:">
<el-input type="textarea" resize="none" v-model="formData.description" clearable placeholder="请输入"/>
</el-form-item>
<el-form-item label="巡视人:">
<el-input v-model="formData.partolName" clearable placeholder="请输入"/>
</el-form-item>
<el-form-item label="工单标题:">
<el-input v-model="formData.title" clearable placeholder="请输入"/>
</el-form-item>
<el-form-item label="巡检公厕:">
<el-input v-model.number="formData.toiletId" clearable placeholder="请输入"/>
</el-form-item>
<el-form-item label="巡检类型:">
<el-select v-model="formData.type" placeholder="请选择" style="width:100%" clearable>
<el-option v-for="(item,key) in partol_typeOptions" :key="key" :label="item.label"
:value="item.value"/>
<el-select v-model="formData.toiletId" placeholder="请选择" style="width:100%" clearable>
<el-option v-for="(item,key) in toiletList" :key="key" :label="item.name"
:value="item.ID"/>
</el-select>
</el-form-item>
</el-form>
......@@ -130,7 +133,9 @@
findQshPartol,
getQshPartolList
} from '@/api/qshPartol'
import {
getQshToiletList
} from '@/api/qshToilet'
// 全量引入格式化工具 请按需保留
import {getDictFunc, formatDate, formatBoolean, filterDict} from '@/utils/format'
import {ElMessage, ElMessageBox} from 'element-plus'
......@@ -144,7 +149,7 @@
image: '',
partolName: '',
title: '',
toiletId: 0,
toiletId: '',
type: undefined,
})
......@@ -153,6 +158,7 @@
const total = ref(0)
const pageSize = ref(10)
const tableData = ref([])
const toiletList = ref([])
const searchInfo = ref({})
// 重置
......@@ -192,6 +198,15 @@
getTableData()
// 公厕列表查询
const getTableData_2 = async () => {
const table = await getQshToiletList({page: 1, pageSize: 99})
if (table.code === 0) {
toiletList.value = table.data.list
}
}
getTableData_2();
// ============== 表格控制部分结束 ===============
// 获取需要的字典 可能为空 按需保留
......@@ -300,7 +315,7 @@
image: '',
partolName: '',
title: '',
toiletId: 0,
toiletId: '',
type: undefined,
}
}
......
......@@ -55,8 +55,6 @@
<el-table-column align="left" label="经度" prop="lng" min-width="120"/>
<el-table-column align="left" label="管理人员" prop="manager" min-width="120"/>
<el-table-column align="left" label="管理员联系电话" prop="managerPhone" min-width="140"/>
<el-table-column align="left" label="监控信息" prop="monitor" min-width="120"/>
<el-table-column align="left" label="创建时间" min-width="180">
<template #default="scope">{{ formatDate(scope.row.CreatedAt) }}</template>
</el-table-column>
......@@ -83,12 +81,24 @@
</div>
</div>
<el-dialog v-model="dialogFormVisible" :before-close="closeDialog" title="弹窗操作">
<el-form :model="formData" label-position="right" label-width="80px">
<el-form :model="formData" label-position="right" label-width="120px">
<el-form-item label="点位名称:">
<el-input v-model="formData.name" clearable placeholder="请输入"/>
</el-form-item>
<el-form-item label="公厕类型:">
<el-select v-model="formData.type" placeholder="请选择" style="width:100%" clearable>
<el-option v-for="(item,key) in typeOptions" :key="key" :label="item.label"
:value="item.value"/>
</el-select>
</el-form-item>
<el-form-item label="公厕地址:">
<el-input v-model="formData.address" clearable placeholder="请输入"/>
</el-form-item>
<el-form-item label="点位图片:">
<el-input v-model="formData.image" clearable placeholder="请输入"/>
<el-form-item label="展示图片:">
<new-upload v-if="dialogFormVisible" :list="[formData.showImage]" @upload="(file)=>formData.showImage = file[0]"></new-upload>
</el-form-item>
<el-form-item label="轮播图片:">
<new-upload v-if="dialogFormVisible" :limit="9" :list="formData.image?formData.image.split(','):[]" @upload="(file)=>formData.image = file.join(',')" :multiply="true"></new-upload>
</el-form-item>
<el-form-item label="纬度:">
<el-input v-model="formData.lat" clearable placeholder="请输入"/>
......@@ -105,18 +115,6 @@
<el-form-item label="监控信息:">
<el-input v-model="formData.monitor" clearable placeholder="请输入"/>
</el-form-item>
<el-form-item label="点位名称:">
<el-input v-model="formData.name" clearable placeholder="请输入"/>
</el-form-item>
<el-form-item label="展示图片:">
<el-input v-model="formData.showImage" clearable placeholder="请输入"/>
</el-form-item>
<el-form-item label="公厕类型:">
<el-select v-model="formData.type" placeholder="请选择" style="width:100%" clearable>
<el-option v-for="(item,key) in typeOptions" :key="key" :label="item.label"
:value="item.value"/>
</el-select>
</el-form-item>
</el-form>
<template #footer>
<div class="dialog-footer">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment