Commit 7dd05a4c authored by xiexiuxing's avatar xiexiuxing

支付按钮

parent 84f774b8
# btnCode 是pass 平台配置唯一表示 # btnCode 是pass 平台配置唯一表示
...@@ -272,8 +272,49 @@ ...@@ -272,8 +272,49 @@
# 售后管理 # 售后管理
# 支付能力 # 支付能力-payandSettle
- 1.支付方式管理
- 1.1 会员支付方式配置
payParamsSetting.update 会员支付方式配置-保存 会员支付方式配置-保存-按钮
- 1.2 e账户认证 [加不动]
eAccountApprove.Personalsubmit e账户认证-个人提交 e账户认证-个人提交-按钮
eAccountApprove.PersonalFinish e账户认证-企业提交 e账户认证-企业提交-按钮
- 2.授信申请
2.1 授信额度管理
quotaMenage.see 授信额度管理-查看 授信额度管理-查看-按钮
quotaMenage.Apply 授信额度管理-申请 授信额度管理-申请-按钮
2.2 授信申请单查询
quotaFormQuery.see 授信额度管理-查看 授信额度管理-查看-按钮
2.3 待提交授信申请单
quotaPrSubmit.see 待提交授信申请单-查看 待提交授信申请单-查看-按钮
quotaPrSubmit.submit 待提交授信申请单-提交 待提交授信申请单-提交-按钮
quotaPrSubmit.del 待提交授信申请单-删除 待提交授信申请单-删除-按钮
quotaPrSubmit.update 待提交授信申请单-修改 待提交授信申请单-修改-按钮
- 3.授信处理
3.1.授信额度管理
quotaMenage1.see 授信额度管理-查看 授信额度管理-查看-按钮
quotaMenage1.update 授信额度管理-调整 授信额度管理-调整-按钮
quotaMenage1.frozen 授信额度管理-冻结 授信额度管理-冻结-按钮
3.2 授信申请单查询
quotaFormQuery1.frozen 授信申请单查询-查看 授信申请单查询-查看-按钮
3.3 待审核授信申请单(一级)
quotaPr1.see 待审核授信申请单(一级)-查看 待审核授信申请单(一级)-查看-按钮
quotaPr1.update 待审核授信申请单(一级)-更新 待审核授信申请单(一级)-更新-按钮
3.4 待审核授信申请单(二级)
quotaPr2.update 待审核授信申请单(二级)-更新 待审核授信申请单(二级)-更新-按钮
quotaPr2.see 待审核授信申请单(二级)-查看 待审核授信申请单(二级)-查看-按钮
3.5 待审核授信申请单(三级)
quotaPr3.see 待审核授信申请单(三级)-查看 待审核授信申请单(三级)-查看-按钮
quotaPr3.update 待审核授信申请单(三级)-提交 待审核授信申请单(三级)-提交-按钮
3.6 待确认授信申请单
quotaPrConfirm.see 待确认授信申请单-查看 待确认授信申请单-查看-按钮
quotaPrConfirm.update 待确认授信申请单-更新 待确认授信申请单-更新-按钮
- 4 资金账户
- 4.1 账户管理
accountLists.see 账户管理-查看 账户管理-查看-按钮
# 物流能力 - logisticsAbility (已完成) # 物流能力 - logisticsAbility (已完成)
- 1.物流管理 - 1.物流管理
- 1.1 物流公司管理 - 1.1 物流公司管理
...@@ -479,7 +520,7 @@ ...@@ -479,7 +520,7 @@
# 内容管理-contentAbility (90%) # 内容管理-contentAbility (已完成)
- 1.内容管理-栏目管理 - 1.内容管理-栏目管理
columnsManagement.del 栏目管理删除 栏目管理删除按钮 columnsManagement.del 栏目管理删除 栏目管理删除按钮
columnsManagement.edit 栏目管理编辑 栏目管理编辑按钮 columnsManagement.edit 栏目管理编辑 栏目管理编辑按钮
......
import React, { useRef } from 'react' import React, { useRef } from 'react'
import {useIntl} from 'umi'; import { useIntl } from 'umi';
import { Card } from 'antd' import { Card } from 'antd'
import { PageHeaderWrapper } from '@ant-design/pro-layout' import { PageHeaderWrapper } from '@ant-design/pro-layout'
import StandardTable from '@/components/StandardTable'; import StandardTable from '@/components/StandardTable';
...@@ -14,6 +14,7 @@ import StatusTag from '@/components/StatusTag' ...@@ -14,6 +14,7 @@ import StatusTag from '@/components/StatusTag'
import { accountStatusMap, memberStatusMap, memberLevelTypeMap, accountMemberType } from '../../constant' import { accountStatusMap, memberStatusMap, memberLevelTypeMap, accountMemberType } from '../../constant'
import DateRangePickerUnix from '@/components/NiceForm/components/DateRangePickerUnix' import DateRangePickerUnix from '@/components/NiceForm/components/DateRangePickerUnix'
import { getPayAssetAccountGetAssetAccountList } from '@/services/PayV2Api' import { getPayAssetAccountGetAssetAccountList } from '@/services/PayV2Api'
import { AuthUrl } from '@/components/AuthButton/AuthUrl';
const formActions = createFormActions(); const formActions = createFormActions();
...@@ -23,24 +24,25 @@ const AccountLists: React.FC<{}> = () => { ...@@ -23,24 +24,25 @@ const AccountLists: React.FC<{}> = () => {
const columns: ColumnType<any>[] = [ const columns: ColumnType<any>[] = [
{ {
title: intl.formatMessage({id: 'payandSettle.capitalAccounts.accountLists.columns.parentMemberName'}), title: intl.formatMessage({ id: 'payandSettle.capitalAccounts.accountLists.columns.parentMemberName' }),
dataIndex: 'parentMemberName', dataIndex: 'parentMemberName',
key: 'parentMemberName', key: 'parentMemberName',
className: 'commonPickColor', className: 'commonPickColor',
render: (text, record) => <EyePreview render: (text, record) => <EyePreview
type={AuthUrl('accountLists.see', 'payandSettle') ? 'link' : 'button'}
url={`/memberCenter/payandSettle/capitalAccounts/accountLists/detail?id=${record.id}`} url={`/memberCenter/payandSettle/capitalAccounts/accountLists/detail?id=${record.id}`}
> >
{text} {text}
</EyePreview> </EyePreview>
}, },
{ {
title: intl.formatMessage({id: 'payandSettle.capitalAccounts.accountLists.columns.memberType'}), title: intl.formatMessage({ id: 'payandSettle.capitalAccounts.accountLists.columns.memberType' }),
dataIndex: 'memberType', dataIndex: 'memberType',
key: 'memberType', key: 'memberType',
render: (t, r) => accountMemberType[t] render: (t, r) => accountMemberType[t]
}, },
{ {
title: intl.formatMessage({id: 'payandSettle.capitalAccounts.accountLists.columns.memberRoleName'}), title: intl.formatMessage({ id: 'payandSettle.capitalAccounts.accountLists.columns.memberRoleName' }),
dataIndex: 'memberRoleName', dataIndex: 'memberRoleName',
key: 'memberRoleName', key: 'memberRoleName',
}, },
...@@ -51,40 +53,40 @@ const AccountLists: React.FC<{}> = () => { ...@@ -51,40 +53,40 @@ const AccountLists: React.FC<{}> = () => {
// render: (t, r) => <LevelBrand level={r.memberLevel} /> // render: (t, r) => <LevelBrand level={r.memberLevel} />
// }, // },
{ {
title: intl.formatMessage({id: 'payandSettle.capitalAccounts.accountLists.columns.memberLevelType'}), title: intl.formatMessage({ id: 'payandSettle.capitalAccounts.accountLists.columns.memberLevelType' }),
dataIndex: 'memberLevelType', dataIndex: 'memberLevelType',
key: 'memberLevelType', key: 'memberLevelType',
render: (t, r) => memberLevelTypeMap[t] render: (t, r) => memberLevelTypeMap[t]
}, },
{ {
title: intl.formatMessage({id: 'payandSettle.capitalAccounts.accountLists.columns.memberStatus'}), title: intl.formatMessage({ id: 'payandSettle.capitalAccounts.accountLists.columns.memberStatus' }),
dataIndex: 'memberStatus', dataIndex: 'memberStatus',
key: 'memberStatus', key: 'memberStatus',
render: (t, r) => (<StatusTag title={memberStatusMap[t]['title']} type={memberStatusMap[t]['type']} />) render: (t, r) => (<StatusTag title={memberStatusMap[t]['title']} type={memberStatusMap[t]['type']} />)
}, },
{ {
title: intl.formatMessage({id: 'payandSettle.capitalAccounts.accountLists.columns.accountStatus'}), title: intl.formatMessage({ id: 'payandSettle.capitalAccounts.accountLists.columns.accountStatus' }),
dataIndex: 'accountStatus', dataIndex: 'accountStatus',
key: 'accountStatus', key: 'accountStatus',
render: (t, r) => (<><span className={accountStatusMap[t]['className']}></span>{accountStatusMap[t]['title']}</>) render: (t, r) => (<><span className={accountStatusMap[t]['className']}></span>{accountStatusMap[t]['title']}</>)
}, },
{ {
title: intl.formatMessage({id: 'payandSettle.capitalAccounts.accountLists.columns.accountBalance'}), title: intl.formatMessage({ id: 'payandSettle.capitalAccounts.accountLists.columns.accountBalance' }),
dataIndex: 'accountBalance', dataIndex: 'accountBalance',
key: 'accountBalance', key: 'accountBalance',
render: text => `${intl.formatMessage({id: 'payandSettle.capitalAccounts.accountLists.columns.currency'})}${text.toFixed(2)}` render: text => `${intl.formatMessage({ id: 'payandSettle.capitalAccounts.accountLists.columns.currency' })}${text.toFixed(2)}`
}, },
{ {
title: intl.formatMessage({id: 'payandSettle.capitalAccounts.accountLists.columns.lockBalance'}), title: intl.formatMessage({ id: 'payandSettle.capitalAccounts.accountLists.columns.lockBalance' }),
dataIndex: 'lockBalance', dataIndex: 'lockBalance',
key: 'lockBalance', key: 'lockBalance',
render: text => `${intl.formatMessage({id: 'payandSettle.capitalAccounts.accountLists.columns.currency'})}${text.toFixed(2)}` render: text => `${intl.formatMessage({ id: 'payandSettle.capitalAccounts.accountLists.columns.currency' })}${text.toFixed(2)}`
}, },
{ {
title: intl.formatMessage({id: 'payandSettle.capitalAccounts.accountLists.columns.usableBalance'}), title: intl.formatMessage({ id: 'payandSettle.capitalAccounts.accountLists.columns.usableBalance' }),
dataIndex: 'usableBalance', dataIndex: 'usableBalance',
key: 'usableBalance', key: 'usableBalance',
render: (t, r) => `${intl.formatMessage({id: 'payandSettle.capitalAccounts.accountLists.columns.currency'})}${((r.accountBalance*100 - r.lockBalance*100)/100).toFixed(2)}` render: (t, r) => `${intl.formatMessage({ id: 'payandSettle.capitalAccounts.accountLists.columns.currency' })}${((r.accountBalance * 100 - r.lockBalance * 100) / 100).toFixed(2)}`
}, },
] ]
......
...@@ -23,6 +23,7 @@ import { ...@@ -23,6 +23,7 @@ import {
CREDIT_INNER_STATUS_BADGE_MAP_PURCHASER, CREDIT_INNER_STATUS_BADGE_MAP_PURCHASER,
} from '../../constant'; } from '../../constant';
import styles from './index.less'; import styles from './index.less';
import { AuthUrl } from '@/components/AuthButton/AuthUrl';
const formActions = createFormActions(); const formActions = createFormActions();
...@@ -38,6 +39,7 @@ const QuotaFormQuery: React.FC = () => { ...@@ -38,6 +39,7 @@ const QuotaFormQuery: React.FC = () => {
render: (text, record) => ( render: (text, record) => (
<> <>
<EyePreview <EyePreview
type={AuthUrl('quotaFormQuery.see', 'payandSettle') ? 'link' : 'button'}
url={`/memberCenter/payandSettle/creditApplication/quotaFormQuery/detail?id=${record.id}&creditId=${record.creditId}`} url={`/memberCenter/payandSettle/creditApplication/quotaFormQuery/detail?id=${record.id}&creditId=${record.creditId}`}
> >
{text} {text}
......
import React, { useState, useRef } from 'react'; import React, { useState, useRef } from 'react';
import { Card, Badge, Progress, Button, Tooltip } from 'antd'; import { Card, Badge, Progress, Button, Tooltip } from 'antd';
import { QuestionCircleOutlined } from '@ant-design/icons'; import { QuestionCircleOutlined } from '@ant-design/icons';
import { history,useIntl } from 'umi'; import { history, useIntl } from 'umi';
import StandardTable from '@/components/StandardTable'; import StandardTable from '@/components/StandardTable';
import { ColumnType } from 'antd/lib/table/interface'; import { ColumnType } from 'antd/lib/table/interface';
import { PageHeaderWrapper } from '@ant-design/pro-layout'; import { PageHeaderWrapper } from '@ant-design/pro-layout';
...@@ -18,7 +18,7 @@ import { ...@@ -18,7 +18,7 @@ import {
CREDIT_STATUS_FROZEN, CREDIT_STATUS_FROZEN,
CREDIT_STATUS, CREDIT_STATUS,
CREDIT_REPAYMENT_STATUS_OVERDUE, CREDIT_REPAYMENT_STATUS_OVERDUE,
} from '@/constants/payment'; } from '@/constants/payment';
import { import {
CREDIT_REPAYMENT_STATUS_TAG_MAP, CREDIT_REPAYMENT_STATUS_TAG_MAP,
CREDIT_STATUS_BADGE_MAP, CREDIT_STATUS_BADGE_MAP,
...@@ -28,6 +28,8 @@ import NiceForm from '@/components/NiceForm'; ...@@ -28,6 +28,8 @@ import NiceForm from '@/components/NiceForm';
import StatusTag from '@/components/StatusTag'; import StatusTag from '@/components/StatusTag';
import { listSearchSchema } from './schema'; import { listSearchSchema } from './schema';
import styles from './index.less'; import styles from './index.less';
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const formActions = createFormActions(); const formActions = createFormActions();
...@@ -43,7 +45,7 @@ const QuotaMenage: React.FC = () => { ...@@ -43,7 +45,7 @@ const QuotaMenage: React.FC = () => {
const defaultColumns: ColumnType<any>[] = [ const defaultColumns: ColumnType<any>[] = [
{ {
title: '会员归属', title: '会员归属',
dataIndex: intl.formatMessage({id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.parentMemberName'}), dataIndex: intl.formatMessage({ id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.parentMemberName' }),
align: 'center', align: 'center',
render: (text, record) => ( render: (text, record) => (
<> <>
...@@ -51,12 +53,13 @@ const QuotaMenage: React.FC = () => { ...@@ -51,12 +53,13 @@ const QuotaMenage: React.FC = () => {
{(!record.isHasApply && (record.status === CREDIT_STATUS_NOT_APPLIED || record.status === CREDIT_STATUS_APPLYING)) ? ( {(!record.isHasApply && (record.status === CREDIT_STATUS_NOT_APPLIED || record.status === CREDIT_STATUS_APPLYING)) ? (
<> <>
{`${text} `} {`${text} `}
<Tooltip title={intl.formatMessage({id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.parentMemberName.tooltip'})}> <Tooltip title={intl.formatMessage({ id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.parentMemberName.tooltip' })}>
<QuestionCircleOutlined /> <QuestionCircleOutlined />
</Tooltip> </Tooltip>
</> </>
) : ( ) : (
<EyePreview <EyePreview
type={AuthUrl('quotaMenage.see', 'payandSettle') ? 'link' : 'button'}
url={`/memberCenter/payandSettle/creditApplication/quotaMenage/detail?id=${record.id}`} url={`/memberCenter/payandSettle/creditApplication/quotaMenage/detail?id=${record.id}`}
> >
{text} {text}
...@@ -66,35 +69,35 @@ const QuotaMenage: React.FC = () => { ...@@ -66,35 +69,35 @@ const QuotaMenage: React.FC = () => {
), ),
}, },
{ {
title: intl.formatMessage({id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.memberTypeName'}), title: intl.formatMessage({ id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.memberTypeName' }),
dataIndex: 'memberTypeName', dataIndex: 'memberTypeName',
align: 'center', align: 'center',
}, },
{ {
title: intl.formatMessage({id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.memberRoleName'}), title: intl.formatMessage({ id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.memberRoleName' }),
dataIndex: 'memberRoleName', dataIndex: 'memberRoleName',
align: 'center', align: 'center',
render: (text, record) => <>{text}</>, render: (text, record) => <>{text}</>,
}, },
{ {
title: intl.formatMessage({id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.memberLevelName'}), title: intl.formatMessage({ id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.memberLevelName' }),
dataIndex: 'memberLevelName', dataIndex: 'memberLevelName',
align: 'center', align: 'center',
render: (text, record) => <>{text}</>, render: (text, record) => <>{text}</>,
}, },
{ {
title: intl.formatMessage({id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.canUseQuota'}), title: intl.formatMessage({ id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.canUseQuota' }),
dataIndex: 'canUseQuota', dataIndex: 'canUseQuota',
align: 'center', align: 'center',
}, },
{ {
title: intl.formatMessage({id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.quota'}), title: intl.formatMessage({ id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.quota' }),
dataIndex: 'quota', dataIndex: 'quota',
align: 'center', align: 'center',
render: (text, record) => ( render: (text, record) => (
<> <>
<div>{intl.formatMessage({id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.quota.text.1'})}{text}</div> <div>{intl.formatMessage({ id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.quota.text.1' })}{text}</div>
<div>{intl.formatMessage({id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.quota.text.2'})}{record.useQuota}</div> <div>{intl.formatMessage({ id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.quota.text.2' })}{record.useQuota}</div>
</> </>
), ),
}, },
...@@ -114,7 +117,7 @@ const QuotaMenage: React.FC = () => { ...@@ -114,7 +117,7 @@ const QuotaMenage: React.FC = () => {
), ),
}, },
{ {
title: intl.formatMessage({id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.repayStatusName'}), title: intl.formatMessage({ id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.repayStatusName' }),
dataIndex: 'repayStatusName', dataIndex: 'repayStatusName',
align: 'center', align: 'center',
render: (text, record) => ( render: (text, record) => (
...@@ -129,7 +132,7 @@ const QuotaMenage: React.FC = () => { ...@@ -129,7 +132,7 @@ const QuotaMenage: React.FC = () => {
), ),
}, },
{ {
title: intl.formatMessage({id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.statusName'}), title: intl.formatMessage({ id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.statusName' }),
dataIndex: 'statusName', dataIndex: 'statusName',
align: 'center', align: 'center',
filters: [], filters: [],
...@@ -137,7 +140,7 @@ const QuotaMenage: React.FC = () => { ...@@ -137,7 +140,7 @@ const QuotaMenage: React.FC = () => {
render: (text, record) => <Badge color={CREDIT_STATUS_BADGE_MAP[record.status] || '#606266'} text={text} />, render: (text, record) => <Badge color={CREDIT_STATUS_BADGE_MAP[record.status] || '#606266'} text={text} />,
}, },
{ {
title: intl.formatMessage({id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.action'}), title: intl.formatMessage({ id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.action' }),
dataIndex: 'action', dataIndex: 'action',
align: 'center', align: 'center',
render: (_, record) => ( render: (_, record) => (
...@@ -154,12 +157,14 @@ const QuotaMenage: React.FC = () => { ...@@ -154,12 +157,14 @@ const QuotaMenage: React.FC = () => {
record.status === CREDIT_STATUS_NORMAL record.status === CREDIT_STATUS_NORMAL
) )
) && ( ) && (
<Button <AuthButton btnCode='quotaMenage.Apply' menuCode='payandSettle'>
type="link" <Button
onClick={() => handleJumpApply(record)} type="link"
> onClick={() => handleJumpApply(record)}
{intl.formatMessage({id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.action.button'})} >
</Button> {intl.formatMessage({ id: 'payandSettle.creditApplication.quotaMenage.defaultColumns.action.button' })}
</Button>
</AuthButton>
) )
} }
</> </>
......
...@@ -11,7 +11,7 @@ import { ...@@ -11,7 +11,7 @@ import {
ClockCircleOutlined, ClockCircleOutlined,
} from '@ant-design/icons'; } from '@ant-design/icons';
import StandardTable from '@/components/StandardTable'; import StandardTable from '@/components/StandardTable';
import { history,useIntl } from 'umi'; import { history, useIntl } from 'umi';
import moment from 'moment'; import moment from 'moment';
import { ColumnType } from 'antd/lib/table/interface'; import { ColumnType } from 'antd/lib/table/interface';
import { PageHeaderWrapper } from '@ant-design/pro-layout'; import { PageHeaderWrapper } from '@ant-design/pro-layout';
...@@ -32,6 +32,8 @@ import { ...@@ -32,6 +32,8 @@ import {
CREDIT_INNER_STATUS_BADGE_MAP_PURCHASER, CREDIT_INNER_STATUS_BADGE_MAP_PURCHASER,
} from '../../constant'; } from '../../constant';
import styles from './index.less'; import styles from './index.less';
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const formActions = createFormActions(); const formActions = createFormActions();
...@@ -41,7 +43,7 @@ const QuotaPrSubmit: React.FC = () => { ...@@ -41,7 +43,7 @@ const QuotaPrSubmit: React.FC = () => {
const handleSubmit = record => { const handleSubmit = record => {
const msg = message.loading({ const msg = message.loading({
content: intl.formatMessage({id: 'payandSettle.creditApplication.quotaPrSubmit.handleSubmit'}), content: intl.formatMessage({ id: 'payandSettle.creditApplication.quotaPrSubmit.handleSubmit' }),
duration: 0, duration: 0,
}); });
postPayCreditApplySubmitCreditApply({ postPayCreditApplySubmitCreditApply({
...@@ -61,7 +63,7 @@ const QuotaPrSubmit: React.FC = () => { ...@@ -61,7 +63,7 @@ const QuotaPrSubmit: React.FC = () => {
const handleDelete = record => { const handleDelete = record => {
const msg = message.loading({ const msg = message.loading({
content: intl.formatMessage({id: 'payandSettle.creditApplication.quotaPrSubmit.handleDelete'}), content: intl.formatMessage({ id: 'payandSettle.creditApplication.quotaPrSubmit.handleDelete' }),
duration: 0, duration: 0,
}); });
postPayCreditApplyDeleteCreditApply({ postPayCreditApplyDeleteCreditApply({
...@@ -77,12 +79,13 @@ const QuotaPrSubmit: React.FC = () => { ...@@ -77,12 +79,13 @@ const QuotaPrSubmit: React.FC = () => {
const defaultColumns: ColumnType<any>[] = [ const defaultColumns: ColumnType<any>[] = [
{ {
title: intl.formatMessage({id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.applyNo'}), title: intl.formatMessage({ id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.applyNo' }),
dataIndex: 'applyNo', dataIndex: 'applyNo',
align: 'center', align: 'center',
render: (text, record) => ( render: (text, record) => (
<> <>
<EyePreview <EyePreview
type={AuthUrl('quotaPrSubmit.see', 'payandSettle') ? 'link' : 'button'}
url={`/memberCenter/payandSettle/creditApplication/quotaPrSubmit/detail?id=${record.id}&creditId=${record.creditId}`} url={`/memberCenter/payandSettle/creditApplication/quotaPrSubmit/detail?id=${record.id}&creditId=${record.creditId}`}
> >
{text} {text}
...@@ -94,39 +97,39 @@ const QuotaPrSubmit: React.FC = () => { ...@@ -94,39 +97,39 @@ const QuotaPrSubmit: React.FC = () => {
), ),
}, },
{ {
title: intl.formatMessage({id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.parentMemberName'}), title: intl.formatMessage({ id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.parentMemberName' }),
dataIndex: 'parentMemberName', dataIndex: 'parentMemberName',
align: 'center', align: 'center',
}, },
{ {
title: intl.formatMessage({id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.memberTypeName'}), title: intl.formatMessage({ id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.memberTypeName' }),
dataIndex: 'memberTypeName', dataIndex: 'memberTypeName',
align: 'center', align: 'center',
}, },
{ {
title: intl.formatMessage({id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.memberRoleName'}), title: intl.formatMessage({ id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.memberRoleName' }),
dataIndex: 'memberRoleName', dataIndex: 'memberRoleName',
align: 'center', align: 'center',
render: (text, record) => <>{text}</>, render: (text, record) => <>{text}</>,
}, },
{ {
title: intl.formatMessage({id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.memberLevelName'}), title: intl.formatMessage({ id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.memberLevelName' }),
dataIndex: 'memberLevelName', dataIndex: 'memberLevelName',
align: 'center', align: 'center',
render: (text, record) => <>{text}</>, render: (text, record) => <>{text}</>,
}, },
{ {
title: intl.formatMessage({id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.originalQuota'}), title: intl.formatMessage({ id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.originalQuota' }),
dataIndex: 'originalQuota', dataIndex: 'originalQuota',
align: 'center', align: 'center',
}, },
{ {
title: intl.formatMessage({id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.applyQuota'}), title: intl.formatMessage({ id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.applyQuota' }),
dataIndex: 'applyQuota', dataIndex: 'applyQuota',
align: 'center', align: 'center',
}, },
{ {
title: intl.formatMessage({id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.outerStatus'}), title: intl.formatMessage({ id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.outerStatus' }),
dataIndex: 'outerStatus', dataIndex: 'outerStatus',
align: 'center', align: 'center',
render: (text, record) => ( render: (text, record) => (
...@@ -134,52 +137,61 @@ const QuotaPrSubmit: React.FC = () => { ...@@ -134,52 +137,61 @@ const QuotaPrSubmit: React.FC = () => {
), ),
}, },
{ {
title: intl.formatMessage({id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.innerStatus'}), title: intl.formatMessage({ id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.innerStatus' }),
dataIndex: 'innerStatus', dataIndex: 'innerStatus',
align: 'center', align: 'center',
render: (text, record) => <Badge color={CREDIT_INNER_STATUS_BADGE_MAP_PURCHASER[record.innerStatus] || '#606266'} text={record.innerStatusName} />, render: (text, record) => <Badge color={CREDIT_INNER_STATUS_BADGE_MAP_PURCHASER[record.innerStatus] || '#606266'} text={record.innerStatusName} />,
}, },
{ {
title: intl.formatMessage({id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.option'}), title: intl.formatMessage({ id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.option' }),
dataIndex: 'option', dataIndex: 'option',
align: 'center', align: 'center',
render: (text, record) => ( render: (text, record) => (
<> <>
{record.outerStatus === CREDIT_INNER_STATUS_UNCOMMITTED && ( {record.outerStatus === CREDIT_INNER_STATUS_UNCOMMITTED && (
<Button <AuthButton btnCode='quotaPrSubmit.submit' menuCode='payandSettle'>
type="link"
onClick={() => handleSubmit(record)}
>
{intl.formatMessage({id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.option.button.1'})}
</Button>
)}
{record.outerStatus === CREDIT_INNER_STATUS_UNCOMMITTED && (
<Popconfirm
title={intl.formatMessage({id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.option.button.2.popconfirm.title'})}
okText={intl.formatMessage({id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.option.button.2.popconfirm.okText'})}
cancelText={intl.formatMessage({id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.option.button.2.popconfirm.cancelText'})}
onConfirm={() => handleDelete(record)}
>
<Button <Button
type="link" type="link"
danger onClick={() => handleSubmit(record)}
> >
{intl.formatMessage({id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.option.button.2'})} {intl.formatMessage({ id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.option.button.1' })}
</Button> </Button>
</Popconfirm> </AuthButton>
)}
{record.outerStatus === CREDIT_INNER_STATUS_UNCOMMITTED && (
<AuthButton btnCode='quotaPrSubmit.del' menuCode='payandSettle'>
<Popconfirm
title={intl.formatMessage({ id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.option.button.2.popconfirm.title' })}
okText={intl.formatMessage({ id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.option.button.2.popconfirm.okText' })}
cancelText={intl.formatMessage({ id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.option.button.2.popconfirm.cancelText' })}
onConfirm={() => handleDelete(record)}
>
<Button
type="link"
danger
>
{intl.formatMessage({ id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.option.button.2' })}
</Button>
</Popconfirm>
</AuthButton>
)} )}
{/* 外部状态为不接受申请 或者 内部状态为 待提交申请 都可以进行编辑 */} {/* 外部状态为不接受申请 或者 内部状态为 待提交申请 都可以进行编辑 */}
{( {(
record.outerStatus === CREDIT_OUTER_STATUS_FAILED || record.outerStatus === CREDIT_OUTER_STATUS_FAILED ||
record.innerStatus === CREDIT_INNER_STATUS_UNCOMMITTED record.innerStatus === CREDIT_INNER_STATUS_UNCOMMITTED
) && ( ) && (
<Button <AuthButton btnCode='quotaPrSubmit.update' menuCode='payandSettle'>
type="link" <Button
onClick={() => handleJumpVerify(record)} type="link"
> onClick={() => handleJumpVerify(record)}
{intl.formatMessage({id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.option.button.3'})} >
</Button> {intl.formatMessage({ id: 'payandSettle.creditApplication.quotaPrSubmit.defaultColumns.option.button.3' })}
)} </Button>
</AuthButton>
)}
</> </>
), ),
}, },
......
...@@ -23,6 +23,7 @@ import { ...@@ -23,6 +23,7 @@ import {
CREDIT_INNER_STATUS_BADGE_MAP, CREDIT_INNER_STATUS_BADGE_MAP,
} from '../../constant'; } from '../../constant';
import styles from './index.less'; import styles from './index.less';
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const formActions = createFormActions(); const formActions = createFormActions();
...@@ -38,6 +39,7 @@ const QuotaFormQuery: React.FC = () => { ...@@ -38,6 +39,7 @@ const QuotaFormQuery: React.FC = () => {
render: (text, record) => ( render: (text, record) => (
<> <>
<EyePreview <EyePreview
type={AuthUrl('quotaFormQuery1.see', 'payandSettle') ? 'link' : 'button'}
url={`/memberCenter/payandSettle/creditManage/quotaFormQuery/detail?id=${record.id}&creditId=${record.creditId}`} url={`/memberCenter/payandSettle/creditManage/quotaFormQuery/detail?id=${record.id}&creditId=${record.creditId}`}
> >
{text} {text}
......
...@@ -40,6 +40,8 @@ import { listSearchSchema } from './schema'; ...@@ -40,6 +40,8 @@ import { listSearchSchema } from './schema';
import styles from './index.less'; import styles from './index.less';
const formActions = createFormActions(); const formActions = createFormActions();
import AuthButton from '@/components/AuthButton'
import { AuthUrl } from '@/components/AuthButton/AuthUrl'
const QuotaMenage: React.FC = () => { const QuotaMenage: React.FC = () => {
const intl = useIntl(); const intl = useIntl();
...@@ -107,6 +109,7 @@ const QuotaMenage: React.FC = () => { ...@@ -107,6 +109,7 @@ const QuotaMenage: React.FC = () => {
) : ( ) : (
<> <>
<EyePreview <EyePreview
type={AuthUrl('quotaMenage1.see', 'payandSettle') ? 'link' : 'button'}
url={`/memberCenter/payandSettle/creditManage/quotaMenage/detail?id=${record.id}`} url={`/memberCenter/payandSettle/creditManage/quotaMenage/detail?id=${record.id}`}
> >
{text} {text}
...@@ -195,12 +198,15 @@ const QuotaMenage: React.FC = () => { ...@@ -195,12 +198,15 @@ const QuotaMenage: React.FC = () => {
record.status === CREDIT_STATUS_NORMAL && record.status === CREDIT_STATUS_NORMAL &&
!!record.isCanApply !!record.isCanApply
) && ( ) && (
<Button <AuthButton btnCode='quotaMenage1.update' menuCode='update'>
type="link" <Button
onClick={() => handleAdjustment(record)} type="link"
> onClick={() => handleAdjustment(record)}
{intl.formatMessage({ id: 'payandSettle.creditManage.quotaMenage.defaultColumns.action.button.1' })} >
</Button> {intl.formatMessage({ id: 'payandSettle.creditManage.quotaMenage.defaultColumns.action.button.1' })}
</Button>
</AuthButton>
)} )}
{/* 暂时不做了 */} {/* 暂时不做了 */}
{/* <Button {/* <Button
...@@ -214,13 +220,15 @@ const QuotaMenage: React.FC = () => { ...@@ -214,13 +220,15 @@ const QuotaMenage: React.FC = () => {
record.status === CREDIT_STATUS_NORMAL || record.status === CREDIT_STATUS_NORMAL ||
record.status === CREDIT_STATUS_FROZEN record.status === CREDIT_STATUS_FROZEN
) && ( ) && (
<Button <AuthButton btnCode='quotaMenage1.frozen' menuCode='update'>
type="link" <Button
onClick={() => handleFrozen(record)} type="link"
danger onClick={() => handleFrozen(record)}
> danger
{record.status === CREDIT_STATUS_NORMAL ? intl.formatMessage({ id: 'payandSettle.creditManage.quotaMenage.defaultColumns.action.button.2' }) : intl.formatMessage({ id: 'payandSettle.creditManage.quotaMenage.defaultColumns.action.button.3' })} >
</Button> {record.status === CREDIT_STATUS_NORMAL ? intl.formatMessage({ id: 'payandSettle.creditManage.quotaMenage.defaultColumns.action.button.2' }) : intl.formatMessage({ id: 'payandSettle.creditManage.quotaMenage.defaultColumns.action.button.3' })}
</Button>
</AuthButton>
)} )}
</> </>
), ),
......
...@@ -24,6 +24,8 @@ import { ...@@ -24,6 +24,8 @@ import {
CREDIT_INNER_STATUS_BADGE_MAP, CREDIT_INNER_STATUS_BADGE_MAP,
} from '../../constant'; } from '../../constant';
import styles from './index.less'; import styles from './index.less';
import { AuthUrl } from '@/components/AuthButton/AuthUrl';
import AuthButton from '@/components/AuthButton'
const formActions = createFormActions(); const formActions = createFormActions();
...@@ -39,6 +41,7 @@ const QuotaPr1: React.FC = () => { ...@@ -39,6 +41,7 @@ const QuotaPr1: React.FC = () => {
render: (text, record) => ( render: (text, record) => (
<> <>
<EyePreview <EyePreview
type={AuthUrl('quotaPr1.see', 'payandSettle') ? 'link' : 'button'}
url={`/memberCenter/payandSettle/creditManage/quotaPr1/detail?id=${record.id}&creditId=${record.creditId}`} url={`/memberCenter/payandSettle/creditManage/quotaPr1/detail?id=${record.id}&creditId=${record.creditId}`}
> >
{text} {text}
...@@ -110,12 +113,15 @@ const QuotaPr1: React.FC = () => { ...@@ -110,12 +113,15 @@ const QuotaPr1: React.FC = () => {
align: 'center', align: 'center',
render: (text, record) => ( render: (text, record) => (
<> <>
<Button <AuthButton btnCode='quotaPr1.update' menuCode='payandSettle'>
type="link" <Button
onClick={() => history.push(`/memberCenter/payandSettle/creditManage/quotaPr1/verify?id=${record.id}&creditId=${record.creditId}`)} type="link"
> onClick={() => history.push(`/memberCenter/payandSettle/creditManage/quotaPr1/verify?id=${record.id}&creditId=${record.creditId}`)}
{intl.formatMessage({ id: 'payandSettle.creditManage.quotaPr1.verify' })} >
</Button> {intl.formatMessage({ id: 'payandSettle.creditManage.quotaPr1.verify' })}
</Button>
</AuthButton>
</> </>
), ),
}, },
......
...@@ -24,6 +24,8 @@ import { ...@@ -24,6 +24,8 @@ import {
CREDIT_INNER_STATUS_BADGE_MAP, CREDIT_INNER_STATUS_BADGE_MAP,
} from '../../constant'; } from '../../constant';
import styles from './index.less'; import styles from './index.less';
import { AuthUrl } from '@/components/AuthButton/AuthUrl';
import AuthButton from '@/components/AuthButton';
const formActions = createFormActions(); const formActions = createFormActions();
...@@ -39,6 +41,7 @@ const QuotaPr1: React.FC = () => { ...@@ -39,6 +41,7 @@ const QuotaPr1: React.FC = () => {
render: (text, record) => ( render: (text, record) => (
<> <>
<EyePreview <EyePreview
type={AuthUrl('quotaPr2.see', 'payandSettle') ? 'link' : 'button'}
url={`/memberCenter/payandSettle/creditManage/quotaPr2/detail?id=${record.id}&creditId=${record.creditId}`} url={`/memberCenter/payandSettle/creditManage/quotaPr2/detail?id=${record.id}&creditId=${record.creditId}`}
> >
{text} {text}
...@@ -110,12 +113,15 @@ const QuotaPr1: React.FC = () => { ...@@ -110,12 +113,15 @@ const QuotaPr1: React.FC = () => {
align: 'center', align: 'center',
render: (text, record) => ( render: (text, record) => (
<> <>
<Button <AuthButton btnCode='quotaPr2.update' menuCode='payandSettle'>
type="link" <Button
onClick={() => history.push(`/memberCenter/payandSettle/creditManage/quotaPr2/verify?id=${record.id}&creditId=${record.creditId}`)} type="link"
> onClick={() => history.push(`/memberCenter/payandSettle/creditManage/quotaPr2/verify?id=${record.id}&creditId=${record.creditId}`)}
{intl.formatMessage({ id: 'payandSettle.creditManage.quotaPr2.verify' })} >
</Button> {intl.formatMessage({ id: 'payandSettle.creditManage.quotaPr2.verify' })}
</Button>
</AuthButton>
</> </>
), ),
}, },
......
...@@ -24,6 +24,8 @@ import { ...@@ -24,6 +24,8 @@ import {
CREDIT_INNER_STATUS_BADGE_MAP, CREDIT_INNER_STATUS_BADGE_MAP,
} from '../../constant'; } from '../../constant';
import styles from './index.less'; import styles from './index.less';
import AuthButton from '@/components/AuthButton';
import { AuthUrl } from '@/components/AuthButton/AuthUrl';
const formActions = createFormActions(); const formActions = createFormActions();
...@@ -39,6 +41,7 @@ const QuotaPr3: React.FC = () => { ...@@ -39,6 +41,7 @@ const QuotaPr3: React.FC = () => {
render: (text, record) => ( render: (text, record) => (
<> <>
<EyePreview <EyePreview
type={AuthUrl('quotaPr3.see', 'payandSettle') ? 'link' : 'button'}
url={`/memberCenter/payandSettle/creditManage/quotaPr3/detail?id=${record.id}&creditId=${record.creditId}`} url={`/memberCenter/payandSettle/creditManage/quotaPr3/detail?id=${record.id}&creditId=${record.creditId}`}
> >
{text} {text}
...@@ -110,12 +113,15 @@ const QuotaPr3: React.FC = () => { ...@@ -110,12 +113,15 @@ const QuotaPr3: React.FC = () => {
align: 'center', align: 'center',
render: (text, record) => ( render: (text, record) => (
<> <>
<Button <AuthButton btnCode='quotaPr3.update' menuCode='payandSettle'>
type="link" <Button
onClick={() => history.push(`/memberCenter/payandSettle/creditManage/quotaPr3/verify?id=${record.id}&creditId=${record.creditId}`)} type="link"
> onClick={() => history.push(`/memberCenter/payandSettle/creditManage/quotaPr3/verify?id=${record.id}&creditId=${record.creditId}`)}
{intl.formatMessage({ id: 'payandSettle.creditManage.quotaPr3.verify' })} >
</Button> {intl.formatMessage({ id: 'payandSettle.creditManage.quotaPr3.verify' })}
</Button>
</AuthButton>
</> </>
), ),
}, },
......
...@@ -24,6 +24,8 @@ import { ...@@ -24,6 +24,8 @@ import {
CREDIT_INNER_STATUS_BADGE_MAP, CREDIT_INNER_STATUS_BADGE_MAP,
} from '../../constant'; } from '../../constant';
import styles from './index.less'; import styles from './index.less';
import { AuthUrl } from '@/components/AuthButton/AuthUrl';
import AuthButton from '@/components/AuthButton';
const formActions = createFormActions(); const formActions = createFormActions();
...@@ -39,6 +41,7 @@ const QuotaPrConfirm: React.FC = () => { ...@@ -39,6 +41,7 @@ const QuotaPrConfirm: React.FC = () => {
render: (text, record) => ( render: (text, record) => (
<> <>
<EyePreview <EyePreview
type={AuthUrl('quotaPrConfirm.see', 'payandSettle') ? 'link' : 'button'}
url={`/memberCenter/payandSettle/creditManage/quotaPrConfirm/detail?id=${record.id}&creditId=${record.creditId}`} url={`/memberCenter/payandSettle/creditManage/quotaPrConfirm/detail?id=${record.id}&creditId=${record.creditId}`}
> >
{text} {text}
...@@ -110,12 +113,15 @@ const QuotaPrConfirm: React.FC = () => { ...@@ -110,12 +113,15 @@ const QuotaPrConfirm: React.FC = () => {
align: 'center', align: 'center',
render: (text, record) => ( render: (text, record) => (
<> <>
<Button <AuthButton btnCode='quotaPrConfirm.update' menuCode='payandSettle'>
type="link" <Button
onClick={() => history.push(`/memberCenter/payandSettle/creditManage/quotaPrConfirm/verify?id=${record.id}&creditId=${record.creditId}`)} type="link"
> onClick={() => history.push(`/memberCenter/payandSettle/creditManage/quotaPrConfirm/verify?id=${record.id}&creditId=${record.creditId}`)}
{intl.formatMessage({ id: 'payandSettle.creditManage.quotaPrConfirm.verify' })} >
</Button> {intl.formatMessage({ id: 'payandSettle.creditManage.quotaPrConfirm.verify' })}
</Button>
</AuthButton>
</> </>
), ),
}, },
......
...@@ -6,6 +6,7 @@ import useCountDown from '@/utils/hooks'; ...@@ -6,6 +6,7 @@ import useCountDown from '@/utils/hooks';
import { PATTERN_MAPS } from '@/constants/regExp'; import { PATTERN_MAPS } from '@/constants/regExp';
import { postPayAllInPayPersonalCrate, postPayAllInPaySendVerificationCode } from '@/services/PayV2Api'; import { postPayAllInPayPersonalCrate, postPayAllInPaySendVerificationCode } from '@/services/PayV2Api';
import { useIntl } from 'umi'; import { useIntl } from 'umi';
import AuthButton from '@/components/AuthButton'
/** 个人 初始认证 */ /** 个人 初始认证 */
const Personal: React.FC<{}> = () => { const Personal: React.FC<{}> = () => {
...@@ -18,8 +19,8 @@ const Personal: React.FC<{}> = () => { ...@@ -18,8 +19,8 @@ const Personal: React.FC<{}> = () => {
const onFinish = async (values: any) => { const onFinish = async (values: any) => {
setLoading(true) setLoading(true)
const { code } = await postPayAllInPayPersonalCrate({...values, verificationCodeType: BIND_PHONE}, { ctlType: "none" }) const { code } = await postPayAllInPayPersonalCrate({ ...values, verificationCodeType: BIND_PHONE }, { ctlType: "none" })
if(code === 1000) { if (code === 1000) {
reloadFormData() reloadFormData()
message.success(intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.caozuochenggong', defaultMessage: '操作成功' })) message.success(intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.caozuochenggong', defaultMessage: '操作成功' }))
} else { } else {
...@@ -150,9 +151,12 @@ const Personal: React.FC<{}> = () => { ...@@ -150,9 +151,12 @@ const Personal: React.FC<{}> = () => {
</Form.Item> </Form.Item>
<Form.Item {...tailFormItemLayout}> <Form.Item {...tailFormItemLayout}>
<Button type="primary" htmlType="submit" loading={loading}> <AuthButton btnCode='eAccountApprove.Personalsubmit' menuCode='payandSettle'>
{intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.tijiao', defaultMessage: '提交' })} <Button type="primary" htmlType="submit" loading={loading}>
</Button> {intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.tijiao', defaultMessage: '提交' })}
</Button>
</AuthButton>
</Form.Item> </Form.Item>
</Form> </Form>
</MellowCard> </MellowCard>
......
...@@ -12,6 +12,7 @@ import ModalForm from '@/components/ModalForm' ...@@ -12,6 +12,7 @@ import ModalForm from '@/components/ModalForm'
import PhoneCode from '../phone' import PhoneCode from '../phone'
import { useAsyncSelect } from '@/formSchema/effects/useAsyncSelect' import { useAsyncSelect } from '@/formSchema/effects/useAsyncSelect'
import { useIntl } from 'umi' import { useIntl } from 'umi'
import AuthButton from '@/components/AuthButton'
const bindActions = createFormActions(); const bindActions = createFormActions();
...@@ -27,19 +28,19 @@ const PersonalFinish: React.FC<{}> = () => { ...@@ -27,19 +28,19 @@ const PersonalFinish: React.FC<{}> = () => {
const [extra, setExtra] = useState<string>() const [extra, setExtra] = useState<string>()
useEffect(() => { useEffect(() => {
if(data.contractNo) { if (data.contractNo) {
form.setFieldsValue({'contractNo': data.ContractNo}) form.setFieldsValue({ 'contractNo': data.ContractNo })
} }
}, [data]) }, [data])
const onFinish = async (values: any) => { const onFinish = async (values: any) => {
// 绑定银行卡 // 绑定银行卡
const p1 = await postPayAllInPayBindBankCard({phone: data.phone, verificationCode: values.captcha, cardNo: values.cardNo}, { ctlType: "none" }) const p1 = await postPayAllInPayBindBankCard({ phone: data.phone, verificationCode: values.captcha, cardNo: values.cardNo }, { ctlType: "none" })
// 进一步完善个人信息 // 进一步完善个人信息
const p2 = await postPayAllInPaySubmitPersonal({bankNo: values.cardNo, bankName: values.cardName}, {ctlType: "none"}) const p2 = await postPayAllInPaySubmitPersonal({ bankNo: values.cardNo, bankName: values.cardName }, { ctlType: "none" })
Promise.all([p1, p2]).then(res => { Promise.all([p1, p2]).then(res => {
if(res.every(item => item['code'] === 1000)) { if (res.every(item => item['code'] === 1000)) {
reloadFormData() reloadFormData()
message.success(intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.caozuochenggong', defaultMessage: '操作成功' })) message.success(intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.caozuochenggong', defaultMessage: '操作成功' }))
ctl.setFinish(true) // 已经完善 ctl.setFinish(true) // 已经完善
...@@ -54,8 +55,8 @@ const PersonalFinish: React.FC<{}> = () => { ...@@ -54,8 +55,8 @@ const PersonalFinish: React.FC<{}> = () => {
}; };
const clickSign = async () => { const clickSign = async () => {
const { code, data } = await postPayAllInPaySignContract({jumpPageType:1}, { ctlType: "none" }) const { code, data } = await postPayAllInPaySignContract({ jumpPageType: 1 }, { ctlType: "none" })
if(code === 1000) { if (code === 1000) {
var signLink = document.getElementById('signLink') var signLink = document.getElementById('signLink')
signLink.setAttribute('href', data) signLink.setAttribute('href', data)
signLink.click() signLink.click()
...@@ -86,7 +87,7 @@ const PersonalFinish: React.FC<{}> = () => { ...@@ -86,7 +87,7 @@ const PersonalFinish: React.FC<{}> = () => {
identityType: data.cardType, identityType: data.cardType,
identityNo: data.cardNo, identityNo: data.cardNo,
}) })
if(res.code === 1000) { if (res.code === 1000) {
setExtra(`${intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.yijiangyanzhengma', defaultMessage: '已将验证码发送至您尾号为' })}${data.phone.substr(7, 4)}${intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.deshoujihao', defaultMessage: '的手机号' })}`) setExtra(`${intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.yijiangyanzhengma', defaultMessage: '已将验证码发送至您尾号为' })}${data.phone.substr(7, 4)}${intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.deshoujihao', defaultMessage: '的手机号' })}`)
start() start()
reloadFormData() reloadFormData()
...@@ -95,8 +96,8 @@ const PersonalFinish: React.FC<{}> = () => { ...@@ -95,8 +96,8 @@ const PersonalFinish: React.FC<{}> = () => {
} }
const contractPreview = async () => { const contractPreview = async () => {
const {code, data} = await postPayAllInPaySignContractQuery({jumpPageType:1}, { ctlType: 'none' }) const { code, data } = await postPayAllInPaySignContractQuery({ jumpPageType: 1 }, { ctlType: 'none' })
if(code === 1000) { if (code === 1000) {
var signLink = document.getElementById('signPrewview') var signLink = document.getElementById('signPrewview')
signLink.setAttribute('href', data) signLink.setAttribute('href', data)
signLink.click() signLink.click()
...@@ -110,10 +111,10 @@ const PersonalFinish: React.FC<{}> = () => { ...@@ -110,10 +111,10 @@ const PersonalFinish: React.FC<{}> = () => {
// 绑定解绑手机 // 绑定解绑手机
const handleBindSubmit = () => { const handleBindSubmit = () => {
const fn = data?.phone ? postPayAllInPayUnbindPhone : postPayAllInPayBindPhone const fn = data?.phone ? postPayAllInPayUnbindPhone : postPayAllInPayBindPhone
bindActions.submit().then(async ({values}: any) => { bindActions.submit().then(async ({ values }: any) => {
setBindLoading(true) setBindLoading(true)
fn(values).then(res => { fn(values).then(res => {
if(res.code === 1000) { if (res.code === 1000) {
reloadFormData() reloadFormData()
} }
}).finally(() => { }).finally(() => {
...@@ -129,8 +130,8 @@ const PersonalFinish: React.FC<{}> = () => { ...@@ -129,8 +130,8 @@ const PersonalFinish: React.FC<{}> = () => {
icon: <ExclamationCircleOutlined />, icon: <ExclamationCircleOutlined />,
content: intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.shifouquedingjie', defaultMessage: '是否确定解绑该银行卡?' }), content: intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.shifouquedingjie', defaultMessage: '是否确定解绑该银行卡?' }),
onOk() { onOk() {
postPayAllInPayUnbindBankCard({cardNo: data.bankNo}).then(({code, data}) => { postPayAllInPayUnbindBankCard({ cardNo: data.bankNo }).then(({ code, data }) => {
if(code === 1000) { if (code === 1000) {
reloadFormData() reloadFormData()
// 解绑后需要完善信息 并显示返回图标 // 解绑后需要完善信息 并显示返回图标
ctl.setPerfection(true) ctl.setPerfection(true)
...@@ -143,183 +144,185 @@ const PersonalFinish: React.FC<{}> = () => { ...@@ -143,183 +144,185 @@ const PersonalFinish: React.FC<{}> = () => {
return (<div> return (<div>
{!perfection ? <div> {!perfection ? <div>
<MellowCard headStyle={{borderBottom:'none'}} title={intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.gerenxinxi', defaultMessage: '个人信息' })} id="personalInfo"> <MellowCard headStyle={{ borderBottom: 'none' }} title={intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.gerenxinxi', defaultMessage: '个人信息' })} id="personalInfo">
<Row> <Row>
<Col span={12}> <Col span={12}>
<Row className={styles['card-list']}> <Row className={styles['card-list']}>
<Col span={6} className={styles['card-list_title']}>{intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.xingming', defaultMessage: '姓名' })}</Col> <Col span={6} className={styles['card-list_title']}>{intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.xingming', defaultMessage: '姓名' })}</Col>
<Col>{data.name}</Col> <Col>{data.name}</Col>
</Row> </Row>
</Col> </Col>
<Col span={12}> <Col span={12}>
<Row className={styles['card-list']}> <Row className={styles['card-list']}>
<Col span={6} className={styles['card-list_title']}>{intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.zhengjianleixing', defaultMessage: '证件类型' })}</Col> <Col span={6} className={styles['card-list_title']}>{intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.zhengjianleixing', defaultMessage: '证件类型' })}</Col>
<Col>{data.cardType === 1 ? intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.shenfenzheng', defaultMessage: '身份证' }) : '' }</Col> <Col>{data.cardType === 1 ? intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.shenfenzheng', defaultMessage: '身份证' }) : ''}</Col>
</Row> </Row>
</Col> </Col>
</Row> </Row>
<Row> <Row>
<Col span={12}> <Col span={12}>
<Row className={styles['card-list']}> <Row className={styles['card-list']}>
<Col span={6} className={styles['card-list_title']}>{intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.zhengjianhaoma', defaultMessage: '证件号码' })}</Col> <Col span={6} className={styles['card-list_title']}>{intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.zhengjianhaoma', defaultMessage: '证件号码' })}</Col>
<Col>{data.cardNo}</Col> <Col>{data.cardNo}</Col>
</Row> </Row>
</Col> </Col>
<Col span={12}> <Col span={12}>
<Row className={styles['card-list']}> <Row className={styles['card-list']}>
<Col span={6} className={styles['card-list_title']}>{intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.shoujihao', defaultMessage: '手机号' })}</Col> <Col span={6} className={styles['card-list_title']}>{intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.shoujihao', defaultMessage: '手机号' })}</Col>
<Col><p><span>{data.phone || intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.zanwu', defaultMessage: '暂无' })}</span><Button type="link" onClick={handleBind}>{data.phone ? intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.jiebang', defaultMessage: '解绑' }) : intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.bangding', defaultMessage: '绑定' })}</Button></p></Col> <Col><p><span>{data.phone || intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.zanwu', defaultMessage: '暂无' })}</span><Button type="link" onClick={handleBind}>{data.phone ? intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.jiebang', defaultMessage: '解绑' }) : intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.bangding', defaultMessage: '绑定' })}</Button></p></Col>
</Row> </Row>
</Col> </Col>
</Row> </Row>
</MellowCard>
{
data.bankNo ? <>
<MellowCard headStyle={{borderBottom:'none'}} style={{marginTop: 16}} title={intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.yinhangzhanghu', defaultMessage: '银行账户' })} id="accountInfo">
<Row>
<Col span={12}>
<Row className={styles['card-list']}>
<Col span={6} className={styles['card-list_title']}>{intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.yinhangzhanghao', defaultMessage: '银行账号' })}</Col>
<Col><p><span>{data.bankNo || intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.zanwu', defaultMessage: '暂无' })}</span><Button type="link" onClick={unbindBlank}>{intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.jiebang', defaultMessage: '解绑' })}</Button></p></Col>
</Row>
</Col>
<Col span={12}>
<Row className={styles['card-list']}>
<Col span={6} className={styles['card-list_title']}>{intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.kaihuhang', defaultMessage: '开户行' })}</Col>
<Col>{data.bankName}</Col>
</Row>
</Col>
</Row>
</MellowCard>
<MellowCard headStyle={{ borderBottom: 'none' }} style={{ marginTop: 16 }} title={intl.formatMessage({ id: 'payandSettle.eAccountApprove.components.personalFinish.mellowCard.3' })} id="electricInfo">
<Row className={styles['card-list']}>
<Col span={6} className={styles['card-list_title']}>{intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.dianzixieyi', defaultMessage: '电子协议' })}</Col>
<Col><p><span>{data.contractNo}</span><Button type="link" onClick={contractPreview}>{intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.zhakanqianyuexie', defaultMessage: '查看签约协议' })}</Button></p></Col>
</Row>
</MellowCard>
</>
:
<MellowCard headStyle={{borderBottom:'none'}} style={{marginTop: 16}} title="">
<h3><SoundOutlined style={{color:'#00A98F'}} /> {intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.jinyibuwanshan', defaultMessage: '进一步完善资料,可实现提现功能~' })}</h3>
<Button type="primary" onClick={handleFinish}>{intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.lijiwanshan', defaultMessage: '立即完善' })}</Button>
</MellowCard> </MellowCard>
} {
</div> data.bankNo ? <>
: <MellowCard headStyle={{ borderBottom: 'none' }} style={{ marginTop: 16 }} title={intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.yinhangzhanghu', defaultMessage: '银行账户' })} id="accountInfo">
<div> <Row>
<MellowCard headStyle={{borderBottom:'none'}} title={intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.wanshanxinxi', defaultMessage: '完善信息' })}> <Col span={12}>
<Form <Row className={styles['card-list']}>
{...formItemLayout} <Col span={6} className={styles['card-list_title']}>{intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.yinhangzhanghao', defaultMessage: '银行账号' })}</Col>
form={form} <Col><p><span>{data.bankNo || intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.zanwu', defaultMessage: '暂无' })}</span><Button type="link" onClick={unbindBlank}>{intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.jiebang', defaultMessage: '解绑' })}</Button></p></Col>
name="perfection-form" </Row>
onFinish={onFinish} </Col>
initialValues={{ <Col span={12}>
prefix: '86', <Row className={styles['card-list']}>
}} <Col span={6} className={styles['card-list_title']}>{intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.kaihuhang', defaultMessage: '开户行' })}</Col>
scrollToFirstError <Col>{data.bankName}</Col>
colon={false} </Row>
labelAlign='left' </Col>
> </Row>
<Form.Item </MellowCard>
name="cardNo" <MellowCard headStyle={{ borderBottom: 'none' }} style={{ marginTop: 16 }} title={intl.formatMessage({ id: 'payandSettle.eAccountApprove.components.personalFinish.mellowCard.3' })} id="electricInfo">
label={intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.yinhangzhanghao', defaultMessage: '银行账号' })} <Row className={styles['card-list']}>
rules={[ <Col span={6} className={styles['card-list_title']}>{intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.dianzixieyi', defaultMessage: '电子协议' })}</Col>
{ <Col><p><span>{data.contractNo}</span><Button type="link" onClick={contractPreview}>{intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.zhakanqianyuexie', defaultMessage: '查看签约协议' })}</Button></p></Col>
required: true, </Row>
message: intl.formatMessage({ id: 'payandSettle.eAccountApprove.components.personalFinish.mellowCard.4.name.message' }), </MellowCard>
}, </>
]} :
> <MellowCard headStyle={{ borderBottom: 'none' }} style={{ marginTop: 16 }} title="">
<Input placeholder={intl.formatMessage({ id: 'payandSettle.eAccountApprove.components.personalFinish.mellowCard.4.name.placeholder' })} /> <h3><SoundOutlined style={{ color: '#00A98F' }} /> {intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.jinyibuwanshan', defaultMessage: '进一步完善资料,可实现提现功能~' })}</h3>
</Form.Item> <Button type="primary" onClick={handleFinish}>{intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.lijiwanshan', defaultMessage: '立即完善' })}</Button>
</MellowCard>
}
</div>
:
<div>
<MellowCard headStyle={{ borderBottom: 'none' }} title={intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.wanshanxinxi', defaultMessage: '完善信息' })}>
<Form
{...formItemLayout}
form={form}
name="perfection-form"
onFinish={onFinish}
initialValues={{
prefix: '86',
}}
scrollToFirstError
colon={false}
labelAlign='left'
>
<Form.Item
name="cardNo"
label={intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.yinhangzhanghao', defaultMessage: '银行账号' })}
rules={[
{
required: true,
message: intl.formatMessage({ id: 'payandSettle.eAccountApprove.components.personalFinish.mellowCard.4.name.message' }),
},
]}
>
<Input placeholder={intl.formatMessage({ id: 'payandSettle.eAccountApprove.components.personalFinish.mellowCard.4.name.placeholder' })} />
</Form.Item>
<Form.Item <Form.Item
name="cardName" name="cardName"
label={intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.kaihuhang', defaultMessage: '开户行' })} label={intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.kaihuhang', defaultMessage: '开户行' })}
rules={[ rules={[
{ {
required: true, required: true,
message: intl.formatMessage({ id: 'payandSettle.eAccountApprove.components.personalFinish.mellowCard.4.idcard.message' }), message: intl.formatMessage({ id: 'payandSettle.eAccountApprove.components.personalFinish.mellowCard.4.idcard.message' }),
}, },
]} ]}
> >
<Input placeholder={intl.formatMessage({ id: 'payandSettle.eAccountApprove.components.personalFinish.mellowCard.4.idcard.placeholder' })} /> <Input placeholder={intl.formatMessage({ id: 'payandSettle.eAccountApprove.components.personalFinish.mellowCard.4.idcard.placeholder' })} />
</Form.Item> </Form.Item>
<Form.Item label={intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.yanzhengma', defaultMessage: '验证码' })} extra={extra}> <Form.Item label={intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.yanzhengma', defaultMessage: '验证码' })} extra={extra}>
<Row gutter={8}> <Row gutter={8}>
<Col span={20}> <Col span={20}>
<Form.Item <Form.Item
name="captcha" name="captcha"
noStyle noStyle
rules={[ rules={[
{ {
required: true, required: true,
message: intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.qingshuruyanzheng', defaultMessage: '请输入验证码' }) message: intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.qingshuruyanzheng', defaultMessage: '请输入验证码' })
}, },
// { // {
// pattern: /^\d{6}$/, // pattern: /^\d{6}$/,
// message: '请输入正确的6位验证码' // message: '请输入正确的6位验证码'
// } // }
]} ]}
> >
<Input placeholder={intl.formatMessage({ id: 'payandSettle.eAccountApprove.components.personalFinish.mellowCard.4.captcha.placeholder' })} /> <Input placeholder={intl.formatMessage({ id: 'payandSettle.eAccountApprove.components.personalFinish.mellowCard.4.captcha.placeholder' })} />
</Form.Item> </Form.Item>
</Col> </Col>
<Col span={4}> <Col span={4}>
<Button disabled={isActive} onClick={handleSendSMS}>{text}</Button> <Button disabled={isActive} onClick={handleSendSMS}>{text}</Button>
</Col> </Col>
</Row> </Row>
</Form.Item> </Form.Item>
<Form.Item <Form.Item
label={intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.dianzixieyiqian', defaultMessage: '电子协议签约' })} label={intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.dianzixieyiqian', defaultMessage: '电子协议签约' })}
name="contractNo" name="contractNo"
// rules={[{ required: true, message: '请签约电子协议' }]} // rules={[{ required: true, message: '请签约电子协议' }]}
> >
{ data.contractNo ? data.contractNo : (<Button onClick={clickSign} icon={<EditOutlined />} style={{width: '100%'}}>{intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.qianwangqianyue', defaultMessage: '前往签约' })}</Button>)} {data.contractNo ? data.contractNo : (<Button onClick={clickSign} icon={<EditOutlined />} style={{ width: '100%' }}>{intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.qianwangqianyue', defaultMessage: '前往签约' })}</Button>)}
</Form.Item> </Form.Item>
<Form.Item {...tailFormItemLayout}> <Form.Item {...tailFormItemLayout}>
<Button type="primary" htmlType="submit" loading={loading}> <AuthButton btnCode='eAccountApprove.PersonalFinish' menuCode='payandSettle'>
{intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.tijiao', defaultMessage: '提交' })} <Button type="primary" htmlType="submit" loading={loading}>
</Button> {intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.tijiao', defaultMessage: '提交' })}
</Form.Item> </Button>
</Form> </AuthButton>
</MellowCard> </Form.Item>
</div>} </Form>
<ModalForm </MellowCard>
modalTitle={data?.phone ? intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.jiebangshoujihao', defaultMessage: '解绑手机号' }) : intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.bangdingxinshouji', defaultMessage: '绑定新手机号' })} </div>}
currentRef={bindRef} <ModalForm
confirm={handleBindSubmit} modalTitle={data?.phone ? intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.jiebangshoujihao', defaultMessage: '解绑手机号' }) : intl.formatMessage({ id: 'payandSettle.capitalAccounts.eAccount.bangdingxinshouji', defaultMessage: '绑定新手机号' })}
actions={bindActions} currentRef={bindRef}
schema={data?.phone ? unbindSchema : bindSchema} confirm={handleBindSubmit}
modalProps={{confirmLoading: bindLoading, destroyOnClose: true}} actions={bindActions}
components={{PhoneCode}} schema={data?.phone ? unbindSchema : bindSchema}
effects={($, actions) => { modalProps={{ confirmLoading: bindLoading, destroyOnClose: true }}
useAsyncSelect('areaCode', fetchTelCode) components={{ PhoneCode }}
$('onFormInit').subscribe(() => { effects={($, actions) => {
if(data?.phone) { useAsyncSelect('areaCode', fetchTelCode)
actions.setFieldValue('phone', data.phone) $('onFormInit').subscribe(() => {
actions.setFieldState('verificationCode', state => { if (data?.phone) {
state.props['x-component-props']['type'] = UNBIND_PHONE actions.setFieldValue('phone', data.phone)
}) actions.setFieldState('verificationCode', state => {
actions.setFieldState('phone', state => { state.props['x-component-props']['type'] = UNBIND_PHONE
state.props['x-component-props']['disabled'] = true })
}) actions.setFieldState('phone', state => {
} else { state.props['x-component-props']['disabled'] = true
actions.setFieldState('phone', state => { })
state.props['x-component-props']['disabled'] = false } else {
}) actions.setFieldState('phone', state => {
actions.setFieldState('verificationCode', state => { state.props['x-component-props']['disabled'] = false
state.props['x-component-props']['type'] = BIND_PHONE })
}) actions.setFieldState('verificationCode', state => {
} state.props['x-component-props']['type'] = BIND_PHONE
}) })
}} }
/> })
<a href="" target="_blank" id="signLink" style={{display: 'none', visibility: "hidden"}}></a> }}
<a href="" target="_blank" id="signPrewview" style={{display: 'none', visibility: "hidden"}}></a> />
<a href="" target="_blank" id="signLink" style={{ display: 'none', visibility: "hidden" }}></a>
<a href="" target="_blank" id="signPrewview" style={{ display: 'none', visibility: "hidden" }}></a>
</div>) </div>)
} }
......
...@@ -18,6 +18,7 @@ import { PageHeaderWrapper } from '@ant-design/pro-layout'; ...@@ -18,6 +18,7 @@ import { PageHeaderWrapper } from '@ant-design/pro-layout';
import NumberInput from './components/number'; import NumberInput from './components/number';
import { getOrderMemberPaymentParameterFind, postOrderMemberPaymentParameterCreate } from '@/services/OrderNewV2Api'; import { getOrderMemberPaymentParameterFind, postOrderMemberPaymentParameterCreate } from '@/services/OrderNewV2Api';
import PayEmptyLayout from './payEmpty'; import PayEmptyLayout from './payEmpty';
import AuthButton from '@/components/AuthButton'
const PIC_MAP = { const PIC_MAP = {
1: alipay, 1: alipay,
...@@ -289,13 +290,16 @@ const PaySettingLayout = () => { ...@@ -289,13 +290,16 @@ const PaySettingLayout = () => {
detail={intl.formatMessage({ id: 'payandSettle.paySetting.detail' })} detail={intl.formatMessage({ id: 'payandSettle.paySetting.detail' })}
tabLink={tabLink} tabLink={tabLink}
effect={ effect={
<Button <AuthButton btnCode='payParamsSetting.update' menuCode='payandSettle'>
type="primary" <Button
icon={<SaveOutlined />} type="primary"
onClick={handleSubmit} icon={<SaveOutlined />}
> onClick={handleSubmit}
{intl.formatMessage({ id: 'payandSettle.paySetting.effect' })} >
</Button> {intl.formatMessage({ id: 'payandSettle.paySetting.effect' })}
</Button>
</AuthButton>
} }
components={ components={
<Fragment> <Fragment>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment