MC add database service in param..

This commit is contained in:
Thomas Fransolet 2020-03-30 11:37:53 +02:00
parent f35c89f861
commit 61d80fc4bd
8 changed files with 50 additions and 36 deletions

8
MyCore.Devices/Class1.cs Normal file
View File

@ -0,0 +1,8 @@
using System;
namespace MyCore.Devices
{
public class Class1
{
}
}

View File

@ -0,0 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.1</TargetFramework>
</PropertyGroup>
</Project>

View File

@ -1,9 +1,11 @@
 
Microsoft Visual Studio Solution File, Format Version 12.00 Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15 # Visual Studio Version 16
VisualStudioVersion = 15.0.28307.168 VisualStudioVersion = 16.0.29709.97
MinimumVisualStudioVersion = 10.0.40219.1 MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MyCore", "MyCore\MyCore.csproj", "{017065F0-FC61-4566-A432-F414FC217AAA}" Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MyCore", "MyCore\MyCore.csproj", "{017065F0-FC61-4566-A432-F414FC217AAA}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MyCore.Devices", "MyCore.Devices\MyCore.Devices.csproj", "{7B9FE719-FBF7-42D5-BCF5-BDA31B05D66D}"
EndProject EndProject
Global Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution GlobalSection(SolutionConfigurationPlatforms) = preSolution
@ -15,6 +17,10 @@ Global
{017065F0-FC61-4566-A432-F414FC217AAA}.Debug|Any CPU.Build.0 = Debug|Any CPU {017065F0-FC61-4566-A432-F414FC217AAA}.Debug|Any CPU.Build.0 = Debug|Any CPU
{017065F0-FC61-4566-A432-F414FC217AAA}.Release|Any CPU.ActiveCfg = Release|Any CPU {017065F0-FC61-4566-A432-F414FC217AAA}.Release|Any CPU.ActiveCfg = Release|Any CPU
{017065F0-FC61-4566-A432-F414FC217AAA}.Release|Any CPU.Build.0 = Release|Any CPU {017065F0-FC61-4566-A432-F414FC217AAA}.Release|Any CPU.Build.0 = Release|Any CPU
{7B9FE719-FBF7-42D5-BCF5-BDA31B05D66D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7B9FE719-FBF7-42D5-BCF5-BDA31B05D66D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7B9FE719-FBF7-42D5-BCF5-BDA31B05D66D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7B9FE719-FBF7-42D5-BCF5-BDA31B05D66D}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection EndGlobalSection
GlobalSection(SolutionProperties) = preSolution GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE HideSolutionNode = FALSE

View File

