Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
H
hls-xcmg-vue-app
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
xugong
hls-xcmg-vue-app
Commits
bafafcdb
Commit
bafafcdb
authored
Dec 04, 2019
by
linxin
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'liuxin' into develop
parents
0f13614c
8ae75ec7
Pipeline
#4030
canceled with stages
Changes
7
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
317 additions
and
207 deletions
+317
-207
message.png
src/assets/messageCenter/message.png
+0
-0
drawback-list.vue
src/pages/drawback/drawback-list.vue
+7
-7
message-list.vue
src/pages/messageCenter/message-list.vue
+246
-191
reject-detail.vue
src/pages/messageCenter/reject-detail.vue
+52
-0
reimburse-myself-list.Vue
src/pages/reimburseMyself/reimburse-myself-list.Vue
+3
-3
video-list.vue
src/pages/videoSign/video-list.vue
+5
-5
index.js
src/router/index.js
+4
-1
No files found.
src/assets/messageCenter/message.png
0 → 100644
View file @
bafafcdb
1.65 KB
src/pages/drawback/drawback-list.vue
View file @
bafafcdb
...
...
@@ -167,7 +167,7 @@ export default {
top: 0;
}
.scrollContent {
padding-top: 2.
92
rem;
padding-top: 2.
05
rem;
padding-bottom: 20px;
}
.tab-style {
...
...
@@ -176,18 +176,18 @@ export default {
}
}
.platform-ios {
#
startList
{
#
reimburse
{
.scrollContent {
padding-top:
3.32
rem;
padding-top:
2.45
rem;
}
}
}
@media (device-width: 375px) and (device-height: 812px) and (-webkit-min-device-pixel-ratio: 3) {
.platform-ios {
#
startList
{
#
reimburse
{
.scrollContent {
padding-top: 3.
72
rem;
padding-top: 3.
05
rem;
}
}
}
...
...
@@ -195,9 +195,9 @@ export default {
// iPhoneXR适配
@media (device-width: 414px) and (device-height: 896px) {
.platform-ios {
#
startList
{
#
reimburse
{
.scrollContent {
padding-top: 3.
72
rem;
padding-top: 3.
05
rem;
}
}
}
...
...
src/pages/messageCenter/message-list.vue
View file @
bafafcdb
...
...
@@ -3,57 +3,56 @@
<h-header
class=
"bar-custom"
>
<div
slot=
"center"
class=
"top-word"
>
消息通知
</div>
</h-header>
<h-content
class=
"content"
>
<!--
<h-content
class=
"content"
>
-->
<scroll
ref=
"scroll"
:updateData=
"[list]"
:pullUp=
"true"
class=
"has-header"
@
pullingUp=
"getInfo"
>
<section
v-for=
"(item,parentIndex) in list"
:key=
"parentIndex"
class=
"msg-wrap"
>
<item-option
ref=
"itemOption"
>
<list-item>
<item
:hasBorder=
"false"
:proportion=
"[2,2]"
>
<div
slot=
"left-icon"
class=
"left-icon left-icon-box"
><img
src=
"@/assets/messageCenter/messageIcon.png"
></div>
<div
slot=
"name"
class=
"font-color"
>
{{
item
.
msg_title
}}
</div>
<div
slot=
"content"
class=
"time-color"
>
{{
item
.
msg_time
}}
</div>
<div
v-if=
"item.notice_type==3"
slot=
"left-icon"
class=
"left-icon left-icon-box"
>
<img
src=
"@/assets/messageCenter/messageIcon.png"
>
</div>
<div
v-if=
"item.notice_type==2"
slot=
"left-icon"
class=
"left-icon over-icon-box"
>
<img
src=
"@/assets/messageCenter/overIcon.png"
>
</div>
<div
v-if=
"item.notice_type==1"
slot=
"left-icon"
class=
"left-icon red-icon-box"
>
<img
src=
"@/assets/messageCenter/message.png"
>
</div>
<div
slot=
"name"
:class=
"
{'font-color':true,'over-color':item.notice_type==2,'red':item.notice_type==1}"
>
{{
item
.
notice_title
}}
</div>
<div
slot=
"content"
class=
"time-color"
>
{{
item
.
notice_time
}}
</div>
</item>
<div
class=
"msg-content"
>
<div
class=
"text"
>
<div
ref=
"textContainer"
:class=
"
{'retract': item.status}"
:
style="{'max-height':item.status ? textHeight: ''}">
{{
item
.
msg_content
}}
</div>
ref=
"textContainer"
:
class=
"
{'retract': item.status}"
:style="{'max-height':item.status ? textHeight: ''}"
>
{{
item
.
notice_body
}}
</div>
<div
class=
"btn"
>
<p
v-if=
"item.status"
@
click=
"item.status = false"
>
展开
</p>
<p
v-if=
"item.status == false"
@
click=
"item.status = true"
>
收起
</p>
</div>
</div>
</div>
<!--
<div
class=
"detail-wrap
"
>
<div
v-if=
"item.notice_type==2"
class=
"detail-wrap"
@
click=
"goDetail
"
>
<div
class=
"detail-wrap-content"
>
<span>
查看详情
</span>
<img
src=
"@/assets/messageCenter/right-gray.png"
>
<img
src=
"@/assets/messageCenter/right-gray.png"
>
</div>
</div>
-->
</div>
</list-item>
<div
slot=
"buttons"
>
<option-button
type=
"warn"
text=
"删除"
@
click
.
native=
"deleteFun(parentIndex)"
/>
<option-button
type=
"warn"
text=
"删除"
@
click
.
native=
"deleteFun(parentIndex)"
/>
</div>
</item-option>
</section>
<!--逾期消息-->
<section
v-for=
"(item,Index) in overList"
class=
"msg-wrap"
>
<list-item>
<item
:hasBorder=
"false"
:proportion=
"[2,2]"
>
<div
slot=
"left-icon"
class=
"left-icon over-icon-box"
><img
src=
"@/assets/messageCenter/overIcon.png"
></div>
<div
slot=
"name"
class=
"over-color"
>
{{
item
.
msg_title
}}
</div>
<div
slot=
"content"
class=
"time-color"
>
{{
item
.
msg_time
}}
</div>
</item>
<div
class=
"msg-content"
>
<div
class=
"text"
style=
"padding-bottom: 10px;"
>
<div>
{{
item
.
msg_content
}}
</div>
</div>
</div>
</list-item>
</section>
</h-content>
</h-view>
<!--
</h-content>
-->
</scroll></h-view>
</
template
>
<
script
>
export
default
{
...
...
@@ -61,41 +60,20 @@ export default {
return
{
textHeight
:
null
,
isFold
:
true
,
// list:[],
list
:
[
{
msg_title
:
'视频面签'
,
msg_content
:
'您有一条保证缴纳确认信息待您确认,请确认:2001于2019-08-29进行视频面签,届时请注意接收视频消息!'
,
msg_time
:
'2019-10-20'
,
},
{
msg_title
:
'保证金确认'
,
msg_content
:
'您有一条保证缴纳确认信息待您确认,请确认!'
,
msg_time
:
'2019-10-20'
,
},
{
msg_title
:
'进件确认'
,
msg_content
:
'进件号:201903022201待您确认,请确认!'
,
msg_time
:
'2019-10-20'
,
},
],
overList
:
[
{
msg_title
:
'逾期提醒'
,
msg_content
:
'您好,您的合同CON20190802001已逾期1期,请及时还款,谢谢!'
,
msg_time
:
'2019-10-20'
,
},
],
pagenum
:
1
,
list
:
[],
}
},
beforeRouteEnter
(
to
,
from
,
next
)
{
next
(
vm
=>
{
// vm.getInfo()
vm
.
list
=
[]
vm
.
pagenum
=
1
vm
.
getInfo
()
})
},
mounted
()
{
this
.
list
.
forEach
((
item
,
index
)
=>
{
this
.
$set
(
this
.
list
,
index
,
Object
.
assign
({},
item
,
{
status
:
null
}))
this
.
$set
(
this
.
list
,
index
,
Object
.
assign
({},
item
,
{
status
:
null
}))
})
// DOM 加载完执行
this
.
$nextTick
(()
=>
{
...
...
@@ -103,7 +81,7 @@ export default {
})
window
.
onresize
=
()
=>
{
this
.
list
.
forEach
((
item
,
index
)
=>
{
this
.
$set
(
this
.
list
,
index
,
Object
.
assign
({},
item
,
{
status
:
null
}))
this
.
$set
(
this
.
list
,
index
,
Object
.
assign
({},
item
,
{
status
:
null
}))
})
setTimeout
(()
=>
{
this
.
calculateText
()
...
...
@@ -120,23 +98,53 @@ export default {
for
(
let
i
=
0
;
i
<
txtDom
.
length
;
i
++
)
{
let
curHeight
=
txtDom
[
i
].
offsetHeight
if
(
curHeight
>
twoHeight
)
{
this
.
$set
(
this
.
list
,
i
,
Object
.
assign
({},
this
.
list
[
i
],
{
status
:
true
}))
this
.
$set
(
this
.
list
,
i
,
Object
.
assign
({},
this
.
list
[
i
],
{
status
:
true
})
)
}
else
{
this
.
$set
(
this
.
list
,
i
,
Object
.
assign
({},
this
.
list
[
i
],
{
status
:
null
}))
this
.
$set
(
this
.
list
,
i
,
Object
.
assign
({},
this
.
list
[
i
],
{
status
:
null
})
)
}
}
},
goDetail
()
{
this
.
$router
.
push
({
name
:
'RejectDetail'
,
})
},
getInfo
()
{
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'hls_app_notice_query'
let
param
=
{
phone
:
window
.
localStorage
.
getItem
(
'user_phone'
),
pagesize
:
'10'
,
pagenum
:
vm
.
pagenum
,
}
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
$post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
vm
.
list
=
res
.
lists
let
returnData
=
[]
returnData
=
res
.
lists
if
(
returnData
.
length
===
0
)
{
vm
.
$refs
.
scroll
.
update
(
true
)
}
else
if
(
returnData
.
length
>
0
&&
returnData
.
length
<
10
)
{
vum
.
forEach
(
returnData
,
function
(
data
,
index
,
array
)
{
vm
.
list
.
push
(
array
[
index
])
})
vm
.
$refs
.
scroll
.
update
(
true
)
}
else
if
(
returnData
.
length
===
10
)
{
vum
.
forEach
(
returnData
,
function
(
data
,
index
,
array
)
{
vm
.
list
.
push
(
array
[
index
])
})
vm
.
pagenum
++
vm
.
$refs
.
scroll
.
update
(
false
)
}
}
else
{
hlsPopup
.
showLongCenter
(
res
.
message
)
}
...
...
@@ -160,170 +168,217 @@ export default {
}
</
script
>
<
style
lang=
"less"
>
@import "../../styles/mixin";
@import "../../styles/mixin";
#message-center {
.content {
padding-top: 10px;
#message-center {
// .content {
// padding-top: 10px;
// }
.swipeout-list {
height: auto;
padding: 0;
.function {
right: -22% !important;
}
.swipeout-list{
height: auto;
padding: 0;
.function{
right: -22% !important;
}
}
.msg-wrap {
margin: 0 2% 10px 2%;
.msg-content {
margin-left: 14%;
margin-right: 4%;
line-height: 20px;
font-family: PingFangSC-Regular;
font-size: 14px;
color: #4B4A4B;
}
.nowrap {
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical
}
}
.text {
position: relative;
font-size: 14px;
.msg-wrap {
margin: 0 2% 10px 2%;
// padding-top: 10px;
// background-color:rgb(239,239,239)
.msg-content {
margin-left: 14%;
margin-right: 4%;
line-height: 20px;
letter-spacing: 2px;
color: #666666;
font-family: PingFangSC-Regular;
font-size: 14px;
color: #4b4a4b;
padding-bottom: 10px;
}
.retract {
position: relative;
.nowrap {
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical
-webkit-box-orient: vertical
;
}
}
.retract:after {
/*content: '...';
.text {
position: relative;
font-size: 14px;
line-height: 20px;
letter-spacing: 2px;
color: #666666;
}
.retract {
position: relative;
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
}
.retract:after {
/*content: '...';
position: absolute;
bottom: 0;
right: 2px;
width: 84px;
padding-left: 30px;
background: linear-gradient(to right, transparent, #fff 45%);*/
content: '...';
content: "...";
position: absolute;
bottom: -0.02rem;
right: 0.04rem;
width: 62px;
padding-left: 3px;
background: #fff;
}
.btn {
position: absolute;
right: 0;
bottom: -1px;
font-size: 14px;
line-height: 19px;
letter-spacing: 2px;
color: @headerColor;
cursor: pointer;
}
.more {
font-size: 14px;
line-height: 20px;
letter-spacing: 2px;
color: #666666;
visibility: hidden;
}
.left-icon-box {
position: relative;
width: 26px;
height: 26px;
background: #efefef;
border-radius: 8px;
img {
position: absolute;
bottom: -0.02rem;
right: 0.04rem;
width: 62px;
padding-left: 3px;
background: #FFF;
left: 6px;
z-index: 100;
top: 6px;
}
.btn {
}
.over-icon-box {
position: relative;
width: 26px;
height: 26px;
background: #ffffe0;
border-radius: 8px;
img {
position: absolute;
right: 0;
bottom: -1px;
font-size: 14px;
line-height: 19px;
letter-spacing: 2px;
color: @headerColor;
cursor: pointer;
left: 6px;
z-index: 100;
top: 6px;
}
.more {
font-size: 14px;
line-height: 20px;
letter-spacing: 2px;
color: #666666;
visibility: hidden;
}
.red-icon-box {
position: relative;
width: 26px;
height: 26px;
background: #fdd1d5;
border-radius: 8px;
img {
position: absolute;
left: 6px;
z-index: 100;
top: 6px;
}
.left-icon-box{
position: relative;
width: 26px;
height: 26px;
background: #efefef;
border-radius: 8px;
img{
position: absolute;
left: 6px;
z-index: 100;
top: 6px;
}
.contents {
.add-name {
.font-color {
font-family: PingFangSC-Semibold;
font-size: 15px;
color: #4b4a4b;
}
.over-color {
color: #fdb62f;
}
.red {
color: #d81e06;
}
}
.over-icon-box{
position: relative;
width: 26px;
height: 26px;
background: #FFFFE0;
border-radius: 8px;
img{
position: absolute;
left: 6px;
z-index: 100;
top: 6px;
.add-content {
.time-color {
font-family: PingFangSC-Regular;
font-size: 13px;
color: rgba(56, 63, 69, 0.6);
}
}
.hls-list-item{
padding-bottom: 10px;
img {
width: 14px;
height: 14px;
}
.contents{
.add-name{
.font-color{
font-family: PingFangSC-Semibold;
font-size: 15px;
color: #4B4A4B;
}
.over-color{
font-family: PingFangSC-Semibold;
font-size: 15px;
color: #FDB62F;
}
}
.add-content{
.time-color{
font-family: PingFangSC-Regular;
font-size: 13px;
color: rgba(56,63,69,0.60);
}
}
.detail-wrap {
margin-top: 10px;
width: 100%;
height: 35px;
padding: 0 4% 0 14%;
display: flex;
justify-content: center;
align-items: center;
.detail-wrap-content {
width: 100%;
height: 100%;
display: flex;
border-top: 1px solid #F3F3F7;
justify-content: space-between;
align-items: center;
span {
font-family: PingFangSC-Semibold;
font-size: 14px;
color: #4b4a4b;
}
img{
img
{
width: 14px;
height: 14px;
}
}
.detail-wrap{
margin-top: 10px;
width: 100%;
height: 40px;
padding: 0 4% 0 14%;
display: flex;
justify-content: center;
align-items: center;
.detail-wrap-content{
width: 100%;
height: 100%;
display: flex;
justify-content: space-between;
align-items: center;
.border-top;
span{
font-family: PingFangSC-Semibold;
font-size: 0.3rem;
color: #4B4A4B;
}
img{
width: 14px;
}
}
.content {
position: absolute;
top: 0;
}
.scrollContent {
padding-top: 1rem;
padding-bottom: 20px;
}
}
.platform-ios {
#message-center {
.scrollContent {
padding-top: 1.4rem;
}
}
}
@media (device-width: 375px) and (device-height: 812px) and (-webkit-min-device-pixel-ratio: 3) {
.platform-ios {
#message-center {
.scrollContent {
padding-top: 2rem;
}
}
}
}
// iPhoneXR适配
@media (device-width: 414px) and (device-height: 896px) {
.platform-ios {
#message-center {
.scrollContent {
padding-top: 2rem;
}
}
}
}
</
style
>
src/pages/messageCenter/reject-detail.vue
0 → 100644
View file @
bafafcdb
<
template
>
<h-view
id=
"rejectDetail"
>
<h-header
:proportion=
"[5,1,1]"
class=
"bar-custom"
>
<div
slot=
"left"
class=
"h-header-btn"
>
<img
src=
"@/assets/userBind/arrow.png"
@
click=
"$routeGo()"
>
<span>
消息详情
</span>
</div>
</h-header>
<h-content>
<div
class=
"userInfo"
>
审批意见
</div>
<div
class=
"info-content"
>
<p>
XXXXXXXXX。请联系业务员重新提交申请,谢谢!
</p>
</div>
</h-content>
</h-view>
</
template
>
<
script
>
export
default
{
}
</
script
>
<
style
lang=
"less"
>
#rejectDetail{
.userInfo {
height: 45px;
line-height: 45px;
color: @headerColor;
margin-top: 5px;
font-size: 15px;
margin-left: 16px;
position: relative;
}
.userInfo::before {
content: "";
display: block;
width: 4px;
height: 20px;
background-color: @headerColor;
position: absolute;
left: -15px;
top: 12px;
}
.info-content{
width:90%;
margin: 0 auto;
line-height: 20px;
p{
text-indent: 35px;
}
}
}
</
style
>
src/pages/reimburseMyself/reimburse-myself-list.Vue
View file @
bafafcdb
...
...
@@ -178,7 +178,7 @@ export default {
}
}
.platform-ios {
#
startList
{
#
reimburse
{
.scrollContent {
padding-top: 2.2rem;
}
...
...
@@ -187,7 +187,7 @@ export default {
@media (device-width: 375px) and (device-height: 812px) and (-webkit-min-device-pixel-ratio: 3) {
.platform-ios {
#
startList
{
#
reimburse
{
.scrollContent {
padding-top: 2.62rem;
}
...
...
@@ -197,7 +197,7 @@ export default {
// iPhoneXR适配
@media (device-width: 414px) and (device-height: 896px) {
.platform-ios {
#
startList
{
#
reimburse
{
.scrollContent {
padding-top: 2.62rem;
}
...
...
src/pages/videoSign/video-list.vue
View file @
bafafcdb
...
...
@@ -520,7 +520,7 @@ export default {
top: 0;
}
.scrollContent {
padding-top: 2.
7
2rem;
padding-top: 2.
5
2rem;
padding-bottom: 20px;
}
.tab-style {
...
...
@@ -529,16 +529,16 @@ export default {
}
}
.platform-ios {
#
start
List {
#
video
List {
.scrollContent {
padding-top:
3.1
2rem;
padding-top:
2.9
2rem;
}
}
}
@media (device-width: 375px) and (device-height: 812px) and (-webkit-min-device-pixel-ratio: 3) {
.platform-ios {
#
start
List {
#
video
List {
.scrollContent {
padding-top: 3.52rem;
}
...
...
@@ -548,7 +548,7 @@ export default {
// iPhoneXR适配
@media (device-width: 414px) and (device-height: 896px) {
.platform-ios {
#
start
List {
#
video
List {
.scrollContent {
padding-top: 3.52rem;
}
...
...
src/router/index.js
View file @
bafafcdb
...
...
@@ -70,6 +70,7 @@ import ProDetailed from '@/pages/productQuery/product-detailed'
// 消息中心
import
MessageCenter
from
'@/pages/messageCenter/message-list'
import
ProductList
from
'@/pages/productQuery/product-list'
import
RejectDetail
from
'@/pages/messageCenter/reject-detail'
// 帮助与反馈
import
HelpList
from
'@/pages/help/help-list'
...
...
@@ -133,7 +134,7 @@ export default new Router({
children
:
[
{
path
:
'/tab/home-page'
,
component
:
HomePage
,
name
:
'HomePage'
,
meta
:
{
keepAlive
:
false
}},
{
path
:
'/tab/my-info'
,
component
:
MyInfo
,
name
:
'MyInfo'
,
meta
:
{
keepAlive
:
true
}},
{
path
:
'/tab/message-center'
,
component
:
MessageCenter
,
name
:
'MessageCenter'
,
meta
:
{
keepAlive
:
fals
e
}},
{
path
:
'/tab/message-center'
,
component
:
MessageCenter
,
name
:
'MessageCenter'
,
meta
:
{
keepAlive
:
tru
e
}},
],
},
...
...
@@ -253,6 +254,8 @@ export default new Router({
{
path
:
'/drawback-detail'
,
component
:
DrawbackDetail
,
name
:
'DrawbackDetail'
,
meta
:
{
keepAlive
:
false
}},
// 视屏面签
{
path
:
'/video-sign'
,
component
:
VideoSign
,
name
:
'VideoSign'
,
meta
:
{
keepAlive
:
true
}},
// 消息中心
{
path
:
'/reject-detail'
,
component
:
RejectDetail
,
name
:
'RejectDetail'
,
meta
:
{
keepAlive
:
true
}},
],
scrollBehavior
(
to
,
from
,
savedPosition
)
{
if
(
to
.
hash
)
{
...
...
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