check.js 6.5 KB
import moment from 'moment';
export default class DftcreCheck {
  constructor(_this) {
    // 可以再当前方法中取_this,此_this即为根组件的this
    this.check = {
      "dftcre.dfdgrp.rec.pntref": null,
      "dftcre.dfdgrp.rec.pntnam": null,
      "dftcre.dfdgrp.rec.ownref": [{
        required: true,
        message: "必输项"
      }],
      "dftcre.dfdgrp.rec.nam": null,
      "dftcre.oricur": null,
      "dftcre.oriamt": null,
      "dftcre.dfdgrp.rec.rescur": null,
      "dftcre.dfdgrp.rec.resamt": [{
          required: true,
          message: "必输项"
        },
        {
          validator: (rule, value, callback) => {
            if (value == "" || value == null) {
              callback(new Error('必输项'));
            } else if(Number(value) < 0){
              callback(new Error('代付利息不能小于0'));
            } else {
              if(_this.model.dftcre.dfdgrp.rec.dfuflg == '1'){
                if(Number(value) < 0){
                  callback(new Error('境内代付时,代付利息需大于等于0'));
                }
              } else if(_this.model.dftcre.dfdgrp.rec.dfuflg == '2'){
                if(Number(value) <= 0){
                  callback(new Error('境外代付时,代付利息需大于0'));
                }
              }
            }
            callback();
          },
          trigger: ['change', 'blur']
        },
      ],
      "dftcre.dfdgrp.cbs.max.cur": [{
        required: true,
        message: "必输项"
      }],
      "dftcre.dfdgrp.cbs.max.amt": [{
          required: true,
          message: "必输项"
        },
        {
          validator: (rule, value, callback) => {
            if (_this.model.dftcre.oriamt != 0 && Number(value) > Number(_this.model.dftcre.oriamt)) {
              callback(new Error('代付金额大于原始金额'))
            } else if (value < 0) {
              callback(new Error('代付金额不能小于零'))
            } else {
              callback()
            }
          },
          trigger: ['blur', 'change']
        }
      ],
      "dftcre.dfdgrp.cbs.opn1.cur": null,
      "dftcre.dfdgrp.cbs.opn1.amt": null,
      "dftcre.dfdgrp.rec.trntyp": [{
        required: true,
        message: "必输项"
      }],
      "dftcre.dfdgrp.rec.fintyp": [{
        required: true,
        message: "必输项"
      }],
      "dftcre.dfdgrp.rec.dfuflg": [{
        required: true,
        message: "必输项"
      }],
      "dftcre.dfdgrp.rec.invtyp": [{
        required: true,
        message: "必输项"
      }],
      "dftcre.dfdgrp.rec.stttendat": [{
          required: true,
          message: "必输项"
        },
        {
          validator: (rule, value, callback) => {
            if ((value != "" && value != null) &&
              (_this.model.dftcre.dfdgrp.rec.matdat != "" && _this.model.dftcre.dfdgrp.rec.matdat != null) &&
              moment(value).diff(moment(_this.model.dftcre.dfdgrp.rec.matdat), 'days') > 0) {
              callback(new Error('代付起始日不得大于代付到期日'));
            }
            callback()
          },
          trigger: ['blur', 'change']
        }
      ],
      "dftcre.dfdgrp.rec.matdat": [{
          required: true,
          message: "必输项"
        },
        {
          validator: (rule, value, callback) => {
            if ((value != "" && value != null) &&
              (_this.model.dftcre.dfdgrp.rec.stttendat != "" && _this.model.dftcre.dfdgrp.rec.stttendat != null) &&
              moment(_this.model.dftcre.dfdgrp.rec.stttendat).diff(moment(value), 'days') > 0) {
              callback(new Error('代付到期日不得小于代付起始日'));
            }
            callback()
          },
          trigger: ['blur', 'change']
        }
      ],
      "dftcre.dfdgrp.rec.tenday": null,
      "dftcre.dfdgrp.rec.intprd": [{
          required: true,
          message: "必输项"
        },
        {
          validator: (rule, value, callback) => {
            if (_this.model.dftcre.dfdgrp.rec.fintyp === 'A') {
              if (value === '') {
                callback(new Error('必输项'));
              }
            }
            callback()
          },
          trigger: ['blur', 'change']
        }
      ],
      "dftcre.dfdgrp.rec.actrat": [{
        validator: (rule, value, callback) => {
          if (_this.model.dftcre.dfdgrp.rec.dfuflg !== '') {
            if (Number(value) === 0 || value === '') {
              callback(new Error('必输项'));
            } else {
              if (Number(value) <= 0){
                callback(new Error('代付利率必须大于0'));
              }
            }
          }
          callback()
        },
        trigger: ['blur', 'change']
      }],
      "dftcre.dfdgrp.rec.flttyp": [{
          required: true,
          message: "必输项"
        },
        {
          validator: (rule, value, callback) => {
            if (_this.model.dftcre.dfdgrp.rec.fintyp === 'A') {
              if (value === '') {
                callback(new Error('必输项'));
              }
            }
            callback()
          },
          trigger: ['blur', 'change']
        }
      ],
      "dftcre.dfdgrp.rec.fltval": null,
      "dftcre.dfdgrp.rec.guaflg": [{
        required: true,
        message: "必输项"
      }],
      "dftcre.dfdgrp.rec.bankcn": [{
          required: true,
          message: "必输项"
        },
        {
          validator: (rule, value, callback) => {
            if (_this.model.dftcre.dfdgrp.rec.fintyp === 'A') {
              if (value === '') {
                callback(new Error('必输项'));
              }
            }
            callback()
          },
          trigger: ['blur', 'change']
        }
      ],
      "dftcre.dfdgrp.rec.bankno": [{
          required: true,
          message: "必输项"
        },
        {
          validator: (rule, value, callback) => {
            if (_this.model.dftcre.dfdgrp.rec.fintyp === 'A') {
              if (value === '') {
                callback(new Error('必输项'));
              }
            }
            callback()
          },
          trigger: ['blur', 'change']
        }
      ],
      "dftcre.dfdgrp.rec.bnkact": null,
      "dftcre.dfdgrp.apl.pts.ref": null,
      "dftcre.dfdgrp.apl.pts.extkey": [{
        required: true,
        message: "必输项"
      }],
      "dftcre.dfdgrp.apl.pts.adrblk": null,
      "dftcre.dfdgrp.dff.pts.ref": null,
      "dftcre.dfdgrp.dff.pts.extkey": [{
        required: true,
        message: "必输项"
      }],
      "dftcre.dfdgrp.dff.pts.adrblk": null,
    }
  }
}