GetProductsJsonByServiceProviderId fixes, improvements...
This commit is contained in:
parent
0bee047217
commit
eccecc65e2
|
|
@ -61,7 +61,7 @@ namespace TIAM.Database.Test
|
|||
public Product GetProductById_ReturnsProduct_WhenProductExists(string productIdString)
|
||||
{
|
||||
var productId = Guid.Parse(productIdString);
|
||||
var product = Dal.GetProductById(productId);
|
||||
var product = Dal.GetProductById(productId, true);
|
||||
|
||||
Assert.IsNotNull(product, "Product is null");
|
||||
Assert.IsNotNull(product.Profile);
|
||||
|
|
@ -70,22 +70,27 @@ namespace TIAM.Database.Test
|
|||
}
|
||||
|
||||
[DataTestMethod]
|
||||
public void GetProducts_ReturnProducts_WhenProductsExist()
|
||||
public void GetProducts_ReturnProductsJson_WhenProductsExist()
|
||||
{
|
||||
var products = JsonConvert.DeserializeObject<IEnumerable<Product>>(Dal.GetProducts());
|
||||
var products = JsonConvert.DeserializeObject<List<Product>>(Dal.GetProductsJson(false));
|
||||
|
||||
Assert.IsNotNull(products, "Products is null");
|
||||
Assert.IsTrue(products.Count() > 0, "No products found");
|
||||
Assert.IsTrue(products.Count > 0, "No products found");
|
||||
|
||||
Assert.IsNotNull(products[0].ServiceProvider, "ServiceProvider is null");
|
||||
|
||||
}
|
||||
|
||||
[DataTestMethod]
|
||||
[DataRow("3587F169-683C-4EEE-BCB5-E8D57F8C6DCE")]
|
||||
public void GetProductsByServiceProviderId_ReturnProducts_WhenProductsExist(string serviceProviderId)
|
||||
public void GetProductsByServiceProviderId_ReturnProductsJson_WhenProductsExist(string serviceProviderId)
|
||||
{
|
||||
var products = JsonConvert.DeserializeObject<IEnumerable<Product>>(Dal.GetProductsByServiceProviderId(Guid.Parse(serviceProviderId)));
|
||||
Assert.IsNotNull(products, "Products is null");
|
||||
Assert.IsTrue(products.Count() > 0, "No products found");
|
||||
var products = JsonConvert.DeserializeObject<List<Product>>(Dal.GetProductsJsonByServiceProviderId(Guid.Parse(serviceProviderId), true));
|
||||
|
||||
Assert.IsNotNull(products, "Products is null");
|
||||
Assert.IsTrue(products.Count > 0, "No products found");
|
||||
|
||||
Assert.IsNotNull(products[0].ServiceProvider, "ServiceProvider is null");
|
||||
}
|
||||
|
||||
[DataTestMethod]
|
||||
|
|
|
|||
|
|
@ -1,6 +1,8 @@
|
|||
using AyCode.Database.DbSets.Users;
|
||||
using System.Security.Cryptography.X509Certificates;
|
||||
using AyCode.Database.DbSets.Users;
|
||||
using AyCode.Models.Enums;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using TIAM.Core;
|
||||
//using TIAM.Database.DataLayers.ServiceProviders;
|
||||
using TIAM.Database.DbContexts.Admins;
|
||||
|
|
@ -49,9 +51,11 @@ namespace TIAM.Database.DataLayers.Admins
|
|||
public string? GetUserJsonById(Guid userId) => Session(ctx => ctx.GetUserById(userId)?.ToJson());
|
||||
public string GetUsersJson() => Session(ctx => ctx.Users.ToJson());
|
||||
|
||||
public Product? GetProductById(Guid contextId) => Session(ctx => ctx.GetProductById(contextId));
|
||||
public string GetProducts() => Session(ctx => ctx.Products.ToJson());
|
||||
public string GetProductsByServiceProviderId(Guid serviceProviderId) => Session(ctx => ctx.Products.Where(x => x.ServiceProviderId == serviceProviderId).ToJson());
|
||||
public Product? GetProductById(Guid contextId, bool includeUsers = true) => Session(ctx => ctx.GetProductById(contextId, includeUsers));
|
||||
|
||||
public string GetProductsJson(bool includeUsers = true) => Session(ctx => ctx.ProductsWithUserRelations(includeUsers).ToJson());
|
||||
public List<Product> GetProductsByServiceProviderId(Guid serviceProviderId, bool includeUsers = true) => Session(ctx => ctx.GetProductsByServiceProviderId(serviceProviderId, includeUsers).ToList());
|
||||
public string GetProductsJsonByServiceProviderId(Guid serviceProviderId, bool includeUsers = true) => Session(ctx => ctx.GetProductsByServiceProviderId(serviceProviderId, includeUsers).ToJson());
|
||||
public Task<bool> AddProduct(Product product) => TransactionAsync(ctx => ctx.AddProduct(product) && ctx.SaveChanges() > 0);
|
||||
|
||||
public Task<bool> UpdateProduct(Product product) => TransactionAsync(ctx => ctx.UpdateProduct(product) && ctx.SaveChanges() > 0);
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using TIAM.Entities.Products;
|
||||
|
||||
namespace TIAM.Database.DbSets.Products;
|
||||
|
|
@ -27,4 +28,8 @@ public static class ProductDbSetExtensins
|
|||
|
||||
public static Product? GetProductById(this IProductDbSet ctx, Guid productId, bool includeUsers = true)
|
||||
=> ctx.ProductsWithUserRelations(includeUsers).FirstOrDefault(x => x.Id == productId);
|
||||
|
||||
public static IQueryable<Product> GetProductsByServiceProviderId(this IProductDbSet ctx, Guid serviceProviderId, bool includeUsers = true)
|
||||
=> ctx.ProductsWithUserRelations(includeUsers).Where(x => x.ServiceProviderId == serviceProviderId);
|
||||
|
||||
}
|
||||
|
|
@ -227,7 +227,7 @@ namespace TIAMWebApp.Server.Controllers
|
|||
}
|
||||
else
|
||||
{
|
||||
var products = _adminDal.GetProductsByServiceProviderId(serviceProviderId);
|
||||
var products = _adminDal.GetProductsJsonByServiceProviderId(serviceProviderId);
|
||||
if (products != null)
|
||||
{
|
||||
return Ok(products);
|
||||
|
|
|
|||
Loading…
Reference in New Issue