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
5c7c4d26
Commit
5c7c4d26
authored
Oct 14, 2019
by
linxin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
用户查询
parent
09ddfba5
Changes
10
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
27 additions
and
2955 deletions
+27
-2955
bankInfoWrite.vue
src/pages/personalCenter/npReadWrite/bankInfoWrite.vue
+0
-240
invoiceInfoWrite.vue
src/pages/personalCenter/npReadWrite/invoiceInfoWrite.vue
+0
-159
naturePersonWrite.vue
src/pages/personalCenter/npReadWrite/naturePersonWrite.vue
+0
-910
bankInfoWrite.vue
src/pages/personalCenter/orgWrite/bankInfoWrite.vue
+0
-240
enterpriseWrite.vue
src/pages/personalCenter/orgWrite/enterpriseWrite.vue
+0
-1100
invoiceInfoWrite.vue
src/pages/personalCenter/orgWrite/invoiceInfoWrite.vue
+0
-187
personList.vue
src/pages/personalCenter/personList.vue
+0
-95
naturePerson.vue
src/pages/userBind/np/naturePerson.vue
+24
-15
enterprise.vue
src/pages/userBind/org/enterprise.vue
+3
-1
index.js
src/router/index.js
+0
-8
No files found.
src/pages/personalCenter/npReadWrite/bankInfoWrite.vue
deleted
100644 → 0
View file @
09ddfba5
<
template
>
<div
id=
"bank-card"
>
<div
class=
"info"
>
<div
class=
"info-icon"
>
<img
src=
"@/assets/userBind/info.png"
>
<span>
温馨提示
</span>
</div>
<p>
推荐使用农行卡,农行卡支付免收手续费!
</p>
</div>
<div
class=
"my-card"
>
<div
class=
"top"
>
<div
class=
"left"
>
<img
src=
"@/assets/userBind/bankIcon.png"
class=
"icon"
>
<span
class=
"top-word"
>
我的卡
<span
class=
"sum"
>
(共
{{
getBankList
.
length
}}
张)
</span>
</span>
</div>
<img
src=
"@/assets/userBind/add.png"
class=
"icon-right"
@
click=
"sendFlag"
>
</div>
<div
class=
"clear"
/>
<div
class=
"card-content"
>
<ul>
<li
v-for=
"(item,index) in getBankList"
:key=
"index"
>
<item-option
class=
"slider"
>
<div
:style=
"'background-image: url('+ changeBgImg (item) +')'"
class=
"my-bank-card"
>
<div
class=
"card-info"
>
<span
class=
"name"
>
{{
item
.
bank_full_name
}}
</span>
<span
class=
"card-type"
>
{{
item
.
bank_card_type
}}
</span>
<span
class=
"number"
>
卡号
</span>
<span
class=
"card-number"
>
**** **** ****
{{
selectLast
(
item
)
}}
</span>
</div>
</div>
<div
slot=
"buttons"
class=
"button"
>
<option-button
text
@
click
.
native=
"deleteFun(item.bank_account_num)"
/>
</div>
</item-option>
</li>
</ul>
</div>
</div>
</div>
</
template
>
<
script
>
import
backImg1
from
'@/assets/userBind/nong.png'
import
backImg2
from
'@/assets/userBind/unNong.png'
export
default
{
props
:
{
'getBankList'
:
{
default
:
[],
type
:
Array
,
},
},
data
()
{
return
{
backImg
:
null
,
showModalValue
:
true
,
}
},
methods
:
{
sendFlag
()
{
this
.
showModalValue
=
true
this
.
$emit
(
'getInfo'
,
this
.
showModalValue
)
},
changeBgImg
(
item
)
{
if
(
item
.
bank_full_name
===
'中国农业银行'
)
{
return
backImg1
}
else
{
return
backImg2
}
},
selectLast
(
item
)
{
let
num
=
item
.
bank_account_num
return
num
.
substring
(
num
.
length
-
4
)
},
deleteFun
(
e
)
{
let
index
=
this
.
getBankList
.
findIndex
(
item
=>
{
if
(
item
.
bank_account_num
===
e
)
{
return
true
}
})
this
.
getBankList
.
splice
(
index
,
1
)
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'bp_bank_delete'
let
param
=
{
'master'
:
{
'bp_id'
:
window
.
localStorage
.
user_id
,
'bank_account_num'
:
e
,
},
}
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
console
.
log
(
res
)
}
})
},
},
}
</
script
>
<
style
lang=
"less"
scoped
>
#bank-card {
.info {
height: 70px;
background-color: rgba(142, 195, 30, 0.1);
.info-icon {
height: 20px;
padding-top: 20px;
display: flex;
align-items: center;
img {
width: 15.8px;
height: 15.8px;
margin-left: 17.1px;
}
span {
font-family: PingFangSC-Semibold;
font-size: 14px;
color: #8ec31e;
margin-left: 9px;
letter-spacing: 0.5px;
line-height: 20px;
}
}
p {
font-family: PingFangSC-Regular;
font-size: 13px;
color: #656464;
width: 310px;
margin-left: 42px;
letter-spacing: 0.4px;
line-height: 18px;
margin-top: 8px;
}
}
.my-card {
.top {
width: 320px;
margin: 0 auto;
margin-top: 13px;
.left {
height: 32px;
display: flex;
align-items: center;
float: left;
.icon {
width: 18px;
height: 20px;
margin-right: 4px;
}
.top-word {
font-family: PingFangSC-Semibold;
font-size: 15px;
color: #00469c;
letter-spacing: 0.46px;
.sum {
font-family: PingFangSC-Semibold;
font-size: 15px;
color: #4d5d6c;
letter-spacing: 0.46px;
}
}
}
.icon-right {
width: 34px;
height: 34px;
float: right;
}
}
.clear {
clear: both;
}
.card-content {
width: 350px;
padding-left: 28px;
overflow: hidden;
margin-top: 16px;
li {
margin-bottom: 10px;
.slider {
height: 100%;
margin-left: -14px;
}
}
.my-bank-card {
width: 320px;
height: 190px;
box-shadow: 0 5px 20px 0 rgba(101, 101, 101, 0.25);
border-radius: 6px;
background-size: 320px 190px;
.card-info {
font-family: PingFangSC-Medium;
color: #ffffff;
margin-left: 18px;
padding-top: 15px;
.name,
.card-type {
font-size: 16px;
letter-spacing: 5.5px;
line-height: 24px;
}
.card-type {
display: block;
margin-top: 9px;
}
.number {
font-size: 12px;
letter-spacing: 0;
line-height: 16px;
margin-top: 33px;
display: block;
margin-top: 33px;
}
.card-number {
display: block;
font-family: Avenir-Heavy;
font-size: 16px;
color: #ffffff;
letter-spacing: 6px;
line-height: 24px;
}
}
}
}
}
.swipeout-list .item .function {
left: 330px;
border-radius: 6px;
width: 54px;
height: 190px;
background: url("../../../assets/userBind/delete.png") 16px 84.9px #fde5e8
no-repeat;
background-size: 20px 20px;
}
}
</
style
>
src/pages/personalCenter/npReadWrite/invoiceInfoWrite.vue
deleted
100644 → 0
View file @
09ddfba5
<
template
>
<list-item
:item-height=
"44"
>
<item
:showArrow=
"true"
>
<div
slot=
"name"
>
纳税人类型
</div>
<input
slot=
"content"
v-model=
"invoiceInfo.taxpayer_type_n"
type=
"text"
readonly
placeholder=
"请选择"
onfocus=
"this.blur()"
@
click=
"selectTaxpayer"
>
</item>
<item
:showArrow=
"true"
>
<div
slot=
"name"
>
发票类型
</div>
<input
slot=
"content"
v-model=
"invoiceInfo.invoice_kind_n"
type=
"text"
readonly
placeholder=
"请选择"
onfocus=
"this.blur()"
@
click=
"selectInvoiceType"
>
</item>
<item>
<div
slot=
"name"
>
发票抬头
</div>
<input
slot=
"content"
v-model=
"invoiceInfo.invoice_title"
type=
"text"
placeholder=
"请输入发票抬头"
>
</item>
<item>
<div
slot=
"name"
>
发票地址及电话
</div>
<input
slot=
"content"
v-model=
"invoiceInfo.invoice_bp_address_phone_num"
type=
"text"
placeholder=
"请输入发票地址及电话"
>
</item>
<item>
<div
slot=
"name"
>
发票开户行及账号
</div>
<input
slot=
"content"
v-model=
"invoiceInfo.invoice_bp_bank_account"
type=
"text"
placeholder=
"请输入发票开户行及账号"
>
</item>
</list-item>
</
template
>
<
script
>
export
default
{
props
:
{
'baseInfo'
:
{
type
:
Object
,
default
:
{},
},
'tabNum'
:
{
type
:
Number
,
default
:
0
,
},
},
data
()
{
return
{
invoicList
:
[],
taxpayerList
:
[],
invoiceInfo
:
{
invoice_kind_n
:
''
,
taxpayer_type_n
:
''
,
taxpayer_type
:
''
,
invoice_kind
:
''
,
invoice_title
:
''
,
invoice_bp_address_phone_num
:
''
,
invoice_bp_bank_account
:
''
,
},
}
},
watch
:
{
tabNum
(
newVal
,
oldVal
)
{
if
(
newVal
===
2
)
{
Object
.
assign
(
this
.
invoiceInfo
,
this
.
baseInfo
)
}
},
},
created
()
{
this
.
getInvoiceType
()
this
.
getTaxpayer
()
},
mounted
()
{
},
updated
()
{
this
.
sendList
()
},
methods
:
{
getInvoiceType
()
{
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'bp_invoice_kind_query'
let
param
=
{}
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
vm
.
invoicList
=
res
.
lists
.
map
(
item
=>
{
return
{
code
:
item
.
invoice_kind
,
code_name
:
item
.
invoice_kind_n
,
}
})
}
})
},
getTaxpayer
()
{
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'bp_taxpayer_type_query'
let
param
=
{}
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
vm
.
taxpayerList
=
res
.
lists
.
map
(
item
=>
{
return
{
code
:
item
.
taxpayer_type
,
code_name
:
item
.
taxpayer_type_n
,
}
})
}
})
},
selectInvoiceType
(
e
)
{
let
vm
=
this
vm
.
hlsPopup
.
selectList
({
list
:
vm
.
invoicList
,
code
:
'bp_type'
,
object
:
{},
returnItem
:
function
(
index
,
obj
)
{
vm
.
invoiceInfo
.
invoice_kind
=
obj
.
bp_type
vm
.
invoiceInfo
.
invoice_kind_n
=
obj
.
bp_type_n
},
})
},
selectTaxpayer
(
e
)
{
let
vm
=
this
vm
.
hlsPopup
.
selectList
({
list
:
vm
.
taxpayerList
,
code
:
'bp_type'
,
object
:
{},
returnItem
:
function
(
index
,
obj
)
{
vm
.
invoiceInfo
.
taxpayer_type
=
obj
.
bp_type
vm
.
invoiceInfo
.
taxpayer_type_n
=
obj
.
bp_type_n
},
})
},
sendList
()
{
this
.
$emit
(
'getinvoiceList'
,
this
.
invoiceInfo
)
},
},
}
</
script
>
<
style
scoped
>
input
::placeholder
{
color
:
#B4B4B5
;
}
</
style
>
src/pages/personalCenter/npReadWrite/naturePersonWrite.vue
deleted
100644 → 0
View file @
09ddfba5
<!--
* @Description: In User Settings Edit
* @Author: your name
* @Date: 2019-09-30 15:18:52
* @LastEditTime: 2019-10-09 16:41:11
* @LastEditors: Please set LastEditors
-->
<
template
>
<h-view
id=
"base-info1-write"
class=
"public-style"
title=
"基本信息"
>
<h-header
:proportion=
"[5,1,1]"
class=
"header"
>
<div
slot=
"left"
class=
"h-header-btn"
@
click=
"$routeGo()"
>
<img
src=
"@/assets/userBind/arrow.png"
>
<span>
用户绑定
</span>
</div>
</h-header>
<Tab
:tabNum=
"tabNum"
@
getTabNum=
"getTabNum"
/>
<h-content
class=
"content"
>
<div
v-show=
"tabNum==0"
>
<list-item
:item-height=
"44"
>
<item
:showArrow=
"true"
>
<div
slot=
"name"
class=
"required"
>
客户类型
</div>
<input
slot=
"content"
v-model=
"baseInfo.bp_type_n"
placeholder=
"请选择"
type=
"text"
readonly
onfocus=
"this.blur()"
@
click=
"selectIdType()"
>
</item>
<item
v-if=
"isPaople"
>
<div
slot=
"name"
class=
"required"
>
业务经办人
</div>
<input
slot=
"content"
v-model=
"baseInfo.agent_username"
placeholder=
"请输入业务经办员工代码"
>
</item>
<item
v-if=
"!isPaople"
>
<div
slot=
"name"
class=
"required"
>
营业执照
</div>
<input
slot=
"content"
v-model=
"baseInfo.business_license_num"
placeholder=
"请输入营业执照号"
>
</item>
</list-item>
<div
class=
"userInfo"
>
客户信息
</div>
<div
class=
"upload-id-card"
>
<span>
身份证照片上传
</span>
<div
class=
"upload-box"
>
<div
@
click=
"show()"
>
<img
src=
"@/assets/userBind/front.png"
>
<p>
正面
</p>
</div>
<div>
<img
src=
"@/assets/userBind/back.png"
>
<p>
反面
</p>
</div>
</div>
</div>
<list-item
:item-height=
"44"
class=
"second-part"
>
<item>
<div
slot=
"name"
class=
"required"
>
姓名
</div>
<input
slot=
"content"
v-model=
"baseInfo.bp_name"
placeholder=
"上传身份证自动填充"
class=
"auto"
>
</item>
<item>
<div
slot=
"name"
class=
"required"
>
身份证号码
</div>
<input
slot=
"content"
v-model=
"baseInfo.id_card_no"
placeholder=
"上传身份证自动填充"
class=
"auto"
>
</item>
<item>
<div
slot=
"name"
class=
"required"
>
手机号码
</div>
<input
slot=
"content"
v-model=
"baseInfo.cell_phone"
placeholder=
"请输入手机号码"
>
</item>
<item>
<div
slot=
"name"
class=
"required"
>
居住地址
</div>
<input
slot=
"content"
v-model=
"baseInfo.living_address"
placeholder=
"请输入居住地址"
>
</item>
<item>
<div
slot=
"name"
class=
"required"
>
户籍地址
</div>
<input
slot=
"content"
v-model=
"baseInfo.address_on_resident_booklit"
placeholder=
"请输入户籍地址"
>
</item>
<item
:showArrow=
"true"
>
<div
slot=
"name"
class=
"required"
>
学历
</div>
<input
slot=
"content"
v-model=
"baseInfo.academic_background_n"
placeholder=
"请选择学历"
readonly
onfocus=
"this.blur()"
@
click=
"selectBackType"
>
</item>
<item
:showArrow=
"true"
>
<div
slot=
"name"
class=
"required"
>
婚姻状况
</div>
<input
slot=
"content"
v-model=
"baseInfo.marital_status_n"
placeholder=
"请选择"
readonly
onfocus=
"this.blur()"
@
click=
"selectMarital"
>
</item>
</list-item>
<div
v-if=
"hasSP"
>
<div
class=
"userInfo"
>
配偶信息
</div>
<list-item
:item-height=
"44"
>
<item>
<div
slot=
"name"
class=
"required"
>
姓名
</div>
<input
slot=
"content"
v-model=
"baseInfo.bp_name_sp"
placeholder=
"请输入姓名"
>
</item>
<item>
<div
slot=
"name"
class=
"required"
>
手机号码
</div>
<input
slot=
"content"
v-model=
"baseInfo.spouse_phone"
placeholder=
"请输入手机号码"
>
</item>
<item>
<div
slot=
"name"
class=
"required"
>
工作单位
</div>
<input
slot=
"content"
v-model=
"baseInfo.working_place_sp"
placeholder=
"请输入工作单位"
>
</item>
<item>
<div
slot=
"name"
class=
"required"
>
居住地址
</div>
<input
slot=
"content"
v-model=
"baseInfo.address_sp"
placeholder=
"请输入居住地址"
>
</item>
</list-item>
</div>
<div
class=
"userInfo"
>
资产信息
</div>
<div
class=
"card"
>
<span>
房产证件
</span>
<div
class=
"img-content"
>
<div
class=
"card-upload"
>
<img
src=
"@/assets/userBind/camera.png"
>
</div>
</div>
</div>
<div
class=
"card"
>
<span>
车辆证件
</span>
<div
class=
"img-content"
>
<div
class=
"card-upload"
>
<img
src=
"@/assets/userBind/camera.png"
>
</div>
</div>
</div>
<div
class=
"card"
>
<span>
其他资产证件
</span>
<div
class=
"img-content"
>
<div
class=
"card-upload"
>
<img
src=
"@/assets/userBind/camera.png"
>
</div>
</div>
</div>
</div>
<BankInfo
v-show=
"tabNum==1"
:getBankList=
"getBankList"
@
getInfo=
"getInfo"
/>
<InvoiceInfo
v-show=
"tabNum==2"
:baseInfo=
"baseInfo"
:tabNum=
"tabNum"
@
getinvoiceList=
"getinvoiceList"
/>
</h-content>
<bottom-tab
class=
"footer-button"
>
<tab-button
class=
"put"
@
click
.
native=
"putData"
>
提交
</tab-button>
<tab-button
class=
"save"
@
click
.
native=
"verified"
>
保存
</tab-button>
</bottom-tab>
<h-modal
ref=
"modal"
v-model=
"showModalValue"
position=
"bottom"
cus-class=
"sign-modal"
>
<h-view>
<div
class=
"modal-content"
>
<div
class=
"modal-content-add-top"
>
<span>
添加银行卡
</span>
<img
src=
"@/assets/userBind/close.png"
@
click=
"hideModal"
>
</div>
<img
src=
"@/assets/userBind/addBack.png"
class=
"addBack"
>
<list-item
:item-height=
"44"
class=
"card-Info"
>
<item>
<div
slot=
"name"
>
银行卡卡号
</div>
<input
slot=
"content"
v-model=
"bank.bank_account_num"
placeholder=
"银行卡卡号自动填充"
>
</item>
<item>
<div
slot=
"name"
>
账户姓名
</div>
<input
slot=
"content"
v-model=
"bank.bank_account_name"
placeholder=
"请输入账户名称"
>
</item>
<item>
<div
slot=
"name"
>
银行名称
</div>
<input
slot=
"content"
v-model=
"bank.bank_full_name"
placeholder=
"请输入银行名称"
>
</item>
<item>
<div
slot=
"name"
>
支行名称
</div>
<input
slot=
"content"
v-model=
"bank.bank_branch_name"
placeholder=
"请输入支行名称"
>
</item>
</list-item>
</div>
</h-view>
<bottom-tab
class=
"add-box"
>
<tab-button
class=
"add-card"
@
click
.
native=
"addBankInfo"
>
添加
</tab-button>
</bottom-tab>
</h-modal>
</h-view>
</
template
>
<
script
>
import
Tab
from
'@/components/tab'
import
InvoiceInfo
from
'@/pages/personalCenter/npReadWrite/invoiceInfoWrite'
import
BankInfo
from
'@/pages/personalCenter/npReadWrite/bankInfoWrite'
export
default
{
components
:
{
Tab
,
InvoiceInfo
,
BankInfo
,
},
data
()
{
return
{
list
:
{},
hasSP
:
false
,
isPaople
:
false
,
isEnter
:
false
,
showModalValue
:
false
,
isSave
:
false
,
tabNum
:
0
,
upload_list
:
[],
typeList
:
[],
backList
:
[],
bankList
:
[],
maritalList
:
[],
getBankList
:
[],
bank
:
{
bank_account_num
:
''
,
bank_account_name
:
''
,
bank_card_type
:
'信用卡'
,
bank_full_name
:
''
,
bank_branch_name
:
''
,
},
img_url
:
{},
baseInfo
:
{
bp_type
:
''
,
bp_type_n
:
''
,
marital_status_n
:
''
,
bp_class
:
this
.
$route
.
params
.
bp_class
,
bp_name
:
''
,
id_card_no
:
''
,
cell_phone
:
''
,
living_address
:
''
,
address_on_resident_booklit
:
''
,
marital_status
:
''
,
academic_background_n
:
''
,
academic_background
:
''
,
bp_name_sp
:
''
,
spouse_phone
:
''
,
working_place_sp
:
''
,
address_sp
:
''
,
invoice_bp_bank_account
:
''
,
taxpayer_type
:
''
,
invoice_title
:
''
,
invoice_bp_address_phone_num
:
''
,
invoice_kind
:
''
,
user_phone
:
window
.
localStorage
.
user_phone
,
},
}
},
watch
:
{
'baseInfo.bp_type_n'
(
newVal
,
oldVal
)
{
let
vm
=
this
if
(
vm
.
baseInfo
.
bp_type
===
'TENANT'
||
vm
.
baseInfo
.
bp_type
===
'GUTA'
)
{
vm
.
isPaople
=
true
vm
.
isEnter
=
false
}
else
if
(
vm
.
baseInfo
.
bp_type
===
'AGENT'
||
vm
.
baseInfo
.
bp_type
===
'OFFICE'
||
vm
.
baseInfo
.
bp_type
===
'FACTORY'
)
{
vm
.
isEnter
=
true
vm
.
isPaople
=
false
}
},
'baseInfo.marital_status_n'
:
function
(
newVal
,
oldVal
)
{
if
(
newVal
===
'已婚'
)
{
this
.
hasSP
=
true
}
else
{
this
.
hasSP
=
false
this
.
baseInfo
.
bp_name_sp
=
''
this
.
baseInfo
.
spouse_phone
=
''
this
.
baseInfo
.
working_place_sp
=
''
this
.
baseInfo
.
address_sp
=
''
}
},
},
created
()
{
this
.
getBpType
()
this
.
getEducationBackground
()
this
.
getMarital
()
this
.
getBankInfo
()
},
beforeRouteEnter
(
to
,
from
,
next
)
{
next
(
vm
=>
{
vm
.
basicInfoQuery
()
})
},
updated
()
{
this
.
getinvoiceList
()
},
methods
:
{
async
verified
()
{
let
bpId
=
await
this
.
saveWord
()
this
.
getBankInfo
()
},
async
saveProtocol
()
{
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'bp_np_bind_save'
delete
this
.
baseInfo
.
bp_id
let
param
=
{
master
:
this
.
baseInfo
,
}
vm
.
hlsPopup
.
showLoading
(
'保存中!'
)
let
res
=
await
vm
.
hlsHttp
.
post
(
url
,
param
)
if
(
res
.
result
===
'S'
)
{
vm
.
hlsPopup
.
showSuccess
(
'保存成功'
)
vm
.
isSave
=
true
window
.
localStorage
.
setItem
(
'user_id'
,
res
.
bp_id
)
window
.
sessionStorage
.
setItem
(
'user_id'
,
res
.
bp_id
)
window
.
sessionStorage
.
setItem
(
'bp_name'
,
vm
.
baseInfo
.
bp_name
)
window
.
localStorage
.
setItem
(
'bp_name'
,
vm
.
baseInfo
.
bp_name
)
return
res
.
bp_id
}
/* vm.hlsHttp.post(url, param).then(function (res) {
vm.hlsPopup.hideLoading()
if (res.result === 'S') {
vm.hlsPopup.showSuccess('保存成功')
vm.isSave = true
return res.bp_id
window.localStorage.setItem('user_id', res.bp_id)
window.sessionStorage.setItem('user_id', res.bp_id)
window.sessionStorage.setItem('bp_name', vm.baseInfo.bp_name)
window.localStorage.setItem('bp_name', vm.baseInfo.bp_name)
vm.getBankInfo()
}
}) */
},
async
saveWord
()
{
let
vm
=
this
if
(
!
vm
.
baseInfo
.
bp_type
)
{
vm
.
hlsPopup
.
showLongCenter
(
'客户类型不能为空!'
)
}
else
if
(
vm
.
isPaople
&&
!
vm
.
baseInfo
.
agent_username
)
{
vm
.
hlsPopup
.
showLongCenter
(
'业务经办员工代码不能为空!'
)
}
else
if
(
!
vm
.
isPaople
&&
!
vm
.
baseInfo
.
business_license_num
)
{
vm
.
hlsPopup
.
showLongCenter
(
'营业执照号不能为空!'
)
}
else
if
(
!
vm
.
baseInfo
.
bp_name
)
{
vm
.
hlsPopup
.
showLongCenter
(
'客户姓名不能为空!'
)
}
else
if
(
!
vm
.
baseInfo
.
id_card_no
)
{
vm
.
hlsPopup
.
showLongCenter
(
'身份证号不能为空!'
)
}
else
if
(
!
vm
.
baseInfo
.
cell_phone
)
{
vm
.
hlsPopup
.
showLongCenter
(
'手机号不能为空!'
)
debugger
}
else
if
(
!
vm
.
baseInfo
.
living_address
)
{
vm
.
hlsPopup
.
showLongCenter
(
'居住地址不能为空!'
)
}
else
if
(
!
vm
.
baseInfo
.
address_on_resident_booklit
)
{
vm
.
hlsPopup
.
showLongCenter
(
'户籍地址不能为空!'
)
}
else
if
(
!
vm
.
baseInfo
.
academic_background
)
{
vm
.
hlsPopup
.
showLongCenter
(
'学历不能为空!'
)
}
else
if
(
!
vm
.
baseInfo
.
marital_status
)
{
vm
.
hlsPopup
.
showLongCenter
(
'婚姻状况不能为空!'
)
}
else
if
((
vm
.
marital_status_n
===
'已婚'
)
&&
!
vm
.
baseInfo
.
bp_name_sp
)
{
vm
.
hlsPopup
.
showLongCenter
(
'配偶姓名不能为空!'
)
}
else
if
((
vm
.
marital_status_n
===
'已婚'
)
&&
!
vm
.
baseInfo
.
spouse_phone
)
{
vm
.
hlsPopup
.
showLongCenter
(
'配偶手机号不能为空!'
)
}
else
if
((
vm
.
marital_status_n
===
'已婚'
)
&&
!
vm
.
baseInfo
.
working_place_sp
)
{
vm
.
hlsPopup
.
showLongCenter
(
'配偶工作单位不能为空!'
)
}
else
if
((
vm
.
marital_status_n
===
'已婚'
)
&&
!
vm
.
baseInfo
.
address_sp
)
{
vm
.
hlsPopup
.
showLongCenter
(
'配偶居住地址不能为空!'
)
}
else
if
(
!
vm
.
hlsUtil
.
phoneNumber
(
vm
.
baseInfo
.
cell_phone
))
{
vm
.
hlsPopup
.
showLongCenter
(
'手机号码有误!'
)
}
else
{
let
bpId
=
await
vm
.
saveProtocol
()
return
bpId
}
},
basicInfoQuery
()
{
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'bp_np_info_query'
let
param
=
{
bp_id
:
vm
.
$route
.
params
.
bp_id
,
}
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
$post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
Object
.
assign
(
vm
.
baseInfo
,
res
.
info
)
}
else
{
hlsPopup
.
showLongCenter
(
res
.
message
)
}
})
},
uploadIdCardFront
()
{
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'attachment_upload'
let
param
=
{
file_path
:
this
.
upload_list
[
0
].
filePath
,
source_type
:
''
,
pkvalue
:
window
.
localStorage
.
getItem
(
'user_id'
),
user_id
:
window
.
localStorage
.
getItem
(
'user_id'
),
}
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
console
.
log
(
res
.
response
.
attachment_id
)
}
})
},
show
()
{
let
vm
=
this
hlsPopup
.
showActionSheet
({
titleText
:
'请选择照片'
,
buttonArray
:
[
'拍照'
,
'从相册取'
],
callback
:
index
=>
{
if
(
index
===
0
)
{
vm
.
openCamera
()
}
else
{
vm
.
takePicture
()
}
},
})
},
openCamera
()
{
let
vm
=
this
let
obj
=
{
// 'table_pk_value': check_id,
table_name
:
'PRJ_CDD_ITEM_CHECK'
,
// 'check_id': check_id,
picture
:
''
,
filePath
:
''
,
attachment_id
:
''
,
timestamp
:
new
Date
().
getTime
(),
}
let
cameraoptions
=
{
quality
:
100
,
}
let
success
=
function
(
imgdata
)
{
obj
.
picture
=
imgdata
obj
.
filePath
=
imgdata
vm
.
upload_list
.
push
(
obj
)
}
let
error
=
function
()
{
console
.
log
(
'出现错误'
)
}
hlsUtil
.
openCamera
(
cameraoptions
,
success
,
error
)
},
takePicture
()
{
let
vm
=
this
let
cameraoptions
=
{
quality
:
100
,
}
let
success
=
function
(
imgUrl
)
{
// for (let i = 0; i
<
imgUrl
.
length
;
i
++
)
{
let
obj
=
{
// 'table_pk_value': check_id,
table_name
:
'PRJ_CDD_ITEM_CHECK'
,
// 'check_id': check_id,
picture
:
''
,
filePath
:
''
,
attachment_id
:
''
,
timestamp
:
new
Date
().
getTime
(),
sequence
:
''
,
}
obj
.
picture
=
imgUrl
obj
.
filePath
=
imgUrl
// obj.picture = imgUrl[i]
// obj.filePath = imgUrl[i]
// obj.sequence = i + 1
// push到上传列表中 通知前台数据发生改变
vm
.
upload_list
.
push
(
obj
)
}
// }
let
error
=
function
()
{
console
.
log
(
'出现错误'
)
}
vm
.
hlsUtil
.
takePicture
(
cameraoptions
,
success
,
error
)
},
successCall
()
{
this
.
hideModal
()
this
.
getBankInfo
()
this
.
bank
.
bank_account_num
=
''
this
.
bank
.
bank_account_name
=
''
this
.
bank
.
bank_full_name
=
''
this
.
bank
.
bank_branch_name
=
''
},
addBankInfo
()
{
this
.
hlsPopup
.
showConfirm
({
title
:
'提示'
,
content
:
'您确认添加吗?'
,
onConfirm
:
(
data
)
=>
{
console
.
log
(
data
)
if
(
data
)
{
let
bpName
=
window
.
localStorage
.
getItem
(
'bp_name'
)
if
(
this
.
bank
.
bank_account_num
===
''
||
this
.
bank
.
bank_account_name
===
''
||
this
.
bank
.
bank_full_name
===
''
||
this
.
bank
.
bank_branch_name
===
''
)
{
this
.
hlsPopup
.
showLongCenter
(
'请输入完整字段'
)
}
else
if
(
this
.
hlsUtil
.
isBankAccount
(
this
.
bank
.
bank_account_num
))
{
this
.
hlsPopup
.
showLongCenter
(
'银行卡号有误'
)
}
else
if
(
this
.
bank
.
bank_account_name
!==
bpName
)
{
this
.
hlsPopup
.
showLongCenter
(
'请输入本人银行卡'
)
}
else
{
let
list
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
bank
))
this
.
bankList
.
push
(
list
)
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'bp_bank_save'
let
param
=
{
master
:
{
bp_id
:
window
.
localStorage
.
getItem
(
'user_id'
),
bank_lists
:
this
.
bankList
,
},
}
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
vm
.
successCall
()
vm
.
hlsPopup
.
showLongCenter
(
'保存成功'
)
setTimeout
(
vm
.
successCall
,
2000
)
}
})
}
}
},
})
},
putData
()
{
if
(
window
.
localStorage
.
getItem
(
'user_id'
)
&&
window
.
localStorage
.
getItem
(
'user_id'
)
!==
'undefined'
)
{
this
.
hlsPopup
.
showConfirm
({
title
:
'提示'
,
content
:
'您确认提交吗?'
,
onConfirm
:
(
data
)
=>
{
console
.
log
(
data
)
if
(
data
)
{
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'bp_bind_submit'
let
param
=
{
master
:
{
bp_id
:
window
.
localStorage
.
getItem
(
'user_id'
),
company_id
:
'2145'
,
},
}
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
vm
.
hlsPopup
.
showSuccess
(
'提交成功'
)
vm
.
$router
.
push
({
name
:
'Home'
,
})
}
})
}
},
})
}
else
{
this
.
hlsPopup
.
showLongCenter
(
'基本信息还未保存'
)
}
},
hideModal
()
{
this
.
showModalValue
=
false
},
getInfo
(
i
)
{
this
.
showModalValue
=
i
},
showModal
()
{
this
.
showModalValue
=
true
},
selectIdType
(
e
)
{
let
vm
=
this
vm
.
hlsPopup
.
selectList
({
list
:
vm
.
typeList
,
code
:
'bp_type'
,
object
:
{},
returnItem
:
function
(
index
,
obj
)
{
vm
.
baseInfo
.
bp_type
=
obj
.
bp_type
vm
.
baseInfo
.
bp_type_n
=
obj
.
bp_type_n
},
})
},
getBankInfo
()
{
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'bp_bank_query'
let
param
=
{
bp_id
:
vm
.
$route
.
params
.
bp_id
,
}
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
vm
.
getBankList
=
res
.
lists
}
}).
catch
(()
=>
{
this
.
hlsPopup
.
showLongCenter
(
'传入参数异常'
)
})
},
getinvoiceList
(
i
)
{
Object
.
assign
(
this
.
baseInfo
,
i
)
},
selectBackType
(
e
)
{
let
vm
=
this
vm
.
hlsPopup
.
selectList
({
list
:
vm
.
backList
,
code
:
'bp_type'
,
object
:
{},
returnItem
:
function
(
index
,
obj
)
{
vm
.
baseInfo
.
academic_background
=
obj
.
bp_type
vm
.
baseInfo
.
academic_background_n
=
obj
.
bp_type_n
},
})
},
selectMarital
(
e
)
{
let
vm
=
this
vm
.
hlsPopup
.
selectList
({
list
:
vm
.
maritalList
,
code
:
'bp_type'
,
object
:
{},
returnItem
:
function
(
index
,
obj
)
{
vm
.
baseInfo
.
marital_status
=
obj
.
bp_type
vm
.
baseInfo
.
marital_status_n
=
obj
.
bp_type_n
},
})
},
getMarital
()
{
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'bp_marital_status_query'
let
param
=
{}
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
vm
.
maritalList
=
res
.
lists
.
map
(
item
=>
{
return
{
code
:
item
.
marital_status
,
code_name
:
item
.
marital_status_n
,
}
})
}
})
},
getEducationBackground
()
{
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'bp_academic_bg_query'
let
param
=
{}
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
vm
.
backList
=
res
.
lists
.
map
(
item
=>
{
return
{
code
:
item
.
academic_bg
,
code_name
:
item
.
academic_bg_n
,
}
})
}
})
},
getTabNum
(
i
)
{
this
.
tabNum
=
i
},
fileSuccess
(
fileList
,
result
)
{
this
.
fileList
=
fileList
this
.
fileList
.
forEach
((
itemFile
,
index
)
=>
{
if
(
result
.
response
&&
itemFile
.
file
&&
!
itemFile
.
attachment_id
&&
result
.
response
.
fileName
===
itemFile
.
file
.
name
)
{
itemFile
.
attachment_id
=
result
.
response
.
attachment_id
}
})
},
getBpType
()
{
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'bp_type_select'
let
param
=
{}
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
vm
.
typeList
=
res
.
lists
.
map
(
item
=>
{
return
{
code
:
item
.
bp_type
,
code_name
:
item
.
bp_type_n
,
}
})
}
})
},
},
}
</
script
>
<
style
lang=
"less"
>
#base-info1-write {
font-family: PingFangSC-Regular;
input::placeholder {
color: #b4b4b5;
}
.header {
background-color: #00469c;
color: #fff;
.h-header-btn {
img {
width: 16px;
height: 16px;
margin-left: 4px;
}
span {
color: #fff;
font-family: PingFangSC-Semibold;
margin-left: 16px;
font-size: 17px;
letter-spacing: 0.6px;
line-height: 24px;
}
}
}
.content {
height: 76%;
.userInfo {
height: 45px;
line-height: 45px;
color: #00469c;
margin-top: -10px;
font-size: 15px;
margin-left: 16px;
position: relative;
}
.userInfo::before {
content: "";
display: block;
width: 4px;
height: 20px;
background-color: #00469c;
position: absolute;
left: -15px;
top: 12px;
}
.upload-id-card {
height: 176px;
background-color: #fff;
span {
display: block;
color: #656464;
margin-left: 16px;
padding-top: 16px;
font-size: 13px;
}
.upload-box {
display: flex;
justify-content: center;
margin-top: 15px;
div {
width: 172px;
height: 120px;
border: 1px dashed #dcdcdd;
text-align: center;
font-size: 14px;
color: #b4b4b5;
.front,
.back {
width: 172px;
height: 120px;
}
}
div:nth-of-type(2) {
margin-left: 7px;
}
img {
margin-top: 32px;
width: 58px;
height: 45px;
}
p {
margin-top: 12px;
font-size: 13px;
}
}
}
.second-part {
margin-top: 9px;
.auto {
color: #b4b4b5;
}
}
.card {
padding-bottom: 8px;
height: auto;
background-color: #fff;
margin-bottom: 15px;
span {
color: #656464;
font-size: 13px;
line-height: 18px;
padding-top: 8px;
display: block;
margin-left: 16px;
}
.img-content {
display: flex;
flex-flow: row wrap;
justify-content: flex-start;
align-items: center;
}
.card-upload {
width: 88px;
height: 88px;
border: 1px dashed #dcdcdd;
display: flex;
justify-content: center;
align-items: center;
margin-top: 12px;
margin-left: 12px;
// float: left;
img {
width: 24px;
height: 24px;
}
}
}
}
.put {
width: 175px;
height: 45px;
color: #00469c;
border-radius: 4px;
border: 1px solid #00469c;
background-color: #fafafa;
}
.put1 {
width: 100%;
height: 45px;
color: #fff;
border-radius: 4px;
// border: 1px solid #00469c;
background-color: #00469c;
}
.save {
width: 175px;
height: 45px;
color: #fff;
border-radius: 4px;
background-color: #00469c;
}
.footer-button {
padding-top: 15px;
margin-bottom: 15px;
}
.front,
.photo,
.backphoto,
.back {
display: none;
}
.modal-content {
width: 100%;
//height: 75%;
position: absolute;
top: 33%;
background-color: #fff;
overflow-y: scroll;
.modal-content-add-top {
width: 320px;
height: 34px;
line-height: 34px;
padding-top: 10px;
background-color: #fff;
padding-bottom: 40px;
position: fixed;
left: 28px;
span {
font-family: PingFangSC-Semibold;
font-size: 15px;
color: #00469c;
letter-spacing: 0.47px;
}
img {
width: 34px;
height: 34px;
float: right;
}
}
.addBack {
display: block;
width: 320px;
margin: 0 auto;
margin-top: 50px;
border-radius: 6px;
margin-bottom: 17px;
}
.card-Info {
margin-bottom: 220px;
}
}
.add-card {
width: 358px;
height: 40px;
background: #00469c;
border-radius: 4px;
color: #fff;
}
}
.modal {
background-color: rgba(0, 0, 0, 0) !important;
}
.hls-notify-wrap {
height: 50px;
line-height: 34px !important;
}
</
style
>
src/pages/personalCenter/orgWrite/bankInfoWrite.vue
deleted
100644 → 0
View file @
09ddfba5
<
template
>
<div
id=
"bank-card"
>
<div
class=
"info"
>
<div
class=
"info-icon"
>
<img
src=
"@/assets/userBind/info.png"
>
<span>
温馨提示
</span>
</div>
<p>
推荐使用农行卡,农行卡支付免收手续费!
</p>
</div>
<div
class=
"my-card"
>
<div
class=
"top"
>
<div
class=
"left"
>
<img
src=
"@/assets/userBind/bankIcon.png"
class=
"icon"
>
<span
class=
"top-word"
>
我的卡
<span
class=
"sum"
>
(共
{{
getBankList
.
length
}}
张)
</span>
</span>
</div>
<img
src=
"@/assets/userBind/add.png"
class=
"icon-right"
@
click=
"sendFlag"
>
</div>
<div
class=
"clear"
/>
<div
class=
"card-content"
>
<ul>
<li
v-for=
"(item,index) in getBankList"
:key=
"index"
>
<item-option
class=
"slider"
>
<div
:style=
"'background-image: url('+ changeBgImg (item) +')'"
class=
"my-bank-card"
>
<div
class=
"card-info"
>
<span
class=
"name"
>
{{
item
.
bank_full_name
}}
</span>
<span
class=
"card-type"
>
{{
item
.
bank_card_type
}}
</span>
<span
class=
"number"
>
卡号
</span>
<span
class=
"card-number"
>
**** **** ****
{{
selectLast
(
item
)
}}
</span>
</div>
</div>
<div
slot=
"buttons"
class=
"button"
>
<option-button
text
@
click
.
native=
"deleteFun(item.bank_account_num)"
/>
</div>
</item-option>
</li>
</ul>
</div>
</div>
</div>
</
template
>
<
script
>
import
backImg1
from
'@/assets/userBind/nong.png'
import
backImg2
from
'@/assets/userBind/unNong.png'
export
default
{
props
:
{
'getBankList'
:
{
default
:
[],
type
:
Array
,
},
},
data
()
{
return
{
backImg
:
null
,
showModalValue
:
true
,
}
},
methods
:
{
sendFlag
()
{
this
.
showModalValue
=
true
this
.
$emit
(
'getInfo'
,
this
.
showModalValue
)
},
changeBgImg
(
item
)
{
if
(
item
.
bank_full_name
===
'中国农业银行'
)
{
return
backImg1
}
else
{
return
backImg2
}
},
selectLast
(
item
)
{
let
num
=
item
.
bank_account_num
return
num
.
substring
(
num
.
length
-
4
)
},
deleteFun
(
e
)
{
let
index
=
this
.
getBankList
.
findIndex
(
item
=>
{
if
(
item
.
bank_account_num
===
e
)
{
return
true
}
})
this
.
getBankList
.
splice
(
index
,
1
)
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'bp_bank_delete'
let
param
=
{
'master'
:
{
'bp_id'
:
vm
.
$route
.
params
.
bp_id
,
'bank_account_num'
:
e
,
},
}
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
console
.
log
(
res
)
}
})
},
},
}
</
script
>
<
style
lang=
"less"
scoped
>
#bank-card {
.info {
height: 70px;
background-color: rgba(142, 195, 30, 0.1);
.info-icon {
height: 20px;
padding-top: 20px;
display: flex;
align-items: center;
img {
width: 15.8px;
height: 15.8px;
margin-left: 17.1px;
}
span {
font-family: PingFangSC-Semibold;
font-size: 14px;
color: #8ec31e;
margin-left: 9px;
letter-spacing: 0.5px;
line-height: 20px;
}
}
p {
font-family: PingFangSC-Regular;
font-size: 13px;
color: #656464;
width: 310px;
margin-left: 42px;
letter-spacing: 0.4px;
line-height: 18px;
margin-top: 8px;
}
}
.my-card {
.top {
width: 320px;
margin: 0 auto;
margin-top: 13px;
.left {
height: 32px;
display: flex;
align-items: center;
float: left;
.icon {
width: 18px;
height: 20px;
margin-right: 4px;
}
.top-word {
font-family: PingFangSC-Semibold;
font-size: 15px;
color: #00469c;
letter-spacing: 0.46px;
.sum {
font-family: PingFangSC-Semibold;
font-size: 15px;
color: #4d5d6c;
letter-spacing: 0.46px;
}
}
}
.icon-right {
width: 34px;
height: 34px;
float: right;
}
}
.clear {
clear: both;
}
.card-content {
width: 350px;
padding-left: 28px;
overflow: hidden;
margin-top: 16px;
li {
margin-bottom: 10px;
.slider {
height: 100%;
margin-left: -14px;
}
}
.my-bank-card {
width: 320px;
height: 190px;
box-shadow: 0 5px 20px 0 rgba(101, 101, 101, 0.25);
border-radius: 6px;
background-size: 320px 190px;
.card-info {
font-family: PingFangSC-Medium;
color: #ffffff;
margin-left: 18px;
padding-top: 15px;
.name,
.card-type {
font-size: 16px;
letter-spacing: 5.5px;
line-height: 24px;
}
.card-type {
display: block;
margin-top: 9px;
}
.number {
font-size: 12px;
letter-spacing: 0;
line-height: 16px;
margin-top: 33px;
display: block;
margin-top: 33px;
}
.card-number {
display: block;
font-family: Avenir-Heavy;
font-size: 16px;
color: #ffffff;
letter-spacing: 6px;
line-height: 24px;
}
}
}
}
}
.swipeout-list .item .function {
left: 330px;
border-radius: 6px;
width: 54px;
height: 190px;
background: url("../../../assets/userBind/delete.png") 16px 84.9px #fde5e8
no-repeat;
background-size: 20px 20px;
}
}
</
style
>
src/pages/personalCenter/orgWrite/enterpriseWrite.vue
deleted
100644 → 0
View file @
09ddfba5
<!--
* @Description: In User Settings Edit
* @Author: your name
* @Date: 2019-09-30 15:18:52
* @LastEditTime: 2019-10-08 15:26:23
* @LastEditors: Please set LastEditors
-->
<
template
>
<h-view
id=
"base-info1"
class=
"public-style"
title=
"基本信息"
>
<h-header
:proportion=
"[5,1,1]"
class=
"header"
>
<div
slot=
"left"
class=
"h-header-btn"
@
click=
"$routeGo()"
>
<img
src=
"@/assets/userBind/arrow.png"
>
<span>
用户绑定
</span>
</div>
</h-header>
<Tab
:tabNum=
"tabNum"
@
getTabNum=
"getTabNum"
/>
<h-content
class=
"content"
>
<div
v-show=
"tabNum==0"
>
<list-item
:item-height=
"44"
>
<item
:showArrow=
"true"
>
<div
slot=
"name"
class=
"font-color required"
>
客户类型
</div>
<input
slot=
"content"
v-model=
"baseInfo.bp_type_n"
placeholder=
"请选择"
type=
"text"
readonly
@
click=
"selectIdType()"
>
</item>
<item
v-if=
"bp_type_flag"
>
<div
slot=
"name"
>
{{
typeName
}}
</div>
<input
v-if=
"bpClass_flag"
slot=
"content"
:placeholder=
"type"
v-model=
"baseInfo.agent_username"
>
<input
v-if=
"!bpClass_flag"
slot=
"content"
:placeholder=
"type"
v-model=
"baseInfo.business_license_num"
>
</item>
</list-item>
<div
class=
"userInfo martop"
>
企业信息
</div>
<div
class=
"upload-id-card"
>
<span
class=
"font-color"
>
营业执照照片上传
</span>
<div
class=
"upload-box1"
>
<!--
<div>
-->
<img
src=
"@/assets/userBind/camera.png"
>
<!--
</div>
-->
</div>
</div>
<!-- 营业执照识别信息 -->
<list-item
:item-height=
"44"
class=
"second-part"
>
<item>
<div
slot=
"name"
class=
"font-color required"
>
公司名称
</div>
<input
slot=
"content"
v-model=
"baseInfo.bp_name"
placeholder=
"上传营业执照自动填充"
class=
"auto"
>
</item>
<item>
<div
slot=
"name"
class=
"font-color required"
>
企业类型
</div>
<input
slot=
"content"
v-model=
"baseInfo.enterprise_type"
placeholder=
"上传营业执照自动填充"
class=
"auto"
>
</item>
<item>
<div
slot=
"name"
class=
"font-color"
>
统一社会信用代码
</div>
<input
slot=
"content"
v-model=
"baseInfo.organization_code"
placeholder=
"上传营业执照自动填充"
class=
"auto"
>
</item>
<item>
<div
slot=
"name"
class=
"font-color"
>
注册资本
</div>
<input
slot=
"content"
v-model=
"baseInfo.registered_capital"
type=
"number"
placeholder=
"上传营业执照自动填充"
class=
"auto"
>
</item>
<item>
<div
slot=
"name"
class=
"font-color"
>
法定代表人
</div>
<input
slot=
"content"
v-model=
"baseInfo.legal_person"
placeholder=
"上传营业执照自动填充"
class=
"auto"
>
</item>
<item>
<div
slot=
"name"
class=
"font-color required"
>
注册地址
</div>
<input
slot=
"content"
v-model=
"baseInfo.registered_place"
placeholder=
"请输入注册地址"
>
</item>
<item>
<div
slot=
"name"
class=
"font-color required"
>
经营地址
</div>
<input
slot=
"content"
v-model=
"baseInfo.business_address"
placeholder=
"请输入经营地址"
>
</item>
<item>
<div
slot=
"name"
class=
"font-color required"
>
固定电话
</div>
<input
slot=
"content"
v-model=
"baseInfo.phone"
placeholder=
"请输入固定电话"
>
</item>
</list-item>
<!-- 授权切换 -->
<div
class=
"authorize"
>
<p
class=
"authorize-select font-color"
>
是否授权
</p>
<div
class=
"authorize-checklist"
@
click=
"authorizeChange"
>
<div
v-if=
"flag"
/>
<img
v-if=
"!flag"
src=
"@/assets/userBind/org/checklist.png"
alt
>
</div>
</div>
<div
class=
"userInfo types"
>
{{
text
}}
</div>
<div
class=
"upload-id-cards"
>
<span>
身份证照片上传
</span>
<div
class=
"upload-box"
>
<div>
<img
src=
"@/assets/userBind/org/front.png"
>
<p>
正面
</p>
</div>
<div>
<img
src=
"@/assets/userBind/org/back.png"
>
<p>
反面
</p>
</div>
</div>
</div>
<!-- 已授权 -->
<list-item
v-if=
"!flag"
:item-height=
"44"
class=
"second-part"
>
<item>
<div
slot=
"name"
class=
"font-color required"
>
姓名
</div>
<input
slot=
"content"
v-model=
"authMsg.auth_person_name"
placeholder=
"上传身份证自动填充"
class=
"auto"
>
</item>
<item>
<div
slot=
"name"
class=
"font-color required"
>
身份证号
</div>
<input
slot=
"content"
v-model=
"authMsg.auth_person_id_card"
placeholder=
"上传身份证自动填充"
class=
"auto"
>
</item>
<item>
<div
slot=
"name"
class=
"font-color required"
>
公司职务
</div>
<input
slot=
"content"
v-model=
"authMsg.auth_person_position"
placeholder=
"请输入公司职务"
>
</item>
<item>
<div
slot=
"name"
class=
"font-color required"
>
授权事项
</div>
<input
slot=
"content"
v-model=
"authMsg.auth_person_matter"
placeholder=
"请输入授权事项"
>
</item>
</list-item>
<!-- 未授权 -->
<list-item
v-if=
"flag "
:item-height=
"44"
class=
"second-part"
>
<item>
<div
slot=
"name"
class=
"font-color"
>
姓名
</div>
<input
slot=
"content"
v-model=
"legal_personMsg.legal_person"
placeholder=
"上传身份证自动填充"
class=
"auto"
>
</item>
<item>
<div
slot=
"name"
class=
"font-color"
>
身份证号
</div>
<input
slot=
"content"
v-model=
"baseInfo.id_card_no"
placeholder=
"上传身份证自动填充"
class=
"auto"
>
</item>
<item>
<div
slot=
"name"
class=
"font-color required"
>
手机号
</div>
<input
slot=
"content"
v-model=
"legal_personMsg.cell_phone"
placeholder=
"请输入手机号"
>
</item>
<item>
<div
slot=
"name"
class=
"font-color required"
>
居住地址
</div>
<input
slot=
"content"
v-model=
"legal_personMsg.living_address"
placeholder=
"请输入居住地址"
>
</item>
</list-item>
<div
v-if=
"!flag"
class=
"upload-id-card"
>
<span>
授权书证件上传
</span>
<div
class=
"upload-box1"
>
<!--
<div>
-->
<img
src=
"@/assets/userBind/camera.png"
>
<!--
</div>
-->
</div>
</div>
<!-- 资产信息 -->
<div
:class=
"
{martop: flag,types:!flag}" class="userInfo">资产信息
</div>
<div
class=
"card2"
>
<span>
房产证件
</span>
<div
class=
"img-content"
>
<div
class=
"card-upload"
>
<img
src=
"@/assets/userBind/camera.png"
>
</div>
</div>
</div>
<div
class=
"card2"
>
<span>
车辆证件
</span>
<div
class=
"img-content"
>
<div
class=
"card-upload"
>
<img
src=
"@/assets/userBind/camera.png"
>
</div>
</div>
</div>
<div
class=
"card2"
>
<span>
其他资产证件
</span>
<div
class=
"img-content"
>
<div
class=
"card-upload"
>
<img
src=
"@/assets/userBind/camera.png"
>
</div>
</div>
</div>
</div>
<BankInfo
v-show=
"tabNum==1"
:getBankList=
"getBankList"
@
getInfo=
"getInfo"
/>
<InvoiceInfo
v-show=
"tabNum==2"
:tabNum=
"tabNum"
:baseInfo=
"baseInfo"
:orgCode=
"baseInfo.organization_code"
@
getinvoiceList=
"getinvoiceList"
/>
</h-content>
<bottom-tab
class=
"footer-button"
>
<tab-button
class=
"put"
@
click
.
native=
"handSubmit"
>
提交
</tab-button>
<tab-button
class=
"save"
@
click
.
native=
"verified"
>
保存
</tab-button>
</bottom-tab>
<h-modal
ref=
"modal"
v-model=
"showModalValue"
position=
"bottom"
>
<h-view>
<div
class=
"modal-content"
>
<div
class=
"modal-content-add-top"
>
<span>
添加银行卡
</span>
<img
src=
"@/assets/userBind/close.png"
@
click=
"hideModal"
>
</div>
<img
src=
"@/assets/userBind/addBack.png"
class=
"addBack"
>
<list-item
:item-height=
"44"
class=
"card-Info"
>
<item>
<div
slot=
"name"
>
银行卡卡号
</div>
<input
slot=
"content"
v-model=
"bank_lists.bank_account_num"
placeholder=
"银行卡卡号自动填充"
>
</item>
<item>
<div
slot=
"name"
>
账户姓名
</div>
<input
slot=
"content"
v-model=
"bank_lists.bank_account_name"
placeholder=
"请输入账户名称"
>
</item>
<item>
<div
slot=
"name"
>
银行名称
</div>
<input
slot=
"content"
v-model=
"bank_lists.bank_full_name"
placeholder=
"请输入银行名称"
>
</item>
<item>
<div
slot=
"name"
>
支行名称
</div>
<input
slot=
"content"
v-model=
"bank_lists.bank_branch_name"
placeholder=
"请输入支行名称"
>
</item>
</list-item>
</div>
</h-view>
<bottom-tab
class=
"add-box"
>
<tab-button
class=
"add-card"
@
click
.
native=
"addBankInfo"
>
添加
</tab-button>
</bottom-tab>
</h-modal>
</h-view>
</
template
>
<
script
>
import
Tab
from
'@/components/tab'
import
InvoiceInfo
from
'./invoiceInfoWrite'
import
BankInfo
from
'./bankInfoWrite'
export
default
{
components
:
{
Tab
,
BankInfo
,
InvoiceInfo
,
},
data
()
{
return
{
tabNum
:
0
,
bp_id
:
''
,
flag
:
true
,
bpClass
:
''
,
show
:
true
,
img_url
:
{},
typeList
:
[],
backList
:
[],
saveInfo
:
{},
lastInfo
:
{},
msg_flag
:
false
,
invoiceInfo
:
{},
maritalList
:
[],
getBankList
:
[],
academic_bg_n
:
''
,
bpClass_flag
:
false
,
text
:
'法人代表信息'
,
bp_type_flag
:
false
,
typeName
:
''
,
marital_status_n
:
''
,
bank_card_flag
:
false
,
showModalValue
:
false
,
type
:
'请输入业务经办姓名'
,
legal_personMsg
:
{
id_card_no
:
null
,
legal_person
:
''
,
cell_phone
:
null
,
living_address
:
''
,
},
baseInfo
:
{
bp_type
:
''
,
bp_type_n
:
''
,
bp_name
:
''
,
phone
:
null
,
auth_flag
:
''
,
user_phone
:
window
.
localStorage
.
user_phone
,
legal_person
:
''
,
agent_username
:
''
,
enterprise_type
:
''
,
business_address
:
''
,
registered_place
:
''
,
organization_code
:
''
,
registered_capital
:
null
,
business_license_num
:
''
,
bp_class
:
this
.
$route
.
params
.
bp_class
,
},
bank_lists
:
{
bank_account_num
:
''
,
bank_account_name
:
''
,
bank_card_type
:
'储蓄卡'
,
bank_full_name
:
''
,
bank_branch_name
:
''
,
},
authMsg
:
{
auth_person_name
:
''
,
auth_person_matter
:
''
,
auth_person_id_card
:
''
,
auth_person_position
:
''
,
},
}
},
computed
:
{},
watch
:
{
'baseInfo.auth_flag'
(
newVal
,
oldVal
)
{
if
(
newVal
===
'是'
)
{
this
.
flag
=
false
}
else
if
(
newVal
===
'否'
)
{
this
.
flag
=
true
}
},
// 监听客户类型
'baseInfo.bp_type_n'
()
{
let
vm
=
this
if
(
vm
.
baseInfo
.
bp_type
===
'TENANT'
||
vm
.
baseInfo
.
bp_type
===
'GUTA'
)
{
vm
.
type
=
'请输入业务经办员工代码'
vm
.
typeName
=
'业务经办人'
vm
.
baseInfo
.
agent_username
=
'BP003020'
}
else
if
(
vm
.
baseInfo
.
bp_type
===
'AGENT'
||
vm
.
baseInfo
.
bp_type
===
'OFFICE'
||
vm
.
baseInfo
.
bp_type
===
'FACTORY'
)
{
vm
.
typeName
=
'营业执照'
vm
.
type
=
'请输入营业执照号'
vm
.
baseInfo
.
agent_username
=
''
}
},
flag
()
{
if
(
this
.
flag
)
{
this
.
text
=
'法人代表信息'
}
else
{
this
.
text
=
'授权信息'
}
},
typeName
()
{
if
(
this
.
typeName
===
'业务经办人'
)
{
this
.
bpClass
=
this
.
baseInfo
.
agent_username
this
.
bpClass_flag
=
true
}
else
{
this
.
bpClass
=
this
.
baseInfo
.
business_license_num
this
.
bpClass_flag
=
false
}
},
},
created
()
{
this
.
getBpType
()
// this.getBankInfo()
// this.getbaseInfo()
},
beforeRouteEnter
(
to
,
from
,
next
)
{
next
(
vm
=>
{
vm
.
getbaseInfo
()
vm
.
getBankInfo
()
})
},
methods
:
{
getBankInfo
()
{
let
vm
=
this
// let bpId = window.localStorage.getItem('user_id')
let
bpId
=
vm
.
bp_id
let
url
=
process
.
env
.
basePath
+
'bp_bank_query'
let
param
=
{
// bp_id: bpId,
bp_id
:
vm
.
$route
.
params
.
bp_id
,
}
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
vm
.
getBankList
=
res
.
lists
}
})
},
handSubmit
()
{
if
(
this
.
bp_id
)
{
this
.
hlsPopup
.
showConfirm
({
title
:
'提示'
,
content
:
'您确认提交吗?'
,
onConfirm
:
(
data
)
=>
{
console
.
log
(
data
)
if
(
data
)
{
let
url
=
$config
.
basePath
+
'bp_bind_submit'
let
param
=
{
master
:
{
// bp_id: window.localStorage.getItem('user_id'),
bp_id
:
this
.
bp_id
,
company_id
:
'2145'
,
},
}
let
vm
=
this
this
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
console
.
log
(
'企业信息提交'
,
res
)
if
(
res
.
result
===
'S'
)
{
vm
.
hlsPopup
.
showSuccess
(
'提交成功'
)
vm
.
$router
.
push
({
name
:
'Home'
,
})
}
})
}
},
})
}
else
{
this
.
hlsPopup
.
showLongCenter
(
'基本信息未保存!'
)
}
},
addBankInfo
()
{
this
.
hlsPopup
.
showConfirm
({
title
:
'提示'
,
content
:
'您确认添加吗?'
,
onConfirm
:
(
data
)
=>
{
console
.
log
(
data
)
if
(
data
)
{
for
(
var
key
in
this
.
bank_lists
)
{
if
(
!
this
.
bank_lists
[
key
])
{
this
.
bank_card_flag
=
false
this
.
hlsPopup
.
showLongCenter
(
'银行信息不完整!'
)
return
}
else
{
this
.
bank_card_flag
=
true
}
}
// 银行卡验证this.hlsUtil.isBankAccount(this.bank.bank_account_num)
if
(
this
.
hlsUtil
.
isBankAccount
(
this
.
bank_lists
.
bank_account_num
))
{
this
.
bank_card_flag
=
false
this
.
hlsPopup
.
showLongCenter
(
'请输入正确银行卡号!'
)
}
// 验证账户名称与承租人名称一致
if
(
this
.
bank_lists
.
bank_account_name
!==
this
.
saveInfo
.
bp_name
)
{
this
.
bank_card_flag
=
false
this
.
hlsPopup
.
showLongCenter
(
'企业名称与账户名称不一致'
)
}
if
(
this
.
bank_card_flag
)
{
this
.
hlsPopup
.
showLoading
(
'请稍后'
)
let
url
=
$config
.
basePath
+
'bp_bank_save'
let
param
=
{
'master'
:
{
'bp_id'
:
this
.
$route
.
params
.
bp_id
,
'bank_lists'
:
[
this
.
bank_lists
],
},
}
let
vm
=
this
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
console
.
log
(
res
)
if
(
res
.
result
===
'S'
)
{
vm
.
hlsPopup
.
hideLoading
()
vm
.
showModalValue
=
false
vm
.
hlsPopup
.
showSuccess
(
'添加成功'
)
let
url
=
$config
.
basePath
+
'bp_bank_query'
let
param
=
{
bp_id
:
this
.
$route
.
params
.
bp_id
,
}
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
console
.
log
(
'银行卡查询'
,
res
)
vm
.
getBankList
=
[...
vm
.
getBankList
,
...
res
.
lists
]
})
}
})
}
}
},
})
},
verified
()
{
// debugger
if
(
this
.
flag
)
{
// this.baseInfo.auth_flag = 'N'
this
.
lastInfo
=
{...
this
.
baseInfo
,
...
this
.
legal_personMsg
}
this
.
saveInfo
=
{...
this
.
lastInfo
,
...
this
.
authMsg
,
...
this
.
invoiceInfo
}
this
.
saveInfo
.
auth_flag
=
'N'
}
else
{
// this.baseInfo.auth_flag = 'Y'
this
.
lastInfo
=
{...
this
.
baseInfo
,
...
this
.
authMsg
}
this
.
saveInfo
=
{...
this
.
lastInfo
,
...
this
.
legal_personMsg
,
...
this
.
invoiceInfo
}
this
.
saveInfo
.
auth_flag
=
'Y'
}
console
.
log
(
'last'
,
this
.
lastInfo
,
this
.
invoiceInfo
)
let
vm
=
this
// 校验基本信息
if
(
this
.
bpClass_flag
)
{
delete
this
.
lastInfo
.
business_license_num
delete
this
.
lastInfo
.
id_card_name
for
(
var
key
in
vm
.
lastInfo
)
{
if
(
!
vm
.
lastInfo
[
key
])
{
console
.
log
(
'key'
,
key
,
vm
.
bpClass
)
switch
(
key
)
{
case
'bp_type'
:
vm
.
hlsPopup
.
showLongCenter
(
'客户类型未填写'
)
break
case
'bp_name'
:
vm
.
hlsPopup
.
showLongCenter
(
'公司名称未填写'
)
break
case
'enterprise_type'
:
vm
.
hlsPopup
.
showLongCenter
(
'企业类型未填写'
)
break
case
'organization_code'
:
vm
.
hlsPopup
.
showLongCenter
(
'统一社会信用代码未填写'
)
break
case
'registered_capital'
:
vm
.
hlsPopup
.
showLongCenter
(
'注册资本未填写'
)
break
case
'legal_person'
:
vm
.
hlsPopup
.
showLongCenter
(
'法定代表人未填写'
)
break
case
'registered_place'
:
vm
.
hlsPopup
.
showLongCenter
(
'注册地址未填写'
)
break
case
'business_address'
:
vm
.
hlsPopup
.
showLongCenter
(
'经营地址未填写'
)
break
case
'phone'
:
vm
.
hlsPopup
.
showLongCenter
(
'固定电话未填写'
)
break
case
'id_card_no'
:
vm
.
hlsPopup
.
showLongCenter
(
'身份证未填写'
)
break
case
'cell_phone'
:
vm
.
hlsPopup
.
showLongCenter
(
'手机号未填写'
)
break
case
'living_address'
:
vm
.
hlsPopup
.
showLongCenter
(
'居住地址未填写'
)
break
case
'auth_person_name'
:
vm
.
hlsPopup
.
showLongCenter
(
'授权人姓名未填写'
)
break
case
'auth_person_id_card'
:
vm
.
hlsPopup
.
showLongCenter
(
'身份证号未填写'
)
break
case
'user_phone'
:
vm
.
hlsPopup
.
showLongCenter
(
'您还未登录'
)
break
case
'auth_person_position'
:
vm
.
hlsPopup
.
showLongCenter
(
'公司职务未填写'
)
break
case
'auth_person_matter'
:
vm
.
hlsPopup
.
showLongCenter
(
'授权事项未填写'
)
break
}
// vm.hlsPopup.showLongCenter('基本信息不完整!')
vm
.
msg_flag
=
false
return
}
else
{
vm
.
msg_flag
=
true
}
}
this
.
lastInfo
.
business_license_num
=
''
this
.
lastInfo
.
id_card_name
=
''
}
else
{
delete
this
.
lastInfo
.
agent_username
delete
this
.
lastInfo
.
id_card_name
for
(
var
key1
in
vm
.
lastInfo
)
{
if
(
!
vm
.
lastInfo
[
key1
])
{
console
.
log
(
'key'
,
key1
)
switch
(
key1
)
{
case
'bp_type'
:
vm
.
hlsPopup
.
showLongCenter
(
'客户类型未填写'
)
break
case
'bp_name'
:
vm
.
hlsPopup
.
showLongCenter
(
'公司名称未填写'
)
break
case
'enterprise_type'
:
vm
.
hlsPopup
.
showLongCenter
(
'企业类型未填写'
)
break
case
'organization_code'
:
vm
.
hlsPopup
.
showLongCenter
(
'统一社会信用代码未填写'
)
break
case
'registered_capital'
:
vm
.
hlsPopup
.
showLongCenter
(
'注册资本未填写'
)
break
case
'legal_person'
:
vm
.
hlsPopup
.
showLongCenter
(
'法定代表人未填写'
)
break
case
'registered_place'
:
vm
.
hlsPopup
.
showLongCenter
(
'注册地址未填写'
)
break
case
'business_address'
:
vm
.
hlsPopup
.
showLongCenter
(
'经营地址未填写'
)
break
case
'phone'
:
vm
.
hlsPopup
.
showLongCenter
(
'固定电话未填写'
)
break
case
'id_card_no'
:
vm
.
hlsPopup
.
showLongCenter
(
'身份证未填写'
)
break
case
'cell_phone'
:
vm
.
hlsPopup
.
showLongCenter
(
'手机号未填写'
)
break
case
'living_address'
:
vm
.
hlsPopup
.
showLongCenter
(
'居住地址未填写'
)
break
case
'auth_person_name'
:
vm
.
hlsPopup
.
showLongCenter
(
'授权人姓名未填写'
)
break
case
'auth_person_id_card'
:
vm
.
hlsPopup
.
showLongCenter
(
'身份证号未填写'
)
break
case
'user_phone'
:
vm
.
hlsPopup
.
showLongCenter
(
'您还未登录'
)
break
case
'auth_person_position'
:
vm
.
hlsPopup
.
showLongCenter
(
'公司职务未填写'
)
break
case
'auth_person_matter'
:
vm
.
hlsPopup
.
showLongCenter
(
'授权事项未填写'
)
break
}
// vm.hlsPopup.showLongCenter('基本信息不完整!')
vm
.
msg_flag
=
false
return
}
else
{
vm
.
msg_flag
=
true
}
}
this
.
lastInfo
.
agent_username
=
''
this
.
lastInfo
.
id_card_name
=
''
}
// if (!vm.bp_type_flag) {
// vm.baseInfo.agent_username = ''
// vm.saveInfo.agent_username = ''
// }
// 校验电话号
let
re
=
this
.
hlsUtil
.
phoneNumber
(
this
.
saveInfo
.
cell_phone
)
if
(
!
re
&&
this
.
baseInfo
.
auth_flag
===
'N'
)
{
vm
.
msg_flag
=
false
vm
.
hlsPopup
.
showLongCenter
(
'请输入正确手机号'
)
}
// 校验身份证号vm.hlsUtil.isCardID(vm.baseInfo.id_card_no)
if
(
vm
.
flag
)
{
if
(
vm
.
hlsUtil
.
isCardID
(
vm
.
saveInfo
.
id_card_no
))
{
vm
.
msg_flag
=
false
vm
.
hlsPopup
.
showLongCenter
(
'身份证不正确'
)
}
}
else
{
if
(
vm
.
hlsUtil
.
isCardID
(
vm
.
saveInfo
.
auth_person_id_card
))
{
vm
.
msg_flag
=
false
vm
.
hlsPopup
.
showLongCenter
(
'身份证不正确'
)
}
}
if
(
vm
.
msg_flag
)
{
vm
.
hlsPopup
.
showLoading
(
'请稍后'
)
let
url
=
$config
.
basePath
+
'bp_org_bind_save'
let
param
=
{
'master'
:
vm
.
saveInfo
,
}
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
console
.
log
(
res
)
if
(
res
.
result
===
'S'
)
{
vm
.
hlsPopup
.
hideLoading
()
vm
.
hlsPopup
.
showSuccess
(
'保存成功'
)
// window.localStorage.setItem('user_id', res.bp_id)
// window.sessionStorage.setItem('user_id', res.bp_id)
vm
.
bp_id
=
res
.
bp_id
vm
.
getBankInfo
()
}
})
}
},
hideModal
()
{
this
.
showModalValue
=
false
},
getInfo
(
i
)
{
this
.
showModalValue
=
i
},
getinvoiceList
(
val
)
{
console
.
log
(
val
)
this
.
invoiceInfo
=
val
this
.
baseInfo
.
organization_code
=
val
.
organization_code
},
authorizeChange
()
{
this
.
flag
=
!
this
.
flag
if
(
this
.
flag
)
{
this
.
auth_flag
=
'未授权'
}
else
{
this
.
auth_flag
=
'已授权'
}
},
// 客户类型下拉框
selectIdType
(
e
)
{
let
vm
=
this
vm
.
hlsPopup
.
selectList
({
list
:
vm
.
typeList
,
code
:
'bp_type'
,
object
:
{},
returnItem
:
function
(
index
,
obj
)
{
vm
.
baseInfo
.
bp_type
=
obj
.
bp_type
vm
.
baseInfo
.
bp_type_n
=
obj
.
bp_type_n
vm
.
bp_type_flag
=
true
},
})
},
getTabNum
(
i
)
{
this
.
tabNum
=
i
},
fileSuccess
(
fileList
,
result
)
{
this
.
fileList
=
fileList
this
.
fileList
.
forEach
((
itemFile
,
index
)
=>
{
if
(
result
.
response
&&
itemFile
.
file
&&
!
itemFile
.
attachment_id
&&
result
.
response
.
fileName
===
itemFile
.
file
.
name
)
{
itemFile
.
attachment_id
=
result
.
response
.
attachment_id
}
})
},
// 客户类型请求
getBpType
()
{
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'bp_type_select'
let
param
=
{}
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
vm
.
typeList
=
res
.
lists
.
map
(
item
=>
{
return
{
code
:
item
.
bp_type
,
code_name
:
item
.
bp_type_n
,
}
})
}
})
},
getbaseInfo
()
{
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'bp_org_info_query'
let
param
=
{
bp_id
:
vm
.
$route
.
params
.
bp_id
,
}
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
$post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
delete
res
.
info
.
bp_id
vm
.
baseInfo
=
{...
res
.
info
}
vm
.
authMsg
=
{...
res
.
info
}
vm
.
legal_personMsg
=
{...
res
.
info
}
Object
.
assign
(
vm
.
saveInfo
,
res
.
info
)
}
else
{
hlsPopup
.
showLongCenter
(
res
.
message
)
}
})
},
},
}
</
script
>
<
style
lang=
'less'
scoped
>
#base-info1 {
font-family: PingFangSC-Regular;
input::placeholder {
color: #b4b4b5;
}
.header {
background-color: #00469c;
color: #fff;
.h-header-btn {
img {
width: 16px;
height: 16px;
margin-left: 4px;
}
span {
font-family: PingFangSC-Semibold;
color: #fff;
margin-left: 16px;
font-size: 17px;
letter-spacing: 0.6px;
line-height: 24px;
}
}
}
.content {
margin-top: 3px;
height: 76%;
.font-color {
color: #656464;
}
.martop {
margin-top: -10px;
}
.userInfo {
height: 40px;
line-height: 40px;
background-color: #fafafa;
color: #00469c;
font-size: 15px;
margin-left: 16px;
position: relative;
}
.userInfo::before {
content: "";
display: block;
width: 4px;
height: 20px;
background-color: #00469c;
position: absolute;
left: -15px;
top: 10px;
}
.types {
margin-top: 0;
}
.authorize {
width: 100%;
height: 32px;
display: flex;
flex-direction: row;
align-items: center;
background: rgba(0, 70, 156, 0.03);
.authorize-select {
// width: 48px;
height: 20px;
font-family: PingFangSC-Regular;
font-size: 12px;
color: #656464;
line-height: 20px;
margin-left: 16px;
}
.authorize-checklist {
width: 16px;
height: 16px;
margin-left: 8px;
div {
width: 100%;
height: 100%;
border: 1px solid #00469c;
border-radius: 3px;
}
}
}
.upload-id-cards {
height: 176px;
background-color: #fff;
span {
display: block;
color: #656464;
margin-left: 16px;
padding-top: 16px;
font-size: 13px;
}
.upload-box {
display: flex;
justify-content: center;
margin-top: 15px;
div {
width: 172px;
height: 120px;
border: 1px dashed #dcdcdd;
text-align: center;
font-size: 14px;
color: #b4b4b5;
.front,
.back {
width: 172px;
height: 120px;
}
}
div:nth-of-type(2) {
margin-left: 7px;
}
img {
margin-top: 32px;
width: 58px;
height: 45px;
}
p {
margin-top: 12px;
font-size: 13px;
}
}
}
.upload-id-card {
height: 122px;
background-color: #fff;
span {
display: block;
color: #656464;
margin-left: 16px;
padding-top: 16px;
font-size: 13px;
}
.upload-box1 {
width: 80px;
height: 80px;
border: 1px dashed #dcdcdd;
text-align: center;
margin-top: 8px;
margin-left: 16px;
img {
margin-top: 30px;
width: 25px;
height: 25px;
}
}
}
.second-part {
margin-top: 9px;
.auto {
color: #b4b4b5;
}
}
.card2 {
padding-bottom: 8px;
height: auto;
background-color: #fff;
margin-bottom: 10px;
span {
color: #656464;
font-size: 13px;
line-height: 18px;
padding-top: 8px;
display: block;
margin-left: 16px;
}
.img-content {
display: flex;
flex-flow: row wrap;
justify-content: flex-start;
align-items: center;
}
.card-upload {
width: 80px;
height: 80px;
border: 1px dashed #dcdcdd;
display: flex;
justify-content: center;
align-items: center;
margin-top: 12px;
margin-left: 16px;
// float: left;
img {
width: 24px;
height: 24px;
}
}
}
}
.put {
width: 175px;
height: 45px;
color: #00469c;
border-radius: 4px;
border: 1px solid #00469c;
background-color: #fafafa;
}
.save {
width: 175px;
height: 45px;
color: #fff;
border-radius: 4px;
background-color: #00469c;
}
.footer-button {
//height: 88px;
padding-top: 15px;
padding-bottom: 15px;
}
.front,
.photo,
.backphoto,
.back {
display: none;
}
.modal-content {
width: 100%;
height: 75%;
position: absolute;
top: 25%;
background-color: #fff;
overflow-y: scroll;
.modal-content-add-top {
width: 320px;
height: 34px;
line-height: 34px;
padding-top: 10px;
background-color: #fff;
padding-bottom: 40px;
position: fixed;
left: 28px;
span {
font-family: PingFangSC-Semibold;
font-size: 15px;
color: #00469c;
letter-spacing: 0.47px;
}
img {
width: 34px;
height: 34px;
float: right;
}
}
.addBack {
display: block;
width: 320px;
margin: 0 auto;
margin-top: 50px;
border-radius: 6px;
margin-bottom: 17px;
}
.card-Info {
margin-bottom: 220px;
}
}
.add-card {
width: 358px;
height: 40px;
background: #00469c;
border-radius: 4px;
color: #fff;
}
.modal {
background-color: rgba(0, 0, 0, 0) !important;
}
}
</
style
>
src/pages/personalCenter/orgWrite/invoiceInfoWrite.vue
deleted
100644 → 0
View file @
09ddfba5
<!--
* @Description: In User Settings Edit
* @Author: your name
* @Date: 2019-09-20 09:35:11
* @LastEditTime: 2019-09-29 11:25:28
* @LastEditors: Please set LastEditors
-->
<
template
>
<list-item
:item-height=
"44"
>
<item
:showArrow=
"true"
>
<div
slot=
"name"
class=
"font-color"
>
纳税人类型
</div>
<input
slot=
"content"
v-model=
"invoiceInfo.taxpayer_type_n"
type=
"text"
readonly
placeholder=
"请选择"
@
click=
"selectTaxpayer"
>
</item>
<item
:showArrow=
"true"
>
<div
slot=
"name"
class=
"font-color"
>
发票类型
</div>
<input
slot=
"content"
v-model=
"invoice_kind_n"
type=
"text"
readonly
placeholder=
"请选择"
@
click=
"selectInvoiceType"
>
</item>
<item>
<div
slot=
"name"
class=
"font-color"
>
发票抬头
</div>
<input
slot=
"content"
v-model=
"invoiceInfo.invoice_title"
type=
"text"
placeholder=
"请输入发票抬头"
>
</item>
<item>
<div
slot=
"name"
class=
"font-color"
>
发票地址及电话
</div>
<input
slot=
"content"
v-model=
"invoiceInfo.invoice_bp_address_phone_num"
type=
"text"
placeholder=
"请输入发票地址及电话"
>
</item>
<item>
<div
slot=
"name"
class=
"font-color"
>
发票开户行及账号
</div>
<input
slot=
"content"
v-model=
"invoiceInfo.invoice_bp_bank_account"
type=
"text"
placeholder=
"请输入发票开户行及账号"
>
</item>
<item>
<div
slot=
"name"
class=
"font-color"
>
纳税人识别号
</div>
<input
slot=
"content"
v-model=
"invoiceInfo.organization_code"
:placeholder=
"orgCode"
type=
"text"
readonly
>
</item>
<!--
<p>
{{
organization_code
}}
</p>
-->
</list-item>
</
template
>
<
script
>
export
default
{
name
:
'InvoiceInfo'
,
props
:
{
'orgCode'
:
{
type
:
String
,
default
:
''
,
},
'baseInfo'
:
{
type
:
Object
,
default
:
{},
},
'tabNum'
:
{
type
:
Number
,
default
:
0
,
},
},
data
()
{
return
{
invoice_kind_n
:
''
,
invoicList
:
[],
taxpayerList
:
[],
invoiceInfo
:
{
invoice_kind
:
''
,
taxpayer_type_n
:
''
,
taxpayer_type
:
''
,
invoice_title
:
''
,
organization_code
:
this
.
orgCode
,
invoice_bp_bank_account
:
''
,
invoice_bp_address_phone_num
:
''
,
},
}
},
watch
:
{
orgCode
()
{
this
.
invoiceInfo
.
organization_code
=
this
.
orgCode
},
'tabNum'
(
newVal
,
oulVal
)
{
if
(
newVal
===
2
)
{
Object
.
assign
(
this
.
invoiceInfo
,
this
.
baseInfo
)
this
.
invoice_kind_n
=
''
if
(
this
.
invoiceInfo
.
invoice_kind
==
0
)
{
this
.
invoice_kind_n
=
'增值税专用发票'
}
else
if
(
this
.
invoiceInfo
.
invoice_kind
==
2
)
{
this
.
invoice_kind_n
=
'增值税普通发票'
}
}
},
},
created
()
{
this
.
getInvoiceType
()
this
.
getTaxpayer
()
},
updated
()
{
this
.
sendList
()
},
methods
:
{
getInvoiceType
()
{
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'bp_invoice_kind_query'
let
param
=
{}
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
vm
.
invoicList
=
res
.
lists
.
map
(
item
=>
{
return
{
code
:
item
.
invoice_kind
,
code_name
:
item
.
invoice_kind_n
,
}
})
}
})
},
getTaxpayer
()
{
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'bp_taxpayer_type_query'
let
param
=
{}
vm
.
hlsPopup
.
showLoading
(
'请稍候'
)
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
vm
.
taxpayerList
=
res
.
lists
.
map
(
item
=>
{
return
{
code
:
item
.
taxpayer_type
,
code_name
:
item
.
taxpayer_type_n
,
}
})
}
})
},
selectInvoiceType
(
e
)
{
let
vm
=
this
vm
.
hlsPopup
.
selectList
({
list
:
vm
.
invoicList
,
code
:
'bp_type'
,
object
:
{},
returnItem
:
function
(
index
,
obj
)
{
vm
.
invoiceInfo
.
invoice_kind
=
obj
.
bp_type
vm
.
invoice_kind_n
=
obj
.
bp_type_n
},
})
},
selectTaxpayer
(
e
)
{
let
vm
=
this
vm
.
hlsPopup
.
selectList
({
list
:
vm
.
taxpayerList
,
code
:
'bp_type'
,
object
:
{},
returnItem
:
function
(
index
,
obj
)
{
vm
.
invoiceInfo
.
taxpayer_type
=
obj
.
bp_type
vm
.
invoiceInfo
.
taxpayer_type_n
=
obj
.
bp_type_n
},
})
},
sendList
()
{
this
.
$emit
(
'getinvoiceList'
,
this
.
invoiceInfo
)
},
},
}
</
script
>
<
style
scoped
>
input
::placeholder
{
color
:
#B4B4B5
;
}
.font-color
{
color
:
#656464
;
}
</
style
>
src/pages/personalCenter/personList.vue
deleted
100644 → 0
View file @
09ddfba5
<
template
>
<div
id=
"personCenter"
>
<div
class=
"head"
@
click=
"changePageHead"
>
头像
</div>
<button
@
click=
" user_bp_status === 'APPROVED'?'':changePageHead"
>
{{
user_bp_status
===
'APPROVED'
?
'解除绑定'
:
'用户绑定'
}}
</button>
</div>
</
template
>
<
script
>
export
default
{
data
()
{
return
{
user_bp_status
:
''
,
user_bp_class
:
''
,
bp_id
:
''
,
}
},
beforeRouteEnter
(
to
,
from
,
next
)
{
next
(
vm
=>
{
vm
.
userQuery
()
})
},
methods
:
{
changePageHead
()
{
let
vm
=
this
if
(
vm
.
bp_id
)
{
if
(
vm
.
user_bp_status
===
'NEW'
||
vm
.
user_bp_status
===
'REJECT'
)
{
if
(
vm
.
user_bp_class
===
'NP'
)
{
vm
.
$router
.
push
({
name
:
'NaturePersonWrite'
,
params
:
{
'bp_id'
:
this
.
bp_id
,
},
})
}
else
{
this
.
$router
.
push
({
name
:
' EnterpriseWrite'
,
params
:
{
'bp_id'
:
this
.
bp_id
,
},
})
}
}
else
if
(
vm
.
user_bp_status
===
'APPROVED'
)
{
if
(
vm
.
user_bp_class
===
'NP'
)
{
vm
.
$router
.
push
({
name
:
'NaturePersonReadOnly'
,
params
:
{
'bp_id'
:
this
.
bp_id
,
},
})
}
else
{
this
.
$router
.
push
({
name
:
'EnterpriseReadOnly'
,
params
:
{
'bp_id'
:
this
.
bp_id
,
},
})
}
}
else
if
(
vm
.
user_bp_status
===
'APPROVING'
)
{
this
.
hlsPopup
.
showLongCenter
(
'您的绑定申请还在流程中'
)
}
}
else
{
this
.
hlsPopup
.
showLongCenter
(
'请先进行用户绑定'
)
}
},
userQuery
()
{
let
vm
=
this
let
url
=
$config
.
basePath
+
'user_query'
let
param
=
{
'phone'
:
window
.
localStorage
.
getItem
(
'user_phone'
),
}
vm
.
$post
(
url
,
param
).
then
(
function
(
res
)
{
if
(
res
.
result
===
'S'
)
{
vm
.
user_bp_status
=
res
.
info
.
user_bp_status
vm
.
user_bp_class
=
res
.
info
.
user_bp_class
vm
.
bp_id
=
res
.
info
.
user_bp_id
}
})
},
},
}
</
script
>
<
style
lang=
"less"
scoped
>
#personCenter {
.head {
width: 100px;
height: 100px;
border: 1px solid #000;
}
button {
margin-top: 80%;
width: 150px;
height: 50px;
border: 1px solid #000;
}
}
</
style
>
src/pages/userBind/np/naturePerson.vue
View file @
5c7c4d26
...
...
@@ -33,10 +33,14 @@
<div
slot=
"name"
class=
"required"
>
业务经办人
</div>
<input
slot=
"content"
v-model=
"baseInfo.agent_username"
placeholder=
"请输入业务经办员工代码"
>
</item>
<item
v-if=
"(
!isPaople&&from)||(!isPaople
&&isSelected)"
>
<item
v-if=
"(
isLesons&&from)||(isLesons
&&isSelected)"
>
<div
slot=
"name"
class=
"required"
>
营业执照
</div>
<input
slot=
"content"
v-model=
"baseInfo.business_license_num"
placeholder=
"请输入营业执照号"
>
</item>
<item
v-if=
"(isMatter&&from)||(isMatter&&isSelected)"
>
<div
slot=
"name"
class=
"required"
>
办事处代码
</div>
<input
slot=
"content"
v-model=
"baseInfo.business_license_num"
placeholder=
"请输入办事处代码"
>
</item>
</list-item>
<div
class=
"userInfo"
>
客户信息
</div>
<div
class=
"upload-id-card"
>
...
...
@@ -69,6 +73,15 @@
class=
"auto"
>
</item>
<item>
<div
slot=
"name"
class=
"required"
>
户籍地址
</div>
<input
slot=
"content"
:readonly=
"isApproved"
v-model=
"baseInfo.address_on_resident_booklit"
placeholder=
"上传身份证自动填充"
>
</item>
<item>
<div
slot=
"name"
class=
"required"
>
手机号码
</div>
<input
slot=
"content"
v-model=
"baseInfo.cell_phone"
placeholder=
"请输入手机号码"
>
...
...
@@ -77,14 +90,6 @@
<div
slot=
"name"
class=
"required"
>
居住地址
</div>
<input
slot=
"content"
v-model=
"baseInfo.living_address"
placeholder=
"请输入居住地址"
>
</item>
<item>
<div
slot=
"name"
class=
"required"
>
户籍地址
</div>
<input
slot=
"content"
v-model=
"baseInfo.address_on_resident_booklit"
placeholder=
"请输入户籍地址"
>
</item>
<item
:showArrow=
"true"
>
<div
slot=
"name"
class=
"required"
>
学历
</div>
<input
...
...
@@ -211,7 +216,8 @@ export default {
list
:
{},
hasSP
:
false
,
isPaople
:
false
,
isEnter
:
false
,
isLesons
:
false
,
isMatter
:
false
,
showModalValue
:
false
,
isApproved
:
false
,
isSave
:
false
,
...
...
@@ -263,16 +269,19 @@ export default {
let
vm
=
this
if
(
vm
.
baseInfo
.
bp_type
===
'TENANT'
||
vm
.
baseInfo
.
bp_type
===
'GUTA'
)
{
vm
.
isPaople
=
true
vm
.
isEnter
=
false
// baseInfo.agent_username
// baseInfo.business_license_num
vm
.
isMatter
=
false
vm
.
isLesons
=
false
}
else
if
(
vm
.
baseInfo
.
bp_type
===
'AGENT'
||
vm
.
baseInfo
.
bp_type
===
'OFFICE'
||
vm
.
baseInfo
.
bp_type
===
'FACTORY'
)
{
vm
.
isEnter
=
true
vm
.
isPaople
=
false
vm
.
isMatter
=
false
vm
.
isLesons
=
true
}
else
if
(
vm
.
baseInfo
.
bp_type
===
'OFFICE'
)
{
vm
.
isMatter
=
true
vm
.
isPaople
=
false
vm
.
isLesons
=
false
}
},
tabNum
:
function
(
newVal
,
oldVal
)
{
...
...
src/pages/userBind/org/enterprise.vue
View file @
5c7c4d26
...
...
@@ -82,7 +82,9 @@
</item>
<item>
<div
slot=
"name"
class=
"font-color required"
>
注册地址
</div>
<input
slot=
"content"
v-model=
"baseInfo.registered_place"
placeholder=
"请输入注册地址"
>
<input
slot=
"content"
:readonly=
"isApproved"
v-model=
"baseInfo.registered_place"
class=
"auto"
placeholder=
"上传营业执照自动填充"
>
</item>
<item>
<div
slot=
"name"
class=
"font-color required"
>
经营地址
</div>
...
...
src/router/index.js
View file @
5c7c4d26
...
...
@@ -48,10 +48,6 @@ import ContractSigning from '../pages/contractSigning/contract-signing'
import
ContractDetail
from
'@/pages/ContractSigning/contract-detail'
import
ContractContent
from
'@/pages/ContractSigning/contract-content'
import
EntryInfo
from
'@/pages/ContractSigning/entry-info'
// 个人中心
import
PersonList
from
'@/pages/personalCenter/personList'
import
NaturePersonWrite
from
'@/pages/personalCenter/npReadWrite/naturePersonWrite'
import
EnterpriseWrite
from
'@/pages/personalCenter/orgWrite/enterpriseWrite'
Vue
.
use
(
Router
)
...
...
@@ -149,10 +145,6 @@ export default new Router({
{
path
:
'/contract-content'
,
component
:
ContractContent
,
name
:
'ContractContent'
,
meta
:
{
keepAlive
:
true
}},
{
path
:
'/entry-info'
,
component
:
EntryInfo
,
name
:
'EntryInfo'
,
meta
:
{
keepAlive
:
true
}},
// 个人中心
{
path
:
'/naturePerson-write'
,
component
:
NaturePersonWrite
,
name
:
'NaturePersonWrite'
,
meta
:
{
keepAlive
:
true
}},
{
path
:
'/ enterprise-write'
,
component
:
EnterpriseWrite
,
name
:
' EnterpriseWrite'
,
meta
:
{
keepAlive
:
true
}},
],
scrollBehavior
(
to
,
from
,
savedPosition
)
{
if
(
to
.
hash
)
{
...
...
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