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
8f7d6261
Commit
8f7d6261
authored
May 22, 2023
by
黄奎
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.oytour.com/luochao/superman
parents
e129233c
54344940
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
1048 additions
and
54 deletions
+1048
-54
Saleshomepage_1920.css
src/assets/css/home/Saleshomepage_1920.css
+9
-4
ServiceCommissionUser.vue
...nancialModule/ServiceCommission/ServiceCommissionUser.vue
+17
-9
TicketUserDetails.vue
...nts/FinancialModule/TradeCommission/TicketUserDetails.vue
+25
-25
domesticCommissionUser.vue
src/components/FinancialModule/domesticCommissionUser.vue
+17
-7
ExpectedCommission.vue
src/components/sale/ExpectedCommission.vue
+474
-0
OrderList.vue
src/components/sale/components/OrderList.vue
+119
-0
notification.vue
src/components/sale/components/notification.vue
+101
-0
progressComm.vue
src/components/sale/components/progressComm.vue
+209
-0
sale.vue
src/components/sale/sale.vue
+67
-7
config.js
src/router/config.js
+10
-2
No files found.
src/assets/css/home/Saleshomepage_1920.css
View file @
8f7d6261
...
...
@@ -8,15 +8,20 @@
.saleChartCont
{
width
:
100%
;
height
:
95%
;
box-sizing
:
border-box
;}
.personal
{
width
:
100%
;
height
:
100%
;}
.PersonalData
{
width
:
100%
;
height
:
350px
;
background
:
white
;
margin-top
:
10px
}
.PersonalData_l
{
width
:
100%
;
height
:
3
50
px
;
overflow-x
:
auto
;
padding
:
20px
}
.PersonalData_l
.l_top
{
width
:
700px
;
height
:
1
00
px
;}
.PersonalData_l
{
width
:
100%
;
height
:
3
68
px
;
overflow-x
:
auto
;
padding
:
20px
}
.PersonalData_l
.l_top
{
width
:
700px
;
height
:
1
18
px
;}
.l_top
.tx_img
{
width
:
94px
;
height
:
94px
;
border-radius
:
50%
;
overflow
:
hidden
;
float
:
left
}
.l_top
.img
{
width
:
80px
;
height
:
70px
;
margin-left
:
90px
;
float
:
left
;
margin-top
:
15px
}
.l_top
.img
{
width
:
60px
;
height
:
60px
;
margin-left
:
10px
;
/* margin-left: 90px; */
float
:
left
;
margin-top
:
15px
}
.p_name
{
margin-left
:
17px
;
margin-top
:
25px
;
float
:
left
}
.p_name
span
:nth-child
(
1
)
{
font-size
:
18px
;
color
:
#333333
;
display
:
block
}
.p_name
span
:nth-child
(
2
)
{
font-size
:
12px
;
color
:
#333333
;
margin-top
:
5px
;
display
:
block
}
.l_top
.royalty
{
margin-left
:
30px
;
float
:
left
;
margin-top
:
17px
;
display
:
flex
;
flex-direction
:
column
}
.l_top
.royalty
.tc
{
display
:
flex
;
flex-direction
:
row
;
align-items
:
flex-start
}
.l_top
.royalty
.tc
{
display
:
flex
;
flex-direction
:
column
;
align-items
:
flex-start
}
.l_top
.royalty
.tc
span
:nth-child
(
1
)
{
font-size
:
14px
;
color
:
#333333
;
margin-top
:
8px
;
margin-right
:
5px
}
.l_top
.royalty
.tc
span
:nth-child
(
2
)
{
font-size
:
36px
;
color
:
#333333
;
font-weight
:
bold
}
.order
{
width
:
700px
;
height
:
205px
;
background
:
#F5F5F5
;
margin-top
:
5px
;
padding
:
20px
}
...
...
src/components/FinancialModule/ServiceCommission/ServiceCommissionUser.vue
View file @
8f7d6261
...
...
@@ -26,7 +26,14 @@
<div
class=
"flexOne domesticCommissionUser"
>
<div>
<ul
class=
"opUl"
>
<li>
<em>
期数
</em>
<el-select
v-model=
"msg.PeriodId"
size=
"mini"
@
change=
"handleCurrentChange(1)"
>
<el-option
label=
"不限"
:value=
"0"
></el-option>
<el-option
v-for=
"(item,index) in PeriodsList"
:key=
"item.index"
:label=
"item.Name"
:value=
"item.Id"
>
</el-option>
</el-select>
</li>
<li>
<em>
人员
</em>
<el-select
v-model=
"msg.UserId"
size=
"mini"
@
change=
"handleCurrentChange(1)"
filterable
:disabled=
'disabled'
>
...
...
@@ -68,7 +75,7 @@
</el-select>
</li>
-->
</ul>
</div>
<table
v-loading=
"loading"
class=
"singeRowTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
>
...
...
@@ -157,8 +164,7 @@
if
(
this
.
$route
.
query
&&
this
.
$route
.
query
.
Type
)
{
this
.
msg
.
Type
=
this
.
$route
.
query
.
Type
}
this
.
getList
();
// this.getqishilist()
this
.
getqishilist
()
this
.
getCompanyList
()
//获取公司
this
.
getEmployee
()
//人员
this
.
getDerpartMent
()
//部门
...
...
@@ -218,15 +224,17 @@
},
getqishilist
()
{
this
.
apipost
(
"sellcommission_Get
GN
CommissionPeriodsList"
,
"sellcommission_Get
Dx
CommissionPeriodsList"
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
PeriodsList
=
res
.
data
.
data
;
if
(
this
.
PeriodsList
&&
this
.
PeriodsList
.
length
>
0
)
{
// this.msg.Periods = Number(this.PeriodsList[0].Id)
if
(
!
this
.
$route
.
query
.
PeriodId
||
this
.
$route
.
query
.
isSale
){
this
.
msg
.
PeriodId
=
this
.
PeriodsList
[
0
].
Id
}
}
this
.
getList
()
}
else
{
this
.
Error
(
res
.
data
.
message
);
}
...
...
@@ -247,7 +255,7 @@
PeriodId
:
this
.
$route
.
query
.
PeriodId
,
UserId
:
item
.
UserId
,
RB_Branch_Id
:
item
.
RB_Branch_Id
,
RB_Department_Id
:
item
.
RB_Department_Id
,
RB_Department_Id
:
item
.
RB_Department_Id
,
blank
:
'y'
,
Type
:
this
.
msg
.
Type
,
tab
:
'单项服务提现详情'
,
...
...
@@ -275,4 +283,4 @@
}
}
</
script
>
\ No newline at end of file
</
script
>
src/components/FinancialModule/TradeCommission/TicketUserDetails.vue
View file @
8f7d6261
...
...
@@ -58,7 +58,7 @@
flex
:
1
;
display
:
flex
;
flex-direction
:
row
;
}
.relative-position
{
flex
:
1
;
...
...
@@ -89,7 +89,7 @@
display
:
flex
;
flex-wrap
:
wrap
;
justify-content
:
center
;
}
.sanjiao
{
width
:
0
;
...
...
@@ -128,13 +128,13 @@
<ul
class=
"opUl"
>
<li>
<em>
出团公司
</em>
<el-select
filterable
size=
"mini"
v-model=
'msg.OutBranchId'
<el-select
filterable
size=
"mini"
v-model=
'msg.OutBranchId'
@
change=
'handleCurrentChange(1)'
:disabled=
"disabled"
>
<el-option
label=
"不限"
:value=
"-1"
:key=
"-1"
></el-option>
<el-option
v-for=
"item in companyList"
:label=
'item.BName'
:value=
'item.Id'
:label=
'item.BName'
:value=
'item.Id'
:key=
'item.Id'
></el-option>
</el-select>
...
...
@@ -149,24 +149,24 @@
</li>
<li>
<em>
所属公司
</em>
<el-select
filterable
size=
"mini"
v-model=
'msg.RB_Branch_Id'
<el-select
filterable
size=
"mini"
v-model=
'msg.RB_Branch_Id'
@
change=
'getDepartment();handleCurrentChange(1)'
:disabled=
"disabled"
>
<el-option
label=
"不限"
:value=
"-1"
:key=
"-1"
></el-option>
<el-option
v-for=
"item in companyList"
:label=
'item.BName'
:value=
'item.Id'
:label=
'item.BName'
:value=
'item.Id'
:key=
'item.Id'
></el-option>
</el-select>
</li>
<li>
<em>
部门
</em>
<el-select
filterable
size=
"mini"
v-model=
'msg.RB_Department_Id'
<el-select
filterable
size=
"mini"
v-model=
'msg.RB_Department_Id'
@
change=
'getEmployee();handleCurrentChange(1)'
>
<el-option
label=
"不限"
:value=
"-1"
></el-option>
<el-option
v-for=
'item in departmentList'
<el-option
v-for=
'item in departmentList'
:label=
'item.DepartmentName'
:value=
'item.DepartmentID'
:key=
'item.DepartmentID'
>
...
...
@@ -175,7 +175,7 @@
</li>
<li>
<em>
人员
</em>
<el-select
v-model=
"msg.UserId"
size=
"mini"
<el-select
v-model=
"msg.UserId"
size=
"mini"
@
change=
"handleCurrentChange(1)"
:disabled=
"disabled"
filterable
>
<el-option
label=
"不限"
:value=
"-1"
></el-option>
<el-option
label=
"微途"
:value=
"-2"
></el-option>
...
...
@@ -183,12 +183,12 @@
:value=
"item.empId"
></el-option>
</el-select>
</li>
<!--
<li
style=
"position: fixed;right: 0;top: 51px;"
>
<input
type=
"button"
class=
"normalBtn"
value=
"导出"
@
click=
"exportExcel"
>
</li>
-->
</ul>
</div>
<table
v-loading=
"loading"
class=
"singeRowTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
>
...
...
@@ -240,7 +240,7 @@
import
moment
from
"moment"
export
default
{
components
:{
},
data
()
{
return
{
...
...
@@ -256,7 +256,7 @@
RB_Branch_Id
:
-
1
,
//公司ID
OutBranchId
:
-
1
,
//出团公司ID
},
loading
:
false
,
//数据源
dataList
:
[],
...
...
@@ -299,10 +299,10 @@
mounted
()
{
let
userInfo
=
this
.
getLocalStorage
();
let
ActionMenuCode
=
userInfo
.
ActionMenuCode
;
this
.
msg
.
PeriodId
=
this
.
$route
.
query
.
PeriodId
?
Number
(
this
.
$route
.
query
.
PeriodId
):
-
1
this
.
msg
.
OutBranchId
=
this
.
$route
.
query
.
RB_Branch_Id
>-
1
?
Number
(
this
.
$route
.
query
.
RB_Branch_Id
):
Number
(
userInfo
.
RB_Branch_id
)
this
.
msg
.
UserId
=
this
.
$route
.
query
.
UserId
?
Number
(
this
.
$route
.
query
.
UserId
):
Number
(
userInfo
.
EmployeeId
)
this
.
msg
.
UserId
=
this
.
$route
.
query
.
UserId
?
Number
(
this
.
$route
.
query
.
UserId
):
Number
(
userInfo
.
EmployeeId
)
if
(
ActionMenuCode
.
indexOf
(
'S_CheckBranchOrder'
)
!=
-
1
||
ActionMenuCode
.
indexOf
(
'S_CheckAllOrder'
)
!=-
1
||
ActionMenuCode
.
indexOf
(
'F_Query_AllIncomPay'
)
!=-
1
)
{
//是否有看所有人的权限
...
...
@@ -314,8 +314,8 @@
}
else
{
this
.
disabled
=
true
;
}
},
methods
:
{
getDepartment
()
{
...
...
@@ -325,7 +325,7 @@
this
.
departmentList
=
res
.
data
.
data
;
}
},
err
=>
{})
},
getCompany
(){
this
.
apipost
(
'admin_get_BranchGetList'
,
this
.
getCompanyMsg
,
res
=>
{
...
...
@@ -339,7 +339,7 @@
"sellcommission_GetTYSaleCommissionPeriodsList"
,{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
PeroidsList
=
res
.
data
.
data
;
if
(
!
this
.
$route
.
query
.
PeriodId
){
if
(
!
this
.
$route
.
query
.
PeriodId
||
this
.
$route
.
query
.
isSale
){
this
.
msg
.
PeriodId
=
this
.
PeroidsList
[
0
].
Id
}
this
.
getList
()
...
...
@@ -378,7 +378,7 @@
query
:
{
PeriodId
:
this
.
$route
.
query
.
PeriodId
,
// OutBranchId: item.RB_Branch_Id,
UserId
:
item
.
UserId
,
UserId
:
item
.
UserId
,
blank
:
'y'
,
tab
:
'同业提现详情'
}
...
...
@@ -409,4 +409,4 @@
}
}
</
script
>
\ No newline at end of file
</
script
>
src/components/FinancialModule/domesticCommissionUser.vue
View file @
8f7d6261
...
...
@@ -26,7 +26,14 @@
<div
class=
"flexOne domesticCommissionUser"
>
<div>
<ul
class=
"opUl"
>
<li>
<em>
期数
</em>
<el-select
v-model=
"msg.PeriodId"
size=
"mini"
@
change=
"handleCurrentChange(1)"
>
<el-option
label=
"不限"
:value=
"0"
></el-option>
<el-option
v-for=
"(item,index) in PeriodsList"
:key=
"item.index"
:label=
"item.Name"
:value=
"item.Id"
>
</el-option>
</el-select>
</li>
<li>
<em>
人员
</em>
<el-select
v-model=
"msg.UserId"
size=
"mini"
@
change=
"handleCurrentChange(1)"
filterable
:disabled=
'disabled'
>
...
...
@@ -60,7 +67,7 @@
</el-select>
</li>
</ul>
</div>
<table
v-loading=
"loading"
class=
"singeRowTable"
border=
"0"
cellspacing=
"0"
cellpadding=
"0"
>
...
...
@@ -150,8 +157,8 @@
if
(
this
.
$route
.
query
&&
this
.
$route
.
query
.
PeriodId
)
{
this
.
msg
.
PeriodId
=
this
.
$route
.
query
.
PeriodId
}
this
.
get
List
();
// this.getqishilist()
this
.
get
qishilist
()
this
.
getCompanyList
()
//获取公司
this
.
getEmployee
()
//人员
this
.
getDerpartMent
()
//部门
...
...
@@ -217,8 +224,11 @@
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
PeriodsList
=
res
.
data
.
data
;
if
(
this
.
PeriodsList
&&
this
.
PeriodsList
.
length
>
0
)
{
// this.msg.Periods = Number(this.PeriodsList[0].Id)
if
(
!
this
.
$route
.
query
.
PeriodId
||
this
.
$route
.
query
.
isSale
){
this
.
msg
.
PeriodId
=
this
.
PeriodsList
[
0
].
Id
}
}
this
.
getList
();
}
else
{
this
.
Error
(
res
.
data
.
message
);
...
...
@@ -240,7 +250,7 @@
PeriodId
:
this
.
$route
.
query
.
PeriodId
,
UserId
:
item
.
UserId
,
RB_Branch_Id
:
item
.
RB_Branch_Id
,
RB_Department_Id
:
item
.
RB_Department_Id
,
RB_Department_Id
:
item
.
RB_Department_Id
,
blank
:
'y'
,
tab
:
'国内提现详情'
}
...
...
@@ -267,4 +277,4 @@
}
}
</
script
>
\ No newline at end of file
</
script
>
src/components/sale/ExpectedCommission.vue
0 → 100644
View file @
8f7d6261
This diff is collapsed.
Click to expand it.
src/components/sale/components/OrderList.vue
0 → 100644
View file @
8f7d6261
<
template
>
<div>
<el-table
border
ref=
"multipleTable"
:data=
"OrderList"
:default-sort=
"
{prop: 'null', order: 'null'}"
:sort-by="['Money','Income','PreferTipAmount','PlatformTax','Refund','CostMoney','OrderProfit','DueInMoney']">
<el-table-column
width=
"200"
prop=
"CreateTimeStr"
label=
"订单Id"
show-overflow-tooltip
>
<template
slot-scope=
"scope"
>
<div>
<p
class=
"cursor-pointer c059FF6 fz18 row-c"
@
click=
"goDetails(scope.row)"
>
<el-tag
style=
"margin-right: 5px;"
size=
"mini"
>
{{
scope
.
row
.
OrderTypeName
}}
</el-tag>
<span>
{{
scope
.
row
.
OrderId
}}
</span>
</p>
<p>
{{
scope
.
row
.
CreateTimeStr
}}
</p>
</div>
</
template
>
</el-table-column>
<el-table-column
width=
"200"
prop=
"CreateTimeStr"
label=
"团号"
show-overflow-tooltip
>
<
template
slot-scope=
"scope"
>
<div>
<p
class=
" fz14"
:class=
"
{'cursor-pointer c059FF6':scope.row.OrderType==2}"
@click="scope.row.OrderType==2?goTuanDetails(scope.row):''">
{{
scope
.
row
.
TCNUM
}}
</p>
<p>
出发日期:
{{
scope
.
row
.
StartDate
}}
</p>
</div>
</
template
>
</el-table-column>
<el-table-column
label=
"客人"
show-overflow-tooltip
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
GuestName
}}
</
template
>
</el-table-column>
<el-table-column
prop=
"SaleName"
label=
"销售"
>
</el-table-column>
<el-table-column
prop=
"LureEmpName"
label=
"引流"
>
</el-table-column>
<el-table-column
label=
"商品名称"
show-overflow-tooltip
>
<
template
slot-scope=
"scope"
>
<div
style=
"max-width: 100px;overflow: hidden;text-overflow: ellipsis"
>
{{
scope
.
row
.
Name
}}
</div>
</
template
>
</el-table-column>
<el-table-column
label=
"商品详情"
show-overflow-tooltip
>
<
template
slot-scope=
"scope"
>
<div
style=
"max-width: 100px;overflow: hidden;text-overflow: ellipsis"
>
{{
scope
.
row
.
Description
}}
</div>
</
template
>
</el-table-column>
<el-table-column
sortable
prop=
"Money"
label=
"总金额"
min-width=
"100"
show-overflow-tooltip
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
Money
}}
 
