Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
A
apaas-ui
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
gzga-jzapi
apaas-ui
Commits
be148412
Commit
be148412
authored
Nov 12, 2020
by
刘殿昕
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
成天去开发分支演示什么意思?写完就回滚?我还开发什么?
parent
5b03ea87
Changes
16
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
5125 additions
and
1163 deletions
+5125
-1163
src/components/service-list/commodity-card copy.vue
src/components/service-list/commodity-card copy.vue
+223
-0
src/components/service-list/commodity-card.vue
src/components/service-list/commodity-card.vue
+126
-176
src/components/service-list/commodity-cell copy.vue
src/components/service-list/commodity-cell copy.vue
+234
-0
src/components/service-list/commodity-cell.vue
src/components/service-list/commodity-cell.vue
+115
-141
src/components/service-list/commodity-list copy.vue
src/components/service-list/commodity-list copy.vue
+206
-0
src/components/service-list/commodity-list.vue
src/components/service-list/commodity-list.vue
+39
-27
src/components/service-list/service_list copy.vue
src/components/service-list/service_list copy.vue
+817
-0
src/components/service-list/service_list.vue
src/components/service-list/service_list.vue
+80
-175
src/components/service-list/service_shop_menu.vue
src/components/service-list/service_shop_menu.vue
+27
-38
src/components/service-list/service_shop_menu_copy.vue
src/components/service-list/service_shop_menu_copy.vue
+158
-0
src/components/shop-cloud/shop-cloud copy.vue
src/components/shop-cloud/shop-cloud copy.vue
+2327
-0
src/components/shop-cloud/shop-cloud.vue
src/components/shop-cloud/shop-cloud.vue
+594
-587
src/pages/service_shop/shop_cloud copy.vue
src/pages/service_shop/shop_cloud copy.vue
+36
-0
src/pages/service_shop/shop_cloud.vue
src/pages/service_shop/shop_cloud.vue
+4
-12
src/pages/service_shop/shop_list copy.vue
src/pages/service_shop/shop_list copy.vue
+134
-0
src/pages/service_shop/shop_list.vue
src/pages/service_shop/shop_list.vue
+5
-7
No files found.
src/components/service-list/commodity-card copy.vue
0 → 100644
View file @
be148412
<
template
>
<div
class=
"com_cell"
>
<div
class=
"com_cell_up"
@
click=
"goUrl(cellData.app_id)"
>
<div
class=
"com_cell_up_img_init"
>
<img
:src=
"cellData.logo"
class=
"com_cell_up_img"
/>
</div>
<div
class=
"com_cell_up_right"
>
<div
class=
"up_title"
>
<div
class=
"up_tit_name_in"
>
<span
class=
"up_tit_name"
:title=
"cellData.app_name + ' ( V' + cellData.version + ' )'"
>
{{
cellData
.
app_name
}}
( V
{{
cellData
.
version
}}
)
</span>
</div>
</div>
<div
class=
"up_rate"
>
<el-rate
v-model=
"cellData.score"
disabled
show-score
text-color=
"#ea7d19"
score-template=
"
{value}"
>
</el-rate>
<p
class=
"get_num"
>
本月获取:
<span
class=
"com_cell_right_time"
>
{{
cellData
.
deploy_times
}}
</span>
<span
class=
"ci"
>
次
</span>
</p>
</div>
</div>
<div
class=
"get_detail"
>
<img
src=
"@/assets/imgs/shop_ic_enter.png"
/>
</div>
</div>
<div
class=
"com_cell_down"
>
<p
class=
"com_detail"
>
{{
cellData
.
yyjj
}}
</p>
<el-row
:gutter=
"16"
>
<el-col
:span=
"14"
class=
"com_other"
>
<span
class=
"name_title"
>
应用类型:
</span>
{{
cellData
.
type_name
}}
{{
cellData
.
data_service_type2_name
}}
{{
cellData
.
data_service_type3_name
}}
</el-col>
<el-col
:span=
"10"
class=
"com_other"
>
<span
class=
"name_title"
>
业务领域:
</span>
{{
cellData
.
ywly_name
}}
</el-col>
<el-col
:span=
"14"
class=
"com_other"
>
<span
class=
"name_title"
>
上线时间:
</span>
{{
helper
.
dateStringTransform
(
cellData
.
create_date
)
}}
</el-col>
</el-row>
</div>
</div>
</
template
>
<
script
>
import
helper
from
"
@/services/helper.js
"
;
// if you meet date which like 2020-06-05T00:00:00+08:00, use helper.dateStringTransform()
export
default
{
components
:
{},
props
:
{
url
:
{
type
:
String
,
default
:
""
},
cellData
:
{
type
:
Object
,
default
:
{}
},
},
data
:
()
=>
({
helper
:
helper
}),
computed
:
{},
watch
:
{},
methods
:
{
goUrl
(
parame
)
{
if
(
this
.
url
!=
""
)
{
this
.
$router
.
push
(
this
.
url
+
"
/
"
+
parame
);
}
},
},
mounted
()
{},
};
</
script
>
<
style
scoped
>
.com_cell
{
width
:
496px
;
height
:
208px
;
background-color
:
#ffffff
;
box-shadow
:
0px
3px
6px
0px
rgba
(
15
,
19
,
65
,
0.04
);
border-radius
:
8px
;
border
:
solid
1px
#e3e4ef
;
margin-bottom
:
24px
;
}
.com_cell_up
{
height
:
88px
;
background-color
:
#f9fafc
;
border-radius
:
8px
8px
0px
0px
;
padding
:
16px
;
display
:
flex
;
position
:
relative
;
cursor
:
pointer
;
}
.com_cell_up_img_init
{
width
:
56px
;
height
:
56px
;
margin-right
:
16px
;
flex
:
0
0
auto
;
}
.com_cell_up_img
{
width
:
100%
;
height
:
100%
;
border-radius
:
4px
;
}
.com_cell_up_right
{
flex
:
1
1
auto
;
}
.up_title
{
font-size
:
16px
;
margin-top
:
4px
;
display
:
flex
;
align-items
:
center
;
}
.up_tit_name_in
{
max-width
:
calc
(
100%
-
150px
);
display
:
inline-block
;
}
.up_tit_name
{
width
:
100%
;
display
:
-webkit-box
;
-webkit-box-orient
:
vertical
;
-webkit-line-clamp
:
1
;
overflow
:
hidden
;
}
.up_tit_name
:hover
{
text-decoration
:
underline
;
}
.up_rate
{
margin-top
:
12px
;
display
:
flex
;
}
.get_num
{
margin-left
:
40px
;
font-size
:
14px
;
color
:
#58617a
;
}
.com_cell_right_time
{
color
:
#ea7d19
;
}
.ci
{
color
:
#242c43
;
}
.get_detail
{
position
:
absolute
;
top
:
26px
;
right
:
16px
;
}
.tags
{
display
:
inline-block
;
margin-left
:
8px
;
padding
:
2px
8px
3px
;
font-size
:
12px
;
font-weight
:
500
;
line-height
:
12px
;
border-radius
:
4px
;
position
:
relative
;
top
:
1px
;
}
.map_service
{
background-color
:
#626de9
;
border
:
solid
1px
#626de9
;
color
:
#fff
;
}
.shared
{
background-color
:
#e7fdfc
;
border
:
solid
1px
#8bd6d0
;
color
:
#25bdb1
;
}
.restricted
{
background-color
:
#fffee8
;
border
:
solid
1px
#e4c884
;
color
:
#ef9433
;
}
.sensitive
{
background-color
:
#ffefef
;
border
:
solid
1px
#d7a4a9
;
color
:
#e15260
;
}
.com_cell_down
{
padding
:
12px
16px
0
16px
;
}
.com_detail
{
color
:
#8890a7
;
font-size
:
14px
;
display
:
-webkit-box
;
-webkit-box-orient
:
vertical
;
-webkit-line-clamp
:
2
;
overflow
:
hidden
;
height
:
42px
;
margin-bottom
:
8px
;
}
.com_other
{
color
:
#58617a
;
margin-bottom
:
6px
;
display
:
-webkit-box
;
-webkit-box-orient
:
vertical
;
-webkit-line-clamp
:
1
;
overflow
:
hidden
;
}
.name_title
{
color
:
#8890a7
;
}
</
style
>
<
style
>
.com_cell
.el-rate__item
.el-rate__icon
{
font-size
:
20px
;
margin-right
:
0
;
}
.com_cell
.el-rate__text
{
margin-left
:
4px
;
position
:
relative
;
top
:
1px
;
}
</
style
>
\ No newline at end of file
src/components/service-list/commodity-card.vue
View file @
be148412
<
template
>
<div
class=
"com_cell"
>
<div
class=
"com_cell_up"
@
click=
"goUrl(cellData.app_id)"
>
<div
class=
"com_cell_up_img_init"
>
<img
:src=
"cellData.logo"
class=
"com_cell_up_img"
/>
<div
class=
"com_card"
>
<div
class=
"com_card_top"
>
<img
:src=
"cellData.logo"
class=
"com_card_img"
/>
<div
class=
"com_card_name_v"
>
<div
class=
"com_card_msg_name"
>
{{
cellData
.
app_name
}}
</div>
<div
class=
"com_card_msg_version"
>
V
{{
cellData
.
version
}}
</div>
</div>
<div
class=
"com_cell_up_right"
>
<div
class=
"up_title"
>
<div
class=
"up_tit_name_in"
>
<span
class=
"up_tit_name"
:title=
"cellData.app_name + ' ( V' + cellData.version + ' )'"
>
{{
cellData
.
app_name
}}
( V
{{
cellData
.
version
}}
)
</span>
</div>
<div
class=
"com_card_msg"
>
<div
class=
"com_card_msg_tit"
>
<img
:src=
"require('@/assets/imgs/icon_shijian.png')"
/>
上线时间
</div>
<div
class=
"up_rate"
>
<el-rate
v-model=
"cellData.score"
disabled
show-score
text-color=
"#ea7d19"
score-template=
"
{value}"
>
</el-rate>
<p
class=
"get_num"
>
本月获取:
<span
class=
"com_cell_right_time"
>
{{
cellData
.
deploy_times
}}
</span>
<span
class=
"ci"
>
次
</span>
</p>
<div
class=
"com_card_msg_num"
>
{{
helper
.
dateStringTransform
(
cellData
.
create_date
)
}}
</div>
</div>
<div
class=
"com_card_msg"
>
<div
class=
"com_card_msg_tit"
>
<img
:src=
"require('@/assets/imgs/icon_huoqu1.png')"
/>
部署次数
</div>
<div
class=
"get_detail"
>
<img
src=
"@/assets/imgs/shop_ic_enter.png"
/>
<div
class=
"com_card_msg_num1"
>
{{
cellData
.
deploy_times
}}
</div>
</div>
</div>
<div
class=
"com_cell_down"
>
<p
class=
"com_detail"
>
{{
cellData
.
yyjj
}}
</p>
<el-row
:gutter=
"16"
>
<el-col
:span=
"14"
class=
"com_other"
>
<span
class=
"name_title"
>
应用类型:
</span>
{{
cellData
.
type_name
}}
{{
cellData
.
data_service_type2_name
}}
{{
cellData
.
data_service_type3_name
}}
</el-col>
<el-col
:span=
"10"
class=
"com_other"
>
<span
class=
"name_title"
>
业务领域:
</span>
{{
cellData
.
ywly_name
}}
</el-col>
<el-col
:span=
"14"
class=
"com_other"
>
<span
class=
"name_title"
>
上线时间:
</span>
{{
helper
.
dateStringTransform
(
cellData
.
create_date
)
}}
</el-col>
</el-row>
<div
class=
"com_card_btn"
>
<el-button
size=
"medium"
class=
"btn_1"
@
click=
"addShop(cellData.app_id)"
>
加入购物车
</el-button>
<el-button
size=
"medium"
class=
"btn_2"
@
click=
"goUrl(cellData.app_id)"
>
查看详情
</el-button>
</div>
</div>
</
template
>
<
script
>
import
helper
from
"
@/services/helper.js
"
;
// if you meet date which like 2020-06-05T00:00:00+08:00, use helper.dateStringTransform()
export
default
{
components
:
{},
props
:
{
url
:
{
type
:
String
,
default
:
""
},
cellData
:
{
type
:
Object
,
default
:
{}
},
},
data
:
()
=>
({
helper
:
helper
}),
data
:
()
=>
({
helper
:
helper
,
}),
computed
:
{},
watch
:
{},
methods
:
{
...
...
@@ -76,148 +45,129 @@ export default {
this
.
$router
.
push
(
this
.
url
+
"
/
"
+
parame
);
}
},
addShop
(
id
)
{
let
query
=
{
service_id
:
0
,
// 0表示不是服务
app_id
:
parseFloat
(
id
),
spec_id
:
1
,
duration
:
1
,
duration_method
:
1
,
is_subscribe
:
0
,
// 是否订阅
};
this
.
$api
.
serviceShop
.
addShoppingCart
(
query
)
.
then
(({
data
})
=>
{
if
(
data
.
success
==
1
)
{
this
.
$message
({
message
:
data
.
errMsg
,
type
:
"
success
"
,
});
this
.
$store
.
commit
(
"
setMenuCartState
"
);
}
else
{
this
.
$message
({
message
:
data
.
errMsg
,
type
:
"
warning
"
,
});
}
})
.
catch
((
error
)
=>
{
this
.
$message
({
message
:
`添加购物车失败`
,
type
:
"
warning
"
,
});
});
},
},
mounted
()
{},
};
</
script
>
<
style
scoped
>
.com_c
ell
{
width
:
496
px
;
height
:
2
08
px
;
background-color
:
#ffffff
;
bo
x-shadow
:
0px
3px
6px
0px
rgba
(
15
,
19
,
65
,
0.04
)
;
b
order-radius
:
8px
;
border
:
solid
1px
#e3e4ef
;
margin-bottom
:
24px
;
}
.com_cell_up
{
height
:
88px
;
b
ackground-color
:
#f9fafc
;
border-radius
:
8px
8px
0px
0px
;
padding
:
16px
;
.com_c
ard
{
width
:
290
px
;
height
:
2
66
px
;
padding
:
20px
;
bo
rder-radius
:
16px
;
b
ackground-color
:
#fff
;
border
:
solid
2px
transparent
;
-webkit-box-shadow
:
0px
3px
10px
0px
rgba
(
3
,
10
,
37
,
0.15
)
;
box-shadow
:
0px
3px
10px
0px
rgba
(
3
,
10
,
37
,
0.15
);
}
.com_card
:hover
{
b
order
:
solid
2px
#b4c0f5
;
}
.com_card_top
{
display
:
flex
;
position
:
relative
;
cursor
:
pointer
;
justify-content
:
space-between
;
margin-bottom
:
28px
;
}
.com_cell_up_img_init
{
width
:
56px
;
height
:
56px
;
margin-right
:
16px
;
flex
:
0
0
auto
;
.com_card_name_v
{
width
:
calc
(
100%
-
80px
);
}
.com_cell_up_img
{
width
:
100%
;
height
:
100%
;
border-radius
:
4px
;
}
.com_cell_up_right
{
flex
:
1
1
auto
;
.com_card_img
{
width
:
60px
;
height
:
60px
;
border-radius
:
8px
;
border
:
3px
solid
#f6f7fb
;
}
.up_title
{
font-size
:
16px
;
margin-top
:
4px
;
.com_card_msg
{
margin-top
:
20px
;
display
:
flex
;
align-items
:
center
;
justify-content
:
space-between
;
}
.up_tit_name_in
{
max-width
:
calc
(
100%
-
150px
);
display
:
inline-block
;
}
.up_tit_name
{
width
:
100%
;
display
:
-webkit-box
;
-webkit-box-orient
:
vertical
;
-webkit-line-clamp
:
1
;
.com_card_msg_name
{
font-size
:
18px
;
font-weight
:
700
;
margin-top
:
4px
;
margin-bottom
:
12px
;
overflow
:
hidden
;
white-space
:
nowrap
;
text-overflow
:
ellipsis
;
}
.up_tit_name
:hover
{
text-decoration
:
underline
;
}
.up_rate
{
margin-top
:
12px
;
display
:
flex
;
}
.get_num
{
margin-left
:
40px
;
.com_card_msg_version
{
font-size
:
14px
;
color
:
#58617a
;
}
.com_cell_right_time
{
color
:
#ea7d19
;
}
.ci
{
color
:
#242c43
;
}
.get_detail
{
position
:
absolute
;
top
:
26px
;
right
:
16px
;
}
.tags
{
display
:
inline-block
;
margin-left
:
8px
;
padding
:
2px
8px
3px
;
font-size
:
12px
;
font-weight
:
500
;
line-height
:
12px
;
border-radius
:
4px
;
position
:
relative
;
top
:
1px
;
}
.map_service
{
background-color
:
#626de9
;
border
:
solid
1px
#626de9
;
color
:
#fff
;
}
.shared
{
background-color
:
#e7fdfc
;
border
:
solid
1px
#8bd6d0
;
color
:
#25bdb1
;
}
.restricted
{
background-color
:
#fffee8
;
border
:
solid
1px
#e4c884
;
color
:
#ef9433
;
}
.sensitive
{
background-color
:
#ffefef
;
border
:
solid
1px
#d7a4a9
;
color
:
#e15260
;
}
.com_cell_down
{
padding
:
12px
16px
0
16px
;
color
:
#8890a7
;
}
.com_
detail
{
.com_
card_msg_tit
{
color
:
#8890a7
;
font-size
:
14px
;
display
:
-webkit-box
;
-webkit-box-orient
:
vertical
;
-webkit-line-clamp
:
2
;
overflow
:
hidden
;
height
:
42px
;
margin-bottom
:
8px
;
}
.com_other
{
color
:
#58617a
;
margin-bottom
:
6px
;
display
:
-webkit-box
;
-webkit-box-orient
:
vertical
;
-webkit-line-clamp
:
1
;
overflow
:
hidden
;
font-size
:
16px
;
}
.
name_title
{
.
com_card_msg_num
{
color
:
#8890a7
;
font-size
:
14px
;
position
:
relative
;
top
:
2px
;
}
</
style
>
<
style
>
.com_cell
.el-rate__item
.el-rate__icon
{
font-size
:
20px
;
margin-right
:
0
;
.com_card_msg_num1
{
color
:
#242c43
;
font-size
:
16px
;
font-weight
:
bold
;
}
.com_cell
.el-rate__text
{
margin-left
:
4px
;
position
:
relative
;
top
:
1px
;
.com_card_btn
{
margin-top
:
35px
;
display
:
flex
;
justify-content
:
space-between
;
}
.btn_1
{
width
:
110px
;
padding
:
10px
;
background-color
:
#d0d5e7
;
border
:
solid
2px
#a5afd6
;
color
:
#0f2683
;
}
.btn_1
:hover
{
background-color
:
#d5daec
;
border
:
solid
2px
#a5afd6
;
color
:
#0f2683
;
}
.btn_2
{
width
:
110px
;
padding
:
10px
;
background-color
:
#0f2683
;
color
:
#f8f9fd
;
}
.btn_2
:hover
{
background-color
:
#1d3694
;
color
:
#f8f9fd
;
}
</
style
>
src/components/service-list/commodity-cell copy.vue
0 → 100644
View file @
be148412
<
template
>
<div
class=
"com_cell"
>
<div
class=
"com_cell_up"
@
click=
"goUrl(cellData.id)"
>
<div
class=
"com_cell_up_img_init"
>
<img
:src=
"cellData.cover"
class=
"com_cell_up_img"
/>
</div>
<div
class=
"com_cell_up_right"
>
<div
class=
"up_title"
>
<div
class=
"up_tit_name_in"
>
<span
class=
"up_tit_name"
:title=
"cellData.name"
>
{{
cellData
.
name
}}
</span>
</div>
<span
v-if=
"cellData.data_service_type1 == 6"
class=
"tags map_service"
>
mapService
</span>
<span
v-if=
"cellData.openness == 1"
class=
"tags shared"
>
共享
</span>
<span
v-else-if=
"cellData.openness == 2"
class=
"tags restricted"
>
受限
</span>
<span
v-else
class=
"tags sensitive"
>
敏感
</span>
</div>
<div
class=
"up_rate"
>
<el-rate
v-model=
"cellData.score"
disabled
show-score
text-color=
"#ea7d19"
score-template=
"
{value}"
>
</el-rate>
<p
class=
"get_num"
>
本月获取:
<span
class=
"com_cell_right_time"
>
{{
cellData
.
apply_num
}}
</span>
<span
class=
"ci"
>
次
</span>
</p>
</div>
</div>
<div
class=
"get_detail"
>
<img
src=
"@/assets/imgs/shop_ic_enter.png"
/>
</div>
</div>
<div
class=
"com_cell_down"
>
<p
class=
"com_detail"
>
{{
cellData
.
descript
}}
</p>
<el-row
:gutter=
"16"
>
<el-col
:span=
"14"
class=
"com_other"
>
<span
class=
"name_title"
>
服务类型:
</span>
{{
cellData
.
data_service_type1_name
}}
{{
cellData
.
data_service_type2_name
}}
{{
cellData
.
data_service_type3_name
}}
</el-col>
<el-col
:span=
"10"
class=
"com_other"
>
<span
class=
"name_title"
>
服务领域:
</span>
{{
cellData
.
sectors_name
}}
</el-col>
<el-col
:span=
"14"
class=
"com_other"
>
<span
class=
"name_title"
>
更新时间:
</span>
{{
helper
.
dateStringTransform
(
cellData
.
update_date
)
}}
</el-col>
</el-row>
</div>
</div>
</
template
>
<
script
>
import
helper
from
"
@/services/helper.js
"
;
// if you meet date which like 2020-06-05T00:00:00+08:00, use helper.dateStringTransform()
export
default
{
components
:
{},
props
:
{
url
:
{
type
:
String
,
default
:
""
},
cellData
:
{
type
:
Object
,
default
:
{}
},
},
data
:
()
=>
({
helper
:
helper
}),
computed
:
{},
watch
:
{},
methods
:
{
goUrl
(
parame
)
{
if
(
this
.
url
!=
""
)
{
this
.
$router
.
push
(
this
.
url
+
"
/
"
+
parame
);
}
},
},
mounted
()
{},
};
</
script
>
<
style
scoped
>
.com_cell
{
width
:
496px
;
height
:
208px
;
background-color
:
#ffffff
;
box-shadow
:
0px
3px
6px
0px
rgba
(
15
,
19
,
65
,
0.04
);
border-radius
:
12px
12px
8px
8px
;
border
:
solid
1px
#e3e4ef
;
margin-bottom
:
24px
;
}
.com_cell_up
{
height
:
88px
;
background-color
:
#f9fafc
;
border-radius
:
12px
12px
0px
0px
;
padding
:
16px
;
display
:
flex
;
position
:
relative
;
cursor
:
pointer
;
}
.com_cell_up_img_init
{
width
:
56px
;
height
:
56px
;
margin-right
:
16px
;
flex
:
0
0
auto
;
}
.com_cell_up_img
{
width
:
100%
;
height
:
100%
;
border-radius
:
4px
;
}
.com_cell_up_right
{
flex
:
1
1
auto
;
}
.up_title
{
font-size
:
16px
;
margin-top
:
4px
;
display
:
flex
;
align-items
:
center
;
}
.up_tit_name_in
{
max-width
:
calc
(
100%
-
150px
);
display
:
inline-block
;
}
.up_tit_name
{
width
:
100%
;
display
:
-webkit-box
;
-webkit-box-orient
:
vertical
;
-webkit-line-clamp
:
1
;
overflow
:
hidden
;
}
.up_tit_name
:hover
{
text-decoration
:
underline
;
}
.up_rate
{
margin-top
:
12px
;
display
:
flex
;
}
.get_num
{
margin-left
:
40px
;
font-size
:
14px
;
color
:
#58617a
;
}
.com_cell_right_time
{
color
:
#ea7d19
;
}
.ci
{
color
:
#242c43
;
}
.get_detail
{
position
:
absolute
;
top
:
26px
;
right
:
16px
;
}
.tags
{
display
:
inline-block
;
margin-left
:
8px
;
padding
:
2px
8px
3px
;
font-size
:
12px
;
font-weight
:
500
;
line-height
:
12px
;
border-radius
:
4px
;
position
:
relative
;
top
:
1px
;
}
.map_service
{
background-color
:
#626de9
;
border
:
solid
1px
#626de9
;
color
:
#fff
;
}
.shared
{
background-color
:
#e7fdfc
;
border
:
solid
1px
#8bd6d0
;
color
:
#25bdb1
;
}
.restricted
{
background-color
:
#fffee8
;
border
:
solid
1px
#e4c884
;
color
:
#ef9433
;
}
.sensitive
{
background-color
:
#ffefef
;
border
:
solid
1px
#d7a4a9
;
color
:
#e15260
;
}
.com_cell_down
{
padding
:
12px
16px
0
16px
;
}
.com_detail
{
color
:
#8890a7
;
font-size
:
14px
;
display
:
-webkit-box
;
-webkit-box-orient
:
vertical
;
-webkit-line-clamp
:
2
;
overflow
:
hidden
;
height
:
42px
;
margin-bottom
:
8px
;
}
.com_other
{
color
:
#58617a
;
margin-bottom
:
6px
;
display
:
-webkit-box
;
-webkit-box-orient
:
vertical
;
-webkit-line-clamp
:
1
;
overflow
:
hidden
;
}
.name_title
{
color
:
#8890a7
;
}
</
style
>
<
style
>
.com_cell
.el-rate__item
.el-rate__icon
{
font-size
:
20px
;
margin-right
:
0
;
}
.com_cell
.el-rate__text
{
margin-left
:
4px
;
position
:
relative
;
top
:
1px
;
}
</
style
>
\ No newline at end of file
src/components/service-list/commodity-cell.vue
View file @
be148412
<
template
>
<div
class=
"com_cell"
>
<div
class=
"com_cell_up"
@
click=
"goUrl(cellData.id)"
>
<div
class=
"com_cell_up_img_init"
>
<img
:src=
"cellData.cover"
class=
"com_cell_up_img"
/>
<div
class=
"com_cell_img_box"
>
<img
:src=
"cellData.cover"
class=
"com_cell_img"
/>
</div>
<div
class=
"com_cell_up_right"
>
<div
class=
"up_title"
>
<div
class=
"up_tit_name_in"
>
<span
class=
"up_tit_name"
:title=
"cellData.name"
>
<div
class=
"com_cell_message"
>
<div
class=
"com_cell_msg_title"
>
{{
cellData
.
name
}}
</span>
</div>
<span
v-if=
"cellData.data_service_type1 == 6"
class=
"tags map_service"
>
mapService
</span>
>
mapService
</span>
<span
v-if=
"cellData.openness == 1"
class=
"tags shared"
>
共享
</span>
<span
v-else-if=
"cellData.openness == 2"
class=
"tags restricted"
>
受限
</span>
<span
v-else-if=
"cellData.openness == 2"
class=
"tags restricted"
>
受限
</span>
<span
v-else
class=
"tags sensitive"
>
敏感
</span>
</div>
<div
class=
"up_rate"
>
<div
class=
"message_block"
>
<div
class=
"com_cell_item"
>
<div
class=
"com_cell_data_detail"
>
<span
class=
"detail_span"
>
{{
cellData
.
descript
}}
</span>
</div>
</div>
<div
class=
"com_cell_item"
>
<span
class=
"com_cell_item_title"
>
服务类型:
</span>
<span
class=
"com_cell_data"
>
{{
cellData
.
data_service_type1_name
}}
{{
cellData
.
data_service_type2_name
}}
{{
cellData
.
data_service_type3_name
}}
</span>
<span
class=
"com_cell_item_title left_blank"
>
数据领域:
</span>
<span
class=
"com_cell_data"
>
{{
cellData
.
sectors_name
}}
</span>
</div>
<div
class=
"com_cell_item"
>
<span
class=
"com_cell_item_title"
>
更新时间:
</span>
<span
class=
"com_cell_data"
>
{{
helper
.
dateStringTransform
(
cellData
.
update_date
)
}}
</span>
</div>
</div>
</div>
<div
class=
"com_cell_right"
>
<el-rate
v-model=
"cellData.score"
disabled
show-score
text-color=
"#ea7d19
"
text-color=
"#58617a
"
score-template=
"
{value}"
>
</el-rate>
<p
class=
"get_num"
>
本月获取:
<span
class=
"com_cell_right_time"
>
{{
cellData
.
apply_num
}}
</span>
<span
class=
"ci"
>
次
</span>
</p>
</div>
<div
class=
"com_cell_right_text"
>
<span
class=
"com_cell_right_time_tit"
>
本月获取次数:
</span>
<span
class=
"com_cell_right_time"
>
{{
cellData
.
apply_num
}}
次
</span>
</div>
<div
class=
"get_detail"
>
<img
src=
"@/assets/imgs/shop_ic_enter.png"
/>
</div>
</div>
<div
class=
"com_cell_down"
>
<p
class=
"com_detail"
>
{{
cellData
.
descript
}}
</p>
<el-row
:gutter=
"16"
>
<el-col
:span=
"14"
class=
"com_other"
>
<span
class=
"name_title"
>
服务类型:
</span>
{{
cellData
.
data_service_type1_name
}}
{{
cellData
.
data_service_type2_name
}}
{{
cellData
.
data_service_type3_name
}}
</el-col>
<el-col
:span=
"10"
class=
"com_other"
>
<span
class=
"name_title"
>
服务领域:
</span>
{{
cellData
.
sectors_name
}}
</el-col>
<el-col
:span=
"14"
class=
"com_other"
>
<span
class=
"name_title"
>
更新时间:
</span>
{{
helper
.
dateStringTransform
(
cellData
.
update_date
)
}}
</el-col>
</el-row>
<el-button
class=
"com_cell_right_btn"
@
click=
"goUrl(cellData.id)"
>
查看详情
</el-button>
</div>
</div>
</
template
>
...
...
@@ -94,87 +76,94 @@ export default {
<
style
scoped
>
.com_cell
{
width
:
496px
;
height
:
208px
;
background-color
:
#ffffff
;
box-shadow
:
0px
3px
6px
0px
rgba
(
15
,
19
,
65
,
0.04
);
border-radius
:
12px
12px
8px
8px
;
border
:
solid
1px
#e3e4ef
;
margin-bottom
:
24px
;
}
.com_cell_up
{
height
:
88px
;
background-color
:
#f9fafc
;
border-radius
:
12px
12px
0px
0px
;
padding
:
16px
;
display
:
flex
;
position
:
relative
;
cursor
:
pointer
;
}
.com_cell_up_img_init
{
width
:
56px
;
height
:
56px
;
margin-right
:
16px
;
flex
:
0
0
auto
;
justify-content
:
space-between
;
padding
:
20px
10px
;
border-bottom
:
2px
#f4f7fc
solid
;
}
.com_cell_img_box
{
width
:
200px
;
height
:
200px
;
border-radius
:
12px
;
overflow
:
hidden
;
border
:
4px
#f4f7fc
solid
;
}
.com_cell_
up_
img
{
.com_cell_img
{
width
:
100%
;
height
:
100%
;
border-radius
:
4px
;
}
.com_cell_up_right
{
flex
:
1
1
auto
;
.com_cell_message
{
padding-left
:
20px
;
width
:
calc
(
100%
-
500px
);
}
.up_title
{
font-size
:
16px
;
margin-top
:
4px
;
.com_cell_msg_title
{
color
:
#0d1847
;
font-size
:
18px
;
line-height
:
30px
;
font-weight
:
700
;
margin-bottom
:
10px
;
}
.com_cell_item
{
font-size
:
14px
;
line-height
:
28px
;
margin-top
:
1px
;
color
:
#8890a7
;
display
:
flex
;
align-items
:
center
;
align-self
:
start
;
}
.com_cell_item_title
{
/* width: 80px; */
}
.up_tit_name_in
{
max-width
:
calc
(
100%
-
150px
);
.com_cell_data
{
display
:
inline-block
;
color
:
#242c43
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
white-space
:
nowrap
;
}
.up_tit_name
{
width
:
100%
;
.com_cell_data_detail
{
color
:
#242c43
;
height
:
78px
;
font-size
:
16px
;
}
.detail_span
{
display
:
-webkit-box
;
-webkit-box-orient
:
vertical
;
-webkit-line-clamp
:
1
;
-webkit-line-clamp
:
2
;
overflow
:
hidden
;
}
.up_tit_name
:hover
{
text-decoration
:
underline
;
.com_cell_right
{
width
:
300px
;
padding
:
25px
0
0
50px
;
}
.
up_rate
{
margin-top
:
12
px
;
display
:
fle
x
;
.
com_cell_right_text
{
font-size
:
16
px
;
margin-top
:
25p
x
;
}
.get_num
{
margin-left
:
40px
;
font-size
:
14px
;
color
:
#58617a
;
.com_cell_right_time_tit
{
color
:
#8890a7
;
}
.com_cell_right_time
{
color
:
#ea7d19
;
}
.ci
{
color
:
#242c43
;
}
.get_detail
{
position
:
absolute
;
top
:
26px
;
right
:
16px
;
.com_cell_right_btn
{
background-color
:
#0f2683
;
color
:
#f8f9fd
;
width
:
220px
;
height
:
40px
;
border-radius
:
20px
;
margin-top
:
25px
;
}
.tags
{
display
:
inline-block
;
margin-left
:
8
px
;
padding
:
2px
8
px
3px
;
margin-left
:
10
px
;
padding
:
2px
10
px
3px
;
font-size
:
12px
;
font-weight
:
500
;
line-height
:
12px
;
border-radius
:
4px
;
position
:
relative
;
top
:
1px
;
top
:
-
1px
;
}
.map_service
{
background-color
:
#626de9
;
...
...
@@ -196,39 +185,24 @@ export default {
border
:
solid
1px
#d7a4a9
;
color
:
#e15260
;
}
.com_cell_down
{
padding
:
12px
16px
0
16px
;
.message_block
{
width
:
80%
;
padding
:
10px
20px
;
background-color
:
#f8f9fd
;
border-radius
:
10px
;
}
.com_detail
{
color
:
#8890a7
;
font-size
:
14px
;
display
:
-webkit-box
;
-webkit-box-orient
:
vertical
;
-webkit-line-clamp
:
2
;
overflow
:
hidden
;
height
:
42px
;
margin-bottom
:
8px
;
}
.com_other
{
color
:
#58617a
;
margin-bottom
:
6px
;
display
:
-webkit-box
;
-webkit-box-orient
:
vertical
;
-webkit-line-clamp
:
1
;
overflow
:
hidden
;
}
.name_title
{
color
:
#8890a7
;
.left_blank
{
margin-left
:
20px
;
}
</
style
>
<
style
>
.com_cell
.el-rate__item
.el-rate__icon
{
font-size
:
20px
;
margin-right
:
0
;
.com_cell_right
.el-rate__text
{
display
:
inline-block
;
margin-left
:
10px
;
font-size
:
32px
;
font-weight
:
700
;
}
.com_cell
.el-rate__text
{
margin-left
:
4px
;
position
:
relative
;
top
:
1px
;
.com_cell_right
.el-rate__icon
{
font-size
:
28px
;
}
</
style
>
src/components/service-list/commodity-list copy.vue
0 → 100644
View file @
be148412
<
template
>
<div>
<div
v-if=
"urlFilter == 'app'"
ref=
"commodityList"
class=
"commodity_card"
>
<commodity-card
v-for=
"item in datas"
:key=
"item.id"
:cellData=
"item"
:url=
"url"
></commodity-card>
</div>
<div
v-else
class=
"commodity_cell"
>
<commodity-cell
v-for=
"item in datas"
:cellData=
"item"
:url=
"url"
:key=
"item.id"
></commodity-cell>
</div>
<!-- 分页 -->
<section
class=
"com-pagination"
v-if=
"paginationShow"
>
<div
class=
"com_page_total"
>
共
{{
total
}}
个条目
</div>
<div
class=
"com_page_item"
>
<div
class=
"com_page_num"
v-if=
"pageSizeShow"
>
<div>
每页条数:
</div>
<div
class=
"com_page_num_sel"
>
<el-select
v-model=
"pagination.rowsPerPage"
placeholder=
"请选择"
size=
"small"
@
change=
"handleSizeChange"
>
<el-option
v-for=
"item in pageOptions"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
></el-option>
</el-select>
</div>
</div>
<div
class=
"com_page_control"
>
<el-button
icon=
"el-icon-arrow-left"
circle
size=
"mini"
@
click=
"handleCurrentChange(-1)"
:disabled=
"pagination.page == 1"
></el-button>
第
{{
pagination
.
page
}}
页 / 共
{{
Math
.
ceil
((
total
==
0
?
1
:
total
)
/
pagination
.
rowsPerPage
)
}}
页
<el-button
icon=
"el-icon-arrow-right"
circle
size=
"mini"
@
click=
"handleCurrentChange(1)"
:disabled=
"
pagination.page >=
Math.ceil((total == 0 ? 1 : total) / pagination.rowsPerPage)
"
></el-button>
</div>
</div>
</section>
</div>
</
template
>
<
script
>
import
CommodityCell
from
"
@/components/service-list/commodity-cell.vue
"
;
import
CommodityCard
from
"
@/components/service-list/commodity-card.vue
"
;
export
default
{
components
:
{
"
commodity-cell
"
:
CommodityCell
,
"
commodity-card
"
:
CommodityCard
,
},
props
:
{
datas
:
{
type
:
Array
,
default
:
()
=>
{
[];
},
},
total
:
{
type
:
Number
,
default
:
0
,
},
url
:
{
type
:
String
,
default
:
""
},
paginationShow
:
{
type
:
Boolean
,
default
:
false
,
},
pageSizeShow
:
{
type
:
Boolean
,
default
:
false
,
},
urlFilter
:
{
type
:
String
,
default
:
""
},
},
data
:
()
=>
({
pagination
:
{
rowsPerPage
:
10
,
page
:
1
,
},
pageOptions
:
[
{
value
:
"
10
"
,
label
:
"
10
"
,
},
{
value
:
"
20
"
,
label
:
"
20
"
,
},
{
value
:
"
50
"
,
label
:
"
50
"
,
},
],
}),
computed
:
{},
methods
:
{
handleSizeChange
(
val
)
{
this
.
pagination
.
rowsPerPage
=
val
;
this
.
refreshData
();
},
handleCurrentChange
(
val
)
{
this
.
pagination
.
page
+=
val
;
this
.
refreshData
();
},
refreshData
()
{
this
.
$emit
(
"
refresh
"
,
this
.
pagination
);
},
},
mounted
()
{},
watch
:
{
datas
:
{
handler
(
val
)
{},
},
url
:
{
handler
()
{
this
.
pagination
=
{
rowsPerPage
:
10
,
page
:
1
,
};
this
.
refreshData
();
},
},
},
};
</
script
>
<
style
scoped
>
.com-pagination
{
margin-top
:
20px
;
font-size
:
14px
;
padding
:
0
5%
;
display
:
flex
;
justify-content
:
space-between
;
align-items
:
center
;
}
.com_page_num
{
width
:
140px
;
margin-right
:
20px
;
display
:
flex
;
justify-content
:
space-around
;
align-items
:
center
;
}
.com_page_num_sel
{
width
:
50px
;
font-size
:
14px
;
position
:
relative
;
top
:
1px
;
}
.com_page_item
{
display
:
flex
;
justify-content
:
flex-end
;
align-items
:
center
;
}
.commodity_card
{
display
:
flex
;
flex-wrap
:
wrap
;
justify-content
:
space-between
;
}
.commodity_card_list
{
width
:
100%
;
display
:
flex
;
flex-wrap
:
wrap
;
}
.commodity_card_item
{
margin
:
10px
0
;
}
.commodity_card_item_in
{
margin
:
0
auto
;
}
.commodity_cell
{
display
:
flex
;
flex-wrap
:
wrap
;
justify-content
:
space-between
;
}
</
style
>
<
style
>
.com_page_control
.el-button
{
border
:
0
;
}
.com_page_num
.el-input__inner
{
border
:
0
;
padding
:
0
;
}
</
style
>
\ No newline at end of file
src/components/service-list/commodity-list.vue
View file @
be148412
<
template
>
<div>
<div
v-if=
"urlFilter == 'app'"
ref=
"commodityList"
class=
"commodity_card"
>
<commodity-card
<div
v-if=
"urlFilter=='app'"
ref=
"commodityList"
class=
"commodity_card"
>
<div
ref=
"commodityCardIn"
class=
"commodity_card_list"
>
<div
v-for=
"item in datas"
:key=
"item.id"
:cellData=
"item"
:url=
"url"
></commodity-card>
:key=
"item.id"
class=
"commodity_card_item"
>
<commodity-card
class=
"commodity_card_item_in"
:cellData=
"item"
:url=
"url"
></commodity-card>
</div>
</div>
</div>
<div
v-else
class=
"commodity_cell"
>
<commodity-cell
v-for=
"item in datas"
:cellData=
"item"
:url=
"url"
:key=
"item.id"
></commodity-cell>
<commodity-cell
v-for=
"item in datas"
:cellData=
"item"
:url=
"url"
:key=
"item.id"
></commodity-cell>
</div>
<!-- 分页 -->
<section
class=
"com-pagination"
v-if=
"paginationShow"
>
...
...
@@ -46,8 +46,9 @@
@
click=
"handleCurrentChange(-1)"
:disabled=
"pagination.page == 1"
></el-button>
第
{{
pagination
.
page
}}
页 / 共
{{
Math
.
ceil
((
total
==
0
?
1
:
total
)
/
pagination
.
rowsPerPage
)
}}
页
第
{{
pagination
.
page
}}
页 / 共
{{
Math
.
ceil
((
total
==
0
?
1
:
total
)
/
pagination
.
rowsPerPage
)
}}
页
<el-button
icon=
"el-icon-arrow-right"
circle
...
...
@@ -127,11 +128,30 @@ export default {
refreshData
()
{
this
.
$emit
(
"
refresh
"
,
this
.
pagination
);
},
pageResize
()
{
let
listWidth
=
this
.
$refs
.
commodityCardIn
.
clientWidth
;
let
rowCardNum
=
Math
.
floor
(
listWidth
/
310
);
let
cardArr
=
this
.
$refs
.
commodityCardIn
.
children
;
// console.log(rowCardNum, listWidth / rowCardNum);
for
(
let
i
=
0
;
i
<
cardArr
.
length
;
i
++
)
{
cardArr
[
i
].
style
.
width
=
listWidth
/
rowCardNum
-
1
+
"
px
"
;
}
// console.log(this.$refs.commodityCardIn);
},
},
mounted
()
{},
watch
:
{
datas
:
{
handler
(
val
)
{},
handler
(
val
)
{
if
(
this
.
urlFilter
==
"
app
"
)
{
setTimeout
(()
=>
{
this
.
pageResize
();
window
.
onresize
=
()
=>
{
this
.
pageResize
();
};
},
0
);
}
},
},
url
:
{
handler
()
{
...
...
@@ -174,9 +194,6 @@ export default {
align-items
:
center
;
}
.commodity_card
{
display
:
flex
;
flex-wrap
:
wrap
;
justify-content
:
space-between
;
}
.commodity_card_list
{
width
:
100%
;
...
...
@@ -189,11 +206,6 @@ export default {
.commodity_card_item_in
{
margin
:
0
auto
;
}
.commodity_cell
{
display
:
flex
;
flex-wrap
:
wrap
;
justify-content
:
space-between
;
}
</
style
>
<
style
>
.com_page_control
.el-button
{
...
...
src/components/service-list/service_list copy.vue
0 → 100644
View file @
be148412
This diff is collapsed.
Click to expand it.
src/components/service-list/service_list.vue
View file @
be148412
This diff is collapsed.
Click to expand it.
src/components/service-list/service_shop_menu.vue
View file @
be148412
...
...
@@ -65,32 +65,32 @@ export default {
}
switch
(
uri
)
{
case
"
data_service_list
"
:
item
.
active
=
"
shop_tool_ic_sj
fw_sel
"
;
item
.
default
=
"
shop_tool_ic_sj
fw
"
;
item
.
active
=
"
tool_ic_shuju
fw_sel
"
;
item
.
default
=
"
tool_ic_shuju
fw
"
;
break
;
case
"
space_time_service_list
"
:
item
.
active
=
"
shop_tool_ic_sk
fw_sel
"
;
item
.
default
=
"
shop_tool_ic_sk
fw
"
;
item
.
active
=
"
tool_ic_shikong
fw_sel
"
;
item
.
default
=
"
tool_ic_shikong
fw
"
;
break
;
case
"
video_service_list
"
:
item
.
active
=
"
shop_tool_ic_sp
fw_sel
"
;
item
.
default
=
"
shop_tool_ic_sp
fw
"
;
item
.
active
=
"
tool_ic_shipin
fw_sel
"
;
item
.
default
=
"
tool_ic_shipin
fw
"
;
break
;
case
"
perception_service_list
"
:
item
.
active
=
"
shop_
tool_ic_ganzhifw_sel
"
;
item
.
default
=
"
shop_
tool_ic_ganzhifw
"
;
item
.
active
=
"
tool_ic_ganzhifw_sel
"
;
item
.
default
=
"
tool_ic_ganzhifw
"
;
break
;
case
"
comprehensive_app_list
"
:
item
.
active
=
"
shop_tool_ic_zh
yyfw_sel
"
;
item
.
default
=
"
shop_tool_ic_zh
yyfw
"
;
item
.
active
=
"
tool_ic_zonghe
yyfw_sel
"
;
item
.
default
=
"
tool_ic_zonghe
yyfw
"
;
break
;
case
"
cloud
"
:
item
.
active
=
"
shop_tool_ic_yzy
fw_sel
"
;
item
.
default
=
"
shop_tool_ic_yzy
fw
"
;
item
.
active
=
"
tool_ic_yunziyuan
fw_sel
"
;
item
.
default
=
"
tool_ic_yunziyuan
fw
"
;
break
;
case
"
app_store_list
"
:
item
.
active
=
"
shop_ic_yy
sd_sel
"
;
item
.
default
=
"
shop_ic_yy
sd
"
;
item
.
active
=
"
tool_ic_yingyong
sd_sel
"
;
item
.
default
=
"
tool_ic_yingyong
sd
"
;
break
;
default
:
item
.
active
=
"
1
"
;
...
...
@@ -111,48 +111,37 @@ export default {
.service_shop_menu
{
background-color
:
#0d1847
;
position
:
fixed
;
top
:
76px
;
left
:
calc
(
50%
-
600px
);
width
:
176px
;
padding
:
8px
;
background-color
:
#ffffff
;
box-shadow
:
0px
3px
6px
0px
rgba
(
15
,
19
,
65
,
0.04
);
border-radius
:
8px
;
top
:
58px
;
left
:
0
;
width
:
180px
;
height
:
100%
;
padding-top
:
30px
;
}
.service_shop_menu_list
>
li
{
box-sizing
:
border-box
;
height
:
40px
;
padding
:
8px
0
0
22px
;
margin-bottom
:
16px
;
padding
:
16px
10px
8px
22px
;
border-left
:
5px
solid
#0d1847
;
font-size
:
15px
;
line-height
:
24px
;
cursor
:
pointer
;
}
.service_shop_menu_list
>
li
:nth-last-child
(
1
)
{
margin-bottom
:
0
;
}
.service_shop_menu_list
>
li
:hover
,
.service_shop_menu_list
>
li
.current
{
background-color
:
rgba
(
242
,
246
,
253
,
0.4
);
color
:
#515fe7
;
border-left
:
5px
solid
#e56600
;
background-color
:
#182665
;
color
:
#e6ebfe
;
}
.menu_img
{
width
:
2
4
px
;
width
:
2
5
px
;
margin-right
:
6px
;
}
.menu_item
{
position
:
relative
;
font-weight
:
bold
;
font-size
:
15px
;
color
:
#96a0c5
;
color
:
#6573ae
;
top
:
-6px
;
}
.menu_item_active
{
position
:
relative
;
font-weight
:
bold
;
font-size
:
15px
;
color
:
#515fe7
;
color
:
#e6ebfe
;
top
:
-6px
;
}
</
style
>
src/components/service-list/service_shop_menu_copy.vue
0 → 100644
View file @
be148412
<
template
>
<div
class=
"service_shop_menu"
>
<ul
class=
"service_shop_menu_list"
>
<li
v-for=
"(item, index) in menuList"
:key=
"index"
@
click=
"active(item.visit_url)"
>
<img
v-if=
"item.visit_url == actives"
:src=
"item.active != '' ? require('@/assets/imgs/' + item.active + '.png') : ''"
class=
"menu_img"
/>
<img
v-else
:src=
"require('@/assets/imgs/' + item.default + '.png')"
class=
"menu_img"
/>
<span
:class=
"item.visit_url == actives ? 'menu_item_active':'menu_item'"
>
{{
item
.
menu_name
}}
</span>
</li>
</ul>
</div>
</
template
>
<
script
>
export
default
{
props
:
{},
data
()
{
return
{
actives
:
""
,
menuList
:
[],
};
},
computed
:
{
getActive
()
{
return
this
.
$store
.
state
.
serviceShopMenu
;
},
},
watch
:
{
getActive
(
newVal
)
{
this
.
getActiveMenu
(
newVal
);
},
},
mounted
()
{
this
.
getShopMenu
();
this
.
$store
.
commit
(
"
serviceShopMenuAct
"
,
this
.
$route
.
path
);
this
.
actives
=
this
.
$store
.
state
.
serviceShopMenu
;
},
methods
:
{
active
(
val
)
{
this
.
$store
.
commit
(
"
serviceShopMenuAct
"
,
val
);
this
.
$router
.
push
(
val
);
},
getActiveMenu
(
val
)
{
this
.
actives
=
val
;
},
getShopMenu
()
{
this
.
$api
.
general
.
getNowMenu
({
teamName
:
"
APAAS3
"
}).
then
((
response
)
=>
{
if
(
response
.
data
.
success
==
1
)
{
let
arr
=
response
.
data
.
data
[
0
].
Child
;
let
shopArr
=
[];
let
asd
=
arr
.
find
(
item
=>
{
return
item
.
visit_url
==
"
/services_shop
"
})
shopArr
=
asd
.
Child
;
if
(
shopArr
&&
shopArr
.
length
!=
0
)
{
Array
.
from
(
shopArr
).
forEach
((
item
)
=>
{
let
uri
=
item
.
visit_url
.
substring
(
6
);
if
(
uri
.
indexOf
(
"
/
"
)
!=
-
1
)
{
uri
=
uri
.
substring
(
0
,
uri
.
indexOf
(
"
/
"
));
}
switch
(
uri
)
{
case
"
data_service_list
"
:
item
.
active
=
"
shop_tool_ic_sjfw_sel
"
;
item
.
default
=
"
shop_tool_ic_sjfw
"
;
break
;
case
"
space_time_service_list
"
:
item
.
active
=
"
shop_tool_ic_skfw_sel
"
;
item
.
default
=
"
shop_tool_ic_skfw
"
;
break
;
case
"
video_service_list
"
:
item
.
active
=
"
shop_tool_ic_spfw_sel
"
;
item
.
default
=
"
shop_tool_ic_spfw
"
;
break
;
case
"
perception_service_list
"
:
item
.
active
=
"
shop_tool_ic_ganzhifw_sel
"
;
item
.
default
=
"
shop_tool_ic_ganzhifw
"
;
break
;
case
"
comprehensive_app_list
"
:
item
.
active
=
"
shop_tool_ic_zhyyfw_sel
"
;
item
.
default
=
"
shop_tool_ic_zhyyfw
"
;
break
;
case
"
cloud
"
:
item
.
active
=
"
shop_tool_ic_yzyfw_sel
"
;
item
.
default
=
"
shop_tool_ic_yzyfw
"
;
break
;
case
"
app_store_list
"
:
item
.
active
=
"
shop_ic_yysd_sel
"
;
item
.
default
=
"
shop_ic_yysd
"
;
break
;
default
:
item
.
active
=
"
1
"
;
item
.
default
=
"
1
"
;
break
;
}
});
}
this
.
menuList
=
shopArr
;
}
});
},
},
};
</
script
>
<
style
scoped
>
.service_shop_menu
{
background-color
:
#0d1847
;
position
:
fixed
;
top
:
76px
;
left
:
calc
(
50%
-
600px
);
width
:
176px
;
padding
:
8px
;
background-color
:
#ffffff
;
box-shadow
:
0px
3px
6px
0px
rgba
(
15
,
19
,
65
,
0.04
);
border-radius
:
8px
;
}
.service_shop_menu_list
>
li
{
box-sizing
:
border-box
;
height
:
40px
;
padding
:
8px
0
0
22px
;
margin-bottom
:
16px
;
font-size
:
15px
;
line-height
:
24px
;
cursor
:
pointer
;
}
.service_shop_menu_list
>
li
:nth-last-child
(
1
)
{
margin-bottom
:
0
;
}
.service_shop_menu_list
>
li
:hover
,
.service_shop_menu_list
>
li
.current
{
background-color
:
rgba
(
242
,
246
,
253
,
0.4
);
color
:
#515fe7
;
}
.menu_img
{
width
:
24px
;
margin-right
:
6px
;
}
.menu_item
{
position
:
relative
;
font-weight
:
bold
;
font-size
:
15px
;
color
:
#96a0c5
;
top
:
-6px
;
}
.menu_item_active
{
position
:
relative
;
font-weight
:
bold
;
font-size
:
15px
;
color
:
#515fe7
;
top
:
-6px
;
}
</
style
>
src/components/shop-cloud/shop-cloud copy.vue
0 → 100644
View file @
be148412
This diff is collapsed.
Click to expand it.
src/components/shop-cloud/shop-cloud.vue
View file @
be148412
This diff is collapsed.
Click to expand it.
src/pages/service_shop/shop_cloud copy.vue
0 → 100644
View file @
be148412
<
template
>
<div
class=
"shop_list_cont"
>
<el-container>
<el-aside
width=
"176px"
>
<service-shop-menu></service-shop-menu>
</el-aside>
<el-main
class=
"main_init"
>
<shop-cloud
name=
"云资源服务"
></shop-cloud>
</el-main>
</el-container>
</div>
</
template
>
<
script
>
import
ServiceShopMenu
from
"
@/components/service-list/service_shop_menu
"
;
import
ShopCloud
from
"
@/components/shop-cloud/shop-cloud
"
;
export
default
{
components
:
{
ServiceShopMenu
,
ShopCloud
},
data
:
()
=>
({}),
mounted
()
{},
methods
:
{}
};
</
script
>
<
style
scoped
>
.shop_list_cont
{
width
:
1200px
;
margin
:
0
auto
;
position
:
relative
;
}
.main_init
{
padding
:
2px
0
16px
16px
;
}
</
style
>
\ No newline at end of file
src/pages/service_shop/shop_cloud.vue
View file @
be148412
<
template
>
<div
class=
"shop_list_cont"
>
<div>
<el-container>
<el-aside
width=
"1
76
px"
>
<el-aside
width=
"1
80
px"
>
<service-shop-menu></service-shop-menu>
</el-aside>
<el-main
class=
"main_init"
>
<el-main>
<shop-cloud
name=
"云资源服务"
></shop-cloud>
</el-main>
</el-container>
...
...
@@ -25,12 +25,4 @@ export default {
};
</
script
>
<
style
scoped
>
.shop_list_cont
{
width
:
1200px
;
margin
:
0
auto
;
position
:
relative
;
}
.main_init
{
padding
:
2px
0
16px
16px
;
}
</
style
>
src/pages/service_shop/shop_list copy.vue
0 → 100644
View file @
be148412
<
template
>
<div
class=
"shop_list_cont"
>
<el-container>
<el-aside
width=
"176px"
>
<service-shop-menu></service-shop-menu>
</el-aside>
<el-main
class=
"main_init"
>
<service-list
:filterNames=
"filterNames"
:name=
"name"
:url=
"url"
:urlFilter=
"urlFilter"
></service-list>
</el-main>
</el-container>
</div>
</
template
>
<
script
>
import
ServiceShopMenu
from
"
@/components/service-list/service_shop_menu
"
;
import
ServiceList
from
"
@/components/service-list/service_list
"
;
import
BlockRadius
from
"
@/components/general/block-radius
"
;
export
default
{
components
:
{
ServiceShopMenu
,
ServiceList
,
BlockRadius
,
},
data
:
()
=>
({
urlFilter
:
""
,
url
:
""
,
name
:
""
,
filterNames
:
[],
}),
mounted
()
{
this
.
getVal
(
this
.
$route
.
path
);
},
methods
:
{
getVal
(
val
)
{
let
uri
=
val
.
substring
(
6
);
uri
=
uri
.
substring
(
0
,
uri
.
indexOf
(
"
/
"
));
switch
(
uri
)
{
case
"
data_service_list
"
:
this
.
name
=
"
数据服务
"
;
this
.
urlFilter
=
"
5
"
;
this
.
url
=
"
/shop/sjfwDetail
"
;
this
.
filterNames
=
[
"
数据服务类型
"
,
"
服务领域
"
,
"
数据来源机构
"
];
break
;
case
"
space_time_service_list
"
:
this
.
name
=
"
时空服务
"
;
this
.
urlFilter
=
"
6
"
;
this
.
url
=
"
/shop/skfwDetail
"
;
this
.
filterNames
=
[
"
时空服务类型
"
,
"
服务领域
"
,
"
服务来源组织
"
];
break
;
case
"
video_service_list
"
:
this
.
name
=
"
视频服务
"
;
this
.
urlFilter
=
"
7
"
;
this
.
url
=
"
/shop/spfwDetail
"
;
this
.
filterNames
=
[
""
,
"
服务领域
"
,
"
服务来源组织
"
];
break
;
case
"
perception_service_list
"
:
this
.
name
=
"
感知服务
"
;
this
.
urlFilter
=
"
10
"
;
this
.
url
=
"
/shop/gzfwDetail
"
;
this
.
filterNames
=
[
""
,
"
服务领域
"
,
"
服务来源组织
"
];
break
;
case
"
comprehensive_app_list
"
:
this
.
name
=
"
融合服务
"
;
this
.
urlFilter
=
"
21
"
;
this
.
url
=
"
/shop/zhfwDetail
"
;
this
.
filterNames
=
[
"
服务类型
"
,
"
服务领域
"
,
"
服务来源组织
"
];
break
;
case
"
app_store_list
"
:
this
.
name
=
"
应用商店
"
;
this
.
urlFilter
=
"
app
"
;
this
.
url
=
"
/shop/yysdDetail
"
;
this
.
filterNames
=
[
"
应用类型
"
,
"
应用领域
"
,
"
应用来源机构
"
];
break
;
default
:
this
.
name
=
""
;
this
.
urlFilter
=
""
;
this
.
url
=
""
;
this
.
filterNames
=
[];
break
;
}
},
},
watch
:
{
"
$route.path
"
:
{
handler
(
val
)
{
this
.
getVal
(
val
);
},
},
},
};
</
script
>
<
style
lang=
"less"
scoped
>
.default {
height: calc(100vh - 180px);
display: flex;
align-items: center;
justify-content: center;
margin: 0;
.default_img {
width: 1282px;
height: 629px;
.default_title {
color: #264dd9;
font-size: 44px;
font-weight: bold;
margin-bottom: 30px;
}
.default_msg {
color: #58617a;
font-size: 24px;
line-height: 44px;
}
}
}
</
style
>
<
style
scoped
>
.default_img
{
background
:
url("~@/assets/imgs/img_default_quesheng.png")
no-repeat
center
center
;
}
.shop_list_cont
{
width
:
1200px
;
margin
:
0
auto
;
position
:
relative
;
}
.main_init
{
padding
:
16px
0
16px
16px
;
}
</
style
>
\ No newline at end of file
src/pages/service_shop/shop_list.vue
View file @
be148412
<
template
>
<div
class=
"shop_list_cont"
>
<!--
<div
class=
"shop_list_cont"
>
-->
<div>
<el-container>
<el-aside
width=
"1
76
px"
>
<el-aside
width=
"1
80
px"
>
<service-shop-menu></service-shop-menu>
</el-aside>
<el-main
class=
"main_init"
>
<el-main>
<service-list
:filterNames=
"filterNames"
:name=
"name"
...
...
@@ -128,7 +129,4 @@ export default {
margin
:
0
auto
;
position
:
relative
;
}
.main_init
{
padding
:
16px
0
16px
16px
;
}
</
style
>
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