private DBViewedItem GetViewedItemFromReader(IDataReader dataReader) { DBViewedItem viewedItem = new DBViewedItem(); viewedItem.ViewedItemID = NopSqlDataHelper.GetInt(dataReader, "ViewedProductID"); viewedItem.CustomerSessionGUID = NopSqlDataHelper.GetGuid(dataReader, "CustomerSessionGUID"); viewedItem.ProductVariantID = NopSqlDataHelper.GetInt(dataReader, "ProductVariantID"); viewedItem.CreatedOn = NopSqlDataHelper.GetUtcDateTime(dataReader, "CreatedOn"); return(viewedItem); }
/// <summary> /// Updates the viewed item /// </summary> /// <param name="ViewedItemID">The viewed item identifier</param> /// <param name="CustomerSessionGUID">The customer session identifier</param> /// <param name="ProductVariantID">The product variant identifier</param> /// <param name="CreatedOn">The date and time of instance creation</param> /// <returns>Viewed item</returns> public override DBViewedItem UpdateViewedItem(int ViewedItemID, Guid CustomerSessionGUID, int ProductVariantID, DateTime CreatedOn) { DBViewedItem viewedItem = null; Database db = NopSqlDataHelper.CreateConnection(_sqlConnectionString); DbCommand dbCommand = db.GetStoredProcCommand("ViewedItemUpdate"); db.AddInParameter(dbCommand, "ViewedItemID", DbType.Int32, ViewedItemID); db.AddInParameter(dbCommand, "CustomerSessionGUID", DbType.Guid, CustomerSessionGUID); db.AddInParameter(dbCommand, "ProductVariantID", DbType.Int32, ProductVariantID); db.AddInParameter(dbCommand, "CreatedOn", DbType.DateTime, CreatedOn); if (db.ExecuteNonQuery(dbCommand) > 0) { viewedItem = GetViewedItemByID(ViewedItemID); } return(viewedItem); }
/// <summary> /// Gets a viewed item /// </summary> /// <param name="viewedItemID">The shopping cart item identifier</param> /// <returns>viewed item</returns> public override DBViewedItem GetViewedItemByID(int viewedItemID) { DBViewedItem viewedItem = null; if (viewedItemID == 0) { return(viewedItem); } Database db = NopSqlDataHelper.CreateConnection(_sqlConnectionString); DbCommand dbCommand = db.GetStoredProcCommand("ViewedItemLoadByPrimaryKey"); db.AddInParameter(dbCommand, "ViewedItemID", DbType.Int32, viewedItemID); using (IDataReader dataReader = db.ExecuteReader(dbCommand)) { if (dataReader.Read()) { viewedItem = GetViewedItemFromReader(dataReader); } } return(viewedItem); }
/// <summary> /// Gets viewed item by the product variant identifier /// </summary> /// <param name="ProductVariantID">The product variant identifier</param> /// <returns></returns> public override DBViewedItem ViewedItemLoadByProductVariantID(int ProductVariantID, Guid CustomerSessionGUID) { DBViewedItem viewedItem = null; if (ProductVariantID == 0) { return(viewedItem); } Database db = NopSqlDataHelper.CreateConnection(_sqlConnectionString); DbCommand dbCommand = db.GetStoredProcCommand("ViewedItemLoadByProductVariantID"); db.AddInParameter(dbCommand, "ProductVariantID", DbType.Int32, ProductVariantID); db.AddInParameter(dbCommand, "CustomerSessionGUID", DbType.Guid, CustomerSessionGUID); using (IDataReader dataReader = db.ExecuteReader(dbCommand)) { if (dataReader.Read()) { viewedItem = GetViewedItemFromReader(dataReader); } } return(viewedItem); }
/// <summary> /// Gets a viewed by customer session GUID /// </summary> /// <param name="CustomerSessionGUID">The customer session identifier</param> /// <param name="PageSize">pageSize</param> /// <param name="pageIndex">pageIndex</param> /// <returns>Viewed items</returns> public override DBViewedItemsCollection GetViewedItemByCustomerSessionGUID(Guid CustomerSessionGUID, int PageSize, int PageIndex, out int TotalRecords) { DBViewedItemsCollection viewedItems = new DBViewedItemsCollection(); Database db = NopSqlDataHelper.CreateConnection(_sqlConnectionString); DbCommand dbCommand = db.GetStoredProcCommand("ViewedItemLoadByCustomerSessionGUID"); db.AddInParameter(dbCommand, "CustomerSessionGUID", DbType.Guid, CustomerSessionGUID); db.AddInParameter(dbCommand, "Count", DbType.Int32, PageSize); db.AddInParameter(dbCommand, "PageIndex", DbType.Int32, PageIndex); db.AddOutParameter(dbCommand, "TotalRecords", DbType.Int32, 0); using (IDataReader dataReader = db.ExecuteReader(dbCommand)) { while (dataReader.Read()) { DBViewedItem viewedItem = GetViewedItemFromReader(dataReader); viewedItems.Add(viewedItem); } } TotalRecords = Convert.ToInt32(db.GetParameterValue(dbCommand, "@TotalRecords")); return(viewedItems); }