(
{{
scope
.
row
.
CurrencyName
}}
)
</
template
>
</el-table-column>
<el-table-column
sortable
prop=
"Income"
label=
"实收"
>
</el-table-column>
<el-table-column
sortable
prop=
"PreferTipAmount"
label=
"人头小费"
min-width=
"101"
>
</el-table-column>
<el-table-column
sortable
prop=
"PlatformTax"
label=
"手续费"
min-width=
"100"
>
</el-table-column>
<el-table-column
sortable
prop=
"Refund"
label=
"退款"
>
</el-table-column>
<el-table-column
sortable
prop=
"CostMoney"
label=
"成本"
>
</el-table-column>
<el-table-column
sortable
prop=
"DueInMoney"
label=
"待收"
>
<
template
slot-scope=
"scope"
>
<span
:class=
"
{'red':scope.row.DueInMoney>0}">
{{
scope
.
row
.
DueInMoney
}}
</span>
</
template
>
</el-table-column>
<el-table-column
sortable
prop=
"OrderProfit"
label=
"预期利润"
min-width=
"100"
>
<
template
slot-scope=
"scope"
>
<span
:class=
"
{'red':scope.row.OrderProfit>0}">
{{
scope
.
row
.
OrderProfit
}}
</span>
</
template
>
</el-table-column>
<el-table-column
sortable
prop=
"DiscountsMoney"
label=
"优惠"
>
</el-table-column>
<el-table-column
prop=
"StateName"
label=
"状态"
show-overflow-tooltip
>
<
template
slot-scope=
"scope"
>
<span>
{{
scope
.
row
.
StateName
}}
</span>
</
template
>
</el-table-column>
</el-table>
</div>
</template>
<
script
>
export
default
{
props
:
{
OrderList
:
{
type
:
Array
,
require
:
false
},
},
data
()
{
return
{
loading
:
false
,
};
},
watch
:
{
OrderList
:
{
handler
(
val
,
oldVal
)
{
},
deep
:
true
}
},
created
()
{
},
mounted
()
{
},
methods
:
{
}
};
</
script
>
<
style
scoped
>
</
style
>
src/components/sale/components/notification.vue
0 → 100644
View file @
8f7d6261
<
template
>
<div>
<div
class=
"ListCar-form"
></div>
<div
class=
"ListCar-form-box"
>
<div
class=
"ListCar-box"
>
<div
class=
"normalBtn ListCar-close"
@
click=
"close"
>
<i
class=
"el-icon-close"
></i>
</div>
</div>
</div>
</div>
</
template
>
<
script
>
export
default
{
props
:
{
parameters
:
{
type
:
Object
,
require
:
false
},
},
data
()
{
return
{
loading
:
false
,
sysMsgList
:
[],
};
},
watch
:
{
parameters
:
{
handler
:
function
(
val
,
oldVal
)
{
},
deep
:
true
}
},
created
()
{
},
mounted
()
{
},
methods
:
{
// 关闭
close
(){
this
.
$emit
(
'close'
)
},
}
};
</
script
>
<
style
scoped
>
.ListCar-form
{
position
:
fixed
;
top
:
0
;
left
:
0
;
right
:
0
;
bottom
:
0
;
background
:
rgba
(
23
,
23
,
23
,
.5
);
z-index
:
3
;
}
.ListCar-form-box
{
position
:
fixed
;
top
:
0
;
right
:
0
;
bottom
:
0
;
width
:
550px
;
background
:
#ffffff
;
z-index
:
100
;
}
.ListCar-box
{
width
:
100%
;
height
:
100%
;
position
:
relative
;
padding
:
15px
0
;
}
.ListCar-close
{
position
:
absolute
;
left
:
-47px
;
top
:
20%
;
line-height
:
26px
;
}
.ListCar-close
i
{
margin-left
:
3px
;
}
.normalBtn.ListCar-close
{
border-top-right-radius
:
0
;
border-bottom-right-radius
:
0
;
padding
:
0
8px
!important
;
}
.ListCar-header
{
border-bottom
:
-
;
}
.ListCar-header-right
{
border-radius
:
3px
;
padding
:
5px
8px
;
background
:
#fff3e0
;
}
</
style
>
src/components/sale/components/progressComm.vue
0 → 100644
View file @
8f7d6261
<
style
scoped
>
.progress-box
{
flex
:
1
;
display
:
flex
;
margin-bottom
:
25px
;
}
.relative-position
{
/* min-width: 80px; */
flex
:
1
;
margin-right
:
0
;
position
:
relative
;
}
.rate-box
{
position
:
absolute
;
top
:
30px
;
left
:
50%
;
transform
:
translateX
(
-50%
);
color
:
#000
;
z-index
:
9
;
display
:
flex
;
flex-wrap
:
wrap
;
justify-content
:
center
;
}
.sanjiao
{
width
:
0
;
height
:
0
;
margin-left
:
5%
;
border-right
:
4px
solid
transparent
;
border-left
:
4px
solid
transparent
;
border-bottom
:
3px
solid
#CACACA
;
}
.rate
{
min-width
:
20px
;
padding
:
2px
6px
;
background-color
:
#CACACA
!important
;
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
color
:
#666666
;
font-size
:
0.62vw
;
font-family
:
PingFang
SC
;
border-radius
:
7px
;
line-height
:
12px
;
white-space
:
nowrap
;
}
.active-rate
{
background-color
:
#33B3FF
!important
;
color
:
#FFFFFF
!important
;
}
/
deep
/
.relative-position
.el-progress-bar__outer
{
border-radius
:
0
!important
;
}
/
deep
/
.relative-position
.el-progress-bar__inner
{
text-align
:
center
;
border-radius
:
0
!important
;
}
/
deep
/
.relative-position
:first-child
.el-progress
{
border-top-left-radius
:
15px
!important
;
border-bottom-left-radius
:
15px
!important
;
overflow
:
hidden
!important
}
/
deep
/
.relative-position
:last-child
.el-progress
{
border-top-right-radius
:
15px
!important
;
border-bottom-right-radius
:
15px
!important
;
overflow
:
hidden
!important
}
</
style
>
<
template
>
<div>
<div
class=
"progress-box"
>
<!--
{{
commissionratioList
.
AvgLureNum
}}
-
{{
commissionratioList
.
AvfOrderNum
}}
-
{{
commissionratioList
.
CommissionRate
}}
-
{{
commissionratioList
.
Commission
}}
-
{{
commissionratioList
.
CommissionProfit
}}
-->
<div
v-for=
"(item,index) in commissionratioList.CommissionRateList"
:key=
"index"
class=
"relative-position"
>
<!-- :color="commissionratioList.CommissionRate>=item.Rate?colorlists[Math.floor(Math.random()*10)]:colors[Math.floor(Math.random()*10)]" -->
<el-progress
:text-inside=
"true"
:stroke-width=
"20"
:percentage=
"setItemProgress(item)"
:status=
"setItemStatus(item)"
:format=
"setItemText(item)"
:color=
"commissionratioList.AvgLureNum>item.StartValue?customColor[0]:customColor[1]"
>
</el-progress>
<div
class=
"rate-box"
>
<div
class=
"sanjiao"
:style=
"
{'border-bottom-color':commissionratioList.AvgLureNum>item.StartValue?'#33B3FF':'#CACACA'}">
</div>
<div
class=
"rate full-width"
:class=
"
{'active-rate':commissionratioList.AvgLureNum>item.StartValue}">
<i
class=
"el-icon-check"
style=
"font-size:8px"
></i>
{{
item
.
Rate
}}{{
commissionratioList
.
type
==
2
?
'%'
:
''
}}
</div>
</div>
</div>
</div>
</div>
</
template
>
<
script
>
export
default
{
props
:[
'commissionratioList'
],
data
()
{
return
{
customColor
:
[
'rgba(51,179,255,1)'
,
'rgba(222,225,230,1)'
],
colors
:
[
'rgba(42, 48, 54,.2)'
,
'rgba(138, 24, 48,.2)'
,
'rgba(200, 138, 131,.2)'
,
'rgba(84, 221, 226,.2)'
,
'rgba(178, 199, 168,.2)'
,
'rgba(16, 195, 195,.2)'
,
'rgba(0, 21, 68,.2)'
,
'rgba(226, 166, 198,.2)'
,
'rgba(278,17,66,.2)'
,
'rgba(153, 199, 235,.2)'
,
'rgba(34,184,221,.2)'
,
'rgba(221,72,34,.2)'
,
'rgba(204,51,204,.2)'
,
'rgba(255,204,0,.2)'
,
'rgba(77,179,179,.2)'
,
'rgba(196,60,141,.2)'
,
'rgba(195,90,141,.2)'
,
],
colorlists
:
[
'rgba(42, 48, 54, 1)'
,
'rgba(138, 24, 48, 1)'
,
'rgba(200, 138, 131, 1)'
,
'rgba(84, 221, 226, 1)'
,
'rgba(178, 199, 168, 1)'
,
'rgba(16, 195, 195, 1)'
,
'rgba(0, 21, 68, 1)'
,
'rgba(226, 166, 198, 1)'
,
'rgba(278,17,66, 1)'
,
'rgba(153, 199, 235,1)'
,
'rgba(34,184,221,1)'
,
'rgba(221,72,34,1)'
,
'rgba(204,51,204,1)'
,
'rgba(255,204,0,1)'
,
'rgba(77,179,179,1)'
,
'rgba(196,60,141,1)'
,
'rgba(195,90,141,1)'
,
],
};
},
watch
:
{
commissionratioList
:{
handler
(
val
,
oldVal
){
this
.
commissionratioList
=
val
},
deep
:
true
,
immediate
:
true
}
},
mounted
()
{
},
created
()
{
},
methods
:
{
// 设置进度
setItemProgress
(
data
)
{
if
(
this
.
commissionratioList
.
AvgLureNum
>=
data
.
StartValue
&&
this
.
commissionratioList
.
AvfOrderNum
>=
data
.
EndValue
){
return
100
}
else
{
return
100
}
},
// 自定义进度条文字
setItemText
(
row
)
{
if
(
this
.
commissionratioList
.
type
==
2
){
this
.
formatProgress
(
row
)
return
()
=>
{
return
row
.
StartValue2
+
' - '
+
row
.
EndValue2
+
`
${
row
.
StartValue
>=
10000
||
row
.
EndValue
>=
10000
?
'w'
:
''
}
`
}
}
else
if
(
this
.
commissionratioList
.
type
==
1
){
return
()
=>
{
return
`
${
row
.
StartValue
+
' - '
+
row
.
EndValue
}
人`
}
}
else
{
return
()
=>
{
return
`连续
${
row
.
StartValue
}
月`
}
}
},
// 设置当前进度条状态,显示不同颜色
setItemStatus
(
data
)
{
if
(
this
.
commissionratioList
.
AvgLureNum
>=
data
.
StartValue
&&
this
.
commissionratioList
.
AvfOrderNum
>=
data
.
EndValue
){
return
'exception'
}
},
formatProgress
(
data
){
let
obj
=
JSON
.
parse
(
JSON
.
stringify
(
data
))
if
(
obj
.
StartValue
>=
10000
)
{
data
.
StartValue2
=
obj
.
StartValue
/
10000
}
else
{
data
.
StartValue2
=
obj
.
StartValue
}
if
(
obj
.
EndValue
>=
10000
)
{
data
.
EndValue2
=
obj
.
EndValue
/
10000
}
else
{
data
.
EndValue2
=
obj
.
EndValue
}
},
}
};
</
script
>
src/components/sale/sale.vue
View file @
8f7d6261
...
...
@@ -53,7 +53,7 @@
<el-row
:gutter=
"20"
>
<el-col
:span=
"12"
>
<div
class=
"el-col-div ownScrollbarStyle PersonalData_l"
>
<div
class=
"l_top"
>
<div
class=
"l_top"
style=
"position: relative;"
>
<img
v-if=
"data.icon !=null && data.icon !='' "
:src=
"data.icon"
alt=
""
class=
"tx_img"
:onerror=
'defaultHeadImg'
>
<img
v-else
src=
"../../assets/img/default_head_img.jpg"
alt=
""
alt=
""
class=
"tx_img"
>
...
...
@@ -61,15 +61,21 @@
<span>
{{
data
.
emName
}}
</span>
<span>
{{
data
.
postName
}}
</span>
</div>
<img
src=
"../../assets/img/jinbin@2x.png"
alt=
""
class=
"img"
>
<div
class=
"royalty"
>
<div
style=
"display: flex;justify-content: space-between;"
>
<!--
<img
style=
"cursor: pointer;"
src=
"../../assets/img/jinbin@2x.png"
alt=
""
class=
"img"
@
click=
"goAnticipate(1)"
>
-->
<div
class=
"royalty"
style=
"cursor: pointer;"
@
click=
"goAnticipate(1)"
>
<div
class=
"tc"
>
<span>
¥
</span>
<span>
{{
data
.
totalCommission
}}
</span>
<p>
<span>
¥
</span>
<span>
{{
data
.
totalCommission
}}
</span>
</p>
<p
v-if=
"data.peopelBonus"
>
{{
data
.
peopelBonus
}}
/人
</p>
<p
style=
"color: #BDBDBD;font-size: 13px;padding: 0 0 5px 0;"
>
{{
data
.
periodsName
}}
期
</p>
</div>
<!--
<span>
¥
<p
class=
"tc"
>
{{
data
.
totalCommission
}}
</p></span>
-->
<div
stye=
"font-size: 16px;color: #666666;display: block;display: inline-block;"
>
<span>
本月提成
</span>
<span>
出境提成
</span>
<template
v-if=
"data.comissionGeneralId>0"
>
<span
v-if=
"data.share==1"
class=
"Sale_Share"
style=
"color:#333;cursor:default;"
>
已确认
</span>
<span
v-if=
"data.share==0"
@
click=
"tichengDialog=true"
class=
"Sale_Share"
...
...
@@ -77,6 +83,39 @@
</
template
>
</div>
</div>
<div
style=
"border-left: 1px solid #eeeeee;width: 1px;"
>
</div>
<!-- <img style="cursor: pointer;" src="../../assets/img/jinbin@2x.png" alt="" class="img" @click="goAnticipate(2)"> -->
<div
style=
"cursor: pointer;margin-left: 0;"
class=
"royalty"
@
click=
"goAnticipate(2)"
>
<div
class=
"tc"
>
<p>
<span>
¥
</span>
<span>
{{data.gnSaleCommission}}
</span>
</p>
<p
style=
"color: #BDBDBD;font-size: 13px;padding: 0 0 5px 0;"
>
{{data.gnPeriodsName}}期
</p>
</div>
<div
stye=
"font-size: 16px;color: #666666;display: block;display: inline-block;"
>
<span>
国内提成
</span>
</div>
</div>
<div
style=
"border-left: 1px solid #eeeeee;width: 1px;"
>
</div>
<!-- <img style="cursor: pointer;" src="../../assets/img/jinbin@2x.png" alt="" class="img" @click="goAnticipate(3)"> -->
<div
style=
"cursor: pointer;margin-left: 0;"
class=
"royalty"
@
click=
"goAnticipate(3)"
>
<div
class=
"tc"
>
<p>
<span>
¥
</span>
<span>
{{data.dxSaleCommission}}
</span>
</p>
<p
style=
"color: #BDBDBD;font-size: 13px;padding: 0 0 5px 0;"
>
{{data.dxPeriodsName}}期
</p>
</div>
<div
stye=
"font-size: 16px;color: #666666;display: block;display: inline-block;"
>
<span>
历史单项提成
</span>
</div>
</div>
<el-tooltip
class=
"item"
effect=
"dark"
content=
"预期提成"
placement=
"top"
>
<i
class=
"el-icon-document"
@
click=
"goAnticipate(4)"
style=
"position: absolute;right: -0;top: -10px;cursor: pointer;color: #33B3FF;"
></i>
</el-tooltip>
</div>
</div>
<div
class=
"order"
>
...
...
@@ -599,10 +638,31 @@
}
},
methods
:
{
// 销售预期提成
goAnticipate
(
type
){
let
name
if
(
type
==
1
){
name
=
'TradeTicketUserDetails'
}
else
if
(
type
==
2
){
name
=
'domesticCommissionUser'
}
else
if
(
type
==
3
){
name
=
'ServiceCommissionUser'
}
else
if
(
type
==
4
){
name
=
'saleExpectedCommission'
}
this
.
$router
.
push
({
name
:
name
,
query
:
{
isSale
:
1
,
blank
:
'y'
}
});
},
iWorkbench
()
{
this
.
apipost
(
'customerIndex_post_GetMySelfSellInfo'
,
{},
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
data
=
res
.
data
.
data
;
console
.
log
(
this
.
data
,
'========'
)
this
.
myScore
=
res
.
data
.
data
.
taskCapacityList
;
this
.
myScore
.
forEach
(
item
=>
{
if
(
item
.
score
<
60
)
{
...
...
@@ -825,7 +885,7 @@
},
//锅炉除开标点符号的字数
getFilteredNum
(
val
)
{
//var pattern=new RegExp("[`~%!@#$^=''?~!@#¥……&——‘”“'?*()(),,。.、
<>
《》\\
[
\\
]
【】\\“\\”
{}
=+-|
\
/
:;
;:
]
");
//var pattern=new RegExp("[`~%!@#$^=''?~!@#¥……&——‘”“'?*()(),,。.、
<>
《》\\
[
\\
]
【】\\“\\”
{}
=+-|
\
/
:;
;:
]
");
var pattern = new RegExp("
[
`~%!@#$^=''?~!@#¥……&——‘”“'?*()(),,。.、<>《》:;; +-=\\s]");
//[]内输入你要过滤的字符,这里基本包含全部的标点符号,\\是转义字符
var rs = "";
...
...
src/router/config.js
View file @
8f7d6261
...
...
@@ -8,7 +8,7 @@ import supplierIndex from '../components/SupplierIndex'
import
automaticLogin
from
'../components/automaticLogin'
export
default
{
routes
:
[{
path
:
'/'
,
path
:
'/'
,
name
:
'login'
,
component
:
login
},
...
...
@@ -2266,7 +2266,7 @@ export default {
meta
:
{
title
:
'签证已确认'
},
},
},
{
path
:
'/TravelManager'
,
//团控配置
name
:
'TravelManager'
,
...
...
@@ -5615,6 +5615,14 @@ export default {
title
:
'销售'
}
},
{
path
:
'/saleExpectedCommission'
,
name
:
'saleExpectedCommission'
,
component
:
resolve
=>
require
([
'@/components/sale/ExpectedCommission'
],
resolve
),
meta
:
{
title
:
'销售预期提成'
}
},
{
path
:
'/platformManagement'
,
name
:
'platformManagement'
,
...
...
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