Ejemplo n.º 1
0
        public async void ItemClick(object param)
        {
            var model = (Models.EduItemModel)param;

            selectedModel = model;
            if (model.PageType == null)
            {
                Services.NotityService.Notify("这个饼还没画完O(∩_∩)O");

                return;
            }

            //课程表页面特殊,可无网络连接查看
            if (model != null && model.PageType == typeof(Views.EduSchedulePage))
            {
                var naviParam = new NavigationParameters();
                naviParam.Add("edutime", EduTime);

                await _navigationService.NavigateAsync(model.PageType.Name, naviParam);

                return;
            }

            if (IsConnected)//
            {
                if (BJUTEduCenterUserinfo == null)
                {
                    //当前用户信息为空,直接转到登陆流程。
                    await Login();

                    return;
                }
                var re = await CoreService.GetAuthState(HttpService, BJUTEduCenterUserinfo.Username);

                if (re != true)//没有认证教务系统,首先获取验证码,取到验证码后开始登陆逻辑,登陆逻辑在NavigationTo方法里面处理
                {
                    await Login();

                    return;
                }
                else//已经认证,直接打开
                {
                    if (model != null && model.PageType != null)
                    {
                        await _navigationService.NavigateAsync(model.PageType.Name);//导航到具体页面
                    }
                }
            }
            else
            {
                Services.NotityService.Notify("网络连接出现问题/(ㄒoㄒ)/~~");
            }
        }