コード例 #1
0
ファイル: BLL_Car.cs プロジェクト: imsaux/TOEC_SASTAD_Data
 /// <summary>
 /// 根据顺位号查询某一节车厢[上一节,下一节]
 /// </summary>
 /// <param name="TrainID"></param>
 /// <param name="TrainComeDate"></param>
 /// <param name="OrderNum"></param>
 /// <returns></returns>
 public View_TrainDetail GetCar(string TrainID, DateTime TrainComeDate, int OrderNum)
 {
     try
     {
         using (sartas3 db = new sartas3())
         {
             //首先根据时间找到指定的分表
             string TableName = "traindetail";
             if (TrainComeDate < DateTime.Now)
             {
                 for (DateTime i = TrainComeDate; i < DateTime.Now; i = i.AddMonths(1))
                 {
                     TableName = "traindetail_" + i.ToString("yyyyMM");
                     string SQL_BeSureTableExist = "SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='" + Config.DB_SCHEMA + "'  AND TABLE_NAME = '" + TableName + "'";
                     string resName = db.Database.SqlQuery <string>(SQL_BeSureTableExist).FirstOrDefault();
                     if (!string.IsNullOrWhiteSpace(resName))
                     {
                         break;
                     }
                     else
                     {
                         TableName = "traindetail";
                     }
                 }
             }
             //根据分表名称进行查询
             string      SQL_Query = @"SELECT * FROM " + Config.DB_SCHEMA + "." + TableName + @" td WHERE td.Train_ID = '" + TrainID + "' AND td.TrainDetail_OrderNo='" + OrderNum + "'";
             traindetail td        = db.Database.SqlQuery <traindetail>(SQL_Query).SingleOrDefault();
             if (td != null)
             {
                 View_TrainDetail dtd = new View_TrainDetail();
                 dtd.Train_ID            = td.Train_ID;
                 dtd.TrainDetail_ID      = td.TrainDetail_ID;
                 dtd.TrainDetail_No      = td.TrainDetail_No;
                 dtd.TrainDetail_OrderNo = td.TrainDetail_OrderNo;
                 dtd.vehicletype         = td.vehicletype;
                 dtd.AlarmLevel          = td.AlarmLevel;
                 string SQL_QueryTrain = @"SELECT * FROM " + Config.DB_SCHEMA + ".train t WHERE t.Train_ID = '" + TrainID + "';";
                 train  t = db.Database.SqlQuery <train>(SQL_QueryTrain).SingleOrDefault();
                 if (t != null)
                 {
                     dtd.TrainComeDate = Convert.ToDateTime(t.Train_ComeDate);
                     dtd.TrainNo       = t.Train_No;
                     dtd.LineID        = Convert.ToInt16(t.Line_ID);
                 }
                 return(dtd);
             }
             else
             {
                 return(null);
             }
         }
     }
     catch (Exception ex)
     {
         return(null);
     }
 }
コード例 #2
0
        /// <summary>
        /// 下一节车厢
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn_Next_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            BLL_Car          tdbll = new BLL_Car();
            View_TrainDetail tmp   = tdbll.GetCar(CurTrainDetail.Train_ID.ToString(), CurTrainDetail.TrainComeDate, Convert.ToInt16(CurTrainDetail.TrainDetail_OrderNo + 1));

            if (tmp != null)
            {
                CurTrainDetail = tmp;
                Init_Load_TrainDetailInfo();
            }
            else
            {
                XtraMessageBox.Show("没有下一节了");
            }
        }