Esempio n. 1
0
        //登录信息门户

        public async Task LoginInfoCenter(Service.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"))
                {
                }
                else
                {
                    throw new BJUTDUHelperlException.InvalidUserInfoException("用户名或密码错误");
                    //登录失败
                }
            }
            catch (Exception e)
            {
                throw;
                //其他异常
            }
        }
Esempio n. 2
0
        //获取成绩
        public async Task <string> GetGrade(Service.HttpBaseService _httpService, string name, string username)
        {
            string re;

            re = await _httpService.SendRequst("http://gdjwgl.bjut.edu.cn/xscjcx.aspx?xh=" + username + "&xm=" + name + "&gnmkdm=N121605", HttpMethod.Get, referUri : "http://gdjwgl.bjut.edu.cn/xscjcx.aspx?xh=" + username + "&xm=" + "" + "&gnmkdm=N121605");


            string __VIEWSTATEString;

            __VIEWSTATEString = Service.BJUTEduCenterService.GetViewstate(re);
            var __EVENTVALIDATION = Service.BJUTEduCenterService.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("http://gdjwgl.bjut.edu.cn/xscjcx.aspx?xh=" + username + "&xm=" + "" + "&gnmkdm=N121605", HttpMethod.Post, parameters);

            return(re);
        }
Esempio n. 3
0
        public async Task <string> GetSpecificSchedule(Service.HttpBaseService _httpService, string name, string username, string year, int term)
        {
            string re;

            re = await _httpService.SendRequst("http://gdjwgl.bjut.edu.cn/xskbcx.aspx?xh=" + username + "&xm=" + name + "&gnmkdm=N121603", HttpMethod.Get, referUri : "http://gdjwgl.bjut.edu.cn/xs_main.aspx?xh=" + username);

            //re = await _httpService.SendRequst("http://gdjwgl.bjut.edu.cn/xs_main.aspx?xh=" + username, HttpMethod.Get);


            string __VIEWSTATEString;

            __VIEWSTATEString = Service.BJUTEduCenterService.GetViewstate(re);
            var __EVENTVALIDATION = Service.BJUTEduCenterService.GetValidation(re);
            IDictionary <string, string> parameters = new Dictionary <string, string>();

            parameters.Add("__EVENTVALIDATION", __EVENTVALIDATION);
            parameters.Add("__EVENTTARGET", "");
            parameters.Add("__EVENTARGUMENT", "");
            parameters.Add("__VIEWSTATE", __VIEWSTATEString);
            parameters.Add("xnd", year);
            parameters.Add("xqd", term.ToString());

            re = await _httpService.SendRequst("http://gdjwgl.bjut.edu.cn/xskbcx.aspx?xh=" + username + "&xm=" + name + "&gnmkdm=N121603", HttpMethod.Post, parameters);

            return(re);
        }
Esempio n. 4
0
        //获取验证码
        public async Task <ImageSource> GetCheckCode(Service.HttpBaseService _httpService)
        {
            Stream stream = null;

            try
            {
                stream = await _httpService.SendRequstForStream(checkCodeUri, HttpMethod.Get);

                stream.Seek(0, SeekOrigin.Begin);
                byte[] byteBuffer = new byte[stream.Length];
                await stream.ReadAsync(byteBuffer, 0, byteBuffer.Length);

                var source = await Helper.ImageTool.SaveToImageSource(byteBuffer);

                return(source);
                //BitmapImage bitmap = new BitmapImage();
                ////using (MemoryStream mem=new MemoryStream())
                ////{
                ////    await stream.CopyToAsync(mem);
                ////    var ras=mem.AsRandomAccessStream();
                ////    bitmap.SetSource(ras);
                ////}
                //await bitmap.SetSourceAsync(stream.AsRandomAccessStream());
                //CheckCodeSource = bitmap;
            }
            catch
            {
                return(null);
            }
        }
