public ActionResult ReturnToShowLuggages() { string cur_state = Request.Params["s"]; cur_state = cur_state.Trim(); if (cur_state == "已登机") { MessageBox.Show("该行李已经登机啦!"); } else { int Luggage_ID = int.Parse(Request.Params["l_id"]); string Flight_ID = Request.Params["ff_id"]; Flight_ID = Flight_ID.Trim(); int w = int.Parse(Request.Params["w"]); StringBuilder s = new StringBuilder(); s.Append("已登机"); LUGGAGE objlug = new LUGGAGE() { F_ID = Flight_ID, L_ID = Luggage_ID, WEGHT = Convert.ToInt16(w), STATE = s.ToString() }; db.Updateable(objlug).ExecuteCommand(); } List <Luggage> Luggages = new List <Luggage>(); List <object> list = new List <object>(); //对象 List <string> value = new List <string>(); //值 Luggage obj = new Luggage(); SelectReturn sr = DataBaseAccess.GetAllTInfo(obj); list = sr.list; value = sr.value; //obj转Luggage int flag = 0; foreach (object j in list) { Luggage luggage = new Luggage();//current //手动赋值,暂时没有找到映射的方法 luggage.F_ID = value[flag++]; luggage.L_ID = int.Parse(value[flag++]); luggage.Weght = int.Parse(value[flag++]); luggage.State = value[flag++]; Luggages.Add(luggage); } // return(View("ShowLuggages", Luggages)); }
public void InsertLuggage(LUGGAGE luggage) { db.Insertable(luggage).ExecuteCommand(); }
public void customerActions() { Actions a = new Actions(); //办理登机牌 var systime = a.SystemTime; var preCardtime = systime.AddHours(3); //3小时前办理登机牌 var preBoardtime = systime.AddMinutes(30); //30分钟前登机 List <FLIGHTIME> preCardFlightimeList = a.searchPreCardFlights(preCardtime); foreach (var preCardFlightime in preCardFlightimeList) //办理登机的飞机 { short count = 0; var preCardSeatList = a.searchPreCardSeats(preCardFlightime.F_ID); foreach (SEAT preCardSeat in preCardSeatList) { bool find = false; do { Random ran = new Random(DateTime.Now.Millisecond); int RandKey = ran.Next(14) + 1; //**********此处有问题 SEAT_NUMBER是string类型*********** //找座位是否被占用 bool found = a.judgeFoundSeat(preCardSeat.F_ID, RandKey.ToString()); if (!found) { preCardSeat.STATE = "已办理"; preCardSeat.SEAT_NUMBER = RandKey.ToString(); try { a.BeginTran(); a.updateSeat(preCardSeat); string c_name = a.getCustomer(preCardSeat.C_ID).NAME; textBox1.Text += (preCardSeat.F_ID + " " + c_name + " 已办理\r\n"); a.CommitTran(); } catch { a.RollbackTran(); Console.WriteLine("updateSeat"); } CUSTOMER customer = a.getCustomer(preCardSeat.C_ID); if (customer.LUG_WEIGHT != null) { //这个顾客有行李 LUGGAGE luggage = new LUGGAGE(); luggage.F_ID = preCardSeat.F_ID; luggage.L_ID = preCardSeat.C_ID; luggage.STATE = "已办理"; luggage.WEGHT = (short)customer.LUG_WEIGHT; a.InsertLuggage(luggage); string c_name = a.getCustomer(luggage.L_ID).NAME; textBox1.Text += (c_name + " 行李已办理\r\n"); } else //没有行李,不用处理 { } find = true; } else { } //座位已被占 } while (find != true); count++; } //修改飞机已办理信息 var preCardFlight = a.getFlight(preCardFlightime.F_ID); preCardFlight.CHECKED += count; try { a.BeginTran(); a.updateFlight(preCardFlight); textBox1.Text += (preCardFlight.F_ID + " 信息已更新\r\n"); a.CommitTran(); } catch { a.RollbackTran(); Console.WriteLine("updateFlight"); } } //要登机的航班 var preBoardFlightimeList = a.GetpreBoardFlightimeList(preBoardtime); foreach (var preBoardFlightime in preBoardFlightimeList) //办理登机的飞机 { short count = 0; var preBoardSeatList = a.GetpreBoardSeats(preBoardFlightime.F_ID); foreach (SEAT preBoardSeat in preBoardSeatList) { preBoardSeat.STATE = "已登机"; string c_name = a.getCustomer(preBoardSeat.C_ID).NAME; textBox1.Text += (c_name + " 已登机\r\n"); count++; } if (preBoardSeatList.ToArray().Length != 0) { a.updateSeat(preBoardSeatList); } var preBoardFlight = a.getFlight(preBoardFlightime.F_ID); preBoardFlight.BOARD += count; a.updateFlight(preBoardFlight); a.UpdateBoardLuggage(preBoardFlight.F_ID); } }
public ActionResult ReceiveMsg() //返回登机牌页面 //然后如果乘客有行李,那么添加行李到luggage { //姓名,性别,ID,航班号,出发时间,座位号 //获取ID,查询姓名,性别 int Current_Customer_ID = int.Parse(Request.Params["Customer_ID"]); Customer cobj = new Customer(Current_Customer_ID); List <string> SingleInfo = new List <string>(); SingleInfo.Add("Name"); //0 SingleInfo.Add("Gender"); //1 List <string> resInfo = new List <string>(); resInfo = DataBaseAccess.GetSingleInfo(cobj, SingleInfo); resInfo.Add(Current_Customer_ID.ToString()); //2 // //获取当前飞机ID string Current_Flight_ID = Request.Params["current_flight"]; //3 //出发地点 string airport_terminal = Request.Params["airport_terminal"]; //4 //出发时间 string ex_takeoff_time = Request.Params["ex_takeoff_time"]; //5 //座位号 int Pickrt = int.Parse(Request.Params["result"]); //6 resInfo.Add(Current_Flight_ID); resInfo.Add(airport_terminal); resInfo.Add(ex_takeoff_time); resInfo.Add(Pickrt.ToString()); //座位,更新已预订为已办理 SEAT objst = new SEAT() { F_ID = Current_Flight_ID, SEAT_NUMBER = Pickrt.ToString(), C_ID = Current_Customer_ID, STATE = "已办理" }; db.Updateable(objst).ExecuteCommand(); /***************************************/ //在这里将已办理人数加一 var fstate = db.Queryable <FLIGHT>().Where(it => it.F_ID == Current_Flight_ID).ToList(); foreach (var i in fstate) { i.CHECKED++; db.Updateable(i).ExecuteCommand(); } // /***************************************/ //在这里检查顾客是否有行李 List <string> weight = new List <string>(); weight.Add("Lug_Weight"); var Current_Customer_Luggage = DataBaseAccess.GetSingleInfo(cobj, weight); if (Current_Customer_Luggage[0].ToString() != "") { //顾客ID Current_Customer_ID //航班ID Current_Flight_ID //重量 Current_Customer_Luggage.ToString() //费用 y=kx-b int cost; if (int.Parse(Current_Customer_Luggage[0].ToString()) < 5) { cost = 0; } else { cost = (int.Parse(Current_Customer_Luggage[0].ToString()) - 5) * 50; } //状态 string state = "已办理"; LUGGAGE luggage = new LUGGAGE() { F_ID = Current_Flight_ID, L_ID = Current_Customer_ID, WEGHT = Convert.ToInt16(int.Parse(Current_Customer_Luggage[0])), STATE = state }; db.Insertable(luggage).ExecuteCommand(); /*************************************/ } return(View("ShowBoardingPass", resInfo)); }