Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Y
ydLife
Overview
Overview
Details
Activity
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Sweet Zhang
ydLife
Commits
111ca407
Commit
111ca407
authored
May 26, 2021
by
sunchao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
薪资单接口对接
parent
87400cab
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
252 additions
and
183 deletions
+252
-183
src/app/my/my.service.ts
+14
-0
src/app/my/salary-detail/salary-detail.component.html
+48
-47
src/app/my/salary-detail/salary-detail.component.ts
+154
-125
src/app/my/salary-first-year/salary-first-year.component.ts
+25
-1
src/app/my/salary/salary.component.html
+4
-4
src/app/my/salary/salary.component.ts
+7
-6
No files found.
src/app/my/my.service.ts
View file @
111ca407
...
@@ -640,4 +640,18 @@ export class MyService {
...
@@ -640,4 +640,18 @@ export class MyService {
return
res
;
return
res
;
});
});
}
}
//佣金列表
querySalaryDetail
(
param
){
const
url
=
this
.
ydapi
+
'/practitioner/querySalaryDetail'
;
return
this
.
http
.
post
(
url
,
JSON
.
stringify
(
param
));
}
//薪资对应保单的接口
searchStaffSalaryDetails
(
param
){
const
url
=
this
.
ydapi
+
'/practitioner/searchStaffSalaryDetails'
;
return
this
.
http
.
post
(
url
,
JSON
.
stringify
(
param
));
}
}
}
src/app/my/salary-detail/salary-detail.component.html
View file @
111ca407
...
@@ -5,84 +5,84 @@
...
@@ -5,84 +5,84 @@
<div class="next">下一期<span class="iconfont icon-ar-r"></span></div>
<div class="next">下一期<span class="iconfont icon-ar-r"></span></div>
</div> -->
</div> -->
<div
class=
"price"
>
<div
class=
"price"
>
<div
class=
"pre"
><span
class=
"iconfont icon-fanhui"
></span>
上一期
</div>
<div
class=
"pre"
(
click
)="
querySalaryDetail
('
pre
')"
><span
class=
"iconfont icon-fanhui"
></span>
上一期
</div>
<div
class=
"salay"
>
¥
30,000.25
</div>
<div
class=
"salay"
>
¥
{{after_tax_comis | number: "1.2-2"}}
</div>
<div
class=
"next"
>
下一期
<span
class=
"iconfont icon-ar-r"
></span></div>
<div
class=
"next"
(
click
)="
querySalaryDetail
('
next
')"
>
下一期
<span
class=
"iconfont icon-ar-r"
></span></div>
</div>
</div>
</div>
</div>
<div
class=
"content_wrapper"
>
<div
class=
"content_wrapper"
>
<div
class=
"part"
>
<div
class=
"part"
>
<div
class=
"item"
>
<div
class=
"item"
>
<div
class=
"title"
>
个人销售(A)
</div>
<div
class=
"title"
>
个人销售(A)
</div>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
(
fycSalesInfo
.
SalaryName
,
1
)"
*
ngIf=
"fycSalesInfo"
>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
(
'首年度销售佣金',
1
,
1
)"
*
ngIf=
"fycSalesInfo"
>
<span>
{{fycSalesInfo.SalaryName}}
</span>
<span>
首年度销售佣金
</span>
<span
class=
"red"
>
18,505.00
<i
class=
"iconfont icon-ar-r"
></i>
</span>
<span
class=
"red"
>
{{fycSalesInfo.commission | number: "1.2-2" }}
<i
class=
"iconfont icon-ar-r"
></i>
</span>
</div>
</div>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
(
rycSalesInfo
.
SalaryName
,
1
)"
*
ngIf=
"rycSalesInfo"
>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
(
'续年度销售佣金',
1
,
2
)"
*
ngIf=
"rycSalesInfo"
>
<span>
{{rycSalesInfo.SalaryName}}
</span>
<span>
续年度销售佣金
</span>
<span
class=
"red"
>
225.00
<i
class=
"iconfont icon-ar-r"
></i></span>
<span
class=
"red"
>
{{rycSalesInfo.commission | number: "1.2-2"}}
<i
class=
"iconfont icon-ar-r"
></i></span>
</div>
</div>
</div>
</div>
<div
class=
"item"
>
<div
class=
"item"
>
<div
class=
"title"
>
销售管理(B)
</div>
<div
class=
"title"
>
销售管理(B)
</div>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
(
fycTutorInfo
.
SalaryName
,
1
)"
*
ngIf=
"fycTutorInfo"
>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
(
'首年度辅导奖金',
1
,
3
)"
*
ngIf=
"fycTutorInfo"
>
<span>
{{fycTutorInfo.SalaryName}}
</span>
<span>
首年度辅导奖金
</span>
<span
class=
"red"
>
18,505.00
<i
class=
"iconfont icon-ar-r"
></i></span>
<span
class=
"red"
>
{{fycTutorInfo.commission | number: "1.2-2"}}
<i
class=
"iconfont icon-ar-r"
></i></span>
</div>
</div>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
(
rycTutorInfo
.
SalaryName
,
1
)"
*
ngIf=
"rycTutorInfo"
>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
(
'续年度辅导奖金',
1
,
4
)"
*
ngIf=
"rycTutorInfo"
>
<span>
{{rycTutorInfo.SalaryName}}
</span>
<span>
续年度辅导奖金
</span>
<span
class=
"red"
>
225.00
<i
class=
"iconfont icon-ar-r"
></i></span>
<span
class=
"red"
>
{{rycTutorInfo.commission | number: "1.2-2"}}
<i
class=
"iconfont icon-ar-r"
></i></span>
</div>
</div>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
(
fycMeritsInfo
.
SalaryName
,
2
)"
*
ngIf=
"fycMeritsInfo"
>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
(
'首年度绩效奖金',
2
,
5
)"
*
ngIf=
"fycMeritsInfo"
>
<span>
{{fycMeritsInfo.SalaryName}}
</span>
<span>
首年度绩效奖金
</span>
<span
class=
"red"
>
18,505.00
<i
class=
"iconfont icon-ar-r"
></i></span>
<span
class=
"red"
>
{{fycMeritsInfo.commission | number: "1.2-2"}}
<i
class=
"iconfont icon-ar-r"
></i></span>
</div>
</div>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
(
rycMeritsInfo
.
SalaryName
,
2
)"
*
ngIf=
"rycMeritsInfo"
>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
(
'续年度绩效奖金',
2
,
6
)"
*
ngIf=
"rycMeritsInfo"
>
<span>
{{rycMeritsInfo.SalaryName}}
</span>
<span>
续年度绩效奖金
</span>
<span
class=
"red"
>
225.00
<i
class=
"iconfont icon-ar-r"
></i></span>
<span
class=
"red"
>
{{rycMeritsInfo.commission | number: "1.2-2"}}
<i
class=
"iconfont icon-ar-r"
></i></span>
</div>
</div>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
('推介奖金',
1
)
"
>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
('推介奖金',
1
,
7
)"
*
ngIf=
"recommendAward
"
>
<span>
推介奖金
</span>
<span>
推介奖金
</span>
<span
class=
"red"
>
225.00
<i
class=
"iconfont icon-ar-r"
></i></span>
<span
class=
"red"
>
{{recommendAward.commission | number: "1.2-2"}}
<i
class=
"iconfont icon-ar-r"
></i></span>
</div>
</div>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
('体系推介奖',
2
)
"
>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
('体系推介奖',
8
)"
*
ngIf=
"systemRecommendAward
"
>
<span>
体系推介奖金
</span>
<span>
体系推介奖金
</span>
<span
class=
"red"
>
225.00
<i
class=
"iconfont icon-ar-r"
></i></span>
<span
class=
"red"
>
{{systemRecommendAward.commission | number: "1.2-2"}}
<i
class=
"iconfont icon-ar-r"
></i></span>
</div>
</div>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
('特别管理奖',
1
)
"
>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
('特别管理奖',
1
,
9
)"
*
ngIf=
"specialManagementAward
"
>
<span>
特别管理奖金
</span>
<span>
特别管理奖金
</span>
<span
class=
"red"
>
225.00
<i
class=
"iconfont icon-ar-r"
></i></span>
<span
class=
"red"
>
{{specialManagementAward.commission | number: "1.2-2"}}
<i
class=
"iconfont icon-ar-r"
></i></span>
</div>
</div>
</div>
</div>
<div
class=
"item"
>
<div
class=
"item"
>
<div
class=
"title"
style=
"justify-content: inherit;"
(
click
)="
otherToastShow =
true"
>
<div
class=
"title"
style=
"justify-content: inherit;"
(
click
)="
otherToastShow =
true"
>
其他加扣款(C)
其他加扣款(C)
<span
class=
"iconfont icon-wenhao"
style=
"margin-top: 3px;color: #f8002e;margin-left: 3px;"
></span></div>
<span
class=
"iconfont icon-wenhao"
style=
"margin-top: 3px;color: #f8002e;margin-left: 3px;"
></span></div>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
('其他税前加扣款',
3
)
"
>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
('其他税前加扣款',
3
,
10
)"
*
ngIf=
"otherPreTaxDeduction
"
>
<span>
其它税前加扣款
</span>
<span>
其它税前加扣款
</span>
<span
class=
"red"
>
225.00
<i
class=
"iconfont icon-ar-r"
></i></span>
<span
class=
"red"
>
{{otherPreTaxDeduction.commission | number: "1.2-2"}}
<i
class=
"iconfont icon-ar-r"
></i></span>
</div>
</div>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
('公司激励奖',
3
)
"
>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
('公司激励奖',
3
,
11
)"
*
ngIf=
"IncentiveBonus
"
>
<span>
公司激励奖金
</span>
<span>
公司激励奖金
</span>
<span
class=
"red"
>
225.00
<i
class=
"iconfont icon-ar-r"
></i></span>
<span
class=
"red"
>
{{IncentiveBonus.commission | number: "1.2-2"}}
<i
class=
"iconfont icon-ar-r"
></i></span>
</div>
</div>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
('加码奖金',
3
)
"
>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
('加码奖金',
3
,
12
)"
*
ngIf=
"addWeight
"
>
<span>
加码奖金
</span>
<span>
加码奖金
</span>
<span
class=
"red"
>
225.00
<i
class=
"iconfont icon-ar-r"
></i></span>
<span
class=
"red"
>
{{addWeight.commission | number: "1.2-2"}}
<i
class=
"iconfont icon-ar-r"
></i></span>
</div>
</div>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
('季度奖金',
3
)
"
>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
('季度奖金',
3
,
13
)"
*
ngIf=
"quarterlyBonus
"
>
<span>
季度奖金
</span>
<span>
季度奖金
</span>
<span
class=
"red"
>
225.00
<i
class=
"iconfont icon-ar-r"
></i></span>
<span
class=
"red"
>
{{quarterlyBonus.commission | number: "1.2-2"}}
<i
class=
"iconfont icon-ar-r"
></i></span>
</div>
</div>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
('银盾在线佣金',
3
)
"
>
<div
class=
"item_detail"
(
click
)="
jumpToFirstYearSales
('银盾在线佣金',
3
,
14
)"
*
ngIf=
"onlineAward
"
>
<span>
银盾在线佣金
</span>
<span>
银盾在线佣金
</span>
<span
class=
"red"
>
225.00
<i
class=
"iconfont icon-ar-r"
></i></span>
<span
class=
"red"
>
{{onlineAward.commission | number: "1.2-2"}}
<i
class=
"iconfont icon-ar-r"
></i></span>
</div>
</div>
</div>
</div>
<div
class=
"item"
>
<div
class=
"item"
>
<div
class=
"title"
>
<div
class=
"title"
>
<span>
佣金合计(A+B+C)
</span>
<span>
佣金合计(A+B+C)
</span>
<span
class=
"red"
>
225.00
</span>
<span
class=
"red"
>
{{totalCommission | number: "1.2-2"}}
</span>
</div>
</div>
</div>
</div>
</div>
</div>
...
@@ -90,19 +90,20 @@
...
@@ -90,19 +90,20 @@
<div
class=
"item"
>
<div
class=
"item"
>
<div
class=
"title"
>
<div
class=
"title"
>
<span>
代扣个人所得税/增值税/附加税(D)
</span>
<span>
代扣个人所得税/增值税/附加税(D)
</span>
<span
class=
"red"
>
225.00
</span>
<span
class=
"red"
>
{{deduction | number: "1.2-2" }}
</span>
</div>
</div>
<a
style=
"color:#2c67a0;"
(
click
)="
lookTak
()"
>
点击查看个人所得税明细
</a>
</div>
</div>
</div>
</div>
<div
class=
"part"
>
<div
class=
"part"
>
<div
class=
"item"
>
<div
class=
"item"
>
<div
class=
"title"
>
<div
class=
"title"
>
<span>
本期实领(A+B+C-D)
</span>
<span>
本期实领(A+B+C-D)
</span>
<span
class=
"red"
>
225.00
</span>
<span
class=
"red"
>
{{after_tax_comis | number: "1.2-2"}}
</span>
</div>
</div>
</div>
</div>
</div>
</div>
<a
style=
"color:#2c67a0;margin-left: 10px;"
(
click
)="
lookTak
()"
>
点击查看个人所得税明细
</a>
</div>
</div>
<div
*
ngIf=
"taxToastShow"
>
<div
*
ngIf=
"taxToastShow"
>
<ydlife-detail-modal
[
application
]="
1
"
<ydlife-detail-modal
[
application
]="
1
"
...
@@ -124,29 +125,29 @@
...
@@ -124,29 +125,29 @@
<div
class=
"tax_item"
>
<div
class=
"tax_item"
>
<div>
<div>
<span>
本期应税所得
</span>
<span>
本期应税所得
</span>
<span
class=
"red"
>
1200
</span>
<span
class=
"red"
>
{{sumcommission | number: "1.2-2"}}
</span>
</div>
</div>
<div>
<div>
<span>
年度累计应税所得
</span>
<span>
年度累计应税所得
</span>
<span
class=
"red"
>
600
</span>
<span
class=
"red"
>
{{total_commission | number: "1.2-2"}}
</span>
</div>
</div>
<div>
<div>
<span>
预扣率
</span>
<span>
预扣率
</span>
<span
class=
"red"
>
50%
</span>
<span
class=
"red"
></span>
</div>
</div>
</div>
</div>
<div
class=
"tax_item"
>
<div
class=
"tax_item"
>
<div>
<div>
<span>
累计应扣所得税(A)
</span>
<span>
累计应扣所得税(A)
</span>
<span
class=
"red"
>
500
</span>
<span
class=
"red"
>
{{total_personal_tax | number: "1.2-2"}}
</span>
</div>
</div>
<div>
<div>
<span>
累计已扣所得税(B)
</span>
<span>
累计已扣所得税(B)
</span>
<span
class=
"red"
>
10
</span>
<span
class=
"red"
>
{{total_paid | number: "1.2-2"}}
</span>
</div>
</div>
<div>
<div>
<span>
本期应扣所得税(A-B)
</span>
<span>
本期应扣所得税(A-B)
</span>
<span
class=
"red"
>
490
</span>
<span
class=
"red"
>
{{personal_tax | number: "1.2-2" }}
</span>
</div>
</div>
</div>
</div>
</div>
</div>
...
...
src/app/my/salary-detail/salary-detail.component.ts
View file @
111ca407
import
{
Component
,
OnInit
}
from
'@angular/core'
;
import
{
Component
,
OnInit
}
from
'@angular/core'
;
import
{
LifeCommonService
}
from
'../../common/life-common.service'
;
import
{
LifeCommonService
}
from
'../../common/life-common.service'
;
import
{
ActivatedRoute
,
Router
}
from
"@angular/router"
;
import
{
ActivatedRoute
,
Router
}
from
"@angular/router"
;
import
{
MyService
}
from
'../my.service'
;
import
{
ModalService
,
ToastService
}
from
'ng-zorro-antd-mobile'
;
@
Component
({
@
Component
({
selector
:
'ydlife-salary-detail'
,
selector
:
'ydlife-salary-detail'
,
...
@@ -9,7 +10,9 @@ import { ActivatedRoute,Router } from "@angular/router";
...
@@ -9,7 +10,9 @@ import { ActivatedRoute,Router } from "@angular/router";
styleUrls
:
[
'./salary-detail.component.scss'
]
styleUrls
:
[
'./salary-detail.component.scss'
]
})
})
export
class
SalaryDetailComponent
implements
OnInit
{
export
class
SalaryDetailComponent
implements
OnInit
{
monDtlPeriod
:
string
;
practitionerIdEG
:
any
;
practitionerId
:
any
;
payScaleInfos
:
Array
<
any
>
;
takFlag
:
boolean
=
false
;
takFlag
:
boolean
=
false
;
taxToastShow
:
boolean
;
taxToastShow
:
boolean
;
otherToastShow
:
boolean
;
otherToastShow
:
boolean
;
...
@@ -42,132 +45,141 @@ export class SalaryDetailComponent implements OnInit {
...
@@ -42,132 +45,141 @@ export class SalaryDetailComponent implements OnInit {
quarterlyBonus
:
any
=
null
;
quarterlyBonus
:
any
=
null
;
//银盾在线奖
//银盾在线奖
onlineAward
:
any
=
null
;
onlineAward
:
any
=
null
;
constructor
(
public
lifeCommonService
:
LifeCommonService
,
years
:
any
;
month
:
any
;
agent_id
:
any
;
//abc佣奖总和
totalCommission
:
string
;
//扣款项
deduction
:
string
;
//本期应税所得-》含税佣金合计
sumcommission
:
number
;
//年度累计应税所得 -> 累计税前收入
total_commission
:
number
;
//累计应扣所得税-> 累计应缴税额
total_personal_tax
:
number
;
//本期应扣所得税 -> 本月应缴个人所得税
personal_tax
:
number
;
//累计已扣所得税 -> 累计已缴税额
total_paid
:
number
;
//本期实领
after_tax_comis
:
number
;
constructor
(
private
_toast
:
ToastService
,
public
lifeCommonService
:
LifeCommonService
,
private
activatedRoute
:
ActivatedRoute
,
private
activatedRoute
:
ActivatedRoute
,
private
router
:
Router
)
{
}
private
router
:
Router
,
private
myService
:
MyService
)
{
}
ngOnInit
()
{
ngOnInit
()
{
this
.
monDtlPeriod
=
this
.
activatedRoute
.
snapshot
.
queryParams
.
monDtlPeriod
?
this
.
activatedRoute
.
snapshot
.
queryParams
.
monDtlPeriod
:
null
;
this
.
practitionerIdEG
=
JSON
.
parse
(
localStorage
.
getItem
(
'lifeCustomerInfo'
))[
'practitionerIdEG'
];
this
.
lifeCommonService
.
setTitle
(
`
${
this
.
lifeCommonService
.
getDate
(
this
.
monDtlPeriod
)}
本期实发佣金`
);
this
.
practitionerId
=
JSON
.
parse
(
localStorage
.
getItem
(
'lifeCustomerInfo'
))[
'practitionerId'
]
this
.
salaryDetailsList
=
[
this
.
payScaleListQuery
();
{
this
.
years
=
this
.
activatedRoute
.
snapshot
.
queryParams
.
years
?
this
.
activatedRoute
.
snapshot
.
queryParams
.
years
:
null
;
"Project_id"
:
"54DB1075-AEF2-5F4C-ABDF-899F9EB66439"
,
this
.
month
=
this
.
activatedRoute
.
snapshot
.
queryParams
.
month
?
this
.
activatedRoute
.
snapshot
.
queryParams
.
month
:
null
;
"SalaryName"
:
"银盾首年度销售佣金"
,
this
.
agent_id
=
this
.
activatedRoute
.
snapshot
.
queryParams
.
agent_id
?
this
.
activatedRoute
.
snapshot
.
queryParams
.
agent_id
:
null
;
"SalaryType"
:
"业绩佣金"
,
this
.
lifeCommonService
.
setTitle
(
`
${
this
.
years
}
年
${
this
.
month
}
月本期实发佣金`
);
"commission"
:
348359.37
,
this
.
querySalaryDetail
(
null
);
},
{
}
"Project_id"
:
"C6D9AEC2-18DF-0404-0FE6-AAB659A32E0F"
,
"SalaryName"
:
"银盾续年度销售佣金"
,
querySalaryDetail
(
type
){
"SalaryType"
:
"业绩佣金"
,
if
(
type
!=
null
){
"commission"
:
93373.27
,
for
(
let
i
=
0
;
i
<
this
.
payScaleInfos
.
length
;
i
++
){
},
{
if
(
this
.
payScaleInfos
[
i
][
'years'
]
==
this
.
years
&&
this
.
payScaleInfos
[
i
][
'month'
]
==
this
.
month
){
"Project_id"
:
"E55EC426-65E2-2AD5-4AA7-9B821396C1F4"
,
//上一期
"SalaryName"
:
"银盾首年度辅导奖金"
,
if
(
type
==
'pre'
){
"SalaryType"
:
"业绩佣金"
,
if
(
i
==
this
.
payScaleInfos
.
length
-
1
){
"commission"
:
93373.27
,
const
toast
=
ToastService
.
show
(
'已到第一期薪资!'
,
0
);
},
setTimeout
(()
=>
{
{
ToastService
.
hide
();
"Project_id"
:
"F9E5ED14-7248-A5D7-490D-651399E814A6"
,
},
3000
);
"SalaryName"
:
"银盾续年度辅导奖金"
,
return
;
"SalaryType"
:
"业绩佣金"
,
}
"commission"
:
20698.46
,
this
.
month
=
this
.
payScaleInfos
[
i
+
1
][
'month'
];
},
this
.
years
=
this
.
payScaleInfos
[
i
+
1
][
'years'
];
{
this
.
lifeCommonService
.
setTitle
(
`
${
this
.
years
}
年
${
this
.
month
}
月本期实发佣金`
);
"Project_id"
:
"DB5B8AB9-B904-BA9D-F6DC-F1E7FD4A60DA"
,
this
.
initSalay
();
"SalaryName"
:
"银盾管理奖金-首年度绩效奖金"
,
break
;
"SalaryType"
:
"业绩佣金"
,
}
"commission"
:
348359.37
,
//下一期
},
if
(
type
==
'next'
){
{
if
(
i
==
0
){
"Project_id"
:
"0F70B51D-C7D6-316D-8EDC-CFBC7A5D4551"
,
const
toast
=
ToastService
.
show
(
'已到最后一期薪资!'
,
0
);
"SalaryName"
:
"银盾管理奖金-续年度续缴奖金"
,
setTimeout
(()
=>
{
"SalaryType"
:
"业绩佣金"
,
ToastService
.
hide
();
"commission"
:
20698.46
,
},
3000
);
},
return
;
{
}
"Project_id"
:
"6EDF61DF-7C16-2625-9A54-D5E03CA7E6B1"
,
this
.
month
=
this
.
payScaleInfos
[
i
-
1
][
'month'
];
"SalaryName"
:
"银盾推介奖金-同体系/跨体系推介奖金"
,
this
.
years
=
this
.
payScaleInfos
[
i
-
1
][
'years'
];
"SalaryType"
:
"业绩佣金"
,
this
.
lifeCommonService
.
setTitle
(
`
${
this
.
years
}
年
${
this
.
month
}
月本期实发佣金`
);
"commission"
:
20698.46
,
this
.
initSalay
();
},
break
;
{
}
"Project_id"
:
"DDCCD63D-EE47-5953-8CA0-CFAA83CB9A5E"
,
}
"SalaryName"
:
"银盾推介奖金-推介体系奖金"
,
"SalaryType"
:
"业绩佣金"
,
"commission"
:
20698.46
,
},
{
"Project_id"
:
"A09E7626-B77C-79A0-CC93-D929BCBB7B35"
,
"SalaryName"
:
"银盾管理奖金-业务合伙人特别管理奖金"
,
"SalaryType"
:
"业绩佣金"
,
"commission"
:
348359.37
,
},
{
"Project_id"
:
"91E8A0DD-8696-9964-CD35-AEBA6C8FDF19"
,
"SalaryName"
:
"其它税前加扣款"
,
"SalaryType"
:
"加扣款项"
,
"commission"
:
17130.65
,
},
{
"Project_id"
:
"45C0E205-653A-641B-1A35-C5C4148B1DA6"
,
"SalaryName"
:
"公司激励奖金"
,
"SalaryType"
:
"加扣款项"
,
"commission"
:
17130.65
,
},
{
"Project_id"
:
"FC664684-4CBB-E3EC-FEC4-02FDDCAB4A02"
,
"SalaryName"
:
"加码奖金"
,
"SalaryType"
:
"加扣款项"
,
"commission"
:
17130.65
,
},
{
"Project_id"
:
"105B9197-7B64-5AE6-AC47-C15AA857DDC5"
,
"SalaryName"
:
"季度奖金"
,
"SalaryType"
:
"加扣款项"
,
"commission"
:
17130.65
,
},
{
"Project_id"
:
"12C24EDF-83D7-081C-AE2C-085031C4DCAF"
,
"SalaryName"
:
"银盾在线佣金"
,
"SalaryType"
:
"加扣款项"
,
"commission"
:
348359.37
,
}
]
for
(
let
i
=
0
;
i
<
this
.
salaryDetailsList
.
length
;
i
++
){
if
(
this
.
salaryDetailsList
[
i
][
'Project_id'
]
===
'54DB1075-AEF2-5F4C-ABDF-899F9EB66439'
){
this
.
fycSalesInfo
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'Project_id'
]
===
'C6D9AEC2-18DF-0404-0FE6-AAB659A32E0F'
){
this
.
rycSalesInfo
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'Project_id'
]
===
'E55EC426-65E2-2AD5-4AA7-9B821396C1F4'
){
this
.
fycTutorInfo
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'Project_id'
]
===
'F9E5ED14-7248-A5D7-490D-651399E814A6'
){
this
.
rycTutorInfo
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'Project_id'
]
===
'DB5B8AB9-B904-BA9D-F6DC-F1E7FD4A60DA'
){
this
.
fycMeritsInfo
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'Project_id'
]
===
'0F70B51D-C7D6-316D-8EDC-CFBC7A5D4551'
){
this
.
rycMeritsInfo
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'Project_id'
]
===
'6EDF61DF-7C16-2625-9A54-D5E03CA7E6B1'
){
this
.
recommendAward
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'Project_id'
]
===
'DDCCD63D-EE47-5953-8CA0-CFAA83CB9A5E'
){
this
.
systemRecommendAward
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'Project_id'
]
===
'A09E7626-B77C-79A0-CC93-D929BCBB7B35'
){
this
.
specialManagementAward
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'Project_id'
]
===
'91E8A0DD-8696-9964-CD35-AEBA6C8FDF19'
){
this
.
otherPreTaxDeduction
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'Project_id'
]
===
'45C0E205-653A-641B-1A35-C5C4148B1DA6'
){
this
.
IncentiveBonus
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'Project_id'
]
===
'FC664684-4CBB-E3EC-FEC4-02FDDCAB4A02'
){
this
.
addWeight
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'Project_id'
]
===
'105B9197-7B64-5AE6-AC47-C15AA857DDC5'
){
this
.
quarterlyBonus
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'Project_id'
]
===
'12C24EDF-83D7-081C-AE2C-085031C4DCAF'
){
this
.
onlineAward
=
this
.
salaryDetailsList
[
i
];
}
else
{
break
;
}
}
}
this
.
router
.
navigate
([
'/salary_detail'
],{
queryParams
:
{
years
:
this
.
years
,
month
:
this
.
month
,
agent_id
:
this
.
agent_id
},
replaceUrl
:
true
});
const
param
=
{
years
:
this
.
years
,
month
:
this
.
month
,
agent_id
:
this
.
agent_id
}
}
this
.
myService
.
querySalaryDetail
(
param
).
subscribe
((
res
)
=>
{
this
.
totalCommission
=
res
[
'data'
][
'abc'
];
this
.
deduction
=
res
[
'data'
][
'd'
];
this
.
salaryDetailsList
=
res
[
'data'
][
'list'
];
if
(
this
.
salaryDetailsList
&&
this
.
salaryDetailsList
.
length
>
0
){
for
(
let
i
=
0
;
i
<
this
.
salaryDetailsList
.
length
;
i
++
){
//本期应税所得
this
.
sumcommission
=
this
.
salaryDetailsList
[
0
][
'sumcommission'
];
//年度累计应税所得
this
.
total_commission
=
this
.
salaryDetailsList
[
0
][
'total_commission'
];
//累计应扣所得税
this
.
total_personal_tax
=
this
.
salaryDetailsList
[
0
][
'total_personal_tax'
];
//累计已扣所得税
this
.
total_paid
=
this
.
salaryDetailsList
[
0
][
'total_paid'
];
//本期应扣所得税
this
.
personal_tax
=
this
.
salaryDetailsList
[
0
][
'personal_tax'
];
this
.
after_tax_comis
=
this
.
salaryDetailsList
[
0
][
'after_tax_comis'
];
if
(
this
.
salaryDetailsList
[
i
][
'project_id'
]
===
'54DB1075-AEF2-5F4C-ABDF-899F9EB66439'
){
this
.
fycSalesInfo
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'project_id'
]
===
'C6D9AEC2-18DF-0404-0FE6-AAB659A32E0F'
){
this
.
rycSalesInfo
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'project_id'
]
===
'E55EC426-65E2-2AD5-4AA7-9B821396C1F4'
){
this
.
fycTutorInfo
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'project_id'
]
===
'F9E5ED14-7248-A5D7-490D-651399E814A6'
){
this
.
rycTutorInfo
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'project_id'
]
===
'DB5B8AB9-B904-BA9D-F6DC-F1E7FD4A60DA'
){
this
.
fycMeritsInfo
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'project_id'
]
===
'0F70B51D-C7D6-316D-8EDC-CFBC7A5D4551'
){
this
.
rycMeritsInfo
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'project_id'
]
===
'6EDF61DF-7C16-2625-9A54-D5E03CA7E6B1'
){
this
.
recommendAward
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'project_id'
]
===
'DDCCD63D-EE47-5953-8CA0-CFAA83CB9A5E'
){
this
.
systemRecommendAward
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'project_id'
]
===
'A09E7626-B77C-79A0-CC93-D929BCBB7B35'
){
this
.
specialManagementAward
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'project_id'
]
===
'91E8A0DD-8696-9964-CD35-AEBA6C8FDF19'
){
this
.
otherPreTaxDeduction
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'project_id'
]
===
'45C0E205-653A-641B-1A35-C5C4148B1DA6'
){
this
.
IncentiveBonus
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'project_id'
]
===
'FC664684-4CBB-E3EC-FEC4-02FDDCAB4A02'
){
this
.
addWeight
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'project_id'
]
===
'105B9197-7B64-5AE6-AC47-C15AA857DDC5'
){
this
.
quarterlyBonus
=
this
.
salaryDetailsList
[
i
];
}
else
if
(
this
.
salaryDetailsList
[
i
][
'project_id'
]
===
'12C24EDF-83D7-081C-AE2C-085031C4DCAF'
){
this
.
onlineAward
=
this
.
salaryDetailsList
[
i
];
}
else
{
break
;
}
}
}
})
}
}
lookTak
(){
lookTak
(){
...
@@ -180,8 +192,25 @@ export class SalaryDetailComponent implements OnInit {
...
@@ -180,8 +192,25 @@ export class SalaryDetailComponent implements OnInit {
* 1.跳转到保单
* 1.跳转到保单
* 2.跳转到体系
* 2.跳转到体系
* 3.跳转到备注
* 3.跳转到备注
* 4.跳转到银盾在线
*/
*/
jumpToFirstYearSales
(
salaryName
,
type
){
jumpToFirstYearSales
(
salaryName
,
type
,
salaryType
){
this
.
router
.
navigate
([
`/salary_detail/
${
this
.
monDtlPeriod
}
`
],{
queryParams
:{
type
:
type
,
salaryName
:
salaryName
}});
this
.
router
.
navigate
([
`/salary_detail/
${
salaryType
}
`
],{
queryParams
:{
type
:
type
,
salaryName
:
salaryName
,
years
:
this
.
years
,
month
:
this
.
month
,
agent_id
:
this
.
agent_id
}});
}
//薪资单列表-》用来判断上一期下一期的加减
payScaleListQuery
()
{
this
.
myService
.
payScaleListQuery
({
practitionerIdEG
:
this
.
practitionerIdEG
,
practitionerId
:
this
.
practitionerId
,
isHistory
:
0
}).
subscribe
((
res
)
=>
{
if
(
res
[
'success'
])
{
this
.
payScaleInfos
=
res
[
'data'
][
'payScaleInfos'
];
}
})
}
//初始化佣奖类型
initSalay
(){
this
.
fycSalesInfo
=
this
.
rycSalesInfo
=
this
.
fycTutorInfo
=
this
.
rycTutorInfo
=
this
.
fycMeritsInfo
=
this
.
rycMeritsInfo
=
this
.
recommendAward
=
this
.
systemRecommendAward
=
this
.
specialManagementAward
=
this
.
otherPreTaxDeduction
=
this
.
IncentiveBonus
=
this
.
addWeight
=
this
.
quarterlyBonus
=
this
.
onlineAward
=
null
;
}
}
}
}
src/app/my/salary-first-year/salary-first-year.component.ts
View file @
111ca407
import
{
Component
,
OnInit
}
from
'@angular/core'
;
import
{
Component
,
OnInit
}
from
'@angular/core'
;
import
{
ActivatedRoute
,
Router
}
from
"@angular/router"
;
import
{
ActivatedRoute
,
Router
}
from
"@angular/router"
;
import
{
MyService
}
from
'../my.service'
;
@
Component
({
@
Component
({
selector
:
'ydlife-salary-first-year'
,
selector
:
'ydlife-salary-first-year'
,
...
@@ -8,17 +9,40 @@ import { ActivatedRoute,Router } from "@angular/router";
...
@@ -8,17 +9,40 @@ import { ActivatedRoute,Router } from "@angular/router";
})
})
export
class
SalaryFirstYearComponent
implements
OnInit
{
export
class
SalaryFirstYearComponent
implements
OnInit
{
status
:
boolean
;
status
:
boolean
;
//判断跳转页用的
type
:
any
;
type
:
any
;
//佣奖名称
salaryName
:
any
;
salaryName
:
any
;
constructor
(
private
activatedRoute
:
ActivatedRoute
)
{
}
//佣奖类型-》用来判断拿保单接口中的哪个数据
salaryType
:
any
;
month
:
any
;
years
:
any
;
agent_id
:
any
;
constructor
(
private
activatedRoute
:
ActivatedRoute
,
private
myService
:
MyService
)
{
}
ngOnInit
()
{
ngOnInit
()
{
this
.
type
=
this
.
activatedRoute
.
snapshot
.
queryParams
.
type
?
this
.
activatedRoute
.
snapshot
.
queryParams
.
type
:
null
;
this
.
type
=
this
.
activatedRoute
.
snapshot
.
queryParams
.
type
?
this
.
activatedRoute
.
snapshot
.
queryParams
.
type
:
null
;
this
.
salaryName
=
this
.
activatedRoute
.
snapshot
.
queryParams
.
salaryName
?
this
.
activatedRoute
.
snapshot
.
queryParams
.
salaryName
:
null
;
this
.
salaryName
=
this
.
activatedRoute
.
snapshot
.
queryParams
.
salaryName
?
this
.
activatedRoute
.
snapshot
.
queryParams
.
salaryName
:
null
;
this
.
salaryType
=
this
.
activatedRoute
.
snapshot
.
paramMap
.
get
(
'id'
);
this
.
years
=
this
.
activatedRoute
.
snapshot
.
queryParams
.
years
?
this
.
activatedRoute
.
snapshot
.
queryParams
.
years
:
null
;
this
.
month
=
this
.
activatedRoute
.
snapshot
.
queryParams
.
month
?
this
.
activatedRoute
.
snapshot
.
queryParams
.
month
:
null
;
this
.
agent_id
=
this
.
activatedRoute
.
snapshot
.
queryParams
.
agent_id
?
this
.
activatedRoute
.
snapshot
.
queryParams
.
agent_id
:
null
;
this
.
searchStaffSalaryDetails
();
}
}
goBack
(){
goBack
(){
history
.
go
(
-
1
);
history
.
go
(
-
1
);
}
}
searchStaffSalaryDetails
(){
const
param
=
{
years
:
this
.
years
,
month
:
this
.
month
,
agent_id
:
this
.
agent_id
}
this
.
myService
.
searchStaffSalaryDetails
(
param
).
subscribe
((
res
)
=>
{
console
.
log
(
res
)
})
}
}
}
src/app/my/salary/salary.component.html
View file @
111ca407
...
@@ -9,16 +9,16 @@
...
@@ -9,16 +9,16 @@
</li>
</li>
</ul>
</ul>
<div
class=
"salesContent"
>
<div
class=
"salesContent"
>
<div
class=
"salesItem"
*
ngFor=
"let payScaleItem of payScaleInfos"
(
click
)="
enterDetail
(
payScaleItem
.
monDtlPeriod
)"
>
<div
class=
"salesItem"
*
ngFor=
"let payScaleItem of payScaleInfos"
(
click
)="
enterDetail
(
payScaleItem
.
years
,
payScaleItem
.
month
,
payScaleItem
.
loginName
)"
>
<div
class=
"icon_bolck"
><span
class=
"iconfont icon-xinzidan"
></span></div>
<div
class=
"icon_bolck"
><span
class=
"iconfont icon-xinzidan"
></span></div>
<div
style=
"padding-left: 45px;padding-right: 20px;"
>
<div
style=
"padding-left: 45px;padding-right: 20px;"
>
<div
class=
"line"
>
<div
class=
"line"
>
<span>
薪资日期
</span>
<span>
薪资日期
</span>
<div>
{{
lifeCommonService.getDate(payScaleItem.monDtlPeriod)}}
</div>
<div>
{{
payScaleItem.years}}年{{payScaleItem.month}}月
</div>
</div>
</div>
<div
class=
"line"
>
<div
class=
"line"
>
<span>
应
发佣金
</span>
<span>
本期实
发佣金
</span>
<div
class=
"price"
*
ngIf=
"!payScaleItem.pdfOssPath"
>
¥{{payScaleItem.monDtlAmount | number: "1.2-2"}}
</div>
<div
class=
"price"
*
ngIf=
"!payScaleItem.pdfOssPath"
>
¥{{payScaleItem.monDtl
R
Amount | number: "1.2-2"}}
</div>
</div>
</div>
</div>
</div>
<div
class=
"iconfont icon-ar-r"
<div
class=
"iconfont icon-ar-r"
...
...
src/app/my/salary/salary.component.ts
View file @
111ca407
...
@@ -16,7 +16,7 @@ export class SalaryComponent implements OnInit {
...
@@ -16,7 +16,7 @@ export class SalaryComponent implements OnInit {
toastDialog
:
boolean
;
toastDialog
:
boolean
;
toastInfo
:
any
;
toastInfo
:
any
;
tabList
:
Array
<
any
>
;
tabList
:
Array
<
any
>
;
selectedId
:
any
=
1
;
selectedId
:
any
=
0
;
constructor
(
private
activatedRoute
:
ActivatedRoute
,
private
myService
:
MyService
,
constructor
(
private
activatedRoute
:
ActivatedRoute
,
private
myService
:
MyService
,
public
lifeCommonService
:
LifeCommonService
,
public
lifeCommonService
:
LifeCommonService
,
private
router
:
Router
)
{
}
private
router
:
Router
)
{
}
...
@@ -28,13 +28,13 @@ export class SalaryComponent implements OnInit {
...
@@ -28,13 +28,13 @@ export class SalaryComponent implements OnInit {
this
.
practitionerId
=
JSON
.
parse
(
localStorage
.
getItem
(
'lifeCustomerInfo'
))[
'practitionerId'
]
this
.
practitionerId
=
JSON
.
parse
(
localStorage
.
getItem
(
'lifeCustomerInfo'
))[
'practitionerId'
]
this
.
payScaleListQuery
();
this
.
payScaleListQuery
();
this
.
tabList
=
[
this
.
tabList
=
[
{
name
:
'2021年'
,
id
:
1
},
{
name
:
'2021年'
,
id
:
0
},
{
name
:
'历史薪资'
,
id
:
2
}
{
name
:
'历史薪资'
,
id
:
1
}
]
]
}
}
payScaleListQuery
()
{
payScaleListQuery
()
{
this
.
myService
.
payScaleListQuery
({
practitionerIdEG
:
this
.
practitionerIdEG
,
practitionerId
:
this
.
practitionerId
}).
subscribe
((
res
)
=>
{
this
.
myService
.
payScaleListQuery
({
practitionerIdEG
:
this
.
practitionerIdEG
,
practitionerId
:
this
.
practitionerId
,
isHistory
:
this
.
selectedId
}).
subscribe
((
res
)
=>
{
if
(
res
[
'success'
])
{
if
(
res
[
'success'
])
{
this
.
payScaleInfos
=
res
[
'data'
][
'payScaleInfos'
];
this
.
payScaleInfos
=
res
[
'data'
][
'payScaleInfos'
];
}
else
{
}
else
{
...
@@ -46,11 +46,12 @@ export class SalaryComponent implements OnInit {
...
@@ -46,11 +46,12 @@ export class SalaryComponent implements OnInit {
selectTab
(
tabId
){
selectTab
(
tabId
){
this
.
selectedId
=
tabId
;
this
.
selectedId
=
tabId
;
this
.
payScaleListQuery
();
}
}
//进入薪资详情
//进入薪资详情
enterDetail
(
monDtlPerio
d
){
enterDetail
(
years
,
month
,
agent_i
d
){
this
.
router
.
navigate
([
'/salary_detail'
],{
queryParams
:
{
monDtlPeriod
:
monDtlPerio
d
}
});
this
.
router
.
navigate
([
'/salary_detail'
],{
queryParams
:
{
years
:
years
,
month
:
month
,
agent_id
:
agent_i
d
}
});
}
}
}
}
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