UpdateCompany fixes

This commit is contained in:
Loretta 2024-07-02 15:58:38 +02:00
parent 6574d50c30
commit daa0b96032
3 changed files with 27 additions and 29 deletions

View File

@ -371,7 +371,7 @@ namespace TIAM.Database.Test
Assert.IsTrue(company.Id == companyId);
company.OwnerId = userId;
Assert.IsTrue(await Dal.UpdateCompanyAsync(company));
Assert.IsNotNull(await Dal.UpdateCompanyAsync(company));
company = await Dal.GetCompanyByIdAsync(companyId);
@ -380,7 +380,7 @@ namespace TIAM.Database.Test
Assert.IsTrue(company.UserToServiceProviders.Any(x=>x.UserId == userId && x.ServiceProviderId == companyId));
company.CommissionPercent = 5;
Assert.IsTrue(await Dal.UpdateCompanyAsync(company));
Assert.IsNotNull(await Dal.UpdateCompanyAsync(company));
var addressId = company.Profile.AddressId;
Assert.IsTrue(await Dal.RemoveCompanyAsync(company.Id)); //mielőbb kitöröljük, h ne maradjon szemét a db-ben - J.

View File

@ -30,6 +30,7 @@ using DevExpress.Data.Linq;
using DevExpress.Data.Linq.Helpers;
using TIAM.Database.DbSets.Drivers;
using AyCode.Entities.Server.LogItems;
using AyCode.Interfaces.Entities;
namespace TIAM.Database.DataLayers.Admins
{
@ -346,29 +347,26 @@ namespace TIAM.Database.DataLayers.Admins
//}
//14. (IserviceProviderDataService) Update service provider
public Task<bool> UpdateCompanyAsync(Company company)
{
var result = NewUpdateCompanyAsync(company);
if (result.Result != null || (result.Result).Id != Guid.Empty)
{
return Task.FromResult(true);
}
else
{
return Task.FromResult(false);
}
}
//public Task<bool> UpdateCompanyAsync(Company company)
//{
// var result = NewUpdateCompanyAsync(company);
// return Task.FromResult(result.Result != null && !result.Result.Id.IsNullOrEmpty());
//}
public Task<Company?> NewUpdateCompanyAsync(Company company) => UpdateSafeAsync(company, (ctx, safeCompany) => ctx.UpdateCompany(safeCompany));
public Task<Company?> UpdateCompanyAsync(Company company) => UpdateSafeAsync(company, (ctx, safeCompany) =>
{
ctx.Entry(safeCompany.Profile).CurrentValues.SetValues(company.Profile);
return ctx.UpdateCompany(safeCompany);
});
public Task<bool> UpdateCompanyAsync(Company company, Profile profile)
=> TransactionAsync(ctx =>
{
ctx.UpdateProfile(profile);
ctx.SaveChanges();
//public Task<bool> UpdateCompanyAsync(Company company, Profile profile)
// => TransactionAsync(ctx =>
// {
// ctx.UpdateProfile(profile);
// ctx.SaveChanges();
return ctx.UpdateCompany(company);
});
// return ctx.UpdateCompany(company);
// });
//13. (IserviceProviderDataService) delete service provider
public Task<bool> RemoveCompanyAsync(Guid companyId) => TransactionAsync(ctx => ctx.RemoveProductsByCompanyId(companyId) && ctx.RemoveCompany(companyId));

View File

@ -31,14 +31,14 @@ namespace TIAMWebApp.Server.Controllers
[NonAction]
[ApiExplorerSettings(IgnoreApi = true)]
private async Task<bool> CompanyDataChanging(Company company, TrackingState trackingState)
private async Task<Company?> CompanyDataChanging(Company company, TrackingState trackingState)
{
var logText = $"[{trackingState.ToString().ToUpper()}] CompanyDataChanging called; Id: {company.Id}; OwnerId: {company.OwnerId}; Name: {company.Name}";
if (company.Name.IsNullOrEmpty())
{
_logger.Error(logText);
return false;
return null;
}
_logger.Info(logText);
@ -53,12 +53,12 @@ namespace TIAMWebApp.Server.Controllers
//company.SetProfile(new Profile(Guid.NewGuid(), company.Name));
//company.Profile.SetAddress(new Address(Guid.NewGuid(), "Controller AddCompanyAsync; address text..."));
return await adminDal.AddCompanyAsync(company);
return (await adminDal.AddCompanyAsync(company)) ? company : null;
case TrackingState.Update:
return await adminDal.UpdateCompanyAsync(company);
case TrackingState.Remove:
return await adminDal.RemoveCompanyAsync(company.Id);
return (await adminDal.RemoveCompanyAsync(company.Id)) ? company : null;
case TrackingState.Get:
case TrackingState.GetAll:
@ -71,21 +71,21 @@ namespace TIAMWebApp.Server.Controllers
[ApiExplorerSettings(IgnoreApi = true)]
[SignalR(SignalRTags.AddCompany)]
public async Task<string> AddCompanyAsync(Company company)
=> await CompanyDataChanging(company, TrackingState.Add) ? company.ToJson() : string.Empty;
=> (await CompanyDataChanging(company, TrackingState.Add))?.ToJson() ?? string.Empty;
[AllowAnonymous]
[HttpPost]
[Route(APIUrls.UpdateServiceProviderRouteName)]
[SignalR(SignalRTags.UpdateCompany)]
public async Task<string> UpdateServiceProvider(Company company)
=> await CompanyDataChanging(company, TrackingState.Update) ? company.ToJson() : string.Empty;
=> (await CompanyDataChanging(company, TrackingState.Update))?.ToJson() ?? string.Empty;
[AllowAnonymous]
[HttpPost]
[Route(APIUrls.RemoveServiceProviderRouteName)]
[SignalR(SignalRTags.RemoveCompany)]
public async Task<string> RemoveServiceProvider(Company company)
=> await CompanyDataChanging(company, TrackingState.Remove) ? company.ToJson() : string.Empty;
=> (await CompanyDataChanging(company, TrackingState.Remove))?.ToJson() ?? string.Empty;
//15.
[AllowAnonymous]