Files
ShopSolution-backend/Webshop.Application/Services/Public/ShopInfoService.cs
Tizian.Breuch eb1f58d81f shop info
2025-09-25 16:38:11 +02:00

47 lines
1.6 KiB
C#

// src/Webshop.Application/Services/Public/ShopInfoService.cs
using System.Threading.Tasks;
using Webshop.Application;
using Webshop.Application.DTOs.Shop;
using Webshop.Domain.Interfaces;
namespace Webshop.Application.Services.Public
{
public class ShopInfoService : IShopInfoService
{
private readonly IShopInfoRepository _shopInfoRepository;
public ShopInfoService(IShopInfoRepository shopInfoRepository)
{
_shopInfoRepository = shopInfoRepository;
}
public async Task<ServiceResult<PublicShopInfoDto>> GetPublicShopInfoAsync()
{
var shopInfo = await _shopInfoRepository.GetAsync();
if (shopInfo == null)
{
// Gib Standardwerte zurück, wenn nichts konfiguriert ist
var defaultDto = new PublicShopInfoDto { ShopName = "Webshop" };
return ServiceResult.Ok(defaultDto);
}
var dto = new PublicShopInfoDto
{
ShopName = shopInfo.ShopName,
Slogan = shopInfo.Slogan,
ContactEmail = shopInfo.ContactEmail,
PhoneNumber = shopInfo.PhoneNumber,
Street = shopInfo.Street,
City = shopInfo.City,
PostalCode = shopInfo.PostalCode,
Country = shopInfo.Country,
FacebookUrl = shopInfo.FacebookUrl,
InstagramUrl = shopInfo.InstagramUrl,
TwitterUrl = shopInfo.TwitterUrl
};
return ServiceResult.Ok(dto);
}
}
}