Esempio n. 5
0
        public async Task <Model.EduTimeModel> GetEduTime(Service.HttpBaseService _httpService)
        {
            var re = await _httpService.SendRequst(edutimeUri, HttpMethod.Get);

            var model = Newtonsoft.Json.JsonConvert.DeserializeObject <Model.EduTimeModel>(re);

            return(model);
        }
 public BJUTCampusCardVM()
 {
     //SaveCommand = new RelayCommand<object>(Save);
     _httpService           = new Service.HttpBaseService();
     campusCardService      = new Service.BJUTCampusCardService();
     AccountModifyVM        = new AccountModifyVM();
     AccountModifyVM.Saved += SaveUserinfo;
 }
Esempio n. 7
0
        //获取课程表数据
        public async Task <string> GetCurrentSchedule(Service.HttpBaseService _httpService, string name, string username)
        {
            string re;

            re = await _httpService.SendRequst("http://gdjwgl.bjut.edu.cn/xskbcx.aspx?xh=" + username + "&xm=" + name + "&gnmkdm=N121603", HttpMethod.Get, referUri : "http://gdjwgl.bjut.edu.cn/xs_main.aspx?xh=" + username);

            return(re);
        }
Esempio n. 8
0
        public async Task <Model.CampusCardInfoModel> GetCampusCardSalaryInfo(Service.HttpBaseService _httpService)
        {
            var re = await _httpService.SendRequst(cardSalaryInfoUri, HttpMethod.Get);

            var info = PraseCampusCardSalaryInfo(re);

            return(info);
        }
Esempio n. 9
0
 public async void Loaded(object parms)
 {
     if (parms != null)
     {
         View.EduCenterViewParam eduCenterViewParam = parms as View.EduCenterViewParam;
         _httpService          = eduCenterViewParam.HttpService;
         BJUTEduCenterUserinfo = eduCenterViewParam.BJUTEduCenterUserinfo;
     }
 }
Esempio n. 10
0
        //获取考试信息
        public async Task <string> GetExamInfo(Service.HttpBaseService _httpService, string name, string username)
        {
            //http://gdjwgl.bjut.edu.cn/xskscx.aspx?xh=14024238&xm=%B3%C2%BC%D1%CE%C0&gnmkdm=N121604
            string re;

            re = await _httpService.SendRequst("http://gdjwgl.bjut.edu.cn/xskscx.aspx?xh=" + username + "&xm=" + name + "&gnmkdm=N121604", HttpMethod.Get, referUri : "http://gdjwgl.bjut.edu.cn/xs_main.aspx?xh=" + username);

            return(re);
        }
Esempio n. 11
0
        //登录教务管理中心
        public async Task <string> LoginEduCenter(Service.HttpBaseService _httpService, string username, string password, string checkCode)
        {
            try
            {
                var str = await _httpService.SendRequst(educenterUri, HttpMethod.Get);

                var __VIEWSTATEString = Service.BJUTEduCenterService.GetViewstate(str);
                if (__VIEWSTATEString == "")
                {
                    return(null);
                }
                var validation = Service.BJUTEduCenterService.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("http://gdjwgl.bjut.edu.cn/default2.aspx", HttpMethod.Post, parameters);

                var name = Service.BJUTEduCenterService.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;
            }
        }
Esempio n. 12
0
        //检测是否已经认证过教务系统
        public async Task <bool> GetAuthState(Service.HttpBaseService _httpService, string username)
        {
            var re = await _httpService.GetResponseCode(checckAuthUri + username);

            if (re == System.Net.HttpStatusCode.OK)
            {
                return(true);
            }
            return(false);
        }
Esempio n. 13
0
        public WIFIHelperView()
        {
            var locator = Application.Current.Resources["Locator"] as ViewModel.ViewModelLocator;

            WIFIHelperVM = locator.WIFIHelperVM;

            this.InitializeComponent();
            _httpService = new Service.HttpBaseService();

            this.Loaded += WIFIHelperView_Loaded;
        }
Esempio n. 14
0
        //获取信息门户到一卡通中心的filter
        public async Task  GetCardCenterClient(Service.HttpBaseService _httpSerice)
        {
            try
            {
                var re = await _httpSerice.SendRequst(campusCardLoginUri, HttpMethod.Get);

                re = await _httpSerice.SendRequst(campusCardAjaxLoginUri, HttpMethod.Get);
            }
            catch (Exception ex)
            {
                throw;
            }
        }
