import React, { Component } from 'react'; import { connect } from 'dva'; import { Form, Input, Select, Button, Radio,DatePicker,Checkbox, Row, Col,Cascader,message,Modal,Drawer } from 'antd'; import * as ajax from "../../../services/api"; import moment from 'moment'; import "moment/locale/zh-cn"; import PCascader from '../../../components/Pro/PCascader'; // import Drawer from 'react-motion-drawer'; import './less/report.less'; const FormItem = Form.Item; const { Option } = Select; const {TextArea} = Input; const confirm = Modal.confirm; const dateFormat = 'YYYY-MM-DD'; @connect(state => ({ profile: state.profile, })) @Form.create() export default class DistrictDetails extends Component { constructor(props,context){ super(props,context); this.state = { open: this.props.visible, loading: false, securityRange:[],//安保范围 crossManageId: this.props.crossManageId,//传过来的方案id // areas: [],//地区 messageList:{ province:'', city:'', area:'', address:'',//详细地址 recordPoliceName:'',//备案公安机关名称 recordDate:'',//备案日期 responsPer:'',//负责人 responsPerPhone:'',//负责人手机号 idCardNo:'',//负责人身份证号 post:'',//负责人职务 startDate:'',//跨区经营开始日期 telePhone:'',//联系电话 securityRange:[],//安保范围 securityRangeContentArrays:[],//安保范围数组 }, fan:false,//返回之前是否保存 } }; componentWillReceiveProps(props) { if(this.state.props !== props.visible) { this.setState({ open: props.visible,crossManageId:props.crossManageId },() => { console.log(this.state.open,this.state.crossManageId) }); this.messageList(); this.securityRangeList(); // this.getDistrict();//省市区选择 } } // componentDidMount() { // this.securityRangeList(); // this.messageList(); // this.getDistrict();//省市区选择 // console.log('thisthisTwo',this); // } securityRangeList = () =>{ ajax.publicCommonDictGetDictByCodeTypes({codeTypes:'securityRange'}).then((data) => { if (data.data) { this.setState({ securityRange: data.data.securityRange, }); } }); }; messageList = () => { const { setFieldsValue } = this.props.form; if(this.state.crossManageId !== '00'){ ajax.comStockGetCrossManageById({crossManageId:this.state.crossManageId}).then((data) => { this.setState({ messageList:data.data, }); }); } }; //省市区 // getDistrict = () => { // ajax.getDistrictData().then((data) => { // let areas = data.data.map((val) => { // return { // value: val.regionId, // label: val.regionName, // children:val.childs.map((valChild) => { // return { // value: valChild.regionId, // label: valChild.regionName, // children:valChild.childs.map((valChildChild) => { // return { // value: valChildChild.regionId, // label: valChildChild.regionName, // } // }) // } // }) // }; // } // ); // //console.log('areas:'+JSON.stringify(areas)); // this.setState({ // areas: areas, // }); // }) // }; handleSubmit = (e) => { e.preventDefault(); this.props.form.validateFieldsAndScroll((err, values) => { if (!err) { values.province = values.EconomicType[0]; if(values.EconomicType[1]){ values.city = values.EconomicType[1]; }else{ values.city = 0; } if(values.EconomicType[2]){ values.area = values.EconomicType[2]; }else{ values.area = 0; } values.recordDate = values['recordDate'].format('YYYY-MM-DD'); values.startDate = values['startDate'].format('YYYY-MM-DD'); delete values.EconomicType; values.securityRangeContentArrays = values.securityRange; if(this.state.crossManageId !== '00'){ values.crossManageId = this.state.crossManageId; } let d1 = new Date(values.startDate.replace(/\-/g, "\/")); let d2 = new Date(values.recordDate.replace(/\-/g, "\/")); if(d1 { // 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); }; //安保范围选择 renderList = () => { return this.state.securityRange.map((val, key) => { return {val.label} }); }; // fan = () => { // let _that = this; // if(_that.state.fan){ // // _that.props.history.push(`/enterprise/reported/districtbasic`); // _that.props.close(); // }else{ // confirm({ // title: '当前信息未保存,是否确认返回?', // okText: '确认', // cancelText: '取消', // onOk() { // // _that.props.history.push(`/enterprise/reported`); // // _that.props.close(); // _that.setState({ // open:false // }); // // _that.resetFrom(); // }, // onCancel() { // console.log('Cancel'); // }, // }); // } // }; fan = () => { let _that = this; _that.setState({ open:false }); }; //验证手机号码 checkPhone = (rule, value, callback) => { if (value && !(/^1[0-9]{10}$/).test(value)) { callback('请输入正确的手机号码!'); } else { callback(); } }; //验证固定号码 checkLandlinePhone = (rule, value, callback) => { if (value && !(/^0\d{2,3}-?\d{7,8}$/).test(value)) { callback('请输入正确的联系电话!'); } else { callback(); } }; //验证身份证号码 checkIdCardNo = (rule, value, callback) => { if (value && !(/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/).test(value)) { callback('请输入正确的身份证号码!'); } else { callback(); } }; checkPersonName = (rule, value, callback) => { if (value && !(/^[\u4e00-\u9fa5_a-zA-Z]+$/).test(value)) { callback('请输入正确的负责人姓名!'); } else { callback(); } }; render() { const { submitting } = this.props; const { getFieldDecorator } = this.props.form; // const { setFieldsValue } = this.props.form; const config = { rules: [{ type: 'object', required: true, message: '请选择日期!' }], }; const formItemLayout = { labelCol: { xs: { span: 24 }, sm: { span: 7 }, }, wrapperCol: { xs: { span: 24 }, sm: { span: 12 }, md: { span: 10 }, }, }; const submitFormLayout = { wrapperCol: { xs: { span: 24, offset: 0 }, sm: { span: 10, offset: 7 }, }, }; return ( { this.props.onChange(open); this.setState({ open }); }} onClose={() => { this.setState({ open: false }); }} > {/*

修改记录

*/} {/*

查看记录

*/}
{this.state.crossManageId === '00' ? {getFieldDecorator('EconomicType', { rules: [{ required: true, message: '请选择跨区经营地址' }], })( // )} : {getFieldDecorator('EconomicType', { initialValue: [this.state.messageList.province,this.state.messageList.city,this.state.messageList.area], rules: [{ required: true, message: '请选择跨区经营地址' }], })( // )} } {getFieldDecorator('address', { initialValue:this.state.messageList.address, rules: [{ required: true, message: '请输入跨区经营具体地址', }], })(