Ejemplo n.º 1
0
        /// <summary>
        /// 下单
        /// </summary>
        public string SubmitOrderRequest(ReqSubmitOrder reqSubmit)
        {
            string fromDate        = reqSubmit.fromDate;       //购票日期
            string fromStation     = reqSubmit.fromStationShort;
            string toDate          = reqSubmit.toDate;         //当前日期
            string toStation       = reqSubmit.toStationShort; //"北京,BJP";
            string wfdc_flag       = reqSubmit.wfdc_flag;      //dc表示单程车票 wc 往返车票
            string fromStationName = reqSubmit.fromStationName;
            string toStationName   = reqSubmit.toStationName;  // "北京";
            //注意,需要解码
            string         secretStr = System.Web.HttpUtility.UrlDecode(reqSubmit.secretStr);
            RequestPackage request   = new RequestPackage();

            request.Method     = EHttpMethod.Post.ToString();
            request.RefererURL = GetRefererURL(fromStationName, fromStation, fromDate, toStationName, toStation, wfdc_flag);
            request.RequestURL = "/otn/leftTicket/submitOrderRequest";
            request.Params.Add("secretStr", secretStr);
            request.Params.Add("train_date", fromDate);
            request.Params.Add("back_train_date", toDate);
            request.Params.Add("tour_flag", wfdc_flag);
            request.Params.Add("purpose_codes", reqSubmit.purpose_codes);
            request.Params.Add("query_from_station_name", fromStationName);
            request.Params.Add("query_to_station_name", toStationName);
            request.Params.Add("undefined", "");
            SubmitOrderCookie(fromDate, fromStation, toDate, toStation, wfdc_flag);
            ArrayList list = TrainHttpContext.Send(request);

            if (list.Count == 1)
            {
                return(Encoding.UTF8.GetString(list[0] as byte[]));
            }
            return(Encoding.UTF8.GetString(list[1] as byte[]));
        }
Ejemplo n.º 2
0
 /// <summary>
 ///  表格单元点击事件
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void dataTrain_CellContentClick(object sender, DataGridViewCellEventArgs e)
 {
     if (e.ColumnIndex == 0 && e.RowIndex != -1)
     {
         //获取cb_check的值
         var checkCell   = (DataGridViewCheckBoxCell)dataTrain.Rows[e.RowIndex].Cells["cb_check"];
         var trainNoCell = (DataGridViewTextBoxCell)dataTrain.Rows[e.RowIndex].Cells["TrainNo"];
         //var flag = Convert.ToBoolean(checkCell.Value);
         if (checkCell.Selected)
         {
             //rows.Cells["cb_check"].Value = false;
             //checkCell.Value = false;
             if (!TrainNumber.Items.Contains(trainNoCell.Value))
             {
                 TrainNumber.Items.Add(trainNoCell.Value);
             }
         }
         else
         {
             //rows.Cells["cb_check"].Value = true;
             //checkCell.Value = true;
             if (TrainNumber.Items.Contains(trainNoCell.Value))
             {
                 TrainNumber.Items.Remove(trainNoCell.Value);
             }
         }
     }
     else if (e.ColumnIndex == 23) //预定按钮
     {
         OrderBll       order       = new OrderBll();
         LoginBll       login       = new LoginBll();
         QueryBll       query       = new QueryBll();
         var            index       = e.RowIndex;
         var            departure   = departureStation.Text;
         var            arrivals    = arrivalsStation.Text;
         var            TrainId     = dataTrain.Rows[e.RowIndex].Cells["TrainId"].Value.ToString();
         ReqSubmitOrder submitOrder = new ReqSubmitOrder();
         submitOrder.toDate          = DateTime.Now.ToString("yyyy-MM-dd");
         submitOrder.fromDate        = departureDate.Value.ToString("yyyy-MM-dd");
         submitOrder.secretStr       = TrainId;
         submitOrder.fromStationName = departure;
         submitOrder.toStationName   = arrivals;
         submitOrder.wfdc_flag       = "dc";
         if (!(string.IsNullOrWhiteSpace(departure) && string.IsNullOrWhiteSpace(arrivals)))
         {
             var departureMsg = responses.FirstOrDefault(x => x.StationName == departure);
             var arrivalsMsg  = responses.FirstOrDefault(x => x.StationName == arrivals);
             submitOrder.fromStationShort = departureMsg.StationShort; // $"{departure},{departureMsg.StationShort}";
             submitOrder.toStationShort   = arrivalsMsg.StationShort;  // $"{arrivals},{arrivalsMsg.StationShort}";
         }
         var checkUser = login.PostCheckUser201909(out string json);
         if (checkUser.result_code.Equals(0))
         {
             var submitOrderRequest    = order.SubmitOrderRequest(submitOrder);
             var getPassenger          = query.GetPassenger();
             var checkOrderInfo        = order.CheckOrderInfo();
             var getQueueCount         = order.GetQueueCount();
             var confirmSingleForQueue = order.ConfirmGoForQueue();
             order.QueryOrderWaitTime201909();
             order.ResultOrderForWcQueue();
         }
     }
 }