StationInfoView.js 3.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. /**
  2. * 充电页:扫码之前和扫码之后的站点信息
  3. * @邠心vbe on 2023/03/10
  4. */
  5. import React from 'react';
  6. import { Image, Text, View } from 'react-native';
  7. import BadgeSelectItem from '../../components/BadgeSelectItem';
  8. import TextView from '../../components/TextView';
  9. import { ChargeStyle, TypeImage } from '../chargeV2/Charging';
  10. export default StationInfoView = ({connectorInfo={}, isCharging, isPending}) => (
  11. <BadgeSelectItem
  12. style={ChargeStyle.stationInfoView}
  13. checked={true}>
  14. {/* <ImageBackground
  15. style={{
  16. width: 42,
  17. height: 42
  18. }}
  19. source={require('../../images/charge/icon-station-no.png')}>
  20. <Text style={{
  21. left: 0,
  22. right: 0,
  23. bottom: 1,
  24. fontSize: 8,
  25. color: 'white',
  26. textAlign: 'center',
  27. position: 'absolute'
  28. }}>{connectorInfo.connectorId}</Text>
  29. </ImageBackground> */}
  30. <Image
  31. style={ChargeStyle.infoIcon}
  32. source={connectorInfo?.chargeType?.indexOf('AC') >= 0 ? TypeImage.AC : TypeImage.DC}/>
  33. <View style={ChargeStyle.infoGroup}>
  34. <TextView
  35. numberOfLines={1}
  36. ellipsizeMode="tail"
  37. style={ChargeStyle.infoText}>{connectorInfo.chargeType}{connectorInfo.wattage}</TextView>
  38. <TextView style={ChargeStyle.infoTitle}>{$t('charging.labelType')}</TextView>
  39. </View>
  40. <View style={ChargeStyle.infoGroup}>
  41. <TextView
  42. numberOfLines={1}
  43. ellipsizeMode="tail"
  44. style={ChargeStyle.infoText}>{connectorInfo.rate}/{connectorInfo.rateType}</TextView>
  45. <TextView style={ChargeStyle.infoTitle}>{$t('charging.labelRate')}</TextView>
  46. </View>
  47. <View style={ChargeStyle.infoGroup}>
  48. <TextView
  49. numberOfLines={1}
  50. ellipsizeMode="tail"
  51. style={ChargeStyle.infoText}>{connectorInfo.wattage}kW{/*connectorInfo.rateType*/}</TextView>
  52. <TextView style={ChargeStyle.infoTitle}>{$t('charging.labelPower')}</TextView>
  53. </View>
  54. <View style={ChargeStyle.infoGroup}>
  55. { isCharging
  56. ? (isPending
  57. ? (
  58. <TextView
  59. numberOfLines={1}
  60. ellipsizeMode="tail"
  61. style={[ChargeStyle.infoStatus, ChargeStyle.statusAuthenticated]}>
  62. {$t('charging.statusPreparing')}
  63. </TextView>
  64. )
  65. : (
  66. <TextView
  67. numberOfLines={1}
  68. ellipsizeMode="tail"
  69. style={[ChargeStyle.infoStatus, ChargeStyle.statusAuthenticated]}>
  70. {$t('charging.statusCharging')}
  71. </TextView>
  72. )
  73. )
  74. : (connectorInfo.isCheckThrough
  75. ? (
  76. <TextView
  77. numberOfLines={1}
  78. ellipsizeMode="tail"
  79. style={[ChargeStyle.infoStatus, ChargeStyle.statusAuthenticated]}>
  80. {$t('charging.statusAuthenticated')}
  81. </TextView>
  82. )
  83. : (
  84. <TextView
  85. numberOfLines={1}
  86. ellipsizeMode="tail"
  87. style={[ChargeStyle.infoStatus, ChargeStyle.statusError]}>
  88. {$t('charging.statusNotConnected')}
  89. </TextView>
  90. )
  91. )
  92. }
  93. <TextView style={ChargeStyle.infoTitle}>{$t('charging.labelStatus')}</TextView>
  94. </View>
  95. </BadgeSelectItem>
  96. );