//登录信息门户 public async Task LoginInfoCenter(Services.HttpBaseService _httpService, string username, string password) { try { Dictionary <string, string> parameters = new Dictionary <string, string>(); parameters.Add("Login.Token1", username); parameters.Add("Login.Token2", password); parameters.Add("goto", "http://my.bjut.edu.cn/loginSuccess.portal"); parameters.Add("gotoOnFail", "http://my.bjut.edu.cn/loginFailure.portal"); var re = await _httpService.SendRequst(loginUri, HttpMethod.Post, parameters); if (re.Contains("handleLoginSuccessed")) { return; } else { throw new InvalidUserInfoException("用户名或密码错误"); //登录失败 } } catch (Exception e) { throw; //其他异常 } }
public void OnNavigatedTo(NavigationParameters parameters) { naviParam = parameters; _httpService = (Services.HttpBaseService)parameters["httpservice"]; _login = (Models.ILogin)parameters["ILogin"]; GetCheckCode(); }
//获取成绩 public async Task <string> GetGrade(Services.HttpBaseService _httpService, string name, string username) { //http://gdjwgl.cjw1115.com/xscjcx.aspx?xh=14024238&xm=%B3%C2%BC%D1%CE%C0&gnmkdm=N121605 string re; re = await _httpService.SendRequst(GetBaseUri() + edugradeUri + username + "&xm=" + name + "&gnmkdm=N121605", HttpMethod.Get, referUri : GetBaseUri() + edugradeUri + username + "&xm=" + "" + "&gnmkdm=N121605"); string __VIEWSTATEString; __VIEWSTATEString = Services.EduService.GetViewstate(re); var __EVENTVALIDATION = Services.EduService.GetValidation(re); IDictionary <string, string> parameters = new Dictionary <string, string>(); parameters.Add("__EVENTTARGET", ""); parameters.Add("__EVENTVALIDATION", __EVENTVALIDATION); parameters.Add("__EVENTARGUMENT", ""); parameters.Add("__VIEWSTATE", __VIEWSTATEString); parameters.Add("hidLanguage", ""); parameters.Add("ddlXN", ""); parameters.Add("ddlXQ", ""); parameters.Add("ddl_kcxz", ""); parameters.Add("btn_zcj", "历年成绩"); re = await _httpService.SendRequst(GetBaseUri() + edugradeUri + username + "&xm=" + name + "&gnmkdm=N121605", HttpMethod.Post, parameters); return(re); }
public async Task <string> GetSpecificSchedule(Services.HttpBaseService _httpService, string name, string username, string year, int term) { string re; re = await _httpService.SendRequst(GetBaseUri() + eduscheduleUri + username + "&xm=" + name + "&gnmkdm=N121603", HttpMethod.Get, referUri : GetBaseUri() + checckAuthUri + username); string __VIEWSTATEString; __VIEWSTATEString = Services.EduService.GetViewstate(re); IDictionary <string, string> parameters = new Dictionary <string, string>(); parameters.Add("__EVENTTARGET", "xnd"); parameters.Add("__EVENTARGUMENT", ""); parameters.Add("__VIEWSTATE", __VIEWSTATEString); parameters.Add("xnd", year); parameters.Add("xqd", "2"); re = await _httpService.SendRequst(GetBaseUri() + eduscheduleUri + username + "&xm=" + name + "&gnmkdm=N121603", HttpMethod.Post, parameters); if (term == 1) { __VIEWSTATEString = Services.EduService.GetViewstate(re); parameters["__EVENTTARGET"] = "xqd"; parameters["__VIEWSTATE"] = __VIEWSTATEString; parameters["xqd"] = "1"; re = await _httpService.SendRequst(GetBaseUri() + eduscheduleUri + username + "&xm=" + name + "&gnmkdm=N121603", HttpMethod.Post, parameters); } return(re); }
public SalaryPageViewModel() { _deService = new DbService(); _httpService = new Services.HttpBaseService(); QueryCommand = new DelegateCommand(Query); Salaries = new ObservableCollection <Models.SalaryModel>(); }
public static Services.HttpBaseService GetHttpService() { if (_httpService == null) { _httpService = new HttpBaseService(); } return(_httpService); }
public static async Task <Models.EduTimeModel> GetEduTime(Services.HttpBaseService _httpService) { var re = await _httpService.SendRequst(edutimeUri, HttpMethod.Get); var model = Newtonsoft.Json.JsonConvert.DeserializeObject <Models.EduTimeModel>(re); return(model); }
//获取课程表数据 public async Task <string> GetCurrentSchedule(Services.HttpBaseService _httpService, string name, string username) { string re; re = await _httpService.SendRequst(GetBaseUri() + eduscheduleUri + username + "&xm=" + name + "&gnmkdm=N121603", HttpMethod.Get, referUri : GetBaseUri() + checckAuthUri + username); return(re); }
public async Task <Models.CampusCardInfoModel> GetCampusCardSalaryInfo(Services.HttpBaseService _httpService) { var re = await _httpService.SendRequst(cardSalaryInfoUri, HttpMethod.Get); var info = PraseCampusCardSalaryInfo(re); return(info); }
public static async Task GetCaptchaText(INavigationService naviService, Services.HttpBaseService httpService) { //获取验证码,非等待,继续执行 var naviParam = new NavigationParameters(); naviParam.Add("httpservice", httpService); naviParam.Add("ILogin", CoreService); await naviService.NavigateAsync(typeof(Views.CaptchaPage).Name, naviParam); }
public void OnNavigatedTo(NavigationParameters parameters) { _newsHeader = parameters[typeof(Models.NewsHeaderModel).Name] as Models.NewsHeaderModel; _httpService = parameters["httpservice"] as Services.HttpBaseService; if (_newsHeader != null) { LoadNews(); } }
public AboutPageViewModel(INavigationService navigationService) { _navigationService = navigationService; _httpService = new Services.HttpBaseService(); FeedCommand = new DelegateCommand(Feed); UpdateCommand = new DelegateCommand(Update); Version = Xamarin.Forms.DependencyService.Get <Models.IApplicationInfo>().GetVersion(); }
public MomentsViewPageViewModel(INavigationService navigationService) { _httpService = new Services.HttpBaseService(); _navigationService = navigationService; PostCommand = new DelegateCommand(OpenPost); RefreshCommand = new DelegateCommand(Refresh); ItemTappedCommand = new DelegateCommand <object>(ItemTapped); LoadMoreCommand = new DelegateCommand(LoadMore); }
//登录教务管理中心 public async Task <string> LoginEduCenter(Services.HttpBaseService _httpService, string username, string password, string checkCode) { try { var str = await _httpService.SendRequst(GetBaseUri() + educenterUri, HttpMethod.Get); var __VIEWSTATEString = Services.EduService.GetViewstate(str); if (__VIEWSTATEString == "") { return(null); } var validation = Services.EduService.GetValidation(str); if (validation == null) { return(null); } IDictionary <string, string> parameters = new Dictionary <string, string>(); parameters.Add("__VIEWSTATE", __VIEWSTATEString); parameters.Add("__EVENTVALIDATION", validation); parameters.Add("txtUserName", username); parameters.Add("TextBox2", password); parameters.Add("txtSecretCode", checkCode); parameters.Add("RadioButtonList1", "学生"); parameters.Add("Button1", ""); parameters.Add("lbLanguage", ""); parameters.Add("hidPdrs", ""); parameters.Add("hidsc", ""); var reStr = await _httpService.SendRequst(GetBaseUri() + educenterUri, HttpMethod.Post, parameters); var name = Services.EduService.GetName(reStr); if (string.IsNullOrEmpty(name)) { string messageRegex = @"(?<=defer\>alert\(')\w.+(?='\);)"; var message = Regex.Match(reStr, messageRegex).Value; if (message.Contains("验证")) { throw new InvalidCheckcodeException(message); } else { throw new InvalidUserInfoException(message); } } return(name); } catch (HttpRequestException requestException) { throw; } catch (Exception ex) { throw; } }
//检测是否已经认证过教务系统 public async Task <bool> GetAuthState(Services.HttpBaseService _httpService, string username) { var re = await _httpService.GetResponseCode(GetBaseUri() + checckAuthUri + username); if (re == System.Net.HttpStatusCode.OK) { return(true); } return(false); }
public FeedBackPageViewModel(INavigationService navigationService) { _toolService = new Services.ToolService(); _httpService = new Services.HttpBaseService(); _navigationService = navigationService; SubmitCommand = new DelegateCommand(Submit); FeedModel = new Models.FeedModel(); }
public static async Task <bool> CheckUpdate(Services.HttpBaseService _httpService) { try { var version = Xamarin.Forms.DependencyService.Get <Models.IApplicationInfo>().GetVersion(); var updateModel = await Services.ToolService.GetLatestVersionCode(_httpService); if (updateModel != null && version != null) { //if(updateModel.LatestVersion != version) var newVerisons = updateModel.LatestVersion.Split('.'); var nowVersions = version.Split('.'); var hasNew = false; for (int i = 0; i < newVerisons.Length; i++) { var newNum = int.Parse(newVerisons[i]); var nowNum = int.Parse(nowVersions[i]); if (newNum > nowNum) { hasNew = true; break; } else if (newNum < nowNum) { break; } } if (hasNew) { if (Device.OS == TargetPlatform.Android) { Services.NotityService.Notify($"检测到新版本{updateModel.LatestVersion},开始下载..."); Device.OpenUri(new Uri(updateModel.DownloadUri)); } else if (Device.OS == TargetPlatform.iOS) { Services.NotityService.Notify($"检测到新版本{updateModel.LatestVersion},请在应用商店检查更新"); } return(true); } else { return(false); } } } catch { } return(false); }
public LoginPageViewModel(INavigationService navigationService) { LoginCommand = new DelegateCommand(Login); RegistCommand = new DelegateCommand(Regist); RetrieveCommand = new DelegateCommand(Retrieve); _httpService = new Services.HttpBaseService(); _navigationService = navigationService; InitCollege(); InitGender(); }
public CampusCardPageViewModel(INavigationService navigationService) { _navigationService = navigationService; _httpService = new HttpBaseService(); //_dbService = new Services.DbService(); _dbService = new DbService(); _campusCardSercvice = new CampusCardService(); LoadedCommand = new DelegateCommand(Loaded); ItemClickedCommand = new DelegateCommand <object>(ItemClicked); LostCommand = new DelegateCommand(LostCampusCard); FoundCommand = new DelegateCommand(FoundCampusCard); }
//获取信息门户到一卡通中心的filter public async Task GetCardCenterClient(Services.HttpBaseService _httpSerice) { try { var re = await _httpSerice.SendRequst(campusCardLoginUri, HttpMethod.Get); re = await _httpSerice.SendRequst(campusCardAjaxLoginUri, HttpMethod.Get); } catch (Exception ex) { throw; } }
//获取学年学期信息 public async Task <Models.EduTimeModel> GetEduBasicInfo(Services.HttpBaseService _httpService) { var re = await _httpService.SendRequst(calendarUri, HttpMethod.Get); var p = Regex.Match(re, @"<.*weekteaching.*\s*.*\s*</p>").Value; var year = Regex.Match(p, @"\d+-\d+").Value; var term = Regex.Match(p, @".(?=学期)").Value == "二" ? 2 : 1; var week = Regex.Match(p, @"\d*(?=\s*教学)").Value; Models.EduTimeModel model = new Models.EduTimeModel(); model.SchoolYear = year; model.Term = term; model.Week = int.Parse(week); return(model); }
public MyBjutPageViewModel(INavigationService navigationService) { _navigationService = navigationService; _httpService = new HttpBaseService(); _dbService = new DbService(); ItemClickCommand = new DelegateCommand <object>(HeaderItemClicked); SalaryCommand = new DelegateCommand(Salary); LoadedCommand = new DelegateCommand(Loaded); ScheduleCommand = new DelegateCommand(Schedule); BookingGradeCommand = new DelegateCommand(BookingGrade); HeaderList = new List <NewsHeaderModel>(); }
public void OnNavigatedTo(NavigationParameters parameters) { if (!parameters.ContainsKey("backfromdetail")) { _coreService = EduPageViewModel.CoreService; _httpService = EduPageViewModel.HttpService; _studentName = EduPageViewModel.Name; //Loaded(); //加载离线数据 LoadGradeChart(); //获取最新成绩 LoadOnlineData(); } }
public async void OnNavigatedTo(NavigationParameters parameters) { if (parameters != null) { _coreService = EduPageViewModel.CoreService; _httpService = EduPageViewModel.HttpService; _studentName = EduPageViewModel.Name; BJUTEduCenterUserinfo = _dbService.GetAll <Models.BJUTEduCenterUserinfo>().FirstOrDefault(); IsLoading = true; await GetExamInfo(); IsLoading = false; } }
public async static Task <UpdateModel> GetLatestVersionCode(Services.HttpBaseService httpService) { UpdateModel updateModel = null; try { var re = await httpService.SendRequst(latestVersionCodeUri, HttpMethod.Get); updateModel = Newtonsoft.Json.JsonConvert.DeserializeObject <UpdateModel>(re); return(updateModel); } catch { throw; } }
//获取验证码 public async Task <ImageSource> GetCheckCode(Services.HttpBaseService _httpService) { Stream stream = null; try { stream = await _httpService.SendRequstForStream(GetBaseUri() + checkCodeUri, HttpMethod.Get); var iamgesource = ImageSource.FromStream(() => { return(stream); }); return(iamgesource); } catch { return(null); } }
public static async Task <Models.NewsModel> GetNews(Services.HttpBaseService httpService, int id) { try { var re = await httpService.SendRequst($"{newsUri}/?={id}", HttpMethod.Get); return(Newtonsoft.Json.JsonConvert.DeserializeObject <Models.NewsModel>(re)); } catch (HttpRequestException) { return(null); } catch (Exception e) { return(null); } }
public async Task <Models.CampusCardInfoModel> GetCampusCardBasicInfo(Services.HttpBaseService _httpService) { var re = await _httpService.SendRequst(cardBasicInfoUri, HttpMethod.Get); var info = PraseCampusCardBasicInfo(re); //using (var stream = await _httpService.SendRequstForStream(personImageUri, HttpMethod.Get)) //{ // stream.Seek(0, SeekOrigin.Begin); // using (var ras = stream.AsRandomAccessStream()) // { // WriteableBitmap bitmap = new WriteableBitmap(1, 1); // bitmap.SetSource(ras); // info.PersonImage = bitmap; // } //} return(info); }
public static async Task <IList <Models.NewsHeaderModel> > GetHeaders(Services.HttpBaseService httpService) { try { var re = await httpService.SendRequst(newsHeadersUri, HttpMethod.Get); var headers = Newtonsoft.Json.JsonConvert.DeserializeObject <Models.NewsHeaderModel[]>(re); return(headers); } catch (HttpRequestException) { return(null); } catch (Exception e) { return(null); } }
//检测是否能链接到教务系统 public async Task <bool> GetConnectedStatus(Services.HttpBaseService _httpService) { try { var re = await _httpService.GetResponseCode(GetBaseUri() + educenterUri); if (re == System.Net.HttpStatusCode.OK) { return(true); } else { return(false); } } catch { return(false); } }