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
58254264
Commit
58254264
authored
Jul 14, 2023
by
zeyang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1.优化赢家平台 商机跟进的时间选择样式和校验
2.赢家平台嵌入SFP智能财策页面
parent
ba982ef6
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
138 additions
and
58 deletions
+138
-58
src/app/my/my-business-detail/my-business-detail.component.html
+56
-38
src/app/my/my-business-detail/my-business-detail.component.scss
+75
-17
src/app/my/my-business-detail/my-business-detail.component.ts
+0
-0
src/environments/environment.prod.ts
+2
-1
src/environments/environment.stage.ts
+2
-1
src/environments/environment.ts
+3
-1
No files found.
src/app/my/my-business-detail/my-business-detail.component.html
View file @
58254264
...
...
@@ -21,31 +21,32 @@
<div
class=
"contentItem"
>
<span>
出生日期
</span>
<div>
<ListItem
DatePicker
[
mode
]="'
date
'"
[
disabled
]="
readonlyFlag
"
[
minDate
]="
minDate
"
[
maxDate
]
=
"
today
"
[(
ngModel
)]="
editBusiness
.
birthDate
"
(
onOk
)="
onOk
($
event
)"
>
<Brief
*
ngIf=
"!readonlyFlag"
>
{{editBusiness.birthDate ? (editBusiness.birthDate | date:'yyyy-MM-dd') : '请输入出生日期'}}
</Brief>
<Brief
*
ngIf=
"readonlyFlag"
>
{{editBusiness.birthDate ? (editBusiness.birthDate | date:'yyyy-MM-dd') : '暂无出生日期信息'}}
</Brief>
<ListItem
DatePicker
[
mode
]="'
date
'"
[
disabled
]="
readonlyFlag
"
[
minDate
]="
minDate
"
[
maxDate
]="
today
"
[(
ngModel
)]="
editBusiness
.
birthDate
"
(
onOk
)="
onOk
($
event
)"
>
<Brief
*
ngIf=
"!readonlyFlag"
>
{{editBusiness.birthDate ? (editBusiness.birthDate | date:'yyyy-MM-dd') : '请输入出生日期'}}
</Brief>
<Brief
*
ngIf=
"readonlyFlag"
>
{{editBusiness.birthDate ? (editBusiness.birthDate | date:'yyyy-MM-dd') : '暂无出生日期信息'}}
</Brief>
</ListItem>
</div>
</div>
<div
class=
"contentItem"
>
<span>
年龄
</span>
<input
class=
"form-control"
type=
"text"
placeholder=
"{{readonlyFlag ?'暂无年龄信息':'请输入年龄'}}"
[(
ngModel
)]="
editBusiness
.
age
"
[
disabled
]="
readonlyFlag
||
editBusiness
.
birthDate
"
(
blur
)="
inputBlur
()"
/>
[(
ngModel
)]="
editBusiness
.
age
"
[
disabled
]="
readonlyFlag
||
editBusiness
.
birthDate
"
(
blur
)="
inputBlur
()"
/>
</div>
<div
class=
"contentItem"
>
<span>
性别
</span>
<div
class=
"sexWrapper"
>
<button
class=
"form-control sex"
[
ngClass
]="{'
sexBtn
'
:editBusiness
?.
gender=
='1'
&&
maleFlag
&&
femaleFlag
}"
<button
class=
"form-control sex"
[
ngClass
]="{'
sexBtn
'
:editBusiness
?.
gender=
='1'
&&
maleFlag
&&
femaleFlag
}"
(
click
)="
selectedGender
('
1
')"
[
disabled
]="
readonlyFlag
"
*
ngIf=
"sexFlag && maleFlag"
>
男
</button>
<button
class=
"form-control sex"
[
ngClass
]="{'
sexBtn
'
:editBusiness
?.
gender=
='2'
&&
maleFlag
&&
femaleFlag
}"
<button
class=
"form-control sex"
[
ngClass
]="{'
sexBtn
'
:editBusiness
?.
gender=
='2'
&&
maleFlag
&&
femaleFlag
}"
(
click
)="
selectedGender
('
2
')"
[
disabled
]="
readonlyFlag
"
*
ngIf=
"sexFlag && femaleFlag"
>
女
</button>
</div>
...
...
@@ -62,7 +63,8 @@
[(
ngModel
)]="
editBusiness
.
bloodTypeId
"
(
blur
)="
inputBlur
()"
>
<option
value=
""
>
{{readonlyFlag ?'暂无血型信息':'请选择血型'}}
</option>
<option
*
ngFor=
"let businessBloodItem of businessBloodList"
[
value
]="
businessBloodItem
.
id
"
>
{{businessBloodItem.dropOptionName}}
</option>
{{businessBloodItem.dropOptionName}}
</option>
</select>
<!--<input class="form-control" type="text" placeholder="{{readonlyFlag ?'暂无血型信息':'请选择血型'}}"-->
<!--[disabled]="readonlyFlag" [(ngModel)]="editBusiness.bloodTypeId" (blur)="inputBlur()" />-->
...
...
@@ -73,7 +75,8 @@
[(
ngModel
)]="
editBusiness
.
zodiacTypeId
"
(
blur
)="
inputBlur
()"
>
<option
value=
""
>
{{readonlyFlag ?'暂无星座信息':'请选择星座'}}
</option>
<option
*
ngFor=
"let businessZodiacItem of businessZodiacList"
[
value
]="
businessZodiacItem
.
id
"
>
{{businessZodiacItem.dropOptionName}}
</option>
{{businessZodiacItem.dropOptionName}}
</option>
</select>
<!--<input class="form-control" type="text" placeholder="{{readonlyFlag ?'暂无星座信息':'请选择星座'}}"-->
<!--[disabled]="readonlyFlag" [(ngModel)]="editBusiness.zodiacTypeId" (blur)="inputBlur()" />-->
...
...
@@ -131,20 +134,23 @@
[(
ngModel
)]="
editBusiness
.
sourceFrom
"
[
disabled
]="
readonlyFlag
"
(
blur
)="
inputBlur
()"
>
<option
value=
""
>
{{readonlyFlag ?'暂无商机来源':'请选择商机来源'}}
</option>
<option
*
ngFor=
"let businessSourceItem of businessSourceList"
[
value
]="
businessSourceItem
.
id
"
>
{{businessSourceItem.dropOptionName}}
</option>
{{businessSourceItem.dropOptionName}}
</option>
</select>
<input
*
ngIf=
"opportunityId!=0"
class=
"form-control"
type=
"text"
[(
ngModel
)]="
editBusiness
.
sourceChannel
"
disabled
placeholder=
"{{editBusiness.sourceChannel ?editBusiness.sourceChannel:'暂无商机来源'}}"
/>
<input
*
ngIf=
"opportunityId!=0"
class=
"form-control"
type=
"text"
[(
ngModel
)]="
editBusiness
.
sourceChannel
"
disabled
placeholder=
"{{editBusiness.sourceChannel ?editBusiness.sourceChannel:'暂无商机来源'}}"
/>
</div>
<div
class=
"contentItem"
>
<span>
商机时间
</span>
<input
class=
"form-control"
type=
"text"
placeholder=
"商机时间"
[(
ngModel
)]="
editBusiness
.
opportunityDate
"
disabled
/>
<input
class=
"form-control"
type=
"text"
placeholder=
"商机时间
"
[(
ngModel
)]="
editBusiness
.
opportunityDate
"
disabled
/>
</div>
<div
class=
"contentItem"
>
<span>
商机状态
</span>
<div
style=
"padding: 6px 12px;color: #e10d0d;font-weight: bold;"
>
{{editBusiness.mdDropOptionName?editBusiness.mdDropOptionName:'待跟进'}}
</div>
{{editBusiness.mdDropOptionName?editBusiness.mdDropOptionName:'待跟进'}}
</div>
</div>
</div>
<div
class=
"wrapper_item"
style=
"border: none;margin-bottom: 0;"
>
...
...
@@ -201,11 +207,9 @@
</div>
<!-- SFP咨询问卷 -->
<div
class=
"content"
*
ngIf=
"selectedId===2 && isSfpShow == true"
>
<iframe
src=
"http://localhost:4200/salesDetail"
style=
"height: 100%; width: 100%;flex-grow: 1
;"
>
<iframe
class=
"content"
*
ngIf=
"selectedId===2 && isSfpShow == true"
[
src
]="
transform
(
iframeUrl
)"
style=
"width: 100%;flex-grow: 1;border: medium none
;"
>
</iframe>
</div>
<!-- 客户告知书 -->
<div
class=
"content"
*
ngIf=
"selectedId===5"
>
<ydlife-e-notice
[
agreeFlag
]="
false
"
></ydlife-e-notice>
...
...
@@ -220,8 +224,11 @@
<div
style=
"display: flex;justify-content: space-between;height: 25px;"
>
<div
class=
"updatedAt"
>
{{opportunityRecordItem.noticeDate}}
</div>
<div
class=
"opportunityRecordItem"
>
<a
*
ngIf=
"opportunityRecordItem.informedOssPath"
href=
"{{opportunityRecordItem.informedOssPath}}"
target=
"_blank"
><i
class=
"iconfont icon-pdf"
style=
"color: #C81B1E;margin-right:5px"
></i></a>
<span
[
ngStyle
]="
setBackgroundColor
(
opportunityRecordItem
)"
>
{{opportunityRecordItem.mdDropOptionName?opportunityRecordItem.mdDropOptionName:'待跟进'}}
</span>
<a
*
ngIf=
"opportunityRecordItem.informedOssPath"
href=
"{{opportunityRecordItem.informedOssPath}}"
target=
"_blank"
><i
class=
"iconfont icon-pdf"
style=
"color: #C81B1E;margin-right:5px"
></i></a>
<span
[
ngStyle
]="
setBackgroundColor
(
opportunityRecordItem
)"
>
{{opportunityRecordItem.mdDropOptionName?opportunityRecordItem.mdDropOptionName:'待跟进'}}
</span>
</div>
</div>
<div
class=
"salesNotice"
>
...
...
@@ -278,11 +285,25 @@
[(
ngModel
)]="
opportunityRecordNoticeDate
"
(
blur
)="
inputBlur
()"
></div>
</div>
<div
*
ngIf=
"isSfpShow"
>
<div>
日程开始时间
</div>
<div><input
type=
"text"
id=
"remark"
class=
"form-control"
placeholder=
"输入开始时间"
[(
ngModel
)]="
taskTimeFrom
"
(
blur
)="
inputBlur
()"
></div>
<div>
日程结束时间
</div>
<div><input
type=
"text"
id=
"remark"
class=
"form-control"
placeholder=
"输入结束时间"
[(
ngModel
)]="
taskTimeEnd
"
(
blur
)="
inputBlur
()"
></div>
<div
*
ngIf=
"isSfpShow"
style=
"display:flex;font-size: 15px;"
>
<!-- <div>日程开始/结束时间</div>
<div class="timeContent">
<div class="picker_list">
<PickerView [data]="seasons" [cols]='3' [cascade]="false" [ngModel]="taskTimeFrom" [indicatorStyle]="{'background':'#f6f6f6','border-radius':'50px','z-index':'0'}" (ngModelChange)="onChange($event,1)"></PickerView>
</div>
<div style="color: #d9dadc;width: 10%;text-align: center;">到</div>
<div class="picker_list">
<PickerView [data]="seasons" [cascade]="false" [cols]='3' [ngModel]="taskTimeEnd" [indicatorStyle]="{'background':'#f6f6f6','border-radius':'50px','z-index':'0'}" (ngModelChange)="onChange($event,2)"></PickerView>
</div>
</div> -->
<div>
添加日程时间
</div>
<div
style=
"display:flex;"
>
<div
style=
"width:50%"
><input
type=
"Time"
id=
"remark"
class=
"form-control"
placeholder=
"输入开始时间"
[(
ngModel
)]="
taskTimeFrom
"
(
blur
)="
inputBlur
()"
></div>
<div
style=
"width:50%"
><input
type=
"Time"
id=
"remark"
class=
"form-control"
placeholder=
"输入结束时间"
[(
ngModel
)]="
taskTimeEnd
"
(
blur
)="
inputBlur
()"
></div>
</div>
</div>
<ul
class=
"footer"
>
...
...
@@ -298,13 +319,11 @@
<div
[
ngStyle
]="{
height:
300
,
overflow:
'
scroll
'
}"
>
<div
class=
"am-list"
style=
"margin:0;"
>
<div
class=
"am-list-item"
>
<InputItem
[
clear
]="
true
"
[
value
]="
editBusiness
.
name
"
<InputItem
[
clear
]="
true
"
[
value
]="
editBusiness
.
name
"
(
onChange
)="
editBusiness
.
name =
$event"
>
姓名:
</InputItem>
</div>
<div
class=
"am-list-item"
>
<InputItem
[
type
]="'
phone
'"
[
value
]="
editBusiness
.
mobileNo
"
<InputItem
[
type
]="'
phone
'"
[
value
]="
editBusiness
.
mobileNo
"
(
onChange
)="
editBusiness
.
mobileNo =
$event"
>
手机号码:
</InputItem>
</div>
<div
class=
"am-list-line"
style=
"color: #999;font-size:12px"
>
...
...
@@ -315,8 +334,7 @@
<div
class=
"am-list-line"
>
<div
class=
"am-list-content"
style=
"width:100%;color:#fff;text-align:center;background-color: #2179AD;border-radius: 20px;margin:18px auto"
(
click
)="
sendENotice
()"
>
发送
</div>
(
click
)="
sendENotice
()"
>
发送
</div>
</div>
</div>
</div>
...
...
src/app/my/my-business-detail/my-business-detail.component.scss
View file @
58254264
.wrapper
{
padding-bottom
:
40px
;
font-size
:
16px
;
background-color
:
#fff
;
min-height
:
90vh
;
display
:
flex
;
flex-direction
:
column
;
select
{
-webkit-appearance
:
none
;
border
:
none
;
box-shadow
:
none
;
}
.tab
{
display
:
flex
;
list-style
:
none
;
margin
:
10px
0px
;
padding-left
:
1%
;
li
{
margin-right
:
10px
;
line-height
:
30px
;
...
...
@@ -20,21 +26,25 @@
text-align
:
center
;
border
:
1px
#a9aabb
solid
;
border-radius
:
20px
;
h3
{
font-weight
:
normal
;
font-size
:
15px
;
}
}
li
.selected
{
// background-color: #ff5a32;
// color: #fff;
border
:
1px
#e10d0d
solid
;
}
}
.content
{
padding
:
10px
5px
;
position
:
relative
;
>
.iconfont
{
>
.iconfont
{
width
:
55px
;
height
:
55px
;
line-height
:
55px
;
...
...
@@ -47,20 +57,25 @@
text-align
:
center
;
bottom
:
76px
;
}
.contentDetail
{
margin-top
:
15px
;
.wrapper_item
{
border-bottom
:
1px
#ddd
solid
;
margin-bottom
:
10px
;
.contentItem
{
display
:
flex
;
justify-content
:
space-between
;
align-items
:
center
;
// border-bottom: 1px #ddd solid;
margin
:
0
8px
5px
8px
;
>
span
:first-child
{
>
span
:first-child
{
white-space
:
nowrap
;
}
input
.form-control
{
// width: 60%;
// margin: 0 5px;
...
...
@@ -73,14 +88,17 @@
flex-wrap
:
wrap
;
font-size
:
16px
;
}
input
:
:-
webkit-input-placeholder
{
input
:
:-
webkit-input-placeholder
{
font-size
:
16px
;
// color: #0767bf;
}
.sexWrapper
{
display
:
flex
;
width
:
60%
;
justify-content
:
flex-end
;
.form-control.sex
{
width
:
20%
;
margin-left
:
5px
;
...
...
@@ -88,33 +106,40 @@
box-shadow
:
none
;
font-size
:
16px
;
}
.form-control.sex.sexBtn
{
border
:
1px
#0767bf
solid
;
}
.form-control
[
disabled
]
{
background-color
:
transparent
;
opacity
:
1
;
}
}
select
.form-control
{
direction
:
rtl
;
font-size
:
16px
;
}
select
.form-control
[
disabled
]
{
background-color
:
transparent
;
// color: #0767bf;
}
}
.contentItem
:last-child
{
border-bottom
:
none
;
}
}
}
.tagWrapper
{
display
:
flex
;
flex-wrap
:
wrap
;
padding-left
:
8px
;
div
.tagContent
{
margin
:
10px
3px
0
3px
;
height
:
28px
;
...
...
@@ -125,19 +150,22 @@
font-size
:
13px
;
padding
:
0
15px
;
}
div
.selected
{
border
:
1px
#0767bf
solid
;
}
}
.add
{
position
:
absolute
;
.iconfont
{
width
:
55px
;
height
:
55px
;
line-height
:
55px
;
border-radius
:
50%
;
position
:
fixed
;
right
:
42%
;
right
:
42%
;
font-size
:
24px
;
color
:
#fff
;
background
:
#0767bf
;
...
...
@@ -149,25 +177,31 @@
}
}
.answerContent
{
border-bottom
:
1px
#ddd
solid
;
margin-bottom
:
5px
;
padding
:
5px
0
;
.questionTitle
{
font-weight
:
700
;
font-size
:
13px
;
}
.questionContent
{
font-size
:
16px
;
}
}
.answerContent
:last-child
{
border-bottom
:
0
;
}
.record
{
display
:
flex
;
list-style
:
none
;
justify-content
:
space-between
;
li
{
width
:
30%
;
text-align
:
center
;
...
...
@@ -175,7 +209,8 @@
line-height
:
30px
;
}
}
.viewReportBtn
{
.viewReportBtn
{
position
:
fixed
;
bottom
:
70px
;
left
:
0
;
...
...
@@ -186,11 +221,13 @@
color
:
#fff
;
line-height
:
44px
;
}
.send
{
.send
{
position
:
fixed
;
bottom
:
80px
;
width
:
100%
;
div
{
div
{
margin
:
0
40px
;
height
:
40px
;
line-height
:
40px
;
...
...
@@ -218,32 +255,39 @@
min-width
:
320px
;
max-width
:
640px
;
margin
:
0
auto
;
>
div
{
>
div
{
height
:
50px
;
border-bottom
:
1px
solid
#dbdbdb
;
display
:
flex
;
align-items
:
center
;
justify-content
:
space-between
;
>
div
:first-child
{
>
div
:first-child
{
width
:
100px
;
font-size
:
15px
;
}
>
div
:last-child
{
>
div
:last-child
{
flex
:
1
;
}
.form-control
{
border
:
none
;
box-shadow
:
none
;
}
}
>
div
:last-child
{
>
div
:last-child
{
border
:
none
;
}
ul
.footer
{
display
:
flex
;
list-style
:
none
;
justify-content
:
center
;
margin-top
:
15%
;
li
{
width
:
30%
;
height
:
35px
;
...
...
@@ -256,18 +300,22 @@
}
}
}
.recordLists
{
li
{
border-bottom
:
1px
solid
#f0f0f0
;
padding
:
5px
10px
;
background
:
rgb
(
251
,
251
,
251
);
}
li
:last-child
{
border
:
none
;
}
.opportunityRecordItem
{
font-size
:
15px
;
}
.salesNotice
{
font-size
:
14px
;
color
:
#8a8a8a
;
...
...
@@ -276,9 +324,13 @@
display
:
flex
;
justify-content
:
space-between
;
align-items
:
center
;
span
{
span
{
width
:
85%
;
.form-control
[
disabled
],
.form-control
[
readonly
],
fieldset
[
disabled
]
.form-control
{
.form-control
[
disabled
],
.form-control
[
readonly
],
fieldset
[
disabled
]
.form-control
{
background-color
:
#eee
;
opacity
:
.5
;
border
:
none
;
...
...
@@ -287,16 +339,19 @@
padding-left
:
0
;
}
}
.iconfont
{
.iconfont
{
font-size
:
18px
;
}
}
.updatedAt
{
// font-size: 12px;
// color: #8a8a8a;
// text-align: right;
}
}
.toast
{
position
:
fixed
;
left
:
0
;
...
...
@@ -307,12 +362,14 @@
margin
:
0
auto
;
z-index
:
1
;
}
.toastWrapper
{
height
:
100%
;
background-color
:
rgba
(
0
,
0
,
0
,
.5
);
top
:
0
;
}
.am-list-item.am-input-item
{
.am-list-item.am-input-item
{
padding-left
:
0
;
}
}
\ No newline at end of file
src/app/my/my-business-detail/my-business-detail.component.ts
View file @
58254264
This diff is collapsed.
Click to expand it.
src/environments/environment.prod.ts
View file @
58254264
...
...
@@ -3,5 +3,6 @@ export const environment = {
BACKEND_URL_CONFIG_VALUE
:
'https://m.zuihuibi.cn/api'
,
ORIGINNAME
:
'https://m.zuihuibi.cn/ydapi'
,
DOMAINNAME
:
'https://m.zuihuibi.cn/'
,
BAIDU_TONGJI_CODE
:
'36b1eb7eec3b5dac9f97d887092b5b27'
BAIDU_TONGJI_CODE
:
'36b1eb7eec3b5dac9f97d887092b5b27'
,
SFPPROJECTURL
:
'https://m.cffp.org.cn'
};
src/environments/environment.stage.ts
View file @
58254264
...
...
@@ -6,5 +6,6 @@ export const environment = {
BACKEND_URL_CONFIG_VALUE
:
'https://mstage.zuihuibi.cn/api'
,
ORIGINNAME
:
'https://mstage.zuihuibi.cn/ydapi'
,
DOMAINNAME
:
'https://mstage.zuihuibi.cn/'
,
BAIDU_TONGJI_CODE
:
'84be9b9eaaca51048f32bb160ccad2e6'
BAIDU_TONGJI_CODE
:
'84be9b9eaaca51048f32bb160ccad2e6'
,
SFPPROJECTURL
:
'https://mstage.zuihuibi.cn'
};
src/environments/environment.ts
View file @
58254264
...
...
@@ -8,5 +8,7 @@ export const environment = {
BACKEND_URL_CONFIG_VALUE
:
'https://mdev.zuihuibi.cn/api'
,
ORIGINNAME
:
'https://mdev.zuihuibi.cn/ydapi'
,
DOMAINNAME
:
'https://mdev.zuihuibi.cn/'
,
BAIDU_TONGJI_CODE
:
'e8fa107d82e0471d097d545225aeed64'
BAIDU_TONGJI_CODE
:
'e8fa107d82e0471d097d545225aeed64'
,
// SFPPROJECTURL:'http://localhost:5173'
SFPPROJECTURL
:
'https://mdev.zuihuibi.cn'
};
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