Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
GaoQuYingJiH5-ASD
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
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
xinzhedeai
GaoQuYingJiH5-ASD
Commits
aea0a9bf
Commit
aea0a9bf
authored
May 21, 2025
by
xinzhedeai
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
安全常识列表页面
parent
08eda11b
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
726 additions
and
0 deletions
+726
-0
_anquan_changshi.css
src/_anquan_changshi.css
+207
-0
_anquan_changshi.html
src/_anquan_changshi.html
+152
-0
_anquan_changshi.js
src/_anquan_changshi.js
+367
-0
No files found.
src/_anquan_changshi.css
0 → 100644
View file @
aea0a9bf
html
,
body
{
letter-spacing
:
.01rem
;
}
.wrapper
{
/* padding: 0.2rem; */
background-color
:
#fff
;
}
.header
{
padding
:
.2rem
;
}
.header
.title
{
font-weight
:
bold
;
font-size
:
0.32rem
;
color
:
#000000
;
display
:
flex
;
justify-content
:
start
;
align-items
:
center
;
gap
:
0.2rem
;
padding
:
0.3rem
0.3rem
;
}
.header
.title
img
{
width
:
0.51rem
;
height
:
0.52rem
;
}
.detail
{
width
:
6.5rem
;
/* height: 1.88rem; */
background
:
#F5F6FA
;
border-radius
:
0.01rem
;
/* padding-left: 0.2rem; */
padding
:
0.3rem
;
margin-bottom
:
0.2rem
;
display
:
flex
;
align-items
:
start
;
flex-direction
:
column
;
justify-content
:
space-around
;
/* padding-bottom: 0.1rem;
gap: 0.1rem; */
}
.detail
.van-col
{
font-family
:
PingFang
SC
;
font-weight
:
500
;
font-size
:
0.28rem
;
color
:
#737373
;
}
.detail
span
{
font-family
:
PingFang
SC
;
font-weight
:
500
;
font-size
:
0.28rem
;
color
:
#737373
;
}
.detail
.detail_link
{
position
:
absolute
;
right
:
.3rem
;
font-size
:
.26rem
;
color
:
#1081E3
;
cursor
:
pointer
;
}
.func_btn
{
width
:
7.12rem
;
height
:
0.8rem
;
background
:
#1081E3
;
border-radius
:
0.1rem
;
font-family
:
PingFang
SC
;
font-weight
:
500
;
font-size
:
0.3rem
;
color
:
#FFFFFF
;
margin
:
0
auto
;
border-width
:
0
;
margin-left
:
.2rem
;
cursor
:
pointer
;
}
.func_btn
span
{
font-size
:
0.5rem
;
vertical-align
:
-0.05rem
;
margin-right
:
.1rem
;
}
.tag
{
display
:
inline-block
;
width
:
1.9rem
;
height
:
0.42rem
;
line-height
:
0.42rem
;
text-align
:
center
;
background
:
#00B55E
;
border-radius
:
21px
;
font-weight
:
500
;
font-size
:
0.28rem
;
color
:
#FFFFFF
;
}
/* 添加以下样式 */
.van-tabs__line
{
background-color
:
#1989fa
;
}
.blue-text
{
color
:
#1989fa
;
font-weight
:
500
;
}
.van-list
{
background
:
#fff
;
border-radius
:
8px
;
}
.subNavWrapper
.van-cell
{
padding
:
12px
10px
;
}
.van-tab
{
color
:
#000
;
}
.van-tab__text
{
font-weight
:
bold
;
font-size
:
0.3rem
;
/* color: #000; */
}
.van-tab--active
{
color
:
#1081E3
;
}
.van-field__label
{
font-weight
:
bold
;
}
.van-field__control
{
color
:
#737373
;
}
.subNavWrapper
{
background-color
:
#F5F6FA
;
padding
:
0.2rem
0.2rem
;
margin-top
:
-0.3rem
;
}
.subNavWrapper
.van-tab__text
{
color
:
#5B5B5B
;
}
.subNavWrapper
.van-tab--active
span
{
color
:
#fff
;
font-size
:
0.28rem
;
}
.subNavWrapper
.van-tabs__nav--card
{
border
:
none
!important
;
}
.subNavWrapper
.van-tabs--card
{
margin-bottom
:
0.3rem
;
}
.subNavWrapper
.van-tabs__nav--card
.van-tab
{
color
:
#5B5B5B
;
border
:
none
!important
;
}
.subNavWrapper
.van-tabs__nav--card
.van-tab.van-tab--active
{
color
:
#FFFFFF
;
background
:
#58A5E8
;
border-radius
:
0.4rem
;
}
.subNavWrapper
.van-list
{
background
:
#F5F6FA
;
}
.subNavWrapper
.van-cell
{
margin-bottom
:
.3rem
;
}
.subNavWrapper
.van-tabs__nav
{
background
:
#F5F6FA
;
margin
:
0
;
}
.navToBtn
{
color
:
#5B5B5B
;
font-size
:
.36rem
;
margin-top
:
.04rem
;
position
:
absolute
;
right
:
0
;
}
\ No newline at end of file
src/_anquan_changshi.html
0 → 100644
View file @
aea0a9bf
<!DOCTYPE html>
<html>
<head>
<meta
charset=
"UTF-8"
>
<meta
http-equiv=
"X-UA-Compatible"
content=
"IE=edge"
>
<meta
name=
"viewport"
content=
"width=device-width, initial-scale=1.0, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0, viewprot-fit:cover"
>
<title>
高区“码”上
</title>
<script
type=
"text/javascript"
src=
"../sdk/includeHead.js"
></script>
<style>
*
{
margin
:
0
;
padding
:
0
;
box-sizing
:
border-box
;
}
body
{
font-family
:
Arial
,
sans-serif
;
background
:
#f5f5f5
;
}
.container
{
display
:
flex
;
flex-wrap
:
wrap
;
width
:
100%
;
margin
:
0
auto
;
justify-content
:
center
;
gap
:
.2rem
;
/* 卡片间距 */
box-sizing
:
border-box
;
padding-bottom
:
.2rem
;
/* padding: 10px;
*/
}
.card
{
/* flex: 0 0 calc(50% - 5px); */
flex
:
0
0
46%
;
/* 每行两个卡片,减去间距的一半 */
background
:
white
;
border-radius
:
4px
;
overflow
:
hidden
;
box-shadow
:
0
2px
5px
rgba
(
0
,
0
,
0
,
0.1
);
transition
:
transform
0.3s
;
}
.card
:hover
{
transform
:
translateY
(
-5px
);
}
.image-wrapper
{
position
:
relative
;
width
:
100%
;
padding-top
:
56.25%
;
/* 16:9 比例 */
overflow
:
hidden
;
}
.image-wrapper
img
{
position
:
absolute
;
top
:
0
;
left
:
0
;
width
:
100%
;
height
:
100%
;
object-fit
:
cover
;
}
.image-info
{
position
:
absolute
;
bottom
:
0
;
left
:
0
;
right
:
0
;
display
:
flex
;
justify-content
:
space-between
;
align-items
:
center
;
padding
:
8px
12px
;
background
:
linear-gradient
(
to
top
,
rgba
(
0
,
0
,
0
,
0.6
),
transparent
);
color
:
white
;
font-size
:
14px
;
}
.card-title
{
padding
:
15px
;
font-size
:
.28rem
;
font-weight
:
bold
;
color
:
#333
;
line-height
:
1.4
;
}
</style>
</head>
</head>
<body>
<div
id=
"app"
>
<div
class=
"wrapper"
v-cloak
>
<div
class=
"header"
>
<van-search
v-model=
"merName"
show-action
placeholder=
"请输入商家关键词"
@
search=
"onSearch"
>
<template
#action
>
<div
@
click=
"onSearch"
></div>
</template>
</van-search>
</div>
<!-- Tab栏 -->
<van-tabs
v-model:active=
"activeTab"
@
click=
"clickTab"
title-active-color=
"#1989fa"
line-height=
"2px"
style=
"margin-bottom: 15px;"
>
<van-tab
title=
"常识视频"
></van-tab>
<van-tab
title=
"警示视频"
></van-tab>
<van-tab
title=
"应知应会"
></van-tab>
<!-- <van-tab title="培训演练"></van-tab> -->
</van-tabs>
<!-- 隐患列表 -->
<van-list>
<div
class=
"container"
>
<div
class=
"card"
v-for=
"item in 11"
>
<div
class=
"image-wrapper"
>
<img
src=
"https://dummyimage.com/340x206"
alt=
"视频封面1"
>
</div>
<div
class=
"card-title"
>
这是第一个视频标题,展示基本样式效果
</div>
</div>
</div>
</van-list>
<!-- <van-list>
<van-cell v-for="item in 11"
style="position: relative;margin-bottom: 0.25rem;margin-top: 0.25rem;" @click="viewDetail(item)">
<div style="width: 100%;">
<div style="
position: relative;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
color: #333;
font-size: 0.3rem;
font-weight: bold;
font-family: PingFang SC;
">隐患排查不松懈</div>
<div style="position: relative: flex; justify-content: space-between; margin: 8px 0;">
<span
style="color: #737373; font-size: 0.28rem;">{{ '2025/2/12' }}</span>
<van-icon name="arrow" style="position: absolute; right:0;top:.5rem;font-size:.4rem;" @click="viewDetail(item,'YH_XQ')" />
</div>
</div>
</van-cell>
</van-list> -->
</div>
</body>
</html>
\ No newline at end of file
src/_anquan_changshi.js
0 → 100644
View file @
aea0a9bf
/**
* author: dabao
* date: 2024-03-15
* description: 商户首页
*/
var
VUE
=
null
window
.
addEventListener
(
"
load
"
,
function
()
{
VUE
=
new
Vue
({
el
:
'
#app
'
,
data
()
{
return
{
merName
:
''
,
// 新增子Tab数据
subActiveTab
:
0
,
hazardList
:
[
// 更多示例数据...
],
activeTab
:
0
,
showTimePicker
:
false
,
// 新增以下数据
showTypePicker
:
false
,
typeOptions
:
[
'
小餐饮
'
,
'
酒店
'
,
'
商场
'
,
'
学校
'
,
'
医疗机构
'
],
formData
:
{
principal
:
''
,
phone
:
''
,
area
:
''
,
businessHours
:
''
,
type
:
''
,
// 新增类型字段
},
checkList
:
[{
id
:
1
,
date
:
'
2024-03-15
'
,
result
:
'
合格
'
},
{
id
:
2
,
date
:
'
2024-03-14
'
,
result
:
'
不合格
'
}
],
merId
:
''
,
merInformation
:
{
// 新增商户信息对象
},
jcLisk
:
[{
// 新增检查列表数据
}],
UserPermission
:
false
,
// 用户是否具有安全检查权限
}
},
created
()
{
let
params
=
gemhoUtil
.
getUrlParams
()
console
.
log
(
params
);
this
.
merId
=
params
.
merId
},
mounted
()
{
this
.
getShopInfo
()
// 获取商户信息
this
.
getShopDate
()
// 获取商户统计信息
this
.
getYhList
()
// 获取隐患记录
// this.getJcList() // 获取检查列表
this
.
getUserPermission
()
//获取用户是否具有安全检查资格
},
computed
:
{
filteredHazards
()
{
const
statusMap
=
[
'
全部
'
,
'
待审核
'
,
'
待整改
'
,
'
已整改
'
,
'
整改逾期
'
];
return
this
.
hazardList
.
filter
(
item
=>
this
.
subActiveTab
===
0
?
true
:
item
.
rectificationStatusName
===
statusMap
[
this
.
subActiveTab
]
);
}
},
methods
:
{
onSearch
()
{
console
.
log
(
'
xxxx
'
,
this
.
merName
)
this
.
getList
()
},
getList
(){
},
navTo
(
url
)
{
// gemhoUtil.nav2asd(url)
let
params
=
gemhoUtil
.
getUrlParams
()
if
(
url
==
'
check_info
'
)
{
params
=
{
...
params
,
flag
:
'
ADD
'
,
pageName
:
'
_shanghu_home
'
}
}
let
strurl
=
gemhoUtil
.
setParameter
(
`_
${
url
}
.html`
,
params
)
gemhoUtil
.
navigatePage
(
strurl
,
'
跳转中...
'
)
},
clickTab
()
{
if
(
this
.
activeTab
>
0
)
{
this
.
getJcList
()
// 获取检查列表
}
},
// 新增选择确认方法
onConfirmType
(
value
)
{
this
.
formData
.
type
=
value
;
this
.
showTypePicker
=
false
;
},
onConfirmTime
(
time
)
{
this
.
formData
.
businessHours
=
time
;
this
.
showTimePicker
=
false
;
},
statusTagType
(
status
)
{
const
types
=
{
'
待审核
'
:
'
warning
'
,
'
待整改
'
:
'
primary
'
,
'
已整改
'
:
'
success
'
,
'
整改逾期
'
:
'
danger
'
,
};
return
types
[
status
]
||
''
;
},
viewDetail
(
item
,
type
)
{
let
params
=
{
id
:
item
.
id
,
merId
:
this
.
merId
,
pageName
:
'
_shanghu_home
'
}
// 这里添加跳转逻辑
if
(
type
===
'
YH_XQ
'
)
{
params
=
{
...
params
,
flag
:
item
.
rectificationStatus
,
}
}
else
{
params
=
{
...
params
,
flag
:
'
JC_XQ
'
,
}
}
let
url
=
gemhoUtil
.
setParameter
(
'
_check_info.html
'
,
params
)
gemhoUtil
.
navigatePage
(
url
,
'
跳转中...
'
)
},
//获取商户统计信息
getShopDate
()
{
vant
.
Toast
.
loading
({
message
:
'
正在加载...
'
,
forbidClick
:
true
,
loadingType
:
'
spinner
'
,
})
setTimeout
(()
=>
{
http2
.
post
(
{
serviceId
:
API_KEY_MAP
[
'
no-page
'
][
'
id
'
],
interfacePublicKey
:
API_KEY_MAP
[
'
no-page
'
][
'
publicKey
'
],
interfacePrivateKey
:
API_KEY_MAP
[
'
no-page
'
][
'
privateKey
'
],
reqParams
:
{
sign
:
6
,
pageNum
:
this
.
page
++
,
// 每次请求增加下一页
pageSize
:
this
.
size
,
merId
:
this
.
merId
,
sort
:
'
lawId,desc
'
,
},
},
(
res
)
=>
{
if
(
!
res
)
{
// 中台返回为undefined 重新请求
vant
.
Toast
.
clear
()
this
.
page
=
this
.
page
-
1
// 重新请求后,分页数恢复上一次请求的值
setTimeout
(()
=>
{
// this.getList()
},
0
)
return
}
if
(
res
)
{
var
result
=
JSON
.
parse
(
res
)
this
.
merInformation
=
{
...
this
.
merInformation
,
...
result
.
data
}
}
}
)
},
0
)
},
//获取商户信息
getShopInfo
()
{
vant
.
Toast
.
loading
({
message
:
'
正在加载...
'
,
forbidClick
:
true
,
loadingType
:
'
spinner
'
,
})
setTimeout
(()
=>
{
http2
.
post
(
{
serviceId
:
API_KEY_MAP
[
'
no-page
'
][
'
id
'
],
interfacePublicKey
:
API_KEY_MAP
[
'
no-page
'
][
'
publicKey
'
],
interfacePrivateKey
:
API_KEY_MAP
[
'
no-page
'
][
'
privateKey
'
],
reqParams
:
{
sign
:
11
,
pageNum
:
this
.
page
++
,
// 每次请求增加下一页
pageSize
:
this
.
size
,
merId
:
this
.
merId
,
sort
:
'
lawId,desc
'
,
},
},
(
res
)
=>
{
if
(
!
res
)
{
// 中台返回为undefined 重新请求
vant
.
Toast
.
clear
()
this
.
page
=
this
.
page
-
1
// 重新请求后,分页数恢复上一次请求的值
setTimeout
(()
=>
{
// this.getList()
},
0
)
return
}
if
(
res
)
{
var
result
=
JSON
.
parse
(
res
)
this
.
merInformation
=
{
...
this
.
merInformation
,
...
result
.
data
}
}
}
)
},
0
)
},
//获取隐患记录
getYhList
()
{
vant
.
Toast
.
loading
({
message
:
'
正在加载...
'
,
forbidClick
:
true
,
loadingType
:
'
spinner
'
,
})
setTimeout
(()
=>
{
http2
.
post
(
{
serviceId
:
API_KEY_MAP
[
'
page
'
][
'
id
'
],
interfacePublicKey
:
API_KEY_MAP
[
'
page
'
][
'
publicKey
'
],
interfacePrivateKey
:
API_KEY_MAP
[
'
page
'
][
'
privateKey
'
],
reqParams
:
{
sign
:
3
,
merId
:
this
.
merId
,
status
:
''
,
pageNum
:
this
.
page
++
,
// 每次请求增加下一页
pageSize
:
this
.
size
,
sort
:
'
lawId,desc
'
,
},
},
(
res
)
=>
{
if
(
!
res
)
{
// 中台返回为undefined 重新请求
vant
.
Toast
.
clear
()
this
.
page
=
this
.
page
-
1
// 重新请求后,分页数恢复上一次请求的值
setTimeout
(()
=>
{
// this.getList()
},
0
)
return
}
if
(
res
)
{
var
result
=
JSON
.
parse
(
res
)
this
.
hazardList
=
result
.
rows
console
.
log
(
result
)
}
}
)
},
0
)
},
//获取检查列表
getJcList
()
{
// 更多示例数据...
vant
.
Toast
.
loading
({
message
:
'
正在加载...
'
,
forbidClick
:
true
,
loadingType
:
'
spinner
'
,
})
setTimeout
(()
=>
{
http2
.
post
(
{
serviceId
:
API_KEY_MAP
[
'
page
'
][
'
id
'
],
interfacePublicKey
:
API_KEY_MAP
[
'
page
'
][
'
publicKey
'
],
interfacePrivateKey
:
API_KEY_MAP
[
'
page
'
][
'
privateKey
'
],
reqParams
:
{
sign
:
1
,
type
:
this
.
activeTab
,
merId
:
this
.
merId
,
pageNum
:
this
.
page
++
,
// 每次请求增加下一页
pageSize
:
this
.
size
,
sort
:
'
lawId,desc
'
,
},
},
(
res
)
=>
{
if
(
!
res
)
{
// 中台返回为undefined 重新请求
vant
.
Toast
.
clear
()
this
.
page
=
this
.
page
-
1
// 重新请求后,分页数恢复上一次请求的值
setTimeout
(()
=>
{
// this.getList()
},
0
)
return
}
if
(
res
)
{
var
result
=
JSON
.
parse
(
res
)
if
(
result
.
code
!==
200
&&
result
.
data
==
null
)
{
return
}
this
.
jcLisk
=
result
.
rows
if
(
this
.
page
*
this
.
size
>=
this
.
total
)
{
this
.
finished
=
true
// 下滑不在刷新数据
}
}
this
.
loading
=
false
setTimeout
(()
=>
{
this
.
$nextTick
(()
=>
{
vant
.
Toast
.
clear
()
})
},
0
)
this
.
$nextTick
(()
=>
{
// 滚动条跳转位置
window
.
scrollTo
(
0
,
gemhoUtil
.
getCookie
(
'
scrollPosition
'
))
})
}
)
},
0
)
},
//获取用户是否有安全检查的权限
getUserPermission
()
{
setTimeout
(()
=>
{
http2
.
post
(
{
serviceId
:
API_KEY_MAP
[
'
no-page
'
][
'
id
'
],
interfacePublicKey
:
API_KEY_MAP
[
'
no-page
'
][
'
publicKey
'
],
interfacePrivateKey
:
API_KEY_MAP
[
'
no-page
'
][
'
privateKey
'
],
reqParams
:
{
sign
:
13
,
merId
:
this
.
merId
,
pageNum
:
this
.
page
++
,
// 每次请求增加下一页
pageSize
:
this
.
size
,
sort
:
'
lawId,desc
'
,
},
},
(
res
)
=>
{
if
(
!
res
)
{
// 中台返回为undefined 重新请求
vant
.
Toast
.
clear
()
this
.
page
=
this
.
page
-
1
// 重新请求后,分页数恢复上一次请求的值
setTimeout
(()
=>
{
// this.getList()
},
0
)
return
}
if
(
res
)
{
var
result
=
JSON
.
parse
(
res
)
if
(
result
.
code
!==
200
&&
result
.
data
==
null
)
{
return
}
console
.
log
(
result
.
data
,
result
,
'
获取用户是否具有安全检查资格
'
);
this
.
UserPermission
=
result
.
data
.
length
>
0
?
true
:
false
if
(
this
.
page
*
this
.
size
>=
this
.
total
)
{
this
.
finished
=
true
// 下滑不在刷新数据
}
}
this
.
loading
=
false
setTimeout
(()
=>
{
this
.
$nextTick
(()
=>
{
vant
.
Toast
.
clear
()
})
},
0
)
this
.
$nextTick
(()
=>
{
// 滚动条跳转位置
window
.
scrollTo
(
0
,
gemhoUtil
.
getCookie
(
'
scrollPosition
'
))
})
}
)
},
0
)
}
}
});
})
\ No newline at end of file
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