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
df3a0c85
Commit
df3a0c85
authored
Jun 11, 2020
by
Chao Sun
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
0611
parent
d6cd0809
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
21 changed files
with
479 additions
and
98 deletions
+479
-98
src/app/my/my-center-home/my-center-home.component.html
+10
-10
src/app/my/my-center-home/my-center-home.component.scss
+6
-5
src/app/my/my-routing.module.ts
+3
-0
src/app/my/my-target/my-target.component.html
+0
-0
src/app/my/my-target/my-target.component.scss
+12
-5
src/app/my/my.module.ts
+2
-1
src/app/my/my.service.ts
+14
-1
src/app/my/order-detail/order-detail.component.html
+154
-0
src/app/my/order-detail/order-detail.component.scss
+120
-0
src/app/my/order-detail/order-detail.component.spec.ts
+25
-0
src/app/my/order-detail/order-detail.component.ts
+32
-0
src/app/my/sales-detail/sales-detail.component.html
+17
-14
src/app/my/sales-detail/sales-detail.component.scss
+32
-24
src/app/my/sales-detail/sales-detail.component.ts
+29
-27
src/app/my/sales-rank/sales-rank.component.html
+5
-0
src/app/my/sales-rank/sales-rank.component.scss
+5
-0
src/app/my/sales-rank/sales-rank.component.ts
+3
-1
src/app/my/team-panel/team-panel.component.html
+2
-2
src/app/my/team-rank/team-rank.component.html
+2
-2
src/app/my/team-rank/team-rank.component.scss
+2
-2
src/index.html
+4
-4
No files found.
src/app/my/my-center-home/my-center-home.component.html
View file @
df3a0c85
...
...
@@ -61,7 +61,7 @@
¥{{onlineInfo?.fyc | number: "1.0-0"}}
</li>
<li
class=
"markPrice"
>
{{onlineInfo?.count?onlineInfo.count:'-'}}
</li>
<li
class=
"markPrice"
>
<li
class=
"markPrice"
style=
"position: relative;top: 12px;"
>
{{onlineInfo?.completionRate?onlineInfo.completionRate + '%':'-'}}
</li>
</ul>
...
...
@@ -75,7 +75,7 @@
</li>
<li
class=
"markPrice"
>
{{offlineInfo?.count?offlineInfo.count:'-'}}
</li>
<li
class=
"markPrice"
>
{{offlineInfo?.completionRate?offlineInfo.completionRate + '%':'-'}}
</li>
</ul>
</div>
...
...
@@ -89,14 +89,6 @@
<span
class=
"iconfont icon-ar-r"
routerLink=
"scoreDeatil"
></span>
</div>
<ul
class=
"activities"
>
<li>
今天
</li>
<li>
本周
</li>
<li>
本月
</li>
<li>
本周达成率
</li>
<li>
本月达成率
</li>
<li>
本周新增商机
</li>
</ul>
<ul
class=
"activities"
>
<li
class=
"markPrice"
>
{{this.activities_grade?.scoreDay}}
</li>
<li
class=
"markPrice"
>
{{this.activities_grade?.scoreWeek}}
</li>
<li
class=
"markPrice"
>
{{this.activities_grade?.scoreMonth}}
</li>
...
...
@@ -108,6 +100,14 @@
</li>
<li
class=
"markPrice"
>
{{this.activities_grade?.addOpportunityNum}}
</li>
</ul>
<ul
class=
"activities"
>
<li>
今天
</li>
<li>
本周
</li>
<li>
本月
</li>
<li>
本周达成率
</li>
<li>
本月达成率
</li>
<li>
本周新增商机
</li>
</ul>
</div>
</div>
<div
class=
"performance_wrapper notice"
>
...
...
src/app/my/my-center-home/my-center-home.component.scss
View file @
df3a0c85
...
...
@@ -168,7 +168,8 @@
line-height
:
25px
;
font-size
:
12px
;
color
:
#fff
;
margin
:
0
7px
;
margin
:
0
5px
;
overflow
:
hidden
;
}
li
.markPrice
{
color
:
#fff
;
...
...
@@ -181,12 +182,12 @@
margin
:
0
;
}
li
:nth-child
(
2
),
li
:nth-child
(
3
)
{
width
:
2
8
%
;
width
:
2
6
%
;
text-align
:
right
;
}
// li:nth-child(3)
{
// margin-left: 0px
;
//
}
li
:last-child
{
width
:
18%
;
}
}
.activities
{
display
:
flex
;
...
...
src/app/my/my-routing.module.ts
View file @
df3a0c85
...
...
@@ -23,6 +23,7 @@ import { TeamPanelComponent } from './team-panel/team-panel.component';
import
{
TeamSalesScoreComponent
}
from
'./team-sales-score/team-sales-score.component'
;
import
{
ScoreDetailsComponent
}
from
'./score-details/score-details.component'
;
import
{
BusinessCardComponent
}
from
"./business-card/business-card.component"
;
import
{
OrderDetailComponent
}
from
'./order-detail/order-detail.component'
;
const
myRoutes
:
Routes
=
[
{
path
:
''
,
component
:
MyCenterHomeComponent
,
canActivate
:
[
AuthGuard
],
data
:
[{
title
:
'银盾保险经纪 - 工作台'
}]
},
...
...
@@ -48,6 +49,8 @@ const myRoutes: Routes = [
{
path
:
'teamPanel/:type'
,
component
:
TeamSalesScoreComponent
,
canActivate
:
[
AuthGuard
]
},
{
path
:
'scoreDeatil'
,
component
:
ScoreDetailsComponent
,
canActivate
:
[
AuthGuard
]
},
{
path
:
'businessCard'
,
component
:
BusinessCardComponent
,
canActivate
:
[
AuthGuard
]
},
{
path
:
'orderDetail'
,
component
:
OrderDetailComponent
,
canActivate
:
[
AuthGuard
]
},
];
@
NgModule
({
...
...
src/app/my/my-target/my-target.component.html
View file @
df3a0c85
This diff is collapsed.
Click to expand it.
src/app/my/my-target/my-target.component.scss
View file @
df3a0c85
...
...
@@ -55,16 +55,16 @@ ul li,ol li{
background
:
#0767bf
;
text-align
:
center
;
top
:
-5px
;
.save
{
span
{
font-size
:
12px
;
position
:
absolute
;
left
:
30
%
;
left
:
28
%
;
top
:
60%
;
}
}
.iconfont.icon-bianji
{
line-height
:
55px
;
}
//
.iconfont.icon-bianji{
//
line-height: 55px;
//
}
.title
{
font-size
:
16px
;
font-weight
:
bold
;
...
...
@@ -76,6 +76,12 @@ ul li,ol li{
align-items
:
center
;
margin
:
0
0
5px
17px
;
border-bottom
:
1px
#ddd
solid
;
div
{
height
:
34px
;
padding
:
6px
12px
;
font-size
:
18px
;
opacity
:
.75
;
}
input
.form-control
{
width
:
65%
;
background
:
none
;
...
...
@@ -102,6 +108,7 @@ ul li,ol li{
color
:
#fff
;
display
:
block
;
text-align
:
center
;
margin-left
:
10px
;
}
}
.content_target_monthItem
{
...
...
src/app/my/my.module.ts
View file @
df3a0c85
...
...
@@ -28,9 +28,10 @@ import { SwitchNumberPipe } from '../common/pipe/switch-number.pipe';
import
{
TeamSalesScoreComponent
}
from
'./team-sales-score/team-sales-score.component'
;
import
{
ScoreDetailsComponent
}
from
'./score-details/score-details.component'
;
import
{
BusinessCardComponent
}
from
'./business-card/business-card.component'
;
import
{
OrderDetailComponent
}
from
'./order-detail/order-detail.component'
;
@
NgModule
({
declarations
:
[
MyCenterHomeComponent
,
MkMaterialComponent
,
MkMaterialDetailComponent
,
FileUploadComponent
,
ImportantAnnouncementComponent
,
SalesDetailComponent
,
AnnouncementDetailComponent
,
MyBusinessComponent
,
MyBusinessDetailComponent
,
PickerComponent
,
ToastComponent
,
SalesRankComponent
,
TeamRankComponent
,
RecruitingComponent
,
RecruitingDetailComponent
,
ThanksComponent
,
MySettingComponent
,
MySettingDetailComponent
,
MyNewsComponent
,
MyTargetComponent
,
TeamPanelComponent
,
SwitchNumberPipe
,
TeamSalesScoreComponent
,
ScoreDetailsComponent
,
BusinessCardComponent
],
declarations
:
[
MyCenterHomeComponent
,
MkMaterialComponent
,
MkMaterialDetailComponent
,
FileUploadComponent
,
ImportantAnnouncementComponent
,
SalesDetailComponent
,
AnnouncementDetailComponent
,
MyBusinessComponent
,
MyBusinessDetailComponent
,
PickerComponent
,
ToastComponent
,
SalesRankComponent
,
TeamRankComponent
,
RecruitingComponent
,
RecruitingDetailComponent
,
ThanksComponent
,
MySettingComponent
,
MySettingDetailComponent
,
MyNewsComponent
,
MyTargetComponent
,
TeamPanelComponent
,
SwitchNumberPipe
,
TeamSalesScoreComponent
,
ScoreDetailsComponent
,
BusinessCardComponent
,
OrderDetailComponent
],
imports
:
[
CommonModule
,
LifeCommonModule
,
...
...
src/app/my/my.service.ts
View file @
df3a0c85
...
...
@@ -119,13 +119,26 @@ export class MyService {
});
}
//查保单明细
//查保单明细
(不包括寿险)
practitionerPolicyListQuery
(
practitionerId
)
{
const
url
=
this
.
API
+
'/practitioner/practitionerPolicyListQuery'
;
return
this
.
http
.
post
(
url
,
JSON
.
stringify
(
practitionerId
));
}
//保单明细列表包括寿险
policyListQuery
(
practitionerId
)
{
const
url
=
this
.
ydapi
+
'/practitioner/policyListQuery'
;
return
this
.
http
.
post
(
url
,
JSON
.
stringify
(
practitionerId
));
}
//保单明细详细信息
policyInfoQuery
(
practitionerId
)
{
const
url
=
this
.
ydapi
+
'/practitioner/policyInfoQuery'
;
return
this
.
http
.
post
(
url
,
JSON
.
stringify
(
practitionerId
));
}
//查询团队业绩及是否团队长
subordinateSystemMemberQuery
(
practitionerId
)
{
const
url
=
this
.
ydapi
+
'/practitioner/subordinateSystemMemberQuery'
;
...
...
src/app/my/order-detail/order-detail.component.html
0 → 100644
View file @
df3a0c85
<div
class=
"scrollContainer"
>
<div
class=
"detailContainer scrollContent"
>
<div
class=
"orderdetailBox"
>
<div
class=
"btnBox"
>
<span
class=
"alignItemCenter"
><i
class=
"line"
></i>
保单明细
</span>
</div>
<ul
class=
"list-group"
*
ngIf=
"policyInfo?.policyNo"
>
<li
class=
"list-group-item"
>
<span>
保单号
</span>
<span>
{{policyInfo?.policyNo}}
</span>
</li>
<li
class=
"list-group-item"
*
ngIf=
"policyInfo?.startDate"
>
<span>
生效日期
</span>
<span>
{{policyInfo?.startDate.substr(0,10)}}
</span>
</li>
<li
class=
"list-group-item"
*
ngIf=
"policyInfo?.endDate"
>
<span>
结束日期
</span>
<span>
{{policyInfo?.endDate}}
</span>
</li>
<li
class=
"list-group-item"
*
ngIf=
"policyInfo?.status"
>
<span>
状态
</span>
<span>
{{policyInfo?.status}}
</span>
</li>
<div
class=
"insuredsBox coverContent"
>
<h4
class=
"text-left alignItemCenter"
><i
class=
"line"
></i>
保障内容
</h4>
<ul
*
ngFor=
"let productInfo of policyFactorInfos;index as i"
>
<li
class=
"list-group-item"
*
ngIf=
"productInfo?.productName"
>
<span
style=
"width: 30%;"
>
产品
</span>
<span
style=
"text-align: right;"
>
{{productInfo?.productName}}
</span>
</li>
<li
class=
"list-group-item"
*
ngIf=
"productInfo?.insuredAmount"
>
<span>
保额
</span>
<span>
{{productInfo?.insuredAmount}} {{productInfo?.amountUnit}}
</span>
</li>
<li
class=
"list-group-item"
*
ngIf=
"productInfo?.period"
>
<span>
缴费年限
</span>
<span>
{{productInfo?.period}}年
</span>
</li>
<li
class=
"list-group-item"
*
ngIf=
"productInfo?.payFrequency"
>
<span>
缴费方式
</span>
<span>
{{productInfo?.payFrequency}}
</span>
</li>
<li
class=
"list-group-item"
*
ngIf=
"productInfo?.commission"
>
<span>
销售佣金
</span>
<span>
¥{{productInfo?.commission | number:'1.2-2'}}
</span>
</li>
<li
class=
"list-group-item"
*
ngIf=
"productInfo?.premium"
>
<span>
保费
</span>
<span>
¥{{productInfo?.premium | number:'1.2-2'}}
</span>
</li>
</ul>
</div>
<div
class=
"btnBox"
>
<span
class=
"alignItemCenter"
><i
class=
"line"
></i>
投保人信息
</span>
</div>
<li
class=
"list-group-item"
>
<span>
姓名
</span>
<span>
{{holderInfo?.name}}
</span>
</li>
<li
class=
"list-group-item"
*
ngIf=
"holderInfo?.gender"
>
<span>
性别
</span>
<ng-container
[
ngSwitch
]="
holderInfo
?.
gender
"
>
<span
*
ngSwitchCase=
"1"
>
男
</span>
<span
*
ngSwitchCase=
"2"
>
女
</span>
<span
*
ngSwitchDefault
></span>
</ng-container>
</li>
<li
class=
"list-group-item"
*
ngIf=
"holderInfo?.birthDay"
>
<span>
出生日期
</span>
<span>
{{holderInfo?.birthDay}}
</span>
</li>
<li
class=
"list-group-item"
*
ngIf=
"holderInfo?.idInfo.idType"
>
<span>
证件类型
</span>
<ng-container
[
ngSwitch
]="
holderInfo
?.
idInfo
.
idType
"
>
<span
*
ngSwitchCase=
"1"
>
身份证
</span>
<span
*
ngSwitchCase=
"2"
>
护照
</span>
<span
*
ngSwitchCase=
"3"
>
港澳身份证
</span>
<span
*
ngSwitchCase=
"4"
>
台胞证
</span>
<span
*
ngSwitchCase=
"9"
>
其他
</span>
<span
*
ngSwitchCase=
"20"
>
统一社会信用代码
</span>
<span
*
ngSwitchDefault
>
/
</span>
</ng-container>
</li>
<li
class=
"list-group-item"
*
ngIf=
"holderInfo?.idInfo.idNo"
>
<span>
证件号码
</span>
<span>
{{holderInfo?.idInfo.idNo}}
</span>
</li>
</ul>
<div
class=
"insuredsBox"
*
ngFor=
"let insured of insuredInfos;index as i"
>
<h4
class=
"text-left alignItemCenter"
><i
class=
"line"
></i>
被保人信息{{i+1}}
</h4>
<ul>
<li
class=
"list-group-item"
*
ngIf=
"this.insured?.name"
>
<span>
姓名
</span>
<span>
{{this.insured?.name}}
</span>
</li>
<li
class=
"list-group-item"
*
ngIf=
"this.insured?.gender"
>
<span>
性别
</span>
<ng-container
[
ngSwitch
]="
insured
?.
gender
"
>
<span
*
ngSwitchCase=
"1"
>
男
</span>
<span
*
ngSwitchCase=
"2"
>
女
</span>
<span
*
ngSwitchDefault
></span>
</ng-container>
</li>
<li
class=
"list-group-item"
*
ngIf=
"this.insured?.birthDay"
>
<span>
出生日期
</span>
<span>
{{this.isReferral==='true' ? '****-'+this.insured?.birthDay.substr(5) : this.insured?.birthDay}}
</span>
</li>
<li
class=
"list-group-item"
*
ngIf=
"insured?.idInfo?.idType"
>
<span>
证件类型
</span>
<ng-container
[
ngSwitch
]="
insured
?.
idInfo
?.
idType
"
>
<span
*
ngSwitchCase=
"1"
>
身份证
</span>
<span
*
ngSwitchCase=
"2"
>
护照
</span>
<span
*
ngSwitchCase=
"4"
>
台胞证
</span>
<span
*
ngSwitchCase=
"9"
>
其他
</span>
<span
*
ngSwitchCase=
"20"
>
统一社会信用代码
</span>
<span
*
ngSwitchDefault
>
/
</span>
</ng-container>
</li>
<li
class=
"list-group-item"
*
ngIf=
"this.insured?.idInfo?.idNo"
>
<span>
证件号码
</span>
<span>
{{this.isReferral==='true' ? this.insured?.idInfo?.idNo.substr(0,2) + '******' + this.insured?.idInfo?.idNo.substr(this.insured?.idInfo?.idNo.length-2,2) : this.insured?.idInfo?.idNo}}
</span>
</li>
<li
class=
"list-group-item"
*
ngIf=
"this.insured?.occupationName"
>
<span>
职业类别
</span>
<span>
{{this.insured?.occupationName}}
</span>
</li>
<li
class=
"list-group-item"
*
ngIf=
"this.insured?.address"
>
<span
style=
"white-space: nowrap;margin-right: 8px;"
>
详细地址
</span>
<span>
{{this.insured?.address}}
</span>
</li>
<li
class=
"list-group-item"
*
ngIf=
"this.insured?.salary"
>
<span>
去年年收入(万元)
</span>
<span>
{{this.insured?.salary}}
</span>
</li>
<li
class=
"list-group-item"
*
ngIf=
"this.insured?.salaryType"
>
<span>
收入类型
</span>
<span>
{{this.insured?.salaryType}}
</span>
</li>
</ul>
</div>
<ul
class=
"priceContainer"
>
<li
class=
"list-group-item"
*
ngIf=
"policyInfo?.price"
>
<span>
总保费
</span>
<span>
¥{{policyInfo?.price | number:'1.2-2'}}
</span>
</li>
<li
class=
"list-group-item"
*
ngIf=
"policyInfo?.referralInfo?.referralAmount"
>
<span
style=
"color: #c9af71;"
>
总销售佣金
</span>
<span
class=
"light-color"
>
¥{{policyInfo?.referralInfo?.referralAmount | number:'1.2-2'}}
</span>
</li>
</ul>
</div>
</div>
</div>
\ No newline at end of file
src/app/my/order-detail/order-detail.component.scss
0 → 100644
View file @
df3a0c85
.detailContainer
{
background-color
:
#f7f7f2
;
}
.orderdetailBox
{
margin
:
20px
8px
;
background-color
:
#f9fdff
;
padding-top
:
14px
;
padding-left
:
11px
;
box-shadow
:
-1px
0
1px
#eeeee9
,
/*
左边阴影
*/
1px
0
1px
#eeeee9
,
/*
右边阴影
*/
0
3px
3px
#e5e5e0
;
/*底边阴影*/
}
.orderdetailBox
.btnBox
{
display
:
flex
;
justify-content
:
space-between
;
align-items
:
center
;
padding-right
:
10px
;
font-size
:
14px
;
font-weight
:
bold
;
}
.orderdetailBox
.btnBox
div
.downloadBtn
{
display
:
inline-block
;
background-color
:
#73d1c4
;
color
:
#fff
!
important
;
border-radius
:
6px
;
padding
:
5px
;
}
.orderdetailBox
.btnBox
div
.invoiceBtn
{
display
:
inline-block
;
background-color
:
#fff
;
color
:
#73d1c4
!
important
;
border-radius
:
6px
;
padding
:
5px
;
border
:
1px
solid
#73d1c4
;
margin-right
:
8px
;
}
.line
{
margin-right
:
5px
;
}
.orderdetailBox
ul
li
{
display
:
flex
;
justify-content
:
space-between
;
}
.list-group
{
margin-bottom
:
0
;
}
.list-group-item
{
border
:
none
;
background-color
:
transparent
;
padding-left
:
0
;
padding-right
:
0
;
margin-right
:
8px
;
color
:
#4a4a4a
;
position
:
relative
;
}
.
list-group-item
+ .
list-group-item
:
:
before
{
position
:
absolute
;
top
:
-1px
;
left
:
0
;
content
:
''
;
width
:
100%
;
height
:
1px
;
border-top
:
1px
solid
#dcdcdc
;
-webkit-transform
:
scaleY
(
0
.3
);
transform
:
scaleY
(
0
.3
)
}
.list-group-item
:nth-last-child
(
1
)
{
border
:
none
;
}
.orderdetailBox
ul
li
.list-group-item
:last-child
{
border-radius
:
0
;
}
.title
{
font-size
:
14px
;
color
:
#73d1c4
;
padding
:
0
;
display
:
flex
;
align-items
:
center
;
margin-bottom
:
10px
;
}
.priceContainer
li
{
border-top
:
1px
solid
#dcdcdc
;
}
h4
{
font-size
:
14px
;
font-weight
:
bold
;
display
:
flex
;
align-items
:
center
;
}
.line
{
display
:
inline-block
;
width
:
6px
;
height
:
15px
;
margin-right
:
6px
;
vertical-align
:
text-bottom
;
background-color
:
#ec2d37
;
}
.coverContent
{
ul
{
border-bottom
:
1px
#ddd
solid
;
}
ul
:last-child
{
border-bottom
:
none
;
}
}
\ No newline at end of file
src/app/my/order-detail/order-detail.component.spec.ts
0 → 100644
View file @
df3a0c85
import
{
async
,
ComponentFixture
,
TestBed
}
from
'@angular/core/testing'
;
import
{
OrderDetailComponent
}
from
'./order-detail.component'
;
describe
(
'OrderDetailComponent'
,
()
=>
{
let
component
:
OrderDetailComponent
;
let
fixture
:
ComponentFixture
<
OrderDetailComponent
>
;
beforeEach
(
async
(()
=>
{
TestBed
.
configureTestingModule
({
declarations
:
[
OrderDetailComponent
]
})
.
compileComponents
();
}));
beforeEach
(()
=>
{
fixture
=
TestBed
.
createComponent
(
OrderDetailComponent
);
component
=
fixture
.
componentInstance
;
fixture
.
detectChanges
();
});
it
(
'should create'
,
()
=>
{
expect
(
component
).
toBeTruthy
();
});
});
src/app/my/order-detail/order-detail.component.ts
0 → 100644
View file @
df3a0c85
import
{
Component
,
OnInit
}
from
'@angular/core'
;
import
{
MyService
}
from
'../my.service'
;
import
{
ActivatedRoute
}
from
"@angular/router"
;
@
Component
({
selector
:
'ydlife-order-detail'
,
templateUrl
:
'./order-detail.component.html'
,
styleUrls
:
[
'./order-detail.component.scss'
]
})
export
class
OrderDetailComponent
implements
OnInit
{
orderNo
:
string
;
policyInfo
:
any
;
holderInfo
:
any
;
insuredInfos
:
Array
<
any
>
;
policyFactorInfos
:
Array
<
any
>
;
constructor
(
private
myService
:
MyService
,
private
activatedRoute
:
ActivatedRoute
)
{
}
ngOnInit
()
{
this
.
orderNo
=
this
.
activatedRoute
.
snapshot
.
queryParams
.
orderNo
;
this
.
policyInfoQuery
();
}
policyInfoQuery
()
{
this
.
myService
.
policyInfoQuery
({
orderNo
:
this
.
orderNo
,
platform
:
2
}).
subscribe
((
res
)
=>
{
if
(
res
[
'success'
])
{
this
.
policyInfo
=
res
[
'data'
];
this
.
holderInfo
=
this
.
policyInfo
[
'holderInfo'
];
this
.
insuredInfos
=
this
.
policyInfo
[
'insuredInfos'
];
this
.
policyFactorInfos
=
this
.
policyInfo
[
'policyFactorInfos'
];
}
})
}
}
src/app/my/sales-detail/sales-detail.component.html
View file @
df3a0c85
<div
class=
"salesWrapper"
>
<
ul
class=
"tab
"
>
<
li
*
ngFor=
"let item of performanceList"
(
click
)="
selectRang
(
item
.
type
)"
[
ngClass
]="{
selected:searchType=
=item.type}"
>
<div
style=
"position: relative;
"
>
<h3>
{{item.name}}
<!-- <i class="line" *ngIf="performanceSelectedFlag==item.type"
[ngStyle]="{'left':leftWidth}"
></i> --
>
</h3
>
<
/div
>
</
li
>
</
ul
>
<
div
class=
"top
"
>
<
ul
class=
"tab"
>
<li
*
ngFor=
"let item of performanceList"
(
click
)="
selectRang
(
item
.
time
)"
[
ngClass
]="{
selected:searchType=
=item.time}
"
>
{{item.name}}
</li>
</ul>
<ul
class=
"tab"
>
<li
(
click
)="
platform=
1;practitionerPolicyListQuery(1)"
[
ngClass
]="{
selected:platform=
=1}"
>
线上
</li
>
<
li
(
click
)="
platform=
2;practitionerPolicyListQuery(2)"
[
ngClass
]="{
selected:platform=
=2}"
>
寿险
</li
>
</
ul
>
</
div
>
<div
class=
"salesContent"
>
<div
class=
"salesItem"
*
ngFor=
"let salesDetailItem of salesDetailList"
(
click
)="
jumpToOrderdetail
(
salesDetailItem
.
orderNo
)"
>
(
click
)="
jumpToOrderdetail
(
salesDetailItem
.
orderNo
,
salesDetailItem
.
platform
)"
>
<div
class=
"icon_bolck"
*
ngIf=
"showType==='sales'"
><span
class=
"iconfont icon-yongjin"
></span></div>
<div
class=
"icon_bolck"
*
ngIf=
"showType==='orderform'"
><span
class=
"iconfont icon-baodanyangben"
style=
"font-size: 20px;"
></span></div>
...
...
@@ -21,7 +21,8 @@
<div>
投保人:{{salesDetailItem.holderName}}
</div>
<span
class=
"iconfont icon-ar-r"
style=
"font-size: 10px;position: relative; right: -2px;"
></span>
</div>
<div
class=
"line long_line"
>
{{salesDetailItem.productName}}
<div
class=
"line long_line"
>
<span>
{{salesDetailItem.productName ? salesDetailItem.productName:salesDetailItem.planName}}
</span>
<div
class=
"price"
*
ngIf=
"showType==='sales'"
>
¥{{salesDetailItem.referralAmount | number: "1.2-2"}}
</div>
<div
class=
"price"
*
ngIf=
"showType==='orderform'"
>
¥{{salesDetailItem.orderPrice | number: "1.2-2"}}
</div>
</div>
...
...
@@ -30,5 +31,6 @@
<div>
{{(salesDetailItem.orderDate).substr(0,10)}}
</div>
</div>
</div>
<div
style=
"text-align: center;margin-top: 20px;"
*
ngIf=
"salesDetailList?.length<=0"
>
暂无数据
</div>
</div>
</div>
\ No newline at end of file
src/app/my/sales-detail/sales-detail.component.scss
View file @
df3a0c85
...
...
@@ -2,32 +2,40 @@
width
:
100%
;
height
:
100%
;
overflow
:
auto
;
.t
ab
{
.t
op
{
display
:
flex
;
list-style
:
none
;
/* margin-bottom: 5px; */
margin
:
10px
0px
;
padding-left
:
1%
;
li
{
margin-right
:
15px
;
line-height
:
30px
;
height
:
30px
;
width
:
20%
;
text-align
:
center
;
border
:
1px
#a9aabb
solid
;
border-radius
:
20px
;
h3
{
font-weight
:
normal
;
justify-content
:
space-between
;
align-items
:
center
;
.tab
{
display
:
flex
;
list-style
:
none
;
/* margin-bottom: 5px; */
margin
:
10px
0px
;
padding
:
0
2%
;
justify-content
:
space-between
;
li
{
text-align
:
center
;
// border: 1px #a9aabb solid;
// border-radius: 20px;
font-size
:
16px
;
}
li
.selected
{
// background-color: #ff5a32;
// color: #fff;
// border: 1px #f0f0f0 solid;
// border: 1px #e10d0d solid;
border-bottom
:
2px
#e10d0d
solid
;
font-weight
:
bold
;
}
}
}
li
.selected
{
// background-color: #ff5a32;
// color: #fff;
// border: 1px #f0f0f0 solid
;
border
:
1px
#e10d0d
solid
;
}
}
.tab
:nth-child
(
1
)
{
width
:
50%
;
}
.tab
:nth-child
(
2
)
{
width
:
28%
;
}
}
.salesContent
{
.salesItem
{
border-bottom
:
1px
#dcdcdc
solid
;
...
...
@@ -56,7 +64,7 @@
display
:
flex
;
justify-content
:
space-between
;
align-items
:
center
;
height
:
20px
;
//
height: 20px;
font-size
:
14px
;
.price
{
font-size
:
16px
;
...
...
src/app/my/sales-detail/sales-detail.component.ts
View file @
df3a0c85
import
{
Component
,
OnInit
}
from
'@angular/core'
;
import
{
MyService
}
from
'../my.service'
;
import
{
ActivatedRoute
}
from
"@angular/router"
;
import
{
ActivatedRoute
,
Router
}
from
"@angular/router"
;
import
{
LifeCommonService
}
from
'../../common/life-common.service'
;
@
Component
({
selector
:
'ydlife-sales-detail'
,
...
...
@@ -8,44 +8,43 @@ import { LifeCommonService } from '../../common/life-common.service';
styleUrls
:
[
'./sales-detail.component.scss'
]
})
export
class
SalesDetailComponent
implements
OnInit
{
allPerformanceInfo
:
Array
<
any
>
;
salesDetailList
:
Array
<
any
>
;
searchType
:
any
;
performanceList
:
Array
<
any
>
;
showType
:
any
;
constructor
(
private
myService
:
MyService
,
private
activatedRoute
:
ActivatedRoute
,
public
lifeCommonService
:
LifeCommonService
)
{
platform
:
number
;
constructor
(
private
router
:
Router
,
private
myService
:
MyService
,
private
activatedRoute
:
ActivatedRoute
,
public
lifeCommonService
:
LifeCommonService
)
{
this
.
performanceList
=
[
{
type
:
1
,
name
:
'本月'
},
{
type
:
2
,
name
:
'本年度'
}
{
time
:
1
,
name
:
'本月'
},
{
time
:
3
,
name
:
'本季'
},
{
time
:
2
,
name
:
'本年度'
}
]
}
ngOnInit
()
{
this
.
searchType
=
this
.
activatedRoute
.
snapshot
.
queryParams
.
searchType
;
this
.
showType
=
this
.
activatedRoute
.
snapshot
.
queryParams
.
showType
;
this
.
practitionerPolicyListQuery
();
this
.
platform
=
1
;
this
.
practitionerPolicyListQuery
(
this
.
platform
);
}
//查询保单
practitionerPolicyListQuery
()
{
practitionerPolicyListQuery
(
platform
?:
any
)
{
const
practitionerId
=
JSON
.
parse
(
localStorage
.
getItem
(
'lifeCustomerInfo'
))[
'practitionerId'
];
this
.
myService
.
p
ractitionerPolicyListQuery
({
practitionerId
:
practitionerId
}).
subscribe
((
res
)
=>
{
this
.
myService
.
p
olicyListQuery
({
practitionerId
:
practitionerId
,
time
:
this
.
searchType
}).
subscribe
((
res
)
=>
{
if
(
res
[
'success'
])
{
this
.
allPerformanceInfo
=
res
[
'data'
][
'policyListInfo'
];
if
(
this
.
searchType
==
1
)
{
if
(
this
.
allPerformanceInfo
[
'thisMonthInfo'
])
{
this
.
salesDetailList
=
this
.
allPerformanceInfo
[
'thisMonthInfo'
][
'onlineInfo'
][
'fortuneItemList'
];
}
else
{
this
.
salesDetailList
=
[];
}
}
if
(
this
.
searchType
==
2
)
{
if
(
this
.
allPerformanceInfo
[
'thisYearInfo'
][
'onlineInfo'
])
{
this
.
salesDetailList
=
this
.
allPerformanceInfo
[
'thisYearInfo'
][
'onlineInfo'
][
'fortuneItemList'
];
}
else
{
this
.
salesDetailList
=
[];
}
this
.
salesDetailList
=
res
[
'data'
][
'policyInfoList'
];
if
(
platform
==
1
)
{
this
.
salesDetailList
=
this
.
salesDetailList
.
filter
(
item
=>
{
return
item
.
platform
==
1
;
})
}
else
{
this
.
salesDetailList
=
this
.
salesDetailList
.
filter
(
item
=>
{
return
item
.
platform
==
2
;
})
}
}
else
{
this
.
salesDetailList
=
[];
}
})
}
...
...
@@ -54,12 +53,15 @@ export class SalesDetailComponent implements OnInit {
selectRang
(
e
)
{
this
.
searchType
=
e
;
this
.
practitionerPolicyListQuery
();
this
.
practitionerPolicyListQuery
(
this
.
platform
);
}
jumpToOrderdetail
(
orderNo
)
{
const
customerId
=
JSON
.
parse
(
localStorage
.
getItem
(
'lifeCustomerInfo'
)).
customerId
;
window
.
location
.
href
=
`https://
${
window
.
location
.
host
}
/mine/orderdetail/
${
orderNo
}
?customerId=
${
customerId
}
&isReferral=true&paid=true`
;
// https://mdev.zuihuibi.cn/mine/orderdetail/CP338119110911044108?customerId=41&isReferral=true&paid=true&whichNumber=0&policyHolderType=2
jumpToOrderdetail
(
orderNo
,
platform
)
{
if
(
platform
===
1
)
{
const
customerId
=
JSON
.
parse
(
localStorage
.
getItem
(
'lifeCustomerInfo'
)).
customerId
;
window
.
location
.
href
=
`https://
${
window
.
location
.
host
}
/mine/orderdetail/
${
orderNo
}
?customerId=
${
customerId
}
&isReferral=true&paid=true`
;
}
else
{
this
.
router
.
navigate
([
'/orderDetail'
],
{
queryParams
:
{
orderNo
:
orderNo
}
});
}
}
}
src/app/my/sales-rank/sales-rank.component.html
View file @
df3a0c85
...
...
@@ -63,4 +63,8 @@
<li
*
ngIf=
"searchType==3"
>
{{rankItem.count}}
</li>
</ul>
</div>
<div
class=
"personal"
>
<span
style=
"margin-right: 20px;"
>
您的个人排名
</span>
<span>
{{practitionerInfo?.rank!=null ?practitionerInfo?.rank:'-'}}
</span>
</div>
</div>
\ No newline at end of file
src/app/my/sales-rank/sales-rank.component.scss
View file @
df3a0c85
...
...
@@ -55,6 +55,7 @@
box-shadow
:
0
0px
2
.5px
#969696
;
border-radius
:
6px
;
padding
:
5px
10px
5px
5px
;
margin-bottom
:
20px
;
ul
{
width
:
100%
;
li
{
...
...
@@ -87,5 +88,8 @@
}
}
}
.personal
{
color
:
#fff
;
}
}
\ No newline at end of file
src/app/my/sales-rank/sales-rank.component.ts
View file @
df3a0c85
...
...
@@ -15,7 +15,7 @@ export class SalesRankComponent implements OnInit {
searchType
:
any
;
isOnlineType
:
any
;
rankList
:
Array
<
any
>
;
practitionerInfo
:
any
;
constructor
(
private
activatedRoute
:
ActivatedRoute
,
private
myService
:
MyService
)
{
this
.
performanceList
=
[
{
type
:
1
,
name
:
'本月'
},
...
...
@@ -57,8 +57,10 @@ export class SalesRankComponent implements OnInit {
this
.
myService
.
rank
(
param
).
subscribe
((
res
)
=>
{
if
(
res
[
'success'
])
{
this
.
rankList
=
res
[
'data'
][
'rank'
];
this
.
practitionerInfo
=
res
[
'data'
][
'practitionerInfo'
];
}
else
{
this
.
rankList
=
[];
this
.
practitionerInfo
=
{};
}
})
}
...
...
src/app/my/team-panel/team-panel.component.html
View file @
df3a0c85
...
...
@@ -20,7 +20,7 @@
<li
class=
"big"
style=
"width: 30%;"
>
{{statisticInfo?.fyp | number: "1.0-2"}}
</li>
<li
class=
"big"
style=
"width: 30%;"
>
{{statisticInfo?.fyc | number: "1.0-2"}}
</li>
<li
class=
"big"
style=
"width: 15%;"
>
{{statisticInfo?.count | number}}
</li>
<li
class=
"big"
style=
"width: 15%;"
>
{{
lifeCommonService.toPercent(statisticInfo?.completionRate)
}}
</li>
<li
class=
"big"
style=
"width: 15%;"
>
{{
statisticInfo?.completionRate + '%'
}}
</li>
</ul>
<ul>
<li
style=
"width: 30%;"
>
首年保费
</li>
...
...
@@ -98,7 +98,7 @@
<li
class=
"big"
>
{{premiums?lifeCommonService.transform(premiums):'0'}}
</li>
<li
class=
"big"
>
{{commission?lifeCommonService.transform(commission):'0'}}
</li>
<li
class=
"big"
>
{{count?count:'0'}}
</li>
<li
class=
"big"
>
{{completionRates?
lifeCommonService.toPercent(completionRates):'0
'}}
</li>
<li
class=
"big"
>
{{completionRates?
completionRates:'0%
'}}
</li>
</ul>
<ul>
<li>
{{selectedSalseItemName}}保费
</li>
...
...
src/app/my/team-rank/team-rank.component.html
View file @
df3a0c85
...
...
@@ -48,8 +48,8 @@
{{performanceItem.rank}}
</li> -->
<li
class=
"name"
>
{{performanceItem.name}}
</li>
<li
class=
"fyp remark"
>
¥{{performanceItem.fyp | number: "1.
2
-2"}}
</li>
<li
class=
"fyc remark"
>
¥{{performanceItem.fyc | number: "1.
2
-2"}}
</li>
<li
class=
"fyp remark"
>
¥{{performanceItem.fyp | number: "1.
0
-2"}}
</li>
<li
class=
"fyc remark"
>
¥{{performanceItem.fyc | number: "1.
0
-2"}}
</li>
<li
class=
"count remark"
>
{{performanceItem.count}}
</li>
</ul>
</div>
...
...
src/app/my/team-rank/team-rank.component.scss
View file @
df3a0c85
...
...
@@ -75,7 +75,7 @@
.salseContent
{
width
:
100%
;
float
:
left
;
padding
:
5px
6
.5%
;
padding
:
5px
2
.5%
;
div
{
float
:
left
;
width
:
40%
;
...
...
@@ -85,7 +85,7 @@
}
div
.num
{
font-weight
:
bold
;
font-size
:
20
px
;
font-size
:
18
px
;
color
:
#fff
;
}
div
.count
{
...
...
src/index.html
View file @
df3a0c85
...
...
@@ -31,9 +31,9 @@
<div
class=
"content"
style=
"text-align: center;width: 60%;margin: 45% auto 0 auto;"
>
<img
style=
"width:100%;margin-bottom: 15px;"
src=
"assets/images/login_logo.png"
>
<div
class=
"loadingContent"
>
<span
style=
"letter-spacing:
12px;"
>
海纳百川
</span>
<span
style=
"letter-spacing:
12
px;"
>
·
</span>
<span
style=
"letter-spacing:
12px;"
>
赢家后
</span>
盾
<span
style=
"letter-spacing:
4px;"
>
DYD
</span>
<span
style=
"letter-spacing:
4
px;"
>
·
</span>
<span
style=
"letter-spacing:
4px;"
>
Digital Yindun
</span>
</div>
<!-- <div style="margin-top: 45%;">欢迎回家,先喝碗鸡汤</div> -->
</div>
...
...
@@ -87,7 +87,7 @@
initialize
();
}
else
if
(
window
.
name
==
"isReload"
)
{
let
loading
=
document
.
getElementById
(
"adv"
);
loading
.
style
.
display
=
'none'
;
//
loading.style.display = 'none';
}
//用于去除alert的url
...
...
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