import React, { Component } from 'react'; import { connect } from 'dva'; import { Form, Input, Select, Button, Radio, DatePicker, Checkbox, Row, Col, message, Modal, Drawer } from 'antd'; import * as ajax from "../../../services/api"; import moment from 'moment'; import './less/report.less'; // import Drawer from 'react-motion-drawer'; const FormItem = Form.Item; const { Option } = Select; const confirm = Modal.confirm; const dateFormat = 'YYYY-MM-DD'; @connect(state => ({ profile: state.profile, })) @Form.create() export default class OverseasDetails extends Component { constructor(props, context) { super(props, context); this.state = { open: this.props.visible, loading: false, overseaManageId: this.props.overseaManageId,//传过来的方案id nationality: [], manageList: [], securityRange: [], securityRangeContentArrays: [],//安保范围数组 overseasList: { nationality: '', recordPoliceName: '', recordDate: '', startDate: '', endDate: '', securityRange: [], securityRangeContentArrays: [], manageMode: '', }, fan: false, }; } componentWillReceiveProps(props) { // console.log(this.state.open); // console.log(props.visible); // if (this.state.open !== props.visible) { this.setState({ open: props.visible, overseaManageId: props.overseaManageId }); // this.renderOverseas(); // this.getDictionaryData(); //获取所有所需要字典数据 // } } componentDidMount() { this.renderOverseas(); this.getDictionaryData(); //获取所有所需要字典数据 } //获取所有所需要字典数据 getDictionaryData = () => { ajax .publicCommonDictGetDictByCodeTypes({ codeTypes: ['nationality', 'manageMode', 'securityRange'] }) .then(data => { //判断获取数据是否为空 if (data.data) { this.setState({ nationality: data.data.nationality, //国籍选择 manageList: data.data.manageMode, securityRange: data.data.securityRange }); } }); }; renderOverseas = () => { if (this.state.overseaManageId !== '00') { ajax.comStockGetOverseaManageById({ overseaManageId: this.state.overseaManageId }).then((data) => { console.log('获取海外经营信息', data, data); this.setState({ overseasList: data.data, }); }); } }; //国家下拉选择值 renderNationality = () => { return this.state.nationality.map((val, key) => { return ; }); }; //国家选中值 handleChangeNation = (value) => { console.log(`selected ${value}`); this.setState({ nation: value, }); }; handleSubmit = (e) => { e.preventDefault(); this.props.form.validateFieldsAndScroll((err, values) => { if (!err) { console.log('values', values); values.recordDate = values['recordDate'].format('YYYY-MM-DD'); values.startDate = values['startDate'].format('YYYY-MM-DD'); values.endDate = values['endDate'].format('YYYY-MM-DD'); values.securityRangeContentArrays = values.securityRange; // values.comId = this.state.comId; if (this.state.crossManageId !== '00') { values.overseaManageId = this.state.overseaManageId; } const d1 = new Date(values.startDate.replace(/\-/g, "\/")); const d2 = new Date(values.recordDate.replace(/\-/g, "\/")); const d3 = new Date(values.endDate.replace(/\-/g, "\/")); if (d1 < d2) { message.error('海外经营开始日期不能早于备案日期'); } else if (d3 < d1) { message.error('经营结束日期不能早于经营开始日期'); } else { this.setState({ loading: true }); ajax.stockSubmitComStockSaveOverseaManage({ ...values }).then((data) => { // console.log('提交成功'); // message.success('海外经营详情保存成功!'); this.setState({ fan: true, loading: false }, () => { this.props.close(); }); }, (err) => { this.setState({ loading: false }); }); } } }); }; callback = (key) => { console.log(key); }; onChangeCheck = (checkedValues) => { console.log('checked = ', checkedValues); }; //经营模式选择 manageMode = () => { return this.state.manageList.map((val, key) => { return ; }); }; //安保范围选择 renderList = () => { return this.state.securityRange.map((val, key) => { // return