public ReserveTableResponseModel reserveTable(ReserveTableRequestModel reserveTableRequestModel, out ErrorModel errorModel) { errorModel = null; try { Table tableHelper = new Table(); ReserveTableResponseModel model = tableHelper.reserveTable(reserveTableRequestModel, out errorModel); return(model); } catch (Exception) { return(null); } }
public ReserveTableResponseModel reserveTable(ReserveTableRequestModel reserveTableRequestModel, out ErrorModel errorModel) { errorModel = null; ReserveTableResponseModel response = null; SqlConnection connection = null; try { using (connection = new SqlConnection(Database.getConnectionString())) { SqlCommand command = new SqlCommand(SqlCommands.SP_reserveTable, connection); command.CommandType = System.Data.CommandType.StoredProcedure; #region Query Parameters command.Parameters.AddWithValue("@tableId", reserveTableRequestModel.tableId); command.Parameters.AddWithValue("@reservationDate", reserveTableRequestModel.reservationDate); command.Parameters.AddWithValue("@reservedBy", reserveTableRequestModel.reservedBy); command.Parameters.AddWithValue("@numberOfPeople", reserveTableRequestModel.numberOfPeople); command.Parameters.AddWithValue("@startTime", reserveTableRequestModel.startTime); command.Parameters.AddWithValue("endTime", reserveTableRequestModel.endTime); #endregion connection.Open(); SqlDataReader reader = command.ExecuteReader(); response = new ReserveTableResponseModel(); while (reader.Read()) { if (reader.isColumnExists("ErrorCode")) { errorModel = new ErrorModel(); errorModel.ErrorCode = reader["ErrorCode"].ToString(); errorModel.ErrorMessage = reader["ErrorMessage"].ToString(); } else { response.StatusCode = reader["StatusCode"].ToString(); response.StatusMessage = reader["StatusMessage"].ToString(); } } command.Dispose(); connection.Close(); } return(response); } catch (Exception exception) { errorModel = new ErrorModel(); errorModel.ErrorMessage = exception.Message; return(null); } finally { if (connection != null) { connection.Close(); } } }