import React from 'react'; import { connect } from 'dva'; import moment from 'moment'; import HeaderComponent from './HeaderComponent'; import { publicCommonDictGetDictByCodeTypes, getConfigBankList, sendVerifyCode, saveCccountInfo, getComWalletAccount } from '../../../services/api'; import PFromUpload from '../../../components/Pro/PFromUpload'; import { formItemLayout, formLayout } from '../../../constants/formItemLayout'; import PSelect from '../../../components/Pro/PSelect'; import { SMS_COM_REGISTER } from '../../../constants/shortMessage'; import { Form, Select, Input, Button, Row, Col, notification, DatePicker } from 'antd'; import AddForm from './addForm'; import $modal from '../../../utils/modal'; const { Option } = Select; const { RangePicker } = DatePicker; const dateFormat = 'YYYY-MM-DD'; @connect(state => ({ global: state.global })) @Form.create() export default class BusinessWallet extends React.Component { constructor(props, context) { super(props, context); this.state = { // companyInfo: this.props.global.companyInfo, // 公司信息 companyInfo: JSON.parse(window.sessionStorage.getItem('companyInfo'))||this.props.global.companyInfo, // 公司信息 comCerType: [], //企业证件类型 idCardType:[],//法人证件类型 bankList: [], //绑定充值、结算卡银行列表 submitStatus: false, // 验证码发送成功以后才能提交 selectedBanks: [], //选中的银行 // selectedBanks: ["ICBC-工商银行"], //选中的银行 time: 0, // 可发送验证码剩余时间 btnName: '获取验证码', // 发送验证码按钮名字 timer: null, // 验证码定时器 mobilePhone: '', //绑定验证手机号 }; } async componentDidMount() { // 获取企业证件类型 await this.publicCommonDictGetDictByCodeTypes(); //获取法人证件类型 await this.publicCommonDictGetDictByCodeTypesIdCard(); // 绑定充值、结算卡银行列表 // this.__getConfigBankList(); //一进来-获取企业钱包账户信息 await this.getComWalletAccountInfo() } //企业证件类型查询 publicCommonDictGetDictByCodeTypes = () => { const codeTypes = "comCerType"; publicCommonDictGetDictByCodeTypes({ codeTypes }).then(({ data = {} }) => { this.setState({ comCerType: data.comCerType }); }, (err) => { console.log(err); }); } //法人证件类型查询 publicCommonDictGetDictByCodeTypesIdCard = () => { const codeTypes = "idCardType_GS"; publicCommonDictGetDictByCodeTypes({ codeTypes }).then(({ data = {} }) => { this.setState({ idCardType: data.idCardType_GS }); }, (err) => { console.log(err); }); } __getConfigBankList() { getConfigBankList().then(res => { /** * 0: {dictValue: "CQFMB", dictLabel: "重庆富民银行"} dictValue: "CQFMB" dictLabel: "重庆富民银行" 1: {dictValue: "ICBC", dictLabel: "工商银行"} dictValue: "ICBC" dictLabel: "工商银行" 2: {dictValue: "ICBC", dictLabel: "中国工商银行澳门分行"} dictValue: "ICBC" dictLabel: "中国工商银行澳门分行" */ const keyArr = []; //过滤dictValue相同的选项后的值(只取第一个) res.data.bankCode.forEach(bank => { const nowArr = JSON.parse(JSON.stringify(keyArr)); if (!nowArr.find(item => item.codeValue == bank.codeValue)) { //数组里面没有 keyArr.push(bank); } }); this.setState({ bankList: keyArr }); }); } //获取企业钱包账户信息 getComWalletAccountInfo=()=>{ getComWalletAccount().then(res => { console.log('res11',res) if(res.data){ let data=res.data this.setState({ comNameT:data.comName, comCerTypeT:data.comCerType, comCerNoT:data.comCerNo, fmComTypeT: data.fmComType, contractPhoneT: data.contractPhone, businessAddressT: data.businessAddress, legalRepNameT: data.legalRepName, idCardTypeT: data.idCardType, idCardNoT: data.idCardNo, legalRepPlaceT: data.legalRepPlace, legalRepPhoneT: data.legalRepPhone, bankCardNoT: data.bankCardNo, mobilePhoneT: data.mobilePhone, activeCode: null, idCardStartDateT: data.idCardStartDate, idCardEndDateT: data.idCardEndDate }) } })//先去获取企业钱包账户资料-宏任务同步 } handleSubmit = e => { e.preventDefault(); this.setState({ submitStatus: true }); console.log('this.props',this.props) this.props.form.validateFields((err, values) => { // debugger console.log(err) // this.props.setStatus(4);//提交成功,直接跳到第四步‘去认证’ if (!err) { // 校验股东信息和受益人信息 // this._validateTable((error, tableValues) => { // if (error) { // const errorKeys = Object.keys(error); // const key = errorKeys[0]; // const type = key.replace(/(.+\-)(\d+)(\-.+)/, '$3').slice(1); // const index = key.replace(/(.+\-)(\d+)(\-.+)/, '$2'); // // const keyInfoArr = key.split('-'); // // const type = keyInfoArr[2]; // // const index = keyInfoArr[1]; // let title = ''; // if (type === 's') { // title = '股东信息'; // } else if (type === 'b') { // title = '受益人信息'; // } // this.setState({ // submitStatus: false // }); // $modal( // `${title},第${parseInt(index) + 1}行`, // error[key].errors[0].message // ); // } else { // // 校验成功 进行提交 // const bankCode = values.bankCode[0].split('-')[0]; // values.bankCode = bankCode; // // 身份证有效期 // // idCardDate // values.idCardStartDate = moment(values.idCardDate[0]).format(dateFormat); // values.idCardEndDate = moment(values.idCardDate[1]).format(dateFormat); // Reflect.deleteProperty(values, 'idCardDate'); // // 表格数据 // values.shareholderInfo = JSON.stringify(tableValues.shareholders); // values.beneficiaryInfo = JSON.stringify(tableValues.beneficiarys); // // 隐藏参数 // // values.legalRepPhone = this.state.companyInfo.legalRepPhone; // debugger // saveCccountInfo(values).then(res => { // this.setState({ // submitStatus: false // }); // // this.props.setStatus(5); // this.setState({ // submitStatus: false // }); // // this.props.dispatch({ // // type: "financial/_setStepInfo", // // payload: values // // }); // // window.sessionStorage.setItem('stepInfo',JSON.stringify(values)); // }).catch(err => { // console.log(err) // this.setState({ // submitStatus: false // }); // }); // } // }); // 校验成功 进行提交 // debugger // const bankCode = values.bankCode[0].split('-')[0]; // values.bankCode = bankCode; // 身份证有效期 // idCardDate values.idCardStartDate = moment(values.idCardDate[0]).format(dateFormat); values.idCardEndDate = moment(values.idCardDate[1]).format(dateFormat); Reflect.deleteProperty(values, 'idCardDate'); // 表格数据 // values.shareholderInfo = JSON.stringify(tableValues.shareholders); // values.beneficiaryInfo = JSON.stringify(tableValues.beneficiarys); // 隐藏参数 // values.legalRepPhone = this.state.companyInfo.legalRepPhone; saveCccountInfo(values).then(res => { this.setState({ submitStatus: false }); this.props.setStatus(4);//提交成功,直接跳到第四步‘去认证’ this.setState({ submitStatus: false }); // this.props.dispatch({ // type: "financial/_setStepInfo", // payload: values // }); // window.sessionStorage.setItem('stepInfo',JSON.stringify(values)); }).catch(err => { console.log(err) this.setState({ submitStatus: false }); }); } else { this.setState({ submitStatus: false }); } }); }; render() { const { getFieldDecorator } = this.props.form; return (
填写开户资料