@ -27,9 +27,9 @@ namespace MyCore.Controllers.Devices
public DeviceController(DeviceDatabaseService DeviceDatabaseService, ProviderDatabaseService ProviderDatabaseService, LocationDatabaseService LocationDatabaseService) public DeviceController(DeviceDatabaseService DeviceDatabaseService, ProviderDatabaseService ProviderDatabaseService, LocationDatabaseService LocationDatabaseService)
{ {
_DeviceDatabaseService = DeviceDatabaseService; this._DeviceDatabaseService = DeviceDatabaseService;
_ProviderDatabaseService = ProviderDatabaseService; this._ProviderDatabaseService = ProviderDatabaseService;
_LocationDatabaseService = LocationDatabaseService; this._LocationDatabaseService = LocationDatabaseService;
} }
// GET: Devices // GET: Devices
@ -88,7 +88,7 @@ namespace MyCore.Controllers.Devices
if (deviceDetailDTO == null) if (deviceDetailDTO == null)
throw new KeyNotFoundException("Device is null"); throw new KeyNotFoundException("Device is null");
DeviceDetailDTO deviceCreated = DeviceService.CreateOrUpdate(deviceDetailDTO, true); DeviceDetailDTO deviceCreated = DeviceService.CreateOrUpdate(this._DeviceDatabaseService, this._ProviderDatabaseService, this._LocationDatabaseService, deviceDetailDTO, true);
return new OkObjectResult(deviceCreated); return new OkObjectResult(deviceCreated);
@ -117,7 +117,7 @@ namespace MyCore.Controllers.Devices
if (userId == null && UserService.IsExist(userId)) if (userId == null && UserService.IsExist(userId))
throw new KeyNotFoundException("User not found"); throw new KeyNotFoundException("User not found");
Provider provider = ProviderService.GetProviderById(userId, providerId); Provider provider = ProviderService.GetProviderById(this._ProviderDatabaseService, userId, providerId);
if (provider != null) if (provider != null)
throw new KeyNotFoundException("Provider id is null"); throw new KeyNotFoundException("Provider id is null");
@ -150,7 +150,7 @@ namespace MyCore.Controllers.Devices
if (!_DeviceDatabaseService.IsExist(deviceId)) if (!_DeviceDatabaseService.IsExist(deviceId))
throw new KeyNotFoundException("Device does not exist"); throw new KeyNotFoundException("Device does not exist");
DeviceDetailDTO deviceUpdated = DeviceService.CreateOrUpdate(deviceDetailDTO, false); DeviceDetailDTO deviceUpdated = DeviceService.CreateOrUpdate(this._DeviceDatabaseService, this._ProviderDatabaseService, this._LocationDatabaseService, deviceDetailDTO, false);
return new OkObjectResult(deviceUpdated); return new OkObjectResult(deviceUpdated);
} }

View File

