Commit 63517686 authored by XieZhiXiong's avatar XieZhiXiong

关闭按钮判断条件

parent 97ac30eb
...@@ -30,6 +30,13 @@ const memberAbility = ...@@ -30,6 +30,13 @@ const memberAbility =
component: '@/pages/member/memberMaintain/memberDetail', component: '@/pages/member/memberMaintain/memberDetail',
}, },
{ {
path: '/memberAbility/manage/frozen',
name: 'maintainFrozen',
key: 'maintainFrozen',
hideInMenu: true,
component: '@/pages/member/memberMaintain/frozen',
},
{
path: '/memberAbility/manage/memberPrSubmit', path: '/memberAbility/manage/memberPrSubmit',
name: 'memberPrSubmit', name: 'memberPrSubmit',
component: '@/pages/member/memberPrSubmit/index', component: '@/pages/member/memberPrSubmit/index',
......
/* /*
* @Author: LeeJiancong * @Author: LeeJiancong
* @Date: 2020-08-04 15:05:52 * @Date: 2020-08-04 15:05:52
* @LastEditors: LeeJiancong * @LastEditors: XieZhiXiong
* @LastEditTime: 2020-08-07 16:07:31 * @LastEditTime: 2020-09-10 11:28:44
*/ */
import utils from '@/utils' import utils from '@/utils'
import menu from '../en-US/menu' import menu from '../en-US/menu'
...@@ -62,6 +62,7 @@ export default { ...@@ -62,6 +62,7 @@ export default {
'menu.memberAbility.memberMaintain': '会员维护', 'menu.memberAbility.memberMaintain': '会员维护',
'menu.memberAbility.addMember': '新增会员', 'menu.memberAbility.addMember': '新增会员',
'menu.memberAbility.memberDetail': '会员详情', 'menu.memberAbility.memberDetail': '会员详情',
'menu.memberAbility.maintainFrozen': '会员冻结',
'menu.memberAbility.memberPrSubmit': '待提交审核', 'menu.memberAbility.memberPrSubmit': '待提交审核',
'menu.memberAbility.auditPrSubmit': '待提交审核详情', 'menu.memberAbility.auditPrSubmit': '待提交审核详情',
'menu.memberAbility.memberPr1': '待审核(一级)', 'menu.memberAbility.memberPr1': '待审核(一级)',
......
import React, { useState, useEffect } from 'react';
import { history } from 'umi';
import { PageHeaderWrapper } from '@ant-design/pro-layout';
import { PageHeader, Tag, Descriptions, Button, Modal, Badge, Spin } from 'antd';
import { SettingOutlined, StopOutlined } from '@ant-design/icons';
import { createFormActions, FormEffectHooks } from '@formily/antd';
import { STATUS_COLOR_MAP, STATUS_COLOR_TXT } from '../constant';
import { usePageStatus } from '@/hooks/usePageStatus';
import { PublicApi } from '@/services/api';
import { GetMemberMaintenanceDetailBasicResponse } from '@/services/MemberApi';
import {
MEMBER_STATUS_NORMAL,
MEMBER_STATUS_FROZEN,
MEMBER_OUTER_STATUS,
} from '@/constants';
import NiceForm from '@/components/NiceForm';
import { auditModalSchema } from './schema';
import {
MEMBER_STATUS_TAG_MAP,
MEMBER_INNER_STATUS_BADGE_COLOR,
MEMBER_OUTER_STATUS_TYPE,
} from '../constant';
import HeadInfo from '../components/HeadInfo';
import AuditProcess from '../components/AuditProcess';
import BasicInfo from '../components/BasicInfo';
import StatusTag from '../components/StatusTag';
import styles from './index.less';
const formActions = createFormActions();
const Frozen: React.FC<{}> = () => {
const { pageStatus, id, validateId } = usePageStatus();
const [basicInfo, setBasicInfo] = useState<GetMemberMaintenanceDetailBasicResponse>();
const [modalVisible, setModalVisible] = useState(false);
const [infoLoading, setInfoLoaading] = useState(false);
const [confirmLoading, setConfirmLoading] = useState(false);
const getBasicInfo = () => {
if (!id || !validateId) {
return;
}
setInfoLoaading(true);
PublicApi.getMemberMaintenanceDetailBasic({
memberId: id,
validateId,
}).then(res => {
if (res.code === 1000) {
setBasicInfo(res.data);
}
}).finally(() => {
setInfoLoaading(false);
});
};
useEffect(() => {
getBasicInfo();
}, []);
// 冻结与解冻
const handleSubmit = (values: { reason: string }, oldStatus) => {
setConfirmLoading(true);
return PublicApi.postMemberMaintenanceStatus({
memberId: id,
validateId: validateId,
status: oldStatus === MEMBER_STATUS_NORMAL ? MEMBER_STATUS_FROZEN : MEMBER_STATUS_NORMAL,
remark: values.reason || '',
}).then(res => {
if (res.code !== 1000) {
return;
}
setModalVisible(false);
getBasicInfo();
}).finally(() => {
setConfirmLoading(false);
});
};
return (
<Spin spinning={infoLoading}>
<PageHeaderWrapper
title={
<>
<PageHeader
style={{ padding: '0' }}
onBack={() => history.goBack()}
title={
<HeadInfo
info={{
name: basicInfo?.name,
level: 1,
}}
/>
}
extra={(
<>
{basicInfo && (
basicInfo.status === MEMBER_STATUS_NORMAL ? (
<Button
icon={<StopOutlined />}
onClick={() => setModalVisible(true)}
>
冻结
</Button>
) : (
<Button
type="primary"
icon={<SettingOutlined />}
onClick={() => setModalVisible(true)}
>
解冻
</Button>
)
)}
</>
)}
>
<Descriptions
size="small"
column={3}
style={{
padding: '0 32px',
}}
>
<Descriptions.Item label="会员类型">{basicInfo?.memberTypeName}</Descriptions.Item>
<Descriptions.Item label="会员角色" span={2}>{basicInfo?.roleName}</Descriptions.Item>
<Descriptions.Item label="会员状态">
<StatusTag type={MEMBER_STATUS_TAG_MAP[basicInfo?.status]} title={basicInfo?.statusName} />
</Descriptions.Item>
<Descriptions.Item label="外部状态">
<StatusTag type={MEMBER_OUTER_STATUS_TYPE[basicInfo?.outerStatus]} title={basicInfo?.outerStatusName} />
</Descriptions.Item>
<Descriptions.Item label="内部状态">
<Badge color={MEMBER_INNER_STATUS_BADGE_COLOR[basicInfo?.innerStatus]} text={basicInfo?.innerStatusName} />
</Descriptions.Item>
</Descriptions>
</PageHeader>
</>
}
>
<div
style={{
marginBottom: 24,
}}
>
<AuditProcess
outerVerifyCurrent={basicInfo?.currentOuterStep}
innerVerifyCurrent={basicInfo?.currentInnerStep}
outerVerifySteps={basicInfo?.outerVerifySteps}
innerVerifySteps={basicInfo?.innerVerifySteps}
/>
</div>
<BasicInfo
basic={{
account: basicInfo?.account,
phone: basicInfo?.phone,
email: basicInfo?.email,
created: basicInfo?.createTime,
}}
channel={{
memberType: basicInfo?.memberTypeEnum,
level: basicInfo?.channelLevelTag,
type: basicInfo?.channelTypeName,
areas: basicInfo?.areas,
desc: basicInfo?.remark,
}}
extra={basicInfo?.groups}
outerHistory={basicInfo?.outerHistory}
innerHistory={basicInfo?.innerHistory}
/>
<Modal
title={basicInfo ? basicInfo.status === MEMBER_STATUS_NORMAL ? '会员冻结' : '会员解冻' : ''}
visible={modalVisible}
confirmLoading={confirmLoading}
onOk={() => formActions.submit()}
onCancel={() => setModalVisible(false)}
destroyOnClose
>
<NiceForm
previewPlaceholder="' '"
effects={($, { setFieldState }) => {
FormEffectHooks.onFieldInit$('reason').subscribe(state => {
setFieldState('reason', fieldState => {
fieldState.props.title = basicInfo ? `会员${basicInfo.status === MEMBER_STATUS_NORMAL ? '冻结' : '解冻'}原因` : '';
});
});
}}
actions={formActions}
schema={auditModalSchema}
onSubmit={value => handleSubmit(value, basicInfo.status)}
/>
</Modal>
</PageHeaderWrapper>
</Spin>
);
};
export default Frozen;
import React, { ReactNode, useState, useRef } from 'react'; import React, { ReactNode, useState, useRef } from 'react';
import { history } from 'umi'; import { history, Link } from 'umi';
import { import {
Card, Card,
Space, Space,
...@@ -8,7 +8,8 @@ import { ...@@ -8,7 +8,8 @@ import {
Popconfirm, Popconfirm,
Dropdown, Dropdown,
Badge, Badge,
Modal, Modal,
message,
} from 'antd'; } from 'antd';
import { import {
PlusOutlined, PlusOutlined,
...@@ -25,23 +26,49 @@ import UploadModal from '@/components/UploadModal'; ...@@ -25,23 +26,49 @@ import UploadModal from '@/components/UploadModal';
import NiceForm from '@/components/NiceForm'; import NiceForm from '@/components/NiceForm';
import { useStateFilterSearchLinkageEffect } from '@/formSchema/effects/useFilterSearch'; import { useStateFilterSearchLinkageEffect } from '@/formSchema/effects/useFilterSearch';
import { FORM_FILTER_PATH } from '@/formSchema/const'; import { FORM_FILTER_PATH } from '@/formSchema/const';
import { importSchema, auditModalSchema } from './schema';
import { useAsyncInitSelect } from '@/formSchema/effects/useAsyncInitSelect'; import { useAsyncInitSelect } from '@/formSchema/effects/useAsyncInitSelect';
import { PublicApi } from '@/services/api'; import { PublicApi } from '@/services/api';
import {
MEMBER_STATUS_NORMAL,
MEMBER_INNER_STATUS_SUCCESS,
MEMBER_OUTER_STATUS_SUCCESS,
MEMBER_OUTER_STATUS_UNCOMMITTED,
MEMBER_OUTER_STATUS_FAILED,
} from '@/constants';
import { importSchema, auditModalSchema } from './schema';
import {
MEMBER_STATUS_TAG_MAP,
MEMBER_INNER_STATUS_BADGE_COLOR,
MEMBER_OUTER_STATUS_TYPE,
} from '../constant';
import { coverColFiltersItem } from '../utils';
import StatusTag from '../components/StatusTag';
const formActions = createFormActions(); const formActions = createFormActions();
const fetchData = async (params: any) => {
let res = await PublicApi.getMemberMaintenancePage(params);
return res.data;
};
const memberMaintain: React.FC<[]> = () => { const memberMaintain: React.FC<[]> = () => {
const ref = useRef<any>({}); const ref = useRef<any>({});
const [selectedRowKeys, setSelectedRowKeys] = useState<Array<string>>([]);
const [visibleModal, setVisibleModal] = useState(false); const [visibleModal, setVisibleModal] = useState(false);
const [modalVisible, setModalVisible] = useState(false);
const [currentItem, setCurrentItem] = useState<any>({}); const fetchData = async (params: any) => {
let res = await PublicApi.getMemberMaintenancePage(params);
return res.data;
};
const handleDelete = (memberId: number, validateId: number) => {
const mesInstance = message.loading('功能暂时没有,敬请期待');
// PublicApi.postMemberAbilitySubDelete({
// memberId,
// validateId,
// }).then(res => {
// if (res.code !== 1000) {
// return;
// }
// ref.current.reload();
// }).finally(() => {
// mesInstance();
// });
};
const defaultColumns: ColumnType<any>[] = [ const defaultColumns: ColumnType<any>[] = [
{ {
...@@ -99,90 +126,85 @@ const memberMaintain: React.FC<[]> = () => { ...@@ -99,90 +126,85 @@ const memberMaintain: React.FC<[]> = () => {
title: '会员状态', title: '会员状态',
dataIndex: 'statusName', dataIndex: 'statusName',
align: 'center', align: 'center',
key: 'statusName',
filters: [], filters: [],
// filteredValue: searchForm.memberStatus || ['0'], onFilter: (value, record) => record.status === value,
filterMultiple: false, render: (text, record) => (
render: (text: any, record: any) => ( <StatusTag type={MEMBER_STATUS_TAG_MAP[record.status]} title={text} />
<StatusSwitch
handleConfirm={() => handleModify(record)}
record={record}
fieldNames="status"
/>
), ),
}, },
{ {
title: '外部状态', title: '外部状态',
dataIndex: 'outerStatusName', dataIndex: 'outerStatusName',
align: 'center', align: 'center',
key: 'outerStatus',
filters: [], filters: [],
// filteredValue: searchForm.outerStatus || ['0'], onFilter: (value, record) => record.outerStatus === value,
filterMultiple: false, render: (text, record) => (
render: (text: any, record: any) => <span>{text}</span>, <StatusTag type={MEMBER_OUTER_STATUS_TYPE[record.outerStatus]} title={text} />
),
}, },
{ {
title: '内部状态', title: '内部状态',
dataIndex: 'innerStatusName', dataIndex: 'innerStatusName',
align: 'center', align: 'center',
key: 'innerStatus',
filters: [], filters: [],
// filteredValue: searchForm.innerStatus || ['0'], onFilter: (value, record) => record.innerStatus === value,
filterMultiple: false, render: (text, record) => <Badge color={MEMBER_INNER_STATUS_BADGE_COLOR[record.innerStatus]} text={text} />,
render: (text: any, record: any) => <Badge color="#FFC400" text={text} />,
}, },
{ {
title: '操作', title: '操作',
dataIndex: 'option', dataIndex: 'option',
align: 'center', align: 'center',
render: (text: any, record: any) => { render: (text: any, record: any) => (
let component: ReactNode = null; <>
component = ( {(
<> record.innerStatus === MEMBER_INNER_STATUS_SUCCESS &&
{record.innerStatusName === '审核通过' ? ( record.outerStatus === MEMBER_OUTER_STATUS_SUCCESS
) && (
<Link to={`/memberAbility/manage/frozen?id=${record.memberId}&validateId=${record.validateId}`}>
<Button
type="link"
>
{record.status === MEMBER_STATUS_NORMAL ? '冻结' : '解冻'}
</Button>
</Link>
)}
{/* 外部审核状态等于 待提交 或者 审核失败 可进行编辑操作 */}
{(
record.outerStatus === MEMBER_OUTER_STATUS_UNCOMMITTED ||
record.outerStatus === MEMBER_OUTER_STATUS_FAILED
) && (
<>
<Button <Button
type="link" type="link"
onClick={() => { onClick={() =>
setCurrentItem(record), setModalVisible(true); history.push(`/memberAbility/manage/addMember?id=${record.memberId}&validateId=${record.validateId}`)
}} }
style={{ color: '#00B37A' }}
> >
{record.status === 1 ? '解冻' : '冻结'} 编辑
</Button> </Button>
) : ( </>
'' )}
)} {/* 外部审核状态不等于 审核通过 可进行删除操作 */}
{record.outerStatusName === '待审核' ? ( {record.outerStatus !== MEMBER_OUTER_STATUS_SUCCESS && (
<> <Popconfirm
<Button title="确定要删除吗?"
type="link" okText="是"
onClick={() => cancelText="否"
history.push('/memberAbility/manage/addMember?type=change') onConfirm={() => handleDelete(record.memberId, record.validateId)}
} >
> <Button
编辑 type="link"
</Button> danger
<Popconfirm title="确定要删除吗?" okText="是" cancelText="否"> >
<Button type="link">删除</Button> 删除
</Popconfirm> </Button>
</> </Popconfirm>
) : ( )}
'' </>
)} ),
</>
);
return component;
},
}, },
]; ];
const rowSelection = {
onChange: (selectedRowKeys: any, selectedRows: any) => {
setSelectedRowKeys(selectedRowKeys);
},
selectedRowKeys: selectedRowKeys,
};
const menu = ( const menu = (
<Menu onClick={e => handleMenuClick(e)}> <Menu onClick={e => handleMenuClick(e)}>
<Menu.Item key="1" icon={<DeleteOutlined />}> <Menu.Item key="1" icon={<DeleteOutlined />}>
...@@ -193,53 +215,58 @@ const memberMaintain: React.FC<[]> = () => { ...@@ -193,53 +215,58 @@ const memberMaintain: React.FC<[]> = () => {
const [columns, setColumns] = useState<any[]>(defaultColumns); const [columns, setColumns] = useState<any[]>(defaultColumns);
// 更改会员状态
const handleModify = record => {
PublicApi.postMemberMaintenanceStatus({
memberId: record.memberId,
validateId: record.validateId,
status: record.status === 1 ? 0 : 1,
}).then(res => {
if (res.code === 1000) return ref.current.reload();
});
};
// 冻结与解冻
const handleSubmit = (values: any, type?: string) => {
if (!type) {
PublicApi.postMemberMaintenanceStatus({
memberId: currentItem.memberId,
validateId: currentItem.validateId,
status: currentItem.status,
remark: values.remark,
}).then(res => {
if (res.code === 1000) {
ref.current.reload();
setModalVisible(false);
}
});
} else {
setModalVisible(false);
}
};
const handleMenuClick = (e: any) => { const handleMenuClick = (e: any) => {
console.log('menu', e); console.log('menu', e);
}; };
// 初始化高级筛选选项 // 初始化高级筛选选项
const fetchSelectOptions = async () => { const fetchSelectOptions = async () => {
const { data } = await PublicApi.getMemberValidateCommitPageitems(); const res = await PublicApi.getMemberMaintenancePageitems();
return {
memberType: fetchFilterOptions(data.memberTypes), if (res.code === 1000) {
roleId: fetchFilterOptions(data.memberRoles), const { data = {} }: any = res;
level: fetchFilterOptions(data.memberLevels), const {
source: fetchFilterOptions(data.memberSource), innerStatus = [],
}; outerStatus = [],
}; status = [],
memberTypes = [],
memberRoles = [],
memberLevels = [],
sources = [],
} = data;
const newColumns = columns.slice();
const fetchFilterOptions = data => { // filter 0 过滤掉全部选项
return data.map(v => ({ label: v.text, value: v.id })); coverColFiltersItem(
newColumns,
'statusName',
status.map(item => ({ text: item.text, value: item.id })).filter(item => item.value !== 0),
);
coverColFiltersItem(
newColumns,
'outerStatusName',
outerStatus.map(item => ({ text: item.text, value: item.id })).filter(item => item.value !== 0),
);
coverColFiltersItem(
newColumns,
'innerStatusName',
innerStatus.map(item => ({ text: item.text, value: item.id })).filter(item => item.value !== 0),
);
setColumns(newColumns);
return {
memberType: memberTypes.map(item => ({ label: item.memberTypeName, value: item.memberTypeId })),
roleId: memberRoles.map(item => ({ label: item.roleName, value: item.roleId })),
level: memberLevels.map(item => ({ label: item.levelTag, value: item.level })),
source: sources.map(item => ({ label: item.text, value: item.id })),
innerStatus: innerStatus.map(item => ({ label: item.text, value: item.id })),
outerStatus: outerStatus.map(item => ({ label: item.text, value: item.id })),
status: status.map(item => ({ label: item.text, value: item.id })),
};
}
return {};
}; };
const controllerBtns = ( const controllerBtns = (
...@@ -267,12 +294,10 @@ const memberMaintain: React.FC<[]> = () => { ...@@ -267,12 +294,10 @@ const memberMaintain: React.FC<[]> = () => {
<StandardTable <StandardTable
tableProps={{ tableProps={{
rowKey: 'memberId', rowKey: 'memberId',
// onChange: (pagination: any, filter: any) => handleSearch(filter),
}} }}
columns={columns} columns={columns}
currentRef={ref} currentRef={ref}
fetchTableData={(params: any) => fetchData(params)} fetchTableData={(params: any) => fetchData(params)}
rowSelection={rowSelection}
controlRender={ controlRender={
<NiceForm <NiceForm
actions={formActions} actions={formActions}
...@@ -284,11 +309,11 @@ const memberMaintain: React.FC<[]> = () => { ...@@ -284,11 +309,11 @@ const memberMaintain: React.FC<[]> = () => {
useStateFilterSearchLinkageEffect( useStateFilterSearchLinkageEffect(
$, $,
actions, actions,
'cond', 'name',
FORM_FILTER_PATH, FORM_FILTER_PATH,
); );
useAsyncInitSelect( useAsyncInitSelect(
['memberType', 'roleId', 'level', 'source'], ['memberType', 'roleId', 'level', 'source', 'innerStatus', 'outerStatus', 'status'],
fetchSelectOptions, fetchSelectOptions,
); );
}} }}
...@@ -296,27 +321,7 @@ const memberMaintain: React.FC<[]> = () => { ...@@ -296,27 +321,7 @@ const memberMaintain: React.FC<[]> = () => {
/> />
} }
/> />
<Modal
title={currentItem.status === 1 ? '会员解冻' : '会员冻结'}
visible={modalVisible}
onOk={() => formActions.submit()}
onCancel={() => handleSubmit(false, 'cancel')}
destroyOnClose
>
<NiceForm
previewPlaceholder="loading..."
effects={($, { setFieldState }) => {
FormEffectHooks.onFieldValueChange$('agree').subscribe(state => {
setFieldState('reason', targetState => {
targetState.visible = state.value != 1;
});
});
}}
onSubmit={handleSubmit}
actions={formActions}
schema={auditModalSchema(currentItem)}
/>
</Modal>
<UploadModal <UploadModal
visibleModal={visibleModal} visibleModal={visibleModal}
fileText="会员资料" fileText="会员资料"
......
...@@ -22,7 +22,7 @@ export const importSchema: ISchema = { ...@@ -22,7 +22,7 @@ export const importSchema: ISchema = {
children: '{{controllerBtns}}', children: '{{controllerBtns}}',
}, },
}, },
cond: { name: {
type: 'string', type: 'string',
'x-component': 'Search', 'x-component': 'Search',
'x-component-props': { 'x-component-props': {
...@@ -35,9 +35,6 @@ export const importSchema: ISchema = { ...@@ -35,9 +35,6 @@ export const importSchema: ISchema = {
type: 'object', type: 'object',
'x-component': 'flex-layout', 'x-component': 'flex-layout',
'x-component-props': { 'x-component-props': {
rowStyle: {
flexWrap: 'nowrap',
},
colStyle: { colStyle: {
marginLeft: 20, marginLeft: 20,
}, },
...@@ -45,42 +42,75 @@ export const importSchema: ISchema = { ...@@ -45,42 +42,75 @@ export const importSchema: ISchema = {
properties: { properties: {
memberType: { memberType: {
type: 'string', type: 'string',
default: 0, default: undefined,
enum: [], enum: [],
'x-component-props': {}, 'x-component-props': {
placeholder: '会员类型(全部)',
allowClear: true,
},
}, },
roleId: { roleId: {
type: 'string', type: 'string',
default: 0, default: undefined,
enum: [], enum: [],
'x-component-props': {}, 'x-component-props': {
placeholder: '会员角色(全部)',
allowClear: true,
},
}, },
level: { level: {
type: 'string', type: 'string',
default: 0, default: undefined,
enum: [], enum: [],
'x-component-props': {}, 'x-component-props': {
placeholder: '会员等级(全部)',
allowClear: true,
},
}, },
source: { source: {
type: 'string', type: 'string',
default: 0, default: undefined,
enum: [],
'x-component-props': {
placeholder: '申请来源(全部)',
allowClear: true,
},
},
innerStatus: {
type: 'string',
default: undefined,
enum: [], enum: [],
'x-component-props': {}, 'x-component-props': {
placeholder: '内部状态(全部)',
allowClear: true,
},
}, },
timeRange: { outerStatus: {
type: 'string', type: 'string',
default: 0, default: undefined,
enum: [ enum: [],
{ label: '时间范围(全部)', value: 0 }, 'x-component-props': {
{ label: '今天', value: 1 }, placeholder: '外部状态(全部)',
{ label: '一周内', value: 2 }, allowClear: true,
{ label: '一个月内', value: 3 }, },
{ label: '三个月内', value: 4 }, },
{ label: '六个月内', value: 5 }, status: {
{ label: '一年内', value: 6 }, type: 'string',
{ label: '一年前', value: 7 }, enum: [],
], default: undefined,
'x-component-props': {}, 'x-component-props': {
placeholder: '会员状态(全部)',
allowClear: true,
},
},
'[startDate, endDate]': {
type: 'string',
default: '',
'x-component': 'dateSelect',
'x-component-props': {
placeholder: '时间范围(全部)',
allowClear: true,
},
}, },
submit: { submit: {
'x-component': 'Submit', 'x-component': 'Submit',
...@@ -98,32 +128,30 @@ export const importSchema: ISchema = { ...@@ -98,32 +128,30 @@ export const importSchema: ISchema = {
}, },
}; };
export const auditModalSchema = props => { export const auditModalSchema: ISchema = {
let modalSchema: ISchema = { type: 'object',
type: 'object', properties: {
properties: { MEGA_LAYOUT: {
MEGA_LAYOUT: { type: 'object',
type: 'object', 'x-component': 'mega-layout',
'x-component': 'mega-layout', 'x-component-props': {
'x-component-props': { labelAlign: 'top',
labelAlign: 'top', },
}, properties: {
properties: { reason: {
remark: { type: 'string',
type: 'string', title: '会员解冻原因',
title: `会员${props.status === 1 ? '解冻' : '冻结'}原因`, 'x-component': 'textarea',
'x-component': 'textarea', 'x-component-props': {
'x-component-props': { placeholder: '在此输入你的内容,最长120个字符,60个汉字',
placeholder: '在此输入你的内容,最长120个字符,60个汉字', maxLength: 60,
maxLength: 60, rows: 5,
},
'x-rules': [{ required: true, message: '请填写审核不通过原因' }],
}, },
'x-rules': [{ required: true, message: '请填写原因' }],
}, },
}, },
}, },
}; },
return modalSchema;
}; };
const getCompnentValue = (elements: any) => { const getCompnentValue = (elements: any) => {
......
...@@ -115,14 +115,12 @@ const MemberPrConfirm: React.FC<{}> = props => { ...@@ -115,14 +115,12 @@ const MemberPrConfirm: React.FC<{}> = props => {
align: 'center', align: 'center',
render: (text: any, record: any) => ( render: (text: any, record: any) => (
<> <>
{record.innerStatus !== MEMBER_INNER_STATUS_SUCCESS && ( <Button
<Button type="link"
type="link" onClick={() => handleJumpAudit(record)}
onClick={() => handleJumpAudit(record)} >
> 确认审核结果
确认审核结果 </Button>
</Button>
)}
</> </>
), ),
}, },
......
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