Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
CRM
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
华国豪
CRM
Commits
0bc9b603
Commit
0bc9b603
authored
Feb 07, 2020
by
华国豪
🙄
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/huaguohao/crm
parents
d6849564
5a1440a0
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
1045 additions
and
242 deletions
+1045
-242
zhouguan.png
src/assets/img/home/zhouguan.png
+0
-0
Home.vue
src/components/Home.vue
+719
-236
noincome.vue
src/components/chart/noincome.vue
+178
-0
shangjiloudou.vue
src/components/chart/shangjiloudou.vue
+141
-0
index.vue
src/views/index.vue
+7
-6
No files found.
src/assets/img/home/zhouguan.png
0 → 100644
View file @
0bc9b603
4.1 KB
src/components/Home.vue
View file @
0bc9b603
...
...
@@ -2,148 +2,387 @@
<div
class=
"home"
>
<el-row
:gutter=
"25"
>
<el-col
:span=
"16"
>
<el-card
class=
"box-card"
shadow=
"never"
>
<el-card
class=
"box-card"
shadow=
"never"
>
<div
slot=
"header"
class=
"clearfix"
>
<span>
客户简报
</span>
</div>
<div
class=
"shang-list"
>
<div
class=
"shang-list-item"
>
<div
class=
"icon"
>
<i
class=
"iconfont iconVerifiedcustomername"
></i>
</div>
<div
class=
"title"
>
新增客户
</div>
<div
class=
"result"
>
10
</div>
<div
class=
"eq"
>
较上月
<i
class=
"iconfont iconzujiantubiaokupx_- red"
></i>
<span
class=
"val red"
>
30%
</span>
</div>
<div
class=
"shang-list"
>
<div
class=
"shang-list-item"
>
<div
class=
"icon"
>
<i
class=
"iconfont iconVerifiedcustomername"
></i>
</div>
<div
class=
"shang-list-item"
>
<div
class=
"icon orange"
>
<i
class=
"iconfont iconlianxiren"
></i>
</div>
<div
class=
"title"
>
新增联系人
</div>
<div
class=
"result"
>
30
</div>
<div
class=
"eq"
>
较上月
<i
class=
"iconfont iconic_trending_down_px green"
></i>
<span
class=
"val green"
>
5%
</span>
</div>
<div
class=
"title"
>
新增客户
</div>
<div
class=
"result"
>
10
</div>
<div
class=
"eq"
>
较上月
<i
class=
"iconfont iconzujiantubiaokupx_- red"
></i>
<span
class=
"val red"
>
30%
</span>
</div>
<div
class=
"shang-list-item"
>
<div
class=
"icon green"
>
<i
class=
"iconfont iconshangji-"
></i>
</div>
<div
class=
"title"
>
新增商机
</div>
<div
class=
"result"
>
5
</div>
<div
class=
"eq"
>
较上月
<i
class=
"iconfont iconchiping"
></i>
<span
class=
"val red"
>
持平
</span>
</div>
</div>
<div
class=
"shang-list-item"
>
<div
class=
"icon orange"
>
<i
class=
"iconfont iconlianxiren"
></i>
</div>
<div
class=
"shang-list-item"
>
<div
class=
"icon blue"
>
<i
class=
"iconfont icondingdan"
></i>
</div>
<div
class=
"title"
>
新增订单
</div>
<div
class=
"result"
>
9
</div>
<div
class=
"eq"
>
较上月
<i
class=
"iconfont iconzujiantubiaokupx_- red"
></i>
<span
class=
"val red"
>
80%
</span>
</div>
<div
class=
"title"
>
新增联系人
</div>
<div
class=
"result"
>
30
</div>
<div
class=
"eq"
>
较上月
<i
class=
"iconfont iconic_trending_down_px green"
></i>
<span
class=
"val green"
>
5%
</span>
</div>
<div
class=
"shang-list-item"
>
<div
class=
"icon red"
>
<i
class=
"iconfont iconjine"
></i>
</div>
<div
class=
"title"
>
订单金额
</div>
<div
class=
"result"
>
3,000,000
</div>
<div
class=
"eq"
>
较上月
<i
class=
"iconfont iconic_trending_down_px green"
></i>
<span
class=
"val green"
>
1%
</span>
</div>
</div>
<div
class=
"shang-list-item"
>
<div
class=
"icon green"
>
<i
class=
"iconfont iconshangji-"
></i>
</div>
<div
class=
"shang-list-item"
>
<div
class=
"icon zi"
>
<i
class=
"iconfont iconmoney"
></i>
</div>
<div
class=
"title"
>
新增收款
</div>
<div
class=
"result"
>
200,000
</div>
<div
class=
"eq"
>
较上月
<i
class=
"iconfont iconzujiantubiaokupx_- red"
></i>
<span
class=
"val red"
>
10%
</span>
</div>
<div
class=
"title"
>
新增商机
</div>
<div
class=
"result"
>
5
</div>
<div
class=
"eq"
>
较上月
<i
class=
"iconfont iconchiping"
></i>
<span
class=
"val red"
>
持平
</span>
</div>
<div
class=
"shang-list-item"
>
<div
class=
"icon yellow"
>
<i
class=
"iconfont iconbaifang"
></i>
</div>
<div
class=
"title"
>
新增拜访
</div>
<div
class=
"result"
>
9
</div>
<div
class=
"eq"
>
较上月
<i
class=
"iconfont iconzujiantubiaokupx_- red"
></i>
<span
class=
"val red"
>
100%
</span>
</div>
</div>
<div
class=
"shang-list-item"
>
<div
class=
"icon blue"
>
<i
class=
"iconfont icondingdan"
></i>
</div>
<div
class=
"shang-list-item"
>
<div
class=
"icon grey"
>
<i
class=
"iconfont icongenjin"
></i>
</div>
<div
class=
"title"
>
新增跟进
</div>
<div
class=
"result"
>
30
</div>
<div
class=
"eq"
>
较上月
<i
class=
"iconfont iconzujiantubiaokupx_- red"
></i>
<span
class=
"val red"
>
40%
</span>
</div>
<div
class=
"title"
>
新增订单
</div>
<div
class=
"result"
>
9
</div>
<div
class=
"eq"
>
较上月
<i
class=
"iconfont iconzujiantubiaokupx_- red"
></i>
<span
class=
"val red"
>
80%
</span>
</div>
</div>
<div
class=
"shang-list-item"
>
<div
class=
"icon red"
>
<i
class=
"iconfont iconjine"
></i>
</div>
<div
class=
"title"
>
订单金额
</div>
<div
class=
"result"
>
3,000,000
</div>
<div
class=
"eq"
>
较上月
<i
class=
"iconfont iconic_trending_down_px green"
></i>
<span
class=
"val green"
>
1%
</span>
</div>
</div>
<div
class=
"shang-list-item"
>
<div
class=
"icon zi"
>
<i
class=
"iconfont iconmoney"
></i>
</div>
<div
class=
"title"
>
新增收款
</div>
<div
class=
"result"
>
200,000
</div>
<div
class=
"eq"
>
较上月
<i
class=
"iconfont iconzujiantubiaokupx_- red"
></i>
<span
class=
"val red"
>
10%
</span>
</div>
</div>
<div
class=
"shang-list-item"
>
<div
class=
"icon yellow"
>
<i
class=
"iconfont iconbaifang"
></i>
</div>
<div
class=
"title"
>
新增拜访
</div>
<div
class=
"result"
>
9
</div>
<div
class=
"eq"
>
较上月
<i
class=
"iconfont iconzujiantubiaokupx_- red"
></i>
<span
class=
"val red"
>
100%
</span>
</div>
</div>
<div
class=
"shang-list-item"
>
<div
class=
"icon grey"
>
<i
class=
"iconfont icongenjin"
></i>
</div>
<div
class=
"title"
>
新增跟进
</div>
<div
class=
"result"
>
30
</div>
<div
class=
"eq"
>
较上月
<i
class=
"iconfont iconzujiantubiaokupx_- red"
></i>
<span
class=
"val red"
>
40%
</span>
</div>
</div>
</div>
</el-card>
</el-col>
<el-col
:span=
"8"
>
<el-card
class=
"tic-card"
shadow=
"never"
>
<div
class=
"tic-content"
>
<el-row
:gutter=
"10"
>
<el-col
span=
"8"
>
<img
src=
"../assets/img/home/money.png"
style=
"margin:20px 0 0 20px;"
>
</el-col>
<el-col
span=
"16"
>
<div
class=
"money-box"
>
<small>
¥
</small>
16000.00
</div>
<div
class=
"tips"
>
本月提成
</div>
</el-col>
</el-row>
<el-row
:gutter=
"10"
>
<el-col
span=
"8"
>
<img
src=
"../assets/img/home/money.png"
style=
"margin:20px 0 0 20px;"
/
>
</el-col>
<el-col
span=
"16"
>
<div
class=
"money-box"
>
<small>
¥
</small>
16000.00
</div>
<div
class=
"tips"
>
本月提成
</div>
</el-col>
</el-row>
</div>
<div
class=
"tic-chart"
>
<ticheng
/>
<ticheng
/>
</div>
</el-card>
<el-card
class=
"zhou-card"
shadow=
"never"
>
<el-row
:gutter=
"10"
>
<el-col
span=
"10"
class=
"title"
>
本周销冠
</el-col>
<el-col
span=
"14"
class=
"money-box"
>
<small>
¥
</small>
560000.00
</el-col>
</el-row>
<el-row>
<el-col
span=
"24"
>
<span
class=
"zhou-head"
>
<img
src=
"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1580985297255&di=d10539f3a69a8507564aaa3ac4fc131b&imgtype=0&src=http%3A%2F%2F5b0988e595225.cdn.sohucs.com%2Fq_mini%2Cc_zoom%2Cw_640%2Fimages%2F20170728%2F5843abd8cdb74745a2fe2349879cb055.jpeg"
alt
/>
</span>
</el-col>
</el-row>
<div
class=
"zhou-name"
>
吴彦祖(香港)
</div>
<div
class=
"zhou-depart"
>
香港印象
<b>
·
</b>
销售一组
</div>
</el-card>
</el-col>
</el-row>
<el-row
:gutter=
"25"
style=
"margin-top:25px;"
>
<el-col
span=
"10"
>
<el-card
class=
"sum-card"
shadow=
"never"
>
<div
slot=
"header"
class=
"clearfix"
>
<span>
数据汇总
</span>
</div>
<div
class=
"sum-list"
>
<div
class=
"sum-list-item"
>
<div
class=
"icon"
></div>
<div
class=
"item-name"
>
客户汇总
</div>
<div
class=
"item-hui"
>
新增客户
<b>
0
</b>
个
</div>
<div
class=
"item-hui"
>
转成交客户
<b>
0
</b>
个
</div>
</div>
<div
class=
"sum-list-item"
>
<div
class=
"icon green"
></div>
<div
class=
"item-name"
>
跟进汇总
</div>
<div
class=
"item-hui"
>
跟进客户
<b>
0
</b>
个
</div>
<div
class=
"item-hui"
>
新增客户中未跟进
<b>
0
</b>
个
</div>
</div>
<div
class=
"sum-list-item"
>
<div
class=
"icon blue"
></div>
<div
class=
"item-name"
>
商机汇总
</div>
<div
class=
"item-hui"
>
新增商机
<b>
0
</b>
个
</div>
<div
class=
"item-hui"
>
赢单商机
<b>
0
</b>
个
</div>
</div>
<div
class=
"sum-list-item"
>
<div
class=
"icon zi"
></div>
<div
class=
"item-name"
>
订单汇总
</div>
<div
class=
"item-hui"
>
新增订单
<b>
0
</b>
个
</div>
<div
class=
"item-hui"
>
订单金额
<b>
0
</b>
万
</div>
</div>
<!--
<div
class=
"sum-list-item"
>
<div
class=
"icon qing"
></div>
<div
class=
"item-name"
>
待收款金额汇总
</div>
<div
class=
"item-hui"
>
未收金额
<b>
0
</b>
万
</div>
<div
class=
"item-hui"
>
已收金额
<b>
0
</b>
万
</div>
</div>
-->
</div>
</el-card>
</el-col>
<el-col
span=
"6"
>
<el-card
class=
"notinmoney-card"
shadow=
"never"
>
<div
class=
"title"
>
待收款汇总
</div>
<div
class=
"money"
>
<small>
¥
</small>
3,600,000.00
</div>
<div
class=
"charts-box"
>
<notincome
/>
</div>
</el-card>
</el-col>
<el-col
span=
"8"
>
<el-card
class=
"sum-card ding"
shadow=
"never"
>
<div
slot=
"header"
class=
"clearfix"
>
<span>
遗忘提醒
</span>
</div>
<div
class=
"sum-list"
>
<div
class=
"sum-list-item"
>
<div
class=
"icon"
></div>
<div
class=
"item-name"
>
超过7天未联系的客户
</div>
<div
class=
"item-hui"
>
<b>
0
</b>
个
</div>
</div>
<div
class=
"sum-list-item"
>
<div
class=
"icon green"
></div>
<div
class=
"item-name"
>
超过15天未联系的客户
</div>
<div
class=
"item-hui"
>
<b>
0
</b>
个
</div>
</div>
<div
class=
"sum-list-item"
>
<div
class=
"icon blue"
></div>
<div
class=
"item-name"
>
超过30天未联系的客户
</div>
<div
class=
"item-hui"
>
<b>
0
</b>
个
</div>
</div>
<div
class=
"sum-list-item"
>
<div
class=
"icon zi"
></div>
<div
class=
"item-name"
>
超过3个月未联系的客户
</div>
<div
class=
"item-hui"
>
<b>
0
</b>
个
</div>
</div>
<div
class=
"sum-list-item"
>
<div
class=
"icon qing"
></div>
<div
class=
"item-name"
>
超过6个月未联系的客户
</div>
<div
class=
"item-hui"
>
<b>
0
</b>
个
</div>
</div>
<div
class=
"sum-list-item"
>
<div
class=
"icon block"
></div>
<div
class=
"item-name"
>
逾期未联系的客户
</div>
<div
class=
"item-hui"
>
<b>
0
</b>
个
</div>
</div>
</div>
</el-card>
</el-col>
</el-row>
<el-row
:gutter=
"25"
style=
"margin-top:25px;"
>
<el-col
span=
"16"
>
<el-card
class=
"rank-card"
shadow=
"never"
>
<div
slot=
"header"
class=
"clearfix"
>
<el-row>
<el-col
:span=
"12"
>
<span>
排行榜
</span>
</el-col>
<el-col
:span=
"12"
class=
"option-item"
style=
""
>
<el-select
v-model=
"rankType"
size=
"mini"
style=
"width:120px;"
placeholder=
"请选择"
>
<el-option
label=
"销售额排名"
value=
"1"
></el-option>
<el-option
label=
"新增客户排名"
value=
"2"
></el-option>
<el-option
label=
"新增商机排名"
value=
"3"
></el-option>
</el-select>
</el-col>
</el-row>
</div>
<div
class=
"rank-list"
>
<div
class=
"rank-list-item"
>
<div
class=
"rank red"
>
NO.1
</div>
<div
class=
"head"
>
<el-avatar
:size=
"40"
src=
"https://cube.elemecdn.com/0/88/03b0d39583f48206768a7534e55bcpng.png"
></el-avatar>
</div>
<div
class=
"rank-name"
>
<div
class=
"rn"
>
尼尔小姐姐
</div>
<div>
机械印象 销售一组
</div>
</div>
<div
class=
"score"
>
33,000,000
</div>
</div>
<div
class=
"rank-list-item"
>
<div
class=
"rank zi"
>
NO.2
</div>
<div
class=
"head"
>
<el-avatar
:size=
"40"
src=
"https://cube.elemecdn.com/0/88/03b0d39583f48206768a7534e55bcpng.png"
></el-avatar>
</div>
<div
class=
"rank-name"
>
<div
class=
"rn"
>
尼尔小姐姐
</div>
<div>
机械印象 销售一组
</div>
</div>
<div
class=
"score"
>
33,000,000
</div>
</div>
<div
class=
"rank-list-item"
>
<div
class=
"rank blue"
>
NO.3
</div>
<div
class=
"head"
>
<el-avatar
:size=
"40"
src=
"https://cube.elemecdn.com/0/88/03b0d39583f48206768a7534e55bcpng.png"
></el-avatar>
</div>
<div
class=
"rank-name"
>
<div
class=
"rn"
>
尼尔小姐姐
</div>
<div>
机械印象 销售一组
</div>
</div>
<div
class=
"score"
>
33,000,000
</div>
</div>
<div
class=
"rank-list-item"
>
<div
class=
"rank"
>
NO.4
</div>
<div
class=
"head"
>
<el-avatar
:size=
"40"
src=
"https://cube.elemecdn.com/0/88/03b0d39583f48206768a7534e55bcpng.png"
></el-avatar>
</div>
<div
class=
"rank-name"
>
<div
class=
"rn"
>
尼尔小姐姐
</div>
<div>
机械印象 销售一组
</div>
</div>
<div
class=
"score"
>
33,000,000
</div>
</div>
<div
class=
"rank-list-item"
>
<div
class=
"rank"
>
NO.5
</div>
<div
class=
"head"
>
<el-avatar
:size=
"40"
src=
"https://cube.elemecdn.com/0/88/03b0d39583f48206768a7534e55bcpng.png"
></el-avatar>
</div>
<div
class=
"rank-name"
>
<div
class=
"rn"
>
尼尔小姐姐
</div>
<div>
机械印象 销售一组
</div>
</div>
<div
class=
"score"
>
33,000,000
</div>
</div>
<div
class=
"rank-list-item"
>
<div
class=
"rank"
>
NO.6
</div>
<div
class=
"head"
>
<el-avatar
:size=
"40"
src=
"https://cube.elemecdn.com/0/88/03b0d39583f48206768a7534e55bcpng.png"
></el-avatar>
</div>
<div
class=
"rank-name"
>
<div
class=
"rn"
>
尼尔小姐姐
</div>
<div>
机械印象 销售一组
</div>
</div>
<div
class=
"score"
>
33,000,000
</div>
</div>
</div>
</el-card>
</el-col>
<el-col
span=
"8"
>
<el-card
class=
"loudou-card"
shadow=
"never"
>
<div
slot=
"header"
class=
"clearfix"
>
<el-row>
<el-col
:span=
"12"
>
<span>
销售漏斗
</span>
</el-col>
<el-col
:span=
"12"
class=
"option-item"
style=
""
>
<el-select
v-model=
"rankType"
size=
"mini"
style=
"width:120px;"
placeholder=
"请选择"
>
<el-option
label=
"商机漏斗图"
value=
"1"
></el-option>
</el-select>
</el-col>
</el-row>
</div>
<div
style=
"width:100%;height:100%;"
>
<sjld/>
</div>
</el-card>
</el-col>
</el-row>
...
...
@@ -151,154 +390,398 @@
</
template
>
<
script
>
import
ticheng
from
'./chart/ticheng'
import
ticheng
from
"./chart/ticheng"
;
import
notincome
from
"./chart/noincome"
;
import
sjld
from
'./chart/shangjiloudou'
export
default
{
components
:{
ticheng
}
components
:
{
ticheng
,
notincome
,
sjld
},
data
()
{
return
{
rankType
:
"1"
};
}
};
</
script
>
<
style
>
.home
{
width
:
100%
;
margin-bottom
:
25px
;
}
.el-card__header
{
font-family
:
perfectFont
;
font-weight
:
bold
;
.el-card__header
{
font-family
:
perfectFont
;
font-weight
:
bold
;
}
.el-card
,
.el-message
{
border-radius
:
0
!important
;
}
.box-card
.shang-list
{
}
.box-card
,
.sum-card
,
.rank-card
{
padding-bottom
:
20px
;
}
.el-card
,
.el-message
{
border-radius
:
0
!important
;
}
.box-card
.shang-list
{
height
:
358px
;
overflow-y
:
auto
;
}
.box-card
.shang-list
.shang-list-item
{
margin-bottom
:
5px
;
height
:
54px
;
background
:
rgba
(
242
,
242
,
242
,
1
);
display
:
flex
;
align-items
:
center
;
}
.box-card
.shang-list
.shang-list-item
.icon
{
width
:
26px
;
height
:
26px
;
line-height
:
26px
;
text-align
:
center
;
background
:
rgba
(
13
,
36
,
129
,
1
);
color
:
#FFF
;
margin
:
0
25px
;
}
.box-card
.shang-list
.shang-list-item
.title
{
font-size
:
14px
;
color
:
#333333
;
width
:
80px
;
/* font-weight: bold;
.box-card
.el-card__body
,
.sum-card
.el-card__body
,
.rank-card
.el-card__body
{
height
:
358px
;
overflow-y
:
hidden
;
padding
:
0px
20px
!important
;
margin-top
:
20px
;
}
.box-card
.el-card__body
:hover
,
.sum-card
.el-card__body
:hover
,
.rank-card
.el-card__body
:hover
{
overflow-y
:
auto
;
padding-right
:
16px
!important
;
}
.box-card
.shang-list
.shang-list-item
{
margin-bottom
:
5px
;
height
:
54px
;
background
:
rgba
(
242
,
242
,
242
,
1
);
display
:
flex
;
align-items
:
center
;
}
.box-card
.icon
{
width
:
26px
;
height
:
26px
;
line-height
:
26px
;
text-align
:
center
;
background
:
rgba
(
13
,
36
,
129
,
1
);
color
:
#fff
;
margin
:
0
25px
;
}
.box-card
.shang-list
.shang-list-item
.title
{
font-size
:
14px
;
color
:
#333333
;
width
:
80px
;
/* font-weight: bold;
font-family: perfectFont; */
}
.box-card
.shang-list
.shang-list-item
.result
{
flex
:
1
;
padding-left
:
130px
;
font-size
:
20px
;
font-family
:
perfectFont
;
color
:
#000
;
font-weight
:
bold
;
.box-card
.shang-list
.shang-list-item
.result
{
flex
:
1
;
padding-left
:
130px
;
font-size
:
20px
;
font-family
:
perfectFont
;
color
:
#000
;
font-weight
:
bold
;
}
.box-card
.shang-list
.shang-list-item
.eq
{
width
:
180px
;
font-size
:
12px
;
color
:
gray
;
.box-card
.shang-list
.shang-list-item
.eq
{
width
:
180px
;
font-size
:
12px
;
color
:
gray
;
}
.box-card
.shang-list
.shang-list-item
.eq
i
{
font-size
:
26px
;
margin-left
:
30px
;
margin-right
:
15px
;
color
:
#333
;
vertical-align
:
sub
;
.box-card
.shang-list
.shang-list-item
.eq
i
{
font-size
:
26px
;
margin-left
:
30px
;
margin-right
:
15px
;
color
:
#333
;
vertical-align
:
sub
;
}
.box-card
.shang-list
.shang-list-item
.eq
.val
{
font-size
:
20px
;
font-family
:
perfectFont
;
.box-card
.shang-list
.shang-list-item
.eq
.val
{
font-size
:
20px
;
font-family
:
perfectFont
;
}
.box-card
.shang-list
.shang-list-item
.eq
.green
{
color
:
rgb
(
16
,
124
,
16
);
.box-card
.shang-list
.shang-list-item
.eq
.green
{
color
:
rgb
(
16
,
124
,
16
);
}
.box-card
.shang-list
.shang-list-item
.eq
.red
{
color
:
rgb
(
195
,
0
,
82
);
.box-card
.shang-list
.shang-list-item
.eq
.red
{
color
:
rgb
(
195
,
0
,
82
);
}
.box-card
.
shang-list
.shang-list-item
.icon
i
{
font-size
:
14px
;
.box-card
.
icon
i
{
font-size
:
14px
;
}
.box-card
.
shang-list
.shang-list-item
.icon.green
{
background
:
rgb
(
16
,
124
,
16
);
.box-card
.
icon.green
{
background
:
rgb
(
16
,
124
,
16
);
}
.box-card
.
shang-list
.shang-list-item
.icon.blue
{
background
:
rgb
(
0
,
99
,
177
);
.box-card
.
icon.blue
{
background
:
rgb
(
0
,
99
,
177
);
}
.box-card
.
shang-list
.shang-list-item
.icon.orange
{
background
:
rgb
(
202
,
80
,
16
);
.box-card
.
icon.orange
{
background
:
rgb
(
202
,
80
,
16
);
}
.box-card
.
shang-list
.shang-list-item
.icon.grey
{
background
:
rgb
(
118
,
118
,
118
);
.box-card
.
icon.grey
{
background
:
rgb
(
118
,
118
,
118
);
}
.box-card
.
shang-list
.shang-list-item
.icon.red
{
background
:
rgb
(
195
,
0
,
82
);
.box-card
.
icon.red
{
background
:
rgb
(
195
,
0
,
82
);
}
.box-card
.
shang-list
.shang-list-item
.icon.zi
{
background
:
rgb
(
136
,
23
,
152
);
.box-card
.
icon.zi
{
background
:
rgb
(
136
,
23
,
152
);
}
.box-card
.
shang-list
.shang-list-item
.icon.yellow
{
background
:
rgb
(
255
,
185
,
0
);
.box-card
.
icon.yellow
{
background
:
rgb
(
255
,
185
,
0
);
}
.tic-card
{
padding
:
0px
;
height
:
190
px
;
border
:
none
;
.tic-card
{
padding
:
0px
;
height
:
196
px
;
border
:
none
;
}
.tic-card
.el-card__body
,
.zhou-card
.el-card__body
{
padding
:
0px
;
}
.tic-card
.tic-content
{
height
:
83px
;
width
:
100%
;
}
.tic-card
.tic-content
.money-box
{
margin-top
:
20px
;
margin-right
:
30px
;
color
:
#00C5C8
;
font-family
:
perfectFont
;
text-align
:
right
;
font-size
:
26px
;
.zhou-card
.el-card__body
,
.notinmoney-card
.el-card__body
{
padding
:
0px
;
}
.tic-card
.tic-content
{
height
:
83px
;
width
:
100%
;
}
.tic-card
.tic-content
.money-box
{
margin-top
:
20px
;
margin-right
:
30px
;
color
:
#00c5c8
;
font-family
:
perfectFont
;
text-align
:
right
;
font-size
:
26px
;
font-weight
:
bold
;
}
.tic-card
.tic-content
.money-box
small
{
font-size
:
12px
;
font-weight
:
500
;
}
.tic-card
.tic-content
.tips
{
font-size
:
14px
;
color
:
#666
;
margin-right
:
30px
;
text-align
:
right
;
}
.tic-card
.tic-chart
{
height
:
111px
;
width
:
100%
;
}
.zhou-card
{
padding
:
0px
;
border
:
none
;
background
:
rgba
(
13
,
36
,
129
,
1
);
margin-top
:
25px
;
height
:
236px
;
}
.zhou-card
.el-card__body
{
padding
:
0px
;
background
:
url("../assets/img/home/zhouguan.png")
rgba
(
13
,
36
,
129
,
1
);
height
:
100%
;
background-repeat
:
no-repeat
;
background-size
:
cover
;
}
.zhou-card
.title
{
font-size
:
20px
;
font-family
:
perfectFont
;
color
:
#fff
;
padding
:
10px
0
0
0px
;
text-indent
:
20px
;
}
.zhou-card
.money-box
{
margin-top
:
10px
;
padding-right
:
20px
!important
;
color
:
#fff
;
font-family
:
perfectFont
;
text-align
:
right
;
font-size
:
26px
;
font-weight
:
bold
;
}
.zhou-card
.money-box
small
{
font-size
:
12px
;
font-weight
:
500
;
}
.zhou-card
.zhou-head
{
margin
:
10px
auto
;
display
:
block
;
width
:
70px
;
height
:
70px
;
background
:
rgba
(
85
,
189
,
233
,
0.2
);
padding
:
4px
;
border-radius
:
100%
;
}
.zhou-card
.zhou-head
img
{
width
:
100%
;
height
:
100%
;
border-radius
:
100%
;
}
.zhou-card
.zhou-name
{
font-size
:
14px
;
color
:
#fff
;
font-family
:
perfectFont
;
font-weight
:
bold
;
text-align
:
center
;
}
.zhou-card
.zhou-depart
{
font-size
:
14px
;
color
:
#fff
;
font-family
:
perfectFont
;
text-align
:
center
;
margin-top
:
15px
;
}
.sum-card
.el-card__body
{
height
:
165px
;
overflow-y
:
hidden
;
padding-right
:
20px
;
}
.sum-card
.sum-list
{
}
.sum-card
.sum-list
.sum-list-item
{
height
:
45px
;
border-bottom
:
1px
solid
#e2e4ef
;
display
:
flex
;
align-items
:
center
;
}
.sum-card
.sum-list
.sum-list-item
.icon
{
width
:
4px
;
height
:
12px
;
margin-right
:
10px
;
background
:
#ffa475
;
}
.sum-card
.sum-list
.sum-list-item
.icon.green
{
background
:
#94b877
;
}
.sum-card
.sum-list
.sum-list-item
.icon.blue
{
background
:
#0d2481
;
}
.sum-card
.sum-list
.sum-list-item
.icon.zi
{
background
:
rgb
(
210
,
197
,
240
);
}
.sum-card
.sum-list
.sum-list-item
.icon.qing
{
background
:
#55bde9
;
}
.sum-card
.sum-list
.sum-list-item
.icon.black
{
background
:
#333
;
}
.sum-card
.sum-list
.sum-list-item
.item-name
{
width
:
90px
;
font-size
:
12px
;
}
.ding
.sum-list
.sum-list-item
.item-name
{
width
:
150px
;
}
.sum-card
.sum-list
.sum-list-item
.item-hui
{
flex
:
1
;
font-size
:
12px
;
text-align
:
right
;
}
.sum-card
.sum-list
.sum-list-item
.item-hui
b
{
font-weight
:
bold
;
font-size
:
22px
;
font-family
:
perfectFont
;
margin
:
0
5px
;
}
.notinmoney-card
{
height
:
268px
;
}
.notinmoney-card
.title
{
font-size
:
17px
;
font-family
:
perfectFont
;
color
:
#000
;
padding
:
10px
0
0
0px
;
text-indent
:
20px
;
font-weight
:
bold
;
}
.notinmoney-card
.money
{
font-size
:
30px
;
font-family
:
perfectFont
;
color
:
#000
;
padding
:
10px
0
0
0px
;
text-indent
:
20px
;
font-weight
:
bold
;
color
:
#ffa475
;
}
.notinmoney-card
.charts-box
{
height
:
178px
;
}
.notinmoney-card
.money
small
{
font-size
:
12px
;
font-weight
:
400
;
}
.rank-card
.el-card__body
,
.loudou-card
.el-card__body
{
height
:
358px
;
overflow-y
:
hidden
;
padding-right
:
20px
;
}
.rank-list
{
}
.rank-list
.rank-list-item
{
height
:
85px
;
display
:
flex
;
align-items
:
center
;
cursor
:
default
;
user-select
:
none
;
}
.rank-list
.rank-list-item
:hover
{
background
:
#F4F5F9
;
}
.rank-list
.rank-list-item
.rank
{
width
:
200px
;
font-size
:
18px
;
color
:
#999
;
font-family
:
perfectFont
!important
;
font-weight
:
bold
;
}
.tic-card
.tic-content
.money-box
small
{
font-size
:
12px
;
font-weight
:
500
;
.rank-list
.rank-list-item
.rank.blue
{
color
:
#0D2481
;
}
.rank-list
.rank-list-item
.rank.red
{
color
:
rgb
(
195
,
0
,
82
);
}
.rank-list
.rank-list-item
.rank.zi
{
color
:
rgb
(
136
,
23
,
152
);
}
.rank-list
.rank-list-item
.head
{
width
:
70px
;
}
.tic-card
.tic-content
.tips
{
font-size
:
14px
;
.rank-list
.rank-list-item
.rank-name
{
width
:
200px
;
font-size
:
12px
;
color
:
#666
;
margin-right
:
30px
;
}
.rank-list
.rank-list-item
.rank-name
.rn
{
font-family
:
perfectFont
!important
;
font-weight
:
bold
;
color
:
#333
;
font-size
:
16px
;
}
.rank-list
.rank-list-item
.score
{
font-size
:
22px
;
font-family
:
perfectFont
!important
;
font-weight
:
bold
;
color
:
#333
;
text-align
:
right
;
flex
:
1
;
}
.option-item
{
text-align
:
right
;
}
.option-item
.el-select
>
.el-input
{
display
:
block
;
background
:
#0d2481
;
border-radius
:
0
;
}
.option-item
.el-input--mini
.el-input__inner
{
height
:
28px
;
line-height
:
28px
;
background
:
#0d2481
;
border-radius
:
0
;
color
:
#F1f1f1
;
}
.option-item
.el-select
.el-input.is-focus
.el-input__inner
{
border-color
:
#0d2481
;
}
.el-select-dropdown
{
border-radius
:
0px
!important
;
}
.el-select-dropdown__item.selected
{
font-family
:
perfectFont
!important
;
color
:
#0d2481
!important
;
}
.el-select-dropdown__item
{
/* font-family: perfectFont !important; */
font-size
:
12px
!important
;
}
.tic-card
.tic-chart
{
height
:
107px
;
width
:
100%
;
}
.zhou-card
{
padding
:
0px
;
height
:
150px
;
border
:
none
;
background
:
rgba
(
13
,
36
,
129
,
1
);
margin-top
:
30px
;
height
:
236px
;
}
.zhou-card
.el-card__body
{
padding
:
0px
;
background
:
rgba
(
13
,
36
,
129
,
1
);
height
:
100%
;
.loudou-card
.el-card__header
{
border
:
none
;
}
</
style
>
\ No newline at end of file
src/components/chart/noincome.vue
0 → 100644
View file @
0bc9b603
<
template
>
<div
class=
"inerank-container"
>
<div
:style=
"
{height:'100%',width:'100%'}" ref="myLineRank">
</div>
</div>
</
template
>
<
script
>
export
default
{
props
:{
data
:{
type
:
Array
,
default
:[]
}
},
data
()
{
return
{
datatwo
:[]
};
},
mounted
()
{
this
.
data
=
[
{
dataStr
:
'8月'
,
preferPrice
:
12000
},
{
dataStr
:
'9月'
,
preferPrice
:
120000
},
{
dataStr
:
'10月'
,
preferPrice
:
80000
},
{
dataStr
:
'11月'
,
preferPrice
:
85000
},
{
dataStr
:
'12月'
,
preferPrice
:
7000
},
{
dataStr
:
'1月'
,
preferPrice
:
160000
},
{
dataStr
:
'2月'
,
preferPrice
:
300000
},
]
this
.
datatwo
=
[
{
dataStr
:
'9月'
,
preferPrice
:
480000
},
{
dataStr
:
'10月'
,
preferPrice
:
120000
},
{
dataStr
:
'11月'
,
preferPrice
:
850000
},
{
dataStr
:
'12月'
,
preferPrice
:
70000
},
{
dataStr
:
'1月'
,
preferPrice
:
320000
},
{
dataStr
:
'2月'
,
preferPrice
:
700000
},
]
this
.
init
();
},
methods
:
{
init
()
{
let
myChart
=
this
.
$echarts
.
init
(
this
.
$refs
.
myLineRank
);
var
dataAxis
=
[];
var
data2
=
[];
this
.
data
.
forEach
(
x
=>
{
dataAxis
.
push
(
x
.
dataStr
)
data2
.
push
(
x
.
preferPrice
)
})
let
option
=
{
// backgroundColor: "#0abb87", //"#19133e6e",
title
:
{
show
:
false
},
xAxis
:
{
data
:
dataAxis
,
axisLabel
:
{
textStyle
:
{
color
:
"#79778a"
,
fontFamily
:
"DIN"
},
margin
:
10
,
interval
:
0
,
show
:
false
},
type
:
'category'
,
axisTick
:
{
show
:
false
},
axisLine
:
{
show
:
false
}
},
yAxis
:
{
axisLine
:
{
show
:
false
},
axisTick
:
{
show
:
false
},
axisLabel
:
{
textStyle
:
{
color
:
"#272938"
,
fontFamily
:
"DIN"
},
show
:
false
},
splitLine
:
{
show
:
false
}
},
grid
:
{
left
:
0
,
right
:
0
,
top
:
0
,
bottom
:
0
},
tooltip
:
{
trigger
:
"item"
,
axisPointer
:
{
type
:
"none"
,
snap
:
true
,
label
:
{
backgroundColor
:
'#FAB6B6'
}
}
},
series
:
[
{
name
:
"未收款"
,
type
:
"bar"
,
smooth
:
false
,
symbol
:
"circle"
,
barBorderRadius
:[
10
,
10
,
10
,
10
],
barWidth
:
14
,
itemStyle
:
{
normal
:
{
lineStyle
:
{
color
:
"##0D2481"
},
areaStyle
:
{
color
:
"#00C5C8"
},
color
:
"#0D2481"
}
},
data
:
data2
}
]
};
myChart
.
setOption
(
option
);
}
}
};
</
script
>
<
style
>
.inerank-container
{
height
:
100%
;
width
:
100%
;
}
</
style
>
src/components/chart/shangjiloudou.vue
0 → 100644
View file @
0bc9b603
<
template
>
<div
class=
"inerank-container"
>
<div
:style=
"
{height:'100%',width:'100%'}" ref="myLineRank">
</div>
</div>
</
template
>
<
script
>
export
default
{
props
:
{
data
:
{
type
:
Array
,
default
:
[]
}
},
data
()
{
return
{};
},
mounted
()
{
this
.
data
=
[
{
dataStr
:
"9月"
,
preferPrice
:
12000
},
{
dataStr
:
"10月"
,
preferPrice
:
8000
},
{
dataStr
:
"11月"
,
preferPrice
:
8500
},
{
dataStr
:
"12月"
,
preferPrice
:
7000
},
{
dataStr
:
"1月"
,
preferPrice
:
16000
},
{
dataStr
:
"2月"
,
preferPrice
:
0
}
];
this
.
init
();
},
methods
:
{
init
()
{
let
myChart
=
this
.
$echarts
.
init
(
this
.
$refs
.
myLineRank
);
var
dataAxis
=
[];
var
data2
=
[];
this
.
data
.
forEach
(
x
=>
{
dataAxis
.
push
(
x
.
dataStr
);
data2
.
push
(
x
.
preferPrice
);
});
let
option
=
(
option
=
{
title
:
{
text
:
"漏斗图"
,
subtext
:
"纯属虚构"
,
show
:
false
},
tooltip
:
{
trigger
:
"item"
,
formatter
:
"{a} <br/>{b} : {c}%"
},
legend
:
{
data
:
[
"展现"
,
"点击"
,
"访问"
,
"咨询"
,
"订单"
]
},
color
:[
'#FF9459'
,
'#FFB18A'
,
'#FCBC9F'
,
'#F7C6B6'
,
'#EED8D4'
],
series
:
[
{
name
:
"预期"
,
type
:
"funnel"
,
left
:
"10%"
,
width
:
"80%"
,
label
:
{
formatter
:
"{b}预期"
},
labelLine
:
{
show
:
false
},
itemStyle
:
{
opacity
:
0.7
},
emphasis
:
{
label
:
{
position
:
"inside"
,
formatter
:
"{b}预期: {c}%"
}
},
data
:
[
{
value
:
60
,
name
:
"访问"
},
{
value
:
40
,
name
:
"咨询"
},
{
value
:
20
,
name
:
"订单"
},
{
value
:
80
,
name
:
"点击"
},
{
value
:
100
,
name
:
"展现"
}
]
},
{
name
:
"实际"
,
type
:
"funnel"
,
left
:
"10%"
,
width
:
"80%"
,
maxSize
:
"80%"
,
label
:
{
position
:
"inside"
,
formatter
:
"{c}%"
,
color
:
"#fff"
},
itemStyle
:
{
opacity
:
0.5
,
borderColor
:
"#fff"
,
borderWidth
:
2
},
emphasis
:
{
label
:
{
position
:
"inside"
,
formatter
:
"{b}实际: {c}%"
}
},
data
:
[
{
value
:
30
,
name
:
"访问"
},
{
value
:
10
,
name
:
"咨询"
},
{
value
:
5
,
name
:
"订单"
},
{
value
:
50
,
name
:
"点击"
},
{
value
:
80
,
name
:
"展现"
}
]
}
]
});
myChart
.
setOption
(
option
);
}
}
};
</
script
>
<
style
>
.inerank-container
{
height
:
100%
;
width
:
100%
;
}
</
style
>
src/views/index.vue
View file @
0bc9b603
...
...
@@ -36,24 +36,25 @@
.template-div
{
position
:
absolute
;
top
:
90px
;
left
:
30px
;
right
:
30px
;
left
:
0
;
right
:
0
;
bottom
:
0
;
overflow-y
:
auto
;
padding
:
0
30px
;
}
*
::-webkit-scrollbar
{
width
:
4px
;
height
:
8px
;
}
*
::-webkit-scrollbar-thumb
{
border-radius
:
4px
;
/* border-radius: 4px; */
box-shadow
:
inset
0
0
2px
rgba
(
0
,
0
,
0
,
0.2
);
background
:
#
c9c9c9
;
background
:
#
555
;
}
*
::-webkit-scrollbar-thumb
{
box-shadow
:
inset
0
0
2px
rgba
(
0
,
0
,
0
,
0.2
);
border-radius
:
4px
;
background
:
#
EDEDED
;
/* border-radius: 4px; */
background
:
#
555
;
}
</
style
>
<
template
>
...
...
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