using ExCSS; using Newtonsoft.Json; using Nop.Plugin.Misc.AuctionPlugin.Domains.Dtos; using Nop.Plugin.Misc.AuctionPlugin.Domains.Enums; using Nop.Web.Framework.Models; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Nop.Plugin.Misc.AuctionPlugin.Models { public record ProductBidBoxViewModel: BaseNopModel { //[JsonIgnore] //[System.Text.Json.Serialization.JsonIgnore] public AuctionDto AuctionDto { get; set; } //[JsonIgnore] //[System.Text.Json.Serialization.JsonIgnore] public ProductToAuctionDto FirstProductToAuction { get; set; } public int ProductToAuctionId { get; set; } public bool IsAdmin { get; set; } public bool IsGuest { get; set; } public int AuctionId { get; set; } public bool AuctionClosed { get; set; } public bool IsItemActive => FirstProductToAuction.IsActiveItem; public AuctionStatus AuctionStatus { get; set; } public int ProductId { get; set; } public string NextProductUrl { get; set; } public string NextProductImageUrl { get; set; } public string NextProductName { get; set; } public string LastProductUrl { get; set; } public string LastProductImageUrl { get; set; } public string LastProductName { get; set; } public int CustomerId { get; set; } public string WidgetZone { get; set; } #region debug fields to be removed public decimal? BasePrice { get; set; } #endregion #region visible public decimal LicitStep { get; set; } public decimal? CurrentPrice { get; set; } public decimal NextBidPrice { get; set; } #endregion visible public ProductBidBoxViewModel() { } public ProductBidBoxViewModel(AuctionDto auctionDto) : this() { AuctionDto = auctionDto; FirstProductToAuction = AuctionDto.ProductToAuctionDtos.First(); AuctionId = auctionDto.Id; ProductId = FirstProductToAuction.ProductId; ProductToAuctionId = FirstProductToAuction.Id; } } }