public IEnumerable <PNRHistory> Query() { List <PNRHistory> pnrHistories = default(List <PNRHistory>); string sql = @"select ThreadId, GenerateTime, PNRCode, OfficeNo, Status from PNRHistories "; using (var dbOperator = new DbOperator(Provider, ConnectionString)) { using (var reader = dbOperator.ExecuteReader(sql)) { pnrHistories = new List <PNRHistory>(); while (reader.Read()) { int threadId = reader.GetInt32(0); DateTime generateTime = reader.GetDateTime(1); string pnrCode = reader.GetString(2); string officeNo = reader.GetString(3); byte status = reader.GetByte(4); PNRHistory pnrHistory = new PNRHistory(threadId, generateTime, pnrCode, officeNo, status); pnrHistories.Add(pnrHistory); } } } return(pnrHistories); }
IEnumerable <PNRHistory> IHistoryRepository.Query(DateTime startTime, DateTime endTime) { List <PNRHistory> pnrHistories = default(List <PNRHistory>); string sql = @"select ThreadId, GenerateTime, PNRCode, OfficeNo, Status " + @" from PNRHistories " + @" where GenerateTime between @StartTime and @EndTime"; using (var dbOperator = new DbOperator(Provider, ConnectionString)) { dbOperator.AddParameter("StartTime", startTime); dbOperator.AddParameter("EndTime", endTime); using (var reader = dbOperator.ExecuteReader(sql)) { pnrHistories = new List <PNRHistory>(); while (reader.Read()) { int threadId = reader.GetInt32(0); DateTime generateTime = reader.GetDateTime(1); string pnrCode = reader.GetString(2); string officeNo = reader.GetString(3); byte status = reader.GetByte(4); PNRHistory pnrHistory = new PNRHistory(threadId, generateTime, pnrCode, officeNo, status); pnrHistories.Add(pnrHistory); } } } return(pnrHistories); }
public PNRHistory Query(string pnrHistoryPNRCode) { PNRHistory pnrHistory = null; // 编码有可能重复,提取时间最近的一个; string sql = @"select top 1 ThreadId, GenerateTime, PNRCode, OfficeNo, Status from PNRHistories " + @" where PNRCode = @PNRCode order by GenerateTime desc"; using (var dbOperator = new DbOperator(Provider, ConnectionString)) { dbOperator.AddParameter("PNRCode", pnrHistoryPNRCode); using (var reader = dbOperator.ExecuteReader(sql)) { if (reader.Read()) { int threadId = reader.GetInt32(0); DateTime generateTime = reader.GetDateTime(1); string pnrCode = reader.GetString(2); string officeNo = reader.GetString(3); byte status = reader.GetByte(4); pnrHistory = new PNRHistory(threadId, generateTime, pnrCode, officeNo, status); } } } return(pnrHistory); }
/// <summary> /// 机票预定 /// </summary> /// <param name="reservationInfo">预订信息</param> /// <param name="oemId"> </param> /// <param name="officeNumber"> </param> /// <returns></returns> public static ExecuteResult <ReservedPnr> ReserveTickets(ReservationInfo reservationInfo, Guid oemId) { if (reservationInfo == null) { throw new ArgumentException("预订信息不能为空"); } const ConfigUseType type = ConfigUseType.Reserve; var userName = GetUserName(oemId, type); var officeNumber = GetOfficeNumber(oemId, type); if (userName == null || officeNumber == null) { return(new ExecuteResult <ReservedPnr> { Result = null, Success = false, Message = "OEM未设置可用配置,且没有设置使用平台配置。" }); } var repository = Factory.CreateCommandRepository(); var executeResult = repository.Book(reservationInfo, officeNumber, userName); if (executeResult.Success) { var reservedPnr = executeResult.Result; var pnrHistory = new PNRHistory(0, DateTime.Now, reservedPnr.PnrPair.PNR, reservedPnr.OfficeNo, 1); HistoryService.Save(pnrHistory); PidManagementService.SaveCounter(oemId, HasUsePlatformConfig(oemId, type)); } return(executeResult); }
public int Update(PNRHistory history) { string sql = @"update PNRHistories set Status = @Status where ThreadId = @ThreadId and GenerateTime = @GenerateTime"; using (var dbOperator = new DbOperator(Provider, ConnectionString)) { dbOperator.AddParameter("Status", history.Status); dbOperator.AddParameter("ThreadId", history.ThreadId); dbOperator.AddParameter("GenerateTime", history.GenerateTime); return(dbOperator.ExecuteNonQuery(sql)); } }
public int Insert(PNRHistory history) { string sql = @"insert into PNRHistories(ThreadId, GenerateTime, PNRCode, OfficeNo, Status)" + @"values(@ThreadId, @GenerateTime, @PNRCode, @OfficeNo, 1)"; using (var dbOperator = new DbOperator(Provider, ConnectionString)) { dbOperator.AddParameter("ThreadId", history.ThreadId); dbOperator.AddParameter("GenerateTime", history.GenerateTime); dbOperator.AddParameter("PNRCode", history.PNRCode); dbOperator.AddParameter("OfficeNo", history.OfficeNo); dbOperator.AddParameter("Status", history.Status); return(dbOperator.ExecuteNonQuery(sql)); } }
public static int Save(PNRHistory pnrHistory) { var repository = Factory.CreateHistoryRepository(); return(repository.Insert(pnrHistory)); }
public static int Update(PNRHistory history) { IHistoryRepository repository = Factory.CreateHistoryRepository(); return(repository.Update(history)); }