Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
H
hls-xcmg-vue-app
Project
Project
Details
Activity
Releases
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
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
xugong
hls-xcmg-vue-app
Commits
0dfac473
Commit
0dfac473
authored
Dec 20, 2019
by
李晓兵
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'develop' of
https://hel.hand-china.com/xugong/hls-xcmg-vue-app
into develop
parents
9b6078e9
3352ddd9
Pipeline
#4273
canceled with stages
Changes
8
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
1241 additions
and
87 deletions
+1241
-87
finished.png
src/assets/contractCreate/finished.png
+0
-0
hint.png
src/assets/contractCreate/hint.png
+0
-0
creat-rent-info.vue
src/pages/contractCreate/creat-rent-info.vue
+570
-8
create-base-info.vue
src/pages/contractCreate/create-base-info.vue
+239
-40
sales-info.vue
src/pages/contractCreate/sales-info.vue
+366
-37
contract-repay-plan.vue
src/pages/contractSigning/contract-repay-plan.vue
+1
-1
contract-details.vue
src/pages/distributorSign/contract-details.vue
+64
-1
my-info.vue
src/pages/myInfo/my-info.vue
+1
-0
No files found.
src/assets/contractCreate/finished.png
0 → 100644
View file @
0dfac473
1006 Bytes
src/assets/contractCreate/hint.png
0 → 100644
View file @
0dfac473
823 Bytes
src/pages/contractCreate/creat-rent-info.vue
View file @
0dfac473
...
@@ -9,13 +9,13 @@
...
@@ -9,13 +9,13 @@
<h-content>
<h-content>
<div
class=
"top"
>
<div
class=
"top"
>
<div
class=
"item"
>
<div
class=
"item"
>
<
span>
1
</span
>
<
img
src=
"@/assets/contractCreate/finished.png"
>
<p>
基本信息
</p>
<p>
基本信息
</p>
</div>
</div>
<span
class=
"line"
/>
<span
class=
"line"
/>
<div
class=
"item"
>
<div
class=
"item"
>
<span>
2
</span>
<span>
2
</span>
<p>
租赁信息
</p>
<p
style=
"color: #383F45;"
>
租赁信息
</p>
</div>
</div>
<span
class=
"line"
/>
<span
class=
"line"
/>
<div
class=
"item"
>
<div
class=
"item"
>
...
@@ -23,17 +23,573 @@
...
@@ -23,17 +23,573 @@
<p>
附件信息
</p>
<p>
附件信息
</p>
</div>
</div>
</div>
</div>
<div
class=
"userInfo"
>
租赁产品
</div>
<list-item
:item-height=
"44"
>
<item
:showArrow=
"true"
@
click
.
native=
"showModalValue=true"
>
<div
slot=
"name"
>
产品线
</div>
<input
slot=
"content"
readonly
placeholder=
"暂无信息"
>
</item>
<item
:showArrow=
"true"
>
<div
slot=
"name"
>
产品型号
</div>
<input
slot=
"content"
readonly
placeholder=
"暂无信息"
>
</item>
<item>
<div
slot=
"name"
>
产品数量
</div>
<input
slot=
"content"
readonly
placeholder=
"暂无信息"
>
</item>
</list-item>
<div
class=
"userInfo"
>
融资信息
</div>
<div
class=
"hint-info"
>
<img
src=
"@/assets/contractCreate/hint.png"
>
提示 以下为单个设备商务政策
</div>
<list-item
:item-height=
"44"
>
<item
:showArrow=
"true"
@
click
.
native=
"showModalBusiness = true"
>
<div
slot=
"name"
>
商务政策
</div>
<input
slot=
"content"
readonly
placeholder=
"暂无信息"
>
</item>
<item>
<div
slot=
"name"
>
设备单价
</div>
<CurrencyInput
slot=
"content"
readonly
placeholder=
"暂无信息"
/></item>
<item>
<div
slot=
"name"
>
融资金额
</div>
<CurrencyInput
slot=
"content"
readonly
placeholder=
"暂无信息"
/></item>
<item>
<div
slot=
"name"
>
首付比例
</div>
<input
slot=
"content"
readonly
placeholder=
"暂无信息"
>
</item>
<item>
<div
slot=
"name"
>
首付款
</div>
<CurrencyInput
slot=
"content"
readonly
placeholder=
"暂无信息"
/></item>
<item>
<div
slot=
"name"
>
保证金比例
</div>
<input
slot=
"content"
readonly
placeholder=
"暂无信息"
>
</item>
<item>
<div
slot=
"name"
>
保证金
</div>
<CurrencyInput
slot=
"content"
readonly
placeholder=
"暂无信息"
/></item>
<item>
<div
slot=
"name"
>
手续费比例
</div>
<input
slot=
"content"
readonly
placeholder=
"暂无信息"
>
</item>
<item>
<div
slot=
"name"
>
手续费
</div>
<CurrencyInput
slot=
"content"
readonly
placeholder=
"暂无信息"
/></item>
<item>
<div
slot=
"name"
>
GPS费用
</div>
<CurrencyInput
slot=
"content"
readonly
placeholder=
"暂无信息"
/></item>
<item>
<div
slot=
"name"
>
保险押金
</div>
<CurrencyInput
slot=
"content"
readonly
placeholder=
"暂无信息"
/></item>
<item
class=
"date-check"
>
<div
slot=
"name"
>
预计付款日
</div>
<input
slot=
"content"
readonly
placeholder=
"暂无信息"
>
</item>
<item
:showArrow=
"true"
>
<div
slot=
"name"
>
还款周期
</div>
<input
slot=
"content"
readonly
placeholder=
"暂无信息"
>
</item>
<item>
<div
slot=
"name"
>
租赁期数
</div>
<input
slot=
"content"
readonly
placeholder=
"暂无信息"
>
</item>
<item>
<div
slot=
"name"
>
年利率
</div>
<input
slot=
"content"
readonly
placeholder=
"暂无信息"
>
</item>
<item
:showArrow=
"true"
>
<div
slot=
"name"
>
支付方式
</div>
<input
slot=
"content"
readonly
placeholder=
"暂无信息"
>
</item>
<item>
<div
slot=
"name"
>
逾期日利率
</div>
<input
slot=
"content"
readonly
placeholder=
"暂无信息"
>
</item>
<item>
<div
slot=
"name"
>
留购价
</div>
<CurrencyInput
slot=
"content"
readonly
placeholder=
"暂无信息"
/>
</item>
<item
:showArrow=
"true"
@
click
.
native=
"goPlan"
>
<div
slot=
"name"
>
查看还款计划
</div>
<input
slot=
"content"
readonly
>
</item>
</list-item>
</h-content>
</h-content>
<bottom-tab
class=
"add-box"
>
<tab-button
class=
"before"
>
计算
</tab-button>
<tab-button
class=
"next"
@
click
.
native=
"goRent"
>
下一步
</tab-button>
</bottom-tab>
<h-modal
ref=
"modal"
v-model=
"showModalValue"
class=
"flow"
position=
"bottom"
>
<h-view
id=
"product-list"
>
<h-header
:proportion=
"[1,4,1]"
class=
"bar-custom"
>
<span
slot=
"center"
style=
"color:#fff"
>
选择产品
</span>
<span
slot=
"right"
style=
"color:#fff"
@
click=
"showModalValue=false"
>
取消
</span>
</h-header>
<h-content>
<div
class=
"search has-header"
>
<input
v-model=
"keyWord"
placeholder=
"请输入产品名称"
>
</div>
<div
class=
"division-box"
>
<list-item
v-for=
"(item,index) in divisionLists"
:key=
"index"
>
<item
:proportion=
"[1,4]"
@
click
.
native=
"goDetailed(item.product_id,item.collect_status,item.bp_id)"
>
<div
slot=
"name"
class=
"item-pic"
>
<img
:src=
"item.url"
alt=
""
>
</div>
<div
slot=
"content"
class=
"item-content"
>
<div
class=
"pro-name"
>
<p>
{{
item
.
product_name
}}
</p>
<img
class=
"arrow"
src=
"@/assets/productQuery/getIn.png"
alt=
""
>
</div>
<div
class=
"centers"
>
<p
class=
"firsts1"
>
{{
item
.
bp_type_n
}}
</p>
<p
class=
"seconds1"
>
{{
item
.
bp_name
}}
</p>
</div>
<div
class=
"centers"
>
<p
class=
"firsts1"
>
参数项
</p>
<p
class=
"seconds1"
>
{{
item
.
product_code
}}
</p>
</div>
</div>
</item>
</list-item>
</div>
</h-content>
</h-view>
</h-modal>
<h-modal
ref=
"modal"
v-model=
"showModalBusiness "
class=
"flow"
position=
"bottom"
>
<h-view
id=
"businuss-list"
>
<h-header
:proportion=
"[1,4,1]"
class=
"bar-custom"
>
<span
slot=
"center"
style=
"color:#fff"
>
选择商务政策
</span>
<span
slot=
"right"
style=
"color:#fff"
@
click=
"showModalBusiness=false"
>
取消
</span>
</h-header>
<h-content>
<div
class=
"search has-header"
>
<input
v-model=
"keyWord"
placeholder=
"请输入商务政策名称"
>
</div>
<div
class=
"division-box"
>
<section
v-for=
"(item,index) in businessLists"
:key=
"index"
>
<div
class=
"descript"
@
click=
"goDetails(item.product_plan_id)"
>
<img
src=
"@/assets/trial/product.png"
alt=
""
>
<p
class=
"produc"
>
{{
item
.
product_plan_id_n
}}
</p>
</div>
<div
class=
"tario"
>
<div
class=
"wrap"
>
<p
class=
"ratio"
>
<span>
保证金比例
</span>
<span>
{{
item
.
deposit_ratio_n
}}
</span>
</p>
<p>
<span>
手续费比例
</span>
<span>
{{
item
.
lease_charge_ratio_n
}}
</span>
</p>
</div>
<div
class=
"wrap"
>
<p>
<span>
年利率
</span>
<span>
{{
item
.
int_rate_n
}}
</span>
</p>
<p>
<span>
期
限
</span>
<span>
{{
item
.
lease_times
}}
期
</span>
</p>
</div>
</div>
</section>
</div>
</h-content>
</h-view>
</h-modal>
</h-view>
</h-view>
</
template
>
</
template
>
<
script
>
<
script
>
import
CurrencyInput
from
'../../components/currencyInput'
export
default
{
export
default
{
components
:
{
CurrencyInput
,
},
data
()
{
return
{
showModalValue
:
false
,
showModalBusiness
:
false
,
keyWord
:
''
,
businessLists
:
[
{
'lease_times'
:
'12'
,
'deposit_ratio_n'
:
' 16.00%'
,
'lease_charge_ratio_n'
:
' 4.00%'
,
'product_plan_id'
:
'69'
,
'lease_charge_ratio'
:
'0.04'
,
'int_rate_n'
:
' 6.00%'
,
'int_rate'
:
'0.06'
,
'deposit_ratio'
:
'0.16'
,
'product_plan_id_n'
:
'等额本息-按月-12期'
,
},
{
'lease_times'
:
'4'
,
'deposit_ratio_n'
:
' 10.00%'
,
'lease_charge_ratio_n'
:
' 5.00%'
,
'product_plan_id'
:
'70'
,
'lease_charge_ratio'
:
'0.05'
,
'int_rate_n'
:
' 6.00%'
,
'int_rate'
:
'0.06'
,
'deposit_ratio'
:
'0.1'
,
'product_plan_id_n'
:
'等额本息-按季-4期'
,
},
{
'lease_times'
:
'12'
,
'deposit_ratio_n'
:
' 25.00%'
,
'lease_charge_ratio_n'
:
' 5.00%'
,
'product_plan_id'
:
'109'
,
'lease_charge_ratio'
:
'0.05'
,
'int_rate_n'
:
' 7.50%'
,
'int_rate'
:
'0.075'
,
'deposit_ratio'
:
'0.25'
,
'product_plan_id_n'
:
'等额本金-双月-12期'
,
},
{
'lease_times'
:
'24'
,
'deposit_ratio_n'
:
' 15.00%'
,
'lease_charge_ratio_n'
:
' 15.00%'
,
'product_plan_id'
:
'132'
,
'lease_charge_ratio'
:
'0.15'
,
'int_rate_n'
:
' 7.00%'
,
'int_rate'
:
'0.07'
,
'deposit_ratio'
:
'0.15'
,
'product_plan_id_n'
:
'等额本息-按月-24期'
,
}],
divisionLists
:
[
{
'bp_name'
:
'重型重庆办'
,
'bp_id'
:
'41'
,
'product_id'
:
'5'
,
'product_attachment_id'
:
'88039'
,
'product_code'
:
'QAY130'
,
'product_name'
:
'全地面起重机QAY130'
,
'bp_type_n'
:
'办事处'
,
'collect_status'
:
'Y'
,
},
{
'bp_name'
:
'重型银川办'
,
'bp_id'
:
'61'
,
'product_id'
:
'5'
,
'product_attachment_id'
:
'88039'
,
'product_code'
:
'QAY130'
,
'product_name'
:
'全地面起重机QAY130'
,
'bp_type_n'
:
'办事处'
,
'collect_status'
:
'N'
,
},
{
'bp_name'
:
'上海汉得信息技术股份有限公司'
,
'bp_id'
:
'7781'
,
'product_id'
:
'5'
,
'product_attachment_id'
:
'88039'
,
'product_code'
:
'QAY130'
,
'product_name'
:
'全地面起重机QAY130'
,
'bp_type_n'
:
'经销商'
,
'collect_status'
:
'N'
,
},
{
'bp_name'
:
'广州市易推信息商务科技有限公司'
,
'bp_id'
:
'8143'
,
'product_id'
:
'5'
,
'product_attachment_id'
:
'88039'
,
'product_code'
:
'QAY130'
,
'product_name'
:
'全地面起重机QAY130'
,
'bp_type_n'
:
'经销商'
,
'collect_status'
:
'N'
,
},
],
}
},
methods
:
{
goPlan
()
{
this
.
$router
.
push
({
name
:
'ContractRepayPlan'
,
params
:
{
product_num
:
2
,
project_id
:
123
,
},
})
},
},
}
}
</
script
>
</
script
>
<
style
lang=
"less"
scoped
>
<
style
lang=
"less"
>
#create-rent-info{
#create-rent-info {
.top {
.flow{
z-index:999;
}
.hls-list-item {
margin-bottom: 0px !important;
}
.h-header-right{
display: flex;
align-items: center;
}
#businuss-list{
.search {
background-color: #fff;
padding: 8px 12px;
width: 100%;
height: 1.02rem;
z-index: 100;
margin-bottom: 8px;
input {
background: url("../../assets/contractStart/search1.png") 320px no-repeat;
background-size: 16px 16px;
background-color: rgba(239, 239, 239, 0.55);
padding-left: 12px;
height:36px;
line-height: 36px;
border-radius: 4px;
width: 100%;
font-family: PingFangSC-Regular;
font-size: 14px;
color: #888c8f;
}
input::placeholder {
font-family: PingFangSC-Regular;
font-size: 14px;
color: #888c8f;
letter-spacing: 0;
}
input:focus {
background: url("../../assets/contractStart/search2.png") 320px no-repeat;
background-size: 16px 16px;
background-color: rgba(239, 239, 239, 0.55);
border: 2px solid #bcc6ff;
}
}
.descript {
width: 100%;
height: 44px;
display: flex;
flex-direction: row;
background: #fff;
img {
width: 30px;
height: 30px;
margin-left: 10px;
margin-top: 8px;
// margin-right: 8px;
}
.linkPic {
width: 16px;
height: 16px;
margin-top: 15px;
margin-left: -7px;
margin-right: 10px;
}
.produc {
height: 44px;
display: flex;
flex: 1;
font-size: 15px;
color: #4B4A4B;
line-height: 44px;
font-weight: 500;
letter-spacing: 0;
margin-left: 10px;
font-family: PingFangSC-Semibold;
border-bottom: 1px solid #F3F3F7;
}
}
.tario {
width: 100%;
height: 60px;
position: relative;
background: #fff;
// margin-bottom: 8px;
.wrap:nth-of-type(1) {
height: 60px;
position: absolute;
left: 50px;
}
.wrap:nth-of-type(2) {
height: 60px;
position: absolute;
right: 30px;
}
p {
height: 30px;
line-height: 30px;
font-family: PingFangSC-Regular;
font-size: 13px;
color: rgba(56, 63, 69, 0.60);
span:nth-of-type(2) {
margin-left: 16px;
color: rgb(56, 63, 69);
}
}
}
}
#product-list{
.hls-list-item {
border-radius: 4px;
}
.item-pic {
width: 100px;
//height: 110px;
img {
width: 100%;
height: 100%;
}
}
.item-content {
width: 100%;
margin-left: 20px;
.pro-name {
height: 42px;
width: 100%;
position: relative;
border-bottom: 1px solid #F3F3F7;
.arrow {
position: absolute;
width: 16px;
height: 16px;
right: 0;
top: 13px;
}
p {
height: 42px;
line-height: 42px;
font-family: PingFangSC-Semibold;
font-size: 15px;
color: #4B4A4B;
letter-spacing: 0;
font-weight: 600;
}
}
.centers {
font-family: PingFangSC-Semibold;
font-size: 13px;
color: rgba(56,63,69,0.60);
letter-spacing: 0.5px;
display: flex;
flex-direction: row;
margin-top: 8px;
.firsts1 {
width: 60px;
height: 17px;
font-family: PingFangSC-Regular;
font-size: 13px;
color: rgba(56,63,69,0.60);
}
.seconds1 {
width: 70%;
margin-left: 16px;
height: auto;
font-family: PingFangSC-Regular;
font-size: 13px;
color: #4B4A4B;
}
}
}
.item{
width:359px;
margin:0 auto;
}
.search {
background-color: #fff;
padding: 8px 12px;
width: 100%;
height: 1.02rem;
z-index: 100;
margin-bottom: 8px;
input {
background: url("../../assets/contractStart/search1.png") 320px no-repeat;
background-size: 16px 16px;
background-color: rgba(239, 239, 239, 0.55);
padding-left: 12px;
height:36px;
line-height: 36px;
border-radius: 4px;
width: 100%;
font-family: PingFangSC-Regular;
font-size: 14px;
color: #888c8f;
}
input::placeholder {
font-family: PingFangSC-Regular;
font-size: 14px;
color: #888c8f;
letter-spacing: 0;
}
input:focus {
background: url("../../assets/contractStart/search2.png") 320px no-repeat;
background-size: 16px 16px;
background-color: rgba(239, 239, 239, 0.55);
border: 2px solid #bcc6ff;
}
}
}
.date-check{
background:url('../../assets/trial/date.png') 350px no-repeat;
background-size: 16px 16px;
padding-right:15px;
}
.hint-info {
width: 100%;
height: 36px;
font-family: PingFangSC-Regular;
font-size: 14px;
color: #fcc800;
letter-spacing: 0.5px;
background-color: #faf5e0;
display:flex;
align-items: center;
img{
width:16px;
height:16px;
margin-left:17px;
margin-right: 17px;
}
}
.add-box {
.before {
border: 1px solid #fdb62f;
border-radius: 4px;
color: #fdb62f;
}
.next {
background: #1d3fff;
border-radius: 4px;
color: #fff;
}
}
.userInfo:first-of-type {
margin-top: 10px;
}
.userInfo {
height: 40px;
line-height: 40px;
color: @headerColor;
// margin-top: -10px;
font-size: 15px;
margin-left: 16px;
position: relative;
}
.userInfo::before {
content: "";
display: block;
width: 4px;
height: 20px;
background-color: @headerColor;
position: absolute;
left: -15px;
top: 12px;
}
.top {
width: 100%;
width: 100%;
height: 81px;
height: 81px;
background-color: #faf5e0;
background-color: #faf5e0;
...
@@ -46,6 +602,9 @@ export default {
...
@@ -46,6 +602,9 @@ export default {
border-top: 1px solid #a4a4a4;
border-top: 1px solid #a4a4a4;
margin-bottom: 18px;
margin-bottom: 18px;
}
}
.line:nth-of-type(1) {
border-top: 1px solid #ffa000;
}
.item {
.item {
display: flex;
display: flex;
justify-content: center;
justify-content: center;
...
@@ -55,6 +614,9 @@ export default {
...
@@ -55,6 +614,9 @@ export default {
font-size: 12px;
font-size: 12px;
color: rgba(56, 63, 69, 0.5);
color: rgba(56, 63, 69, 0.5);
letter-spacing: 0.43px;
letter-spacing: 0.43px;
img {
width: 18px;
}
span {
span {
display: block;
display: block;
text-align: center;
text-align: center;
...
@@ -69,10 +631,10 @@ export default {
...
@@ -69,10 +631,10 @@ export default {
margin-top: 10px;
margin-top: 10px;
}
}
}
}
.item:n
th-of-type(1
) {
.item:n
ot(:nth-of-type(3)
) {
font-family: PingFangSC-Semibold;
font-family: PingFangSC-Semibold;
font-size: 12px;
font-size: 12px;
color:
#383f45
;
color:
rgba(56, 63, 69, 0.5)
;
letter-spacing: 0.43px;
letter-spacing: 0.43px;
span {
span {
background-color: #ffa000;
background-color: #ffa000;
...
...
src/pages/contractCreate/create-base-info.vue
View file @
0dfac473
...
@@ -29,46 +29,51 @@
...
@@ -29,46 +29,51 @@
<list-item
:item-height=
"44"
>
<list-item
:item-height=
"44"
>
<item>
<item>
<div
slot=
"name"
>
姓名
</div>
<div
slot=
"name"
>
姓名
</div>
<input
slot=
"content"
readonly
placeholder=
"暂无信息"
>
<input
slot=
"content"
v-model=
"NPBaseInfo.bp_name"
readonly
placeholder=
"暂无信息"
>
</item>
</item>
<item>
<item>
<div
slot=
"name"
>
身份证号
</div>
<div
slot=
"name"
>
身份证号
</div>
<input
slot=
"content"
readonly
placeholder=
"暂无信息"
>
<input
slot=
"content"
v-model=
"NPBaseInfo.id_card_no"
readonly
placeholder=
"暂无信息"
>
</item>
</item>
<item>
<item>
<div
slot=
"name"
>
手机号码
</div>
<div
slot=
"name"
>
手机号码
</div>
<input
slot=
"content"
readonly
placeholder=
"暂无信息"
>
<input
slot=
"content"
v-model=
"NPBaseInfo.cell_phone"
readonly
placeholder=
"暂无信息"
>
</item>
</item>
<item>
<item>
<div
slot=
"name"
>
婚姻
</div>
<div
slot=
"name"
>
婚姻
</div>
<input
slot=
"content"
placeholder=
"暂无信息"
readonly
>
<input
slot=
"content"
v-model=
"NPBaseInfo.marital_status_n"
placeholder=
"暂无信息"
readonly
>
</item>
</item>
<item>
<item>
<div
slot=
"name"
>
户籍地址
</div>
<div
slot=
"name"
>
户籍地址
</div>
<
input
slot=
"content"
readonly
placeholder=
"暂无信息"
>
<
span
slot=
"content"
>
{{
NPBaseInfo
.
address_on_resident_booklit
}}
</span
>
</item>
</item>
<item>
<item>
<div
slot=
"name"
>
联系地址
</div>
<div
slot=
"name"
>
联系地址
</div>
<
input
slot=
"content"
readonly
placeholder=
"暂无信息"
>
<
span
slot=
"content"
>
{{
NPBaseInfo
.
address_on_resident_booklit
}}
</span
>
</item>
</item>
</list-item>
</list-item>
<div
class=
"userInfo"
>
配偶信息
</div>
<div
v-if=
"NPBaseInfo.marital_status_n==='已婚'"
class=
"userInfo"
>
配偶信息
</div>
<list-item
:item-height=
"44"
>
<list-item
v-if=
"NPBaseInfo.marital_status_n==='已婚'"
:item-height=
"44"
>
<item>
<item>
<div
slot=
"name"
>
姓名
</div>
<div
slot=
"name"
>
姓名
</div>
<input
slot=
"content"
readonly
placeholder=
"暂无信息"
>
<input
slot=
"content"
v-model=
"NPBaseInfo.bp_name_sp"
readonly
placeholder=
"暂无信息"
>
</item>
</item>
<item>
<item>
<div
slot=
"name"
>
手机号码
</div>
<div
slot=
"name"
>
手机号码
</div>
<input
slot=
"content"
readonly
placeholder=
"暂无信息"
>
<input
slot=
"content"
v-model=
"NPBaseInfo.spouse_phone"
readonly
placeholder=
"暂无信息"
>
</item>
</item>
<item>
<item>
<div
slot=
"name"
>
工作单位
</div>
<div
slot=
"name"
>
工作单位
</div>
<
input
slot=
"content"
readonly
placeholder=
"暂无信息"
>
<
span
slot=
"content"
>
{{
NPBaseInfo
.
working_place_sp
}}
</span
>
</item>
</item>
<item>
<item>
<div
slot=
"name"
>
居住地址
</div>
<div
slot=
"name"
>
居住地址
</div>
<
input
slot=
"content"
placeholder=
"暂无信息"
readonly
>
<
span
slot=
"content"
>
{{
NPBaseInfo
.
address_sp
}}
</span
>
</item>
</item>
</list-item>
</list-item>
<div
class=
"another-info"
>
<div
class=
"another-info"
>
...
@@ -77,19 +82,27 @@
...
@@ -77,19 +82,27 @@
<list-item
:item-height=
"44"
>
<list-item
:item-height=
"44"
>
<item
:showArrow=
"true"
>
<item
:showArrow=
"true"
>
<div
slot=
"name"
>
行业情况
</div>
<div
slot=
"name"
>
行业情况
</div>
<input
slot=
"content"
readonly
placeholder=
"请选择"
>
<input
slot=
"content"
v-model=
"saveInfo.np_industry_exp_n"
readonly
placeholder=
"请选择"
@
click=
"selectBussinessSituation"
>
</item>
</item>
<item
:showArrow=
"true"
>
<item
:showArrow=
"true"
>
<div
slot=
"name"
>
职业情况
</div>
<div
slot=
"name"
>
职业情况
</div>
<input
slot=
"content"
readonly
placeholder=
"请选择"
>
<input
slot=
"content"
v-model=
"saveInfo.np_occupation_n"
readonly
placeholder=
"请选择"
@
click=
"selectJobSituation"
>
</item>
</item>
<item
:showArrow=
"true"
>
<item
:showArrow=
"true"
>
<div
slot=
"name"
>
房产信息
</div>
<div
slot=
"name"
>
房产信息
</div>
<input
slot=
"content"
readonly
placeholder=
"请选择"
>
<input
slot=
"content"
v-model=
"saveInfo.house_type_n"
readonly
placeholder=
"请选择"
@
click=
"selectHouseInfo"
>
</item>
</item>
<item
:showArrow=
"true"
>
<item
:showArrow=
"true"
>
<div
slot=
"name"
>
设备价值
</div>
<div
slot=
"name"
>
设备价值
</div>
<input
slot=
"content"
placeholder=
"请选择"
readonly
>
<input
slot=
"content"
v-model=
"saveInfo.equip_value"
placeholder=
"请选择"
readonly
@
click=
"selectEquipInfo"
>
</item>
</item>
<item
class=
"check"
@
click
.
native=
"checked=!checked"
>
<item
class=
"check"
@
click
.
native=
"checked=!checked"
>
<div
slot=
"name"
>
农行代扣
</div>
<div
slot=
"name"
>
农行代扣
</div>
...
@@ -103,7 +116,7 @@
...
@@ -103,7 +116,7 @@
</item>
</item>
<item>
<item>
<div
slot=
"name"
>
特批事项
</div>
<div
slot=
"name"
>
特批事项
</div>
<input
slot=
"content"
placeholder=
"暂无信息"
readonly
>
<input
slot=
"content"
v-model=
"saveInfo.special_matter"
placeholder=
"暂无信息"
readonly
>
</item>
</item>
</list-item>
</list-item>
</div>
</div>
...
@@ -222,13 +235,13 @@
...
@@ -222,13 +235,13 @@
<tab-button
class=
"before"
@
click
.
native=
"$routeGo()"
>
上一步
</tab-button>
<tab-button
class=
"before"
@
click
.
native=
"$routeGo()"
>
上一步
</tab-button>
<tab-button
class=
"next"
@
click
.
native=
"goRent"
>
下一步
</tab-button>
<tab-button
class=
"next"
@
click
.
native=
"goRent"
>
下一步
</tab-button>
</bottom-tab>
</bottom-tab>
<h-modal
ref=
"modal"
v-model=
"showModalValue"
position=
"bottom"
>
<h-modal
ref=
"modal"
v-model=
"showModalValue"
class=
"flow"
position=
"bottom"
>
<h-view
id=
"add-person"
>
<h-view
id=
"add-person"
>
<h-header
:proportion=
"[
5,1
,1]"
class=
"bar-custom"
>
<h-header
:proportion=
"[
1,4
,1]"
class=
"bar-custom"
>
<
div
slot=
"left"
class=
"h-header-btn"
>
<
!--
<div
class=
"h-header-btn"
>
--
>
<span
>
添加担保人
</span>
<span
slot=
"center"
style=
"color:#fff"
>
添加担保人
</span>
<
/div
>
<
span
slot=
"right"
style=
"color:#fff"
@
click=
"showModalValue=false"
>
取消
</span
>
<
img
slot=
"right"
src=
"@/assets/userBind/arrow.png"
@
click=
"showModalValue=false"
>
<
!--
</div>
--
>
</h-header>
</h-header>
<h-content>
<h-content>
<div
class=
"search has-header"
>
<div
class=
"search has-header"
>
...
@@ -237,7 +250,10 @@
...
@@ -237,7 +250,10 @@
<list-item
:item-height=
"68"
class=
"item"
>
<list-item
:item-height=
"68"
class=
"item"
>
<item>
<item>
<img
slot=
"left-icon"
src=
"@/assets/contractCreate/name.png"
class=
"left-icon"
>
<img
slot=
"left-icon"
src=
"@/assets/contractCreate/name.png"
class=
"left-icon"
>
<div
slot=
"name"
>
担保人名称
<br>
证件号
</div>
<div
slot=
"name"
>
担保人名称
<br
>
证件号
</div>
<div
slot=
"content"
>
<div
slot=
"content"
>
<input
placeholder=
"暂无信息"
readonly
>
<input
placeholder=
"暂无信息"
readonly
>
<input
placeholder=
"暂无信息"
readonly
>
<input
placeholder=
"暂无信息"
readonly
>
...
@@ -255,16 +271,49 @@ export default {
...
@@ -255,16 +271,49 @@ export default {
return
{
return
{
checked
:
false
,
// 农行代扣
checked
:
false
,
// 农行代扣
checkedApproved
:
false
,
// 是否特批
checkedApproved
:
false
,
// 是否特批
bp_class
:
'
ORG
'
,
bp_class
:
''
,
showModalValue
:
false
,
showModalValue
:
false
,
keyWord
:
''
,
BussinessSituationList
:
[],
// 行业情况
jobSituationList
:
[],
// 职业情况
houseInfonList
:
[],
// 房产信息
equipInfonList
:
[],
// 设备信息
NPBaseInfo
:
{},
// 自然人基本信息
ORGBaseInfo
:
{},
// 企业基本信息
saveInfo
:
{
// 需要保存的信息
project_id
:
''
,
bp_id
:
window
.
localStorage
.
bp_id
,
bp_class
:
window
.
localStorage
.
bp_class
,
equip_num
:
''
,
equip_value
:
''
,
engineer_con
:
''
,
enterpriese_nature
:
''
,
abc_deduction_flag
:
''
,
special_flag
:
''
,
special_matter
:
''
,
np_industry_exp
:
''
,
np_occupation
:
''
,
house_type
:
''
,
house_type_n
:
''
,
np_industry_exp_n
:
''
,
np_occupation_n
:
''
,
bp_id_guta_1
:
''
,
bp_id_guta_2
:
''
,
bp_id_guta_3
:
''
,
},
}
}
},
},
beforeRouteEnter
(
to
,
from
,
next
)
{
next
(
vm
=>
{
vm
.
showModalValue
=
false
vm
.
bp_class
=
window
.
localStorage
.
bp_class
if
(
from
.
name
===
'ContractCreateList'
)
{
vm
.
getBaseInfo
()
}
})
},
methods
:
{
methods
:
{
addPerson
()
{
addPerson
()
{
// this.$router.push({
// name:
// 'AddPerson',
// })
this
.
showModalValue
=
true
this
.
showModalValue
=
true
},
},
goRent
()
{
goRent
()
{
...
@@ -272,11 +321,154 @@ export default {
...
@@ -272,11 +321,154 @@ export default {
name
:
'CreateRentInfo'
,
name
:
'CreateRentInfo'
,
})
})
},
},
getBaseInfo
()
{
if
(
this
.
bp_class
===
'NP'
)
{
this
.
getNPInfo
()
this
.
getBussinessSituation
()
this
.
getJobSituation
()
this
.
getHouseInfo
()
this
.
getEquipInfo
()
}
else
if
(
this
.
bp_class
===
'ORG'
)
{
this
.
getORGInfo
()
}
},
getNPInfo
()
{
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'bp_np_info_query'
let
param
=
{
bp_id
:
window
.
localStorage
.
getItem
(
'bp_id'
),
}
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
$post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
vm
.
NPBaseInfo
=
res
.
info
}
else
{
hlsPopup
.
showLongCenter
(
res
.
message
)
}
})
},
getEquipInfo
()
{
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'prj_equip_values_query'
let
param
=
{}
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
vm
.
equipInfonList
=
res
.
lists
.
map
(
item
=>
{
return
{
code
:
item
.
equip_value
,
code_name
:
item
.
equip_value
,
}
})
}
})
},
selectEquipInfo
(
e
)
{
let
vm
=
this
vm
.
hlsPopup
.
selectList
({
list
:
vm
.
equipInfonList
,
code
:
'bp_type'
,
object
:
{},
returnItem
:
function
(
index
,
obj
)
{
vm
.
saveInfo
.
equip_value
=
obj
.
bp_type
},
})
},
getHouseInfo
()
{
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'prj_estate_type_query'
let
param
=
{}
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
vm
.
houseInfonList
=
res
.
lists
.
map
(
item
=>
{
return
{
code
:
item
.
house_type
,
code_name
:
item
.
house_type_n
,
}
})
}
})
},
selectHouseInfo
(
e
)
{
let
vm
=
this
vm
.
hlsPopup
.
selectList
({
list
:
vm
.
houseInfonList
,
code
:
'bp_type'
,
object
:
{},
returnItem
:
function
(
index
,
obj
)
{
vm
.
saveInfo
.
house_type
=
obj
.
bp_type
vm
.
saveInfo
.
house_type_n
=
obj
.
bp_type_n
},
})
},
getBussinessSituation
()
{
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'prj_bussiness_situation'
let
param
=
{}
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
vm
.
BussinessSituationList
=
res
.
lists
.
map
(
item
=>
{
return
{
code
:
item
.
np_industry_exp
,
code_name
:
item
.
np_industry_exp_n
,
}
})
}
})
},
selectBussinessSituation
(
e
)
{
let
vm
=
this
vm
.
hlsPopup
.
selectList
({
list
:
vm
.
BussinessSituationList
,
code
:
'bp_type'
,
object
:
{},
returnItem
:
function
(
index
,
obj
)
{
vm
.
saveInfo
.
np_industry_exp
=
obj
.
bp_type
vm
.
saveInfo
.
np_industry_exp_n
=
obj
.
bp_type_n
},
})
},
getJobSituation
()
{
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'prj_job_situation'
let
param
=
{}
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
vm
.
jobSituationList
=
res
.
lists
.
map
(
item
=>
{
return
{
code
:
item
.
np_occupation
,
code_name
:
item
.
np_occupation_n
,
}
})
}
})
},
selectJobSituation
(
e
)
{
let
vm
=
this
vm
.
hlsPopup
.
selectList
({
list
:
vm
.
jobSituationList
,
code
:
'bp_type'
,
object
:
{},
returnItem
:
function
(
index
,
obj
)
{
vm
.
saveInfo
.
np_occupation
=
obj
.
bp_type
vm
.
saveInfo
.
np_occupation_n
=
obj
.
bp_type_n
},
})
},
getORGInfo
()
{},
deleteFun
()
{},
deleteFun
()
{},
},
},
}
}
</
script
>
</
script
>
<
style
lang=
"less"
scoped
>
<
style
lang=
"less"
>
#create-base-info {
#create-base-info {
.swipeout-list .item .function {
.swipeout-list .item .function {
height: 68px;
height: 68px;
...
@@ -290,6 +482,13 @@ export default {
...
@@ -290,6 +482,13 @@ export default {
.swipeout-list {
.swipeout-list {
padding: 0px;
padding: 0px;
}
}
.h-header-right {
display: flex;
align-items: center;
}
.flow {
z-index: 999;
}
.left-icon {
.left-icon {
width: 18px;
width: 18px;
height: 18px;
height: 18px;
...
@@ -355,8 +554,8 @@ export default {
...
@@ -355,8 +554,8 @@ export default {
border: 1px solid #1d3fff;
border: 1px solid #1d3fff;
border-radius: 3px;
border-radius: 3px;
}
}
img{
img
{
width:
16px;
width:
16px;
}
}
}
}
.another-info {
.another-info {
...
@@ -417,12 +616,12 @@ export default {
...
@@ -417,12 +616,12 @@ export default {
}
}
}
}
}
}
#add-person{
#add-person
{
.item
{
.item
{
width:
359px;
width:
359px;
margin:
0 auto;
margin:
0 auto;
}
}
.search {
.search {
background-color: #fff;
background-color: #fff;
padding: 8px 12px;
padding: 8px 12px;
width: 100%;
width: 100%;
...
@@ -434,7 +633,7 @@ export default {
...
@@ -434,7 +633,7 @@ export default {
background-size: 16px 16px;
background-size: 16px 16px;
background-color: rgba(239, 239, 239, 0.55);
background-color: rgba(239, 239, 239, 0.55);
padding-left: 12px;
padding-left: 12px;
height:36px;
height:
36px;
line-height: 36px;
line-height: 36px;
border-radius: 4px;
border-radius: 4px;
width: 100%;
width: 100%;
...
...
src/pages/contractCreate/sales-info.vue
View file @
0dfac473
<!--
<!--
* @Author: your name
* @Author: your name
* @Date: 2019-09-29 10:02:11
* @Date: 2019-09-29 10:02:11
* @LastEditTime: 2019-12-
19 16:06:34
* @LastEditTime: 2019-12-
20 17:03:56
* @LastEditors: Please set LastEditors
* @LastEditors: Please set LastEditors
* @Description: In User Settings Edit
* @Description: In User Settings Edit
-->
-->
...
@@ -17,12 +17,13 @@
...
@@ -17,12 +17,13 @@
<list-item
:item-height=
"44"
class=
"second-part"
>
<list-item
:item-height=
"44"
class=
"second-part"
>
<item
:showArrow=
"true"
@
click
.
native=
"picker"
>
<item
:showArrow=
"true"
@
click
.
native=
"picker"
>
<div
slot=
"name"
class=
"font-color"
>
承租人
</div>
<div
slot=
"name"
class=
"font-color"
>
承租人
</div>
<
span
slot=
"content"
>
{{
'请选择'
}}
</span
>
<
input
slot=
"content"
v-model=
"lessee"
placeholder=
"请选择"
>
</item>
</item>
<item
:showArrow=
"true"
>
<item
:showArrow=
"true"
>
<div
slot=
"name"
class=
"font-color"
>
业务类型
</div>
<div
slot=
"name"
class=
"font-color"
>
业务类型
</div>
<input
<input
slot=
"content"
slot=
"content"
v-model=
"business"
type=
"text"
type=
"text"
readonly
readonly
placeholder=
"请选择"
placeholder=
"请选择"
...
@@ -31,19 +32,40 @@
...
@@ -31,19 +32,40 @@
</item>
</item>
<item>
<item>
<div
slot=
"name"
class=
"font-color"
>
经销商
</div>
<div
slot=
"name"
class=
"font-color"
>
经销商
</div>
<input
slot=
"content"
placeholder=
"上海汉得信息技术股份有限公司"
>
<input
slot=
"content"
v-model=
"bp_agent_name"
readonly
>
</item>
</item>
<item
:showArrow=
"true"
>
<item
:showArrow=
"true"
>
<div
slot=
"name"
class=
"font-color"
>
销售人员
</div>
<div
slot=
"name"
class=
"font-color"
>
销售人员
</div>
<input
slot=
"content"
readonly
placeholder=
"请选择"
>
<input
slot=
"content"
v-model=
"sales"
type=
"text"
readonly
placeholder=
"请选择"
@
click=
"selectSales"
>
</item>
</item>
<item
:showArrow=
"true"
>
<item
:showArrow=
"true"
>
<div
slot=
"name"
class=
"font-color"
>
办事处
</div>
<div
slot=
"name"
class=
"font-color"
>
办事处
</div>
<input
slot=
"content"
readonly
placeholder=
"请选择"
>
<input
slot=
"content"
v-model=
"office_name"
type=
"text"
readonly
placeholder=
"请选择"
@
click=
"selectOffice"
>
</item>
</item>
<item
:showArrow=
"true"
>
<item
:showArrow=
"true"
>
<div
slot=
"name"
class=
"font-color"
>
主机厂
</div>
<div
slot=
"name"
class=
"font-color"
>
主机厂
</div>
<input
slot=
"content"
readonly
placeholder=
"请选择"
>
<input
slot=
"content"
v-model=
"factory_name"
type=
"text"
readonly
placeholder=
"请选择"
@
click=
"selectFactory"
>
</item>
</item>
<item>
<item>
<div
slot=
"name"
class=
"font-color"
>
主机厂业务员
</div>
<div
slot=
"name"
class=
"font-color"
>
主机厂业务员
</div>
...
@@ -51,12 +73,12 @@
...
@@ -51,12 +73,12 @@
</item>
</item>
<item
@
click
.
native=
"showTime('YYYY-MM-DD')"
>
<item
@
click
.
native=
"showTime('YYYY-MM-DD')"
>
<div
slot=
"name"
class=
"font-color"
>
签约日期
</div>
<div
slot=
"name"
class=
"font-color"
>
签约日期
</div>
<input
slot=
"content"
v-model=
"dates"
readonly
>
<input
slot=
"content"
v-model=
"
salesInfo.
dates"
readonly
>
<img
src=
"@/assets/contractCreate/date.png"
alt=
""
class=
"date-pic"
>
<img
src=
"@/assets/contractCreate/date.png"
alt=
""
class=
"date-pic"
>
</item>
</item>
</list-item>
</list-item>
<list-item
:item-height=
"44"
class=
"second-part"
>
<list-item
v-if=
"false"
:item-height=
"44"
class=
"second-part"
>
<item
:showArrow=
"true"
>
<item
:showArrow=
"true"
>
<div
slot=
"name"
class=
"font-color"
>
承租人
</div>
<div
slot=
"name"
class=
"font-color"
>
承租人
</div>
<span
slot=
"content"
>
{{
'请选择'
}}
</span>
<span
slot=
"content"
>
{{
'请选择'
}}
</span>
...
@@ -99,16 +121,48 @@
...
@@ -99,16 +121,48 @@
</item>
</item>
<item
@
click
.
native=
"showTime('YYYY-MM-DD')"
>
<item
@
click
.
native=
"showTime('YYYY-MM-DD')"
>
<div
slot=
"name"
class=
"font-color"
>
签约日期
</div>
<div
slot=
"name"
class=
"font-color"
>
签约日期
</div>
<input
slot=
"content"
v-model=
"dates"
readonly
>
<input
slot=
"content"
v-model=
"
salesInfo.
dates"
readonly
>
<img
src=
"@/assets/contractCreate/date.png"
alt=
""
class=
"date-pic"
>
<img
src=
"@/assets/contractCreate/date.png"
alt=
""
class=
"date-pic"
>
</item>
</item>
</list-item>
</list-item>
</h-content>
</h-content>
<bottom-tab>
<bottom-tab>
<tab-button
class=
"footer"
>
<tab-button
class=
"footer"
@
click
.
native=
"confirmCreate"
>
确认创建
确认创建
</tab-button>
</tab-button>
</bottom-tab>
</bottom-tab>
<h-modal
v-model=
"showModal"
position=
"bottom"
class=
"hmodal"
>
<h-view
id=
"picker"
>
<h-header
:proportion=
"[5,1,1]"
class=
"bar-custom"
>
<div
slot=
"left"
class=
"h-header-btn"
>
<img
src=
"@/assets/userBind/arrow.png"
@
click=
"hideModal"
>
<span>
选择承租人
</span>
</div>
</h-header>
<!-- 搜索 -->
<div
class=
"search"
>
<input
type=
"text"
placeholder=
"请输入承租人名称/证件号码"
>
</div>
<scroll
ref=
"scroll"
>
<div
class=
"wrap"
>
<div
v-for=
"(item,index) in showLists"
:key=
"index"
class=
"contract-lists"
>
<div
class=
"box"
@
click=
"pickLessee(item)"
>
<img
src=
"@/assets/distributorSign/fileIcon.png"
alt=
""
class=
"file-icon"
>
<div><p>
承租人名称
</p><p>
{{
item
.
bp_name
}}
</p></div>
<div><p>
证件号
</p><p>
{{
item
.
bp_id_card_no
}}
</p></div>
</div>
</div>
</div>
</scroll>
<!--
<bottom-tab>
<tab-button
class=
"footer"
>
确认创建
</tab-button>
</bottom-tab>
-->
</h-view>
</h-modal>
</h-view>
</h-view>
</
template
>
</
template
>
...
@@ -117,7 +171,29 @@
...
@@ -117,7 +171,29 @@
export
default
{
export
default
{
data
()
{
data
()
{
return
{
return
{
dates
:
'请选择'
,
lessee
:
''
,
// 承租人
sales
:
''
,
// 销售人员
office_name
:
''
,
// 办事处
factory_name
:
''
,
business
:
''
,
showModal
:
false
,
showLists
:
[],
businessLists
:
[],
// 业务人员查询结果
salesLists
:
[],
// 销售人员查询结果
officeLists
:
[],
// 办事处查询结果
factoryLists
:
[],
// 主机厂
bp_agent_id
:
''
,
// 经销商id
bp_agent_name
:
''
,
// 经销商名称
salesInfo
:
{
bp_id_tenant
:
''
,
// 承租人id
business_type
:
''
,
// 业务类型
bp_id_agent
:
''
,
// 经销商id
bp_user_id
:
''
,
// 业务员id
office_id
:
''
,
// 办事处id
factory
:
''
,
// 主机厂id
manu_manager
:
''
,
// 办事处业务员
dates
:
'请选择'
,
},
}
}
},
},
watch
:
{
watch
:
{
...
@@ -130,12 +206,29 @@ export default {
...
@@ -130,12 +206,29 @@ export default {
},
},
beforeRouteEnter
(
to
,
from
,
next
)
{
beforeRouteEnter
(
to
,
from
,
next
)
{
next
(
vm
=>
{
next
(
vm
=>
{
vm
.
businessQuery
()
if
(
from
.
name
===
'ContractCreateList'
)
{
vm
.
agentQuery
()
vm
.
showModal
=
false
vm
.
factoryQuery
()
vm
.
lessee
=
''
vm
.
salesQuery
()
vm
.
business
=
''
vm
.
officeQuery
()
vm
.
office_name
=
''
vm
.
creditQuery
()
vm
.
factory_name
=
''
vm
.
bp_agent_id
=
''
vm
.
bp_agent_name
=
''
vm
.
sales
=
window
.
localStorage
.
bp_name
vm
.
salesInfo
=
{
bp_id_tenant
:
''
,
// 承租人id
business_type
:
''
,
// 业务类型
bp_id_agent
:
''
,
// 经销商id
bp_user_id
:
''
,
// 业务员id
office_id
:
''
,
// 办事处id
factory
:
''
,
// 主机厂id
manu_manager
:
''
,
// 办事处业务员
dates
:
'请选择'
,
}
vm
.
businessQuery
()
vm
.
agentQuery
()
vm
.
factoryQuery
()
}
})
})
},
},
methods
:
{
methods
:
{
...
@@ -146,10 +239,26 @@ export default {
...
@@ -146,10 +239,26 @@ export default {
nowDate
:
(
new
Date
()).
format
(
'yyyy-MM-dd'
),
nowDate
:
(
new
Date
()).
format
(
'yyyy-MM-dd'
),
format
:
format
,
format
:
format
,
callback
:
(
date
)
=>
{
callback
:
(
date
)
=>
{
vm
.
dates
=
date
vm
.
salesInfo
.
dates
=
date
},
},
})
})
},
},
// 承租人查询
lesseeQuery
()
{
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'prj_bp_master_query'
let
param
=
{
bp_agent_id
:
vm
.
bp_agent_id
,
}
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
console
.
log
(
'承租人'
,
res
)
if
(
res
.
result
===
'S'
)
{
vm
.
showLists
=
res
.
lists
}
})
},
// 业务类型查询
// 业务类型查询
businessQuery
()
{
businessQuery
()
{
let
vm
=
this
let
vm
=
this
...
@@ -160,7 +269,12 @@ export default {
...
@@ -160,7 +269,12 @@ export default {
vm
.
hlsPopup
.
hideLoading
()
vm
.
hlsPopup
.
hideLoading
()
console
.
log
(
'业务类型'
,
res
)
console
.
log
(
'业务类型'
,
res
)
if
(
res
.
result
===
'S'
)
{
if
(
res
.
result
===
'S'
)
{
// vm.certification_status = res.info.certification_status
vm
.
businessLists
=
res
.
lists
.
map
(
item
=>
{
return
{
code
:
item
.
business_type
,
code_name
:
item
.
business_type_n
,
}
})
}
}
})
})
},
},
...
@@ -168,14 +282,13 @@ export default {
...
@@ -168,14 +282,13 @@ export default {
selectBusiness
()
{
selectBusiness
()
{
let
vm
=
this
let
vm
=
this
vm
.
hlsPopup
.
selectList
({
vm
.
hlsPopup
.
selectList
({
// list: vm.taxpayerList,
list
:
vm
.
businessLists
,
// code: 'bp_type',
code
:
'business_type'
,
// object: {},
object
:
{},
// returnItem: function (index, obj) {
returnItem
:
function
(
index
,
obj
)
{
// vm.invoiceInfo.taxpayer_type = obj.bp_type
vm
.
business
=
obj
.
business_type_n
// vm.invoiceInfo.taxpayer_type_n = obj.bp_type_n
vm
.
salesInfo
.
business_type
=
obj
.
business_type
// console.log('obj', vm.invoiceInfo)
},
// },
})
})
},
},
// 经销商查询
// 经销商查询
...
@@ -190,7 +303,13 @@ export default {
...
@@ -190,7 +303,13 @@ export default {
vm
.
hlsPopup
.
hideLoading
()
vm
.
hlsPopup
.
hideLoading
()
console
.
log
(
'经销商'
,
res
)
console
.
log
(
'经销商'
,
res
)
if
(
res
.
result
===
'S'
)
{
if
(
res
.
result
===
'S'
)
{
// vm.certification_status = res.info.certification_status
vm
.
bp_agent_name
=
res
.
info
.
bp_agent_name
vm
.
bp_agent_id
=
res
.
info
.
bp_agent_id
vm
.
salesInfo
.
bp_id_agent
=
res
.
info
.
bp_agent_id
vm
.
lesseeQuery
()
vm
.
salesQuery
()
vm
.
officeQuery
()
vm
.
creditQuery
()
}
}
})
})
},
},
...
@@ -204,48 +323,102 @@ export default {
...
@@ -204,48 +323,102 @@ export default {
vm
.
hlsPopup
.
hideLoading
()
vm
.
hlsPopup
.
hideLoading
()
console
.
log
(
'主机厂'
,
res
)
console
.
log
(
'主机厂'
,
res
)
if
(
res
.
result
===
'S'
)
{
if
(
res
.
result
===
'S'
)
{
// vm.certification_status = res.info.certification_status
vm
.
factoryLists
=
res
.
lists
.
map
(
item
=>
{
return
{
code
:
item
.
bp_factory_id
,
code_name
:
item
.
bp_factory_name
,
}
})
}
}
})
})
},
},
// 主机厂选择
selectFactory
()
{
let
vm
=
this
vm
.
hlsPopup
.
selectList
({
list
:
vm
.
factoryLists
,
code
:
'factory_type'
,
object
:
{},
returnItem
:
function
(
index
,
obj
)
{
vm
.
salesInfo
.
factory
=
obj
.
factory_type
vm
.
factory_name
=
obj
.
factory_type_n
},
})
},
// 销售人员查询
// 销售人员查询
salesQuery
()
{
salesQuery
()
{
let
vm
=
this
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'prj_bp_agent_user'
let
url
=
process
.
env
.
basePath
+
'prj_bp_agent_user'
let
param
=
{
let
param
=
{
bp_agent_id
:
'7781'
,
bp_agent_id
:
vm
.
bp_agent_id
,
}
}
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
vm
.
hlsPopup
.
hideLoading
()
console
.
log
(
'销售人员'
,
res
)
console
.
log
(
'销售人员'
,
res
)
if
(
res
.
result
===
'S'
)
{
if
(
res
.
result
===
'S'
)
{
// vm.certification_status = res.info.certification_status
vm
.
salesLists
=
res
.
lists
.
map
(
item
=>
{
return
{
code
:
item
.
user_id
,
code_name
:
item
.
agent_username
,
}
})
}
}
})
})
},
},
selectSales
()
{
let
vm
=
this
vm
.
hlsPopup
.
selectList
({
list
:
vm
.
salesLists
,
code
:
'agent_type'
,
object
:
{},
returnItem
:
function
(
index
,
obj
)
{
console
.
log
(
obj
)
vm
.
sales
=
obj
.
agent_type_n
},
})
},
// 办事处查询
// 办事处查询
officeQuery
()
{
officeQuery
()
{
let
vm
=
this
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'prj_office_list'
let
url
=
process
.
env
.
basePath
+
'prj_office_list'
let
param
=
{
let
param
=
{
bp_agent_id
:
'7781'
,
bp_agent_id
:
vm
.
bp_agent_id
,
}
}
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
vm
.
hlsPopup
.
hideLoading
()
console
.
log
(
'办事处'
,
res
)
console
.
log
(
'办事处'
,
res
)
if
(
res
.
result
===
'S'
)
{
if
(
res
.
result
===
'S'
)
{
// vm.certification_status = res.info.certification_status
vm
.
officeLists
=
res
.
lists
.
map
(
item
=>
{
return
{
code
:
item
.
office_id
,
code_name
:
item
.
office_name
,
}
})
}
}
})
})
},
},
// 选择办事处
selectOffice
()
{
let
vm
=
this
vm
.
hlsPopup
.
selectList
({
list
:
vm
.
officeLists
,
code
:
'office_type'
,
object
:
{},
returnItem
:
function
(
index
,
obj
)
{
vm
.
salesInfo
.
office_id
=
obj
.
office_type
vm
.
office_name
=
obj
.
office_type_n
},
})
},
// 授信额度查询
// 授信额度查询
creditQuery
()
{
creditQuery
()
{
let
vm
=
this
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'prj_agent_credit_query'
let
url
=
process
.
env
.
basePath
+
'prj_agent_credit_query'
let
param
=
{
let
param
=
{
bp_agent_id
:
'7781'
,
bp_agent_id
:
vm
.
bp_agent_id
,
}
}
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
...
@@ -256,9 +429,36 @@ export default {
...
@@ -256,9 +429,36 @@ export default {
}
}
})
})
},
},
// 查询承租人
picker
()
{
picker
()
{
this
.
$router
.
push
({
// this.$router.push({
name
:
'PickLessee'
,
// name: 'PickLessee',
// })
this
.
showModal
=
true
},
// 选择承租人
pickLessee
(
item
)
{
this
.
lessee
=
item
.
bp_name
this
.
salesInfo
.
bp_id_tenant
=
item
.
bp_id
this
.
showModal
=
false
},
hideModal
()
{
this
.
showModal
=
false
},
// 销售信息保存
confirmCreate
()
{
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'prj_sales_info_save'
let
param
=
{
master
:
vm
.
salesInfo
,
}
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
console
.
log
(
'销售信息保存'
,
res
)
if
(
res
.
result
===
'S'
)
{
hlsPopup
.
showLongCenter
(
'创建成功!'
)
}
})
})
},
},
},
},
...
@@ -280,6 +480,135 @@ export default {
...
@@ -280,6 +480,135 @@ export default {
height: 40px;
height: 40px;
margin: 4px 2% 0 2%;
margin: 4px 2% 0 2%;
}
}
}
.hmodal {
z-index: 99;
.search {
background-color: #fff;
padding: 8px 12px;
position: absolute;
width: 100%;
z-index: 100;
margin-bottom: 8px;
input {
padding-left: 12px;
border-radius: 4px;
height: 36px;
width: 100%;
font-family: PingFangSC-Regular;
font-size: 14px;
color: #888C8F;
line-height: 36px;
background: url("../../assets/contractStart/search1.png") 320px no-repeat;
background-size: 16px 16px;
background-color: rgba(239, 239, 239, 0.55);
}
input::placeholder {
font-family: PingFangSC-Regular;
font-size: 14px;
color: #888C8F;
letter-spacing: 0;
}
input:focus {
background: url("../../assets/contractStart/search2.png") 320px no-repeat;
background-size: 16px 16px;
background-color: rgba(239, 239, 239, 0.55);
border: 2px solid #bcc6ff;
}
}
.wrap {
width: 100%;
padding: 8px;
.contract-lists {
width: 100%;
background: #fff;
margin-bottom: 8px;
border-radius: 2px;
position: relative;
.box {
height: 68px;
margin-left: 50px;
margin-right: 19px;
.file-icon {
width: 30px;
height: 30px;
position: absolute;
left: 10px;
top: 8px;
}
div {
width: 100%;
height: 32px;
position: relative;
p {
height: 32px;
line-height: 32px;
position: absolute;
font-family: PingFangSC-Regular;
font-size: 14px;
letter-spacing: 0;
}
p:nth-of-type(1){
left: 0;
color: rgba(75,74,75,0.60);
}
p:nth-of-type(2){
right: 0;
color: #4B4A4B;
}
}
}
}
}
.content{
position: absolute;
top:0;
}
.scrollContent{
padding-top: 1.92rem;
padding-bottom: 20px;
}
}
}
.platform-ios {
#picker {
.scrollContent {
padding-top: 2.32rem;
}
}
}
// iPhoneX适配
@media (device-width: 375px) and (device-height: 812px) and (-webkit-min-device-pixel-ratio: 3) {
.platform-ios {
#picker {
.scrollContent {
padding-top: 2.72rem;
}
}
}
}
// iPhoneXR适配
@media (device-width: 414px) and (device-height: 896px) {
.platform-ios {
#picker {
.scrollContent {
padding-top: 2.72rem;
}
.search {
input {
background: url("../../assets/contractStart/search1.png") 320px
no-repeat;
background-size: 16px 16px;
background-color: rgba(239, 239, 239, 0.55);
padding: 8px 12px;
border-radius: 4px;
width: 100%;
font-family: PingFangSC-Regular;
font-size: 14px;
color: #888c8f;
}
}
}
}
}
</
style
>
</
style
>
src/pages/contractSigning/contract-repay-plan.vue
View file @
0dfac473
...
@@ -87,7 +87,7 @@ export default {
...
@@ -87,7 +87,7 @@ export default {
watch
:
{},
watch
:
{},
beforeRouteEnter
(
to
,
from
,
next
)
{
beforeRouteEnter
(
to
,
from
,
next
)
{
next
(
vm
=>
{
next
(
vm
=>
{
if
(
from
.
name
===
'ContractDetail'
)
{
if
(
from
.
name
===
'ContractDetail'
||
from
.
name
===
'CreateRentInfo'
)
{
vm
.
product_num
=
vm
.
$route
.
params
.
product_num
vm
.
product_num
=
vm
.
$route
.
params
.
product_num
vm
.
getInfo
()
vm
.
getInfo
()
}
}
...
...
src/pages/distributorSign/contract-details.vue
View file @
0dfac473
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
* @Description: 合同详情
* @Description: 合同详情
* @Author: your name
* @Author: your name
* @Date: 2019-09-25 15:38:21
* @Date: 2019-09-25 15:38:21
* @LastEditTime: 2019-1
1-28 17:42:24
* @LastEditTime: 2019-1
2-20 15:36:19
* @LastEditors: Please set LastEditors
* @LastEditors: Please set LastEditors
-->
-->
<
template
>
<
template
>
...
@@ -167,6 +167,16 @@
...
@@ -167,6 +167,16 @@
</list-item>
</list-item>
</h-content>
</h-content>
<bottom-tab
v-show=
"confirm_status!=='APPROVED'&&tabNum === 0"
class=
"footer-button"
>
<tab-button
class=
"approve"
@
click
.
native=
"goBodyCheck"
>
活体检测
</tab-button>
</bottom-tab>
<bottom-tab
v-show=
"confirm_status!=='APPROVED'&&tabNum === 0"
class=
"footer-button"
>
<tab-button
class=
"approve"
@
click
.
native=
"goElectronicSign"
>
电子签
</tab-button>
</bottom-tab>
<bottom-tab
v-if=
"confirm_status!=='APPROVED'"
class=
"footer-button"
>
<bottom-tab
v-if=
"confirm_status!=='APPROVED'"
class=
"footer-button"
>
<tab-button
class=
"approve"
@
click
.
native=
"contractConfirm('APPROVED')"
>
<tab-button
class=
"approve"
@
click
.
native=
"contractConfirm('APPROVED')"
>
确认签约
确认签约
...
@@ -250,6 +260,33 @@ export default {
...
@@ -250,6 +260,33 @@ export default {
created
()
{},
created
()
{},
methods
:
methods
:
{
{
goBodyCheck
()
{
// 活体检测
this
.
$router
.
push
({
name
:
'BodyCheck'
,
})
},
goElectronicSign
()
{
// 电子签
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'get_sign_url'
let
param
=
{
confirm_id
:
vm
.
confirm_id
,
data_class
:
'PRJ_PROJECT'
,
}
vm
.
hlsPopup
.
showLoading
(
'请稍后'
)
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
info
.
msg
===
'success'
)
{
vm
.
$router
.
push
({
name
:
'ElectronicSign'
,
params
:
{
url
:
res
.
info
.
data
.
url
,
},
})
}
else
{
vm
.
hlsPopup
.
showLongCenter
(
res
.
info
.
msg
)
}
})
},
// 签约确认
// 签约确认
contractConfirm
(
status
)
{
contractConfirm
(
status
)
{
let
vm
=
this
let
vm
=
this
...
@@ -766,6 +803,32 @@ export default {
...
@@ -766,6 +803,32 @@ export default {
}
}
}
}
}
}
.footer-button:nth-of-type(1) {
bottom: 92px;
.approve {
width: 358.6px;
height: 44px;
background: @headerColor;
border-radius: 4px;
color: #fff;
font-family: PingFangSC-Semibold;
font-size: 15px;
line-height: 20px;
}
}
.footer-button:nth-of-type(2) {
bottom: 46px;
.approve {
width: 358.6px;
height: 44px;
background: @headerColor;
border-radius: 4px;
color: #fff;
font-family: PingFangSC-Semibold;
font-size: 15px;
line-height: 20px;
}
}
.approveContent {
.approveContent {
position: absolute;
position: absolute;
top: 50%;
top: 50%;
...
...
src/pages/myInfo/my-info.vue
View file @
0dfac473
...
@@ -724,6 +724,7 @@ export default {
...
@@ -724,6 +724,7 @@ export default {
window
.
localStorage
.
setItem
(
'user_bp_status'
,
res
.
info
.
user_bp_status
)
window
.
localStorage
.
setItem
(
'user_bp_status'
,
res
.
info
.
user_bp_status
)
window
.
localStorage
.
setItem
(
'bp_name'
,
res
.
info
.
user_bp_name
)
window
.
localStorage
.
setItem
(
'bp_name'
,
res
.
info
.
user_bp_name
)
window
.
localStorage
.
setItem
(
'bp_identity'
,
res
.
info
.
bp_identity
)
window
.
localStorage
.
setItem
(
'bp_identity'
,
res
.
info
.
bp_identity
)
window
.
localStorage
.
setItem
(
'bp_class'
,
res
.
info
.
user_bp_class
)
vm
.
user_bp_name
=
res
.
info
.
user_bp_name
vm
.
user_bp_name
=
res
.
info
.
user_bp_name
vm
.
user_bp_type
=
res
.
info
.
user_bp_type
vm
.
user_bp_type
=
res
.
info
.
user_bp_type
vm
.
user_phone
=
res
.
info
.
user_phone
vm
.
user_phone
=
res
.
info
.
user_phone
...
...
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