app.js 3.23 KB
/**
 * Created by DEV005 on 2017/8/23.
 */
import React, { Component } from 'react';
import { BackHandler,AppState,StyleSheet,View,Text,
    ToastAndroid, UI,UIManager,DeviceEventEmitter,
    NativeEventEmitter, NativeModules,AsyncStorage,
    ActivityIndicator,
    Alert
} from 'react-native';

import { StackNavigator,TabNavigator } from 'react-navigation';
import AppService from "./service/AppService";
import {xnToast} from "./utils/utils";
import {width,height} from "./utils/getSize";

import XnTransit from "./pages/index"

//横竖屏
import Orientation from 'react-native-orientation';
//键盘启用与消失
import dismissKeyboard from 'react-native/Libraries/Utilities/dismissKeyboard';
import XnLoading from "./components/xnLoading"
//
// import {Subscribe,SubscribeDOM} from 'react-subscribe';
//通信
// import RPC from './utils/rpc';
//通信
// import hookNavigator from './utils/hookNavigator';



class App extends Component{
    constructor(props){
        super(props);
        this.state = {
            loading:true
        };
    }

    // 查询用户信息
    getPassportId=()=>{
        //获取
        NativeModules.security.getPassportId().then((result) => {
                AppService.getPassport({id:result}).then(data=>{
                    if (data.errors == null || data.errors.length > 0) {
                        xnToast(data.errors[0].message);
                        return
                    }
                    global.tenantId=data.passport.tenantId;
                    global.userId=data.passport.userId;
                    this.getUser(data.passport.tenantId,data.passport.userId)
                });
            }
        ).catch((error) => {
            console.log(error)
        });
    };

    // 查询用户信息
    getUser=(tenantId,userId)=>{
        let  _this=this;
        let vm={
            tenantId:tenantId,
            id:userId
        };
        AppService.getUser(vm).then(data=>{
            if (data.errors == null || data.errors.length > 0) {
                xnToast(data.errors[0].message);
                return
            }
            global.sourceId=data.user.sourceId;
            global.userId=data.user.id;
            global.mobilePhone=data.user.mobilePhone;

            if(!global.mobilePhone){
                Alert.alert(
                    '',
                    "您未设置手机号码,请先设置手机号码",
                    [
                        {text: '确定', onPress: () =>{
                            NativeModules.system.navTo("BACK")
                        }},
                    ]
                );
                return
            }


            this.setState({
                loading:false
            });
            console.log(data);
            
        });
    };


    componentWillMount(){
        let _this=this;
        _this.getPassportId();
        global.module=this.props.RN_MODULE;
        global.location=this.props.RN_LOCATION;

    }
    
    render() {
        return  <View style={styles.root}>
            {/*加载中*/}            
            {this.state.loading &&<XnLoading />}
            {!this.state.loading&&<XnTransit />}
        </View>
    }
}
const styles = StyleSheet.create({
    root: {
        flex: 1
    }

});
export default App;