Esempio n. 15
0
        public async void Loaded(object parms)
        {
            //加载离线数据
            LoadGradeChart();

            if (parms != null)
            {
                View.EduCenterViewParam eduCenterViewParam = parms as View.EduCenterViewParam;
                _httpService          = eduCenterViewParam.HttpService;
                BJUTEduCenterUserinfo = eduCenterViewParam.BJUTEduCenterUserinfo;

                GetGrade(ViewModel.BJUTEduCenterVM.Name, BJUTEduCenterUserinfo.Username);//获取最新数据
            }
        }
Esempio n. 16
0
        //获取学年学期信息
        public async Task <Model.EduTimeModel> GetEduBasicInfo(Service.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;

            Model.EduTimeModel model = new Model.EduTimeModel();
            model.SchoolYear = year;
            model.Term       = term;
            model.Week       = int.Parse(week);
            return(model);
        }
Esempio n. 17
0
        public async void Loaded(object param)
        {
            if (param != null)
            {
                View.EduCenterViewParam eduCenterViewParam = param as View.EduCenterViewParam;
                BJUTEduCenterUserinfo = eduCenterViewParam.BJUTEduCenterUserinfo;
                _httpService          = eduCenterViewParam.HttpService;

                EduTime = eduCenterViewParam.Other as EduTimeModel;
            }

            if (EduTime != null)
            {
                SelectedSchoolYear = EduTime.SchoolYear;
                SelectedTerm       = EduTime.Term;
            }

            var scedule = await LoadSchedule();

            if (scedule != null)
            {
                if (Schedule == null)
                {
                    Schedule = new Model.ScheduleModel();
                }

                Schedule.ScheduleItemList = scedule.ScheduleItemList;
                Schedule.Weeks            = scedule.Weeks;
                Schedule.AllWeek          = scedule.AllWeek;


                if (EduTime != null && EduTime.Week != 0)
                {
                    Schedule.CurrentWeek  = EduTime.Week;
                    Schedule.SelectedWeek = EduTime.Week;
                }
                else
                {
                    Schedule.CurrentWeek  = scedule.CurrentWeek;
                    Schedule.SelectedWeek = scedule.SelectedWeek;
                }
            }

            hasLoadLoaclInfo = true;
        }
Esempio n. 18
0
        public async Task <Model.CampusCardInfoModel> GetCampusCardBasicInfo(Service.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);
        }
Esempio n. 19
0
        //检测是否能链接到教务系统
        public async Task <bool> GetConnectedStatus(Service.HttpBaseService _httpService)
        {
            try
            {
                var re = await _httpService.GetResponseCode(educenterUri);

                if (re == System.Net.HttpStatusCode.OK)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch
            {
                return(false);
            }
        }
Esempio n. 20
0
        public async Task <string> FundCampusCard(Service.HttpBaseService _httpService, string smtCardid)
        {
            try
            {
                var parameters = new Dictionary <string, string>();
                parameters.Add("lg_smtCardid", smtCardid);
                var re = await _httpService.SendRequst(foundCampusUri, HttpMethod.Post, parameters);

                var json          = JsonObject.Parse(re);
                var messageObject = json["message"];
                return(messageObject.ValueType == JsonValueType.Null ?"解挂成功,注意保存一卡通":messageObject.GetString());
            }
            catch (HttpRequestException requestException)
            {
                return("网络错误");
            }
            catch
            {
                return("其他错误");
            }
        }
 public void Loaded(object param)
 {
     _httpService = param as Service.HttpBaseService;
     GetTransactionInfo();
 }
Esempio n. 22
0
        public async Task <IList <Model.CampusCardTransactionItemModel> > GetTransactionInfo(Service.HttpBaseService _httpService)
        {
            try
            {
                #region 获取消费记录

                IDictionary <string, string> parameters = new Dictionary <string, string>();
                parameters.Add("int_start", "0");
                parameters.Add("int_maxSize", "15");
                var re = await _httpService.SendRequst(campusCardTransactionUri, HttpMethod.Post, parameters);

                var list = PraseTransactionInfo(re);
                return(list);

                #endregion
            }
            catch
            {
                return(null);
            }
        }