Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Q
qsh-wc
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
honghuiliu
qsh-wc
Commits
474f17e8
Commit
474f17e8
authored
Sep 23, 2022
by
mahui
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
init
parent
793f8753
Changes
5
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
246 additions
and
93 deletions
+246
-93
package-lock.json
pc/package-lock.json
+84
-81
package.json
pc/package.json
+1
-0
EZUIKitJs.vue
pc/src/components/EZUIKitJs.vue
+135
-0
site-detail.vue
pc/src/views/site-detail.vue
+7
-3
qshToilet.vue
web/src/view/qshToilet/qshToilet.vue
+19
-9
No files found.
pc/package-lock.json
View file @
474f17e8
...
...
@@ -1775,6 +1775,63 @@
"integrity"
:
"sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A=="
,
"dev"
:
true
},
"ansi-styles"
:
{
"version"
:
"4.3.0"
,
"resolved"
:
"https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz"
,
"integrity"
:
"sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg=="
,
"dev"
:
true
,
"optional"
:
true
,
"requires"
:
{
"color-convert"
:
"^2.0.1"
}
},
"chalk"
:
{
"version"
:
"4.1.2"
,
"resolved"
:
"https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz"
,
"integrity"
:
"sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA=="
,
"dev"
:
true
,
"optional"
:
true
,
"requires"
:
{
"ansi-styles"
:
"^4.1.0"
,
"supports-color"
:
"^7.1.0"
}
},
"color-convert"
:
{
"version"
:
"2.0.1"
,
"resolved"
:
"https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz"
,
"integrity"
:
"sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ=="
,
"dev"
:
true
,
"optional"
:
true
,
"requires"
:
{
"color-name"
:
"~1.1.4"
}
},
"color-name"
:
{
"version"
:
"1.1.4"
,
"resolved"
:
"https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz"
,
"integrity"
:
"sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
,
"dev"
:
true
,
"optional"
:
true
},
"has-flag"
:
{
"version"
:
"4.0.0"
,
"resolved"
:
"https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz"
,
"integrity"
:
"sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
,
"dev"
:
true
,
"optional"
:
true
},
"loader-utils"
:
{
"version"
:
"2.0.2"
,
"resolved"
:
"https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz"
,
"integrity"
:
"sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A=="
,
"dev"
:
true
,
"optional"
:
true
,
"requires"
:
{
"big.js"
:
"^5.2.2"
,
"emojis-list"
:
"^3.0.0"
,
"json5"
:
"^2.1.2"
}
},
"ssri"
:
{
"version"
:
"8.0.1"
,
"resolved"
:
"https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz"
,
...
...
@@ -1783,6 +1840,28 @@
"requires"
:
{
"minipass"
:
"^3.1.1"
}
},
"supports-color"
:
{
"version"
:
"7.2.0"
,
"resolved"
:
"https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz"
,
"integrity"
:
"sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw=="
,
"dev"
:
true
,
"optional"
:
true
,
"requires"
:
{
"has-flag"
:
"^4.0.0"
}
},
"vue-loader-v16"
:
{
"version"
:
"npm:vue-loader@16.8.3"
,
"resolved"
:
"https://registry.npmjs.org/vue-loader/-/vue-loader-16.8.3.tgz"
,
"integrity"
:
"sha512-7vKN45IxsKxe5GcVCbc2qFU5aWzyiLrYJyUuMz4BQLKctCj/fmCa0w6fGiiQ2cLFetNcek1ppGJQDCup0c1hpA=="
,
"dev"
:
true
,
"optional"
:
true
,
"requires"
:
{
"chalk"
:
"^4.1.0"
,
"hash-sum"
:
"^2.0.0"
,
"loader-utils"
:
"^2.0.0"
}
}
}
},
...
...
@@ -5121,6 +5200,11 @@
"integrity"
:
"sha1-lpGEQOMEGnpBT4xS48V06zw+HgU="
,
"dev"
:
true
},
"ezuikit-js"
:
{
"version"
:
"0.6.3"
,
"resolved"
:
"https://registry.npmjs.org/ezuikit-js/-/ezuikit-js-0.6.3.tgz"
,
"integrity"
:
"sha512-nFaQXHALzGgXop4aZ23g96EmKT+IRfvibx4I4jLIcNAjXWI+PZk3g/365end7trMY646+5BeP0kn9CXzHH9s1g=="
},
"fast-deep-equal"
:
{
"version"
:
"3.1.3"
,
"resolved"
:
"https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz"
,
...
...
@@ -10709,87 +10793,6 @@
}
}
},
"vue-loader-v16"
:
{
"version"
:
"npm:vue-loader@16.8.3"
,
"resolved"
:
"https://registry.npmjs.org/vue-loader/-/vue-loader-16.8.3.tgz"
,
"integrity"
:
"sha512-7vKN45IxsKxe5GcVCbc2qFU5aWzyiLrYJyUuMz4BQLKctCj/fmCa0w6fGiiQ2cLFetNcek1ppGJQDCup0c1hpA=="
,
"dev"
:
true
,
"optional"
:
true
,
"requires"
:
{
"chalk"
:
"^4.1.0"
,
"hash-sum"
:
"^2.0.0"
,
"loader-utils"
:
"^2.0.0"
},
"dependencies"
:
{
"ansi-styles"
:
{
"version"
:
"4.3.0"
,
"resolved"
:
"https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz"
,
"integrity"
:
"sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg=="
,
"dev"
:
true
,
"optional"
:
true
,
"requires"
:
{
"color-convert"
:
"^2.0.1"
}
},
"chalk"
:
{
"version"
:
"4.1.2"
,
"resolved"
:
"https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz"
,
"integrity"
:
"sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA=="
,
"dev"
:
true
,
"optional"
:
true
,
"requires"
:
{
"ansi-styles"
:
"^4.1.0"
,
"supports-color"
:
"^7.1.0"
}
},
"color-convert"
:
{
"version"
:
"2.0.1"
,
"resolved"
:
"https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz"
,
"integrity"
:
"sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ=="
,
"dev"
:
true
,
"optional"
:
true
,
"requires"
:
{
"color-name"
:
"~1.1.4"
}
},
"color-name"
:
{
"version"
:
"1.1.4"
,
"resolved"
:
"https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz"
,
"integrity"
:
"sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
,
"dev"
:
true
,
"optional"
:
true
},
"has-flag"
:
{
"version"
:
"4.0.0"
,
"resolved"
:
"https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz"
,
"integrity"
:
"sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
,
"dev"
:
true
,
"optional"
:
true
},
"loader-utils"
:
{
"version"
:
"2.0.2"
,
"resolved"
:
"https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz"
,
"integrity"
:
"sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A=="
,
"dev"
:
true
,
"optional"
:
true
,
"requires"
:
{
"big.js"
:
"^5.2.2"
,
"emojis-list"
:
"^3.0.0"
,
"json5"
:
"^2.1.2"
}
},
"supports-color"
:
{
"version"
:
"7.2.0"
,
"resolved"
:
"https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz"
,
"integrity"
:
"sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw=="
,
"dev"
:
true
,
"optional"
:
true
,
"requires"
:
{
"has-flag"
:
"^4.0.0"
}
}
}
},
"vue-router"
:
{
"version"
:
"4.0.12"
,
"resolved"
:
"https://registry.npmjs.org/vue-router/-/vue-router-4.0.12.tgz"
,
...
...
pc/package.json
View file @
474f17e8
...
...
@@ -11,6 +11,7 @@
"core-js"
:
"^3.6.5"
,
"dayjs"
:
"^1.10.7"
,
"element-plus"
:
"^2.0.1"
,
"ezuikit-js"
:
"^0.6.3"
,
"pinia"
:
"^2.0.14"
,
"vue"
:
"^3.0.0"
,
"vue-router"
:
"^4.0.0-0"
,
...
...
pc/src/components/EZUIKitJs.vue
0 → 100644
View file @
474f17e8
<
template
>
<div
class=
"hello-ezuikit-js"
>
<div
id=
"video-container"
style=
"flex: 1;"
></div>
<div
style=
"flex-shrink: 0;padding:5px 0;text-align: right"
>
<el-button
type=
"primary"
@
click=
"stop"
>
暂停
</el-button>
<el-button
type=
"primary"
@
click=
"play"
>
播放
</el-button>
<!--
<el-button
@
click=
"openSound"
>
openSound
</el-button>
-->
<!--
<el-button
@
click=
"closeSound"
>
closeSound
</el-button>
-->
<!--
<el-button
@
click=
"startSave"
>
startSave
</el-button>
-->
<!--
<el-button
@
click=
"stopSave"
>
stopSave
</el-button>
-->
<!--
<el-button
@
click=
"capturePicture"
>
capturePicture
</el-button>
-->
<!--
<el-button
@
click=
"fullScreen"
>
fullScreen
</el-button>
-->
<!--
<el-button
@
click=
"getOSDTime"
>
getOSDTime
</el-button>
-->
<!--
<el-button
@
click=
"ezopenStartTalk"
>
开始对讲
</el-button>
-->
<!--
<el-button
@
click=
"ezopenStopTalk"
>
结束对讲
</el-button>
-->
<!--
<el-button
@
click=
"destroy"
>
销毁
</el-button>
-->
</div>
</div>
</
template
>
<
script
>
import
EZUIKit
from
"ezuikit-js"
;
let
player
=
null
;
export
default
{
name
:
"esu"
,
props
:
{
url
:
String
,
accessToken
:
String
,
},
data
(){
return
{
next_time
:
Date
.
now
()
}
},
mounted
(){
this
.
init
();
window
.
addEventListener
(
'onresize'
,
this
.
resize
);
},
methods
:
{
play
()
{
const
playPromise
=
player
.
play
();
playPromise
.
then
((
data
)
=>
{
console
.
log
(
"promise 获取 数据"
,
data
)
})
},
stop
()
{
const
stopPromise
=
player
.
stop
();
stopPromise
.
then
((
data
)
=>
{
console
.
log
(
"promise 获取 数据"
,
data
)
})
},
getOSDTime
()
{
const
getOSDTimePromise
=
player
.
getOSDTime
();
getOSDTimePromise
.
then
((
data
)
=>
{
console
.
log
(
"promise 获取 数据"
,
data
)
})
},
capturePicture
()
{
const
capturePicturePromise
=
player
.
capturePicture
(
`
${
new
Date
().
getTime
()}
`
);
capturePicturePromise
.
then
((
data
)
=>
{
console
.
log
(
"promise 获取 数据"
,
data
)
})
},
openSound
()
{
const
openSoundPromise
=
player
.
openSound
();
openSoundPromise
.
then
((
data
)
=>
{
console
.
log
(
"promise 获取 数据"
,
data
)
})
},
closeSound
()
{
const
openSoundPromise
=
player
.
closeSound
();
openSoundPromise
.
then
((
data
)
=>
{
console
.
log
(
"promise 获取 数据"
,
data
)
})
},
startSave
()
{
const
startSavePromise
=
player
.
startSave
(
`
${
new
Date
().
getTime
()}
`
);
startSavePromise
.
then
((
data
)
=>
{
console
.
log
(
"promise 获取 数据"
,
data
)
})
},
stopSave
()
{
const
stopSavePromise
=
player
.
stopSave
();
stopSavePromise
.
then
((
data
)
=>
{
console
.
log
(
"promise 获取 数据"
,
data
)
})
},
ezopenStartTalk
()
{
player
.
startTalk
();
},
ezopenStopTalk
()
{
player
.
stopTalk
();
},
fullScreen
()
{
player
.
fullScreen
();
},
destroy
()
{
const
destroyPromise
=
player
.
destroy
();
destroyPromise
.
then
((
data
)
=>
{
console
.
log
(
"promise 获取 数据"
,
data
)
})
},
resize
(){
if
(
Date
.
now
()
-
this
.
next_time
>
600
){
this
.
next_time
=
Date
.
now
();
}
},
init
(){
player
=
new
EZUIKit
.
EZUIKitPlayer
({
id
:
'video-container'
,
// 视频容器ID
accessToken
:
this
.
accessToken
,
url
:
this
.
url
,
// simple - 极简版; pcLive-pc直播;pcRec-pc回放;mobileLive-移动端直播;mobileRec-移动端回放;security - 安防版;voice-语音版;
// template: 'simple',
// plugin: ['talk'], // 加载插件,talk-对讲
// width: 600,
// height: 400,
});
this
.
$nextTick
(()
=>
{
player
.
play
();
});
}
}
};
</
script
>
<
style
lang=
"less"
scoped
>
.hello-ezuikit-js{
flex: 1;
display: flex;
flex-direction: column;
overflow: hidden;
}
</
style
>
pc/src/views/site-detail.vue
View file @
474f17e8
...
...
@@ -135,7 +135,7 @@
</div>
</div>
<div
class=
"body-one monitor"
v-else-if=
"tab=='monitor'"
>
<esu
:url=
"detail.url"
:accessToken=
"detail.accessToken"
></esu>
</div>
<div
class=
"body-one process"
v-else-if=
"tab=='process'"
>
<div
class=
"process-box"
>
...
...
@@ -278,12 +278,15 @@
setup
(
props
,
{
emit
})
{
const
state
=
reactive
({
show
:
false
,
url
:
'ezopen://open.ys7.com/E77565052/1.hd.live'
,
order_id
:
''
,
detail
:
{
poster
:[],
index
:
0
,
yewei
:
0.7
,
type
:
1
type
:
1
,
accessToken
:
'at.bvx2ea007tfqqdvkcb9iuhk70q6gjodm-7smdnjfh9j-1wdmw5f-mal3go2vz'
,
url
:
'ezopen://open.ys7.com/E77565052/1.live'
,
},
showBanner
:
false
,
tabs
:
[
...
...
@@ -613,7 +616,8 @@
}
},
components
:
{
orderDetail
:
defineAsyncComponent
(()
=>
import
(
"@/views/order-detail.vue"
))
orderDetail
:
defineAsyncComponent
(()
=>
import
(
"@/views/order-detail.vue"
)),
esu
:
defineAsyncComponent
(()
=>
import
(
"@/components/EZUIKitJs.vue"
)),
}
}
</
script
>
...
...
web/src/view/qshToilet/qshToilet.vue
View file @
474f17e8
...
...
@@ -45,14 +45,14 @@
>
<el-table-column
type=
"selection"
width=
"55"
/>
<el-table-column
align=
"left"
label=
"点位名称"
prop=
"name"
min-width=
"180"
/>
<el-table-column
align=
"left"
label=
"公厕地址"
prop=
"address"
min-width=
"
18
0"
/>
<el-table-column
align=
"left"
label=
"公厕地址"
prop=
"address"
min-width=
"
20
0"
/>
<el-table-column
align=
"left"
label=
"公厕类型"
prop=
"type"
min-width=
"120"
>
<
template
#
default=
"scope"
>
{{
filterDict
(
scope
.
row
.
type
,
typeOptions
)
}}
</
template
>
</el-table-column>
<el-table-column
align=
"left"
label=
"纬度"
prop=
"lat"
min-width=
"1
2
0"
/>
<el-table-column
align=
"left"
label=
"经度"
prop=
"lng"
min-width=
"1
2
0"
/>
<el-table-column
align=
"left"
label=
"纬度"
prop=
"lat"
min-width=
"1
8
0"
/>
<el-table-column
align=
"left"
label=
"经度"
prop=
"lng"
min-width=
"1
8
0"
/>
<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=
"创建时间"
min-width=
"180"
>
...
...
@@ -80,7 +80,7 @@
/>
</div>
</div>
<el-dialog
v-model=
"dialogFormVisible"
:before-close=
"closeDialog"
title=
"
弹窗操作
"
>
<el-dialog
v-model=
"dialogFormVisible"
:before-close=
"closeDialog"
title=
"
公厕详情
"
>
<el-form
:model=
"formData"
label-position=
"right"
label-width=
"120px"
>
<el-form-item
label=
"点位名称:"
>
<el-input
v-model=
"formData.name"
clearable
placeholder=
"请输入"
/>
...
...
@@ -92,7 +92,7 @@
</el-select>
</el-form-item>
<el-form-item
label=
"公厕地址:"
>
<el-input
v-model=
"formData.address"
clearable
placeholder=
"请输入"
/>
<el-input
v-model=
"formData.address"
type=
"textarea"
resize=
"none"
clearable
placeholder=
"请输入"
/>
</el-form-item>
<el-form-item
label=
"展示图片:"
>
<new-upload
v-if=
"dialogFormVisible"
:list=
"[formData.showImage]"
@
upload=
"(file)=>formData.showImage = file[0]"
></new-upload>
...
...
@@ -112,8 +112,14 @@
<el-form-item
label=
"管理员联系电话:"
>
<el-input
v-model=
"formData.managerPhone"
clearable
placeholder=
"请输入"
/>
</el-form-item>
<el-form-item
label=
"监控信息:"
>
<el-input
v-model=
"formData.monitor"
clearable
placeholder=
"请输入"
/>
<el-form-item
label=
"监控账号:"
>
<el-input
v-model=
"formData.monitor_ac"
clearable
placeholder=
"请输入"
/>
</el-form-item>
<el-form-item
label=
"监控ID:"
>
<el-input
v-model=
"formData.monitor_id"
clearable
placeholder=
"请输入"
/>
</el-form-item>
<el-form-item
label=
"设备ID:"
>
<el-input
v-model=
"formData.yewei_device"
clearable
placeholder=
"请输入"
/>
</el-form-item>
</el-form>
<
template
#
footer
>
...
...
@@ -156,7 +162,9 @@
lng
:
''
,
manager
:
''
,
managerPhone
:
''
,
monitor
:
''
,
monitor_ac
:
''
,
//监控账号
monitor_id
:
''
,
//监控ID
yewei_device
:
''
,
//设备ID
name
:
''
,
showImage
:
''
,
type
:
undefined
,
...
...
@@ -315,7 +323,9 @@
lng
:
''
,
manager
:
''
,
managerPhone
:
''
,
monitor
:
''
,
monitor_ac
:
''
,
//监控账号
monitor_id
:
''
,
//监控ID
yewei_device
:
''
,
//设备ID
name
:
''
,
showImage
:
''
,
type
:
undefined
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment