mirror of
https://github.com/D4M13N-D3V/comissions-app-core-api.git
synced 2025-03-14 10:04:55 +00:00
feat: api endpoint to update page settings
This commit is contained in:
parent
98f2782552
commit
621beb155a
@ -81,6 +81,40 @@ public class SellerProfileController : Controller
|
|||||||
return Ok(result);
|
return Ok(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[HttpGet]
|
||||||
|
[Authorize("read:seller-profile")]
|
||||||
|
[Route("Page")]
|
||||||
|
public async Task<IActionResult> GetSellerProfilePage()
|
||||||
|
{
|
||||||
|
var userId = User.GetUserId();
|
||||||
|
var sellerProfile = await _dbContext.UserSellerProfiles.Include(x=>x.SellerProfilePageSettings).FirstOrDefaultAsync(sellerProfile=>sellerProfile.UserId==userId);
|
||||||
|
if(sellerProfile==null)
|
||||||
|
return NotFound();
|
||||||
|
var result = sellerProfile.SellerProfilePageSettings.ToModel();
|
||||||
|
return Ok(result);
|
||||||
|
}
|
||||||
|
|
||||||
|
[HttpPut]
|
||||||
|
[Authorize("write:seller-profile")]
|
||||||
|
[Route("Page")]
|
||||||
|
public async Task<IActionResult> UpdateSellerProfilePage(SellerProfilePageSettingsModel model)
|
||||||
|
{
|
||||||
|
var userId = User.GetUserId();
|
||||||
|
var existingSellerProfile = await _dbContext.UserSellerProfiles.Include(x=>x.SellerProfilePageSettings).FirstOrDefaultAsync(sellerProfile=>sellerProfile.UserId==userId);
|
||||||
|
if (existingSellerProfile == null)
|
||||||
|
{
|
||||||
|
var sellerProfileRequest = await _dbContext.SellerProfileRequests.FirstOrDefaultAsync(request=>request.UserId==userId && request.Accepted==false);
|
||||||
|
if(sellerProfileRequest!=null)
|
||||||
|
return BadRequest();
|
||||||
|
return Unauthorized();
|
||||||
|
}
|
||||||
|
var updatedSellerProfile = model.ToModel(existingSellerProfile.SellerProfilePageSettings);
|
||||||
|
updatedSellerProfile = _dbContext.SellerProfilePageSettings.Update(updatedSellerProfile).Entity;
|
||||||
|
await _dbContext.SaveChangesAsync();
|
||||||
|
var result = updatedSellerProfile.ToModel();
|
||||||
|
return Ok(result);
|
||||||
|
}
|
||||||
|
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
[Authorize("write:seller-profile")]
|
[Authorize("write:seller-profile")]
|
||||||
public async Task<IActionResult> RequestSellerProfile()
|
public async Task<IActionResult> RequestSellerProfile()
|
||||||
|
@ -11,6 +11,7 @@ public class SellerProfilePageSettings
|
|||||||
public virtual UserSellerProfile SellerProfile { get; set; } = null!;
|
public virtual UserSellerProfile SellerProfile { get; set; } = null!;
|
||||||
|
|
||||||
public string RequestButtonHoverBGColor { get; set; }
|
public string RequestButtonHoverBGColor { get; set; }
|
||||||
|
public string RequestButtonHoverTextColor { get; set; }
|
||||||
public string RequestButtonTextColor { get; set; }
|
public string RequestButtonTextColor { get; set; }
|
||||||
public string RequestButtonBGColor { get; set; }
|
public string RequestButtonBGColor { get; set; }
|
||||||
public string RequestTermsColor { get; set; }
|
public string RequestTermsColor { get; set; }
|
||||||
|
618
src/comissions.app.api/Migrations/20240218233434_forgot column.Designer.cs
generated
Normal file
618
src/comissions.app.api/Migrations/20240218233434_forgot column.Designer.cs
generated
Normal file
@ -0,0 +1,618 @@
|
|||||||
|
// <auto-generated />
|
||||||
|
using System;
|
||||||
|
using Microsoft.EntityFrameworkCore;
|
||||||
|
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||||
|
using Microsoft.EntityFrameworkCore.Migrations;
|
||||||
|
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||||
|
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
|
||||||
|
using comissions.app.database;
|
||||||
|
|
||||||
|
#nullable disable
|
||||||
|
|
||||||
|
namespace comissions.app.api.Migrations
|
||||||
|
{
|
||||||
|
[DbContext(typeof(ApplicationDbContext))]
|
||||||
|
[Migration("20240218233434_forgot column")]
|
||||||
|
partial class forgotcolumn
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||||
|
{
|
||||||
|
#pragma warning disable 612, 618
|
||||||
|
modelBuilder
|
||||||
|
.HasAnnotation("ProductVersion", "8.0.1")
|
||||||
|
.HasAnnotation("Relational:MaxIdentifierLength", 63);
|
||||||
|
|
||||||
|
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
|
||||||
|
|
||||||
|
modelBuilder.Entity("comissions.app.database.Entities.SellerProfilePageSettings", b =>
|
||||||
|
{
|
||||||
|
b.Property<int>("Id")
|
||||||
|
.ValueGeneratedOnAdd()
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||||
|
|
||||||
|
b.Property<string>("BackgroundColor")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("DescriptionBackgroundColor")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("DescriptionHeaderColor")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("DescriptionHeaderImageUrl")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<int>("DescriptionHeaderSize")
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
b.Property<string>("DescriptionHeaderText")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<bool>("DescriptionHeaderUseImage")
|
||||||
|
.HasColumnType("boolean");
|
||||||
|
|
||||||
|
b.Property<string>("DescriptionTextColor")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<int>("DescriptionTextSize")
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
b.Property<string>("HeaderColor")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("HeaderImageUrl")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<int>("HeaderTextSize")
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
b.Property<bool>("HeaderUseImage")
|
||||||
|
.HasColumnType("boolean");
|
||||||
|
|
||||||
|
b.Property<string>("PortfolioBackgroundColor")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<int>("PortfolioColumns")
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
b.Property<bool>("PortfolioEnabledScrolling")
|
||||||
|
.HasColumnType("boolean");
|
||||||
|
|
||||||
|
b.Property<bool>("PortfolioMasonry")
|
||||||
|
.HasColumnType("boolean");
|
||||||
|
|
||||||
|
b.Property<int>("PortfolioMaximumSize")
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
b.Property<string>("PortfolionHeaderColor")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("PortfolionHeaderImageUrl")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<int>("PortfolionHeaderSize")
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
b.Property<string>("PortfolionHeaderText")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<bool>("PortfolionHeaderUseImage")
|
||||||
|
.HasColumnType("boolean");
|
||||||
|
|
||||||
|
b.Property<string>("RequestBackgroundColor")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("RequestButtonBGColor")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("RequestButtonHoverBGColor")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("RequestButtonHoverTextColor")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("RequestButtonTextColor")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("RequestHeaderColor")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("RequestHeaderImageUrl")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<int>("RequestHeaderSize")
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
b.Property<string>("RequestHeaderText")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<bool>("RequestHeaderUseImage")
|
||||||
|
.HasColumnType("boolean");
|
||||||
|
|
||||||
|
b.Property<string>("RequestTermsColor")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<int>("SellerProfileId")
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
b.HasKey("Id");
|
||||||
|
|
||||||
|
b.HasIndex("SellerProfileId")
|
||||||
|
.IsUnique();
|
||||||
|
|
||||||
|
b.ToTable("SellerProfilePageSettings");
|
||||||
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("comissions.app.database.Entities.SellerProfilePortfolioPiece", b =>
|
||||||
|
{
|
||||||
|
b.Property<int>("Id")
|
||||||
|
.ValueGeneratedOnAdd()
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||||
|
|
||||||
|
b.Property<string>("FileReference")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<int>("SellerProfileId")
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
b.Property<int?>("SellerServiceId")
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
b.HasKey("Id");
|
||||||
|
|
||||||
|
b.HasIndex("SellerProfileId");
|
||||||
|
|
||||||
|
b.HasIndex("SellerServiceId");
|
||||||
|
|
||||||
|
b.ToTable("SellerProfilePortfolioPieces");
|
||||||
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("comissions.app.database.Entities.SellerProfileRequest", b =>
|
||||||
|
{
|
||||||
|
b.Property<int>("Id")
|
||||||
|
.ValueGeneratedOnAdd()
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||||
|
|
||||||
|
b.Property<bool>("Accepted")
|
||||||
|
.HasColumnType("boolean");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("AcceptedDate")
|
||||||
|
.HasColumnType("timestamp with time zone");
|
||||||
|
|
||||||
|
b.Property<DateTime>("RequestDate")
|
||||||
|
.HasColumnType("timestamp with time zone");
|
||||||
|
|
||||||
|
b.Property<string>("UserId")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.HasKey("Id");
|
||||||
|
|
||||||
|
b.HasIndex("UserId");
|
||||||
|
|
||||||
|
b.ToTable("SellerProfileRequests");
|
||||||
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("comissions.app.database.Entities.SellerService", b =>
|
||||||
|
{
|
||||||
|
b.Property<int>("Id")
|
||||||
|
.ValueGeneratedOnAdd()
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||||
|
|
||||||
|
b.Property<bool>("Archived")
|
||||||
|
.HasColumnType("boolean");
|
||||||
|
|
||||||
|
b.Property<string>("Description")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("Name")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<double>("Price")
|
||||||
|
.HasColumnType("double precision");
|
||||||
|
|
||||||
|
b.Property<int>("SellerProfileId")
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
b.HasKey("Id");
|
||||||
|
|
||||||
|
b.HasIndex("SellerProfileId");
|
||||||
|
|
||||||
|
b.ToTable("SellerServices");
|
||||||
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("comissions.app.database.Entities.SellerServiceOrder", b =>
|
||||||
|
{
|
||||||
|
b.Property<int>("Id")
|
||||||
|
.ValueGeneratedOnAdd()
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||||
|
|
||||||
|
b.Property<string>("BuyerId")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<DateTime>("CreatedDate")
|
||||||
|
.HasColumnType("timestamp with time zone");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("EndDate")
|
||||||
|
.HasColumnType("timestamp with time zone");
|
||||||
|
|
||||||
|
b.Property<string>("PaymentUrl")
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<double>("Price")
|
||||||
|
.HasColumnType("double precision");
|
||||||
|
|
||||||
|
b.Property<int>("SellerId")
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
b.Property<int>("SellerServiceId")
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
b.Property<int>("Status")
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("TermsAcceptedDate")
|
||||||
|
.HasColumnType("timestamp with time zone");
|
||||||
|
|
||||||
|
b.HasKey("Id");
|
||||||
|
|
||||||
|
b.HasIndex("BuyerId");
|
||||||
|
|
||||||
|
b.HasIndex("SellerId");
|
||||||
|
|
||||||
|
b.HasIndex("SellerServiceId");
|
||||||
|
|
||||||
|
b.ToTable("SellerServiceOrders");
|
||||||
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("comissions.app.database.Entities.SellerServiceOrderReview", b =>
|
||||||
|
{
|
||||||
|
b.Property<int>("Id")
|
||||||
|
.ValueGeneratedOnAdd()
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||||
|
|
||||||
|
b.Property<int>("Rating")
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
b.Property<string>("Review")
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<DateTime>("ReviewDate")
|
||||||
|
.HasColumnType("timestamp with time zone");
|
||||||
|
|
||||||
|
b.Property<string>("ReviewerId")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<int>("SellerServiceId")
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
b.Property<int>("SellerServiceOrderId")
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
b.HasKey("Id");
|
||||||
|
|
||||||
|
b.HasIndex("ReviewerId");
|
||||||
|
|
||||||
|
b.HasIndex("SellerServiceId");
|
||||||
|
|
||||||
|
b.HasIndex("SellerServiceOrderId");
|
||||||
|
|
||||||
|
b.ToTable("SellerServiceOrderReviews");
|
||||||
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("comissions.app.database.Entities.User", b =>
|
||||||
|
{
|
||||||
|
b.Property<string>("Id")
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("BanAdminId")
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<bool>("Banned")
|
||||||
|
.HasColumnType("boolean");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("BannedDate")
|
||||||
|
.HasColumnType("timestamp with time zone");
|
||||||
|
|
||||||
|
b.Property<string>("BannedReason")
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("Biography")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("DisplayName")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("Email")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("SuspendAdminId")
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<bool>("Suspended")
|
||||||
|
.HasColumnType("boolean");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("SuspendedDate")
|
||||||
|
.HasColumnType("timestamp with time zone");
|
||||||
|
|
||||||
|
b.Property<string>("SuspendedReason")
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("UnbanDate")
|
||||||
|
.HasColumnType("timestamp with time zone");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("UnsuspendDate")
|
||||||
|
.HasColumnType("timestamp with time zone");
|
||||||
|
|
||||||
|
b.Property<int?>("UserSellerProfileId")
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
b.HasKey("Id");
|
||||||
|
|
||||||
|
b.ToTable("Users");
|
||||||
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("comissions.app.database.Entities.UserSellerProfile", b =>
|
||||||
|
{
|
||||||
|
b.Property<int>("Id")
|
||||||
|
.ValueGeneratedOnAdd()
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||||
|
|
||||||
|
b.Property<bool>("AgeRestricted")
|
||||||
|
.HasColumnType("boolean");
|
||||||
|
|
||||||
|
b.Property<string>("Description")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("Name")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<bool>("PrepaymentRequired")
|
||||||
|
.HasColumnType("boolean");
|
||||||
|
|
||||||
|
b.Property<string>("RequestGuidelines")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<int>("SellerProfilePageSettingsId")
|
||||||
|
.HasColumnType("integer");
|
||||||
|
|
||||||
|
b.Property<string>("SocialMediaLink1")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("SocialMediaLink2")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("SocialMediaLink3")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("SocialMediaLink4")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("StripeAccountId")
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("SuspendAdminId")
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<bool>("Suspended")
|
||||||
|
.HasColumnType("boolean");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("SuspendedDate")
|
||||||
|
.HasColumnType("timestamp with time zone");
|
||||||
|
|
||||||
|
b.Property<string>("SuspendedReason")
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<DateTime?>("UnsuspendDate")
|
||||||
|
.HasColumnType("timestamp with time zone");
|
||||||
|
|
||||||
|
b.Property<string>("UserId")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.HasKey("Id");
|
||||||
|
|
||||||
|
b.HasIndex("UserId")
|
||||||
|
.IsUnique();
|
||||||
|
|
||||||
|
b.ToTable("UserSellerProfiles");
|
||||||
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("comissions.app.database.Entities.SellerProfilePageSettings", b =>
|
||||||
|
{
|
||||||
|
b.HasOne("comissions.app.database.Entities.UserSellerProfile", "SellerProfile")
|
||||||
|
.WithOne("SellerProfilePageSettings")
|
||||||
|
.HasForeignKey("comissions.app.database.Entities.SellerProfilePageSettings", "SellerProfileId")
|
||||||
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
|
.IsRequired();
|
||||||
|
|
||||||
|
b.Navigation("SellerProfile");
|
||||||
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("comissions.app.database.Entities.SellerProfilePortfolioPiece", b =>
|
||||||
|
{
|
||||||
|
b.HasOne("comissions.app.database.Entities.UserSellerProfile", "SellerProfile")
|
||||||
|
.WithMany("PortfolioPieces")
|
||||||
|
.HasForeignKey("SellerProfileId")
|
||||||
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
|
.IsRequired();
|
||||||
|
|
||||||
|
b.HasOne("comissions.app.database.Entities.SellerService", "SellerService")
|
||||||
|
.WithMany("PortfolioPieces")
|
||||||
|
.HasForeignKey("SellerServiceId");
|
||||||
|
|
||||||
|
b.Navigation("SellerProfile");
|
||||||
|
|
||||||
|
b.Navigation("SellerService");
|
||||||
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("comissions.app.database.Entities.SellerProfileRequest", b =>
|
||||||
|
{
|
||||||
|
b.HasOne("comissions.app.database.Entities.User", "User")
|
||||||
|
.WithMany()
|
||||||
|
.HasForeignKey("UserId")
|
||||||
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
|
.IsRequired();
|
||||||
|
|
||||||
|
b.Navigation("User");
|
||||||
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("comissions.app.database.Entities.SellerService", b =>
|
||||||
|
{
|
||||||
|
b.HasOne("comissions.app.database.Entities.UserSellerProfile", "SellerProfile")
|
||||||
|
.WithMany("SellerServices")
|
||||||
|
.HasForeignKey("SellerProfileId")
|
||||||
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
|
.IsRequired();
|
||||||
|
|
||||||
|
b.Navigation("SellerProfile");
|
||||||
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("comissions.app.database.Entities.SellerServiceOrder", b =>
|
||||||
|
{
|
||||||
|
b.HasOne("comissions.app.database.Entities.User", "Buyer")
|
||||||
|
.WithMany("Orders")
|
||||||
|
.HasForeignKey("BuyerId")
|
||||||
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
|
.IsRequired();
|
||||||
|
|
||||||
|
b.HasOne("comissions.app.database.Entities.UserSellerProfile", "Seller")
|
||||||
|
.WithMany()
|
||||||
|
.HasForeignKey("SellerId")
|
||||||
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
|
.IsRequired();
|
||||||
|
|
||||||
|
b.HasOne("comissions.app.database.Entities.SellerService", "SellerService")
|
||||||
|
.WithMany()
|
||||||
|
.HasForeignKey("SellerServiceId")
|
||||||
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
|
.IsRequired();
|
||||||
|
|
||||||
|
b.Navigation("Buyer");
|
||||||
|
|
||||||
|
b.Navigation("Seller");
|
||||||
|
|
||||||
|
b.Navigation("SellerService");
|
||||||
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("comissions.app.database.Entities.SellerServiceOrderReview", b =>
|
||||||
|
{
|
||||||
|
b.HasOne("comissions.app.database.Entities.User", "Reviewer")
|
||||||
|
.WithMany()
|
||||||
|
.HasForeignKey("ReviewerId")
|
||||||
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
|
.IsRequired();
|
||||||
|
|
||||||
|
b.HasOne("comissions.app.database.Entities.SellerService", "SellerService")
|
||||||
|
.WithMany("Reviews")
|
||||||
|
.HasForeignKey("SellerServiceId")
|
||||||
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
|
.IsRequired();
|
||||||
|
|
||||||
|
b.HasOne("comissions.app.database.Entities.SellerServiceOrder", "SellerServiceOrder")
|
||||||
|
.WithMany("Reviews")
|
||||||
|
.HasForeignKey("SellerServiceOrderId")
|
||||||
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
|
.IsRequired();
|
||||||
|
|
||||||
|
b.Navigation("Reviewer");
|
||||||
|
|
||||||
|
b.Navigation("SellerService");
|
||||||
|
|
||||||
|
b.Navigation("SellerServiceOrder");
|
||||||
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("comissions.app.database.Entities.UserSellerProfile", b =>
|
||||||
|
{
|
||||||
|
b.HasOne("comissions.app.database.Entities.User", "User")
|
||||||
|
.WithOne("UserSellerProfile")
|
||||||
|
.HasForeignKey("comissions.app.database.Entities.UserSellerProfile", "UserId")
|
||||||
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
|
.IsRequired();
|
||||||
|
|
||||||
|
b.Navigation("User");
|
||||||
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("comissions.app.database.Entities.SellerService", b =>
|
||||||
|
{
|
||||||
|
b.Navigation("PortfolioPieces");
|
||||||
|
|
||||||
|
b.Navigation("Reviews");
|
||||||
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("comissions.app.database.Entities.SellerServiceOrder", b =>
|
||||||
|
{
|
||||||
|
b.Navigation("Reviews");
|
||||||
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("comissions.app.database.Entities.User", b =>
|
||||||
|
{
|
||||||
|
b.Navigation("Orders");
|
||||||
|
|
||||||
|
b.Navigation("UserSellerProfile");
|
||||||
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("comissions.app.database.Entities.UserSellerProfile", b =>
|
||||||
|
{
|
||||||
|
b.Navigation("PortfolioPieces");
|
||||||
|
|
||||||
|
b.Navigation("SellerProfilePageSettings")
|
||||||
|
.IsRequired();
|
||||||
|
|
||||||
|
b.Navigation("SellerServices");
|
||||||
|
});
|
||||||
|
#pragma warning restore 612, 618
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,29 @@
|
|||||||
|
using Microsoft.EntityFrameworkCore.Migrations;
|
||||||
|
|
||||||
|
#nullable disable
|
||||||
|
|
||||||
|
namespace comissions.app.api.Migrations
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
public partial class forgotcolumn : Migration
|
||||||
|
{
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Up(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.AddColumn<string>(
|
||||||
|
name: "RequestButtonHoverTextColor",
|
||||||
|
table: "SellerProfilePageSettings",
|
||||||
|
type: "text",
|
||||||
|
nullable: false,
|
||||||
|
defaultValue: "");
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <inheritdoc />
|
||||||
|
protected override void Down(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.DropColumn(
|
||||||
|
name: "RequestButtonHoverTextColor",
|
||||||
|
table: "SellerProfilePageSettings");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -123,6 +123,10 @@ namespace comissions.app.api.Migrations
|
|||||||
.IsRequired()
|
.IsRequired()
|
||||||
.HasColumnType("text");
|
.HasColumnType("text");
|
||||||
|
|
||||||
|
b.Property<string>("RequestButtonHoverTextColor")
|
||||||
|
.IsRequired()
|
||||||
|
.HasColumnType("text");
|
||||||
|
|
||||||
b.Property<string>("RequestButtonTextColor")
|
b.Property<string>("RequestButtonTextColor")
|
||||||
.IsRequired()
|
.IsRequired()
|
||||||
.HasColumnType("text");
|
.HasColumnType("text");
|
||||||
|
@ -0,0 +1,40 @@
|
|||||||
|
namespace comissions.app.api.Models.SellerProfile;
|
||||||
|
|
||||||
|
public class SellerProfilePageSettingsModel
|
||||||
|
{
|
||||||
|
|
||||||
|
public string RequestButtonHoverBGColor { get; set; }
|
||||||
|
public string RequestButtonTextColor { get; set; }
|
||||||
|
public string RequestButtonBGColor { get; set; }
|
||||||
|
public string RequestTermsColor { get; set; }
|
||||||
|
public string RequestBackgroundColor { get; set; }
|
||||||
|
public string RequestHeaderImageUrl { get; set; }
|
||||||
|
public bool RequestHeaderUseImage { get; set; }
|
||||||
|
public int RequestHeaderSize { get; set; }
|
||||||
|
public string RequestHeaderColor { get; set; }
|
||||||
|
public string RequestHeaderText { get; set; }
|
||||||
|
public int PortfolioMaximumSize { get; set; }
|
||||||
|
public bool PortfolioEnabledScrolling { get; set; }
|
||||||
|
public int PortfolioColumns { get; set; }
|
||||||
|
public bool PortfolioMasonry { get; set; }
|
||||||
|
public string PortfolioBackgroundColor { get; set; }
|
||||||
|
public string PortfolionHeaderImageUrl { get; set; }
|
||||||
|
public bool PortfolionHeaderUseImage { get; set; }
|
||||||
|
public int PortfolionHeaderSize { get; set; }
|
||||||
|
public string PortfolionHeaderColor { get; set; }
|
||||||
|
public string PortfolionHeaderText { get; set; }
|
||||||
|
public int DescriptionTextSize { get; set; }
|
||||||
|
public string DescriptionTextColor { get; set; }
|
||||||
|
public string DescriptionBackgroundColor { get; set; }
|
||||||
|
public string DescriptionHeaderImageUrl { get; set; }
|
||||||
|
public bool DescriptionHeaderUseImage { get; set; }
|
||||||
|
public int DescriptionHeaderSize { get; set; }
|
||||||
|
public string DescriptionHeaderColor { get; set; }
|
||||||
|
public string DescriptionHeaderText { get; set; }
|
||||||
|
public string HeaderImageUrl { get; set; }
|
||||||
|
public bool HeaderUseImage { get; set; }
|
||||||
|
public int HeaderTextSize { get; set; }
|
||||||
|
public string HeaderColor { get; set; }
|
||||||
|
public string BackgroundColor { get; set; }
|
||||||
|
public string RequestButtonHoverTextColor { get; set; }
|
||||||
|
}
|
@ -0,0 +1,84 @@
|
|||||||
|
using comissions.app.database.Entities;
|
||||||
|
|
||||||
|
namespace comissions.app.api.Models.SellerProfile;
|
||||||
|
|
||||||
|
public static class SellerProfilePageSettingsModelExtensions
|
||||||
|
{
|
||||||
|
|
||||||
|
public static SellerProfilePageSettingsModel ToModel(this SellerProfilePageSettings sellerProfile)
|
||||||
|
{
|
||||||
|
return new SellerProfilePageSettingsModel()
|
||||||
|
{
|
||||||
|
BackgroundColor = sellerProfile.BackgroundColor,
|
||||||
|
HeaderColor = sellerProfile.HeaderColor,
|
||||||
|
HeaderTextSize = sellerProfile.HeaderTextSize,
|
||||||
|
HeaderUseImage = sellerProfile.HeaderUseImage,
|
||||||
|
HeaderImageUrl = sellerProfile.HeaderImageUrl,
|
||||||
|
DescriptionHeaderColor = sellerProfile.DescriptionHeaderColor,
|
||||||
|
DescriptionHeaderSize = sellerProfile.DescriptionHeaderSize,
|
||||||
|
DescriptionHeaderUseImage = sellerProfile.DescriptionHeaderUseImage,
|
||||||
|
DescriptionHeaderImageUrl = sellerProfile.DescriptionHeaderImageUrl,
|
||||||
|
DescriptionBackgroundColor = sellerProfile.DescriptionBackgroundColor,
|
||||||
|
DescriptionTextColor = sellerProfile.DescriptionTextColor,
|
||||||
|
DescriptionTextSize = sellerProfile.DescriptionTextSize,
|
||||||
|
PortfolionHeaderText = sellerProfile.PortfolionHeaderText,
|
||||||
|
PortfolionHeaderColor = sellerProfile.PortfolionHeaderColor,
|
||||||
|
PortfolionHeaderSize = sellerProfile.PortfolionHeaderSize,
|
||||||
|
PortfolionHeaderUseImage = sellerProfile.PortfolionHeaderUseImage,
|
||||||
|
PortfolionHeaderImageUrl = sellerProfile.PortfolionHeaderImageUrl,
|
||||||
|
PortfolioBackgroundColor = sellerProfile.PortfolioBackgroundColor,
|
||||||
|
PortfolioMasonry = sellerProfile.PortfolioMasonry,
|
||||||
|
PortfolioColumns = sellerProfile.PortfolioColumns,
|
||||||
|
PortfolioEnabledScrolling = sellerProfile.PortfolioEnabledScrolling,
|
||||||
|
PortfolioMaximumSize = sellerProfile.PortfolioMaximumSize,
|
||||||
|
RequestHeaderText = sellerProfile.RequestHeaderText,
|
||||||
|
RequestHeaderColor = sellerProfile.RequestHeaderColor,
|
||||||
|
RequestHeaderSize = sellerProfile.RequestHeaderSize,
|
||||||
|
RequestHeaderUseImage = sellerProfile.RequestHeaderUseImage,
|
||||||
|
RequestHeaderImageUrl = sellerProfile.RequestHeaderImageUrl,
|
||||||
|
RequestBackgroundColor = sellerProfile.RequestBackgroundColor,
|
||||||
|
RequestTermsColor = sellerProfile.RequestTermsColor,
|
||||||
|
RequestButtonBGColor = sellerProfile.RequestButtonBGColor,
|
||||||
|
RequestButtonTextColor = sellerProfile.RequestButtonTextColor,
|
||||||
|
RequestButtonHoverBGColor = sellerProfile.RequestButtonHoverBGColor,
|
||||||
|
RequestButtonHoverTextColor = sellerProfile.RequestButtonHoverTextColor
|
||||||
|
};
|
||||||
|
}
|
||||||
|
public static SellerProfilePageSettings ToModel(this SellerProfilePageSettingsModel sellerProfile, SellerProfilePageSettings existing)
|
||||||
|
{
|
||||||
|
existing.BackgroundColor = sellerProfile.BackgroundColor;
|
||||||
|
existing.HeaderColor = sellerProfile.HeaderColor;
|
||||||
|
existing.HeaderTextSize = sellerProfile.HeaderTextSize;
|
||||||
|
existing.HeaderUseImage = sellerProfile.HeaderUseImage;
|
||||||
|
existing.HeaderImageUrl = sellerProfile.HeaderImageUrl;
|
||||||
|
existing.DescriptionHeaderColor = sellerProfile.DescriptionHeaderColor;
|
||||||
|
existing.DescriptionHeaderSize = sellerProfile.DescriptionHeaderSize;
|
||||||
|
existing.DescriptionHeaderUseImage = sellerProfile.DescriptionHeaderUseImage;
|
||||||
|
existing.DescriptionHeaderImageUrl = sellerProfile.DescriptionHeaderImageUrl;
|
||||||
|
existing.DescriptionBackgroundColor = sellerProfile.DescriptionBackgroundColor;
|
||||||
|
existing.DescriptionTextColor = sellerProfile.DescriptionTextColor;
|
||||||
|
existing.DescriptionTextSize = sellerProfile.DescriptionTextSize;
|
||||||
|
existing.PortfolionHeaderText = sellerProfile.PortfolionHeaderText;
|
||||||
|
existing.PortfolionHeaderColor = sellerProfile.PortfolionHeaderColor;
|
||||||
|
existing.PortfolionHeaderSize = sellerProfile.PortfolionHeaderSize;
|
||||||
|
existing.PortfolionHeaderUseImage = sellerProfile.PortfolionHeaderUseImage;
|
||||||
|
existing.PortfolionHeaderImageUrl = sellerProfile.PortfolionHeaderImageUrl;
|
||||||
|
existing.PortfolioBackgroundColor = sellerProfile.PortfolioBackgroundColor;
|
||||||
|
existing.PortfolioMasonry = sellerProfile.PortfolioMasonry;
|
||||||
|
existing.PortfolioColumns = sellerProfile.PortfolioColumns;
|
||||||
|
existing.PortfolioEnabledScrolling = sellerProfile.PortfolioEnabledScrolling;
|
||||||
|
existing.PortfolioMaximumSize = sellerProfile.PortfolioMaximumSize;
|
||||||
|
existing.RequestHeaderText = sellerProfile.RequestHeaderText;
|
||||||
|
existing.RequestHeaderColor = sellerProfile.RequestHeaderColor;
|
||||||
|
existing.RequestHeaderSize = sellerProfile.RequestHeaderSize;
|
||||||
|
existing.RequestHeaderUseImage = sellerProfile.RequestHeaderUseImage;
|
||||||
|
existing.RequestHeaderImageUrl = sellerProfile.RequestHeaderImageUrl;
|
||||||
|
existing.RequestBackgroundColor = sellerProfile.RequestBackgroundColor;
|
||||||
|
existing.RequestTermsColor = sellerProfile.RequestTermsColor;
|
||||||
|
existing.RequestButtonBGColor = sellerProfile.RequestButtonBGColor;
|
||||||
|
existing.RequestButtonTextColor = sellerProfile.RequestButtonTextColor;
|
||||||
|
existing.RequestButtonHoverBGColor = sellerProfile.RequestButtonHoverBGColor;
|
||||||
|
existing.RequestButtonHoverTextColor = sellerProfile.RequestButtonHoverTextColor;
|
||||||
|
return existing;
|
||||||
|
}
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user