Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
J
jinfa-platform
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
shenshaokai
jinfa-platform
Commits
dc9cb88f
Commit
dc9cb88f
authored
Oct 27, 2020
by
XieZhiXiong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
开发中
parent
e9318ba9
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
290 additions
and
201 deletions
+290
-201
index.tsx
...e/creditApplication/components/OuterCirculation/index.tsx
+11
-7
index.tsx
...editApplication/components/QuotaApplicationInfo/index.tsx
+40
-31
index.ts
...plication/components/QuotaApplicationInfo/schema/index.ts
+5
-1
detail.tsx
.../payandSettle/creditApplication/quotaFormQuery/detail.tsx
+147
-94
index.tsx
...s/payandSettle/creditApplication/quotaFormQuery/index.tsx
+1
-1
index.tsx
...ages/payandSettle/creditApplication/quotaMenage/index.tsx
+29
-3
index.ts
...ayandSettle/creditApplication/quotaMenage/schema/index.ts
+2
-48
index.tsx
...Application/quotaPrSubmit/components/DetailInfo/index.tsx
+31
-13
index.tsx
...es/payandSettle/creditApplication/quotaPrSubmit/index.tsx
+3
-3
index.tsx
src/utils/index.tsx
+21
-0
No files found.
src/pages/payandSettle/creditApplication/components/OuterCirculation/index.tsx
View file @
dc9cb88f
...
@@ -2,11 +2,11 @@
...
@@ -2,11 +2,11 @@
* @Author: XieZhiXiong
* @Author: XieZhiXiong
* @Date: 2020-09-29 10:47:07
* @Date: 2020-09-29 10:47:07
* @LastEditors: XieZhiXiong
* @LastEditors: XieZhiXiong
* @LastEditTime: 2020-10-2
6 17:11:5
4
* @LastEditTime: 2020-10-2
7 10:33:2
4
* @Description: 外部流转组件
* @Description: 外部流转组件
*/
*/
import
React
from
'react'
;
import
React
from
'react'
;
import
{
Steps
}
from
'antd'
;
import
{
Steps
,
Empty
}
from
'antd'
;
import
MellowCard
from
'@/components/MellowCard'
;
import
MellowCard
from
'@/components/MellowCard'
;
import
styles
from
'./index.less'
;
import
styles
from
'./index.less'
;
...
@@ -34,11 +34,15 @@ const OuterCirculation: React.FC<OuterCirculation> = ({
...
@@ -34,11 +34,15 @@ const OuterCirculation: React.FC<OuterCirculation> = ({
marginBottom
:
24
,
marginBottom
:
24
,
}
}
}
}
>
>
<
Steps
style=
{
{
marginTop
:
30
}
}
progressDot
current=
{
current
}
>
{
(
steps
&&
steps
.
length
>
0
)
?
(
{
steps
.
map
((
item
,
index
)
=>
(
<
Steps
style=
{
{
marginTop
:
30
}
}
progressDot
current=
{
current
}
>
<
Steps
.
Step
key=
{
index
}
title=
{
item
.
title
}
description=
{
item
.
description
}
/>
{
steps
.
map
((
item
,
index
)
=>
(
))
}
<
Steps
.
Step
key=
{
index
}
title=
{
item
.
title
}
description=
{
item
.
description
}
/>
</
Steps
>
))
}
</
Steps
>
)
:
(
<
Empty
image=
{
Empty
.
PRESENTED_IMAGE_SIMPLE
}
/>
)
}
</
MellowCard
>
</
MellowCard
>
);
);
};
};
...
...
src/pages/payandSettle/creditApplication/components/QuotaApplicationInfo/index.tsx
View file @
dc9cb88f
...
@@ -46,21 +46,28 @@ interface QuotaApplicationInfo {
...
@@ -46,21 +46,28 @@ interface QuotaApplicationInfo {
repayPeriod
:
number
,
repayPeriod
:
number
,
// 审批时间
// 审批时间
verifyTime
:
string
,
verifyTime
:
string
,
},
}
|
null
,
};
};
const
QuotaApplicationInfo
:
React
.
FC
<
QuotaApplicationInfo
>
=
({
const
QuotaApplicationInfo
:
React
.
FC
<
QuotaApplicationInfo
>
=
({
editable
=
false
,
editable
=
false
,
onSubmit
,
onSubmit
,
quotaInfo
=
{},
quotaInfo
=
{},
verify
=
{}
,
verify
,
})
=>
{
})
=>
{
const
[
modalVisible
,
setModalVisible
]
=
useState
(
false
);
const
[
modalVisible
,
setModalVisible
]
=
useState
(
false
);
const
handleSubmit
=
values
=>
{
const
handleSubmit
=
values
=>
{
if
(
onSubmit
)
{
if
(
onSubmit
)
{
const
{
billDay
,
repayPeriod
,
...
rest
}
=
values
;
const
{
applyQuota
,
billDay
,
repayPeriod
,
quotaSlide
,
...
rest
}
=
values
;
onSubmit
({
onSubmit
({
applyQuota
:
+
applyQuota
,
billDay
:
+
billDay
,
billDay
:
+
billDay
,
repayPeriod
:
+
repayPeriod
,
repayPeriod
:
+
repayPeriod
,
...
rest
,
...
rest
,
...
@@ -114,7 +121,7 @@ const QuotaApplicationInfo: React.FC<QuotaApplicationInfo> = ({
...
@@ -114,7 +121,7 @@ const QuotaApplicationInfo: React.FC<QuotaApplicationInfo> = ({
marginBottom
:
24
marginBottom
:
24
}
}
}
}
>
>
<
Col
span=
{
1
4
}
>
<
Col
span=
{
verify
?
14
:
2
4
}
>
<
MellowCard
<
MellowCard
title=
"授信申请信息"
title=
"授信申请信息"
extra=
{
(
extra=
{
(
...
@@ -210,36 +217,38 @@ const QuotaApplicationInfo: React.FC<QuotaApplicationInfo> = ({
...
@@ -210,36 +217,38 @@ const QuotaApplicationInfo: React.FC<QuotaApplicationInfo> = ({
</
MellowCard
>
</
MellowCard
>
</
Col
>
</
Col
>
<
Col
span=
{
10
}
>
{
verify
?
(
<
MellowCard
<
Col
span=
{
10
}
>
title=
{
(
<
MellowCard
<
div
style=
{
{
color
:
'#fff'
}
}
>
title=
{
(
授信审批信息
<
div
style=
{
{
color
:
'#fff'
}
}
>
</
div
>
授信审批信息
)
}
</
div
>
style=
{
{
)
}
background
:
'#4279DF'
,
style=
{
{
}
}
background
:
'#4279DF'
,
fullHeight
}
}
>
fullHeight
<
div
className=
{
styles
.
approval
}
>
>
<
div
className=
{
styles
[
'approval-amountWrap'
]
}
>
<
div
className=
{
styles
.
approval
}
>
<
div
className=
{
styles
[
'approval-amountWrap'
]
}
>
<
Descriptions
column=
{
1
}
>
<
Descriptions
.
Item
label=
"审批额度(元)"
>
<
div
className=
{
styles
[
'approval-amount'
]
}
>
{
verify
.
quota
}
</
div
>
</
Descriptions
.
Item
>
</
Descriptions
>
</
div
>
<
Descriptions
column=
{
1
}
>
<
Descriptions
column=
{
1
}
>
<
Descriptions
.
Item
label=
"审批额度(元)"
>
<
Descriptions
.
Item
label=
"审批账单日期"
>
{
verify
.
billDay
}
日
</
Descriptions
.
Item
>
<
div
className=
{
styles
[
'approval-amount'
]
}
>
<
Descriptions
.
Item
label=
"审批还款周期"
>
{
verify
.
repayPeriod
}
天
</
Descriptions
.
Item
>
{
verify
.
quota
}
<
Descriptions
.
Item
label=
"审批时间"
>
{
verify
.
verifyTime
}
</
Descriptions
.
Item
>
</
div
>
</
Descriptions
.
Item
>
</
Descriptions
>
</
Descriptions
>
</
div
>
</
div
>
<
Descriptions
column=
{
1
}
>
</
MellowCard
>
<
Descriptions
.
Item
label=
"审批账单日期"
>
{
verify
.
billDay
}
日
</
Descriptions
.
Item
>
</
Col
>
<
Descriptions
.
Item
label=
"审批还款周期"
>
{
verify
.
repayPeriod
}
天
</
Descriptions
.
Item
>
)
:
null
}
<
Descriptions
.
Item
label=
"审批时间"
>
{
verify
.
verifyTime
}
</
Descriptions
.
Item
>
</
Descriptions
>
</
div
>
</
MellowCard
>
</
Col
>
</
Row
>
</
Row
>
<
Modal
<
Modal
...
...
src/pages/payandSettle/creditApplication/components/QuotaApplicationInfo/schema/index.ts
View file @
dc9cb88f
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
* @Author: XieZhiXiong
* @Author: XieZhiXiong
* @Date: 2020-09-29 15:51:31
* @Date: 2020-09-29 15:51:31
* @LastEditors: XieZhiXiong
* @LastEditors: XieZhiXiong
* @LastEditTime: 2020-10-2
6 18:46:02
* @LastEditTime: 2020-10-2
7 09:52:57
* @Description:
* @Description:
*/
*/
import
{
ISchema
}
from
'@formily/antd'
;
import
{
ISchema
}
from
'@formily/antd'
;
...
@@ -32,6 +32,10 @@ export const editModalSchema: ISchema = {
...
@@ -32,6 +32,10 @@ export const editModalSchema: ISchema = {
required
:
true
,
required
:
true
,
message
:
'请填写申请调整额度'
,
message
:
'请填写申请调整额度'
,
},
},
{
pattern
:
PATTERN_MAPS
.
money
,
message
:
'请填写正数'
,
},
],
],
},
},
quotaSlide
:
{
quotaSlide
:
{
...
...
src/pages/payandSettle/creditApplication/quotaFormQuery/detail.tsx
View file @
dc9cb88f
import
React
,
{
Suspense
}
from
'react'
;
import
React
,
{
Suspense
,
useEffect
,
useState
}
from
'react'
;
import
{
import
{
PageHeader
,
PageHeader
,
Descriptions
,
Descriptions
,
...
@@ -11,114 +11,167 @@ import {
...
@@ -11,114 +11,167 @@ import {
import
{
FormOutlined
}
from
'@ant-design/icons'
;
import
{
FormOutlined
}
from
'@ant-design/icons'
;
import
{
PageHeaderWrapper
}
from
'@ant-design/pro-layout'
;
import
{
PageHeaderWrapper
}
from
'@ant-design/pro-layout'
;
import
{
history
}
from
'umi'
;
import
{
history
}
from
'umi'
;
import
{
PublicApi
}
from
'@/services/api'
;
import
{
GetPayCreditApplyGetApplyDetailResponse
}
from
'@/services/PayApi'
;
import
{
CREDIT_INNER_STATUS
,
CREDIT_OUTER_STATUS
}
from
'@/constants'
;
import
{
usePageStatus
}
from
'@/hooks/usePageStatus'
;
import
AvatarWrap
from
'@/components/AvatarWrap'
;
import
AvatarWrap
from
'@/components/AvatarWrap'
;
import
StatusTag
from
'@/components/StatusTag'
;
import
StatusTag
from
'@/components/StatusTag'
;
import
{
MEMBER_STATUS_TAG_MAP
,
CREDIT_OUTER_STATUS_TAG_MAP
,
CREDIT_OUTER_STATUS_BADGE_MAP
}
from
'../../constant'
;
const
OuterCirculation
=
React
.
lazy
(()
=>
import
(
'../components/OuterCirculation'
));
const
OuterCirculation
=
React
.
lazy
(()
=>
import
(
'../components/OuterCirculation'
));
const
QuotaApplicationInfo
=
React
.
lazy
(()
=>
import
(
'../components/QuotaApplicationInfo'
));
const
QuotaApplicationInfo
=
React
.
lazy
(()
=>
import
(
'../components/QuotaApplicationInfo'
));
const
HitoryList
=
React
.
lazy
(()
=>
import
(
'../components/HistoryList'
));
const
HitoryList
=
React
.
lazy
(()
=>
import
(
'../components/HistoryList'
));
const
OuterCirculationRecord
=
React
.
lazy
(()
=>
import
(
'../components/OuterCirculationRecord'
));
const
OuterCirculationRecord
=
React
.
lazy
(()
=>
import
(
'../components/OuterCirculationRecord'
));
interface
DetailInfo
{
// 授信id
id
:
string
;
// 申请id
applyId
:
string
;
// 是否是编辑的
isEdit
?:
boolean
;
};
interface
QuotaValues
{
// 申请调整额度
applyQuota
:
number
|
null
;
// 申请调整账单日期
billDay
:
number
|
null
;
// 申请还款周期
repayPeriod
:
number
|
null
;
};
const
QuotaFormQueryDetail
:
React
.
FC
=
()
=>
{
const
QuotaFormQueryDetail
:
React
.
FC
=
()
=>
{
const
{
id
}
=
usePageStatus
();
const
[
quotaInfo
,
setQuotaInfo
]
=
useState
<
GetPayCreditApplyGetApplyDetailResponse
>
(
null
);
const
[
quotaValues
,
setQuotaValues
]
=
useState
<
QuotaValues
>
({
applyQuota
:
null
,
billDay
:
null
,
repayPeriod
:
null
,
});
const
[
infoLoading
,
setInfoloading
]
=
useState
(
false
);
const
steps
=
[
const
getQuotaInfo
=
()
=>
{
{
if
(
!
id
)
{
title
:
'提交授信申请单'
,
return
;
description
:
'采购商'
,
}
},
setInfoloading
(
true
);
{
PublicApi
.
getPayCreditApplyGetApplyDetail
({
title
:
'确认授信申请单'
,
id
,
description
:
'供应商'
,
}).
then
(
res
=>
{
},
if
(
res
.
code
===
1000
)
{
{
setQuotaInfo
(
res
.
data
);
title
:
'完成'
,
setQuotaValues
({
description
:
''
,
applyQuota
:
res
.
data
.
applyQuota
,
},
billDay
:
res
.
data
.
billDay
,
];
repayPeriod
:
res
.
data
.
repayPeriod
,
});
}
}).
finally
(()
=>
{
setInfoloading
(
false
);
});
};
const
outerRecord
=
[
useEffect
(()
=>
{
{
getQuotaInfo
();
id
:
1
,
},
[]);
order
:
1
,
role
:
'采购商'
,
status
:
2
,
action
:
'提交授信申请单'
,
createTime
:
'2020-05-12 08:08'
,
opinion
:
'同意'
,
},
{
id
:
2
,
order
:
2
,
role
:
'采购商'
,
status
:
2
,
action
:
'提交授信申请单'
,
createTime
:
'2020-05-12 08:08'
,
opinion
:
'同意'
,
},
];
return
(
return
(
<
PageHeaderWrapper
<
Spin
spinning=
{
infoLoading
}
>
title=
{
<
PageHeaderWrapper
<>
title=
{
<
PageHeader
<>
style=
{
{
padding
:
'0'
}
}
<
PageHeader
onBack=
{
()
=>
history
.
goBack
()
}
style=
{
{
padding
:
'0'
}
}
title=
{
onBack=
{
()
=>
history
.
goBack
()
}
<
AvatarWrap
title=
{
info=
{
{
<
AvatarWrap
aloneTxt
:
'单'
,
info=
{
{
name
:
'申请单号:DPTY12'
,
aloneTxt
:
'单'
,
name
:
`申请单号:${quotaInfo && quotaInfo.applyNo ? quotaInfo.applyNo : ''}`
,
}
}
extra=
{
quotaInfo
&&
quotaInfo
.
member
?
quotaInfo
.
member
.
levelTag
||
''
:
''
}
/>
}
extra=
{
(
<>
</>
)
}
>
<
Descriptions
size=
"small"
column=
{
3
}
style=
{
{
padding
:
'0 32px'
,
}
}
}
}
extra=
"青铜会员"
>
/>
<
Descriptions
.
Item
label=
"会员归属"
>
{
'暂无'
}
</
Descriptions
.
Item
>
<
Descriptions
.
Item
label=
"会员类型"
>
{
quotaInfo
?.
member
?.
memberTypeName
}
</
Descriptions
.
Item
>
<
Descriptions
.
Item
label=
"会员角色名称"
>
{
quotaInfo
?.
member
?.
roleName
}
</
Descriptions
.
Item
>
<
Descriptions
.
Item
label=
"会员状态"
>
<
StatusTag
type=
{
MEMBER_STATUS_TAG_MAP
[
quotaInfo
&&
quotaInfo
.
member
?
quotaInfo
.
member
.
status
||
1
:
1
]
}
title=
{
quotaInfo
&&
quotaInfo
.
member
?
quotaInfo
.
member
.
status
||
1
:
1
}
/>
</
Descriptions
.
Item
>
<
Descriptions
.
Item
label=
"外部状态"
>
<
StatusTag
type=
{
CREDIT_OUTER_STATUS_TAG_MAP
[
quotaInfo
?.
outerStatus
]
}
title=
{
CREDIT_OUTER_STATUS
[
quotaInfo
?.
outerStatus
]
}
/>
</
Descriptions
.
Item
>
<
Descriptions
.
Item
label=
"内部状态"
>
<
Badge
color=
{
CREDIT_OUTER_STATUS_BADGE_MAP
[
quotaInfo
?.
innerStatus
]
}
text=
{
CREDIT_INNER_STATUS
[
quotaInfo
?.
innerStatus
]
}
/>
</
Descriptions
.
Item
>
</
Descriptions
>
</
PageHeader
>
</>
}
>
<
Suspense
fallback=
{
null
}
>
<
OuterCirculation
steps=
{
quotaInfo
&&
quotaInfo
.
outerVerifyRecordList
?
quotaInfo
.
outerVerifyRecordList
.
map
(
item
=>
({
title
:
item
.
operate
,
description
:
item
.
roleName
,
}))
:
[]
}
}
extra=
{
(
current=
{
0
}
<>
/>
</
Suspense
>
</>
)
}
<
Suspense
fallback=
{
null
}
>
>
<
QuotaApplicationInfo
<
Descriptions
quotaInfo=
{
{
size=
"small"
originalQuota
:
quotaInfo
?.
originalQuota
,
column=
{
3
}
applyQuota
:
quotaValues
.
applyQuota
,
style=
{
{
billDay
:
quotaValues
.
billDay
,
padding
:
'0 32px'
,
repayPeriod
:
quotaValues
.
repayPeriod
,
}
}
applyTime
:
quotaInfo
?.
applyTime
,
>
}
}
<
Descriptions
.
Item
label=
"会员归属"
>
广州白马皮具交易中心
</
Descriptions
.
Item
>
verify=
{
<
Descriptions
.
Item
label=
"会员类型"
>
企业会员
</
Descriptions
.
Item
>
quotaInfo
&&
quotaInfo
.
verify
?
{
<
Descriptions
.
Item
label=
"会员角色名称"
>
采购商
</
Descriptions
.
Item
>
quota
:
quotaInfo
?.
verify
?.
quota
,
<
Descriptions
.
Item
label=
"会员状态"
>
billDay
:
quotaInfo
?.
verify
?.
billDay
,
<
StatusTag
type=
"success"
title=
"正常"
/>
repayPeriod
:
quotaInfo
?.
verify
?.
repayPeriod
,
</
Descriptions
.
Item
>
verifyTime
:
quotaInfo
?.
verify
?.
verifyTime
,
<
Descriptions
.
Item
label=
"外部状态"
>
}
:
<
StatusTag
type=
"success"
title=
"接受申请"
/>
null
</
Descriptions
.
Item
>
}
<
Descriptions
.
Item
label=
"内部状态"
>
editable=
{
false
}
<
Badge
color=
"#41CC9E"
text=
"正常"
/>
/>
</
Descriptions
.
Item
>
</
Suspense
>
</
Descriptions
>
</
PageHeader
>
<
Suspense
fallback=
{
null
}
>
</>
<
HitoryList
dataSource=
{
quotaInfo
?.
historyApplyList
}
/>
}
</
Suspense
>
>
<
Suspense
fallback=
{
null
}
>
<
Suspense
fallback=
{
null
}
>
<
OuterCirculation
steps=
{
steps
}
/>
<
OuterCirculationRecord
dataSource=
{
quotaInfo
?.
outerVerifyRecordList
}
/>
</
Suspense
>
</
Suspense
>
</
PageHeaderWrapper
>
<
Suspense
fallback=
{
null
}
>
</
Spin
>
<
QuotaApplicationInfo
/>
</
Suspense
>
<
Suspense
fallback=
{
null
}
>
<
HitoryList
/>
</
Suspense
>
<
Suspense
fallback=
{
null
}
>
<
OuterCirculationRecord
dataSource=
{
outerRecord
}
/>
</
Suspense
>
</
PageHeaderWrapper
>
);
);
};
};
...
...
src/pages/payandSettle/creditApplication/quotaFormQuery/index.tsx
View file @
dc9cb88f
...
@@ -64,7 +64,7 @@ const QuotaFormQuery: React.FC = () => {
...
@@ -64,7 +64,7 @@ const QuotaFormQuery: React.FC = () => {
render
:
(
text
,
record
)
=>
(
render
:
(
text
,
record
)
=>
(
<>
<>
<
EyePreview
<
EyePreview
url=
{
`/memberCenter/payandSettle/creditApplication/quotaFormQuery/detail`
}
url=
{
`/memberCenter/payandSettle/creditApplication/quotaFormQuery/detail
?id=${record.id}
`
}
>
>
{
text
}
{
text
}
</
EyePreview
>
</
EyePreview
>
...
...
src/pages/payandSettle/creditApplication/quotaMenage/index.tsx
View file @
dc9cb88f
...
@@ -9,6 +9,7 @@ import { PublicApi } from '@/services/api';
...
@@ -9,6 +9,7 @@ import { PublicApi } from '@/services/api';
import
{
useStateFilterSearchLinkageEffect
}
from
'@/formSchema/effects/useFilterSearch'
;
import
{
useStateFilterSearchLinkageEffect
}
from
'@/formSchema/effects/useFilterSearch'
;
import
{
useAsyncInitSelect
}
from
'@/formSchema/effects/useAsyncInitSelect'
;
import
{
useAsyncInitSelect
}
from
'@/formSchema/effects/useAsyncInitSelect'
;
import
{
FORM_FILTER_PATH
}
from
'@/formSchema/const'
;
import
{
FORM_FILTER_PATH
}
from
'@/formSchema/const'
;
import
{
coverColFiltersItem
}
from
'@/utils'
;
import
{
import
{
CREDIT_STATUS_NOT_APPLIED
,
CREDIT_STATUS_NOT_APPLIED
,
CREDIT_STATUS_APPLYING
,
CREDIT_STATUS_APPLYING
,
...
@@ -192,7 +193,32 @@ const QuotaMenage: React.FC = () => {
...
@@ -192,7 +193,32 @@ const QuotaMenage: React.FC = () => {
};
};
// 初始化高级筛选选项
// 初始化高级筛选选项
const
fetchSelectOptions
=
async
()
=>
{
const
fetchSearchItems
=
async
()
=>
{
const
res
=
await
PublicApi
.
getPayCreditApplyPageItemsByConsumer
();
if
(
res
.
code
===
1000
)
{
const
{
data
}
=
res
;
const
{
statusList
=
[],
repayStatusList
=
[],
}
=
data
;
const
newColumns
=
columns
.
slice
();
// filter 0 过滤掉全部选项
coverColFiltersItem
(
newColumns
,
'statusName'
,
statusList
.
map
(
item
=>
({
text
:
item
.
name
,
value
:
item
.
status
})).
filter
(
item
=>
item
.
value
),
);
setColumns
(
newColumns
);
return
{
status
:
statusList
.
map
(
item
=>
({
label
:
item
.
name
,
value
:
item
.
status
})).
filter
(
item
=>
item
.
value
),
rePayStatus
:
repayStatusList
.
map
(
item
=>
({
label
:
item
.
name
,
value
:
item
.
status
})).
filter
(
item
=>
item
.
value
),
};
}
return
{};
return
{};
};
};
...
@@ -218,8 +244,8 @@ const QuotaMenage: React.FC = () => {
...
@@ -218,8 +244,8 @@ const QuotaMenage: React.FC = () => {
FORM_FILTER_PATH
,
FORM_FILTER_PATH
,
);
);
useAsyncInitSelect
(
useAsyncInitSelect
(
[
'
innerStatus'
,
'outer
Status'
],
[
'
status'
,
'rePay
Status'
],
fetchSe
lectOption
s
,
fetchSe
archItem
s
,
);
);
}
}
}
}
schema=
{
listSearchSchema
}
schema=
{
listSearchSchema
}
...
...
src/pages/payandSettle/creditApplication/quotaMenage/schema/index.ts
View file @
dc9cb88f
...
@@ -7,18 +7,6 @@
...
@@ -7,18 +7,6 @@
*/
*/
import
{
ISchema
}
from
'@formily/antd'
;
import
{
ISchema
}
from
'@formily/antd'
;
import
{
FORM_FILTER_PATH
}
from
'@/formSchema/const'
;
import
{
FORM_FILTER_PATH
}
from
'@/formSchema/const'
;
import
{
CREDIT_STATUS_NOT_APPLIED
,
CREDIT_STATUS_APPLYING
,
CREDIT_STATUS_NORMAL
,
CREDIT_STATUS_FROZEN
,
CREDIT_STATUS
,
CREDIT_REPAYMENT_STATUS_OUTSTANDING
,
CREDIT_REPAYMENT_STATUS_UNCONFIRMED
,
CREDIT_REPAYMENT_STATUS_PAID
,
CREDIT_REPAYMENT_STATUS_OVERDUE
,
CREDIT_REPAYMENT_STATUS
,
}
from
'@/constants'
;
export
const
listSearchSchema
:
ISchema
=
{
export
const
listSearchSchema
:
ISchema
=
{
type
:
'object'
,
type
:
'object'
,
...
@@ -49,24 +37,7 @@ export const listSearchSchema: ISchema = {
...
@@ -49,24 +37,7 @@ export const listSearchSchema: ISchema = {
rePayStatus
:
{
rePayStatus
:
{
type
:
'string'
,
type
:
'string'
,
default
:
undefined
,
default
:
undefined
,
enum
:
[
enum
:
[],
{
label
:
CREDIT_STATUS
[
CREDIT_STATUS_NOT_APPLIED
],
value
:
CREDIT_STATUS_NOT_APPLIED
,
},
{
label
:
CREDIT_STATUS
[
CREDIT_STATUS_APPLYING
],
value
:
CREDIT_STATUS_APPLYING
,
},
{
label
:
CREDIT_STATUS
[
CREDIT_STATUS_NORMAL
],
value
:
CREDIT_STATUS_NORMAL
,
},
{
label
:
CREDIT_STATUS
[
CREDIT_STATUS_FROZEN
],
value
:
CREDIT_STATUS_FROZEN
,
},
],
'x-component-props'
:
{
'x-component-props'
:
{
placeholder
:
'还款状态(全部)'
,
placeholder
:
'还款状态(全部)'
,
allowClear
:
true
,
allowClear
:
true
,
...
@@ -75,24 +46,7 @@ export const listSearchSchema: ISchema = {
...
@@ -75,24 +46,7 @@ export const listSearchSchema: ISchema = {
status
:
{
status
:
{
type
:
'string'
,
type
:
'string'
,
default
:
undefined
,
default
:
undefined
,
enum
:
[
enum
:
[],
{
label
:
CREDIT_REPAYMENT_STATUS
[
CREDIT_REPAYMENT_STATUS_OUTSTANDING
],
value
:
CREDIT_REPAYMENT_STATUS_OUTSTANDING
},
{
label
:
CREDIT_REPAYMENT_STATUS
[
CREDIT_REPAYMENT_STATUS_UNCONFIRMED
],
value
:
CREDIT_REPAYMENT_STATUS_UNCONFIRMED
},
{
label
:
CREDIT_REPAYMENT_STATUS
[
CREDIT_REPAYMENT_STATUS_PAID
],
value
:
CREDIT_REPAYMENT_STATUS_PAID
},
{
label
:
CREDIT_REPAYMENT_STATUS
[
CREDIT_REPAYMENT_STATUS_OVERDUE
],
value
:
CREDIT_REPAYMENT_STATUS_OVERDUE
},
],
'x-component-props'
:
{
'x-component-props'
:
{
placeholder
:
'状态(全部)'
,
placeholder
:
'状态(全部)'
,
allowClear
:
true
,
allowClear
:
true
,
...
...
src/pages/payandSettle/creditApplication/quotaPrSubmit/components/DetailInfo/index.tsx
View file @
dc9cb88f
...
@@ -24,19 +24,26 @@ const HitoryList = React.lazy(() => import('../../../components/HistoryList'));
...
@@ -24,19 +24,26 @@ const HitoryList = React.lazy(() => import('../../../components/HistoryList'));
const
OuterCirculationRecord
=
React
.
lazy
(()
=>
import
(
'../../../components/OuterCirculationRecord'
));
const
OuterCirculationRecord
=
React
.
lazy
(()
=>
import
(
'../../../components/OuterCirculationRecord'
));
interface
DetailInfo
{
interface
DetailInfo
{
// 授信id
id
:
string
;
id
:
string
;
// 申请id
applyId
:
string
;
// 是否是编辑的
// 是否是编辑的
isEdit
?:
boolean
;
isEdit
?:
boolean
;
};
};
interface
QuotaValues
{
interface
QuotaValues
{
// 申请调整额度
applyQuota
:
number
|
null
;
applyQuota
:
number
|
null
;
// 申请调整账单日期
billDay
:
number
|
null
;
billDay
:
number
|
null
;
// 申请还款周期
repayPeriod
:
number
|
null
;
repayPeriod
:
number
|
null
;
};
};
const
DetailInfo
:
React
.
FC
<
DetailInfo
>
=
({
const
DetailInfo
:
React
.
FC
<
DetailInfo
>
=
({
id
,
id
,
applyId
,
isEdit
=
false
,
isEdit
=
false
,
})
=>
{
})
=>
{
const
[
quotaInfo
,
setQuotaInfo
]
=
useState
<
GetPayCreditApplyGetApplyDetailResponse
>
(
null
);
const
[
quotaInfo
,
setQuotaInfo
]
=
useState
<
GetPayCreditApplyGetApplyDetailResponse
>
(
null
);
...
@@ -58,6 +65,11 @@ const DetailInfo: React.FC<DetailInfo> = ({
...
@@ -58,6 +65,11 @@ const DetailInfo: React.FC<DetailInfo> = ({
}).
then
(
res
=>
{
}).
then
(
res
=>
{
if
(
res
.
code
===
1000
)
{
if
(
res
.
code
===
1000
)
{
setQuotaInfo
(
res
.
data
);
setQuotaInfo
(
res
.
data
);
setQuotaValues
({
applyQuota
:
res
.
data
.
applyQuota
,
billDay
:
res
.
data
.
billDay
,
repayPeriod
:
res
.
data
.
repayPeriod
,
});
}
}
}).
finally
(()
=>
{
}).
finally
(()
=>
{
setInfoloading
(
false
);
setInfoloading
(
false
);
...
@@ -76,11 +88,14 @@ const DetailInfo: React.FC<DetailInfo> = ({
...
@@ -76,11 +88,14 @@ const DetailInfo: React.FC<DetailInfo> = ({
const
handleSubmit
=
()
=>
{
const
handleSubmit
=
()
=>
{
setSubmitLoading
(
true
);
setSubmitLoading
(
true
);
PublicApi
.
postPayCreditApplyAddCreditApply
({
PublicApi
.
postPayCreditApplyAddCreditApply
({
creditId
:
+
id
,
creditId
:
+
id
,
applyId
:
applyId
?
+
applyId
:
0
,
...
quotaValues
,
...
quotaValues
,
}).
then
(
res
=>
{
}).
then
(
res
=>
{
if
(
res
.
code
===
1000
)
{
if
(
res
.
code
===
1000
)
{
history
.
goBack
();
setTimeout
(()
=>
{
history
.
goBack
();
},
800
);
}
}
}).
finally
(()
=>
{
}).
finally
(()
=>
{
setSubmitLoading
(
false
);
setSubmitLoading
(
false
);
...
@@ -99,9 +114,9 @@ const DetailInfo: React.FC<DetailInfo> = ({
...
@@ -99,9 +114,9 @@ const DetailInfo: React.FC<DetailInfo> = ({
<
AvatarWrap
<
AvatarWrap
info=
{
{
info=
{
{
aloneTxt
:
'单'
,
aloneTxt
:
'单'
,
name
:
`申请单号:${quotaInfo
?.applyNo
}`
,
name
:
`申请单号:${quotaInfo
&& quotaInfo.applyNo ? quotaInfo.applyNo : ''
}`
,
}
}
}
}
extra=
{
quotaInfo
?.
member
?.
levelTag
}
extra=
{
quotaInfo
&&
quotaInfo
.
member
?
quotaInfo
.
member
.
levelTag
||
''
:
''
}
/>
/>
}
}
extra=
{
(
extra=
{
(
...
@@ -163,17 +178,20 @@ const DetailInfo: React.FC<DetailInfo> = ({
...
@@ -163,17 +178,20 @@ const DetailInfo: React.FC<DetailInfo> = ({
<
QuotaApplicationInfo
<
QuotaApplicationInfo
quotaInfo=
{
{
quotaInfo=
{
{
originalQuota
:
quotaInfo
?.
originalQuota
,
originalQuota
:
quotaInfo
?.
originalQuota
,
applyQuota
:
quota
Info
?
.
applyQuota
,
applyQuota
:
quota
Values
.
applyQuota
,
billDay
:
quota
Info
?
.
billDay
,
billDay
:
quota
Values
.
billDay
,
repayPeriod
:
quota
Info
?
.
repayPeriod
,
repayPeriod
:
quota
Values
.
repayPeriod
,
applyTime
:
quotaInfo
?.
applyTime
,
applyTime
:
quotaInfo
?.
applyTime
,
}
}
}
}
verify=
{
{
verify=
{
quota
:
quotaInfo
?.
verify
.
quota
,
quotaInfo
&&
quotaInfo
.
verify
?
{
billDay
:
quotaInfo
?.
verify
.
billDay
,
quota
:
quotaInfo
?.
verify
?.
quota
,
repayPeriod
:
quotaInfo
?.
verify
.
repayPeriod
,
billDay
:
quotaInfo
?.
verify
?.
billDay
,
verifyTime
:
quotaInfo
?.
verify
.
verifyTime
,
repayPeriod
:
quotaInfo
?.
verify
?.
repayPeriod
,
}
}
verifyTime
:
quotaInfo
?.
verify
?.
verifyTime
,
}
:
null
}
editable=
{
isEdit
}
editable=
{
isEdit
}
onSubmit=
{
handleQuotaSubmit
}
onSubmit=
{
handleQuotaSubmit
}
/>
/>
...
...
src/pages/payandSettle/creditApplication/quotaPrSubmit/index.tsx
View file @
dc9cb88f
...
@@ -35,7 +35,7 @@ const QuotaPrSubmit: React.FC = () => {
...
@@ -35,7 +35,7 @@ const QuotaPrSubmit: React.FC = () => {
render
:
(
text
,
record
)
=>
(
render
:
(
text
,
record
)
=>
(
<>
<>
<
EyePreview
<
EyePreview
url=
{
`/memberCenter/payandSettle/creditApplication/quotaPrSubmit/detail`
}
url=
{
`/memberCenter/payandSettle/creditApplication/quotaPrSubmit/detail
?id=${record.id}
`
}
>
>
{
text
}
{
text
}
</
EyePreview
>
</
EyePreview
>
...
@@ -84,7 +84,7 @@ const QuotaPrSubmit: React.FC = () => {
...
@@ -84,7 +84,7 @@ const QuotaPrSubmit: React.FC = () => {
filters
:
[],
filters
:
[],
onFilter
:
(
value
,
record
)
=>
record
.
outerStatus
===
value
,
onFilter
:
(
value
,
record
)
=>
record
.
outerStatus
===
value
,
render
:
(
text
,
record
)
=>
(
render
:
(
text
,
record
)
=>
(
<
StatusTag
type=
{
CREDIT_OUTER_STATUS_TAG_MAP
[
record
.
outerStatus
]
}
title=
{
text
}
/>
<
StatusTag
type=
{
CREDIT_OUTER_STATUS_TAG_MAP
[
record
.
outerStatus
]
}
title=
{
record
.
outerStatusName
}
/>
),
),
},
},
{
{
...
@@ -93,7 +93,7 @@ const QuotaPrSubmit: React.FC = () => {
...
@@ -93,7 +93,7 @@ const QuotaPrSubmit: React.FC = () => {
align
:
'center'
,
align
:
'center'
,
filters
:
[],
filters
:
[],
onFilter
:
(
value
,
record
)
=>
record
.
innerStatus
===
value
,
onFilter
:
(
value
,
record
)
=>
record
.
innerStatus
===
value
,
render
:
(
text
,
record
)
=>
<
Badge
color=
{
CREDIT_OUTER_STATUS_BADGE_MAP
[
record
.
innerStatus
]
}
text=
{
text
}
/>,
render
:
(
text
,
record
)
=>
<
Badge
color=
{
CREDIT_OUTER_STATUS_BADGE_MAP
[
record
.
innerStatus
]
}
text=
{
record
.
innerStatusName
}
/>,
},
},
{
{
title
:
'操作'
,
title
:
'操作'
,
...
...
src/utils/index.tsx
View file @
dc9cb88f
...
@@ -494,6 +494,27 @@ export const isJSONStr = str => {
...
@@ -494,6 +494,27 @@ export const isJSONStr = str => {
return
str
;
return
str
;
}
}
/**
* 给 Table columns 的 filters 赋值
* @param {array} data 需要赋值的数组
* @param {string} dataIndex 索引
* @param {array} item 需要赋值的值
*/
export
const
coverColFiltersItem
=
(
data
:
Array
<
{[
key
:
string
]:
any
}
>
,
dataIndex
:
string
,
item
:
{[
key
:
string
]:
any
}
)
=>
{
const
index
=
data
.
findIndex
(
i
=>
i
.
dataIndex
===
dataIndex
);
if
(
index
!==
-
1
)
{
data
.
splice
(
index
,
1
,
{
...
data
[
index
],
filters
:
item
,
});
}
};
export
default
{
export
default
{
isArray
,
isArray
,
isObject
,
isObject
,
...
...
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