From 407d72da9e0957d2d367acaa59d88d0f61be717f Mon Sep 17 00:00:00 2001 From: Damien Ostler Date: Sat, 24 Feb 2024 17:54:48 -0500 Subject: [PATCH] fix:page endpoint --- .../Controllers/ArtistController.cs | 2 +- .../Controllers/DiscoveryController.cs | 57 ++++++++++++++++++- ...rtistProfilePageSettingsModelExtensions.cs | 1 - 3 files changed, 55 insertions(+), 5 deletions(-) diff --git a/src/comissions.app.api/Controllers/ArtistController.cs b/src/comissions.app.api/Controllers/ArtistController.cs index 0ffa3cb..45b55d5 100644 --- a/src/comissions.app.api/Controllers/ArtistController.cs +++ b/src/comissions.app.api/Controllers/ArtistController.cs @@ -104,7 +104,7 @@ public class ArtistController : Controller public async Task GetArtistPage() { var userId = User.GetUserId(); - var Artist = await _dbContext.UserArtists.Include(x=>x.ArtistPageSettings).FirstOrDefaultAsync(Artist=>Artist.UserId==userId); + var Artist = await _dbContext.UserArtists.Include(x=>x.ArtistPageSettings).FirstOrDefaultAsync(artist=>artist.UserId==userId); if(Artist==null) return NotFound(); var result = Artist.ArtistPageSettings.ToModel(); diff --git a/src/comissions.app.api/Controllers/DiscoveryController.cs b/src/comissions.app.api/Controllers/DiscoveryController.cs index a038b4d..c00a12d 100644 --- a/src/comissions.app.api/Controllers/DiscoveryController.cs +++ b/src/comissions.app.api/Controllers/DiscoveryController.cs @@ -2,6 +2,7 @@ using comissions.app.api.Models.Artist; using comissions.app.api.Models.PortfolioModel; using comissions.app.api.Services.Storage; using comissions.app.database; +using comissions.app.database.Entities; using Microsoft.AspNetCore.Mvc; using Microsoft.EntityFrameworkCore; @@ -55,9 +56,59 @@ public class DiscoveryController : Controller .FirstOrDefaultAsync(x=>x.Name==sellerName.Replace('-', ' ')); if(seller==null) return NotFound(); - var result = seller.ArtistPageSettings.ToModel(); - result.Artist = seller.ToModel(); - return Ok(result); + + if (seller.ArtistPageSettings == null) + { + var newSettings = new ArtistPageSettings() + { + ArtistId = seller.Id, + BackgroundColor = "rgb(126, 115, 115)", + HeaderColor = "rgb(194, 187, 187)", + HeaderTextSize = 5, + HeaderUseImage = false, + HeaderImageUrl = "", + DescriptionHeaderText = "", + DescriptionHeaderColor = "rgb(194, 187, 187)", + DescriptionHeaderSize = 3, + DescriptionHeaderUseImage = false, + DescriptionHeaderImageUrl = "", + DescriptionBackgroundColor = "rgb(103, 97, 97)", + DescriptionTextColor = "rgb(186, 186, 186)", + DescriptionTextSize = 1, + PortfolionHeaderText = "", + PortfolionHeaderColor = "rgb(194, 187, 187)", + PortfolionHeaderSize = 3, + PortfolionHeaderUseImage = false, + PortfolionHeaderImageUrl = "", + PortfolioBackgroundColor = "rgb(78, 73, 73)", + PortfolioMasonry = true, + PortfolioColumns = 3, + PortfolioEnabledScrolling = true, + PortfolioMaximumSize = 50, + RequestHeaderText = "", + RequestHeaderColor = "rgb(194, 187, 187)", + RequestHeaderSize = 3, + RequestHeaderUseImage = false, + RequestHeaderImageUrl = "", + RequestBackgroundColor = "rgb(103, 97, 97)", + RequestTermsColor = "rgb(194, 187, 187)", + RequestButtonBGColor = "rgb(101, 97, 97)", + RequestButtonTextColor = "rgb(194, 187, 187)", + RequestButtonHoverBGColor = "rgb(98, 98, 98)" + }; + var dbSettings = _dbContext.ArtistPageSettings.Add(newSettings).Entity; + await _dbContext.SaveChangesAsync(); + var result = dbSettings.ToModel(); + result.Artist = seller.ToModel(); + return Ok(result); + } + else + { + var result = seller.ArtistPageSettings.ToModel(); + result.Artist = seller.ToModel(); + return Ok(result); + } + } [HttpGet] diff --git a/src/comissions.app.api/Models/SellerProfile/ArtistProfilePageSettingsModelExtensions.cs b/src/comissions.app.api/Models/SellerProfile/ArtistProfilePageSettingsModelExtensions.cs index befa45f..78471e7 100644 --- a/src/comissions.app.api/Models/SellerProfile/ArtistProfilePageSettingsModelExtensions.cs +++ b/src/comissions.app.api/Models/SellerProfile/ArtistProfilePageSettingsModelExtensions.cs @@ -8,7 +8,6 @@ public static class ArtistPageSettingsModelExtensions public static ArtistPageSettingsModel ToModel(this ArtistPageSettings sellerProfile) { - Console.WriteLine(JsonConvert.SerializeObject(sellerProfile)); return new ArtistPageSettingsModel() { BackgroundColor = sellerProfile.BackgroundColor,