Commit e3280f9f authored by XieZhiXiong's avatar XieZhiXiong

feat: 添加 审核前校验入库资料必填项

parent c6da7281
......@@ -2,16 +2,17 @@
* @Author: XieZhiXiong
* @Date: 2021-06-01 18:15:20
* @LastEditors: XieZhiXiong
* @LastEditTime: 2021-06-10 16:05:26
* @LastEditTime: 2021-07-05 15:40:34
* @Description: 修改入库资料抽屉
*/
import React from 'react';
import React, { useEffect, useImperativeHandle } from 'react';
import {
Drawer,
Button,
} from 'antd';
import { Radio, Checkbox } from '@formily/antd-components';
import { createAsyncFormActions } from '@formily/antd';
import { ValidateNodeResult } from '@formily/validator';
import NiceForm from '@/components/NiceForm';
import { schema, GroupItem } from './schema';
import AreaSelect from '../../../components/AreaSelect';
......@@ -37,9 +38,13 @@ interface IProps {
onClose: () => void,
}
export interface RefHandle {
validate: () => Promise<Promise<ValidateNodeResult>>,
}
const formActions = createAsyncFormActions();
const ChangeComingDataDrawer: React.FC<IProps> = (props: IProps) => {
const ChangeComingDataDrawer: React.ForwardRefRenderFunction<RefHandle, IProps> = ((props, ref) => {
const {
groups,
visible,
......@@ -59,6 +64,10 @@ const ChangeComingDataDrawer: React.FC<IProps> = (props: IProps) => {
}
};
useImperativeHandle(ref, () => ({
validate: () => formActions.validate('*'),
}));
return (
<Drawer
title="修改入库信息"
......@@ -96,6 +105,8 @@ const ChangeComingDataDrawer: React.FC<IProps> = (props: IProps) => {
/>
</Drawer>
);
};
});
const ChangeComingDataDrawerForWard = React.forwardRef<RefHandle, IProps>(ChangeComingDataDrawer);
export default ChangeComingDataDrawer;
export default ChangeComingDataDrawerForWard;
......@@ -2,10 +2,10 @@
* @Author: XieZhiXiong
* @Date: 2021-05-24 17:01:57
* @LastEditors: XieZhiXiong
* @LastEditTime: 2021-06-21 14:31:52
* @LastEditTime: 2021-07-05 15:59:19
* @Description: 审核入库资料
*/
import React, { useState, useEffect } from 'react';
import React, { useState, useEffect, useRef } from 'react';
import {
Row,
Col,
......@@ -35,7 +35,7 @@ import MemberBasicInfo from '../components/MemberBasicInfo';
import DepositDetailsCard from './components/DepositDetailsCard';
import PicWrap from '../components/PicWrap';
import VerifyComingDataDrawer, { ValueType as VerifyData } from './components/VerifyComingDataDrawer';
import ChangeComingDataDrawer, { ValueType as ComingData } from './components/ChangeComingDataDrawer';
import ChangeComingDataDrawer, { ValueType as ComingData, RefHandle } from './components/ChangeComingDataDrawer';
import UploadQualificationsDrawer, { ValueType as QualificationData } from './components/UploadQualificationsDrawer';
const MemberPrVerifyComingDataVerify: React.FC<{}> = () => {
......@@ -49,13 +49,15 @@ const MemberPrVerifyComingDataVerify: React.FC<{}> = () => {
const [qualifications, setQualifications] = useState<QualificationData[]>([]);
const [submitLoading, setSubmitLoading] = useState(false);
const depositRef = useRef<RefHandle | null>(null);
const getBasicInfo = () => {
if (!validateId) {
return;
}
setInfoLoaading(true);
PublicApi.getMemberDepositVerifyDetail({
validateId,
validateId: validateId as string,
}).then(res => {
if (res.code === 1000) {
setMemberInfo(res.data);
......@@ -128,6 +130,15 @@ const MemberPrVerifyComingDataVerify: React.FC<{}> = () => {
handleVisibleQualificationsDrawer(false);
};
const handleVerify = () => {
depositRef?.current?.validate().then(() => {
handleVisibleVerifyDrawer(true);
}).catch(() => {
handleVisibleComingDrawer(true);
message.warning('请填写必要的入库资料');
});
};
const anchorsArr = [
{
key: 'verifySteps',
......@@ -186,7 +197,7 @@ const MemberPrVerifyComingDataVerify: React.FC<{}> = () => {
<Button
type="primary"
icon={<CheckCircleOutlined />}
onClick={() => handleVisibleVerifyDrawer(true)}
onClick={handleVerify}
>
单据审核
</Button>
......@@ -299,6 +310,7 @@ const MemberPrVerifyComingDataVerify: React.FC<{}> = () => {
visible={visibleComingDrawer}
onClose={() => handleVisibleComingDrawer(false)}
onSubmit={handleComingSubmit}
ref={depositRef}
/>
<UploadQualificationsDrawer
......
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