Not working createServiceProvider
This commit is contained in:
parent
cf117ba079
commit
61f6a49836
|
|
@ -4,6 +4,8 @@ using AyCode.Database.DbSets.Messages;
|
||||||
using AyCode.Database.DbSets.Users;
|
using AyCode.Database.DbSets.Users;
|
||||||
using AyCode.Models.Enums;
|
using AyCode.Models.Enums;
|
||||||
using Microsoft.EntityFrameworkCore;
|
using Microsoft.EntityFrameworkCore;
|
||||||
|
using Microsoft.Extensions.DependencyInjection;
|
||||||
|
using System;
|
||||||
using TIAM.Core;
|
using TIAM.Core;
|
||||||
//using TIAM.Database.DataLayers.ServiceProviders;
|
//using TIAM.Database.DataLayers.ServiceProviders;
|
||||||
using TIAM.Database.DbContexts.Admins;
|
using TIAM.Database.DbContexts.Admins;
|
||||||
|
|
@ -251,7 +253,8 @@ namespace TIAM.Database.DataLayers.Admins
|
||||||
#region ServiceProviders
|
#region ServiceProviders
|
||||||
|
|
||||||
//14. (IserviceProviderDataService) Update service provider
|
//14. (IserviceProviderDataService) Update service provider
|
||||||
public Task<Company> UpdateServiceProviderAsync(Company company) => TransactionAsync(ctx => ctx.UpdateServiceProvider(company));
|
public Task<bool> UpdateServiceProviderAsync(Company company) => TransactionAsync(ctx => ctx.UpdateServiceProvider(company));
|
||||||
|
|
||||||
|
|
||||||
//13. (IserviceProviderDataService) delete service provider
|
//13. (IserviceProviderDataService) delete service provider
|
||||||
public Task<bool> DeleteServiceProviderAsync(Guid id) => TransactionAsync(ctx => ctx.RemoveServiceProvider(id));
|
public Task<bool> DeleteServiceProviderAsync(Guid id) => TransactionAsync(ctx => ctx.RemoveServiceProvider(id));
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,12 @@
|
||||||
using TIAM.Database.DbSets.Permissions;
|
using Microsoft.EntityFrameworkCore;
|
||||||
|
using TIAM.Database.DbSets.Permissions;
|
||||||
using TIAM.Database.DbSets.Products;
|
using TIAM.Database.DbSets.Products;
|
||||||
|
using TIAM.Database.DbSets.Transfers;
|
||||||
using TIAM.Database.DbSets.Users;
|
using TIAM.Database.DbSets.Users;
|
||||||
using TIAM.Entities.Permissions;
|
using TIAM.Entities.Permissions;
|
||||||
using TIAM.Entities.Products;
|
using TIAM.Entities.Products;
|
||||||
using TIAM.Entities.ServiceProviders;
|
using TIAM.Entities.ServiceProviders;
|
||||||
|
using TIAM.Entities.Transfers;
|
||||||
using TIAM.Entities.Users;
|
using TIAM.Entities.Users;
|
||||||
|
|
||||||
namespace TIAM.Database.DbContexts.Admins
|
namespace TIAM.Database.DbContexts.Admins
|
||||||
|
|
@ -123,16 +126,8 @@ namespace TIAM.Database.DbContexts.Admins
|
||||||
return serviceProvider;
|
return serviceProvider;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Company UpdateServiceProvider(this IAdminDbContext ctx, Company serviceProvider)
|
|
||||||
{
|
|
||||||
if (serviceProvider == null) return null;
|
|
||||||
|
|
||||||
var existingServiceProvider = ctx.ServiceProviders.FirstOrDefault(u => u.Id == serviceProvider.Id);
|
public static bool UpdateServiceProvider(this IAdminDbContext ctx, Company serviceProvider)
|
||||||
if (existingServiceProvider == null) return null;
|
=> ctx.ServiceProviders.Update(serviceProvider).State == EntityState.Modified;
|
||||||
|
|
||||||
existingServiceProvider.Name = serviceProvider.Name;
|
|
||||||
existingServiceProvider.OwnerId = serviceProvider.OwnerId;
|
|
||||||
return existingServiceProvider;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,7 @@
|
||||||
using Microsoft.EntityFrameworkCore;
|
using Microsoft.EntityFrameworkCore;
|
||||||
|
using TIAM.Database.DbSets.Transfers;
|
||||||
using TIAM.Entities.ServiceProviders;
|
using TIAM.Entities.ServiceProviders;
|
||||||
|
using TIAM.Entities.Transfers;
|
||||||
|
|
||||||
|
|
||||||
namespace TIAM.Database.DbSets.ServiceProvider;
|
namespace TIAM.Database.DbSets.ServiceProvider;
|
||||||
|
|
|
||||||
|
|
@ -15,5 +15,6 @@ public class SignalRTags : AcSignalRTags
|
||||||
public static readonly int GetCompaniesAsync = 8;
|
public static readonly int GetCompaniesAsync = 8;
|
||||||
|
|
||||||
public static readonly int UpdateCompanyAsync = 9;
|
public static readonly int UpdateCompanyAsync = 9;
|
||||||
|
public static readonly int CreateCompanyAsync = 10;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -277,12 +277,12 @@
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
var transferEditModel = (Company)e.EditModel; //TODO not valid cast
|
var companyEditModel = (Company)e.EditModel; //TODO not valid cast
|
||||||
transferEditModel.Id = Guid.NewGuid();
|
companyEditModel.Id = Guid.NewGuid();
|
||||||
transferEditModel.AffiliateId = Guid.NewGuid();
|
companyEditModel.AffiliateId = Guid.NewGuid();
|
||||||
transferEditModel.Name = "Company name";
|
companyEditModel.Name = "Company name";
|
||||||
transferEditModel.OwnerId = Guid.Empty;
|
companyEditModel.OwnerId = Guid.Empty;
|
||||||
transferEditModel.ProfileId = Guid.NewGuid();
|
companyEditModel.ProfileId = Guid.NewGuid();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -294,7 +294,7 @@
|
||||||
{
|
{
|
||||||
//add new orderData to orderData array
|
//add new orderData to orderData array
|
||||||
_logger.Info("New orderData added");
|
_logger.Info("New orderData added");
|
||||||
//await transferDataService.CreateTransfer((TransferWizardModel)e.EditModel);
|
resultCompany = await serviceProviderDataService.CreateServiceProviderAsync((Company)e.EditModel);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
@ -303,17 +303,6 @@
|
||||||
resultCompany = await serviceProviderDataService.UpdateServiceProviderAsync((Company)e.EditModel);
|
resultCompany = await serviceProviderDataService.UpdateServiceProviderAsync((Company)e.EditModel);
|
||||||
|
|
||||||
}
|
}
|
||||||
//get transfer from TransferData by Id
|
|
||||||
|
|
||||||
// foreach (var transferToModify in (List<Transfer>)TransferData)
|
|
||||||
// {
|
|
||||||
// myModel = (Transfer)e.EditModel;
|
|
||||||
|
|
||||||
// if (transferToModify.Id == myModel.Id)
|
|
||||||
// {
|
|
||||||
// //transferToModify.Driver = myModel.Driver;
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
|
|
||||||
if (resultCompany!=null)
|
if (resultCompany!=null)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -11,6 +11,9 @@ using TIAM.Entities.Users;
|
||||||
using TIAMWebApp.Shared.Application.Models;
|
using TIAMWebApp.Shared.Application.Models;
|
||||||
using Product = TIAM.Entities.Products.Product;
|
using Product = TIAM.Entities.Products.Product;
|
||||||
using TIAM.Entities.Transfers;
|
using TIAM.Entities.Transfers;
|
||||||
|
using System.Text.Json.Nodes;
|
||||||
|
using System.Text.Json;
|
||||||
|
using Newtonsoft.Json.Linq;
|
||||||
|
|
||||||
namespace TIAMWebApp.Server.Controllers
|
namespace TIAMWebApp.Server.Controllers
|
||||||
{
|
{
|
||||||
|
|
@ -30,36 +33,43 @@ namespace TIAMWebApp.Server.Controllers
|
||||||
}
|
}
|
||||||
|
|
||||||
//15.
|
//15.
|
||||||
|
[AllowAnonymous]
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
[Route(APIUrls.CreateServiceProviderRouteName)]
|
[Route(APIUrls.CreateServiceProviderRouteName)]
|
||||||
[Tags("In-Progress", "ServiceProvider")]
|
[Tags("In-Progress", "ServiceProvider")]
|
||||||
[EndpointSummary("Create assigned user")]
|
[EndpointSummary("Create service provider")]
|
||||||
public async Task<IActionResult> CreateServiceProvider([FromBody] ServiceProviderModel serializedServiceProviderModel)
|
public async Task<IActionResult> CreateServiceProvider([FromBody] ServiceProviderModel serializedServiceProviderModel)
|
||||||
{
|
{
|
||||||
GlobalLogger.Info(@"CreateUser called");
|
GlobalLogger.Info(@"CreateUser called");
|
||||||
|
//if (serializedServiceProviderModel.GetArrayLength() == 0)
|
||||||
if (serializedServiceProviderModel == null)
|
if (serializedServiceProviderModel == null)
|
||||||
{
|
{
|
||||||
return BadRequest("SerializedLoginModel is required");
|
return BadRequest("SerializedLoginModel is required");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
//ServiceProviderModel? serviceProvider = JObject.Parse(serializedServiceProviderModel.GetRawText()).ToObject<ServiceProviderModel>();
|
|
||||||
|
//Company? serviceProvider = JObject.Parse(serializedServiceProviderModel.GetRawText()).ToObject<Company>();
|
||||||
var serviceProvider = serializedServiceProviderModel;
|
var serviceProvider = serializedServiceProviderModel;
|
||||||
|
|
||||||
|
|
||||||
if (serviceProvider != null)
|
if (serviceProvider != null)
|
||||||
{
|
{
|
||||||
//add userModel to users array
|
|
||||||
//Array.Resize(ref users, users.Length + 1);
|
|
||||||
//users[users.Length - 1] = new UserModel(user.Email, user.PhoneNumber, user.Password);
|
|
||||||
|
|
||||||
var id = Guid.NewGuid();
|
var id = Guid.NewGuid();
|
||||||
var name = serializedServiceProviderModel.Name;
|
var name = serviceProvider.Name;
|
||||||
var ownerId = serializedServiceProviderModel.OwnerId;
|
var commissionRate = serviceProvider.CommissionPercent;
|
||||||
|
Guid ownerId;
|
||||||
|
if(serviceProvider.OwnerId == Guid.Empty)
|
||||||
|
{
|
||||||
|
//no owner set yet
|
||||||
|
ownerId = serviceProvider.OwnerId;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ownerId = serviceProvider.OwnerId;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (name is null)
|
||||||
|
|
||||||
if (name is null || ownerId == Guid.Empty)
|
|
||||||
{
|
{
|
||||||
return BadRequest("Invalid request");
|
return BadRequest("Invalid request");
|
||||||
}
|
}
|
||||||
|
|
@ -67,12 +77,27 @@ namespace TIAMWebApp.Server.Controllers
|
||||||
{
|
{
|
||||||
|
|
||||||
GlobalLogger.Info($@"ServiceProvider to be created: {id}, {name}, {ownerId}");
|
GlobalLogger.Info($@"ServiceProvider to be created: {id}, {name}, {ownerId}");
|
||||||
|
Company toCreate = new Company(id, name, ownerId, Guid.NewGuid());
|
||||||
|
toCreate.CommissionPercent = commissionRate;
|
||||||
|
var result = await _adminDal.CreateServiceProviderAsync(toCreate);
|
||||||
|
if (!result)
|
||||||
|
{
|
||||||
|
serviceProvider = null;
|
||||||
|
return BadRequest(result);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
|
||||||
await _adminDal.CreateServiceProviderAsync(new Company(id, name, ownerId, Guid.NewGuid()));
|
return Ok(toCreate);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return Ok("yes");
|
else {
|
||||||
|
|
||||||
|
return BadRequest();
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -101,10 +126,17 @@ namespace TIAMWebApp.Server.Controllers
|
||||||
[Route(APIUrls.UpdateServiceProviderRouteName)]
|
[Route(APIUrls.UpdateServiceProviderRouteName)]
|
||||||
public async Task<Company> UpdateServiceProvider(Company companyToModify)
|
public async Task<Company> UpdateServiceProvider(Company companyToModify)
|
||||||
{
|
{
|
||||||
GlobalLogger.Info($"UpdateServiceProvider called! + {Request.ReadFormAsync()}");
|
GlobalLogger.Info($"UpdateServiceProvider called! + {companyToModify.Id}");
|
||||||
var result = await _adminDal.UpdateServiceProviderAsync(companyToModify);
|
var result = await _adminDal.UpdateServiceProviderAsync(companyToModify);
|
||||||
|
if(result)
|
||||||
|
{
|
||||||
|
return companyToModify;
|
||||||
|
|
||||||
return result;
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//17.
|
//17.
|
||||||
|
|
|
||||||
|
|
@ -293,6 +293,7 @@ namespace TIAMWebApp.Server.Controllers
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
[AllowAnonymous]
|
[AllowAnonymous]
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
[Route(APIUrls.CreateTransfersRouteName)]
|
[Route(APIUrls.CreateTransfersRouteName)]
|
||||||
|
|
@ -405,7 +406,7 @@ namespace TIAMWebApp.Server.Controllers
|
||||||
[Route(APIUrls.UpdateTransferRouteName)]
|
[Route(APIUrls.UpdateTransferRouteName)]
|
||||||
public async Task<Transfer> UpdateTransfer(Transfer transferToModify)
|
public async Task<Transfer> UpdateTransfer(Transfer transferToModify)
|
||||||
{
|
{
|
||||||
_logger.Info($"UpdateTransfer called! + {Request.ReadFormAsync()}");
|
_logger.Info($"UpdateTransfer called! + {transferToModify.Id}");
|
||||||
await _adminDal.UpdateTransferAsync(transferToModify);
|
await _adminDal.UpdateTransferAsync(transferToModify);
|
||||||
|
|
||||||
return transferToModify;
|
return transferToModify;
|
||||||
|
|
|
||||||
|
|
@ -88,11 +88,18 @@ public class DevAdminSignalRHub(AdminDal adminDal, ServiceProviderAPIController
|
||||||
}
|
}
|
||||||
else if (messageTag == SignalRTags.UpdateCompanyAsync)
|
else if (messageTag == SignalRTags.UpdateCompanyAsync)
|
||||||
{
|
{
|
||||||
var company = message!.MessagePackTo<SignalPostJsonDataMessage>().PostData.JsonTo<Company>()!;
|
var company = message!.MessagePackTo<SignalPostJsonDataMessage<Company>>().PostData;
|
||||||
|
|
||||||
await serviceProviderAPIController.UpdateServiceProvider(company);
|
await serviceProviderAPIController.UpdateServiceProvider(company);
|
||||||
await ResponseToCaller(messageTag, new SignalResponseMessage<string>(SignalResponseStatus.Success, company.ToJson()), requestId);
|
await ResponseToCaller(messageTag, new SignalResponseMessage<string>(SignalResponseStatus.Success, company.ToJson()), requestId);
|
||||||
}
|
}
|
||||||
|
else if (messageTag == SignalRTags.CreateCompanyAsync)
|
||||||
|
{
|
||||||
|
//var company = message!.MessagePackTo<SignalPostJsonDataMessage<Company>>().PostData;
|
||||||
|
|
||||||
|
//await serviceProviderAPIController.CreateServiceProvider(company);
|
||||||
|
//await ResponseToCaller(messageTag, new SignalResponseMessage<string>(SignalResponseStatus.Success, company.ToJson()), requestId);
|
||||||
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,7 @@ namespace TIAMWebApp.Shared.Application.Interfaces
|
||||||
public Task<Company> UpdateServiceProviderAsync(Company serviceProvider);
|
public Task<Company> UpdateServiceProviderAsync(Company serviceProvider);
|
||||||
|
|
||||||
//15. Create service provider
|
//15. Create service provider
|
||||||
public Task<bool> CreateServiceProviderAsync(Company serviceProvider);
|
public Task<Company> CreateServiceProviderAsync(Company serviceProvider);
|
||||||
|
|
||||||
//16. (IServiceProviderDataService) get all service providers
|
//16. (IServiceProviderDataService) get all service providers
|
||||||
public Task<List<Company>> GetServiceProvidersAsync();
|
public Task<List<Company>> GetServiceProvidersAsync();
|
||||||
|
|
|
||||||
|
|
@ -102,7 +102,7 @@ namespace TIAMWebApp.Shared.Application.Models
|
||||||
public const string UpdateTransferDestination = TransferDataAPI + UpdateTransferDestinationRouteName;
|
public const string UpdateTransferDestination = TransferDataAPI + UpdateTransferDestinationRouteName;
|
||||||
|
|
||||||
//serviceprovider
|
//serviceprovider
|
||||||
public const string CreateServiceProviderRouteName = "CreateServiceProvider";
|
public const string CreateServiceProviderRouteName = "CreateServiceProvider/";
|
||||||
public const string CreateServiceProvider = ServiceProviderAPI+CreateServiceProviderRouteName;
|
public const string CreateServiceProvider = ServiceProviderAPI+CreateServiceProviderRouteName;
|
||||||
|
|
||||||
public const string GetServiceProviderByIdRouteName = "GetServiceProviderById";
|
public const string GetServiceProviderByIdRouteName = "GetServiceProviderById";
|
||||||
|
|
|
||||||
|
|
@ -11,12 +11,14 @@ namespace TIAMWebApp.Shared.Application.Models
|
||||||
public Guid Id { get; set; }
|
public Guid Id { get; set; }
|
||||||
public string? Name { get; set; }
|
public string? Name { get; set; }
|
||||||
public Guid OwnerId { get; set; }
|
public Guid OwnerId { get; set; }
|
||||||
|
public int CommissionPercent { get; set; }
|
||||||
public ServiceProviderModel() { }
|
public ServiceProviderModel() { }
|
||||||
public ServiceProviderModel(Guid id, string name, Guid ownerId)
|
public ServiceProviderModel(Guid id, string name, Guid ownerId, int commissionPercent)
|
||||||
{
|
{
|
||||||
Id = id;
|
Id = id;
|
||||||
Name = name;
|
Name = name;
|
||||||
OwnerId = ownerId;
|
OwnerId = ownerId;
|
||||||
|
CommissionPercent = commissionPercent;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -53,9 +53,28 @@ namespace TIAMWebApp.Shared.Application.Services
|
||||||
}
|
}
|
||||||
|
|
||||||
//15.
|
//15.
|
||||||
public Task<bool> CreateServiceProviderAsync(Company serviceProvider)
|
public async Task<Company> CreateServiceProviderAsync(Company serviceProvider)
|
||||||
{
|
{
|
||||||
throw new NotImplementedException();
|
var url = $"{Setting.ApiBaseUrl}/{APIUrls.CreateServiceProvider}";
|
||||||
|
var response = await http.PostAsJsonAsync(url, serviceProvider);
|
||||||
|
if (response != null)
|
||||||
|
{
|
||||||
|
var resultCompany = await response.Content.ReadFromJsonAsync(typeof(Company));
|
||||||
|
if(resultCompany != null)
|
||||||
|
{
|
||||||
|
|
||||||
|
return (resultCompany as Company)!;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//21.
|
//21.
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue