demo_trade/Domain/GuestProductUseCase.cs

42 lines
1.4 KiB
C#
Raw Normal View History

2024-10-04 12:41:04 +00:00
using demo_trade.Data.Repository;
using demo_trade.Models;
using demo_trade.UI.Presenters;
using demo_trade.Utils;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace demo_trade.Domain
{
public class GuestProductUseCase
{
private IProductRepository _productRepository;
public GuestProductUseCase(IProductRepository productRepository) {
_productRepository = productRepository;
}
public List<ProductPresenter> GetProducts() => _productRepository
.GetProducts()
.Select(it => new ProductPresenter
{
ArticleNumber = it.Productarticlenumber,
Description = it.Productdescription,
Name = it.Productname,
DiscountAmount = it.Productdiscountamount,
Cost = it.Productcost == null ? 0 : Convert.ToDecimal(it.Productcost),
ProductMaxDiscount = it.Productmaxdiscount,
QuantityInStock = it.Productquantityinstock,
Manufacturer = new Manufacturer { Id = it.Manufacturer.ManufacturerId, Name = it.Manufacturer.ManufacturerName },
Image = !String.IsNullOrEmpty(it.Imagename) ?
ImageHelper.BASE_URL + "/" + it.Imagename
: ImageHelper.BASE_URL + "/" + "default.png"
,
}).ToList();
}
}