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.Models.Enums;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using System;
|
||||
using TIAM.Core;
|
||||
//using TIAM.Database.DataLayers.ServiceProviders;
|
||||
using TIAM.Database.DbContexts.Admins;
|
||||
|
|
@ -251,7 +253,8 @@ namespace TIAM.Database.DataLayers.Admins
|
|||
#region ServiceProviders
|
||||
|
||||
//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
|
||||
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.Transfers;
|
||||
using TIAM.Database.DbSets.Users;
|
||||
using TIAM.Entities.Permissions;
|
||||
using TIAM.Entities.Products;
|
||||
using TIAM.Entities.ServiceProviders;
|
||||
using TIAM.Entities.Transfers;
|
||||
using TIAM.Entities.Users;
|
||||
|
||||
namespace TIAM.Database.DbContexts.Admins
|
||||
|
|
@ -123,16 +126,8 @@ namespace TIAM.Database.DbContexts.Admins
|
|||
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);
|
||||
if (existingServiceProvider == null) return null;
|
||||
|
||||
existingServiceProvider.Name = serviceProvider.Name;
|
||||
existingServiceProvider.OwnerId = serviceProvider.OwnerId;
|
||||
return existingServiceProvider;
|
||||
}
|
||||
public static bool UpdateServiceProvider(this IAdminDbContext ctx, Company serviceProvider)
|
||||
=> ctx.ServiceProviders.Update(serviceProvider).State == EntityState.Modified;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,7 @@
|
|||
using Microsoft.EntityFrameworkCore;
|
||||
using TIAM.Database.DbSets.Transfers;
|
||||
using TIAM.Entities.ServiceProviders;
|
||||
using TIAM.Entities.Transfers;
|
||||
|
||||
|
||||
namespace TIAM.Database.DbSets.ServiceProvider;
|
||||
|
|
|
|||
|
|
@ -15,5 +15,6 @@ public class SignalRTags : AcSignalRTags
|
|||
public static readonly int GetCompaniesAsync = 8;
|
||||
|
||||
public static readonly int UpdateCompanyAsync = 9;
|
||||
public static readonly int CreateCompanyAsync = 10;
|
||||
|
||||
}
|
||||
|
|
@ -277,12 +277,12 @@
|
|||
}
|
||||
else
|
||||
{
|
||||
var transferEditModel = (Company)e.EditModel; //TODO not valid cast
|
||||
transferEditModel.Id = Guid.NewGuid();
|
||||
transferEditModel.AffiliateId = Guid.NewGuid();
|
||||
transferEditModel.Name = "Company name";
|
||||
transferEditModel.OwnerId = Guid.Empty;
|
||||
transferEditModel.ProfileId = Guid.NewGuid();
|
||||
var companyEditModel = (Company)e.EditModel; //TODO not valid cast
|
||||
companyEditModel.Id = Guid.NewGuid();
|
||||
companyEditModel.AffiliateId = Guid.NewGuid();
|
||||
companyEditModel.Name = "Company name";
|
||||
companyEditModel.OwnerId = Guid.Empty;
|
||||
companyEditModel.ProfileId = Guid.NewGuid();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -294,7 +294,7 @@
|
|||
{
|
||||
//add new orderData to orderData array
|
||||
_logger.Info("New orderData added");
|
||||
//await transferDataService.CreateTransfer((TransferWizardModel)e.EditModel);
|
||||
resultCompany = await serviceProviderDataService.CreateServiceProviderAsync((Company)e.EditModel);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
@ -302,18 +302,7 @@
|
|||
|
||||
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)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -472,7 +472,7 @@
|
|||
|
||||
void ColumnChooserButton_Click()
|
||||
{
|
||||
Grid2.ShowColumnChooser();
|
||||
Grid2.ShowColumnChooser();
|
||||
}
|
||||
|
||||
IGrid Grid2 { get; set; }
|
||||
|
|
|
|||
|
|
@ -11,6 +11,9 @@ using TIAM.Entities.Users;
|
|||
using TIAMWebApp.Shared.Application.Models;
|
||||
using Product = TIAM.Entities.Products.Product;
|
||||
using TIAM.Entities.Transfers;
|
||||
using System.Text.Json.Nodes;
|
||||
using System.Text.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
|
||||
namespace TIAMWebApp.Server.Controllers
|
||||
{
|
||||
|
|
@ -30,36 +33,43 @@ namespace TIAMWebApp.Server.Controllers
|
|||
}
|
||||
|
||||
//15.
|
||||
[AllowAnonymous]
|
||||
[HttpPost]
|
||||
[Route(APIUrls.CreateServiceProviderRouteName)]
|
||||
[Tags("In-Progress", "ServiceProvider")]
|
||||
[EndpointSummary("Create assigned user")]
|
||||
[EndpointSummary("Create service provider")]
|
||||
public async Task<IActionResult> CreateServiceProvider([FromBody] ServiceProviderModel serializedServiceProviderModel)
|
||||
{
|
||||
GlobalLogger.Info(@"CreateUser called");
|
||||
//if (serializedServiceProviderModel.GetArrayLength() == 0)
|
||||
if (serializedServiceProviderModel == null)
|
||||
{
|
||||
return BadRequest("SerializedLoginModel is required");
|
||||
}
|
||||
else
|
||||
{
|
||||
//ServiceProviderModel? serviceProvider = JObject.Parse(serializedServiceProviderModel.GetRawText()).ToObject<ServiceProviderModel>();
|
||||
|
||||
//Company? serviceProvider = JObject.Parse(serializedServiceProviderModel.GetRawText()).ToObject<Company>();
|
||||
var serviceProvider = serializedServiceProviderModel;
|
||||
|
||||
|
||||
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 name = serializedServiceProviderModel.Name;
|
||||
var ownerId = serializedServiceProviderModel.OwnerId;
|
||||
var name = serviceProvider.Name;
|
||||
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 || ownerId == Guid.Empty)
|
||||
if (name is null)
|
||||
{
|
||||
return BadRequest("Invalid request");
|
||||
}
|
||||
|
|
@ -67,12 +77,27 @@ namespace TIAMWebApp.Server.Controllers
|
|||
{
|
||||
|
||||
GlobalLogger.Info($@"ServiceProvider to be created: {id}, {name}, {ownerId}");
|
||||
|
||||
await _adminDal.CreateServiceProviderAsync(new Company(id, name, ownerId, Guid.NewGuid()));
|
||||
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
|
||||
{
|
||||
|
||||
return Ok(toCreate);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return Ok("yes");
|
||||
else {
|
||||
|
||||
return BadRequest();
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -101,10 +126,17 @@ namespace TIAMWebApp.Server.Controllers
|
|||
[Route(APIUrls.UpdateServiceProviderRouteName)]
|
||||
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);
|
||||
if(result)
|
||||
{
|
||||
return companyToModify;
|
||||
|
||||
return result;
|
||||
}
|
||||
else
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
//17.
|
||||
|
|
|
|||
|
|
@ -293,6 +293,7 @@ namespace TIAMWebApp.Server.Controllers
|
|||
|
||||
}
|
||||
|
||||
|
||||
[AllowAnonymous]
|
||||
[HttpPost]
|
||||
[Route(APIUrls.CreateTransfersRouteName)]
|
||||
|
|
@ -405,7 +406,7 @@ namespace TIAMWebApp.Server.Controllers
|
|||
[Route(APIUrls.UpdateTransferRouteName)]
|
||||
public async Task<Transfer> UpdateTransfer(Transfer transferToModify)
|
||||
{
|
||||
_logger.Info($"UpdateTransfer called! + {Request.ReadFormAsync()}");
|
||||
_logger.Info($"UpdateTransfer called! + {transferToModify.Id}");
|
||||
await _adminDal.UpdateTransferAsync(transferToModify);
|
||||
|
||||
return transferToModify;
|
||||
|
|
|
|||
|
|
@ -88,12 +88,19 @@ public class DevAdminSignalRHub(AdminDal adminDal, ServiceProviderAPIController
|
|||
}
|
||||
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 ResponseToCaller(messageTag, new SignalResponseMessage<string>(SignalResponseStatus.Success, company.ToJson()), requestId);
|
||||
}
|
||||
return;
|
||||
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;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ namespace TIAMWebApp.Shared.Application.Interfaces
|
|||
public Task<Company> UpdateServiceProviderAsync(Company serviceProvider);
|
||||
|
||||
//15. Create service provider
|
||||
public Task<bool> CreateServiceProviderAsync(Company serviceProvider);
|
||||
public Task<Company> CreateServiceProviderAsync(Company serviceProvider);
|
||||
|
||||
//16. (IServiceProviderDataService) get all service providers
|
||||
public Task<List<Company>> GetServiceProvidersAsync();
|
||||
|
|
|
|||
|
|
@ -102,7 +102,7 @@ namespace TIAMWebApp.Shared.Application.Models
|
|||
public const string UpdateTransferDestination = TransferDataAPI + UpdateTransferDestinationRouteName;
|
||||
|
||||
//serviceprovider
|
||||
public const string CreateServiceProviderRouteName = "CreateServiceProvider";
|
||||
public const string CreateServiceProviderRouteName = "CreateServiceProvider/";
|
||||
public const string CreateServiceProvider = ServiceProviderAPI+CreateServiceProviderRouteName;
|
||||
|
||||
public const string GetServiceProviderByIdRouteName = "GetServiceProviderById";
|
||||
|
|
|
|||
|
|
@ -11,12 +11,14 @@ namespace TIAMWebApp.Shared.Application.Models
|
|||
public Guid Id { get; set; }
|
||||
public string? Name { get; set; }
|
||||
public Guid OwnerId { get; set; }
|
||||
public int CommissionPercent { get; set; }
|
||||
public ServiceProviderModel() { }
|
||||
public ServiceProviderModel(Guid id, string name, Guid ownerId)
|
||||
public ServiceProviderModel(Guid id, string name, Guid ownerId, int commissionPercent)
|
||||
{
|
||||
Id = id;
|
||||
Name = name;
|
||||
OwnerId = ownerId;
|
||||
CommissionPercent = commissionPercent;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -53,9 +53,28 @@ namespace TIAMWebApp.Shared.Application.Services
|
|||
}
|
||||
|
||||
//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.
|
||||
|
|
|
|||
Loading…
Reference in New Issue