import React, { Component } from 'react'

import { Form, Input, DatePicker, Row, Col, Button, Icon, Select } from 'antd';

import { InputSize, Currency, FormatAmount } from "./Utils"

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

export default class T23A extends Component {

    name = '23A'
    desp = "Identification of the Swap"

    pattern = "10a/5a"
    tno = -1
    keys = [1, 2]
    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 = `${obj.s1}/${obj.s2}`

        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": '200px' }} span={3}>
                <FormItem
                    label="Type of Swap"
                    required={this.props.status == 'M' || mval ? 'required' : null}
                    help={errmsg.s1}
                    validateStatus={errmsg.s1 ? 'error' : null}
                >
                    <Select size={InputSize}
                        placeholder="Type of Swap"
                        allowClear={true}
                        style={{ width: "100%" }} value={value.s1} onChange={val => this.onChange(1, val)} >
                        <Option value="CAPBUYER">CAPBUYER</Option>
                        <Option value="CAPSELLER">CAPSELLER</Option>
                        <Option value="COLLARBYER">COLLARBYER</Option>
                        <Option value="COLLARSLLR">COLLARSLLR</Option>
                        <Option value="FIXEDFIXED">FIXEDFIXED</Option>
                        <Option value="FIXEDFLOAT">FIXEDFLOAT</Option>
                        <Option value="FLOATFIXED">FLOATFIXED</Option>
                        <Option value="FLOATFLOAT">FLOATFLOAT</Option>
                        <Option value="FLOORBUYER">FLOORBUYER</Option>
                        <Option value="FLOORSLLER">FLOORSLLER</Option>

                    </Select>
                </FormItem>
            </Col>
            <Col style={{ "minWidth": '200px' }} span={3}>
                <FormItem
                    label="Settlement Method"
                    required={this.props.status == 'M' || mval ? 'required' : null}
                    help={errmsg.s1}
                    validateStatus={errmsg.s2 ? 'error' : null}
                >
                    <Select size={InputSize}
                        placeholder="Settlement Method"
                        allowClear={true}
                        style={{ width: "100%" }} value={value.s2} onChange={val => this.onChange(2, val)} >
                        <Option value="GROSS">GROSS</Option>
                        <Option value="NET">NET</Option>

                    </Select>
                </FormItem>
            </Col>

        </Row>)
    }
}