@ -22,6 +22,16 @@ namespace MyCore.Controllers.Devices
[ApiController] [ApiController]
public class ProviderController : ControllerBase public class ProviderController : ControllerBase
{ {
private readonly DeviceDatabaseService _DeviceDatabaseService;
private readonly ProviderDatabaseService _ProviderDatabaseService;
private readonly LocationDatabaseService _LocationDatabaseService;
public ProviderController(DeviceDatabaseService DeviceDatabaseService, ProviderDatabaseService ProviderDatabaseService, LocationDatabaseService LocationDatabaseService)
{
this._DeviceDatabaseService = DeviceDatabaseService;
this._ProviderDatabaseService = ProviderDatabaseService;
this._LocationDatabaseService = LocationDatabaseService;
}
// GET: Devices // GET: Devices
/// <summary> /// <summary>
@ -33,7 +43,7 @@ namespace MyCore.Controllers.Devices
{ {
try try
{ {
List<Provider> providers = ProviderService.GetAll(userId); List<Provider> providers = ProviderService.GetAll(this._ProviderDatabaseService, userId);
List<ProviderDTO> providersDTO = providers.Select(p => p.ToDTO()).ToList(); List<ProviderDTO> providersDTO = providers.Select(p => p.ToDTO()).ToList();
@ -63,7 +73,7 @@ namespace MyCore.Controllers.Devices
if (providerDTO == null) if (providerDTO == null)
throw new KeyNotFoundException("Provider is null"); throw new KeyNotFoundException("Provider is null");
ProviderDTO providerCreated = ProviderService.CreateOrUpdate(userId, providerDTO, true); ProviderDTO providerCreated = ProviderService.CreateOrUpdate(this._ProviderDatabaseService, userId, providerDTO, true);
return new OkObjectResult(providerCreated); return new OkObjectResult(providerCreated);
@ -92,10 +102,10 @@ namespace MyCore.Controllers.Devices
if (userId == null && UserService.IsExist(userId)) if (userId == null && UserService.IsExist(userId))
throw new KeyNotFoundException("User not found"); throw new KeyNotFoundException("User not found");
if (!ProviderService.IsExist(userId, providerDTO.Id)) if (!ProviderService.IsExist(this._ProviderDatabaseService, userId, providerDTO.Id))
throw new KeyNotFoundException("Provider does not exist"); throw new KeyNotFoundException("Provider does not exist");
ProviderDTO providerUpdated = ProviderService.CreateOrUpdate(userId, providerDTO, false); ProviderDTO providerUpdated = ProviderService.CreateOrUpdate(this._ProviderDatabaseService, userId, providerDTO, false);
return new OkObjectResult(providerUpdated); return new OkObjectResult(providerUpdated);
} }

View File

@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk.Web"> <Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup> <PropertyGroup>
<TargetFramework>netcoreapp2.1</TargetFramework> <TargetFramework>netcoreapp3.1</TargetFramework>
<DockerDefaultTargetOS>Linux</DockerDefaultTargetOS> <DockerDefaultTargetOS>Linux</DockerDefaultTargetOS>
<UserSecretsId>6d53b0c4-74d6-41aa-8816-2ec3cf42767a</UserSecretsId> <UserSecretsId>6d53b0c4-74d6-41aa-8816-2ec3cf42767a</UserSecretsId>
</PropertyGroup> </PropertyGroup>

View File

@ -12,18 +12,8 @@ namespace MyCore.Services.Devices
{ {
public class DeviceService public class DeviceService
{ {
private static DeviceDatabaseService _DeviceDatabaseService;
private static ProviderDatabaseService _ProviderDatabaseService;
private static LocationDatabaseService _LocationDatabaseService;
public DeviceService(DeviceDatabaseService DeviceDatabaseService, ProviderDatabaseService ProviderDatabaseService, LocationDatabaseService LocationDatabaseService) public static DeviceDetailDTO CreateOrUpdate(DeviceDatabaseService _DeviceDatabaseService, ProviderDatabaseService _ProviderDatabaseService, LocationDatabaseService _LocationDatabaseService, DeviceDetailDTO deviceDetailDTO, bool create)
{
_DeviceDatabaseService = DeviceDatabaseService;
_ProviderDatabaseService = ProviderDatabaseService;
_LocationDatabaseService = LocationDatabaseService;
}
public static DeviceDetailDTO CreateOrUpdate(DeviceDetailDTO deviceDetailDTO, bool create)
{ {
Device device; Device device;
if (create) if (create)

View File

@ -17,24 +17,17 @@ namespace MyCore.Services.MyControlPanel
"ZigBee" "ZigBee"
}; };
private readonly ProviderDatabaseService _ProviderDatabaseService; public static bool IsExist(ProviderDatabaseService _ProviderDatabaseService, string userId, string providerId)
public ProviderService(ProviderDatabaseService ProviderDatabaseService)
{
_ProviderDatabaseService = ProviderDatabaseService;
}
public static bool IsExist(string userId, string providerId)
{ {
return _ProviderDatabaseService.GetById(userId, providerId) != null ? true : false; return _ProviderDatabaseService.GetById(userId, providerId) != null ? true : false;
} }
public static List<Provider> GetAll(string userId) public static List<Provider> GetAll(ProviderDatabaseService _ProviderDatabaseService, string userId)
{ {
return _ProviderDatabaseService.GetAll(userId); return _ProviderDatabaseService.GetAll(userId);
} }
public static ProviderDTO CreateOrUpdate(string userId, ProviderDTO providerDTO, bool create) public static ProviderDTO CreateOrUpdate(ProviderDatabaseService _ProviderDatabaseService, string userId, ProviderDTO providerDTO, bool create)
{ {
Provider provider; Provider provider;
if (create) if (create)
@ -59,7 +52,7 @@ namespace MyCore.Services.MyControlPanel
return _ProviderDatabaseService.Update(provider.Id, provider).ToDTO(); return _ProviderDatabaseService.Update(provider.Id, provider).ToDTO();
} }
public static Provider GetProviderById(string userId, string providerId) public static Provider GetProviderById(ProviderDatabaseService _ProviderDatabaseService, string userId, string providerId)
{ {
return _ProviderDatabaseService.GetById(userId, providerId); return _ProviderDatabaseService.GetById(userId, providerId);
} }