import moment from 'moment';
import BigNumber from 'bignumber.js';

export default {
	data() {
		return {
			rules: {
        "dedgrp.rec.ownref": [{
					type: "string",
					required: true,
					message: "必输项"
        },],

				"dedgrp.rec.lcrtyp": [{
					type: "string",
					required: true,
					message: "必输项"
        },],
        
        "dedgrp.cbs.nom1.cur": [{
					type: "string",
					required: true,
					message: "必输项"
        },],

        "dedgrp.cbs.nom1.amt": [
					{ required: true, message: "必输项" },
					{
						validator(rule, value, callback) {
							if (value <= 0) {
								return callback(new Error('金额必须为正数'));
							} else {
								callback();
							}
						}, trigger: ['blur', 'change']
					}
				],

        "dedgrp.rec.finrenflg": [{
					type: "string",
					required: true,
					message: "必输项"
        },],


        "dedgrp.rec.avbby": [{
					type: "string",
					required: true,
					message: "必输项"
        },],

        "dedgrp.blk.defdet": [{
					type: "string",
					required: true,
					message: "必输项"
        },],

        "dedgrp.rec.dkflg": [{
					type: "string",
					required: true,
					message: "必输项"
        },],

        "dedgrp.rec.mytype": [{
					type: "string",
					required: true,
					message: "必输项"
        },],

        "dedgrp.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: 'change'
					}
        ],

        "dedgrp.rec.nomtop": [
					{
						validator: (rule, value, callback) => {
							if (this.model.dedgrp.rec.nomtop < 0) {
								callback(new Error('This amount tolerance has to be positive'))
							}
							callback()
						},
						trigger: 'change'
					}
				],
        
        "dedgrp.rec.nomton": [
					{
						validator: (rule, value, callback) => {
							if (this.model.dedgrp.rec.nomton < 0) {
								callback(new Error('Please enter this amount tolerance without a sign'))
							}
							callback()
						},
						trigger: 'change'
					}
        ],

        "dedgrp.rec.expdat": [
					{ required: true, message: "必输项" },
					{
						validator: (rule, value, callback) => {
							if (this.model.dedgrp.rec.opndat && moment(value).diff(moment(this.model.dedgrp.rec.opndat), 'days') < 0) {
								callback(new Error('有效期不得早于开证日期'));
							}
							if (this.model.dedgrp.rec.shpdat && moment(value).diff(moment(this.model.dedgrp.rec.shpdat), 'days') < 0) {
								callback(new Error('有效期不得早于最迟装运日'));
							}
							//校验通过
							callback();
						}, trigger: ['blur', 'change']
					}
        ],
      
      
        "dedgrp.rec.shpdat": [
					{
						validator: (rule, value, callback) => {
							if (moment(value).diff(moment(this.model.dedgrp.rec.expdat), 'days') > 0) {
								callback(new Error('最迟装运日不得晚于有效期'));
							}
							//校验通过
							callback();
						}, trigger: ['blur', 'change']
					}
        ],
        
        "dedgrp.rec.elcflg": [{
					required: true,
					message: "必输项"
        },],

        "dedgrp.rec.avbwth": [
					{
						validator: (rule, value, callback) => {
							if (this.model.dedgrp.rec.isyifu == 'Y' && this.model.dedgrp.rec.opndat && !this.model.dedgrp.avb.pts.extkey && !this.model.dedgrp.rec.avbwth) {
								callback(new Error('必输项'));
							}
							//校验通过
							callback();
						}, trigger: ['blur', 'change']
					}
        ],

        "dedgrp.ben.pts.extact": [{
					required: true,
					message: "必输项"
        },],

        "dedgrp.rec.kzref": [{
					required: true,
					message: "必输项"
        },],

        "dedgrp.rec.conno": [{
					required: true,
					message: "必输项"
        },],

        "dedgrp.rec.tenmaxday": [
					{
						validator: (rule, value, callback) => {
							if ((Number(this.model.dedgrp.rec.tenmaxday) == 0 || !this.model.dedgrp.rec.tenmaxday) && this.model.dedgrp.rec.avbby != 'P') {
									callback(new Error('必输项'))
							}
							//校验通过
							callback();
						}, trigger: ['blur', 'change']
					}
				],
        
			}
		}
	}
}