Commit f622cba3 by fukai

swift2021第一次提交

parent 677b9c03
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -20,7 +20,9 @@
"key-mirror": "^1.0.1",
"lodash": "^4.13.1",
"md5": "^2.1.0",
"moment": "^2.29.1",
"object-assign": "^4.0.1",
"random-js": "^2.1.0",
"react": "0.14.x",
"react-chartjs": "^0.7.3",
"react-dom": "0.14.x",
......
......@@ -39,9 +39,12 @@ export const mty=[
{mty:"mt760",desp:"MT 760 Guarantee/Standby Letter of Credit"},
{mty:"mt761",desp:"MT 761 Guarantee/Standby Letter of Credit"},
{mty:"mt767",desp:"MT 767 Guarantee/Standby Letter of Credit Amendment"},
{mty:"mt768",desp:"MT 768 Acknowledgement of a Guarantee/Standby Message"},
{mty:"mt769",desp:"MT 769 Advice of Reduction or Release"},
{mty:"mt775",desp:"MT 775 Amendment to a Demand Guarantee/Standby Letter of Credit"},
{mty:"mt799",desp:"MT 799 Free Format Message"},
{mty:"mt999",desp:"MT 999 Free Format Message"},
]
......
......@@ -31,7 +31,7 @@ const Tags=[
{tag:'46A',status:O,tno:28,letter:[],label:"Documents Required"},
{tag:'47A',status:O,tno:29,letter:[],label:"Additional Conditions"},
{tag:'49G',status:O,tno:30,letter:[],label:"Special Payment Conditions for Beneficiary"},
{tag:'49H',status:O,tno:31,letter:[],label:"Special Payment Conditions for Receiving Bank"},
{tag:'49H',status:O,tno:31,letter:[],label:"Special Payment Conditions for Bank Only"},
{tag:'71D',status:O,tno:32,letter:[],label:"Charges"},
{tag:'48',status:O,tno:33,letter:[],label:"Period for Presentation in Days"},
{tag:'49',status:M,tno:34,letter:[],label:"Confirmation Instructions"},
......@@ -41,6 +41,6 @@ const Tags=[
{tag:'57A',status:O,tno:38,letter:["57A","57B","57D"],label:"'Advise Through' Bank"},
{tag:'72Z',status:O,tno:39,letter:[],label:"Sender to Receiver Information"},
]
const Title="MT 700 Issue of a Documentary Credit"
const Title="MT 700 Issue of a Documentary Credit"
export default { Tags,Title}
\ No newline at end of file
......@@ -7,7 +7,7 @@ const Tags=[
{tag:'46A',status:O,tno:4,letter:[],label:"Documents Required"},
{tag:'47A',status:O,tno:5,letter:[],label:"Additional Conditions"},
{tag:'49G',status:O,tno:6,letter:[],label:"Special Payment Conditions for Beneficiary"},
{tag:'49H',status:O,tno:7,letter:[],label:"Special Payment Conditions for Receiving Bank"},
{tag:'49H',status:O,tno:7,letter:[],label:"Special Payment Conditions for Bank Only"},
]
const Title="MT 701 General Financial Institution Transfer"
......
......@@ -38,7 +38,7 @@ const Tags=[
{tag:'46B',status:O,tno:35,letter:[],label:"Documents Required"},
{tag:'47B',status:O,tno:36,letter:[],label:"Additional Conditions"},
{tag:'49M',status:O,tno:37,letter:[],label:"Special Payment Conditions for Beneficiary"},
{tag:'49N',status:O,tno:38,letter:[],label:"Special Payment Conditions for Receiving Bank"},
{tag:'49N',status:O,tno:38,letter:[],label:"Special Payment Conditions for Bank Only"},
{tag:'71D',status:O,tno:39,letter:[],label:"Charges"},
{tag:'71N',status:O,tno:40,letter:[],label:"Amendment Charge Payable By"},
{tag:'48',status:O,tno:41,letter:[],label:"Period for Presentation in Days"},
......
const Tags = [
{"tag":"27","status":"M","tno":1,"letter":[],"label":"Sequence of Total","tagValue":[{},null]},
{"tag":"20","status":"M","tno":2,"letter":[],"label":"Undertaking Number","tagValue":[{},null]},
{"tag":"52A","status":"M","tno":3,"letter":["52A","52D"],"label":"Issuer","tagValue":[{},null]},
{"tag":"77U","status":"O","tno":4,"letter":[],"label":"Undertaking Terms and Conditions","tagValue":[{},null]},
{"tag":"77L","status":"O","tno":5,"letter":[],"label":"Requested Local Undertaking Terms and Conditions","tagValue":[{},null]}
]
const Title = "MT 761 Issue of a Demand Guarantee/Standby Letter of Credit"
export default { Tags,Title}
\ No newline at end of file
const M='M'
const O='O'
const Tags=[
{tag:'27',status:M,tno:1,letter:[],label:"Sequence of Total"},
{tag:'20',status:M,tno:2,letter:[],label:"Transaction Reference Number"},
{tag:'21',status:M,tno:3,letter:[],label:"Related Reference"},
{tag:'23',status:M,tno:4,letter:[],label:"Further Identification"},
{tag:'30',status:O,tno:5,letter:[],label:"Date"},
{tag:'26E',status:O,tno:6,letter:[],label:"Number of Amendment"},
{tag:'31C',status:M,tno:7,letter:[],label:"Date of Issue or Request to Issue"},
{tag:'77C',status:M,tno:8,letter:[],label:"Amendment Details"},
{tag:'72',status:O,tno:9,letter:[],label:"Sender to Receiver Information"},
]
const Title="MT 767 Guarantee/Standby Letter of Credit Amendment"
const M='M'
const O='O'
const Tags = [
{seqlist:"A",cyccnt:0,status:M,seqs:[[
{tag:"15A",status:M,tno:1,letter:[],label:"New Sequence"},
{tag:"27",status:M,tno:2,letter:[],label:"Sequence of Total"},
{tag:"21",status:M,tno:3,letter:[],label:"Related Reference"},
{tag:"22A",status:M,tno:4,letter:[],label:"Purpose of Message"},
{tag:"23S",status:O,tno:5,letter:[],label:"Cancellation Request"},
{tag:"72Z",status:O,tno:6,letter:[],label:"Sender to Receiver Information"},
{tag:"23X",status:O,tno:7,letter:[],label:"File Identification"}
]],
pattern:[
{tag:"15A",status:M,tno:1,letter:[],label:"New Sequence"},
{tag:"27",status:M,tno:2,letter:[],label:"Sequence of Total"},
{tag:"21",status:M,tno:3,letter:[],label:"Related Reference"},
{tag:"22A",status:M,tno:4,letter:[],label:"Purpose of Message"},
{tag:"23S",status:O,tno:5,letter:[],label:"Cancellation Request"},
{tag:"72Z",status:O,tno:6,letter:[],label:"Sender to Receiver Information"},
{tag:"23X",status:O,tno:7,letter:[],label:"File Identification"}
],
desp:"Mandatory Sequence A General Information" },
{seqlist:"B",cyccnt:0,status:M,seqs:[[
{tag:"15B",status:M,tno:8,letter:[],label:"New Sequence"},
{tag:"20",status:M,tno:9,letter:[],label:"Undertaking Number"},
{tag:"26E",status:M,tno:10,letter:[],label:"Number of Amendment"},
{tag:"30",status:M,tno:11,letter:[],label:"Date of Amendment"},
{tag:"52A",status:M,tno:12,letter:["52A","52D"],label:"Issuer"},
{tag:"32B",status:O,tno:13,letter:[],label:"Increase of Undertaking Amount"},
{tag:"33B",status:O,tno:14,letter:[],label:"Decrease of Undertaking Amount"},
{tag:"23B",status:O,tno:15,letter:[],label:"Expiry Type"},
{tag:"31E",status:O,tno:16,letter:[],label:"Date of Expiry"},
{tag:"35G",status:O,tno:17,letter:[],label:"Expiry Condition/Event"},
{tag:"59",status:O,tno:18,letter:["59","59A"],label:"Beneficiary"},
{tag:"77U",status:O,tno:19,letter:[],label:"Other Amendments to Undertaking"},
{tag:"24E",status:O,tno:20,letter:[],label:"Delivery of Amendment To Undertaking"},
{tag:"24G",status:O,tno:21,letter:[],label:"Delivery To/Collection By"}
]],
pattern:[
{tag:"15B",status:M,tno:8,letter:[],label:"New Sequence"},
{tag:"20",status:M,tno:9,letter:[],label:"Undertaking Number"},
{tag:"26E",status:M,tno:10,letter:[],label:"Number of Amendment"},
{tag:"30",status:M,tno:11,letter:[],label:"Date of Amendment"},
{tag:"52A",status:M,tno:12,letter:["52A","52D"],label:"Issuer"},
{tag:"32B",status:O,tno:13,letter:[],label:"Increase of Undertaking Amount"},
{tag:"33B",status:O,tno:14,letter:[],label:"Decrease of Undertaking Amount"},
{tag:"23B",status:O,tno:15,letter:[],label:"Expiry Type"},
{tag:"31E",status:O,tno:16,letter:[],label:"Date of Expiry"},
{tag:"35G",status:O,tno:17,letter:[],label:"Expiry Condition/Event"},
{tag:"59",status:O,tno:18,letter:["59","59A"],label:"Beneficiary"},
{tag:"77U",status:O,tno:19,letter:[],label:"Other Amendments to Undertaking"},
{tag:"24E",status:O,tno:20,letter:[],label:"Delivery of Amendment To Undertaking"},
{tag:"24G",status:O,tno:21,letter:[],label:"Delivery To/Collection By"}
],
desp:"Mandatory Sequence B Undertaking Details" },
{seqlist:"C",cyccnt:0,status:O,seqs:[[
{tag:"15C",status:M,tno:22,letter:[],label:"New Sequence"},
{tag:"32B",status:O,tno:23,letter:[],label:"Increase of Local Undertaking Amount"},
{tag:"33B",status:O,tno:24,letter:[],label:"Decrease of Local Undertaking Amount"},
{tag:"23B",status:O,tno:25,letter:[],label:"Expiry Type"},
{tag:"31E",status:O,tno:26,letter:[],label:"Date of Expiry"},
{tag:"35G",status:O,tno:27,letter:[],label:"Expiry Condition/Event"},
{tag:"59",status:O,tno:28,letter:[],label:"Beneficiary"},
{tag:"77L",status:O,tno:29,letter:[],label:"Other Amendments to Local Undertaking"},
{tag:"24E",status:O,tno:30,letter:[],label:"Delivery of Amendment To Local Undertaking"},
{tag:"24G",status:O,tno:31,letter:[],label:"Delivery To/Collection By"}
]],
pattern:[
{tag:"15C",status:M,tno:22,letter:[],label:"New Sequence"},
{tag:"32B",status:O,tno:23,letter:[],label:"Increase of Local Undertaking Amount"},
{tag:"33B",status:O,tno:24,letter:[],label:"Decrease of Local Undertaking Amount"},
{tag:"23B",status:O,tno:25,letter:[],label:"Expiry Type"},
{tag:"31E",status:O,tno:26,letter:[],label:"Date of Expiry"},
{tag:"35G",status:O,tno:27,letter:[],label:"Expiry Condition/Event"},
{tag:"59",status:O,tno:28,letter:[],label:"Beneficiary"},
{tag:"77L",status:O,tno:29,letter:[],label:"Other Amendments to Local Undertaking"},
{tag:"24E",status:O,tno:30,letter:[],label:"Delivery of Amendment To Local Undertaking"},
{tag:"24G",status:O,tno:31,letter:[],label:"Delivery To/Collection By"}
],
desp:"Optional Sequence C Local Undertaking Details" }
]
const Title = "MT 767 Amendment to a Demand Guarantee/Standby Letter of Credit"
export default { Tags,Title}
\ No newline at end of file
......@@ -7,9 +7,10 @@ const Tags=[
{tag:'30',status:M,tno:4,letter:[],label:"Date of Message Being Acknowledged"},
{tag:'32B',status:O,tno:5,letter:["32B","32D"],label:"Amount of Charges"},
{tag:'57A',status:O,tno:6,letter:["57A","57B","57D"],label:"Account With Bank"},
{tag:'71B',status:O,tno:7,letter:[],label:"Details of Charges"},
{tag:'72',status:O,tno:8,letter:[],label:"Sender to Receiver Information"},
{tag:'71D',status:O,tno:7,letter:[],label:"Details of Charges"},
{tag:'72Z',status:O,tno:8,letter:[],label:"Sender to Receiver Information"},
{tag:'23X',status:O,tno:9,letter:[],label:"File Identification"},
]
const Title="MT 768 Acknowledgement of a Guarantee/Standby Message"
const Title="MT 768 Acknowledgement of a Guarantee/Standby Message"
export default { Tags,Title}
\ No newline at end of file
......@@ -10,9 +10,10 @@ const Tags=[
{tag:'34B',status:O,tno:7,letter:[],label:"Amount Outstanding"},
{tag:'39C',status:O,tno:8,letter:[],label:"Amount Specification"},
{tag:'57A',status:O,tno:9,letter:["57A","57B","57D"],label:"Account With Bank"},
{tag:'71B',status:O,tno:10,letter:[],label:"Details of Charges"},
{tag:'72',status:O,tno:11,letter:[],label:"Sender to Receiver Information"},
{tag:'71D',status:O,tno:10,letter:[],label:"Details of Charges"},
{tag:'72Z',status:O,tno:11,letter:[],label:"Sender to Receiver Information"},
{tag:'23X',status:O,tno:12,letter:[],label:"File Identification"},
]
const Title="MT 769 Advice of Reduction or Release"
const Title="MT 769 Advice of Reduction or Release"
export default { Tags,Title}
\ No newline at end of file
const Tags = [
{"tag":"27","status":"M","tno":1,"letter":[],"label":"Sequence of Total","tagValue":[{},null]},
{"tag":"20","status":"M","tno":2,"letter":[],"label":"Undertaking Number","tagValue":[{},null]},
{"tag":"21","status":"M","tno":3,"letter":[],"label":"Related Reference","tagValue":[{},null]},
{"tag":"26E","status":"M","tno":4,"letter":[],"label":"Number of Amendment","tagValue":[{},null]},
{"tag":"52A","status":"M","tno":5,"letter":["52A","52D"],"label":"Issuer","tagValue":[{},null]},
{"tag":"77U","status":"O","tno":6,"letter":[],"label":"Other Amendments to Undertaking","tagValue":[{},null]},
{"tag":"77L","status":"O","tno":7,"letter":[],"label":"Other Amendments to Local Undertaking","tagValue":[{},null]}
]
const Title = "MT 775 Amendment to a Demand Guarantee/Standby Letter of Credit"
export default { Tags,Title}
\ No newline at end of file
......@@ -26,6 +26,10 @@ import MT759 from './MT759'
import MT940 from './MT940'
import MT950 from './MT950'
import MT761 from './MT761'
import MT775 from './MT775'
import MT202COV from './MT202COV'
export default function MTFactory(mty)
{
......@@ -78,6 +82,10 @@ export default function MTFactory(mty)
return MT940
if(mty=='mt950')
return MT950
if(mty=='mt761')
return MT761
if(mty=='mt775')
return MT775
if(/mt\d96/.test(mty))
return MTn96
if(/mt\d95/.test(mty))
......
......@@ -176,12 +176,12 @@ export class SWFPage extends Component
s119=':119:COV\r\n'
}
if(gpi.t121.value )
if(gpi.inited && gpi.t121.value )
{
gpistr = ':121:'+gpi.t121.value +"\r\n"
}
let t111str = ""
if(gpi.t111.value )
if(gpi.inited && gpi.t111.value )
t111str = ':111:'+gpi.t111.value +"\r\n"
message = `:MT:${mty}\r\n:IO:${this.props.rcv_bic_info.rcv_bic}\r\n:II:${this.props.snd_bic_info.snd_bic}\r\n:MP:N\r\n${t111str}${s119}${gpistr}:EOH:\r\n${message}\r\n-\r\n`
// }
......
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 T11A extends Component
{
name='11A'
desp = "Currency of Denomination"
pattern = ":4!c//3!a"
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":'100px'}} span={3}>
<FormItem
label="Qualifier"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Select
placeholder="Qualifier"
showSearch
allowClear={true}
optionFilterProp="children"
notFoundContent="Wrong Code"
style={{ width: "100%" }} value={value.s1} onChange={val=>this.onChange(1,val)} >
<Option key="DENO" value="DENO">DENO-Currency of Denomination</Option>
<Option key="FXIS" value="FXIS">FXIS-Currency to Sell</Option>
</Select>
</FormItem>
</Col>
<Col style={{"minWidth":'100px'}} span={3}>
<FormItem
label="Currency"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s2}
validateStatus={errmsg.s2?'error':null}
>
<Select
placeholder="Currency"
showSearch
allowClear={true}
optionFilterProp="children"
notFoundContent="Wrong Code"
style={{ width: "100%" }} value={value.s2} onChange={val=>this.onChange(2,val)} >
{
Currency.map(cur=><Option key={cur} value={cur}>{cur}</Option>)
}
</Select>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T12 extends Component
{
name='12'
desp = "Sub-Message Type"
pattern = "3!n"
tno = -1
onChange=(val)=>{
this.props.onValue([{s1:val},val])
}
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":'150px'}} span={3}>
<FormItem
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Input maxLength={3} value={value.s1} placeholder={this.props.desp} style={{'imeMode':'disabled'}} onChange={e=>this.onChange(e.target.value)}/>
</FormItem>
</Col>
</Row>)
}
}
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 T12A extends Component
{
name='12A'
desp = "Type of Financial Instrument"
pattern = ":4!c/[8c]/30x"
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 = `:${obj.s1}//${obj.s3}`
if (obj.s2)
mval = `:${obj.s1}/${obj.s2}/${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 span={24}>
<Col style={{"minWidth":'100px'}} span={3}>
<FormItem
label="Qualifier"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Select
placeholder="Qualifier"
showSearch
allowClear={true}
optionFilterProp="children"
notFoundContent="Wrong Code"
style={{ width: "100%" }} value={value.s1} onChange={val=>this.onChange(1,val)} >
<Option value="CLAS">CLAS-Classification Type</Option>
<Option value="OPST">OPST-Option Style</Option>
<Option value="OPTI">OPTI-Option Type</Option>
</Select>
</FormItem>
</Col>
<Col span={12}>
<FormItem
label="Data Source Scheme"
help={errmsg.s2}
validateStatus={errmsg.s2 ? 'error' : null}
>
<Input type="text" value={value.s2} addonBefore="/" onChange={e =>this.onChange(2, e.target.value)} maxLength={8} style={{ imeMode:'disabled'}} placeholder="Data Source Scheme" />
</FormItem>
</Col>
</Col>
<Col span={12}>
<FormItem
label="Instrument Code or Description"
help={errmsg.s3}
validateStatus={errmsg.s3?'error':null}
>
<Input maxLength={30} style={{imeMode:'disabled'}} placeholder="Instrument Code or Description" value={value.s3} onChange={e=>this.onChange(3,e.target.value)}/>
</FormItem>
</Col>
</Row>
)
}
}
\ No newline at end of file
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 T13A extends Component
{
name='13A'
desp = "Linked Message"
pattern = ":4!c//3!c"
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":'100px'}} span={3}>
<FormItem
label="Qualifier"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Select
placeholder="Qualifier"
showSearch
allowClear={true}
optionFilterProp="children"
notFoundContent="Wrong Code"
style={{ width: "100%" }} value={value.s1} onChange={val=>this.onChange(1,val)} >
<Option value="LINK">LINK</Option>
</Select>
</FormItem>
</Col>
<Col style={{"minWidth":'200px'}} span={3}>
<FormItem
label="Number Id"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s2}
validateStatus={errmsg.s2?'error':null}
>
<Input value={value.s2} onChange={e=>this.onChange(2,e.target.value)} maxLength={3} style={{imeMode:'disabled'}} placeholder="Number Id"/>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T13B extends Component
{
name='13B'
desp = "Certificate Number"
pattern = ":4!c/[8c]/30x"
tno = -1
keys=[1,2,3,4]
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.s3}`
if (obj.s2)
mval = `:${obj.s1}/${obj.s2}/${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 span={24}>
<Col style={{"minWidth":'100px'}} span={3}>
<FormItem
label="Qualifier"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Select
placeholder="Qualifier"
showSearch
allowClear={true}
optionFilterProp="children"
notFoundContent="Wrong Code"
style={{ width: "100%" }} value={value.s1} onChange={val=>this.onChange(1,val)} >
<Option value="CERT">CERT</Option>
<Option value="LOST">LOST</Option>
</Select>
</FormItem>
</Col>
<Col span={12}>
<FormItem
label="Data Source Scheme"
help={errmsg.s2}
validateStatus={errmsg.s2 ? 'error' : null}
>
<Input type="text" value={value.s2} addonBefore="/" onChange={e =>this.onChange(2, e.target.value)} maxLength={8} style={{ imeMode:'disabled'}} placeholder="Data Source Scheme" />
</FormItem>
</Col>
</Col>
<Col span={12}>
<FormItem
label="Number"
help={errmsg.s3}
validateStatus={errmsg.s3?'error':null}
>
<Input maxLength={30} style={{imeMode:'disabled'}} placeholder="Number" value={value.s3} onChange={e=>this.onChange(3,e.target.value)}/>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
......@@ -62,9 +62,9 @@ export default class T13C extends Component
validateStatus={errmsg.s1?'error':null}
>
<Select allowClear={true} ref="s1" value={value.s1} placeholder="Code" style={{ width: "100%" }} onChange={val=>this.onChange(1,val)}>
<Option value={'CLSTIME'}>{"CLSTIME"}</Option>
<Option value={'RNCTIME'}>{"RNCTIME"}</Option>
<Option value={'SNDTIME'}>{"SNDTIME"}</Option>
<Option key="CLSTIME" value="CLSTIME">CLSTIME-CLS Time</Option>
<Option key="RNCTIME" value="RNCTIME">RNCTIME-Receive Time</Option>
<Option key="SNDTIME" value="SNDTIME">SNDTIME-Send Time</Option>
</Select>
</FormItem>
......
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 T14A extends Component {
name = '14A'
desp = "Business Day Convention"
pattern = "9a"
tno = -1
keys = [1]
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}`
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="Convention"
required={this.props.status == 'M' || mval ? 'required' : null}
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Select size={InputSize}
placeholder="Convention"
allowClear={true}
style={{ width: "100%" }} value={value.s1} onChange={val => this.onChange(1, val)} >
<Option value="FOLLOWING">FOLLOWING</Option>
<Option value="FRN">FRN</Option>
<Option value="MODIFIEDF">MODIFIEDF</Option>
<Option value="OTHER">OTHER</Option>
<Option value="PRECEDING">PRECEDING</Option>
</Select>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
import React,{Component} from 'react'
import { Form, Input, DatePicker,Row, Col,Button,Icon ,Select} from 'antd';
import TextArea from './ZTextArea'
const FormItem = Form.Item;
export default class T14C extends Component
{
name='14C'
desp = "Year"
pattern = ""
tno = -1
onChange=(val)=>{
this.props.onValue([{s1:val},val])
}
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>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<DatePicker defaultValue="" format="yyyy" value={value.s1} onChange={(date, dateString) => this.onChange(dateString)} />
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
import React,{Component} from 'react'
import { Form, Input, DatePicker,Row, Col,Button,Icon ,Select} from 'antd';
import {InputSize,Currency,FormatAmount,mt320_14D} from "./Utils"
const FormItem = Form.Item;
const Option = Select.Option
export default class T14D extends Component
{
name='14D'
desp = "Day Count Fraction"
pattern = ""
tno = -1
onChange=(val)=>{
this.props.onValue([{s1:val},val])
}
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 span={5}>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Select size={InputSize}
placeholder={this.props.desp}
showSearch
allowClear={true}
optionFilterProp="children"
notFoundContent="Wrong Code"
style={{ width: "100%" }} value={value.s1} onChange={val=>this.onChange(val)} >
{
mt320_14D.map(item=><Option key={item.code} value={item.code}>{item.code+'-'+item.name}</Option>)
}
</Select>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T14E extends Component
{
name='14E'
desp = "Clearing or Settlement Session"
pattern = "35x"
tno = -1
keys=[1]
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}`
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":'350px'}} span={3}>
<FormItem
label=""
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Input value={value.s1} onChange={e=>this.onChange(1,e.target.value)} maxLength={35} style={{imeMode:'disabled'}} placeholder=""/>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T14F extends Component {
name = '14F'
desp = "Floating Rate Option"
pattern = "24x"
tno = -1
keys = [1]
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}`
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": '350px' }} span={3}>
<FormItem
label=""
required={this.props.status == 'M' || mval ? 'required' : null}
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Input value={value.s1} onChange={e => this.onChange(1, e.target.value)} maxLength={24} style={{ imeMode: 'disabled' }} placeholder="" />
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T14G extends Component {
name = '14G'
desp = "Averaging Frequency and Method"
pattern = "1!a/8!a"
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="Frequency"
required={this.props.status == 'M' || mval ? 'required' : null}
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Select size={InputSize}
placeholder="Frequency"
style={{ width: "100%" }} value={value.s1} onChange={val => this.onChange(1, val)} >
<Option value="D">D</Option>
<Option value="M">M</Option>
<Option value="O">O</Option>
<Option value="W">W</Option>
<Option value="Y">Y</Option>
</Select>
</FormItem>
</Col>
<Col style={{ "minWidth": '200px' }} span={3}>
<FormItem
label="Method"
required={this.props.status == 'M' || mval ? 'required' : null}
help={errmsg.s2}
validateStatus={errmsg.s2 ? 'error' : null}
>
<Select size={InputSize}
placeholder="Method"
style={{ width: "100%" }} value={value.s2} onChange={val => this.onChange(2, val)} >
<Option value="UNWEIGHT">UNWEIGHT</Option>
<Option value="WEIGHTED">WEIGHTED</Option>
</Select>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T14J extends Component {
name = '14J'
desp = "Reset Date Specification"
pattern = "5a"
tno = -1
keys = [1]
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}`
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=""
required={this.props.status == 'M' || mval ? 'required' : null}
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Select size={InputSize}
placeholder=""
allowClear={true}
style={{ width: "100%" }} value={value.s1} onChange={val => this.onChange(1, val)} >
<Option value="FIRST">FIRST</Option>
<Option value="LAST">LAST</Option>
<Option value="OTHER">OTHER</Option>
</Select>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
import React, { Component } from 'react'
import { Form, Input, DatePicker, TimePicker, Row, Col, Button, Icon, Select } from 'antd';
import { InputSize, Currency } from "./Utils"
import YBIC from './YBIC'
const FormItem = Form.Item;
const Option = Select.Option
export default class T14S extends Component {
name = '14S'
desp = "Settlement Rate Source"
pattern = "3!a2n[/4!n/4!c]"
tno = -1
keys = [1, 2, 3, 4]
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}`
if (obj.s3)
mval = mval + '/' + obj.s3
if (obj.s4)
mval = mval + '/' + obj.s4
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="Rate Source"
required={this.props.status == 'M' || mval ? 'required' : null}
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Input value={value.s1} onChange={e => this.onChange(1, e.target.value)} maxLength={3} style={{ imeMode: 'disabled' }} placeholder="" />
</FormItem>
</Col>
<Col style={{ "minWidth": '100px' }} span={3}>
<FormItem
label=".."
required={this.props.status == 'M' || mval ? 'required' : null}
help={errmsg.s2}
validateStatus={errmsg.s2 ? 'error' : null}
>
<Input value={value.s2} onChange={e => this.onChange(2, e.target.value)} maxLength={2} style={{ imeMode: 'disabled' }} placeholder="" />
</FormItem>
</Col>
<Col style={{ "minWidth": '100px' }} span={3}>
<FormItem
label="Time"
required={this.props.status == 'M' || mval ? 'required' : null}
help={errmsg.s3}
validateStatus={errmsg.s3 ? 'error' : null}
>
<TimePicker defaultValue="" format="HHmm" value={value.s3} onChange={(date, dateString) => this.onChange(3, dateString)} />
</FormItem>
</Col>
<Col span={3}>
<FormItem
help={errmsg.s4}
validateStatus={errmsg.s4 ? 'error' : null}
label="Location"
>
<Input addonBefore="/" maxLength={4} style={{ imeMode: 'disabled' }} placeholder="Location" value={value.s4} onChange={(e) => this.onChange(4, e.target.value)} />
</FormItem>
</Col>
</Row>
)
}
}
\ No newline at end of file
import React,{Component} from 'react'
import { Form, Input, DatePicker,Row, Col,Button,Icon ,Select} from 'antd';
const FormItem = Form.Item;
export default class T15A extends Component
{
name='15A'
desp = "New Sequence"
pattern = ""
tno = -1
render(){
return (<Row>
<FormItem
>
<h3 className="ant-form-text" >New Sequence</h3>
</FormItem>
</Row>)
}
}
\ No newline at end of file
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 T15B extends Component
{
name='15B'
desp = "New Sequence"
pattern = ""
tno = -1
render()
{
return (<Row>
<FormItem
>
<h3 className="ant-form-text" >New Sequence</h3>
</FormItem>
</Row>)
}
}
\ No newline at end of file
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 T15C extends Component
{
name='15C'
desp = "New Sequence"
pattern = ""
tno = -1
render()
{
return (<Row>
<FormItem
>
<h3 className="ant-form-text" >New Sequence</h3>
</FormItem>
</Row>)
}
}
\ No newline at end of file
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 T15D extends Component
{
name='15D'
desp = "New Sequence"
pattern = ""
tno = -1
render()
{
return (<Row>
<FormItem
>
<h3 className="ant-form-text" >New Sequence</h3>
</FormItem>
</Row>)
}
}
\ No newline at end of file
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 T15E extends Component
{
name='15E'
desp = "New Sequence"
pattern = ""
tno = -1
render()
{
return (<Row>
<FormItem
>
<h3 className="ant-form-text" >New Sequence</h3>
</FormItem>
</Row>)
}
}
\ No newline at end of file
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 T15F extends Component
{
name='15F'
desp = "New Sequence"
pattern = ""
tno = -1
render()
{
return (<Row>
<FormItem
>
<h3 className="ant-form-text" >New Sequence</h3>
</FormItem>
</Row>)
}
}
\ No newline at end of file
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 T16A extends Component
{
name='16A'
desp = "Number of Settlements"
pattern = "5n"
tno = -1
keys=[1]
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}`
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":'150px'}} span={3}>
<FormItem
label="Number"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Input value={value.s1} onChange={e=>this.onChange(1,e.target.value)} maxLength={5} style={{imeMode:'disabled'}} placeholder="Number"/>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T16R extends Component
{
name='16R'
desp = "Start of Block"
pattern = ""
tno = -1
keys=[1]
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}`
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
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Select
showSearch
allowClear={true}
optionFilterProp="children"
notFoundContent="Wrong Code"
style={{ width: "100%" }} value={value.s1} onChange={val=>this.onChange(1,val)} >
<Option value="FIA">FIA</Option>
<Option value="AMT">AMT</Option>
<Option value="LINK">LINK</Option>
<Option value="FIAC">FIAC</Option>
<Option value="GENL">GENL</Option>
<Option value="REPO">REPO</Option>
<Option value="BREAK">BREAK</Option>
<Option value="SETDET">SETDET</Option>
<Option value="SETPRTY">SETPRTY</Option>
<Option value="CSHPRTY">CSHPRTY</Option>
<Option value="TRADDET">TRADDET</Option>
<Option value="OTHRPRTY">OTHRPRTY</Option>
</Select>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T16S extends Component
{
name='16S'
desp = "End of Block"
pattern = ""
tno = -1
keys=[1]
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}`
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
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Select
showSearch
allowClear={true}
optionFilterProp="children"
notFoundContent="Wrong Code"
style={{ width: "100%" }} value={value.s1} onChange={val=>this.onChange(1,val)} >
<Option value="FIA">FIA</Option>
<Option value="AMT">AMT</Option>
<Option value="LINK">LINK</Option>
<Option value="FIAC">FIAC</Option>
<Option value="GENL">GENL</Option>
<Option value="REPO">REPO</Option>
<Option value="BREAK">BREAK</Option>
<Option value="SETDET">SETDET</Option>
<Option value="SETPRTY">SETPRTY</Option>
<Option value="CSHPRTY">CSHPRTY</Option>
<Option value="TRADDET">TRADDET</Option>
<Option value="OTHRPRTY">OTHRPRTY</Option>
</Select>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
import React, { Component } from 'react'
import { Form, Input, DatePicker, Row, Col, Button, Icon, Select } from 'antd';
import { InputSize, Currency } from "./Utils"
import YBIC from './YBIC'
const FormItem = Form.Item;
const Option = Select.Option
export default class T17A extends Component {
name = '17A'
desp = "Indicator"
pattern = "1!a"
tno = -1
onChange = (index, val) => {
this.props.onValue([{ s1: val }, val])
}
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 (
<div>
<Row>
<Col span={3}>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Select allowClear={true} value={value.s1} style={{ width: "100%" }} placeholder="N/Y" onChange={(val) => this.onChange(1, val)}>
<Option value="N">N</Option>
<Option value="Y">Y</Option>
</Select>
</FormItem>
</Col>
</Row>
</div>
)
}
}
\ No newline at end of file
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 T17B extends Component
{
name='17B'
desp = "Flag"
pattern = ":4!c//1!a"
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":'100px'}} span={3}>
<FormItem
label="Qualifier"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Select
placeholder="Qualifier"
showSearch
allowClear={true}
optionFilterProp="children"
notFoundContent="Wrong Code"
style={{ width: "100%" }} value={value.s1} onChange={val=>this.onChange(1,val)} >
<Option value="FRNM">FRNM</Option>
<Option value="CALL">CALL</Option>
<Option value="PUTT">PUTT</Option>
<Option value="ACRU">ACRU</Option>
<Option value="STAM">STAM</Option>
<Option value="EXEC">EXEC</Option>
<Option value="RSCH">RSCH</Option>
</Select>
</FormItem>
</Col>
<Col style={{"minWidth":'100px'}} span={3}>
<FormItem
label="Flag"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s2}
validateStatus={errmsg.s2?'error':null}
>
<Select
placeholder="N/Y"
showSearch
allowClear={true}
optionFilterProp="children"
notFoundContent="Wrong Code"
style={{ width: "100%" }} value={value.s2} onChange={val=>this.onChange(2,val)} >
<Option value="N">N</Option>
<Option value="Y">Y</Option>
</Select>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
import React, { Component } from 'react'
import { Form, Input, DatePicker, Row, Col, Button, Icon, Select } from 'antd';
import { InputSize, Currency } from "./Utils"
import YBIC from './YBIC'
const FormItem = Form.Item;
const Option = Select.Option
export default class T17E extends Component {
name = '17E'
desp = "Indicator"
pattern = "1!a"
tno = -1
onChange = (index, val) => {
this.props.onValue([{ s1: val }, val])
}
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 (
<div>
<Row>
<Col span={3}>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Select allowClear={true} value={value.s1} style={{ width: "100%" }} placeholder="N/Y" onChange={(val) => this.onChange(1, val)}>
<Option value="N">N</Option>
<Option value="Y">Y</Option>
</Select>
</FormItem>
</Col>
</Row>
</div>
)
}
}
\ No newline at end of file
import React, { Component } from 'react'
import { Form, Input, DatePicker, Row, Col, Button, Icon, Select } from 'antd';
import { InputSize, Currency } from "./Utils"
import YBIC from './YBIC'
const FormItem = Form.Item;
const Option = Select.Option
export default class T17F extends Component {
name = '17F'
desp = "Indicator"
pattern = "1!a"
tno = -1
onChange = (index, val) => {
this.props.onValue([{ s1: val }, val])
}
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 (
<div>
<Row>
<Col span={3}>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Select allowClear={true} value={value.s1} style={{ width: "100%" }} placeholder="N/Y" onChange={(val) => this.onChange(1, val)}>
<Option value="N">N</Option>
<Option value="Y">Y</Option>
</Select>
</FormItem>
</Col>
</Row>
</div>
)
}
}
\ No newline at end of file
import React, { Component } from 'react'
import { Form, Input, DatePicker, Row, Col, Button, Icon, Select } from 'antd';
import { InputSize, Currency } from "./Utils"
import YBIC from './YBIC'
const FormItem = Form.Item;
const Option = Select.Option
export default class T17H extends Component {
name = '17H'
desp = "Indicator"
pattern = "1!a"
tno = -1
onChange = (index, val) => {
this.props.onValue([{ s1: val }, val])
}
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 (
<div>
<Row>
<Col span={3}>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Select allowClear={true} value={value.s1} style={{ width: "100%" }} placeholder="N/Y" onChange={(val) => this.onChange(1, val)}>
<Option value="A">A</Option>
<Option value="P">P</Option>
<Option value="U">U</Option>
</Select>
</FormItem>
</Col>
</Row>
</div>
)
}
}
\ No newline at end of file
import React, { Component } from 'react'
import { Form, Input, DatePicker, Row, Col, Button, Icon, Select } from 'antd';
import { InputSize, Currency } from "./Utils"
import YBIC from './YBIC'
const FormItem = Form.Item;
const Option = Select.Option
export default class T17I extends Component {
name = '17I'
desp = "Payment versus Payment Settlement Indicator"
pattern = "1!a"
tno = -1
onChange = (index, val) => {
this.props.onValue([{ s1: val }, val])
}
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 (
<div>
<Row>
<Col span={3}>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Select allowClear={true} value={value.s1} style={{ width: "100%" }} placeholder="N/Y" onChange={(val) => this.onChange(1, val)}>
<Option value="N">N</Option>
<Option value="Y">Y</Option>
</Select>
</FormItem>
</Col>
</Row>
</div>
)
}
}
\ No newline at end of file
import React, { Component } from 'react'
import { Form, Input, DatePicker, Row, Col, Button, Icon, Select } from 'antd';
import { InputSize, Currency } from "./Utils"
import YBIC from './YBIC'
const FormItem = Form.Item;
const Option = Select.Option
export default class T17L extends Component {
name = '17L'
desp = "Portfolio Compression Indicator"
pattern = "1!a"
tno = -1
onChange = (index, val) => {
this.props.onValue([{ s1: val }, val])
}
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 (
<div>
<Row>
<Col span={3}>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Select allowClear={true} value={value.s1} style={{ width: "100%" }} placeholder="N/Y" onChange={(val) => this.onChange(1, val)}>
<Option value="N">N</Option>
<Option value="Y">Y</Option>
</Select>
</FormItem>
</Col>
</Row>
</div>
)
}
}
\ No newline at end of file
import React, { Component } from 'react'
import { Form, Input, DatePicker, Row, Col, Button, Icon, Select } from 'antd';
import { InputSize, Currency,mt300_17M } from "./Utils"
import YBIC from './YBIC'
const FormItem = Form.Item;
const Option = Select.Option
export default class T17M extends Component {
name = '17M'
desp = "Indicator"
pattern = "1!a"
tno = -1
onChange = (index, val) => {
this.props.onValue([{ s1: val }, val])
}
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 (
<div>
<Row>
<Col span={18}>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Select allowClear={true} value={value.s1} style={{ width: "100%" }} placeholder="N/Y" onChange={(val) => this.onChange(1, val)}>
{
mt300_17M.map(item=><Option key={item.code} value={item.code}>{item.code+'-'+item.name}</Option>)
}
</Select>
</FormItem>
</Col>
</Row>
</div>
)
}
}
\ No newline at end of file
import React, { Component } from 'react'
import { Form, Input, DatePicker, Row, Col, Button, Icon, Select } from 'antd';
import { InputSize, Currency } from "./Utils"
import YBIC from './YBIC'
const FormItem = Form.Item;
const Option = Select.Option
export default class T17O extends Component {
name = '17O'
desp = "Indicator"
pattern = "1!a"
tno = -1
onChange = (index, val) => {
this.props.onValue([{ s1: val }, val])
}
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 (
<div>
<Row>
<Col span={3}>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Select allowClear={true} value={value.s1} style={{ width: "100%" }} placeholder="N/Y" onChange={(val) => this.onChange(1, val)}>
<Option value="N">N</Option>
<Option value="Y">Y</Option>
</Select>
</FormItem>
</Col>
</Row>
</div>
)
}
}
\ No newline at end of file
import React, { Component } from 'react'
import { Form, Input, DatePicker, Row, Col, Button, Icon, Select } from 'antd';
import { InputSize, Currency } from "./Utils"
import YBIC from './YBIC'
const FormItem = Form.Item;
const Option = Select.Option
export default class T17P extends Component {
name = '17P'
desp = "Indicator"
pattern = "1!a"
tno = -1
onChange = (index, val) => {
this.props.onValue([{ s1: val }, val])
}
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 (
<div>
<Row>
<Col span={3}>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Select allowClear={true} value={value.s1} style={{ width: "100%" }} placeholder="N/Y" onChange={(val) => this.onChange(1, val)}>
<Option value="F">F</Option>
<Option value="O">O</Option>
<Option value="P">P</Option>
<Option value="U">U</Option>
</Select>
</FormItem>
</Col>
</Row>
</div>
)
}
}
\ No newline at end of file
import React, { Component } from 'react'
import { Form, Input, DatePicker, Row, Col, Button, Icon, Select } from 'antd';
import { InputSize, Currency } from "./Utils"
import YBIC from './YBIC'
const FormItem = Form.Item;
const Option = Select.Option
export default class T17Q extends Component {
name = '17Q'
desp = "Indicator"
pattern = "1!a"
tno = -1
onChange = (index, val) => {
this.props.onValue([{ s1: val }, val])
}
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 (
<div>
<Row>
<Col span={3}>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Select allowClear={true} value={value.s1} style={{ width: "100%" }} placeholder="N/Y" onChange={(val) => this.onChange(1, val)}>
<Option value="N">N</Option>
<Option value="Y">Y</Option>
</Select>
</FormItem>
</Col>
</Row>
</div>
)
}
}
\ No newline at end of file
import React, { Component } from 'react'
import { Form, Input, DatePicker, Row, Col, Button, Icon, Select } from 'antd';
import { InputSize, Currency } from "./Utils"
import YBIC from './YBIC'
const FormItem = Form.Item;
const Option = Select.Option
export default class T17R extends Component {
name = '17R'
desp = "Party A's Role"
pattern = "1!a"
tno = -1
onChange = (index, val) => {
this.props.onValue([{ s1: val }, val])
}
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 (
<div>
<Row>
<Col span={3}>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Select allowClear={true} value={value.s1} style={{ width: "100%" }} placeholder="B/L" onChange={(val) => this.onChange(1, val)}>
<Option value="B">B</Option>
<Option value="L">L</Option>
</Select>
</FormItem>
</Col>
</Row>
</div>
)
}
}
\ No newline at end of file
import React, { Component } from 'react'
import { Form, Input, DatePicker, Row, Col, Button, Icon, Select } from 'antd';
import { InputSize, Currency } from "./Utils"
import YBIC from './YBIC'
const FormItem = Form.Item;
const Option = Select.Option
export default class T17S extends Component {
name = '17S'
desp = "Indicator"
pattern = "1!a"
tno = -1
onChange = (index, val) => {
this.props.onValue([{ s1: val }, val])
}
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 (
<div>
<Row>
<Col span={3}>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Select allowClear={true} value={value.s1} style={{ width: "100%" }} placeholder="N/Y" onChange={(val) => this.onChange(1, val)}>
<Option value="N">N</Option>
<Option value="Y">Y</Option>
</Select>
</FormItem>
</Col>
</Row>
</div>
)
}
}
\ No newline at end of file
import React, { Component } from 'react'
import { Form, Input, DatePicker, Row, Col, Button, Icon, Select } from 'antd';
import { InputSize, Currency } from "./Utils"
import YBIC from './YBIC'
const FormItem = Form.Item;
const Option = Select.Option
export default class T17T extends Component {
name = '17T'
desp = "Block Trade Indicator"
pattern = "1!a"
tno = -1
onChange = (index, val) => {
this.props.onValue([{ s1: val }, val])
}
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 (
<div>
<Row>
<Col span={3}>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Select allowClear={true} value={value.s1} style={{ width: "100%" }} placeholder="N/Y" onChange={(val) => this.onChange(1, val)}>
<Option value="N">N</Option>
<Option value="Y">Y</Option>
</Select>
</FormItem>
</Col>
</Row>
</div>
)
}
}
\ No newline at end of file
import React, { Component } from 'react'
import { Form, Input, DatePicker, Row, Col, Button, Icon, Select } from 'antd';
import { InputSize, Currency } from "./Utils"
import YBIC from './YBIC'
const FormItem = Form.Item;
const Option = Select.Option
export default class T17U extends Component {
name = '17U'
desp = "Block Trade Indicator"
pattern = "1!a"
tno = -1
onChange = (index, val) => {
this.props.onValue([{ s1: val }, val])
}
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 (
<div>
<Row>
<Col span={3}>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Select allowClear={true} value={value.s1} style={{ width: "100%" }} placeholder="N/Y" onChange={(val) => this.onChange(1, val)}>
<Option value="N">N</Option>
<Option value="Y">Y</Option>
</Select>
</FormItem>
</Col>
</Row>
</div>
)
}
}
\ No newline at end of file
import React, { Component } from 'react'
import { Form, Input, DatePicker, Row, Col, Button, Icon, Select } from 'antd';
import { InputSize, Currency } from "./Utils"
import YBIC from './YBIC'
const FormItem = Form.Item;
const Option = Select.Option
export default class T17W extends Component {
name = '17W'
desp = "Indicator"
pattern = "1!a"
tno = -1
onChange = (index, val) => {
this.props.onValue([{ s1: val }, val])
}
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 (
<div>
<Row>
<Col span={3}>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Select allowClear={true} value={value.s1} style={{ width: "100%" }} placeholder="N/Y" onChange={(val) => this.onChange(1, val)}>
<Option value="Y">Y</Option>
</Select>
</FormItem>
</Col>
</Row>
</div>
)
}
}
\ No newline at end of file
import React, { Component } from 'react'
import { Form, Input, DatePicker, Row, Col, Button, Icon, Select } from 'antd';
import { InputSize, Currency } from "./Utils"
import YBIC from './YBIC'
const FormItem = Form.Item;
const Option = Select.Option
export default class T17X extends Component {
name = '17X'
desp = "Indicator"
pattern = "1!a"
tno = -1
onChange = (index, val) => {
this.props.onValue([{ s1: val }, val])
}
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 (
<div>
<Row>
<Col span={3}>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Select allowClear={true} value={value.s1} style={{ width: "100%" }} placeholder="N/Y" onChange={(val) => this.onChange(1, val)}>
<Option value="N">N</Option>
<Option value="Y">Y</Option>
</Select>
</FormItem>
</Col>
</Row>
</div>
)
}
}
\ No newline at end of file
import React, { Component } from 'react'
import { Form, Input, DatePicker, Row, Col, Button, Icon, Select } from 'antd';
import { InputSize, Currency } from "./Utils"
import YBIC from './YBIC'
const FormItem = Form.Item;
const Option = Select.Option
export default class T17Y extends Component {
name = '17Y'
desp = "Indicator"
pattern = "1!a"
tno = -1
onChange = (index, val) => {
this.props.onValue([{ s1: val }, val])
}
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 (
<div>
<Row>
<Col span={10}>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Select allowClear={true} value={value.s1} style={{ width: "100%" }} placeholder="N/F" onChange={(val) => this.onChange(1, val)}>
<Option value="F">F-financial counterparty</Option>
<Option value="N">N-non financial counterparty</Option>
</Select>
</FormItem>
</Col>
</Row>
</div>
)
}
}
\ No newline at end of file
import React, { Component } from 'react'
import { Form, Input, DatePicker, Row, Col, Button, Icon, Select } from 'antd';
import { InputSize, Currency } from "./Utils"
import YBIC from './YBIC'
const FormItem = Form.Item;
const Option = Select.Option
export default class T17Z extends Component {
name = '17Z'
desp = "Block Trade Indicator"
pattern = "1!a"
tno = -1
onChange = (index, val) => {
this.props.onValue([{ s1: val }, val])
}
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 (
<div>
<Row>
<Col span={3}>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Select allowClear={true} value={value.s1} style={{ width: "100%" }} placeholder="N/Y" onChange={(val) => this.onChange(1, val)}>
<Option value="N">N</Option>
<Option value="Y">Y</Option>
</Select>
</FormItem>
</Col>
</Row>
</div>
)
}
}
\ No newline at end of file
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 T18A extends Component
{
name='18A'
desp = "Number of Repetitions"
pattern = "5n"
tno = -1
keys=[1]
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}`
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":'350px'}} span={3}>
<FormItem
label="Number"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Input value={value.s1} onChange={e=>this.onChange(1,e.target.value)} maxLength={5} style={{imeMode:'disabled'}} placeholder="Number"/>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T19A extends Component {
name = '19A'
desp = "Amount"
pattern = ":4!c//[N]3!a15d"
tno = -1
keys = [1, 2, 3, 4]
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 temp = FormatAmount(obj.s3);
let mval = `:${obj.s1}//${obj.s2}${temp}`
if (obj.s4)
mval = `:${obj.s1}//${obj.s4}${obj.s2}${temp}`
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="Qualifier"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Select
placeholder="Qualifier"
showSearch
allowClear={true}
optionFilterProp="children"
notFoundContent="Wrong Code"
style={{ width: "100%" }} value={value.s1} onChange={val=>this.onChange(1,val)} >
<Option value="FORF">FORF</Option>
<Option value="TRTE">TRTE</Option>
<Option value="REPP">REPP</Option>
<Option value="ACRU">ACRU</Option>
<Option value="DEAL">DEAL</Option>
<Option value="TAPC">TAPC</Option>
<Option value="ACRU">ACRU</Option>
<Option value="CHAR">CHAR</Option>
<Option value="COUN">COUN</Option>
<Option value="DEAL">DEAL</Option>
<Option value="EXEC">EXEC</Option>
<Option value="ISDI">ISDI</Option>
<Option value="LADT">LADT</Option>
<Option value="LEVY">LEVY</Option>
<Option value="LOCL">LOCL</Option>
<Option value="LOCO">LOCO</Option>
<Option value="MARG">MARG</Option>
<Option value="OTHR">OTHR</Option>
<Option value="REGF">REGF</Option>
<Option value="SETT">SETT</Option>
<Option value="SHIP">SHIP</Option>
<Option value="SPCN">SPCN</Option>
<Option value="STAM">STAM</Option>
<Option value="STEX">STEX</Option>
<Option value="TRAN">TRAN</Option>
<Option value="TRAX">TRAX</Option>
<Option value="VATA">VATA</Option>
<Option value="WITH">WITH</Option>
<Option value="ANTO">ANTO</Option>
<Option value="COAX">COAX</Option>
<Option value="ACCA">ACCA</Option>
<Option value="RSCH">RSCH</Option>
<Option value="RESU">RESU</Option>
<Option value="OCMT">OCMT</Option>
</Select>
</FormItem>
</Col>
<Col style={{ "minWidth": '100px' }} span={3}>
<FormItem
label="Sign"
help={errmsg.s4}
validateStatus={errmsg.s4 ? 'error' : null}
>
<Select allowClear={true} value={value.s4} placeholder="Sign" style={{ width: "100%" }} onChange={val => this.onChange(4, val)}>
<Option value={'N'}>{"N"}</Option>
</Select>
</FormItem>
</Col>
<Col style={{"minWidth":'100px'}} span={3}>
<FormItem
label="Currency"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s2}
validateStatus={errmsg.s2?'error':null}
>
<Select
placeholder="Currency"
showSearch
allowClear={true}
optionFilterProp="children"
notFoundContent="Wrong Code"
style={{ width: "100%" }} value={value.s2} onChange={val=>this.onChange(2,val)} >
{
Currency.map(cur=><Option key={cur} value={cur}>{cur}</Option>)
}
</Select>
</FormItem>
</Col>
<Col span={12}>
<FormItem
label="Amount"
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={16} style={{imeMode:'disabled'}} placeholder="Amount"/>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
import React,{Component} from 'react'
import { Form, Input, DatePicker,Row, Col,Button,Icon ,Select} from 'antd';
const FormItem = Form.Item;
export default class T20C extends Component
{
name='20C'
desp = "Sender's Message Reference"
pattern = ":4!c//16x"
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":'100px'}} span={3}>
<FormItem
label="Qualifier"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Select
placeholder="Qualifier"
showSearch
allowClear={true}
optionFilterProp="children"
notFoundContent="Wrong Code"
style={{ width: "100%" }} value={value.s1} onChange={val=>this.onChange(1,val)} >
<Option value="SEME">SEME</Option>
<Option value="PROC">PROC</Option>
<Option value="SECO">SECO</Option>
<Option value="REPO">PEPO</Option>
</Select>
</FormItem>
</Col>
<Col span={12}>
<FormItem
label="Reference"
required={this.props.status == 'M' || mval ? 'required' : null}
help={errmsg.s2}
validateStatus={errmsg.s2 ? 'error' : null}
>
<Input type="text" value={value.s2} addonBefore="/" onChange={e =>this.onChange(2, e.target.value)} maxLength={16} style={{ imeMode:'disabled'}} placeholder="Reference" />
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T21A extends Component {
name = '21A'
desp = "Reference to Opening Confirmation"
pattern = "16x"
tno = -1
keys = [1]
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}`
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": '350px' }} span={3}>
<FormItem
label=""
required={this.props.status == 'M' || mval ? 'required' : null}
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Input value={value.s1} onChange={e => this.onChange(1, e.target.value)} maxLength={16} style={{ imeMode: 'disabled' }} placeholder="" />
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T21B extends Component {
name = '21B'
desp = "Contract Number Party B"
pattern = "16x"
tno = -1
keys = [1]
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}`
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": '350px' }} span={3}>
<FormItem
label=""
required={this.props.status == 'M' || mval ? 'required' : null}
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Input value={value.s1} onChange={e => this.onChange(1, e.target.value)} maxLength={16} style={{ imeMode: 'disabled' }} placeholder="" />
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
import React,{Component} from 'react'
import { Form, Input, DatePicker,Row, Col,Button,Icon ,Select} from 'antd';
const FormItem = Form.Item;
export default class T21F extends Component
{
name='21F'
desp = "Related Reference"
pattern = ""
tno = -1
onChange=(val)=>{
this.props.onValue([{s1:val},val])
}
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 span={21}>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Input maxLength={16} value={value.s1} placeholder={this.props.desp} style={{'imeMode':'disabled'}} onChange={e=>this.onChange(e.target.value)}/>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T21G extends Component {
name = '21G'
desp = "Broker's Reference"
pattern = "16x"
tno = -1
keys = [1]
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}`
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": '350px' }} span={3}>
<FormItem
label=""
required={this.props.status == 'M' || mval ? 'required' : null}
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Input value={value.s1} onChange={e => this.onChange(1, e.target.value)} maxLength={16} style={{ imeMode: 'disabled' }} placeholder="" />
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
import React, { Component } from 'react'
import { Form, Input, DatePicker, Row, Col, Button, Icon, Select } from 'antd';
import { InputSize, Currency, FormatAmount ,mt300_21H} from "./Utils"
const FormItem = Form.Item;
const Option = Select.Option
export default class T21H extends Component{
name='21H'
desp = "Event Type and Reference"
pattern = "4!c/16x"
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":'150px'}} span={10}>
<FormItem
label="Event Type"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Select
placeholder="Event Type"
showSearch
allowClear={true}
optionFilterProp="children"
notFoundContent="Wrong Code"
style={{ width: "100%" }} value={value.s1} onChange={val=>this.onChange(1,val)} >
{
mt300_21H.map(item=><Option key={item.code} value={item.code}>{item.code+'-'+item.name}</Option>)
}
</Select>
</FormItem>
</Col>
<Col style={{ "minWidth": '300px' }} span={3}>
<FormItem
label="Reference"
required={this.props.status == 'M' || mval ? 'required' : null}
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Input value={value.s2} onChange={e => this.onChange(2, e.target.value)} maxLength={16} style={{ imeMode: 'disabled' }} placeholder="Reference of Previous Confirmation" />
</FormItem>
</Col>
</Row>)
}
}
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 T21N extends Component {
name = '21N'
desp = "Contract Number Party A"
pattern = "16x"
tno = -1
keys = [1]
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}`
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": '350px' }} span={3}>
<FormItem
label="Contract Number"
required={this.props.status == 'M' || mval ? 'required' : null}
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Input value={value.s1} onChange={e => this.onChange(1, e.target.value)} maxLength={16} style={{ imeMode: 'disabled' }} placeholder="Contract Number" />
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
import React,{Component} from 'react'
import { Form, Input, DatePicker,Row, Col,Button,Icon ,Select} from 'antd';
const FormItem = Form.Item;
export default class T21R extends Component
{
name='21R'
desp = "Related Reference"
pattern = ""
tno = -1
onChange=(val)=>{
this.props.onValue([{s1:val},val])
}
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 span={21}>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Input maxLength={16} value={value.s1} placeholder={this.props.desp} style={{'imeMode':'disabled'}} onChange={e=>this.onChange(e.target.value)}/>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T22 extends Component {
name = 'T22'
desp = "(Code)(Common Reference)"
pattern = "8a/4!a2!c4!n4!a2!c"
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": '100px' }} span={3}>
<FormItem
label="Currency"
required={this.props.status == 'M' || mval ? 'required' : null}
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Select allowClear={true} value={value.s1} style={{ width: "100%" }} placeholder="Code" onChange={(val) => this.onChange(1, val)}>
<Option value="AMEND">AMEND</Option>
<Option value="CANCEL">CANCEL</Option>
<Option value="CLOSEOUT">CLOSEOUT</Option>
<Option value="NEW">NEW</Option>
</Select>
</FormItem>
</Col>
<Col span={12}>
<FormItem
label="Common Reference"
required={this.props.status == 'M' || mval ? 'required' : null}
help={errmsg.s2}
validateStatus={errmsg.s2 ? 'error' : null}
>
<Input value={value.s2} addonBefore="/" onChange={e => this.onChange(2, e.target.value)} maxLength={16} style={{ imeMode: 'disabled' }} placeholder="Common Reference" />
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
......@@ -18,7 +18,7 @@ export default class T22A extends Component
onChange=(val)=>{
this.props.onValue([{s1:val},val])
}
render()
{
let value =this.props.value
......@@ -27,8 +27,35 @@ export default class T22A extends Component
let errmsg = value && value.length==3?value[2]:{}
value = value && value.length? value[0] : {}
let Purpose = ['ACNF','ADVI','ISSU']
let Purpose1 = ['ACNF','ADVI','ISSU']
Purpose1 = [
{code:"ACNF",name:"ACNF"},
{code:"ADVI",name:"ADVI"},
{code:"ISSU",name:"ISSU"}]
if(this.props.mty == 'mt300')
Purpose = ['AMND','CANC','DUPL','EXOP','NEWT']
Purpose1 = [
{code:"AMND",name:"Amendment"},
{code:"CANC",name:"Cancellation"},
{code:"DUPL",name:"Duplicate"},
{code:"EXOP",name:"Option Exercise"},
{code:"NEWT",name:"New Confirmation"}]
if(this.props.mty == 'mt306')
Purpose = ['AMND','CANC','NEWT']
Purpose1 = [
{code:"AMND",name:"Amendment"},
{code:"CANC",name:"Cancellation"},
{code:"NEWT",name:"New Confirmation"}]
if(this.props.mty == 'mt320' || this.props.mty == 'mt360' || this.props.mty == 'mt620')
Purpose = ['AMND','CANC','DUPL','NEWT']
Purpose1 = [
{code:"AMND",name:"Amendment"},
{code:"CANC",name:"Cancellation"},
{code:"DUPL",name:"Duplicate"},
{code:"NEWT",name:"New Confirmation"}]
return (<Row>
<Col span={5}>
<Col span={10}>
<FormItem
help={errmsg.s1}
......@@ -41,10 +68,10 @@ export default class T22A extends Component
optionFilterProp="children"
notFoundContent="Wrong Code"
style={{ width: "100%" }} value={value.s1} onChange={val=>this.onChange(val)} >
<Option value="ACNF">ACNF</Option>
<Option value="ADVI">ADVI</Option>
<Option value="ISSU">ISSU</Option>
{
Purpose1.map(item=><Option key={item.code} value={item.code}>{item.code+'-'+item.name}</Option>)
}
</Select>
</FormItem>
</Col>
......
import React, { Component } from 'react'
import { Form, Input, DatePicker, Row, Col, Button, Icon, Select } from 'antd';
import { InputSize, Currency, FormatAmount,mt320_22B } from "./Utils"
const FormItem = Form.Item;
const Option = Select.Option
export default class T22B extends Component {
name = '22B'
desp = "Type of Event"
pattern = " 4!c"
tno = -1
onChange = (val) => {
this.props.onValue([{ s1: val }, val])
}
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] : {}
let codes = ['ARBA', 'ATVI', 'AUME', 'AUSY', 'BEBR', 'BRSP', 'CAMO', 'CATO', 'CHGE', 'CHZU', 'CLSA', 'CNBE', 'CZPR', 'DECB', 'DEFR', 'DKCO', 'EETA', 'ESMA', 'EUTA', 'FIHE', 'FRPA', 'GBLO', 'GRAT', 'HKHK', 'HUBU', 'IDJA', 'IEDU', 'ILTA', 'INMU', 'ITMI', 'ITRO', 'JPTO', 'KRSE', 'LBBE', 'LKCO', 'LULU', 'MXMC', 'MYKL', 'NLAM', 'NOOS', 'NYFD', 'NYSE', 'NZAU', 'NZWE', 'PAPC', 'PHMA', 'PKKA', 'PLWA', 'PTLI', 'ROBU', 'RUMO', 'SARI', 'SEST', 'SGSI', 'SKBR', 'THBA', 'TRAN', 'TRIS', 'TWTA', 'USCH', 'USGS', 'USLA', 'USNY', 'VNHA', 'ZAJO']
if (this.props.mty == 'mt320' || this.props.mty == 'mt620')
codes = ['CONF', 'MATU', 'ROLL']
return (<Row>
<Col span={17}>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Select size={InputSize}
placeholder={this.props.desp}
showSearch
allowClear={true}
optionFilterProp="children"
notFoundContent="Wrong Code"
style={{ width: "100%" }} value={value.s1} onChange={val => this.onChange(val)} >
{
mt320_22B.map(item=><Option key={item.code} value={item.code}>{item.code+'-'+item.name}</Option>)
}
</Select>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
import React,{Component} from 'react'
import { Form, Input, DatePicker,Row, Col,Button,Icon ,Select} from 'antd';
const FormItem = Form.Item;
export default class T22C extends Component
{
name='22'
desp = "Common Reference"
pattern = "16x"
tno = -1
onChange=(val)=>{
this.props.onValue([{s1:val},val])
}
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 span={10}>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Input maxLength={16} value={value.s1} placeholder={this.props.desp} style={{'imeMode':'disabled'}} onChange={e=>this.onChange(e.target.value)}/>
</FormItem>
</Col>
<Col span={1}></Col>
{/*(this.props.mty && 'mt410,mt420,mt422,mt701'.indexOf(this.props.mty) > -100)?null:
<Col span={2}><Button size="small" type="primary" shape="circle" icon="plus" title="Gener Ref."/></Col>*/}
</Row>)
}
}
\ No newline at end of file
......@@ -7,7 +7,7 @@ import {InputSize,Currency,FormatAmount} from "./Utils"
const FormItem = Form.Item;
const Option = Select.Option
export default class T22A extends Component
export default class T22D extends Component
{
name='22D'
......@@ -41,10 +41,10 @@ export default class T22A extends Component
optionFilterProp="children"
notFoundContent="Wrong Code"
style={{ width: "100%" }} value={value.s1} onChange={val=>this.onChange(val)} >
<Option value="DGAR">DGAR</Option>
<Option value="DOCR">DOCR</Option>
<Option value="STBY">STBY</Option>
<Option value="UNDK">UNDK</Option>
<Option value="DGAR">DGAR-Demand guarantee</Option>
<Option value="DOCR">DOCR-Documentary credit</Option>
<Option value="STBY">STBY-Standby letter of credit</Option>
<Option value="UNDK">UNDK-Undertaking</Option>
</Select>
</FormItem>
</Col>
......
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 T22E extends Component {
name = '22E'
desp = "Type of Payment"
pattern = "4!c"
tno = -1
onChange = (val) => {
this.props.onValue([{ s1: val }, val])
}
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 span={5}>
<FormItem
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Select size={InputSize}
placeholder={this.props.desp}
showSearch
allowClear={true}
optionFilterProp="children"
notFoundContent="Wrong Code"
style={{ width: "100%" }} value={value.s1} onChange={val => this.onChange(val)} >
<Option value="FEES">FEES</Option>
<Option value="PRMP">PRMP</Option>
</Select>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T22L extends Component
{
name='22L'
desp = "Reporting Jurisdiction"
pattern = "35x"
tno = -1
keys=[1]
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}`
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":'350px'}} span={3}>
<FormItem
label="Reporting Jurisdiction"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Input value={value.s1} onChange={e=>this.onChange(1,e.target.value)} maxLength={35} style={{imeMode:'disabled'}} placeholder="Reporting Jurisdiction"/>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T22M extends Component {
name = '22M'
desp = " PUTI Namespace/Issuer Code"
pattern = "30x"
tno = -1
keys = [1]
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}`
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": '350px' }} span={3}>
<FormItem
label="Namespace"
required={this.props.status == 'M' || mval ? 'required' : null}
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Input value={value.s1} onChange={e => this.onChange(1, e.target.value)} maxLength={30} style={{ imeMode: 'disabled' }} placeholder="Namespace" />
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T22N extends Component {
name = '22N'
desp = "Transaction Identifier"
pattern = "32x"
tno = -1
keys = [1]
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}`
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": '350px' }} span={3}>
<FormItem
label=""
required={this.props.status == 'M' || mval ? 'required' : null}
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Input value={value.s1} onChange={e => this.onChange(1, e.target.value)} maxLength={32} style={{ imeMode: 'disabled' }} placeholder="" />
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T22P extends Component {
name = '22P'
desp = " PUTI Namespace/Issuer Code"
pattern = "30x"
tno = -1
keys = [1]
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}`
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": '350px' }} span={3}>
<FormItem
label="Namespace"
required={this.props.status == 'M' || mval ? 'required' : null}
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Input value={value.s1} onChange={e => this.onChange(1, e.target.value)} maxLength={30} style={{ imeMode: 'disabled' }} placeholder="Namespace" />
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T22Q extends Component
{
name='22Q'
desp = "Collateral Portfolio Code"
pattern = "10x"
tno = -1
keys=[1]
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}`
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":'150px'}} span={3}>
<FormItem
label="Portfolio"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Input value={value.s1} onChange={e=>this.onChange(1,e.target.value)} maxLength={10} style={{imeMode:'disabled'}} placeholder="Portfolio"/>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T22R extends Component {
name = '22R'
desp = "Prior Transaction Identifier"
pattern = "32x"
tno = -1
keys = [1]
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}`
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": '350px' }} span={3}>
<FormItem
label=""
required={this.props.status == 'M' || mval ? 'required' : null}
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Input value={value.s1} onChange={e => this.onChange(1, e.target.value)} maxLength={32} style={{ imeMode: 'disabled' }} placeholder="" />
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T22S extends Component
{
name='22S'
desp = "Cleared Product Identification"
pattern = "1!a/35x"
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":'150px'}} span={3}>
<FormItem
label="Side Indicator"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Select allowClear={true} value={value.s1} placeholder="Side Indicator" style={{ width: "100%" }} onChange={val=>this.onChange(1,val)}>
<Option value="C">C-for client leg</Option>
<Option value="P">P-for (CCP)Central Counterparty leg.</Option>
</Select>
</FormItem>
</Col>
<Col style={{"minWidth":'350px'}} span={3}>
<FormItem
label="Identification"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s2}
validateStatus={errmsg.s2?'error':null}
>
<Input value={value.s2} onChange={e=>this.onChange(2,e.target.value)} maxLength={35} style={{imeMode:'disabled'}} placeholder="Identification"/>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T22T extends Component
{
name='22T'
desp = "Cleared Product Identification"
pattern = "35x"
tno = -1
keys=[1]
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}`
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":'350px'}} span={3}>
<FormItem
label="Identification"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Input value={value.s1} onChange={e=>this.onChange(1,e.target.value)} maxLength={35} style={{imeMode:'disabled'}} placeholder="Identification"/>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T22U extends Component
{
name='22U'
desp = "Underlying Product Identifier"
pattern = "6a"
tno = -1
keys=[1]
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}`
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":'150px'}} span={3}>
<FormItem
label="Product Identifier"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Input value={value.s1} onChange={e=>this.onChange(1,e.target.value)} maxLength={6} style={{imeMode:'disabled'}} placeholder="Product Identifier"/>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T22V extends Component
{
name='22V'
desp = "Link Swap Identification"
pattern = "35x"
tno = -1
keys=[1]
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}`
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":'350px'}} span={3}>
<FormItem
label=""
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Input value={value.s1} onChange={e=>this.onChange(1,e.target.value)} maxLength={35} style={{imeMode:'disabled'}} placeholder=""/>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T22W extends Component
{
name='22W'
desp = "Link Swap Identification"
pattern = "42x"
tno = -1
keys=[1]
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}`
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":'350px'}} span={3}>
<FormItem
label="Identification"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Input value={value.s1} onChange={e=>this.onChange(1,e.target.value)} maxLength={42} style={{imeMode:'disabled'}} placeholder="Identification"/>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
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 T22Z extends Component {
name = '22Z'
desp = "Underlying Product Identifier"
pattern = "6a"
tno = -1
keys = [1]
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}`
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": '350px' }} span={3}>
<FormItem
label="Product Identifier"
required={this.props.status == 'M' || mval ? 'required' : null}
help={errmsg.s1}
validateStatus={errmsg.s1 ? 'error' : null}
>
<Input value={value.s1} onChange={e => this.onChange(1, e.target.value)} maxLength={6} style={{ imeMode: 'disabled' }} placeholder="Product Identifier" />
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
......@@ -31,7 +31,7 @@ export default class T23 extends Component
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Input value={value.s1} placeholder={this.props.desp} style={{'imeMode':'disabled'}} onChange={e=>this.onChange(e.target.value)}/>
<Input value={value.s1} maxLength={16} placeholder={this.props.desp} style={{'imeMode':'disabled'}} onChange={e=>this.onChange(e.target.value)}/>
</FormItem>
</Col>
</Row>)
......
import React,{Component} from 'react'
import { Form, Input, DatePicker,Row, Col,Button,Icon ,Select,TimePicker} from 'antd';
import {InputSize,Currency,FormatAmount} from "../Utils"
const FormItem = Form.Item;
const Option = Select.Option
export default class T23 extends Component
{
name='23'
desp = "(Code 1)(Code 2)(Code 3)(Currency)"
pattern = "4a/4a/1!a/3!a"
tno = -1
keys = [1,2,3,4]
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||''}/${obj.s3||''}/${obj.s4||''}`
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 span={1} style={{textAlign:'center'}}><h3 style={{display:'inline-block'}}>/</h3></Col>*/}
<Col style={{"minWidth":'100px'}} span={3}>
<FormItem
label="Code 1"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s1}
validateStatus={errmsg.s1?'error':null}
>
<Select allowClear={true} ref="s1" value={value.s1} placeholder="Code" style={{ width: "100%" }} onChange={val=>this.onChange(1,val)}>
<Option value="BUY">BUY</Option>
<Option value="SELL">SELL</Option>
</Select>
</FormItem>
</Col>
{/*<Col span={1} style={{textAlign:'center'}}><h3 style={{display:'inline-block'}}>/</h3></Col>*/}
<Col style={{"minWidth":'100px'}} span={3}>
<FormItem
label="Code 2"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s2}
validateStatus={errmsg.s2?'error':null}
>
<Select allowClear={true} ref="s1" value={value.s2} placeholder="Code" style={{ width: "100%" }} onChange={val=>this.onChange(2,val)}>
<Option value="CALL">CALL</Option>
<Option value="PUT">PUT</Option>
</Select>
</FormItem>
</Col>
<Col style={{"minWidth":'80px'}} span={3}>
<FormItem
label="Code 3"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s3}
validateStatus={errmsg.s3?'error':null}
>
<Select allowClear={true} ref="s3" value={value.s3} placeholder="Sign" style={{ width: "100%" }} onChange={val=>this.onChange(3,val)}>
<Option value="A">A</Option>
<Option value="E">E</Option>
</Select>
</FormItem>
</Col>
<Col style={{"minWidth":'100px'}} span={6}>
<FormItem
label="Currency"
required={this.props.status=='M' || mval?'required':null}
help={errmsg.s4}
validateStatus={errmsg.s4?'error':null}
>
<Select
placeholder="Currency"
showSearch
allowClear={true}
optionFilterProp="children"
notFoundContent="Wrong Code"
style={{ width: "100%" }} value={value.s4} onChange={val=>this.onChange(4,val)} >
{
Currency.map(cur=><Option key={cur} value={cur}>{cur}</Option>)
}
</Select>
</FormItem>
</Col>
</Row>)
}
}
\ No newline at end of file
......@@ -2,19 +2,25 @@ import React,{Component} from 'react'
import T23_d from './T23'
import T23_1 from './T23_1'
import T23_305 from './T23_305'
const mtys1 = ['mt752']
const code1 = ["ACCEPT","DEBIT","NEGOTIATE","REIMBURSE","REMITTED","SEE79Z"]
const mtys2 = ['mt760','mt767']
const code2 = ["ISSUE","REQUEST"]
const code3 = ["DELIVERY","TRANSFER"]
export default function(props)
{
let {mty} = props
if(mty == 'mt752')
if(mty=='mt752')
return <T23_1 {...props} SELCode={code1} />
if(mty=='mt760' || mty=='mt767')
if(mty== 'mt760' || mty == 'mt767')
return <T23_1 {...props} SELCode={code2} />
if(mty== 'mt305')
return <T23_305 {...props} />
if(mty== 'mt605')
return <T23_1 {...props} SELCode={code3} />
return <T23_d {...props} />
}
\ No newline at end of file
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>)
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment