Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
Y
yishuju-ui
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
何远江
yishuju-ui
Commits
0236dac3
Commit
0236dac3
authored
Mar 11, 2025
by
沈翠玲
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
客户信息
parent
c50538c7
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
213 additions
and
56 deletions
+213
-56
customer.js
src/api/customer.js
+6
-2
element.scss
src/styles/element.scss
+1
-1
index.js
src/utils/http/index.js
+4
-1
Credit.vue
src/views/infoGather/customerGather/components/Credit.vue
+8
-8
Creditcard.vue
...views/infoGather/customerGather/components/Creditcard.vue
+11
-12
Customer.vue
src/views/infoGather/customerGather/components/Customer.vue
+81
-12
cardAndCredit.vue
...ws/infoGather/customerGather/components/cardAndCredit.vue
+3
-1
cardPrint.vue
src/views/infoGather/customerGather/components/cardPrint.vue
+2
-0
creditPrint.vue
...iews/infoGather/customerGather/components/creditPrint.vue
+2
-0
customerPrint.vue
...ws/infoGather/customerGather/components/customerPrint.vue
+11
-5
idCardModel.vue
...iews/infoGather/customerGather/components/idCardModel.vue
+59
-0
dangerReportDetail.vue
...infoGather/dangerReport/components/dangerReportDetail.vue
+25
-14
No files found.
src/api/customer.js
View file @
0236dac3
...
@@ -9,5 +9,9 @@ export const saveCustomer = (data) => {
...
@@ -9,5 +9,9 @@ export const saveCustomer = (data) => {
};
};
// 根据id获取客户详情
// 根据id获取客户详情
export
const
getgetByIdCustomer
=
(
id
)
=>
{
export
const
getgetByIdCustomer
=
(
id
)
=>
{
return
request
.
get
(
'/customer/getById?id='
,
id
);
return
request
.
get
(
'/customer/getById?id='
+
id
);
};
};
\ No newline at end of file
// 根据身份证号码获取客户信息
export
const
getDebtInfo
=
(
id
)
=>
{
return
request
.
get
(
'/debt_info/getDebtInfo?idCard='
+
id
);
};
\ No newline at end of file
src/styles/element.scss
View file @
0236dac3
...
@@ -428,5 +428,5 @@ body {
...
@@ -428,5 +428,5 @@ body {
}
}
}
}
.el-radio
{
.el-radio
{
margin-right
:
8
px
!
important
;
margin-right
:
5
px
!
important
;
}
}
\ No newline at end of file
src/utils/http/index.js
View file @
0236dac3
...
@@ -4,8 +4,8 @@ import { getAppEnvConfig } from '../env';
...
@@ -4,8 +4,8 @@ import { getAppEnvConfig } from '../env';
import
{
AxiosCanceler
}
from
'./axiosCancel'
;
import
{
AxiosCanceler
}
from
'./axiosCancel'
;
import
{
stringify
}
from
'qs'
;
import
{
stringify
}
from
'qs'
;
import
router
from
'@/router'
;
import
router
from
'@/router'
;
import
{
LOGIN_URL
}
from
'@/config'
;
import
{
useUserStore
}
from
'@/stores/modules/user'
;
import
{
useUserStore
}
from
'@/stores/modules/user'
;
import
{
LOGIN_URL
}
from
'@/config'
;
import
{
saveAs
}
from
'file-saver'
;
import
{
saveAs
}
from
'file-saver'
;
const
envs
=
getAppEnvConfig
();
const
envs
=
getAppEnvConfig
();
const
defaultConfig
=
{
const
defaultConfig
=
{
...
@@ -68,7 +68,9 @@ class RequestClient {
...
@@ -68,7 +68,9 @@ class RequestClient {
hideLoading
()
hideLoading
()
const
{
data
,
config
}
=
response
;
const
{
data
,
config
}
=
response
;
axiosCanceler
.
removePending
(
config
);
axiosCanceler
.
removePending
(
config
);
const
userStore
=
useUserStore
();
if
(
data
.
code
===
500
&&
data
.
message
.
includes
(
'token'
))
{
if
(
data
.
code
===
500
&&
data
.
message
.
includes
(
'token'
))
{
userStore
.
setToken
(
''
);
router
.
replace
(
LOGIN_URL
);
router
.
replace
(
LOGIN_URL
);
ElMessage
({
ElMessage
({
message
:
'登录失效,请重新登录'
,
message
:
'登录失效,请重新登录'
,
...
@@ -79,6 +81,7 @@ class RequestClient {
...
@@ -79,6 +81,7 @@ class RequestClient {
}
}
// 登录失效
// 登录失效
if
(
data
.
code
===
404
)
{
if
(
data
.
code
===
404
)
{
userStore
.
setToken
(
''
);
router
.
replace
(
LOGIN_URL
);
router
.
replace
(
LOGIN_URL
);
ElMessage
({
ElMessage
({
message
:
'登录失效,请重新登录'
,
message
:
'登录失效,请重新登录'
,
...
...
src/views/infoGather/customerGather/components/Credit.vue
View file @
0236dac3
...
@@ -166,7 +166,7 @@
...
@@ -166,7 +166,7 @@
"repayPeriod"
:
0
,
"repayPeriod"
:
0
,
"lendingNum"
:
0
,
"lendingNum"
:
0
,
"beOverduePeriod"
:
0
,
"beOverduePeriod"
:
0
,
"hasSue"
:
""
,
"hasSue"
:
"
N
"
,
"repayDate"
:
""
,
"repayDate"
:
""
,
"bankCard"
:
""
,
"bankCard"
:
""
,
"payPassword"
:
""
,
"payPassword"
:
""
,
...
@@ -178,9 +178,9 @@
...
@@ -178,9 +178,9 @@
"liaisonPhone"
:
""
,
"liaisonPhone"
:
""
,
"bankPhone"
:
""
,
"bankPhone"
:
""
,
"collectionDesc"
:
""
,
"collectionDesc"
:
""
,
"hasNegotiateCase"
:
""
,
"hasNegotiateCase"
:
"
N
"
,
"liabilities"
:
""
,
"liabilities"
:
""
,
"hasContinuousRepay"
:
""
"hasContinuousRepay"
:
"
N
"
});
});
const
submitForm
=
async
()
=>
{
const
submitForm
=
async
()
=>
{
if
(
!
form
.
value
.
loanPlatform
&&
form
.
value
.
loanPlatform
!==
0
)
{
if
(
!
form
.
value
.
loanPlatform
&&
form
.
value
.
loanPlatform
!==
0
)
{
...
@@ -250,7 +250,7 @@
...
@@ -250,7 +250,7 @@
"repayPeriod"
:
0
,
"repayPeriod"
:
0
,
"lendingNum"
:
0
,
"lendingNum"
:
0
,
"beOverduePeriod"
:
0
,
"beOverduePeriod"
:
0
,
"hasSue"
:
""
,
"hasSue"
:
"
N
"
,
"repayDate"
:
""
,
"repayDate"
:
""
,
"bankCard"
:
""
,
"bankCard"
:
""
,
"payPassword"
:
""
,
"payPassword"
:
""
,
...
@@ -262,9 +262,9 @@
...
@@ -262,9 +262,9 @@
"liaisonPhone"
:
""
,
"liaisonPhone"
:
""
,
"bankPhone"
:
""
,
"bankPhone"
:
""
,
"collectionDesc"
:
""
,
"collectionDesc"
:
""
,
"hasNegotiateCase"
:
""
,
"hasNegotiateCase"
:
"
N
"
,
"liabilities"
:
""
,
"liabilities"
:
""
,
"hasContinuousRepay"
:
""
"hasContinuousRepay"
:
"
N
"
}
}
}
}
currentRow
.
value
=
row
currentRow
.
value
=
row
...
@@ -296,9 +296,9 @@ td {
...
@@ -296,9 +296,9 @@ td {
padding-left
:
5px
;
padding-left
:
5px
;
&
.label
{
&
.label
{
text-align
:
center
;
text-align
:
center
;
background
:
#f6f8ff
;
background
:
rgb
(
222
,
233
,
244
)
;
font-weight
:
bold
;
font-weight
:
bold
;
color
:
#
909399
;
color
:
#
000
;
width
:
175px
;
width
:
175px
;
}
}
}
}
...
...
src/views/infoGather/customerGather/components/Creditcard.vue
View file @
0236dac3
...
@@ -25,7 +25,7 @@
...
@@ -25,7 +25,7 @@
<td
colspan=
"2"
><el-input
class=
"line-input"
v-model=
"form.bank"
placeholder=
""
:disabled=
"!showEdit"
/></td>
<td
colspan=
"2"
><el-input
class=
"line-input"
v-model=
"form.bank"
placeholder=
""
:disabled=
"!showEdit"
/></td>
<td
class=
"label"
>
开户时间
</td>
<td
class=
"label"
>
开户时间
</td>
<td
colspan=
"2"
><el-date-picker
<td
colspan=
"2"
><el-date-picker
v-model=
"form.issuanceDate"
class=
"line-input"
style=
"width: 100%"
v-model=
"form.issuanceDate"
class=
"line-input"
:disabled=
"!showEdit"
:disabled=
"!showEdit"
format=
"YYYY-MM-DD"
format=
"YYYY-MM-DD"
value-format=
"YYYY-MM-DD"
value-format=
"YYYY-MM-DD"
...
@@ -178,15 +178,15 @@
...
@@ -178,15 +178,15 @@
"sixDevUsedQuota"
:
0
,
"sixDevUsedQuota"
:
0
,
"debt"
:
0
,
"debt"
:
0
,
"beOverduePeriod"
:
0
,
"beOverduePeriod"
:
0
,
"hasNegotiate"
:
""
,
"hasNegotiate"
:
"
N
"
,
"hasStages"
:
""
,
"hasStages"
:
"
N
"
,
"hasNegotiateCase"
:
""
,
"hasNegotiateCase"
:
"
N
"
,
"negotiateCase"
:
""
,
"negotiateCase"
:
""
,
"queryPassword"
:
""
,
"queryPassword"
:
""
,
"payPassword"
:
""
,
"payPassword"
:
""
,
"lastRepaymentDate"
:
""
,
"lastRepaymentDate"
:
""
,
"lastRepaymentAmount"
:
0
,
"lastRepaymentAmount"
:
0
,
"hasBigQuotaStages"
:
""
,
"hasBigQuotaStages"
:
"
N
"
,
"bigQuotaType"
:
""
,
"bigQuotaType"
:
""
,
"bigQuotaStagesAmount"
:
0
,
"bigQuotaStagesAmount"
:
0
,
"bigQuotaStagesDate"
:
""
,
"bigQuotaStagesDate"
:
""
,
...
@@ -277,15 +277,15 @@
...
@@ -277,15 +277,15 @@
"sixDevUsedQuota"
:
0
,
"sixDevUsedQuota"
:
0
,
"debt"
:
0
,
"debt"
:
0
,
"beOverduePeriod"
:
0
,
"beOverduePeriod"
:
0
,
"hasNegotiate"
:
""
,
"hasNegotiate"
:
"
N
"
,
"hasStages"
:
""
,
"hasStages"
:
"
N
"
,
"hasNegotiateCase"
:
""
,
"hasNegotiateCase"
:
"
N
"
,
"negotiateCase"
:
""
,
"negotiateCase"
:
""
,
"queryPassword"
:
""
,
"queryPassword"
:
""
,
"payPassword"
:
""
,
"payPassword"
:
""
,
"lastRepaymentDate"
:
""
,
"lastRepaymentDate"
:
""
,
"lastRepaymentAmount"
:
0
,
"lastRepaymentAmount"
:
0
,
"hasBigQuotaStages"
:
""
,
"hasBigQuotaStages"
:
"
N
"
,
"bigQuotaType"
:
""
,
"bigQuotaType"
:
""
,
"bigQuotaStagesAmount"
:
0
,
"bigQuotaStagesAmount"
:
0
,
"bigQuotaStagesDate"
:
""
,
"bigQuotaStagesDate"
:
""
,
...
@@ -322,10 +322,9 @@ td {
...
@@ -322,10 +322,9 @@ td {
padding-left
:
5px
;
padding-left
:
5px
;
&
.label
{
&
.label
{
text-align
:
center
;
text-align
:
center
;
background
:
#f6f8ff
;
background
:
rgb
(
222
,
233
,
244
);
font-weight
:
bold
;
width
:
175px
;
width
:
175px
;
color
:
#
909399
;
color
:
#
000
;
}
}
}
}
</
style
>
</
style
>
src/views/infoGather/customerGather/components/Customer.vue
View file @
0236dac3
...
@@ -39,13 +39,27 @@
...
@@ -39,13 +39,27 @@
</tr>
</tr>
<tr>
<tr>
<td
class=
"label"
>
身份证号
</td>
<td
class=
"label"
>
身份证号
</td>
<td
colspan=
"2"
><el-input
class=
"line-input"
v-model=
"form.idCard"
placeholder=
""
/></td>
<td
colspan=
"2"
>
<div
class=
"flex items-center"
>
<el-input
class=
"line-input"
v-model=
"form.idCard"
placeholder=
""
>
</el-input>
<el-button
:icon=
"Search"
@
click=
"handleQuery"
></el-button>
</div>
</td>
<td
class=
"label"
>
属相
</td>
<td
class=
"label"
>
属相
</td>
<td
colspan=
"2"
><el-input
class=
"line-input"
v-model=
"form.zodiac"
placeholder=
""
/></td>
<td
colspan=
"2"
><el-input
class=
"line-input"
v-model=
"form.zodiac"
placeholder=
""
/></td>
</tr>
</tr>
<tr>
<tr>
<td
class=
"label"
>
婚姻状况
</td>
<td
class=
"label"
>
婚姻状况
</td>
<td
colspan=
"2"
><el-input
class=
"line-input"
v-model=
"form.marriage"
placeholder=
""
/></td>
<td
colspan=
"2"
>
<el-select
v-model=
"form.marriage"
class=
"line-input"
placeholder=
""
>
<el-option
:label=
"item.label"
v-for=
"(item, index) in Marriage"
:key=
"index"
:value=
"item.value"
/>
</el-select>
</td>
<td
class=
"label"
>
电话
</td>
<td
class=
"label"
>
电话
</td>
<td
colspan=
"2"
><el-input
class=
"line-input"
v-model=
"form.phone"
placeholder=
""
/></td>
<td
colspan=
"2"
><el-input
class=
"line-input"
v-model=
"form.phone"
placeholder=
""
/></td>
</tr>
</tr>
...
@@ -176,7 +190,7 @@
...
@@ -176,7 +190,7 @@
</tr>
</tr>
</tbody>
</tbody>
</table>
</table>
<p
class=
"text-center my-3 py-1"
style=
"background:
rgb(209,215,236)
;"
>
信用卡网贷状况统计*
<span
class=
" text-xs text-red-600"
>
(涉及金额部分单位为:元)
</span></p>
<p
class=
"text-center my-3 py-1"
style=
"background:
#bdd6ec
;"
>
信用卡网贷状况统计*
<span
class=
" text-xs text-red-600"
>
(涉及金额部分单位为:元)
</span></p>
<div
class=
"creditcard"
>
<div
class=
"creditcard"
>
<!-- <ProTable
<!-- <ProTable
:config="cardConfig"
:config="cardConfig"
...
@@ -285,17 +299,20 @@
...
@@ -285,17 +299,20 @@
</div>
</div>
</div>
</div>
</div>
</div>
<idCardModel
ref=
"idCardModelRef"
/>
</div>
</div>
</template>
</template>
<
script
setup
name=
"Customer"
lang=
"jsx"
>
<
script
setup
name=
"Customer"
lang=
"jsx"
>
import
{
Search
}
from
'@element-plus/icons-vue'
;
import
{
useTabsStore
}
from
'@/stores/modules/tabs'
;
import
{
useTabsStore
}
from
'@/stores/modules/tabs'
;
import
{
ElButton
,
ElTag
,
ElMessage
}
from
'element-plus'
;
import
{
ElButton
,
ElTag
,
ElMessage
}
from
'element-plus'
;
import
Credit
from
'./Credit.vue'
;
import
Credit
from
'./Credit.vue'
;
import
{
saveCustomer
,
getgetByIdCustomer
}
from
'@/api/customer'
;
import
{
saveCustomer
,
getgetByIdCustomer
,
getDebtInfo
}
from
'@/api/customer'
;
import
{
useRoute
}
from
'vue-router'
;
import
{
useRoute
}
from
'vue-router'
;
import
{
useRouter
}
from
'vue-router'
;
import
{
useRouter
}
from
'vue-router'
;
import
{
useUserStore
}
from
'@/stores/modules/user'
;
import
{
useUserStore
}
from
'@/stores/modules/user'
;
import
Creditcard
from
'./Creditcard.vue'
;
import
Creditcard
from
'./Creditcard.vue'
;
import
idCardModel
from
'./idCardModel.vue'
;
import
customerPrint
from
'./customerPrint.vue'
;
import
customerPrint
from
'./customerPrint.vue'
;
import
cardAndCredit
from
'./cardAndCredit.vue'
;
import
cardAndCredit
from
'./cardAndCredit.vue'
;
import
creditPrint
from
'./creditPrint.vue'
;
import
creditPrint
from
'./creditPrint.vue'
;
...
@@ -303,7 +320,8 @@
...
@@ -303,7 +320,8 @@
import
{
ref
,
computed
,
reactive
,
onBeforeMount
}
from
'vue'
;
import
{
ref
,
computed
,
reactive
,
onBeforeMount
}
from
'vue'
;
import
{
useDict
}
from
'@/hooks/useDict'
;
import
{
useDict
}
from
'@/hooks/useDict'
;
const
userStore
=
useUserStore
();
const
userStore
=
useUserStore
();
const
{
LoanStatus
}
=
useDict
(
"LoanStatus"
);
const
{
LoanStatus
,
Marriage
}
=
useDict
(
"LoanStatus"
,
"Marriage"
);
const
idCardModelRef
=
ref
()
const
printContent
=
ref
({
const
printContent
=
ref
({
id
:
'customerStatic'
,
id
:
'customerStatic'
,
// preview: true, // 预览工具是否启用
// preview: true, // 预览工具是否启用
...
@@ -401,6 +419,24 @@ const pushCredit = (row, index) => {
...
@@ -401,6 +419,24 @@ const pushCredit = (row, index) => {
CreditRef
.
value
.
openModal
(
row
,
index
CreditRef
.
value
.
openModal
(
row
,
index
);
);
};
};
const
handleQuery
=
()
=>
{
// idCardModelRef.value.openModal()
if
(
!
form
.
value
.
idCard
)
{
ElMessage
.
warning
({
message
:
'请填写身份证号'
,
plain
:
true
,
});
return
}
getDebtInfo
(
form
.
value
.
idCard
).
then
(
res
=>
{
if
(
res
.
result
)
{
form
.
value
=
res
.
result
cardConfig
.
data
=
res
.
result
.
creditCard
creditArr
.
value
=
res
.
result
.
lending
}
})
}
const
changeCredit
=
(
row
,
index
,
del
)
=>
{
const
changeCredit
=
(
row
,
index
,
del
)
=>
{
if
(
del
)
{
if
(
del
)
{
const
arr
=
JSON
.
parse
(
JSON
.
stringify
(
creditArr
.
value
))
const
arr
=
JSON
.
parse
(
JSON
.
stringify
(
creditArr
.
value
))
...
@@ -467,6 +503,7 @@ onBeforeMount(async () => {
...
@@ -467,6 +503,7 @@ onBeforeMount(async () => {
}
}
})
})
const
cardConfig
=
reactive
({
const
cardConfig
=
reactive
({
align
:
'center'
,
minHeight
:
250
,
minHeight
:
250
,
rowConfig
:
{
rowConfig
:
{
height
:
40
,
height
:
40
,
...
@@ -554,7 +591,24 @@ const cardConfig = reactive({
...
@@ -554,7 +591,24 @@ const cardConfig = reactive({
},
},
},
},
showOverflow
:
'tooltip'
,
showOverflow
:
'tooltip'
,
}
},
{
field
:
'operation'
,
title
:
'操作'
,
width
:
100
,
fixed
:
'right'
,
slots
:
{
default
({
row
,
rowIndex
})
{
return
(
<>
<
ElButton
type
=
"primary"
link
onClick
=
{()
=>
changeCreditcard
(
row
,
rowIndex
,
true
)}
>
删除
<
/ElButton
>
<
/
>
);
},
},
},
],
],
data
:
[],
data
:
[],
toolbarConfig
:
{
enabled
:
false
},
toolbarConfig
:
{
enabled
:
false
},
...
@@ -625,6 +679,23 @@ const cardConfig = reactive({
...
@@ -625,6 +679,23 @@ const cardConfig = reactive({
);
);
},
},
},
},
},
{
field
:
'operation'
,
title
:
'操作'
,
width
:
100
,
fixed
:
'right'
,
slots
:
{
default
({
row
,
rowIndex
})
{
return
(
<>
<
ElButton
type
=
"primary"
link
onClick
=
{()
=>
changeCredit
(
row
,
rowIndex
,
true
)}
>
删除
<
/ElButton
>
<
/
>
);
},
},
}
}
],
],
toolbarConfig
:
{
enabled
:
false
},
toolbarConfig
:
{
enabled
:
false
},
...
@@ -646,9 +717,8 @@ td {
...
@@ -646,9 +717,8 @@ td {
padding-left
:
5px
;
padding-left
:
5px
;
&
.label
{
&
.label
{
text-align
:
center
;
text-align
:
center
;
background
:
#f6f8ff
;
background
:
rgb
(
222
,
233
,
244
);
font-weight
:
bold
;
color
:
#000
;
color
:
#909399
;
}
}
}
}
.creditcard
{
.creditcard
{
...
@@ -667,9 +737,8 @@ td {
...
@@ -667,9 +737,8 @@ td {
@media
print
{
@media
print
{
.label
{
.label
{
text-align
:
center
;
text-align
:
center
;
background
:
#f6f8ff
;
background
:
rgb
(
222
,
233
,
244
);
font-weight
:
bold
;
color
:
#000
;
color
:
#909399
;
}
}
}
}
</
style
>
</
style
>
\ No newline at end of file
src/views/infoGather/customerGather/components/cardAndCredit.vue
View file @
0236dac3
<
template
>
<
template
>
<tr>
<tr>
<td
colspan=
"10"
style=
"background: #bdd6ec;color: #db0039;text-align:left"
>
信用卡网贷状况统计*(涉及金额部分单位为:元)
</td>
<td
colspan=
"10"
style=
"background: #bdd6ec;color: #db0039;text-align:left
;-webkit-print-color-adjust: exact;
"
>
信用卡网贷状况统计*(涉及金额部分单位为:元)
</td>
</tr>
</tr>
<tr>
<tr>
<td>
信用卡数量
</td>
<td>
信用卡数量
</td>
...
@@ -106,6 +106,8 @@ td {
...
@@ -106,6 +106,8 @@ td {
background
:
#fff
;
background
:
#fff
;
width
:
150px
;
width
:
150px
;
line-height
:
11px
;
line-height
:
11px
;
word-wrap
:break-word
;
word-break
:break-all
;
height
:
40px
;
height
:
40px
;
font-size
:
14px
;
font-size
:
14px
;
padding-left
:
5px
;
padding-left
:
5px
;
...
...
src/views/infoGather/customerGather/components/cardPrint.vue
View file @
0236dac3
...
@@ -116,6 +116,8 @@ td {
...
@@ -116,6 +116,8 @@ td {
font-size
:
14px
;
font-size
:
14px
;
padding-left
:
5px
;
padding-left
:
5px
;
color
:
#000
;
color
:
#000
;
word-wrap
:break-word
;
word-break
:break-all
;
-webkit-print-color-adjust
:
exact
;
-webkit-print-color-adjust
:
exact
;
text-align
:
center
;
text-align
:
center
;
&
.label
{
&
.label
{
...
...
src/views/infoGather/customerGather/components/creditPrint.vue
View file @
0236dac3
...
@@ -115,6 +115,8 @@ td {
...
@@ -115,6 +115,8 @@ td {
font-size
:
14px
;
font-size
:
14px
;
padding-left
:
5px
;
padding-left
:
5px
;
color
:
#000
;
color
:
#000
;
word-wrap
:break-word
;
word-break
:break-all
;
-webkit-print-color-adjust
:
exact
;
-webkit-print-color-adjust
:
exact
;
text-align
:
center
;
text-align
:
center
;
&
.label
{
&
.label
{
...
...
src/views/infoGather/customerGather/components/customerPrint.vue
View file @
0236dac3
...
@@ -30,7 +30,9 @@
...
@@ -30,7 +30,9 @@
<td>
{{
props
.
data
.
age
}}
</td>
<td>
{{
props
.
data
.
age
}}
</td>
<td
colspan=
"2"
>
{{
props
.
data
.
idCard
}}
</td>
<td
colspan=
"2"
>
{{
props
.
data
.
idCard
}}
</td>
<td>
{{
props
.
data
.
zodiac
}}
</td>
<td>
{{
props
.
data
.
zodiac
}}
</td>
<td
colspan=
"2"
>
{{
props
.
data
.
marriage
}}
</td>
<td
colspan=
"2"
>
{{
props
.
data
.
marriage
?
Marriage
?.
find
((
v
)
=>
v
.
value
===
props
.
data
.
marriage
)?.
label
:
''
}}
</td>
<td
colspan=
"2"
>
{{
props
.
data
.
phone
}}
</td>
<td
colspan=
"2"
>
{{
props
.
data
.
phone
}}
</td>
</tr>
</tr>
<tr>
<tr>
...
@@ -50,8 +52,8 @@
...
@@ -50,8 +52,8 @@
<td
colspan=
"2"
>
{{
props
.
data
.
reserveAddress
}}
</td>
<td
colspan=
"2"
>
{{
props
.
data
.
reserveAddress
}}
</td>
</tr>
</tr>
<tr>
<tr>
<td
rowspan=
"2"
class=
"label"
colspan=
"2"
>
起诉案件
</td>
<td
rowspan=
"2"
class=
"label"
colspan=
"2"
>
是否有
起诉案件
</td>
<td
rowspan=
"2"
class=
"label"
>
案件
类型
</td>
<td
rowspan=
"2"
class=
"label"
>
案件
描述
</td>
<td
rowspan=
"2"
class=
"label"
>
打卡收入
</td>
<td
rowspan=
"2"
class=
"label"
>
打卡收入
</td>
<td
rowspan=
"2"
class=
"label"
>
打卡银行
</td>
<td
rowspan=
"2"
class=
"label"
>
打卡银行
</td>
<td
colspan=
"3"
class=
"label"
>
车
</td>
<td
colspan=
"3"
class=
"label"
>
车
</td>
...
@@ -64,7 +66,7 @@
...
@@ -64,7 +66,7 @@
<td
class=
"label"
>
市值
</td>
<td
class=
"label"
>
市值
</td>
</tr>
</tr>
<tr>
<tr>
<td
colspan=
"2"
>
{{
props
.
data
.
sueCaseId
}}
</td>
<td
colspan=
"2"
>
{{
props
.
data
.
sueCaseId
==
'Y'
?
'是'
:
'否'
}}
</td>
<td>
{{
props
.
data
.
caseType
}}
</td>
<td>
{{
props
.
data
.
caseType
}}
</td>
<td>
{{
props
.
data
.
checkInIncome
}}
</td>
<td>
{{
props
.
data
.
checkInIncome
}}
</td>
<td>
{{
props
.
data
.
checkInBank
}}
</td>
<td>
{{
props
.
data
.
checkInBank
}}
</td>
...
@@ -91,6 +93,8 @@
...
@@ -91,6 +93,8 @@
</tr>
</tr>
</
template
>
</
template
>
<
script
setup
lang=
"jsx"
name=
"caseDetail"
>
<
script
setup
lang=
"jsx"
name=
"caseDetail"
>
import
{
useDict
}
from
'@/hooks/useDict'
;
const
{
Marriage
}
=
useDict
(
"Marriage"
);
const
props
=
defineProps
({
const
props
=
defineProps
({
data
:
Object
data
:
Object
})
})
...
@@ -107,10 +111,12 @@ td {
...
@@ -107,10 +111,12 @@ td {
line-height
:
11px
;
line-height
:
11px
;
height
:
40px
;
height
:
40px
;
font-size
:
14px
;
font-size
:
14px
;
text-align
:
center
;
padding-left
:
5px
;
padding-left
:
5px
;
word-wrap
:break-word
;
word-break
:break-all
;
color
:
#000
;
color
:
#000
;
&
.label
{
&
.label
{
text-align
:
center
;
-webkit-print-color-adjust
:
exact
;
-webkit-print-color-adjust
:
exact
;
background-color
:
rgb
(
222
,
233
,
244
);
background-color
:
rgb
(
222
,
233
,
244
);
font-weight
:
400
!
important
;
font-weight
:
400
!
important
;
...
...
src/views/infoGather/customerGather/components/idCardModel.vue
0 → 100644
View file @
0236dac3
<
template
>
<vxe-modal
resize
v-model=
"showModal"
title=
"选择身份证"
@
hide=
"onHide"
height=
"582"
width=
"1003"
show-footer
esc-closable
>
<ProTable
:config=
"config"
ref=
"ProTableRef"
:data=
"table"
:showPagination=
"false"
:showToolBar=
"false"
>
</ProTable>
<template
#
footer
>
</
template
>
</vxe-modal>
</template>
<
script
setup
>
import
{
computed
}
from
'vue'
;
import
{
reactive
,
ref
}
from
'vue'
;
const
showModal
=
ref
(
false
);
const
table
=
ref
(
undefined
);
const
ProTableRef
=
ref
();
const
config
=
reactive
({
exportConfig
:
{},
toolbarConfig
:
{
enabled
:
false
},
columns
:
[
{
field
:
'row'
,
title
:
'行'
},
{
field
:
'value'
,
title
:
'错误值'
,
},
{
field
:
'message'
,
title
:
'错误描述'
,
},
],
});
const
onHide
=
()
=>
{
table
.
value
=
null
;
};
const
openModal
=
()
=>
{
showModal
.
value
=
true
;
};
defineExpose
({
openModal
,
});
</
script
>
<
style
lang=
"scss"
scoped
></
style
>
\ No newline at end of file
src/views/infoGather/dangerReport/components/dangerReportDetail.vue
View file @
0236dac3
...
@@ -164,18 +164,18 @@
...
@@ -164,18 +164,18 @@
</el-radio-group></td>
</el-radio-group></td>
<td
colspan=
"3"
><el-input
v-model=
"form.roleDesc"
placeholder=
""
type=
"textarea"
/></td>
<td
colspan=
"3"
><el-input
v-model=
"form.roleDesc"
placeholder=
""
type=
"textarea"
/></td>
</tr>
</tr>
<tr>
<tr
class=
"yellow"
>
<td
class=
"text-center"
>
10
</td>
<td
class=
"text-center"
>
10
</td>
<td
colspan=
"10"
class=
"text-center"
>
信用卡*
<span
class=
" text-red-500"
>
(涉及金额部分单位为:元)
</span></td>
<td
colspan=
"10"
class=
"text-center"
>
信用卡*
<span
class=
" text-red-500"
>
(涉及金额部分单位为:元)
</span></td>
</tr>
</tr>
<tr>
<tr
class=
"yellow"
>
<td
class=
"text-center"
>
信用卡数量
</td>
<td
class=
"text-center"
>
信用卡数量
</td>
<td
colspan=
"10"
><div
class=
"flex items-center"
>
<td
colspan=
"10"
><div
class=
"flex items-center"
>
<el-input
v-model=
"form.roleDesc"
placeholder=
""
style=
"width: 200px"
/>
<el-input
v-model=
"form.roleDesc"
placeholder=
""
style=
"width: 200px"
/>
张
张
</div></td>
</div></td>
</tr>
</tr>
<tr>
<tr
class=
"yellow"
>
<td
class=
"text-center"
>
序号
</td>
<td
class=
"text-center"
>
序号
</td>
<td
class=
"text-center"
>
发卡银行
</td>
<td
class=
"text-center"
>
发卡银行
</td>
<td
class=
"text-center"
>
当前欠款金额
</td>
<td
class=
"text-center"
>
当前欠款金额
</td>
...
@@ -185,7 +185,7 @@
...
@@ -185,7 +185,7 @@
<td
class=
"text-center"
>
风控审核
</td>
<td
class=
"text-center"
>
风控审核
</td>
<td
colspan=
"2"
class=
"text-center"
>
风控审核意见
</td>
<td
colspan=
"2"
class=
"text-center"
>
风控审核意见
</td>
</tr>
</tr>
<tr>
<tr
class=
"yellow"
>
<td
class=
"text-center"
>
1
</td>
<td
class=
"text-center"
>
1
</td>
<td
class=
"text-center"
>
中行
</td>
<td
class=
"text-center"
>
中行
</td>
<td
class=
"text-center"
></td>
<td
class=
"text-center"
></td>
...
@@ -198,20 +198,20 @@
...
@@ -198,20 +198,20 @@
</el-radio-group></td>
</el-radio-group></td>
<td
class=
"text-center"
colspan=
"2"
><el-input
v-model=
"form.roleDesc"
placeholder=
""
type=
"textarea"
/></td>
<td
class=
"text-center"
colspan=
"2"
><el-input
v-model=
"form.roleDesc"
placeholder=
""
type=
"textarea"
/></td>
</tr>
</tr>
<tr>
<tr
class=
"yellow"
>
<td>
信用卡欠款合计
</td>
<td>
信用卡欠款合计
</td>
<td
colspan=
"10"
><el-input
v-model=
"form.roleDesc"
placeholder=
""
style=
"width: 200px"
/></td>
<td
colspan=
"10"
><el-input
v-model=
"form.roleDesc"
placeholder=
""
style=
"width: 200px"
/></td>
</tr>
</tr>
<tr>
<tr
class=
"green"
>
<td
class=
"text-center"
>
11
</td>
<td
class=
"text-center"
>
11
</td>
<td
colspan=
"10"
class=
"text-center"
>
网贷*
<span
class=
" text-red-500"
>
(涉及金额部分单位为:元)
</span></td>
<td
colspan=
"10"
class=
"text-center"
>
网贷*
<span
class=
" text-red-500"
>
(涉及金额部分单位为:元)
</span></td>
</tr>
</tr>
<tr>
<tr
class=
"green"
>
<td
class=
"text-center"
>
信用贷、网贷机构数量
</td>
<td
class=
"text-center"
>
信用贷、网贷机构数量
</td>
<td
colspan=
"10"
><div
class=
"flex items-center"
><el-input
v-model=
"form.roleDesc"
placeholder=
""
style=
"width: 200px"
/>
<td
colspan=
"10"
><div
class=
"flex items-center"
><el-input
v-model=
"form.roleDesc"
placeholder=
""
style=
"width: 200px"
/>
家
</div></td>
家
</div></td>
</tr>
</tr>
<tr>
<tr
class=
"green"
>
<td
class=
"text-center"
>
序号
</td>
<td
class=
"text-center"
>
序号
</td>
<td
class=
"text-center"
>
贷款机构
</td>
<td
class=
"text-center"
>
贷款机构
</td>
<td
class=
"text-center"
>
审批额度
</td>
<td
class=
"text-center"
>
审批额度
</td>
...
@@ -224,7 +224,7 @@
...
@@ -224,7 +224,7 @@
<td
class=
"text-center"
>
风控审核
</td>
<td
class=
"text-center"
>
风控审核
</td>
<td
class=
"text-center"
>
风控审核意见
</td>
<td
class=
"text-center"
>
风控审核意见
</td>
</tr>
</tr>
<tr>
<tr
class=
"green"
>
<td
class=
"text-center"
></td>
<td
class=
"text-center"
></td>
<td
class=
"text-center"
></td>
<td
class=
"text-center"
></td>
<td
class=
"text-center"
></td>
<td
class=
"text-center"
></td>
...
@@ -240,7 +240,7 @@
...
@@ -240,7 +240,7 @@
</el-radio-group></td>
</el-radio-group></td>
<td><el-input
v-model=
"form.roleDesc"
placeholder=
""
type=
"textarea"
/></td>
<td><el-input
v-model=
"form.roleDesc"
placeholder=
""
type=
"textarea"
/></td>
</tr>
</tr>
<tr>
<tr
class=
"green"
>
<td>
信用贷、网贷欠款合计
</td>
<td>
信用贷、网贷欠款合计
</td>
<td
colspan=
"10"
><el-input
v-model=
"form.roleDesc"
placeholder=
""
style=
"width: 200px"
/></td>
<td
colspan=
"10"
><el-input
v-model=
"form.roleDesc"
placeholder=
""
style=
"width: 200px"
/></td>
</tr>
</tr>
...
@@ -464,15 +464,26 @@ td {
...
@@ -464,15 +464,26 @@ td {
padding-left
:
5px
;
padding-left
:
5px
;
&
.label
{
&
.label
{
text-align
:
center
;
text-align
:
center
;
background
:
#f6f8ff
;
background
:
rgb
(
222
,
233
,
244
);
font-weight
:
bold
;
color
:
#000
;
color
:
#909399
;
}
}
&
.header
{
&
.header
{
background
:
rgb
(
209
,
215
,
236
)
;
background
:
#bdd6ec
;
text-align
:
center
;
text-align
:
center
;
}
}
}
}
tr
{
&
.yellow
{
td
{
background
:
#fff3cc
7d
;
}
}
&
.green
{
td
{
background
:
#e1f1d9
85
;
}
}
}
.creditcard
{
.creditcard
{
:deep
(
.card
)
{
:deep
(
.card
)
{
// background: #fff3cc;
// background: #fff3cc;
...
...
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