import moment from 'moment'; import BigNumber from 'bignumber.js'; export default { data() { return { rules: { "didgrp.rec.godnam":[ { required: true, message: "必输项" }, ], "didgrp.rec.shppar":[ { required: true, message: "必输项" }, ], "didgrp.rec.fenctg":[ { required: true, message: "必输项" }, ], "didgrp.cbs.nom1.cur":[ { required: true, message: "必输项" }, ], "didgrp.cbs.nom1.amt": [ { required: true, message: "必输项" }, { validator(rule, value, callback) { if (value <= 0) { return callback(new Error('金额必须为正数')); } else { callback(); } }, trigger: ['blur', 'change'] } ], "didgrp.rec.hmyamt": [ { validator: (rule, value, callback) => { if (this.model.didgrp.rec.mytype == '3') { if (value == "" || value == 0) { callback(new Error('必输项')) } else if (value < 0) { callback(new Error('金额必须为正数')) } else { if (value > 0 && this.model.didgrp.rec.fmyamt > 0 && (new BigNumber(value).plus(new BigNumber(this.model.didgrp.rec.fmyamt)).comparedTo(new BigNumber(this.model.didgrp.cbs.max.amt)) != 0)) { callback(new Error('货物贸易金额与服务贸易金额之和应等于信用证最大金额')) } } } callback(); }, trigger: ['blur', 'change'] } ], "didgrp.rec.fmyamt": [ { validator: (rule, value, callback) => { if (this.model.didgrp.rec.mytype == '3') { if (value == "" || value == 0) { callback(new Error('必输项')) } else if (value < 0) { callback(new Error('金额必须为正数')) } else { if (value > 0 && this.model.didgrp.rec.hmyamt > 0 && (new BigNumber(value).plus(new BigNumber(this.model.didgrp.rec.hmyamt)).comparedTo(new BigNumber(this.model.didgrp.cbs.max.amt)) != 0)) { callback(new Error('货物贸易金额与服务贸易金额之和应等于信用证最大金额')) } } } callback(); }, trigger: ['blur', 'change'] } ], "didgrp.rec.bsisaeflg": [ { required: true, message: "必输项" } ], "didgrp.apb.pts.jigomc": [ { validator: (rule, value, callback) => { if (this.model.didgrp.rec.elcflg == 'Y') { if (value == null || value == "") { callback(new Error('必输项')) } } //校验通过 callback(); }, trigger: ['blur', 'change'] } ], "didgrp.rec.opndat": [ { required: true, message: "必输项" }, { validator: (rule, value, callback) => { if (moment(value).diff(moment(new Date()).format('YYYY-MM-DD'), 'days') != 0) { callback(new Error('开证日期必须为当前日期!')) } callback() }, trigger: ['blur', 'change'] } ], "didgrp.rec.shpdat": [ { required: true, message: "必输项" }, { validator: (rule, value, callback) => { if (this.model.didgrp.rec.elcflg == 'Y') { if (value == null || value == "") { callback(new Error('必输项')) } } if (moment(value).diff(moment(this.model.didgrp.rec.expdat), 'days') > 0) { callback(new Error('最迟装运日不得晚于有效期')); } //校验通过 callback(); }, trigger: ['blur', 'change'] } ], "didgrp.rec.expdat": [ { required: true, message: "必输项" }, { validator: (rule, value, callback) => { if (moment(value).diff(moment(this.model.didgrp.rec.opndat), 'days') < 0) { callback(new Error('有效期不得早于开证日期')); } if (moment(value).diff(moment(this.model.didgrp.rec.shpdat), 'days') < 0) { callback(new Error('有效期不得早于最迟装运日')); } // if (this.model.didgrp.rec.elcflg == 'Y') { // if (moment(value).diff(moment(this.model.didgrp.rec.opndat), 'days') > 366) { // callback(new Error('有效期最长不超过自开证日起算366天')); // } // } if (moment(value).diff(moment(this.model.didgrp.rec.opndat).add(1,"days"), 'years') >0) { callback(new Error('效期超一年')); } //校验通过 callback(); }, trigger: ['blur', 'change'] } ], "didgrp.rec.idcode": [ { type: "string", required: false, message: "必输项" }, { max: 18, message: "长度不能超过18" } ], "ditp.yptxy":[ { validator: (rule, value, callback) => { if(this.model.ditp.xyflg == '' && value=="Y"){ callback(new Error('请点击协议签署按钮!')) } callback() }, trigger: ['blur', 'change'] } ], "didgrp.rec.tenmaxday": [ { type: "integer", required: false, message: "请输入正确的数字" }, { validator: (rule, value, callback) => { if (this.model.didgrp.rec.avbby == 'D') { if (value <= 0) { callback(new Error('必输项')); } if (value > 366) { callback(new Error('付款期限不应超过366天')); } callback(); } callback(); }, trigger: ['blur', 'change'] }, ], "didgrp.ben.pts.extact":[ { type: "string", required: true, message: "必输项" }, ], "didgrp.rec.shpfro": [ { type: "string", required: false, message: "必输项" }, ], "didgrp.rec.shpto": [ { type: "string", required: false, message: "必输项" }, ], "didgrp.rec.conno": [ { required: true, message: "必输项" }, ], "didgrp.rec.shppro": [ { type: "string", required: false, message: "必输项" }, ], "didgrp.rec.concur": [ { required: true, message: "必输项" }, ], "didgrp.rec.conamt": [ { required: true, message: "必输项" }, { validator(rule, value, callback) { if (value < 0) { return callback(new Error('金额不能为负数')); } else { callback(); } }, trigger: ['blur', 'change'] } ], "didgrp.rec.tzref": [ { type: "string", required: false, message: "必输项" }, ], "didgrp.blk.lcrgod":[ { validator: (rule, value, callback) => { if(this.model.didgrp.rec.elcflg=="Y"){ if(value==""){ return callback(new Error('必输项')); } else{ if (/["]+/g.test(value)) { return callback(new Error('电证时,此栏位不能输入英文双引号字符')); } } } callback(); }, trigger: ['blur', 'change'] } ], "didgrp.blk.lcrdoc": [ { validator: (rule, value, callback) => { if(this.model.didgrp.rec.elcflg=="Y"){ if(value==""){ return callback(new Error('必输项')); } else{ if (/["]+/g.test(value)) { return callback(new Error('电证时,此栏位不能输入英文双引号字符')); } } } callback(); }, trigger: ['blur', 'change'] } ], "didgrp.blk.adlcnd": [ { validator: (rule, value, callback) => { if(this.model.didgrp.rec.elcflg=="Y"){ if (/["]+/g.test(value)) { return callback(new Error('电证时,此栏位不能输入英文双引号字符')); } } callback(); }, trigger: ['blur', 'change'] } ], "didgrp.blk.insbnk": [ { validator: (rule, value, callback) => { if(this.model.didgrp.rec.elcflg=="Y"){ if (/["]+/g.test(value)) { return callback(new Error('电证时,此栏位不能输入英文双引号字符')); } } callback(); }, trigger: ['blur', 'change'] } ], "didgrp.rec.finrenflg": [ { required: true, message: "必输项" } ], "didgrp.rec.elcflg": [ { required: true, message: "必输项" } ], "didgrp.rec.guaflg": [ { required: true, message: "必输项" } ], //银行明细detp1 "didgrp.rec.avbwth": [ { validator: (rule, value, callback) => { if (this.model.didgrp.rec.opndat != null && this.model.didgrp.rec.opndat != "") { if (this.model.didgrp.rec.fenctg == "Y") { if (value == null || value == "") { callback(new Error("必输项")); } } //校验通过 callback(); } //校验通过 callback(); }, trigger: ['blur', 'change'] } ], //明细 "didgrp.rec.avbby": [ { required: true, message: "必输项" } ], //备查表 "litameadv":[ { required: true, message: "必输项" } ] } } } }