check.js 11.9 KB
import {isModified} from "../../../../../service/business/rmb";
import {checkRuleOfTDB} from "RcpmisRules"
import BigNumber from 'bignumber.js';
export default class Rmb2111Check {
    constructor(_this) {
			let thiz = {model:_this.model.rmbbop.rmb2111,root:_this,isCom:true}
        let checks = checkRuleOfTDB().call({module:"TDBCOM"}).call(thiz,_this,null,BigNumber)
        let target = {}
        //映射路径
        Object.keys(checks).forEach(key=>target['rmbbop.rmb2111.'+key]=checks[key])
        this.check = target
        // this.check = {
        //     // "rmbbop.rmb2111.recgrp.ads.opertype": [
        //     //     {required: true, message: '必输项'}
        //     // ],
        //     // "rmbbop.rmb2111.recgrp.ads.bankorgcode": [
        //     //     {required: true, message: '必输项'}
        //     // ],
        //     "rmbbop.rmb2111.recgrp.ads.payeecountrycode": [
        //         {required: true, message: '必输项'}
        //     ],
        //     "rmbbop.rmb2111.recgrp.ads.actiondesc": [
        //         {
        //             validator: (rule, value, callback) => {
        //                 let opertype = _this.model.rmbbop.rmb2111.recgrp.ads.opertype;
        //                 if (opertype === '2' || opertype === '3') {
        //                     if (!value) {
        //                         return callback(new Error('必输项'))
        //                     }
        //                 }
        //                 callback()
        //             }
        //         }
        //     ],
        //     // "rmbbop.rmb2111.recgrp.ads.levyno": [
        //     //     {required: true, message: '必输项'}
        //     // ],
        //     "rmbbop.rmb2111.recgrp.ads.ifrefund": [
        //         {required: true, message: '必输项'}
        //     ],
        //     "rmbbop.rmb2111.recgrp.ads.allamt": [
        //         {required: true, message: '必输项'},
        //         {
        //             validator: (rule, value, callback) => {
        //                 let allamt = 0;
        //                 let counttrue = 0;
        //                 let tbk = _this.model.rmbbop.rmb2111.recgrp.tbk;
        //                 for (let i = 0; i < tbk.length; i++) {
        //                     if (tbk[i].listopertype === '1' && tbk[i].sta !== 'G' && tbk[i].sta !== 'D') {
        //                         allamt += Number(tbk[i].payamt);
        //                         counttrue += 1
        //                     }
        //                 }
        //                 if (Number(value) !== allamt && counttrue > 0) {
        //                     return callback(new Error('总金额应等于支出明细信息的付款金额之和'))
        //                 }
        //                 callback()
        //             }
        //         },
        //         {
        //             validator: async (rule, value, callback) => {
        //                 if (_this.trnName.toLowerCase().substring(0, 6) === 'cptopn') {
        //                     if (Number(value) !== Number(_this.model.cpdgrp.cbs.max.amt)) {
        //                         await _this.$msgbox({
        //                             showClose: false,
        //                             closeOnClickModal: false,
        //                             title: "提示",
        //                             message: "总金额与汇款金额不一致",
        //                             type: "warning"
        //                         })
        //                     }
        //                 }
        //                 callback()
        //             }, trigger: 'blur'
        //         }
        //     ],
        //     "rmbbop.rmb2111.recgrp.ads.balancemode": [
        //         {required: true, message: '必输项'}
        //     ],
        //     // "rmbbop.rmb2111.recgrp.ads.oriinclevyno":[{
        //     // 	validator:(rule,value,callback)=>{
        //     // 		if (!value && _this.model.rmbbop.rmb2111.recgrp.ads.balancemode == 'Y'){
        //     // 			return callback(new Error('必输项'))
        //     // 		}
        //     // 		callback()
        //     // 	}
        //     // }],
        //     "rmbbop.rmb2111.recgrp.ads.oriinclevyno": [
        //         {required: _this.model.rmbbop.rmb2111.recgrp.ads.ifrefund === 'Y', message: '必输项'}
        //     ],
        //     "rmbbop.rmb2111.recgrp.ads.payeeacct": [
        //         {required: true, message: '必输项'}
        //     ],
        //     "rmbbop.rmb2111.recgrp.ads.payeeaccttype": [
        //         {required: true, message: '必输项'}
        //     ],
        //     "rmbbop.rmb2111.recgrp.ads.payeename": [
        //         {required: true, message: '必输项'}
        //     ],
        //     "rmbbop.rmb2111.recgrp.ads.payeracct": [
        //         {required: true, message: '必输项'}
        //     ],
        //     "rmbbop.rmb2111.recgrp.ads.payerattr": [
        //         {required: true, message: '必输项'}
        //     ],
        //     "rmbbop.rmb2111.recgrp.ads.payercny": [
        //         {required: true, message: '必输项'}
        //     ],
        //     "rmbbop.rmb2111.recgrp.ads.payerdate": [
        //         {required: true, message: '必输项'},
        //         {
        //             validator: (rule, value, callback) => {
        //                 if (!value && new Date(value).getTime() > new Date().getTime()) {
        //                     return callback(new Error('该字段必须小于等于系统当前日期'))
        //                 }
        //                 callback()
        //             }
        //         }
        //     ],
        //     "rmbbop.rmb2111.recgrp.ads.payerorgcode": [
        //         {required: true, message: '必输项'},
        //         {
        //             validator: (rule, value, callback) => {
        //                 let payType = _this.model.rmbbop.rmb2111.recgrp.ads.payerattr;
        //                 switch (payType) {
        //                     case '1001':
        //                     case '':
        //                         if (value.length !== 18) {
        //                             return callback(new Error('请填写18位身份证号码'))
        //                         }
        //                         callback();
        //                         break;
        //                     case '2001':
        //                     case '2002':
        //                     case '2003':
        //                         if (value.length !== 9 && value.length !== 18) {
        //                             return callback(new Error('填写9位组织机构代码或18位统一社会信用代码'))
        //                         } else {
        //                             if (!(/^[A-Z0-9]+$/.test(value))) {
        //                                 return callback(new Error('代码仅支持数字和大写字母'))
        //                             }
        //                         }
        //                         callback()
        //                 }
        //             }
        //         },
        //         {
        //             validator: async (rule, value, callback) => {
        //                 if (_this.trnName.toLowerCase().substring(0, 6) === 'cptopn') {
        //                     const recgrp = _this.model.rmbbop.rmb2111.recgrp;
        //                     const key = 'payerorgcode=';
        //                     const payerorgcode = recgrp.ads.modifySet.find(i => i.startsWith(key)).substring(key.length);
        //                     if (value !== payerorgcode && isModified(recgrp.ads, 'payerorgcode')) {
        //                         await _this.$msgbox({
        //                             showClose: false,
        //                             closeOnClickModal: false,
        //                             title: "提示",
        //                             message: "付款人身份证件号码错误",
        //                             type: "warning"
        //                         })
        //                     }
        //                 }
        //                 callback()
        //             }, trigger: 'blur'
        //         },
        //     ],
        //     "rmbbop.rmb2111.recgrp.ads.payername": [
        //         {required: true, message: '必输项'}
        //     ],
        //     // "rmbbop.rmb2111.recgrp.ads.payerattr":[{
        //     // 	validator:(rule,value,callback)=>{
        //     // 		let trnrol =''
        //     // 		switch (this.$root.trnName) {
        //     // 			case "BRTSET":
        //     // 			case "BRTSUS":
        //     // 			case "BRTPAY":
        //     // 			case "GITSET": 
        //     // 			case "BRTUTL":
        //     // 				trnrol = "APL"
        //     // 				break
        //     // 			case "BCTSET":
        //     // 			case "BCTSUS": 
        //     // 			case "BCTPAY":
        //     // 				trnrol = "DRE"
        //     // 				break
        //     // 			case "BOTSET":
        //     // 			case "BOTPAY":
        //     // 				trnrol = "DRR"
        //     // 				break
        //     // 			case "BETSET":
        //     // 				trnrol = "BEN"
        //     // 				break
        //     // 			case "CCTSET":
        //     // 				trnrol = "PRE"
        //     // 				break
        //     // 			case "BPTOPN":
        //     // 				trnrol = "FIA"
        //     // 				break
        //     // 			case "BTTSET":
        //     // 			case "BTTPAY":
        //     // 				trnrol = "BE1"
        //     // 				break
        //     // 		  case "CPTOPN":
        //     // 			case "CPTATO":
        //     // 				trnrol = "ORC"
        //     // 				break
        //     // 		  case "CPTADV":
        //     // 			case "CPTREP":
        //     // 			case "CPTATI":
        //     // 				trnrol = "PYE"
        //     // 				break
        //     // 		  case "GETSET":
        //     // 				trnrol = "BEN"
        //     // 				break
        //     // 			case "CPTSET":
        //     // 			case "DFTSET":
        //     // 				trnrol = "APL"
        //     // 				break
        //     // 		}

        //     // 	}
        //     // }],
        //     "rmbbop.rmb2111.recgrp.ads.recebankcode": [
        //         {required: true, message: '必输项'},
        //         {
        //             validator: (rule, value, callback) => {
        //                 if (value.length < 11) {
        //                     return callback(new Error('请输入11位SWIFT BIC或12位支付行号'))
        //                 }
        //                 callback()
        //             }
        //         }
        //     ],
        //     // "rmbbop.rmbbop2111Vo.newnum": [
        //     //     {
        //     //         validator: (rule, value, callback) => {
        //     //             if (value < 0) {
        //     //                 return callback(new Error('节点数目不能为负数!'))
        //     //             }
        //     //             callback()
        //     //         }
        //     //     }
        //     // ]
        //     "rmbbop.rmb2111.recgrp.tbk": [
        //         {
        //             validator: async (rule, value, callback) => {
        //                 if (_this.trnName.toLowerCase().substring(0, 6) === 'cptopn') {
        //                     if (_this.model.rmbbop.rmb2111.recgrp.tbk.length === 0) {
        //                         await _this.$msgbox({
        //                             showClose: false,
        //                             closeOnClickModal: false,
        //                             title: "提示",
        //                             message: "请确认是否添加跨境人民币明细信息",
        //                             type: "warning"
        //                         })
        //                     }
        //                 }
        //                 callback()
        //             }
        //         }
        //     ],
        // }
    }
}