import { router } from 'expo-router'; import { View, Text, ScrollView, Pressable, Image, Dimensions, StyleSheet, TextInput, Alert } from 'react-native'; import { SafeAreaView } from 'react-native-safe-area-context'; import { PreviousPageBlackSvg } from '../global/SVG'; import NormalButton from '../global/normal_button'; import { useEffect, useState } from 'react'; import Checkbox from 'expo-checkbox'; import useVehicleStore from '../../providers/vehicle_store'; import { chargeStationService } from '../../service/chargeStationService'; const AddVehiclePageComponent = () => { const [isChecked, setChecked] = useState(false); const [isLoading, setIsLoading] = useState(false); const { height: deviceHeight, width: deviceWidth } = Dimensions.get('window'); const { vehicleBrand, vehicleModel, BrandID, ModelID, licensePlate, setVehicleBrand, setVehicleModel, setBrandID, setModelID, setLicensePlate } = useVehicleStore(); const handleSubmit = async () => { setIsLoading(true); try { const result = await chargeStationService.addCar(licensePlate, BrandID, ModelID, isChecked); if (result) { router.push({ pathname: 'addVehicleSuccessfulPage', params: { vehicleBrand: vehicleBrand, vehicleModel: vehicleModel } }); } else { Alert.alert('新增車輛失敗', '請再試一次'); } } catch (error) { console.log(error, 'unexpected'); } finally { setIsLoading(false); } }; return ( { if (router.canGoBack()) { router.back(); } else { router.replace('/accountMainPage'); } }} > 新增車輛 router.push('setVehiclesOne')}> setLicensePlate(e.toUpperCase())} placeholder="點擊輸入車輛牌照號碼" autoCapitalize="characters" > 設置為預設車輛 新增 } onPress={() => { handleSubmit(); setVehicleBrand(''); setVehicleModel(''); setBrandID(''); setModelID(''); setLicensePlate(''); router.push('addVehicleSuccessfulPage'); }} /> ); }; const styles = StyleSheet.create({ button: { flex: 1, gap: 10, marginTop: 5 }, fakeTextInput: { maxWidth: '100%', fontSize: 16, borderWidth: 1, padding: 20, borderRadius: 12, borderColor: '#bbbbbb' }, checkbox: { margin: 8 } }); export default AddVehiclePageComponent;