import React, { Component } from 'react'

import { Form, Input, DatePicker, Row, Col, TimePicker, Button, Icon, Select } from 'antd';
import { InputSize, Currency, FormatAmount } from "./Utils"

const FormItem = Form.Item;
const Option = Select.Option

export default class T31G extends Component {

    name = 'T31G'
    desp = "(Code)(Common Reference)"

    pattern = "	6!n/4!n/12a"
    tno = -1


    keys = [1, 2, 3]
    onChange = (index, value) => {
        let obj = {};
        if (!value)
            value = ""

        let objtemp = this.props.value

        objtemp = objtemp && objtemp.length ? objtemp[0] : {}

        objtemp["s" + index] = value;

        this.keys.forEach(i => {
            obj['s' + i] = objtemp['s' + i]
        });
        let mval = "";

        mval = `${obj.s1 || ''}${obj.s2 ? `/${obj.s2}` : ''}${obj.s3 ? `/${obj.s3}` : ''}`

        this.props.onValue([obj, mval])
    }

    render() {
        let value = this.props.value

        let mval = value && value.length ? value[1] : ''
        let errmsg = value && value.length == 3 ? value[2] : {}

        value = value && value.length ? value[0] : {}

        return (<Row>
            <Col style={{ "minWidth": '100px' }} span={3}>
                <FormItem
                    label="Date"
                    required={this.props.status == 'M' || mval ? 'required' : null}
                    help={errmsg.s1}
                    validateStatus={errmsg.s1 ? 'error' : null}
                >
                    <DatePicker defaultValue="" format="yyMMdd" value={value.s1} onChange={(date, dateString) => this.onChange(1, dateString)} />

                </FormItem>
            </Col>
            <Col style={{ "minWidth": '100px' }} span={3}>
                <FormItem
                    label="Time"
                    required={this.props.status == 'M' || mval ? 'required' : null}
                    help={errmsg.s2}
                    validateStatus={errmsg.s2 ? 'error' : null}
                >

                    <TimePicker defaultValue="" format="HHmm" value={value.s2} onChange={(date, dateString) => this.onChange(2, dateString)} />
                </FormItem>
            </Col>
            <Col span={5}>
                <FormItem
                    label="Location"

                    required={this.props.status == 'M' || mval ? 'required' : null}
                    help={errmsg.s3}
                    validateStatus={errmsg.s3 ? 'error' : null}
                >

                    <Input value={value.s3} onChange={e => this.onChange(3, e.target.value)} maxLength={12} style={{ imeMode: 'disabled' }} placeholder="Location" />

                </FormItem>
            </Col>
        </Row>)
    }
}