|
|
'use strict';
|
|
|
import React from 'react';
|
|
|
import ReactNative, {
|
|
|
View,
|
|
|
Text,
|
|
|
Image,
|
|
|
StyleSheet,
|
|
|
Dimensions,
|
|
|
PixelRatio,
|
|
|
TouchableOpacity,
|
|
|
} from 'react-native';
|
|
|
|
|
|
import Immutable, {Map} from 'immutable';
|
|
|
import Toast from '../../../common/components/Toast';
|
|
|
|
|
|
|
|
|
export default class MyOrderDetail extends React.Component {
|
|
|
constructor(props) {
|
|
|
super(props);
|
|
|
}
|
|
|
|
|
|
render() {
|
|
|
|
|
|
let bankName = "农业银行";
|
|
|
let cardNo = "4561";
|
|
|
let userName = "**聪";
|
|
|
let mobile = "*****5865";
|
|
|
let isMaster = false;
|
|
|
|
|
|
let cardDesc = isMaster ? "主卡,用于支付验证和还款验证。" : "副卡,仅用于还款验证。";
|
|
|
let cardTip = isMaster ? "如果您更换银行预留手机号,请先新增其他还款银行卡,并将新增银行卡切换为主卡。然后解除绑定此卡,重新绑定即可。"
|
|
|
: "如果您更换银行预留手机号,请先将银行卡解除绑定,再次重新绑定即可。";
|
|
|
|
|
|
return (
|
|
|
<View style={styles.container}>
|
|
|
<View style={styles.cardDetailContainer}>
|
|
|
<Image style={styles.cardDetailImg} source={require("../../image/bank/b-ABC.png")}/>
|
|
|
<Text style={styles.cardDetailName}>{bankName}</Text>
|
|
|
<Text style={styles.cardDetailNo}>储蓄卡 | 尾号{cardNo}</Text>
|
|
|
</View>
|
|
|
<View style={styles.cardInfoContainer}>
|
|
|
<Text style={styles.cardInfoLabel}>持卡人</Text>
|
|
|
<Text style={styles.cardInfoData}>{userName}</Text>
|
|
|
</View>
|
|
|
<View style={styles.cardInfoLine}></View>
|
|
|
<View style={styles.cardInfoContainer}>
|
|
|
<Text style={styles.cardInfoLabel}>预留手机号</Text>
|
|
|
<Text style={styles.cardInfoData}>{mobile}</Text>
|
|
|
</View>
|
|
|
<View style={styles.cardInfoLine}></View>
|
|
|
<View style={styles.cardInfoContainer}>
|
|
|
<Text style={styles.cardInfoLabel}>分期银行</Text>
|
|
|
<Text style={styles.cardInfoData}>{cardDesc}</Text>
|
|
|
</View>
|
|
|
<View style={styles.cardTipContainer}>
|
|
|
<Text style={styles.cardTip}>{cardTip}</Text>
|
|
|
{
|
|
|
isMaster ? null :
|
|
|
<View style={styles.buttonContainer}>
|
|
|
<TouchableOpacity activeOpacity={1} onPress={() => {
|
|
|
this.props.onPressReleaseCard && this.props.onPressReleaseCard();}}>
|
|
|
<Text style={styles.releaseButton}>解除绑定</Text>
|
|
|
</TouchableOpacity>
|
|
|
<TouchableOpacity activeOpacity={1} onPress={() => {
|
|
|
this.props.onPressChangeCard && this.props.onPressChangeCard();}}>
|
|
|
<Text style={styles.changeButton}>切换为主卡</Text>
|
|
|
</TouchableOpacity>
|
|
|
</View>
|
|
|
}
|
|
|
</View>
|
|
|
|
|
|
<Toast text="解绑成功" isVisible={false} />
|
|
|
|
|
|
</View>
|
|
|
);
|
|
|
}
|
|
|
};
|
|
|
|
|
|
let {width, height} = Dimensions.get('window');
|
|
|
const DEVICE_WIDTH_RATIO = width / 320;
|
|
|
|
|
|
let styles = StyleSheet.create({
|
|
|
container: {
|
|
|
flex: 1,
|
|
|
backgroundColor: "#ffffff",
|
|
|
},
|
|
|
|
|
|
cardDetailContainer:{
|
|
|
width: width,
|
|
|
height: 60 * DEVICE_WIDTH_RATIO,
|
|
|
backgroundColor: "#f8555b",
|
|
|
},
|
|
|
|
|
|
cardDetailImg:{
|
|
|
position: 'absolute',
|
|
|
top: 10 * DEVICE_WIDTH_RATIO,
|
|
|
left: 15 * DEVICE_WIDTH_RATIO,
|
|
|
width: 40 * DEVICE_WIDTH_RATIO,
|
|
|
height: 40 * DEVICE_WIDTH_RATIO,
|
|
|
},
|
|
|
|
|
|
cardDetailName:{
|
|
|
position: 'absolute',
|
|
|
top: 10 * DEVICE_WIDTH_RATIO,
|
|
|
left: 65 * DEVICE_WIDTH_RATIO,
|
|
|
width: 150 * DEVICE_WIDTH_RATIO,
|
|
|
height: 20 * DEVICE_WIDTH_RATIO,
|
|
|
fontSize: 15 * DEVICE_WIDTH_RATIO,
|
|
|
color: "white",
|
|
|
fontWeight: 'bold',
|
|
|
},
|
|
|
|
|
|
cardDetailNo:{
|
|
|
position: 'absolute',
|
|
|
top: 30 * DEVICE_WIDTH_RATIO,
|
|
|
left: 65 * DEVICE_WIDTH_RATIO,
|
|
|
width: 150 * DEVICE_WIDTH_RATIO,
|
|
|
height: 30 * DEVICE_WIDTH_RATIO,
|
|
|
fontSize: 13 * DEVICE_WIDTH_RATIO,
|
|
|
color: "white",
|
|
|
},
|
|
|
|
|
|
cardInfoContainer:{
|
|
|
width: width,
|
|
|
height: 44 * DEVICE_WIDTH_RATIO,
|
|
|
backgroundColor: "#ffffff",
|
|
|
flexDirection: 'row',
|
|
|
alignItems: 'center',
|
|
|
},
|
|
|
|
|
|
cardInfoLabel:{
|
|
|
width: 125 * DEVICE_WIDTH_RATIO,
|
|
|
paddingLeft: 15 * DEVICE_WIDTH_RATIO,
|
|
|
fontSize: 14 * DEVICE_WIDTH_RATIO,
|
|
|
},
|
|
|
|
|
|
cardInfoData:{
|
|
|
width: 150 * DEVICE_WIDTH_RATIO,
|
|
|
fontSize: 13 * DEVICE_WIDTH_RATIO,
|
|
|
},
|
|
|
|
|
|
cardInfoLine:{
|
|
|
width: width - 15 * DEVICE_WIDTH_RATIO,
|
|
|
height: 0.5 * DEVICE_WIDTH_RATIO,
|
|
|
marginLeft: 15 * DEVICE_WIDTH_RATIO,
|
|
|
backgroundColor: "#b4b4b4",
|
|
|
},
|
|
|
|
|
|
cardTipContainer:{
|
|
|
flex: 1,
|
|
|
backgroundColor: "#f0f0f0",
|
|
|
},
|
|
|
|
|
|
cardTip: {
|
|
|
width: width,
|
|
|
paddingLeft: 15 * DEVICE_WIDTH_RATIO,
|
|
|
paddingRight: 10 * DEVICE_WIDTH_RATIO,
|
|
|
paddingTop: 10 * DEVICE_WIDTH_RATIO,
|
|
|
fontSize: 12 * DEVICE_WIDTH_RATIO,
|
|
|
color: "#b0b0b0",
|
|
|
},
|
|
|
|
|
|
buttonContainer:{
|
|
|
width: width,
|
|
|
height: 100,
|
|
|
flexDirection: 'row',
|
|
|
alignItems: 'center',
|
|
|
justifyContent: 'center',
|
|
|
},
|
|
|
|
|
|
releaseButton:{
|
|
|
width: 130 * DEVICE_WIDTH_RATIO,
|
|
|
height: 44 * DEVICE_WIDTH_RATIO,
|
|
|
fontSize:14 * DEVICE_WIDTH_RATIO,
|
|
|
paddingTop:12 * DEVICE_WIDTH_RATIO,
|
|
|
marginRight: 8 * DEVICE_WIDTH_RATIO,
|
|
|
color: '#000000',
|
|
|
textAlign: 'center',
|
|
|
borderColor:'#444444',
|
|
|
borderWidth:2,
|
|
|
borderRadius: 6,
|
|
|
},
|
|
|
|
|
|
changeButton:{
|
|
|
width: 130 * DEVICE_WIDTH_RATIO,
|
|
|
height: 44 * DEVICE_WIDTH_RATIO,
|
|
|
fontSize:14 * DEVICE_WIDTH_RATIO,
|
|
|
paddingTop:12 * DEVICE_WIDTH_RATIO,
|
|
|
marginLeft: 8 * DEVICE_WIDTH_RATIO,
|
|
|
color: '#ffffff',
|
|
|
textAlign: 'center',
|
|
|
borderColor:'#444444',
|
|
|
borderWidth:2,
|
|
|
borderRadius: 6,
|
|
|
backgroundColor:'#444444',
|
|
|
},
|
|
|
|
|
|
|
|
|
}); |
...
|
...
|
|