Authored by chenl

调整一些方法至共用Utils中。review by 张丽霞。

... ... @@ -14,6 +14,7 @@ import ReactNative, {
import Immutable, {Map} from 'immutable';
import Toast from '../../../common/components/Toast';
import Utils from '../../utils/Utils';
export default class BankCardAdd extends React.Component {
... ... @@ -30,9 +31,8 @@ export default class BankCardAdd extends React.Component {
bankCardNoChange(event) {
let value = event.nativeEvent.text;
let cardNo = value.replace(/\s/g, '');
let newCardNo = value.replace(/[^\d]/g, '').replace(/(\d{4})(?=\d)/g, '$1 ');
this.setState({newCardNo: newCardNo});
let cardNo = Utils.formatBankCardNo(value);
this.setState({newCardNo: cardNo});
}
phoneChange(event) {
... ...
... ... @@ -10,6 +10,8 @@ import ReactNative, {
} from 'react-native';
import Immutable, {Map} from 'immutable';
import Utils from '../../utils/Utils';
export default class BankCardListCell extends React.Component {
constructor(props) {
... ... @@ -19,8 +21,8 @@ export default class BankCardListCell extends React.Component {
render() {
let{cardNo, cardBank} = this.props.data;
let bankImg = this.getBankImage(cardBank);
let newCardNo = this.processBankCardNo(cardNo);
let bankImg = Utils.getBankBackgroundImage(cardBank);
let newCardNo = Utils.replaceBankCardNo(cardNo);
return(
<TouchableOpacity activeOpacity={1} onPress={() => this.props.onPressCard && this.props.onPressCard()}>
... ... @@ -35,59 +37,7 @@ export default class BankCardListCell extends React.Component {
}
//正则替换卡号,保留后4位
processBankCardNo(cardNo){
let newCardNo = cardNo.replace(/(\d+)(\d{4})$/, (a, b, c)=> {
return b.replace(/\d/g, '*') + c;
});
return newCardNo;
}
getBankImage(bank){
let bankImg;
switch(bank){
case "ABC":
bankImg = require('../../image/bank/bank-ABC.png');
break;
case "BOC":
bankImg = require('../../image/bank/bank-BOC.png');
break;
case "CCB":
bankImg = require('../../image/bank/bank-CCB.png');
break;
case "CEB":
bankImg = require('../../image/bank/bank-CEB.png');
break;
case "CGB":
bankImg = require('../../image/bank/bank-CGB.png');
break;
case "CIB":
bankImg = require('../../image/bank/bank-CIB.png');
break;
case "CITIC":
bankImg = require('../../image/bank/bank-CITIC.png');
break;
case "CMBC":
bankImg = require('../../image/bank/bank-CMBC.png');
break;
case "ICBC":
bankImg = require('../../image/bank/bank-ICBC.png');
break;
case "PAYH":
bankImg = require('../../image/bank/bank-PAYH.png');
break;
case "PSBC":
bankImg = require('../../image/bank/bank-PSBC.png');
break;
default:
bankImg = require('../../image/bank/bank-EMPTY.png');
break;
}
return bankImg;
}
};
... ...
... ... @@ -17,7 +17,6 @@ export default class MyOrderDetailPayListCell extends React.Component {
}
render() {
let{cardNo, cardBank} = this.props.data;
let goodsName = "Adidas Originals KS full size";
let goodsSkn = "FULXN 2526542";
... ...
'use strict';
import ReactNative from 'react-native';
/**
*正则替换卡号,保留后4位,并且四位插入一个空格
**/
function replaceBankCardNo(cardNo){
let newCardNo = cardNo.replace(/(\d+)(\d{4})$/, (a, b, c)=> {
return b.replace(/\d/g, '*') + c;
});
//newCardNo = newCardNo.replace(/(\w{4})(?=\w)/g, '$1 ');
return newCardNo;
}
/**
*将卡号四位插入一个空格
**/
function formatBankCardNo(cardNo){
let newCardNo = cardNo.replace(/\s/g, '');
newCardNo = cardNo.replace(/[^\d]/g, '').replace(/(\d{4})(?=\d)/g, '$1 ');
return newCardNo;
}
/**
*获取银行卡大图
**/
function getBankBigImage(bank){
let bankImg;
switch(bank){
case "ABC":
bankImg = require('../image/bank/b-ABC.png');
break;
case "BOC":
bankImg = require('../image/bank/b-BOC.png');
break;
case "CCB":
bankImg = require('../image/bank/b-CCB.png');
break;
case "CEB":
bankImg = require('../image/bank/b-CEB.png');
break;
case "CGB":
bankImg = require('../image/bank/b-CGB.png');
break;
case "CIB":
bankImg = require('../image/bank/b-CIB.png');
break;
case "CITIC":
bankImg = require('../image/bank/b-CITIC.png');
break;
case "CMBC":
bankImg = require('../image/bank/b-CMBC.png');
break;
case "ICBC":
bankImg = require('../image/bank/b-ICBC.png');
break;
case "PAYH":
bankImg = require('../image/bank/b-PAYH.png');
break;
case "PSBC":
bankImg = require('../image/bank/b-PSBC.png');
break;
default:
bankImg = require('../image/bank/bank-EMPTY.png');
break;
}
return bankImg;
}
/**
*获取银行卡大图
**/
function getBankSmallImage(bank){
let bankImg;
switch(bank){
case "ABC":
bankImg = require('../image/bank/ABC.png');
break;
case "BOC":
bankImg = require('../image/bank/BOC.png');
break;
case "CCB":
bankImg = require('../image/bank/CCB.png');
break;
case "CEB":
bankImg = require('../image/bank/CEB.png');
break;
case "CGB":
bankImg = require('../image/bank/CGB.png');
break;
case "CIB":
bankImg = require('../image/bank/CIB.png');
break;
case "CITIC":
bankImg = require('../image/bank/CITIC.png');
break;
case "CMBC":
bankImg = require('../image/bank/CMBC.png');
break;
case "ICBC":
bankImg = require('../image/bank/ICBC.png');
break;
case "PAYH":
bankImg = require('../image/bank/PAYH.png');
break;
case "PSBC":
bankImg = require('../image/bank/PSBC.png');
break;
default:
bankImg = require('../image/bank/bank-EMPTY.png');
break;
}
return bankImg;
}
/**
*获取银行卡背景图
**/
function getBankBackgroundImage(bank){
let bankImg;
switch(bank){
case "ABC":
bankImg = require('../image/bank/bank-ABC.png');
break;
case "BOC":
bankImg = require('../image/bank/bank-BOC.png');
break;
case "CCB":
bankImg = require('../image/bank/bank-CCB.png');
break;
case "CEB":
bankImg = require('../image/bank/bank-CEB.png');
break;
case "CGB":
bankImg = require('../image/bank/bank-CGB.png');
break;
case "CIB":
bankImg = require('../image/bank/bank-CIB.png');
break;
case "CITIC":
bankImg = require('../image/bank/bank-CITIC.png');
break;
case "CMBC":
bankImg = require('../image/bank/bank-CMBC.png');
break;
case "ICBC":
bankImg = require('../image/bank/bank-ICBC.png');
break;
case "PAYH":
bankImg = require('../image/bank/bank-PAYH.png');
break;
case "PSBC":
bankImg = require('../image/bank/bank-PSBC.png');
break;
default:
bankImg = require('../image/bank/bank-EMPTY.png');
break;
}
return bankImg;
}
module.exports = {
getBankBigImage,
getBankSmallImage,
getBankBackgroundImage,
replaceBankCardNo,
formatBankCardNo,
};
... ...