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
55f4eb42
Commit
55f4eb42
authored
May 23, 2025
by
xinzhedeai
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add:消费者首页new
parent
aea0a9bf
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
139 additions
and
42 deletions
+139
-42
home.html
home.html
+2
-1
home.js
home.js
+30
-21
banner.png
image/code/banner.png
+0
-0
axios_http.js
sdk/axios_http.js
+9
-2
axios_http3.js
sdk/axios_http3.js
+8
-2
_consumer_home.css
src/_consumer_home.css
+4
-1
_consumer_home.html
src/_consumer_home.html
+53
-14
_consumer_home.js
src/_consumer_home.js
+33
-1
No files found.
home.html
View file @
55f4eb42
...
...
@@ -44,6 +44,7 @@
id=
"app"
class=
"page_wrapper"
v-cloak
v-if=
"!['consumers'].includes(userInfo.userType)"
>
<!-- 第二层:商户图标、名称、等级、场所类型和地址 -->
<div
...
...
@@ -74,7 +75,7 @@
<!-- 第二层:商户图标、名称、等级、场所类型和地址 -->
<div
class=
"second-layer-sj"
v-if=
"
userInfo.userType=='shop'
"
v-if=
"
['shop'].includes(userInfo.userType)
"
v-cloak
>
<div
class=
"header"
>
...
...
home.js
View file @
55f4eb42
...
...
@@ -38,7 +38,8 @@ window.onload = function () {
},
],
userInfo
:
{
userType
:
'
sj1
'
,
// 登录用户type
userType
:
'
sj1
'
,
// 登录用户type
userType
:
'
consumers
'
,
// 登录用户type
userId
:
'
1
'
,
// 登录用户id
userName
:
'
张三
'
,
// 登录用户name
deptId
:
'
1
'
,
// 登录用户部门id
...
...
@@ -246,7 +247,32 @@ window.onload = function () {
merId
:
result
.
data
.
merchantInfoNumVo
?.
id
,
//
}
gemhoUtil
.
setCookie
(
'
userType
'
,
this
.
userInfo
.
userType
)
if
(
this
.
userInfo
.
userType
===
'
shop
'
)
{
if
(
this
.
userInfo
.
userType
=
'
consumers
'
){
// 2025年5月14日新增消费者逻辑
// 根据url地址的merid获取商户信息
if
(
gemhoUtil
.
getParameter
(
'
merId
'
)){
// 消费者直接在爱山东扫商户码进入首页
// this.getMerInfo()
param
=
{
merId
:
gemhoUtil
.
getParameter
(
'
merId
'
),
pageName
:
'
src/_consumer_home
'
,
}
let
url
=
gemhoUtil
.
setParameter
(
`
${
param
.
pageName
}
.html`
,
param
)
gemhoUtil
.
navigatePage
(
url
,
'
跳转中...
'
)
return
}
else
{
// 消费者不扫码后,直接退出到爱山东首页。(用户直接在爱山东点击应用进入首页)
vant
.
Dialog
.
alert
({
title
:
'
信息提示
'
,
message
:
'
请扫描商户码访问~
'
,
}).
then
(()
=>
{
// 关闭当前访问页面回到爱山东
lightAppJssdk
.
navigation
.
close
({
success
:
function
(
data
)
{
},
fail
:
function
(
data
)
{
},
})
});
}
return
}
else
if
(
this
.
userInfo
.
userType
===
'
shop
'
)
{
this
.
defaultMenuList
[
1
].
navTo
=
'
checkrecord
'
}
else
{
this
.
defaultMenuList
[
1
].
navTo
=
'
shanghu_list
'
...
...
@@ -261,21 +287,12 @@ window.onload = function () {
remark
:
moduleItem
.
remark
||
''
,
})
)
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
)
...
...
@@ -299,6 +316,7 @@ window.onload = function () {
pageSize
:
this
.
size
,
date
:
this
.
selectedDate
,
sort
:
'
lawId,desc
'
,
merId
:
gemhoUtil
.
getParameter
(
'
merId
'
),
},
},
(
res
)
=>
{
...
...
@@ -318,16 +336,6 @@ window.onload = function () {
}
)
},
0
)
// http
// .get(
// '/gq/checkRecord/merHomeStatistics?merId=1&date=' +
// this.selectedDate
// )
// .then((res) => {
// if (res.code == 200) {
// this.userData = res.data
// }
// })
},
},
//过滤器
...
...
@@ -339,5 +347,6 @@ window.onload = function () {
return
`
${
year
}
年
${
month
}
月`
},
},
})
}
image/code/banner.png
0 → 100644
View file @
55f4eb42
153 KB
sdk/axios_http.js
View file @
55f4eb42
...
...
@@ -8,9 +8,16 @@ axios.defaults.timeout = 50000
// axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8'
axios
.
defaults
.
headers
.
post
[
'
Content-Type
'
]
=
'
application/json
'
// axios.defaults.headers.common['Authorization'] = gemhoUtil.getCookie('token')
// 商户token
// 消费者token
axios
.
defaults
.
headers
.
common
[
'
Authorization
'
]
=
'
Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiLlvKDlrZ3lvakiLCJsb2dpbl91c2VyX2tleSI6ImYzZDMwY2Q4LWY5ODAtNGE0NC1iNzE1LTZiMTJlNGQyZTQ1OCJ9.HjtdJuJS7NjTw4GMaAtDtOeA2EnF75pXVQefzwkdrxQdxyHB6L8h0XhKSB5A_YMsznQMd4DZrGZ5TPEmc1fueg
'
'
Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiLmtojotLnogIUiLCJsb2dpbl91c2VyX2tleSI6ImExNWIwMDNjLWRlYWItNGU2MC04ODg4LTJiODNjMzVkNDUzNSJ9.l6gHzFX-U5rKGJ7zoDA4jMBIxkhVgCjWr5ynFg1DR6xspM9Ls6raTxyEo2Kr61UbG2UD6P2kN63vF_U8nX8afg
'
// // 商户token
// axios.defaults.headers.common['Authorization'] =
// 'Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiLlvKDlrZ3lvakiLCJsb2dpbl91c2VyX2tleSI6ImYzZDMwY2Q4LWY5ODAtNGE0NC1iNzE1LTZiMTJlNGQyZTQ1OCJ9.HjtdJuJS7NjTw4GMaAtDtOeA2EnF75pXVQefzwkdrxQdxyHB6L8h0XhKSB5A_YMsznQMd4DZrGZ5TPEmc1fueg'
// admin账号token
// axios.defaults.headers.common['Authorization'] =
...
...
sdk/axios_http3.js
View file @
55f4eb42
...
...
@@ -4,14 +4,20 @@
// 环境的切换
if
(
window
.
env
==
'
dev
'
)
{
axios
.
defaults
.
baseURL
=
'
http://192.168.2.37:8080
'
// 消费者token
axios
.
defaults
.
headers
.
common
[
'
Authorization
'
]
=
'
Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiLmtojotLnogIUiLCJsb2dpbl91c2VyX2tleSI6ImExNWIwMDNjLWRlYWItNGU2MC04ODg4LTJiODNjMzVkNDUzNSJ9.l6gHzFX-U5rKGJ7zoDA4jMBIxkhVgCjWr5ynFg1DR6xspM9Ls6raTxyEo2Kr61UbG2UD6P2kN63vF_U8nX8afg
'
// 商户token
// axios.defaults.headers.common['Authorization'] =
// 'Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiLlvKDlrZ3lvakiLCJsb2dpbl91c2VyX2tleSI6IjNjMmRiMWFiLWIyZGMtNDBjYi04YjM5LWRiNTJmM2VmYzNkYyJ9.sfZyPP-COShNCjwxKR26zGDsPHXss97gu7JEpaMapIZyMQEsxzMigVickcqdhaqDwTRcfr0IxAj64vnrriS9Cw'
// admin账号token
axios
.
defaults
.
headers
.
common
[
'
Authorization
'
]
=
'
Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJhZG1pbiIsImxvZ2luX3VzZXJfa2V5IjoiNTljMWVhMTMtODNmYy00OWI2LWI5YzMtM2VkNzliODFhZjg4In0.XHl0IpagNwLJBqW_s2n6Kzhs9eY-TrMUBfAO8oeikYRUH72eshEXwMsTyTWgVnX_okY4tuB4U124AeF6EO_qiQ
'
//
axios.defaults.headers.common['Authorization'] =
//
'Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJhZG1pbiIsImxvZ2luX3VzZXJfa2V5IjoiNTljMWVhMTMtODNmYy00OWI2LWI5YzMtM2VkNzliODFhZjg4In0.XHl0IpagNwLJBqW_s2n6Kzhs9eY-TrMUBfAO8oeikYRUH72eshEXwMsTyTWgVnX_okY4tuB4U124AeF6EO_qiQ'
}
else
{
axios
.
defaults
.
baseURL
=
'
https://gqyjpt.weihai.cn/prod-api
'
...
...
src/_consumer_home.css
View file @
55f4eb42
html
,
body
{
letter-spacing
:
.01rem
;
background-color
:
#FFF
;
overflow-x
:
hidden
;
}
.wrapper
{
...
...
@@ -10,6 +12,7 @@ body {
.header
{
padding
:
.2rem
;
background
:
#fff
;
}
.header
.title
{
...
...
@@ -29,7 +32,7 @@ body {
}
.detail
{
width
:
6.5rem
;
width
:
100%
;
/* height: 1.88rem; */
background
:
#F5F6FA
;
border-radius
:
0.01rem
;
...
...
src/_consumer_home.html
View file @
55f4eb42
...
...
@@ -102,8 +102,8 @@
line-height
:
50px
;
padding
:
0
12px
;
font-size
:
14px
;
border-bottom
:
1px
solid
#f0f2f5
;
margin-bottom
:
10px
;
/* border-bottom: 1px solid #f0f2f5; */
/* margin-bottom: 10px; */
font-weight
:
400
;
}
.save-btn
{
...
...
@@ -117,6 +117,19 @@
cursor
:
pointer
;
margin-bottom
:
.4rem
;
}
.textareaEle
{
width
:
100%
;
border
:
1px
solid
#CACACA
;
font-size
:
.28rem
;
border-radius
:
.05rem
;
padding
:
.15rem
;
}
.merchant-icon
{
width
:
100%
;
}
.date-wrapper
.van-cell
{
padding-left
:
0
;
}
</style>
<!-- 在 includeHead.js 之后添加环境判断 -->
<script
src=
"../sdk/includeHead.js"
></script>
...
...
@@ -125,7 +138,7 @@
<div
id=
"app"
class=
"page_wrapper"
v-cloak
>
<!-- 第一层:标题图 -->
<div
class=
"second-layer second-layer-zf"
>
<img
class=
"merchant-icon"
src=
"
image/code/zhengfu_logo
.png"
alt=
""
/>
<img
class=
"merchant-icon"
src=
"
../image/code/banner
.png"
alt=
""
/>
</div>
<!-- 第二层:商户图标、名称、等级、场所类型和地址 -->
...
...
@@ -136,7 +149,7 @@
class=
"tag"
>
安全等级-绿
</span>
</div>
<div
class=
"detail"
>
<van-row>
<van-row
style=
"margin-bottom: .25rem;"
>
<van-col
span=
"24"
>
场所类型: {{merInformation.smallPlaceTypeName}}
</van-col>
</van-row>
<van-row>
...
...
@@ -148,19 +161,24 @@
<div
class=
"third-layer"
>
<!-- form开始 -->
<div
class=
"form-container"
>
<h2
style=
"font-family: PingFang SC;
font-weight: 500;
font-size: .26rem;
color: #0587FE;border-radius: .04rem;padding:.2rem;
border: 0.02rem solid #7DC3FF;"
>
消费者安全建议:如您有建议,可填写下方内容
</h2>
<div>
<h5
class=
"imager-item-title"
>
<span>
*安全建议
</span>
<span></span>
</h5>
<div>
<textarea
name=
""
id=
""
cols=
"10"
rows=
"2
"
></textarea>
<textarea
class=
"textareaEle"
name=
""
id=
""
cols=
"10"
rows=
"2"
style=
"resize: none;
"
></textarea>
</div>
</div>
<div>
<h5
class=
"imager-item-title"
>
<span>
请上传图片(最多
四
张)
</span>
<span>
请上传图片(最多
4
张)
</span>
<span></span>
</h5>
<div>
...
...
@@ -172,26 +190,47 @@
<div
class=
"form-item"
>
<span
class=
"form-label"
>
联系人
</span>
<div
class=
"form-input-wrap"
>
<input
type=
"text"
v-model=
"formData.owner"
class=
"form-input"
placeholder=
"请输入11位手机号"
pattern=
"[0-9]{11}"
>
<input
type=
"text"
v-model=
"formData.owner"
class=
"form-input"
placeholder=
"请输入姓名"
>
</div>
</div>
<div
class=
"form-item"
>
<span
class=
"form-label"
>
联系
电话
</span>
<span
class=
"form-label"
>
联系
方式
</span>
<div
class=
"form-input-wrap"
>
<input
type=
"text"
v-model=
"formData.merchantPhone"
class=
"form-input"
placeholder=
"请输入
联系地址
"
>
placeholder=
"请输入
手机号
"
>
</div>
</div>
<div
class=
"form-item"
>
<!-- <div class="form-item">
<van-cell @click="showDatePicker=true" >日期<span class="formValue">{{formData.date}}</span></van-cell>
</div> -->
<van-popup
v-model=
"showDatePicker"
position=
"bottom"
>
<van-datetime-picker
type=
"date"
@
confirm=
"onDateConfirm"
@
cancel=
"showDatePicker = false"
/>
</van-popup>
<div
class=
"form-item date-wrapper"
>
<span
class=
"form-label"
>
日期
</span>
<div
class=
"form-input-wrap"
>
<input
type=
"text"
v-model=
"formData.businessAddress"
v-model=
"formData.merchantPhone"
class=
"form-input"
placeholder=
"请输入联系地址"
>
<van-field
readonly
v-model=
"formData.date"
:min-date=
"minDate"
:max-date=
"maxDate"
placeholder=
"请选择日期"
@
click=
"showDatePicker = true"
class=
"form-input"
/>
</div>
</div>
<!-- form结束 -->
<button
class=
"save-btn"
style=
"margin-left: 50%; transform: translateX(-50%);"
onclick=
"save"
>
提交
</button>
...
...
src/_consumer_home.js
View file @
55f4eb42
...
...
@@ -9,6 +9,9 @@ window.addEventListener("load", function () {
el
:
'
#app
'
,
data
()
{
return
{
showDatePicker
:
false
,
// 控制日期选择器显示
minDate
:
new
Date
(
gemhoUtil
.
getTargetDateYMD
()),
// 最小可选日期
maxDate
:
new
Date
(
2099
,
11
,
31
),
// 最大可选日期
// 新增子Tab数据
subActiveTab
:
0
,
hazardList
:
[
// 更多示例数据...
...
...
@@ -19,7 +22,7 @@ window.addEventListener("load", function () {
showTypePicker
:
false
,
typeOptions
:
[
'
小餐饮
'
,
'
酒店
'
,
'
商场
'
,
'
学校
'
,
'
医疗机构
'
],
formData
:
{
principal
:
''
,
date
:
gemhoUtil
.
getTargetDateYMD
()
,
phone
:
''
,
area
:
''
,
businessHours
:
''
,
...
...
@@ -50,7 +53,36 @@ window.addEventListener("load", function () {
mounted
()
{
this
.
getShopInfo
()
// 获取商户信息
},
watch
:
{
'
formData.date
'
:
{
handler
(
newVal
)
{
console
.
log
(
'
date 属性变化:
'
,
newVal
);
},
deep
:
true
// 深度监听对象属性
}
},
methods
:
{
// 日期格式化函数(确保格式为 YYYY-MM-DD)
dateFormatter
(
type
,
value
)
{
if
(
type
===
'
year
'
)
{
return
`
${
value
}
年`
;
}
else
if
(
type
===
'
month
'
)
{
return
`
${
value
}
月`
;
}
return
`
${
value
}
日`
;
},
// 确认日期选择
onDateConfirm
(
date
)
{
// 将 Date 对象格式化为 YYYY-MM-DD 字符串
const
year
=
date
.
getFullYear
();
const
month
=
String
(
date
.
getMonth
()
+
1
).
padStart
(
2
,
'
0
'
);
const
day
=
String
(
date
.
getDate
()).
padStart
(
2
,
'
0
'
);
this
.
formData
.
date
=
`
${
year
}
-
${
month
}
-
${
day
}
`
;
this
.
showDatePicker
=
false
;
},
dateChange
(
e
){
console
.
log
(
'
date 属性变化22222:
'
,
e
);
},
// 文件上传处理
handleFileUpload
(
file
)
{
console
.
log
(
'
上传文件:
'
,
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