Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
SuperMan
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
1
Issues
1
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
罗超
SuperMan
Commits
3c716607
Commit
3c716607
authored
Aug 08, 2019
by
黄媛媛
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/luochao/superman
parents
7b7d03fc
f13685de
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
795 additions
and
416 deletions
+795
-416
App.vue
src/App.vue
+17
-5
btn.png
src/assets/img/champion/btn.png
+0
-0
btnhover.png
src/assets/img/champion/btnhover.png
+0
-0
close.png
src/assets/img/champion/close.png
+0
-0
close_before.png
src/assets/img/champion/close_before.png
+0
-0
addFinancialDocuments.vue
src/components/FinancialModule/addFinancialDocuments.vue
+8
-8
PersonnelManagement.vue
src/components/activity/PersonnelManagement.vue
+530
-100
mycareer.vue
src/components/champion/mycareer.vue
+220
-296
personalCenter.vue
src/components/personalCenter.vue
+13
-3
index.vue
src/components/personalCenter/index.vue
+5
-1
sell.vue
src/components/personalCenter/sell.vue
+2
-3
No files found.
src/App.vue
View file @
3c716607
...
...
@@ -10,9 +10,9 @@
</viewer>
<chosen-open-mode
v-if=
"haveOpenMode"
:settingSys=
"settingSys"
></chosen-open-mode>
<!-- -->
<
!--
<div
class=
"showMy
Career"
>
<mycareer></mycareer>
</div>
-->
<
div
class=
"showMyCareer"
v-if=
"show
Career"
>
<mycareer
:show-close=
"true"
:uid=
"careerId"
@
close=
"closeCareer"
></mycareer>
</div>
</div>
</
template
>
...
...
@@ -64,7 +64,9 @@ export default {
haveOpenMode
:
false
,
settingSys
:
false
,
timer
:
null
,
useTime
:
0
useTime
:
0
,
showCareer
:
false
,
careerId
:
0
// sessionStorage.getItem("mazip") ? sessionStorage.getItem("mazip") : true
}
},
...
...
@@ -72,6 +74,9 @@ export default {
inited
(
viewer
){
this
.
$viewer
=
viewer
},
closeCareer
(){
this
.
showCareer
=
false
},
show
(
data
)
{
this
.
$set
(
this
.
images
,
data
)
this
.
$viewer
.
show
()
...
...
@@ -156,7 +161,14 @@ export default {
this
.
MsgBus
.
$on
(
'imgprevclear'
,
content
=>
{
this
.
images
=
[]
})
this
.
MsgBus
.
$on
(
'showCareer'
,
empId
=>
{
this
.
careerId
=
empId
this
.
showCareer
=
true
})
this
.
MsgBus
.
$on
(
'hideCareer'
,
content
=>
{
this
.
careerId
=
0
this
.
showCareer
=
false
})
}
}
</
script
>
...
...
src/assets/img/champion/btn.png
0 → 100644
View file @
3c716607
536 Bytes
src/assets/img/champion/btnhover.png
0 → 100644
View file @
3c716607
503 Bytes
src/assets/img/champion/close.png
0 → 100644
View file @
3c716607
281 Bytes
src/assets/img/champion/close_before.png
0 → 100644
View file @
3c716607
653 Bytes
src/components/FinancialModule/addFinancialDocuments.vue
View file @
3c716607
...
...
@@ -196,14 +196,14 @@
<div
class=
"rb_top_row _r_mb5"
>
<p
>
{{
$t
(
'fnc.fkduixiang'
)
}}
:
<el-select
filterable
v-model=
'msg.IsPublic'
placeholder=
"付款类型"
@
change=
"IsPublicChange"
class=
"w135 _border_b_1"
>
<el-option
:label=
"$t('fnc.gongzhang')"
:value=
'1'
:key=
'1'
v-if=
'msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==43 && msg.TemplateId!==48'
></el-option>
<el-option
:label=
"$t('fnc.sizhang')"
:value=
'0'
:key=
'0'
v-if=
'msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==43 && msg.TemplateId!==48'
></el-option>
<el-option
:label=
"$t('fnc.rmbxianjin')"
:value=
'2'
:key=
'2'
v-if=
'msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==43 && msg.TemplateId!==48'
></el-option>
<el-option
:label=
"$t('fnc.wbxianjin')"
:value=
'3'
:key=
'3'
v-if=
'msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==48'
></el-option>
<el-option
:label=
"$t('fnc.zjinchi')"
:value=
'4'
:key=
'4'
v-if=
'msg.TemplateId===36 || msg.TemplateId===37 || msg.TemplateId===48'
></el-option>
<el-option
:label=
"$t('fnc.ptxnzhanghu')"
:value=
'5'
:key=
'5'
v-if=
'msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==43 && msg.TemplateId!==48'
></el-option>
<el-option
:label=
"$t('fnc.djxnzhanghu')"
:value=
'6'
:key=
'6'
v-if=
'msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==43 && msg.TemplateId!==48'
></el-option>
<el-option
:label=
"$t('fnc.szxiangdi')"
:value=
'7'
:key=
'7'
v-if=
'msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==43 && msg.TemplateId!==48'
></el-option>
<el-option
:label=
"$t('fnc.gongzhang')"
:value=
'1'
:key=
'1'
v-if=
'msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==43 && msg.TemplateId!==48
&& msg.TemplateId !==53
'
></el-option>
<el-option
:label=
"$t('fnc.sizhang')"
:value=
'0'
:key=
'0'
v-if=
'msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==43 && msg.TemplateId!==48
&& msg.TemplateId !==53
'
></el-option>
<el-option
:label=
"$t('fnc.rmbxianjin')"
:value=
'2'
:key=
'2'
v-if=
'msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==43 && msg.TemplateId!==48
&& msg.TemplateId !==53
'
></el-option>
<el-option
:label=
"$t('fnc.wbxianjin')"
:value=
'3'
:key=
'3'
v-if=
'msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==48
&& msg.TemplateId !==53
'
></el-option>
<el-option
:label=
"$t('fnc.zjinchi')"
:value=
'4'
:key=
'4'
v-if=
'msg.TemplateId===36 || msg.TemplateId===37 || msg.TemplateId===48
|| msg.TemplateId===53
'
></el-option>
<el-option
:label=
"$t('fnc.ptxnzhanghu')"
:value=
'5'
:key=
'5'
v-if=
'msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==43 && msg.TemplateId!==48
&& msg.TemplateId !==53
'
></el-option>
<el-option
:label=
"$t('fnc.djxnzhanghu')"
:value=
'6'
:key=
'6'
v-if=
'msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==43 && msg.TemplateId!==48
&& msg.TemplateId !==53
'
></el-option>
<el-option
:label=
"$t('fnc.szxiangdi')"
:value=
'7'
:key=
'7'
v-if=
'msg.TemplateId!==36 && msg.TemplateId!==37 && msg.TemplateId!==43 && msg.TemplateId!==48
&& msg.TemplateId !==53
'
></el-option>
<el-option
label=
"原路退款"
:value=
'8'
:key=
'8'
v-if=
'msg.TemplateId===2 || msg.TemplateId===12 ||msg.TemplateId===61 || msg.TemplateId===62'
></el-option>
<el-option
label=
"地接预支款"
:value=
'9'
:key=
'9'
v-if=
'msg.TemplateId===67'
></el-option>
...
...
src/components/activity/PersonnelManagement.vue
View file @
3c716607
...
...
@@ -50,7 +50,8 @@
</el-col>
<el-col
class=
"second"
:span=
"6"
>
<div
class=
"commonbg baseinfo"
>
综合得分
</div>
<div
class=
"score"
>
未评分
</div>
<div
class=
"score"
>
{{
crtScore
}}
</div>
<div
class=
"show-btn"
@
click=
"showCareer"
v-if=
"emp.EmName"
>
查看详情
</div>
</el-col>
</el-row>
</div>
...
...
@@ -68,7 +69,12 @@
<img
v-else
src=
"../../assets/img/champion/right1.png"
alt
/>
</span>
</div>
<div
class=
"choose"
style=
"float:right"
>
<div
class=
"slide-txt"
>
<transition
name=
"el-fade-in-linear"
>
<p
class=
"text"
:key=
"text.id"
>
{{
text
.
val
}}
</p>
</transition>
</div>
<div
class=
"choose"
>
<span
@
click=
"ClickChoose2(-1)"
class=
"clickbtn"
style=
"border-right:1px solid #494949"
>
<img
v-if=
"index2==0"
src=
"../../assets/img/champion/left.png"
alt
/>
<img
v-else
src=
"../../assets/img/champion/left1.png"
alt
/>
...
...
@@ -88,40 +94,39 @@
<thead>
<tr>
<th
style=
"min-width:100px;max-width:100px;background:#fff"
>
</th>
<th>
总分
</th>
<th>
新增同行
</th>
<th>
IM广告
</th>
<th>
IM互动
</th>
<th>
IM时长
</th>
<th>
同行PV
</th>
<th>
外出时长
</th>
<th>
拜访次数
</th>
<th>
计划次数
</th>
<th>
计划同行数
</th>
<th>
2周内平均拜访
</th>
<th>
新老同行占比
</th>
<th>
询价目的地
</th>
<th>
询价人数
</th>
<th>
出发日期
</th>
<th>
老客户询价
</th>
<th>
下载行程
</th>
<th>
42助手时长
</th>
<th>
ERP时长
</th>
<th>
知识圈时长
</th>
<th>
7日人数
</th>
<th>
15日人数
</th>
<th>
30日人数
</th>
<th>
30日以外人数
</th>
<th>
散客人数
</th>
<th>
单团数量
</th>
<th>
拜访报名同行
</th>
<th>
老同行报名
</th>
<th>
广告制作
</th>
<th>
广告转发IM
</th>
<th>
收款次数
</th>
<th>
处理投诉
</th>
<th>
拜访老客户
</th>
<th
@
click=
"sort"
data-key=
"SumScore"
>
总分
</th>
<th
@
click=
"sort"
data-key=
"AddCustomer"
>
新增同行
</th>
<th
@
click=
"sort"
data-key=
"AdSend"
>
IM广告
</th>
<th
@
click=
"sort"
data-key=
"ImUsedCount"
>
IM互动
</th>
<th
@
click=
"sort"
data-key=
"ImUsedTime"
>
IM时长
</th>
<th
@
click=
"sort"
data-key=
"ClientPv"
>
同行PV
</th>
<th
@
click=
"sort"
data-key=
"OutTime"
>
外出时长
</th>
<th
@
click=
"sort"
data-key=
"FinishPlanCount"
>
拜访次数
</th>
<th
@
click=
"sort"
data-key=
"FutureCount"
>
计划次数
</th>
<th
@
click=
"sort"
data-key=
"FutureClientCount"
>
计划同行数
</th>
<th
@
click=
"sort"
data-key=
"AvgFutureSee"
>
2周内平均拜访
</th>
<th
@
click=
"sort"
data-key=
"FutureSeeOldClient,FutureSeeNewClient"
>
新老同行占比
</th>
<th
@
click=
"sort"
data-key=
"TripSite"
>
询价目的地
</th>
<th
@
click=
"sort"
data-key=
"PeopleCount"
>
询价人数
</th>
<th
@
click=
"sort"
data-key=
"TripMonth"
>
出发日期
</th>
<th
@
click=
"sort"
data-key=
"OldClientEnquiry"
>
老客户询价
</th>
<th
@
click=
"sort"
data-key=
"DownloadTrip"
>
下载行程
</th>
<th
@
click=
"sort"
data-key=
"UsedApp"
>
42助手时长
</th>
<th
@
click=
"sort"
data-key=
"UsedErp"
>
ERP时长
</th>
<th
@
click=
"sort"
data-key=
"UsedWe"
>
知识圈时长
</th>
<th
@
click=
"sort"
data-key=
"SevenDayOrder"
>
7日人数
</th>
<th
@
click=
"sort"
data-key=
"FifteenDayOrder"
>
15日人数
</th>
<th
@
click=
"sort"
data-key=
"MonthOrder"
>
30日人数
</th>
<th
@
click=
"sort"
data-key=
"OutMonthOrder"
>
30日以外人数
</th>
<th
@
click=
"sort"
data-key=
"SanCount"
>
散客人数
</th>
<th
@
click=
"sort"
data-key=
"DanCount"
>
单团数量
</th>
<th
@
click=
"sort"
data-key=
"IsSeeClient"
>
拜访报名同行
</th>
<th
@
click=
"sort"
data-key=
"OldClientOrders"
>
老同行报名
</th>
<th
@
click=
"sort"
data-key=
"BuilderAd"
>
广告制作
</th>
<th
@
click=
"sort"
data-key=
"AdToApp"
>
广告转发IM
</th>
<th
@
click=
"sort"
data-key=
"IncomeMoney"
>
收款次数
</th>
<th
@
click=
"sort"
data-key=
"Tousu"
>
处理投诉
</th>
<th
@
click=
"sort"
data-key=
"SeeOldClient"
>
拜访老客户
</th>
</tr>
</thead>
</table>
...
...
@@ -162,39 +167,186 @@
@
click=
"getUserInfo(item.EmployeeId)"
:key=
"index"
>
<td>
未生成
</td>
<td>
{{
item
.
AddCustomer
}}
</td>
<td>
{{
item
.
AdSend
}}
</td>
<td>
{{
item
.
ImUsedCount
}}
</td>
<td>
{{
item
.
ImUsedTime
}}
分钟
</td>
<td>
{{
item
.
ClientPv
}}
</td>
<td
class=
"even"
>
{{
item
.
OutTime
}}
</td>
<td
class=
"even"
>
{{
item
.
FinishPlanCount
}}
</td>
<td
class=
"even"
>
{{
item
.
FutureCount
}}
</td>
<td
class=
"even"
>
{{
item
.
FutureClientCount
}}
</td>
<td
class=
"even"
>
{{
item
.
AvgFutureSee
}}
</td>
<td
class=
"even"
>
{{
item
.
FutureSeeOldClient
+
"/"
+
item
.
FutureSeeNewClient
}}
</td>
<td>
{{
item
.
TripSite
?
item
.
TripSite
.
split
(
','
).
length
:
""
}}
</td>
<td>
{{
item
.
PeopleCount
}}
</td>
<td>
{{
item
.
TripMonth
?
item
.
TripMonth
.
split
(
','
).
length
:
""
}}
</td>
<td>
{{
item
.
OldClientEnquiry
}}
</td>
<td
class=
"even"
>
{{
item
.
DownloadTrip
}}
</td>
<td
class=
"even"
>
{{
(
item
.
UsedApp
/
60
).
toFixed
(
1
)
}}
小时
</td>
<td
class=
"even"
>
{{
(
item
.
UsedErp
/
60
).
toFixed
(
1
)
}}
小时
</td>
<td
class=
"even"
>
{{
item
.
UsedWe
}}
</td>
<td>
{{
item
.
SevenDayOrder
}}
</td>
<td>
{{
item
.
FifteenDayOrder
}}
</td>
<td>
{{
item
.
MonthOrder
}}
</td>
<td>
{{
item
.
OutMonthOrder
}}
</td>
<td>
{{
item
.
SanCount
}}
</td>
<td>
{{
item
.
DanCount
}}
</td>
<td>
{{
item
.
IsSeeClient
}}
</td>
<td>
{{
item
.
OldClientOrders
}}
</td>
<td
class=
"even"
>
{{
item
.
BuilderAd
}}
</td>
<td
class=
"even"
>
{{
item
.
AdToApp
}}
</td>
<td
class=
"even"
>
{{
item
.
IncomeMoney
}}
</td>
<td
class=
"even"
>
{{
item
.
Tousu
}}
</td>
<td
class=
"even"
>
{{
item
.
SeeOldClient
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,0)"
@
click=
"chosen(index,0)"
>
{{
item
.
SumScore
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,1)"
@
click=
"chosen(index,1)"
>
{{
item
.
AddCustomer
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,2)"
@
click=
"chosen(index,2)"
>
{{
item
.
AdSend
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,3)"
@
click=
"chosen(index,3)"
>
{{
item
.
ImUsedCount
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,4)"
@
click=
"chosen(index,4)"
>
{{
item
.
ImUsedTime
}}
分钟
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,5)"
@
click=
"chosen(index,5)"
>
{{
item
.
ClientPv
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,6)"
@
click=
"chosen(index,6)"
class=
"even"
>
{{
item
.
OutTime
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,7)"
@
click=
"chosen(index,7)"
class=
"even"
>
{{
item
.
FinishPlanCount
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,8)"
@
click=
"chosen(index,8)"
class=
"even"
>
{{
item
.
FutureCount
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,9)"
@
click=
"chosen(index,9)"
class=
"even"
>
{{
item
.
FutureClientCount
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,10)"
@
click=
"chosen(index,10)"
class=
"even"
>
{{
item
.
AvgFutureSee
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,11)"
@
click=
"chosen(index,11)"
class=
"even"
>
{{
item
.
FutureSeeOldClient
+
"/"
+
item
.
FutureSeeNewClient
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,12)"
@
click=
"chosen(index,12)"
>
{{
item
.
TripSite
?
item
.
TripSite
.
split
(
','
).
length
:
""
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,13)"
@
click=
"chosen(index,13)"
>
{{
item
.
PeopleCount
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,14)"
@
click=
"chosen(index,14)"
>
{{
item
.
TripMonth
?
item
.
TripMonth
.
split
(
','
).
length
:
""
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,15)"
@
click=
"chosen(index,15)"
>
{{
item
.
OldClientEnquiry
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,16)"
@
click=
"chosen(index,16)"
class=
"even"
>
{{
item
.
DownloadTrip
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,17)"
@
click=
"chosen(index,17)"
class=
"even"
>
{{
(
item
.
UsedApp
/
60
).
toFixed
(
1
)
}}
小时
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,18)"
@
click=
"chosen(index,18)"
class=
"even"
>
{{
(
item
.
UsedErp
/
60
).
toFixed
(
1
)
}}
小时
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,19)"
@
click=
"chosen(index,19)"
class=
"even"
>
{{
item
.
UsedWe
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,20)"
@
click=
"chosen(index,20)"
>
{{
item
.
SevenDayOrder
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,21)"
@
click=
"chosen(index,21)"
>
{{
item
.
FifteenDayOrder
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,22)"
@
click=
"chosen(index,22)"
>
{{
item
.
MonthOrder
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,23)"
@
click=
"chosen(index,23)"
>
{{
item
.
OutMonthOrder
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,24)"
@
click=
"chosen(index,24)"
>
{{
item
.
SanCount
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,25)"
@
click=
"chosen(index,25)"
>
{{
item
.
DanCount
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,26)"
@
click=
"chosen(index,26)"
>
{{
item
.
IsSeeClient
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,27)"
@
click=
"chosen(index,27)"
>
{{
item
.
OldClientOrders
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,28)"
@
click=
"chosen(index,28)"
class=
"even"
>
{{
item
.
BuilderAd
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,29)"
@
click=
"chosen(index,29)"
class=
"even"
>
{{
item
.
AdToApp
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,30)"
@
click=
"chosen(index,30)"
class=
"even"
>
{{
item
.
IncomeMoney
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,31)"
@
click=
"chosen(index,31)"
class=
"even"
>
{{
item
.
Tousu
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,32)"
@
click=
"chosen(index,32)"
class=
"even"
>
{{
item
.
SeeOldClient
}}
</td>
</tr>
</tbody>
</table>
...
...
@@ -217,14 +369,40 @@ export default {
dataActiveIndex
:
-
1
,
listHeight
:
0
,
tableData
:
[],
isLoadingTableData
:
true
,
emp
:{}
isLoadingTableData
:
true
,
emp
:
{},
chosenTD
:
{
row
:
0
,
col
:
0
},
orderbyInfo
:
{
key
:
""
,
type
:
"asc"
},
textArr
:
[
'你可以使用↑、↓、←、→等四个按键快速操作表格'
,
'你可以使用 <、> 等两个按键快速切换日期'
,
'使用 [、] 两个按键可以快速的切换统计单位'
,
'点击表格头部可以排序查看'
,
'使用“O”键可以快速的对选中单元格排序'
,
'数据键盘 5 可以快速查看用户资料卡'
,
'按下 ESC 可以快速关闭用户资料卡'
],
number
:
0
,
crtScore
:
0
};
},
created
()
{
let
Height
=
document
.
body
.
clientHeight
;
this
.
listHeight
=
Height
-
470
;
// console.log("listHeight",this.listHeight)
},
computed
:
{
text
()
{
return
{
id
:
this
.
number
,
val
:
this
.
textArr
[
this
.
number
]
}
}
},
mounted
()
{
this
.
$refs
.
mycareerContent
.
addEventListener
(
...
...
@@ -232,29 +410,178 @@ export default {
this
.
handleScroll
,
true
);
this
.
bind
();
this
.
init
();
this
.
startMove
();
},
methods
:
{
init
(){
showCareer
(){
let
temp
=
this
.
tableData
[
this
.
chosenTD
.
row
].
EmployeeId
if
(
temp
!=
0
)
{
this
.
MsgBus
.
$emit
(
"showCareer"
,
temp
)
}
},
startMove
()
{
let
timer
=
setTimeout
(()
=>
{
if
(
this
.
number
===
6
)
{
this
.
number
=
0
;
}
else
{
this
.
number
+=
1
;
}
this
.
startMove
();
},
6000
);
},
sort
(
e
)
{
this
.
isLoadingTableData
=
true
let
msg
=
{
timeRange
:
this
.
index1
+
1
,
userRange
:
this
.
index2
+
1
let
dom
=
e
.
target
?
e
.
target
:
e
let
key
=
dom
.
getAttribute
(
"data-key"
);
let
temp
=
key
.
split
(
","
);
if
(
key
==
this
.
orderbyInfo
.
key
)
{
this
.
orderbyInfo
.
type
=
this
.
orderbyInfo
.
type
==
"asc"
?
"desc"
:
"asc"
;
}
else
{
this
.
orderbyInfo
.
type
=
"desc"
;
this
.
orderbyInfo
.
key
=
key
;
}
this
.
apipost
(
"user_get_usedsixSatistics"
,
msg
,
r
=>
{
this
.
tableData
=
r
.
data
.
data
this
.
isLoadingTableData
=
false
document
.
querySelectorAll
(
".tab-head th"
).
forEach
(
x
=>
{
x
.
className
=
x
.
className
.
replace
(
" asc"
,
""
).
replace
(
" desc"
,
""
)
})
dom
.
className
=
dom
.
className
+
" "
+
this
.
orderbyInfo
.
type
;
this
.
tableData
=
this
.
orderBy
(
this
.
tableData
,
temp
,
this
.
orderbyInfo
.
type
).
results
;
this
.
isLoadingTableData
=
false
;
},
getUserInfo
(
empId
){
if
(
empId
!=
0
){
this
.
apipost
(
"dmc_post_get_userTradeRank"
,{
empId
},
r
=>
{
this
.
emp
=
r
.
data
.
data
})
bind
()
{
let
that
=
this
;
document
.
onkeydown
=
function
(
event
)
{
var
e
=
event
||
window
.
event
||
arguments
.
callee
.
caller
.
arguments
[
0
];
console
.
log
(
e
.
keyCode
)
if
(
that
.
tableData
.
length
>
0
&&
!
that
.
isLoadingTableData
)
{
if
(
e
.
keyCode
==
40
)
{
if
(
that
.
chosenTD
.
row
+
1
<
that
.
tableData
.
length
)
{
that
.
chosen
(
that
.
chosenTD
.
row
+
1
,
that
.
chosenTD
.
col
);
that
.
getUserInfo
(
that
.
tableData
[
that
.
chosenTD
.
row
].
EmployeeId
)
}
}
else
if
(
e
.
keyCode
==
38
)
{
if
(
that
.
chosenTD
.
row
-
1
>=
0
)
{
that
.
chosen
(
that
.
chosenTD
.
row
-
1
,
that
.
chosenTD
.
col
);
that
.
getUserInfo
(
that
.
tableData
[
that
.
chosenTD
.
row
].
EmployeeId
)
}
}
else
if
(
e
.
keyCode
==
37
)
{
if
(
that
.
chosenTD
.
col
-
1
>=
0
)
{
that
.
chosen
(
that
.
chosenTD
.
row
,
that
.
chosenTD
.
col
-
1
);
}
}
else
if
(
e
.
keyCode
==
39
)
{
if
(
that
.
chosenTD
.
col
+
1
<
33
)
{
that
.
chosen
(
that
.
chosenTD
.
row
,
that
.
chosenTD
.
col
+
1
);
}
}
else
if
(
e
.
keyCode
==
188
)
{
that
.
ClickChoose1
(
-
1
);
}
else
if
(
e
.
keyCode
==
190
)
{
that
.
ClickChoose1
(
1
);
}
else
if
(
e
.
keyCode
==
219
)
{
that
.
ClickChoose2
(
-
1
);
}
else
if
(
e
.
keyCode
==
221
)
{
that
.
ClickChoose2
(
1
);
}
else
if
(
e
.
keyCode
==
79
)
{
that
.
goOrderby
();
}
else
if
(
e
.
keyCode
==
101
)
{
that
.
showCareer
();
}
else
if
(
e
.
keyCode
==
27
)
{
that
.
MsgBus
.
$emit
(
"hideCareer"
,
0
)
}
}
event
.
returnValue
=
e
.
keyCode
==
116
;
};
},
goOrderby
(){
this
.
sort
(
document
.
querySelectorAll
(
".tab-head th"
)[
this
.
chosenTD
.
col
+
1
])
},
init
()
{
this
.
isLoadingTableData
=
true
;
let
msg
=
{
timeRange
:
this
.
index1
+
1
,
userRange
:
this
.
index2
+
1
};
this
.
apipost
(
"user_get_usedsixSatistics"
,
msg
,
r
=>
{
this
.
tableData
=
this
.
orderBy
(
r
.
data
.
data
,
[
'SumScore'
],
'desc'
).
results
;
if
(
this
.
chosenTD
.
row
>=
this
.
tableData
.
length
){
this
.
chosen
(
this
.
tableData
.
length
-
1
,
this
.
chosenTD
.
col
);
}
this
.
isLoadingTableData
=
false
;
});
},
chosen
(
row
,
col
)
{
let
temp
=
document
.
querySelector
(
".content-body table tr .chosen-td"
);
if
(
temp
)
{
temp
.
className
=
temp
.
className
.
replace
(
" chosen-td"
,
""
);
}
temp
=
document
.
querySelectorAll
(
".content-body table tr"
)
[
row
].
querySelectorAll
(
"td"
)[
col
];
let
down
=
document
.
querySelector
(
".content-body"
).
scrollTop
+
document
.
querySelector
(
".content-body"
).
offsetHeight
-
temp
.
offsetTop
;
let
up
=
temp
.
offsetTop
-
document
.
querySelector
(
".content-body"
).
scrollTop
;
let
left
=
temp
.
offsetLeft
-
document
.
querySelector
(
".content-body"
).
scrollLeft
;
let
right
=
document
.
querySelector
(
".content-body"
).
scrollLeft
+
document
.
querySelector
(
".content-body"
).
offsetWidth
-
temp
.
offsetLeft
;
if
(
down
<
34
)
{
document
.
querySelector
(
".content-body"
).
scrollTop
+=
34
-
down
;
}
if
(
up
<
0
)
{
document
.
querySelector
(
".content-body"
).
scrollTop
+=
up
;
}
if
(
left
<
0
)
{
document
.
querySelector
(
".content-body"
).
scrollLeft
+=
left
;
}
if
(
right
<
104
)
{
document
.
querySelector
(
".content-body"
).
scrollLeft
+=
104
-
right
;
}
temp
.
className
=
temp
.
className
+
" chosen-td"
;
this
.
chosenTD
.
row
=
row
;
this
.
chosenTD
.
col
=
col
;
},
activeTd
(
row
,
col
)
{
document
.
querySelectorAll
(
".content-body table tr"
).
forEach
((
x
,
r
)
=>
{
x
.
querySelectorAll
(
"td"
).
forEach
((
y
,
i
)
=>
{
y
.
className
=
y
.
className
.
replace
(
" hover"
,
""
);
if
(
i
==
col
&&
r
!=
row
)
{
y
.
className
=
y
.
className
+
" hover"
;
}
});
});
},
outTable
()
{
document
.
querySelectorAll
(
".content-body table tr"
).
forEach
((
x
,
r
)
=>
{
x
.
querySelectorAll
(
"td"
).
forEach
((
y
,
i
)
=>
{
y
.
className
=
y
.
className
.
replace
(
" hover"
,
""
);
});
});
},
getUserInfo
(
empId
)
{
if
(
empId
!=
0
)
{
this
.
apipost
(
"dmc_post_get_userTradeRank"
,
{
empId
},
r
=>
{
this
.
emp
=
r
.
data
.
data
;
this
.
crtScore
=
this
.
tableData
[
this
.
chosenTD
.
row
].
SumScore
});
}
},
ClickChoose1
(
num
)
{
let
temp
=
this
.
index1
;
let
temp
=
this
.
index1
;
if
(
this
.
index1
==
0
)
{
if
(
num
>
0
)
{
this
.
index1
=
this
.
index1
+
num
;
...
...
@@ -266,13 +593,12 @@ export default {
}
else
{
this
.
index1
=
this
.
index1
+
num
;
}
if
(
temp
!=
this
.
index1
)
{
this
.
init
()
if
(
temp
!=
this
.
index1
)
{
this
.
init
();
}
},
ClickChoose2
(
num
)
{
let
temp
=
this
.
index2
;
let
temp
=
this
.
index2
;
if
(
this
.
index2
==
0
)
{
if
(
num
>
0
)
{
this
.
index2
=
this
.
index2
+
num
;
...
...
@@ -284,9 +610,8 @@ export default {
}
else
{
this
.
index2
=
this
.
index2
+
num
;
}
if
(
temp
!=
this
.
index2
)
{
this
.
init
()
if
(
temp
!=
this
.
index2
)
{
this
.
init
();
}
},
LeftmouseOver
(
index
)
{
...
...
@@ -369,7 +694,7 @@ export default {
height
:
33px
;
display
:
inline-block
;
position
:
relative
;
top
:
-
8
px
;
top
:
-
5
px
;
font-family
:
"PingFangSC-Fine"
;
}
.personTable
.clickbtn
{
...
...
@@ -382,14 +707,48 @@ export default {
.personTable
.clickbtn
img
{
margin-top
:
4px
;
}
.personTable
.change-box
{
display
:
flex
;
max-width
:
1532px
;
}
.personTable
.change-box
.choose
{
height
:
3
1
px
;
height
:
3
3
px
;
background
:
#333333
;
display
:
inline-block
;
width
:
230px
;
}
.personTable
.content-body
table
tr
:hover
td
{
.personTable
.change-box
.slide-txt
{
flex
:
1
;
margin-top
:
10px
;
height
:
16px
;
overflow
:
hidden
;
}
.personTable
.change-box
.slide-txt
.text
{
text-align
:
center
;
font-size
:
12px
;
color
:
#333333
;
padding
:
0
;
height
:
100%
;
width
:
100%
;
font-family
:
micrsoftYaHei
;
}
/* .personTable .content-body table tr:hover td {
background: #6a0404 !important;
color: #fff !important;
} */
.personTable
.content-body
table
tr
:hover
td
,
.personTable
.content-body
table
tr
:hover
td
.even
{
background
:
#6a0404
dd
;
color
:
#fff
;
}
.personTable
.content-body
table
td
.hover
{
background
:
#6a0404
dd
!important
;
color
:
#fff
!important
;
}
.personTable
.content-body
table
td
:hover
{
background
:
rgba
(
255
,
255
,
255
,
1
)
!important
;
color
:
#6a0404
!important
;
}
.personTable
.listDiv
{
background
:
rgba
(
255
,
255
,
255
,
0.2
);
...
...
@@ -397,6 +756,25 @@ export default {
width
:
calc
(
100%
-
20px
);
/* position: relative; */
}
.personTable
.content-body
table
td
{
position
:
relative
;
z-index
:
2
;
}
.personTable
.content-body
table
td
.chosen-td
{
background
:
#fff
!important
;
color
:
#6a0404
!important
;
}
.personTable
.content-body
table
td
.chosen-td
::after
{
content
:
" "
;
display
:
block
;
position
:
absolute
;
top
:
-1px
;
left
:
-1px
;
right
:
-1px
;
bottom
:
-1px
;
border
:
2px
solid
#6a0404
!important
;
}
.personTable
.score
{
background
:
url("../../assets/img/champion/circle.png")
no-repeat
;
width
:
150px
;
...
...
@@ -404,8 +782,7 @@ export default {
line-height
:
150px
;
color
:
#1b1b1b
;
text-align
:
center
;
/* font-size: 60px; */
font-size
:
26px
;
font-size
:
60px
;
font-family
:
"pingfangR"
;
}
.personTable
.triggerDiv
{
...
...
@@ -634,6 +1011,16 @@ export default {
background
:
rgba
(
255
,
255
,
255
,
0.2
);
/* height:100%; */
}
.personTable
.data-box
.split-line
{
left
:
0px
;
top
:
43px
;
width
:
100px
;
bottom
:
0px
;
position
:
absolute
;
overflow
:
hidden
;
z-index
:
3
;
background
:
rgba
(
255
,
255
,
255
,
0.2
);
}
.personTable
.data-box
.content-body
{
left
:
97px
;
top
:
43px
;
...
...
@@ -676,6 +1063,32 @@ export default {
.personTable
.data-box
table
thead
th
{
min-width
:
120px
;
max-width
:
120px
;
position
:
relative
;
cursor
:
pointer
;
}
.personTable
.data-box
table
thead
th
.asc
::after
,
.personTable
.data-box
table
thead
th
.desc
::after
{
content
:
"\E60C"
;
position
:
absolute
;
bottom
:
0px
;
left
:
6px
;
font-size
:
14px
;
width
:
14px
;
height
:
14px
;
color
:
#b7b7b7
;
font-family
:
element-icons
!important
;
speak
:
none
;
font-style
:
normal
;
font-weight
:
400
;
font-variant
:
normal
;
text-transform
:
none
;
line-height
:
1
;
vertical-align
:
baseline
;
display
:
inline-block
;
-webkit-font-smoothing
:
antialiased
;
}
.personTable
.data-box
table
thead
th
.desc
::after
{
content
:
"\E60B"
;
}
.personTable
.data-box
table
tbody
td
{
height
:
30px
;
...
...
@@ -691,10 +1104,10 @@ export default {
color
:
#333333
;
-webkit-background-clip
:
unset
;
-webkit-text-fill-color
:
unset
;
font-family
:
"PingFangR"
;
/* font-family: "PingFangR"; */
white-space
:
nowrap
;
}
.personTable
.data-box
table
tbody
td
.even
{
.personTable
.data-box
table
tbody
td
.even
{
background
:
rgba
(
255
,
255
,
255
,
0.25
);
}
.personTable
.data-box
.content-body
::-webkit-scrollbar
{
...
...
@@ -723,4 +1136,21 @@ export default {
.personTable
.data-box
.content-body
::-webkit-scrollbar-corner
{
color
:
transparent
;
}
.personTable
.second
.show-btn
{
width
:
106px
;
height
:
33px
;
line-height
:
33px
;
background
:
url('../../assets/img/champion/btn.png')
;
font-size
:
16px
;
font-family
:
pingfangR
;
text-align
:
center
;
margin
:
0
auto
;
margin-top
:
20px
;
color
:
#FFF
;
cursor
:
pointer
;
}
.personTable
.second
.show-btn
:hover
{
background
:
url('../../assets/img/champion/btnhover.png')
;
}
</
style
>
src/components/champion/mycareer.vue
View file @
3c716607
<
template
>
<div
class=
"mycareer"
>
<div
class=
"mycareer"
:style=
"
{'zoom':this.zoom}">
<div
class=
"close"
@
click=
"close"
v-if=
"showClose"
></div>
<div
class=
"title"
>
<div
class=
"star"
></div>
<div
class=
"company-name"
>
成都印象
</div>
<div
class=
"company-name"
>
{{
emp
.
companyName
}}
</div>
<div
class=
"uerf"
>
<div
class=
"dept-name"
>
总部业务一组
</div>
<div
class=
"uer-name"
>
唐萍
</div>
<div
class=
"dept-name"
>
{{
emp
.
deptName
}}
</div>
<div
class=
"uer-name"
>
{{
emp
.
name
}}
</div>
</div>
<div
class=
"post-name"
>
销售经理
</div>
<div
class=
"post-name"
>
{{
emp
.
job
}}
</div>
</div>
<div
class=
"uer-box"
>
<div
class=
"photo"
>
<img
src=
"http://imgfile.oytour.com/Upload/User/tangping.png
"
/>
<img
:src=
"emp.photo
"
/>
<div
class=
"zezhao"
></div>
<div
class=
"bottom"
></div>
</div>
<div
class=
"my-score"
>
<div
class=
"item"
>
<div
class=
"k"
>
综合能力
</div>
<div
class=
"v"
>
95
</div>
<div
class=
"v"
>
{{
emp
.
sumScore
}}
</div>
</div>
<div
class=
"item"
>
<div
class=
"k"
>
周冠
</div>
<div
class=
"v"
>
2
</div>
<div
class=
"v"
>
{{
emp
.
champions
}}
</div>
</div>
<div
class=
"item"
>
<div
class=
"k"
>
销售额
排名
</div>
<div
class=
"v white"
>
#
13
</div>
<div
class=
"k"
>
能力
排名
</div>
<div
class=
"v white"
>
#
{{
emp
.
rank
}}
</div>
</div>
</div>
<div
class=
"dashboards"
>
<div
class=
"dashboards"
v-if=
"emp.name"
>
<div
class=
"item"
>
<dashboard
:score=
"
67
"
title=
"名单开发"
></dashboard>
<dashboard
:score=
"
emp.development
"
title=
"名单开发"
></dashboard>
</div>
<div
class=
"item"
>
<dashboard
:score=
"
20
"
title=
"约访"
></dashboard>
<dashboard
:score=
"
emp.appointment
"
title=
"约访"
></dashboard>
</div>
<div
class=
"item"
>
<dashboard
:score=
"
40
"
title=
"探询需求"
></dashboard>
<dashboard
:score=
"
emp.demand
"
title=
"探询需求"
></dashboard>
</div>
<div
class=
"item"
>
<dashboard
:score=
"
41
"
title=
"解决需求"
></dashboard>
<dashboard
:score=
"
emp.solveDemand
"
title=
"解决需求"
></dashboard>
</div>
<div
class=
"item"
>
<dashboard
:score=
"
80
"
title=
"说明成交"
></dashboard>
<dashboard
:score=
"
emp.clinch
"
title=
"说明成交"
></dashboard>
</div>
<div
class=
"item"
>
<dashboard
:score=
"
19
"
title=
"售后服务"
></dashboard>
<dashboard
:score=
"
emp.service
"
title=
"售后服务"
></dashboard>
</div>
</div>
</div>
<div
class=
"split"
></div>
<div
class=
"change-box"
>
<div
class=
"btn
dis
"
>
<div
class=
"btn
"
@
click=
"ClickChoose1(-1)"
:class=
"
{'dis':index1==0}
">
<i
class=
"el-icon-caret-left"
></i>
</div>
<div
class=
"option"
>
每日数据
</div>
<div
class=
"btn"
>
<div
class=
"option"
>
{{
choose1
[
index1
]
}}
</div>
<div
class=
"btn"
@
click=
"ClickChoose1(1)"
:class=
"
{'dis':choose1.length-1==index1}"
>
<i
class=
"el-icon-caret-right"
></i>
</div>
</div>
<div
class=
"data-box-before"
></div>
<div
class=
"data-box"
>
<div
class=
"data-box"
v-loading=
"isLoadingTableData"
>
<div
class=
"tab-head"
ref=
"mycareerHead"
>
<table>
<thead>
<tr>
<th>
日期
</th>
<th>
新增同行
</th>
<th>
IM广告
</th>
<th>
IM互动
</th>
<th>
IM时长
</th>
<th>
同行PV
</th>
<th>
外出时长
</th>
<th>
完成计划
</th>
<th>
拜访计划
</th>
<th>
拜访同行
</th>
<th>
拜访同行2
</th>
<th>
拜访同行3
</th>
<th>
拜访同行4
</th>
<th>
拜访同行5
</th>
<th
style=
"min-width: 100px;max-width: 100px;"
>
</th>
<th
@
click=
"sort"
data-key=
"SumScore"
>
总分
</th>
<th
@
click=
"sort"
data-key=
"AddCustomer"
>
新增同行
</th>
<th
@
click=
"sort"
data-key=
"AdSend"
>
IM广告
</th>
<th
@
click=
"sort"
data-key=
"ImUsedCount"
>
IM互动
</th>
<th
@
click=
"sort"
data-key=
"ImUsedTime"
>
IM时长
</th>
<th
@
click=
"sort"
data-key=
"ClientPv"
>
同行PV
</th>
<th
@
click=
"sort"
data-key=
"OutTime"
>
外出时长
</th>
<th
@
click=
"sort"
data-key=
"FinishPlanCount"
>
拜访次数
</th>
<th
@
click=
"sort"
data-key=
"FutureCount"
>
计划次数
</th>
<th
@
click=
"sort"
data-key=
"FutureClientCount"
>
计划同行数
</th>
<th
@
click=
"sort"
data-key=
"AvgFutureSee"
>
2周内平均拜访
</th>
<th
@
click=
"sort"
data-key=
"FutureSeeOldClient,FutureSeeNewClient"
>
新老同行占比
</th>
<th
@
click=
"sort"
data-key=
"TripSite"
>
询价目的地
</th>
<th
@
click=
"sort"
data-key=
"PeopleCount"
>
询价人数
</th>
<th
@
click=
"sort"
data-key=
"TripMonth"
>
出发日期
</th>
<th
@
click=
"sort"
data-key=
"OldClientEnquiry"
>
老客户询价
</th>
<th
@
click=
"sort"
data-key=
"DownloadTrip"
>
下载行程
</th>
<th
@
click=
"sort"
data-key=
"UsedApp"
>
42助手时长
</th>
<th
@
click=
"sort"
data-key=
"UsedErp"
>
ERP时长
</th>
<th
@
click=
"sort"
data-key=
"UsedWe"
>
知识圈时长
</th>
<th
@
click=
"sort"
data-key=
"SevenDayOrder"
>
7日人数
</th>
<th
@
click=
"sort"
data-key=
"FifteenDayOrder"
>
15日人数
</th>
<th
@
click=
"sort"
data-key=
"MonthOrder"
>
30日人数
</th>
<th
@
click=
"sort"
data-key=
"OutMonthOrder"
>
30日以外人数
</th>
<th
@
click=
"sort"
data-key=
"SanCount"
>
散客人数
</th>
<th
@
click=
"sort"
data-key=
"DanCount"
>
单团数量
</th>
<th
@
click=
"sort"
data-key=
"IsSeeClient"
>
拜访报名同行
</th>
<th
@
click=
"sort"
data-key=
"OldClientOrders"
>
老同行报名
</th>
<th
@
click=
"sort"
data-key=
"BuilderAd"
>
广告制作
</th>
<th
@
click=
"sort"
data-key=
"AdToApp"
>
广告转发IM
</th>
<th
@
click=
"sort"
data-key=
"IncomeMoney"
>
收款次数
</th>
<th
@
click=
"sort"
data-key=
"Tousu"
>
处理投诉
</th>
<th
@
click=
"sort"
data-key=
"SeeOldClient"
>
拜访老客户
</th>
</tr>
</thead>
</table>
...
...
@@ -89,7 +110,7 @@
<table>
<thead>
<tr>
<th>
时间
</th>
<th
style=
"min-width: 100px;max-width: 100px;"
>
时间
</th>
</tr>
</thead>
</table>
...
...
@@ -97,41 +118,8 @@
<div
class=
"lft-body"
ref=
"mycareerLeft"
>
<table>
<tbody>
<tr>
<td
class=
"odd"
>
7月1日
</td>
</tr>
<tr>
<td
class=
"odd"
>
7月2日
</td>
</tr>
<tr>
<td
class=
"odd"
>
7月3日
</td>
</tr>
<tr>
<td
class=
"odd"
>
7月4日
</td>
</tr>
<tr>
<td
class=
"odd"
>
7月5日
</td>
</tr>
<tr>
<td
class=
"odd"
>
7月6日
</td>
</tr>
<tr>
<td
class=
"odd"
>
7月7日
</td>
</tr>
<tr>
<td
class=
"odd"
>
7月8日
</td>
</tr>
<tr>
<td
class=
"odd"
>
7月9日
</td>
</tr>
<tr>
<td
class=
"odd"
>
7月10日
</td>
</tr>
<tr>
<td
class=
"odd"
>
7月11日
</td>
</tr>
<tr>
<td
class=
"odd"
>
7月12日
</td>
<tr
v-for=
"(item, index) in tableData"
:key=
"index"
>
<td
class=
"odd"
>
{{
item
.
CreateTimeFM
}}
</td>
</tr>
</tbody>
</table>
...
...
@@ -139,209 +127,41 @@
<div
class=
"content-body"
ref=
"mycareerContent"
>
<table>
<tbody>
<tr>
<td>
</td>
<td>
1
</td>
<td>
1
</td>
<td>
2
</td>
<td>
3
</td>
<td>
4
</td>
<td>
5
</td>
<td>
6
</td>
<td>
7
</td>
<td>
8
</td>
<td>
9
</td>
<td>
10
</td>
<td>
11
</td>
<td>
12
</td>
<td>
13
</td>
</tr>
<tr>
<td>
</td>
<td>
1
</td>
<td>
1
</td>
<td>
2
</td>
<td>
3
</td>
<td>
4
</td>
<td>
5
</td>
<td>
6
</td>
<td>
7
</td>
<td>
8
</td>
<td>
9
</td>
<td>
10
</td>
<td>
11
</td>
<td>
12
</td>
<td>
13
</td>
</tr>
<tr>
<td>
</td>
<td>
1
</td>
<td>
1
</td>
<td>
2
</td>
<td>
3
</td>
<td>
4
</td>
<td>
5
</td>
<td>
6
</td>
<td>
7
</td>
<td>
8
</td>
<td>
9
</td>
<td>
10
</td>
<td>
11
</td>
<td>
12
</td>
<td>
13
</td>
</tr>
<tr>
<td>
</td>
<td>
1
</td>
<td>
1
</td>
<td>
2
</td>
<td>
3
</td>
<td>
4
</td>
<td>
5
</td>
<td>
6
</td>
<td>
7
</td>
<td>
8
</td>
<td>
9
</td>
<td>
10
</td>
<td>
11
</td>
<td>
12
</td>
<td>
13
</td>
</tr>
<tr>
<td>
</td>
<td>
1
</td>
<td>
1
</td>
<td>
2
</td>
<td>
3
</td>
<td>
4
</td>
<td>
5
</td>
<td>
6
</td>
<td>
7
</td>
<td>
8
</td>
<td>
9
</td>
<td>
10
</td>
<td>
11
</td>
<td>
12
</td>
<td>
13
</td>
</tr>
<tr>
<td>
</td>
<td>
1
</td>
<td>
1
</td>
<td>
2
</td>
<td>
3
</td>
<td>
4
</td>
<td>
5
</td>
<td>
6
</td>
<td>
7
</td>
<td>
8
</td>
<td>
9
</td>
<td>
10
</td>
<td>
11
</td>
<td>
12
</td>
<td>
13
</td>
</tr>
<tr>
<td>
</td>
<td>
1
</td>
<td>
1
</td>
<td>
2
</td>
<td>
3
</td>
<td>
4
</td>
<td>
5
</td>
<td>
6
</td>
<td>
7
</td>
<td>
8
</td>
<td>
9
</td>
<td>
10
</td>
<td>
11
</td>
<td>
12
</td>
<td>
13
</td>
</tr>
<tr>
<td>
</td>
<td>
1
</td>
<td>
1
</td>
<td>
2
</td>
<td>
3
</td>
<td>
4
</td>
<td>
5
</td>
<td>
6
</td>
<td>
7
</td>
<td>
8
</td>
<td>
9
</td>
<td>
10
</td>
<td>
11
</td>
<td>
12
</td>
<td>
13
</td>
</tr>
<tr>
<td>
</td>
<td>
1
</td>
<td>
1
</td>
<td>
2
</td>
<td>
3
</td>
<td>
4
</td>
<td>
5
</td>
<td>
6
</td>
<td>
7
</td>
<td>
8
</td>
<td>
9
</td>
<td>
10
</td>
<td>
11
</td>
<td>
12
</td>
<td>
13
</td>
</tr>
<tr>
<td>
</td>
<td>
1
</td>
<td>
1
</td>
<td>
2
</td>
<td>
3
</td>
<td>
4
</td>
<td>
5
</td>
<td>
6
</td>
<td>
7
</td>
<td>
8
</td>
<td>
9
</td>
<td>
10
</td>
<td>
11
</td>
<td>
12
</td>
<td>
13
</td>
</tr>
<tr>
<td>
</td>
<td>
1
</td>
<td>
1
</td>
<td>
2
</td>
<td>
3
</td>
<td>
4
</td>
<td>
5
</td>
<td>
6
</td>
<td>
7
</td>
<td>
8
</td>
<td>
9
</td>
<td>
10
</td>
<td>
11
</td>
<td>
12
</td>
<td>
13
</td>
</tr>
<tr>
<td>
</td>
<td>
1
</td>
<td>
1
</td>
<td>
2
</td>
<td>
3
</td>
<td>
4
</td>
<td>
5
</td>
<td>
6
</td>
<td>
7
</td>
<td>
8
</td>
<td>
9
</td>
<td>
10
</td>
<td>
11
</td>
<td>
12
</td>
<td>
13
</td>
<tr
v-for=
"(item, index) in tableData"
:key=
"index"
>
<td
style=
"min-width: 100px;max-width: 100px;background:#1d160b"
>
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,1)"
>
{{
item
.
SumScore
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,2)"
>
{{
item
.
AddCustomer
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,3)"
>
{{
item
.
AdSend
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,4)"
>
{{
item
.
ImUsedCount
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,5)"
>
{{
item
.
ImUsedTime
}}
分钟
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,6)"
>
{{
item
.
ClientPv
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,7)"
class=
"even"
>
{{
item
.
OutTime
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,8)"
class=
"even"
>
{{
item
.
FinishPlanCount
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,9)"
class=
"even"
>
{{
item
.
FutureCount
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,10)"
class=
"even"
>
{{
item
.
FutureClientCount
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,11)"
class=
"even"
>
{{
item
.
AvgFutureSee
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,12)"
class=
"even"
>
{{
item
.
FutureSeeOldClient
+
"/"
+
item
.
FutureSeeNewClient
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,13)"
>
{{
item
.
TripSite
?
item
.
TripSite
.
split
(
','
).
length
:
""
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,14)"
>
{{
item
.
PeopleCount
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,15)"
>
{{
item
.
TripMonth
?
item
.
TripMonth
.
split
(
','
).
length
:
""
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,16)"
>
{{
item
.
OldClientEnquiry
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,17)"
class=
"even"
>
{{
item
.
DownloadTrip
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,18)"
class=
"even"
>
{{
(
item
.
UsedApp
/
60
).
toFixed
(
1
)
}}
小时
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,19)"
class=
"even"
>
{{
(
item
.
UsedErp
/
60
).
toFixed
(
1
)
}}
小时
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,20)"
class=
"even"
>
{{
item
.
UsedWe
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,21)"
>
{{
item
.
SevenDayOrder
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,22)"
>
{{
item
.
FifteenDayOrder
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,23)"
>
{{
item
.
MonthOrder
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,24)"
>
{{
item
.
OutMonthOrder
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,25)"
>
{{
item
.
SanCount
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,26)"
>
{{
item
.
DanCount
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,27)"
>
{{
item
.
IsSeeClient
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,28)"
>
{{
item
.
OldClientOrders
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,29)"
class=
"even"
>
{{
item
.
BuilderAd
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,30)"
class=
"even"
>
{{
item
.
AdToApp
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,31)"
class=
"even"
>
{{
item
.
IncomeMoney
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,32)"
class=
"even"
>
{{
item
.
Tousu
}}
</td>
<td
@
mouseleave=
"outTable"
@
mouseover=
"activeTd(index,33)"
class=
"even"
>
{{
item
.
SeeOldClient
}}
</td>
</tr>
</tbody>
</table>
...
...
@@ -355,18 +175,99 @@ export default {
components
:
{
dashboard
},
props
:
{
showClose
:
{
type
:
Boolean
,
default
:
false
},
uid
:
{
type
:
Number
}
},
data
()
{
return
{
choose1
:
[
"每日数据"
,
"每周数据"
,
"每月数据"
,
"每年数据"
],
index1
:
1
,
isLoadingTableData
:
false
,
tableData
:[],
emp
:{},
zoom
:
1
};
},
mounted
()
{
this
.
zoom
=
parseFloat
(
document
.
body
.
offsetHeight
)
/
969.00
;
this
.
zoom
=
this
.
zoom
<
0.8
?
0.8
:
this
.
zoom
;
this
.
$refs
.
mycareerContent
.
addEventListener
(
"scroll"
,
this
.
handleScroll
,
true
);
this
.
getUserInfo
()
this
.
init
();
},
methods
:
{
handleScroll
()
{
this
.
$refs
.
mycareerLeft
.
scrollTop
=
this
.
$refs
.
mycareerContent
.
scrollTop
;
this
.
$refs
.
mycareerHead
.
scrollLeft
=
this
.
$refs
.
mycareerContent
.
scrollLeft
;
},
close
()
{
this
.
$emit
(
"close"
);
},
sort
(){
},
getUserInfo
(
empId
)
{
if
(
empId
!=
0
)
{
this
.
apipost
(
"user_post_get_usersixdetails"
,
{
'empId'
:
this
.
uid
},
r
=>
{
this
.
emp
=
r
.
data
.
data
});
}
},
activeTd
(
row
,
col
)
{
document
.
querySelectorAll
(
".mycareer .content-body table tr"
).
forEach
((
x
,
r
)
=>
{
x
.
querySelectorAll
(
"td"
).
forEach
((
y
,
i
)
=>
{
y
.
className
=
y
.
className
.
replace
(
" hover"
,
""
);
if
(
i
==
col
&&
r
!=
row
)
{
y
.
className
=
y
.
className
+
" hover"
;
}
});
});
},
outTable
()
{
document
.
querySelectorAll
(
".content-body table tr"
).
forEach
((
x
,
r
)
=>
{
x
.
querySelectorAll
(
"td"
).
forEach
((
y
,
i
)
=>
{
y
.
className
=
y
.
className
.
replace
(
" hover"
,
""
);
});
});
},
init
()
{
this
.
isLoadingTableData
=
true
;
let
msg
=
{
timeRange
:
this
.
index1
+
1
,
empId
:
this
.
uid
};
this
.
apipost
(
"user_post_get_usersixstatistics"
,
msg
,
r
=>
{
(
this
.
tableData
=
r
.
data
.
data
),
(
this
.
isLoadingTableData
=
false
);
});
},
ClickChoose1
(
num
)
{
if
(
!
this
.
isLoadingTableData
){
let
temp
=
this
.
index1
;
if
(
this
.
index1
==
0
)
{
if
(
num
>
0
)
{
this
.
index1
=
this
.
index1
+
num
;
}
}
else
if
(
this
.
index1
==
this
.
choose1
.
length
-
1
)
{
if
(
num
<
0
)
{
this
.
index1
=
this
.
index1
+
num
;
}
}
else
{
this
.
index1
=
this
.
index1
+
num
;
}
if
(
temp
!=
this
.
index1
)
{
this
.
init
();
}
}
}
}
};
...
...
@@ -381,6 +282,18 @@ export default {
user-select
:
none
;
cursor
:
default
;
}
.mycareer
.close
{
position
:
absolute
;
top
:
64px
;
right
:
33px
;
width
:
20px
;
height
:
20px
;
background
:
url("../../assets/img/champion/close.png")
;
cursor
:
pointer
;
}
.mycareer
.close
:hover
{
background
:
url("../../assets/img/champion/close_before.png")
;
}
.mycareer
.title
{
width
:
554px
;
height
:
69px
;
...
...
@@ -668,57 +581,68 @@ export default {
}
.mycareer
.data-box
table
thead
th
{
min-width
:
10
0
px
;
max-width
:
10
0
px
;
min-width
:
10
5
px
;
max-width
:
10
5
px
;
}
.mycareer
.data-box
table
tbody
td
{
height
:
30px
;
line-height
:
30px
;
font-size
:
12px
;
color
:
rgba
(
255
,
168
,
53
,
1
);
background
:
linear-gradient
(
0deg
,
rgba
(
163
,
169
,
164
,
1
)
0%
,
rgba
(
255
,
255
,
255
,
1
)
100%
);
-webkit-background-clip
:
text
;
-webkit-text-fill-color
:
transparent
;
color
:
#FFF
;
text-align
:
left
;
padding-left
:
10px
;
min-width
:
10
0
px
;
max-width
:
10
0
px
;
min-width
:
10
5
px
;
max-width
:
10
5
px
;
}
.mycareer
.data-box
table
tbody
td
.odd
{
background
:
#1d160b
;
color
:
#fff
;
-webkit-background-clip
:
unset
;
-webkit-text-fill-color
:
unset
;
min-width
:
100px
;
max-width
:
100px
;
}
.mycareer
.content-body
table
tr
:hover
td
,
.mycareer
.content-body
table
tr
:hover
td
.even
{
background
:
#1d160b
dd
;
color
:
#fff
;
}
.mycareer
.content-body
table
td
.hover
{
background
:
#1d160b
dd
!important
;
color
:
#fff
!important
;
}
.mycareer
.content-body
table
td
:hover
{
background
:
#E3e3e3
!important
;
color
:
#1d160b
!important
;
}
.mycareer
.content-body
table
td
.even
{
background
:
hsla
(
41
,
63%
,
38%
,
0.212
);
}
.mycareer
.data-box
.content-body
::-webkit-scrollbar
{
/*滚动条整体样式*/
width
:
5px
;
/*高宽分别对应横竖滚动条的尺寸*/
height
:
5px
;
border
:
1px
solid
rgba
(
161
,
154
,
147
,
1
);
border-radius
:
5px
;
border
:
1px
solid
rgba
(
161
,
154
,
147
,
1
);
border-radius
:
5px
;
background
:
transparent
;
padding
:
2px
padding
:
2px
;
}
.mycareer
.data-box
.content-body
::-webkit-scrollbar-thumb
{
/*滚动条里面小方块*/
height
:
4px
;
height
:
4px
;
width
:
4px
;
background
:
rgba
(
222
,
186
,
102
,
1
);
border-radius
:
5px
;
background
:
rgba
(
222
,
186
,
102
,
1
);
border-radius
:
5px
;
}
.mycareer
.data-box
.content-body
::-webkit-scrollbar-track
{
/*滚动条里面轨道*/
-webkit-box-shadow
:
inset
0
0
2px
rgba
(
0
,
0
,
0
,
0.2
);
border-radius
:
5px
;
border-radius
:
5px
;
background
:
transparent
;
}
.mycareer
.data-box
.content-body
::-webkit-scrollbar-corner
{
.mycareer
.data-box
.content-body
::-webkit-scrollbar-corner
{
color
:
transparent
;
}
</
style
>
src/components/personalCenter.vue
View file @
3c716607
...
...
@@ -45,7 +45,7 @@
<i
class=
"iconfont icon-right1"
></i>
</span>
</div>
<div
class=
"item"
>
<div
class=
"item"
@
click=
"changeBoard(2)"
>
<i
class=
"iconfont icon-guanjun"
></i>
<span
class=
"n-name"
>
冠军之路
</span>
<span
class=
"fang"
>
...
...
@@ -100,12 +100,17 @@
</div>
<personalIndex
v-if=
"boardIndex==0"
></personalIndex>
<dailyAnalysis
v-if=
"boardIndex==1"
></dailyAnalysis>
<div
class=
"m-box"
v-if=
"boardIndex==2"
:style=
"
{'left':(300*zoomH)+'px'}">
<personnelManagement></personnelManagement>
</div>
</div>
</
template
>
<
script
>
import
personalIndex
from
'./personalCenter/index'
import
dailyAnalysis
from
'./visualization/dailyAnalysis'
import
personnelManagement
from
'./activity/PersonnelManagement'
export
default
{
data
()
{
return
{
...
...
@@ -119,7 +124,8 @@ export default {
},
components
:
{
personalIndex
,
dailyAnalysis
dailyAnalysis
,
personnelManagement
},
mounted
()
{
this
.
u
=
this
.
getLocalStorage
();
...
...
@@ -192,7 +198,11 @@ export default {
right
:
0
;
background
:
rgba
(
242
,
243
,
248
,
1
);
overflow-y
:
auto
;
padding-bottom
:
20px
;
/* padding-bottom: 20px; */
}
.personal
.m-box
.personTable
{
margin
:
0px
;
width
:
100%
;
}
.personal
.u-box
.h-info-box
{
margin
:
15px
;
...
...
src/components/personalCenter/index.vue
View file @
3c716607
...
...
@@ -176,7 +176,7 @@
<div
class=
"r-box"
>
<div
class=
"sell"
>
<div
class=
"title"
>
本周销冠
</div>
<i
class=
"more iconfont icon-gengduo1 white"
title=
"查看往期排行"
></i>
<i
class=
"more iconfont icon-gengduo1 white"
title=
"查看往期排行"
@
click=
"openRank"
></i>
<sell
:champion=
"result.orderRankList"
></sell>
</div>
<div
class=
"todayOpera"
>
...
...
@@ -280,6 +280,10 @@ export default {
const
{
href
}
=
this
.
$router
.
resolve
({
path
:
"/Maninfo"
});
window
.
open
(
href
,
"_blank"
);
},
openRank
(){
const
{
href
}
=
this
.
$router
.
resolve
({
path
:
"/saleRnkBefore"
});
window
.
open
(
href
,
"_blank"
);
},
getList
(){
let
msg
=
{
pageIndex
:
1
,
...
...
src/components/personalCenter/sell.vue
View file @
3c716607
...
...
@@ -47,12 +47,11 @@ export default {
}
},
mounted
()
{
console
.
log
(
this
.
champion
)
},
methods
:
{
openRank
(){
const
{
href
}
=
this
.
$router
.
resolve
({
path
:
"/saleRnkBefore"
});
window
.
open
(
href
,
"_blank"
);
this
.
MsgBus
.
$emit
(
"showCareer"
,
this
.
champion
.
employeeId
)
}
},
}
...
...
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