Add the jump type in the tunnel flight
This commit is contained in:
@@ -10,6 +10,8 @@ namespace skydiveLogs_api.Domain
|
|||||||
|
|
||||||
public Tunnel Tunnel { get; set; }
|
public Tunnel Tunnel { get; set; }
|
||||||
|
|
||||||
|
public JumpType JumpType { get; set; }
|
||||||
|
|
||||||
public int NbMinutes { get; set; }
|
public int NbMinutes { get; set; }
|
||||||
|
|
||||||
public string Notes { get; set; }
|
public string Notes { get; set; }
|
||||||
|
|||||||
@@ -1,8 +1,12 @@
|
|||||||
<Project Sdk="Microsoft.NET.Sdk">
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>net7.0</TargetFramework>
|
<TargetFramework>net7.0</TargetFramework>
|
||||||
<RootNamespace>skydiveLogs_api.Domain</RootNamespace>
|
<RootNamespace>skydiveLogs_api.Domain</RootNamespace>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<FrameworkReference Include="Microsoft.AspNetCore.App" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
</Project>
|
</Project>
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ namespace skydiveLogs_api.DomainBusiness.Interfaces
|
|||||||
|
|
||||||
IEnumerable<Statistic> GetTunnelFlightGroupByMonth(string beginDate, string endDate);
|
IEnumerable<Statistic> GetTunnelFlightGroupByMonth(string beginDate, string endDate);
|
||||||
|
|
||||||
void AddNewFlight(int tunnelId, TunnelFlight newFlight);
|
void AddNewFlight(int tunnelId, int jumpTypeId, TunnelFlight newFlight);
|
||||||
|
|
||||||
void DeleteTunnelFlightById(int id);
|
void DeleteTunnelFlightById(int id);
|
||||||
|
|
||||||
|
|||||||
@@ -11,11 +11,13 @@ namespace skydiveLogs_api.DomainBusiness
|
|||||||
{
|
{
|
||||||
#region Public Constructors
|
#region Public Constructors
|
||||||
|
|
||||||
public TunnelFlightService(ITunnelFlightRepository tunnelFlightRepository,
|
public TunnelFlightService(IJumpTypeService jumpTypeService,
|
||||||
|
ITunnelFlightRepository tunnelFlightRepository,
|
||||||
IDropZoneService dropZoneService,
|
IDropZoneService dropZoneService,
|
||||||
IIdentityService identityService)
|
IIdentityService identityService)
|
||||||
{
|
{
|
||||||
_dropZoneService = dropZoneService;
|
_dropZoneService = dropZoneService;
|
||||||
|
_jumpTypeService = jumpTypeService;
|
||||||
_identityService = identityService;
|
_identityService = identityService;
|
||||||
_tunnelFlightRepository = tunnelFlightRepository;
|
_tunnelFlightRepository = tunnelFlightRepository;
|
||||||
}
|
}
|
||||||
@@ -73,8 +75,8 @@ namespace skydiveLogs_api.DomainBusiness
|
|||||||
|
|
||||||
return _tunnelFlightRepository.GetBetweenDate(_identityService.ConnectedUser, convertedBeginDate, convertedEndDate);
|
return _tunnelFlightRepository.GetBetweenDate(_identityService.ConnectedUser, convertedBeginDate, convertedEndDate);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void AddNewFlight(int tunnelId, TunnelFlight newFlight)
|
public void AddNewFlight(int tunnelId, int jumpTypeId, TunnelFlight newFlight)
|
||||||
{
|
{
|
||||||
var tmp = _dropZoneService.GetDzById(tunnelId);
|
var tmp = _dropZoneService.GetDzById(tunnelId);
|
||||||
var selectedTunnel = new Tunnel
|
var selectedTunnel = new Tunnel
|
||||||
@@ -88,7 +90,11 @@ namespace skydiveLogs_api.DomainBusiness
|
|||||||
Longitude = tmp.Longitude
|
Longitude = tmp.Longitude
|
||||||
};
|
};
|
||||||
|
|
||||||
|
var selectedJumpType = _jumpTypeService.GetJumpTypeById(jumpTypeId);
|
||||||
|
|
||||||
|
|
||||||
newFlight.Tunnel = selectedTunnel;
|
newFlight.Tunnel = selectedTunnel;
|
||||||
|
newFlight.JumpType = selectedJumpType;
|
||||||
_tunnelFlightRepository.Add(newFlight);
|
_tunnelFlightRepository.Add(newFlight);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -112,6 +118,7 @@ namespace skydiveLogs_api.DomainBusiness
|
|||||||
#region Private Fields
|
#region Private Fields
|
||||||
|
|
||||||
private readonly IDropZoneService _dropZoneService;
|
private readonly IDropZoneService _dropZoneService;
|
||||||
|
private readonly IJumpTypeService _jumpTypeService;
|
||||||
private readonly ITunnelFlightRepository _tunnelFlightRepository;
|
private readonly ITunnelFlightRepository _tunnelFlightRepository;
|
||||||
private readonly IIdentityService _identityService;
|
private readonly IIdentityService _identityService;
|
||||||
|
|
||||||
|
|||||||
@@ -1,18 +1,22 @@
|
|||||||
<Project Sdk="Microsoft.NET.Sdk">
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>net7.0</TargetFramework>
|
<TargetFramework>net7.0</TargetFramework>
|
||||||
<RootNamespace>skydiveLogs_api.DomainBusiness</RootNamespace>
|
<RootNamespace>skydiveLogs_api.DomainBusiness</RootNamespace>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="System.Runtime.Caching" Version="7.0.0" />
|
<FrameworkReference Include="Microsoft.AspNetCore.App" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\skydiveLogs-api.DomainService\skydiveLogs-api.DomainService.csproj" />
|
<PackageReference Include="System.Runtime.Caching" Version="7.0.0" />
|
||||||
<ProjectReference Include="..\skydiveLogs-api.Domain\skydiveLogs-api.Domain.csproj" />
|
</ItemGroup>
|
||||||
<ProjectReference Include="..\skydiveLogs-api.Infrastructure\skydiveLogs-api.Infrastructure.csproj" />
|
|
||||||
</ItemGroup>
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\skydiveLogs-api.DomainService\skydiveLogs-api.DomainService.csproj" />
|
||||||
|
<ProjectReference Include="..\skydiveLogs-api.Domain\skydiveLogs-api.Domain.csproj" />
|
||||||
|
<ProjectReference Include="..\skydiveLogs-api.Infrastructure\skydiveLogs-api.Infrastructure.csproj" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
</Project>
|
</Project>
|
||||||
|
|||||||
@@ -1,12 +1,16 @@
|
|||||||
<Project Sdk="Microsoft.NET.Sdk">
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>net7.0</TargetFramework>
|
<TargetFramework>net7.0</TargetFramework>
|
||||||
<RootNamespace>skydiveLogs_api.DomainService</RootNamespace>
|
<RootNamespace>skydiveLogs_api.DomainService</RootNamespace>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\skydiveLogs-api.Domain\skydiveLogs-api.Domain.csproj" />
|
<FrameworkReference Include="Microsoft.AspNetCore.App" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\skydiveLogs-api.Domain\skydiveLogs-api.Domain.csproj" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
</Project>
|
</Project>
|
||||||
|
|||||||
@@ -29,6 +29,7 @@ namespace skydiveLogs_api.Infrastructure
|
|||||||
BsonMapper.Global.Entity<FavoriteDropZone>().DbRef(x => x.DropZone, "DropZone");
|
BsonMapper.Global.Entity<FavoriteDropZone>().DbRef(x => x.DropZone, "DropZone");
|
||||||
|
|
||||||
BsonMapper.Global.Entity<TunnelFlight>().DbRef(x => x.Tunnel, "DropZone");
|
BsonMapper.Global.Entity<TunnelFlight>().DbRef(x => x.Tunnel, "DropZone");
|
||||||
|
BsonMapper.Global.Entity<TunnelFlight>().DbRef(x => x.JumpType, "JumpType");
|
||||||
BsonMapper.Global.Entity<TunnelFlight>().DbRef(x => x.User, "User");
|
BsonMapper.Global.Entity<TunnelFlight>().DbRef(x => x.User, "User");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -46,6 +46,7 @@ namespace skydiveLogs_api.Infrastructure
|
|||||||
public IEnumerable<TunnelFlight> GetAll(User user)
|
public IEnumerable<TunnelFlight> GetAll(User user)
|
||||||
{
|
{
|
||||||
return _col.Include(x => x.Tunnel)
|
return _col.Include(x => x.Tunnel)
|
||||||
|
.Include(x => x.JumpType)
|
||||||
.Find(j => j.User.Id == user.Id);
|
.Find(j => j.User.Id == user.Id);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -57,6 +58,7 @@ namespace skydiveLogs_api.Infrastructure
|
|||||||
public IEnumerable<TunnelFlight> GetBetweenIndex(User user, int beginIndex, int endIndex)
|
public IEnumerable<TunnelFlight> GetBetweenIndex(User user, int beginIndex, int endIndex)
|
||||||
{
|
{
|
||||||
return _col.Include(x => x.Tunnel)
|
return _col.Include(x => x.Tunnel)
|
||||||
|
.Include(x => x.JumpType)
|
||||||
.Query()
|
.Query()
|
||||||
.OrderByDescending(j => j.FlightDate)
|
.OrderByDescending(j => j.FlightDate)
|
||||||
.Where(j => j.User.Id == user.Id)
|
.Where(j => j.User.Id == user.Id)
|
||||||
@@ -68,6 +70,7 @@ namespace skydiveLogs_api.Infrastructure
|
|||||||
public IEnumerable<TunnelFlight> GetBetweenDate(User user, DateTime beginDate, DateTime endDate)
|
public IEnumerable<TunnelFlight> GetBetweenDate(User user, DateTime beginDate, DateTime endDate)
|
||||||
{
|
{
|
||||||
return _col.Include(x => x.Tunnel)
|
return _col.Include(x => x.Tunnel)
|
||||||
|
.Include(x => x.JumpType)
|
||||||
.Query()
|
.Query()
|
||||||
.OrderByDescending(j => j.FlightDate)
|
.OrderByDescending(j => j.FlightDate)
|
||||||
.Where(j => j.FlightDate >= beginDate)
|
.Where(j => j.FlightDate >= beginDate)
|
||||||
|
|||||||
@@ -1,17 +1,21 @@
|
|||||||
<Project Sdk="Microsoft.NET.Sdk">
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>net7.0</TargetFramework>
|
<TargetFramework>net7.0</TargetFramework>
|
||||||
<RootNamespace>skydiveLogs_api.Infrastructure</RootNamespace>
|
<RootNamespace>skydiveLogs_api.Infrastructure</RootNamespace>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="LiteDB" Version="5.0.17" />
|
<FrameworkReference Include="Microsoft.AspNetCore.App" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\skydiveLogs-api.DomainService\skydiveLogs-api.DomainService.csproj" />
|
<PackageReference Include="LiteDB" Version="5.0.17" />
|
||||||
<ProjectReference Include="..\skydiveLogs-api.Domain\skydiveLogs-api.Domain.csproj" />
|
</ItemGroup>
|
||||||
</ItemGroup>
|
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\skydiveLogs-api.DomainService\skydiveLogs-api.DomainService.csproj" />
|
||||||
|
<ProjectReference Include="..\skydiveLogs-api.Domain\skydiveLogs-api.Domain.csproj" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
</Project>
|
</Project>
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<FrameworkReference Include="Microsoft.AspNetCore.App" />
|
<FrameworkReference Include="Microsoft.AspNetCore.App" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="Microsoft.Extensions.Configuration.Abstractions" Version="7.0.0" />
|
<PackageReference Include="Microsoft.Extensions.Configuration.Abstractions" Version="7.0.0" />
|
||||||
<PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="7.0.0" />
|
<PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="7.0.0" />
|
||||||
|
|||||||
@@ -65,6 +65,7 @@ namespace skydiveLogs_api.Controllers
|
|||||||
public void Post([FromBody] TunnelFlightReq value)
|
public void Post([FromBody] TunnelFlightReq value)
|
||||||
{
|
{
|
||||||
_tunnelFlightService.AddNewFlight(value.TunnelId,
|
_tunnelFlightService.AddNewFlight(value.TunnelId,
|
||||||
|
value.JumpTypeId,
|
||||||
_mapper.Map<TunnelFlight>(value));
|
_mapper.Map<TunnelFlight>(value));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -8,6 +8,8 @@ namespace skydiveLogs_api.DataContract
|
|||||||
|
|
||||||
public int TunnelId { get; set; }
|
public int TunnelId { get; set; }
|
||||||
|
|
||||||
|
public int JumpTypeId { get; set; }
|
||||||
|
|
||||||
public int NbMinutes { get; set; }
|
public int NbMinutes { get; set; }
|
||||||
|
|
||||||
public string Notes { get; set; }
|
public string Notes { get; set; }
|
||||||
|
|||||||
@@ -8,6 +8,8 @@ namespace skydiveLogs_api.DataContract
|
|||||||
|
|
||||||
public int TunnelId { get; set; }
|
public int TunnelId { get; set; }
|
||||||
|
|
||||||
|
public int JumpTypeId { get; set; }
|
||||||
|
|
||||||
public int NbMinutes { get; set; }
|
public int NbMinutes { get; set; }
|
||||||
|
|
||||||
public string Notes { get; set; }
|
public string Notes { get; set; }
|
||||||
|
|||||||
@@ -1,34 +1,34 @@
|
|||||||
<Project Sdk="Microsoft.NET.Sdk.Web">
|
<Project Sdk="Microsoft.NET.Sdk.Web">
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>net7.0</TargetFramework>
|
<TargetFramework>net7.0</TargetFramework>
|
||||||
<AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>
|
<AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>
|
||||||
<RootNamespace>skydiveLogs_api</RootNamespace>
|
<RootNamespace>skydiveLogs_api</RootNamespace>
|
||||||
<UserSecretsId>9d7d268e-ee4d-43a2-a9b7-5b00b516f6f8</UserSecretsId>
|
<UserSecretsId>9d7d268e-ee4d-43a2-a9b7-5b00b516f6f8</UserSecretsId>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Remove="Data\JumpsDb.db" />
|
<None Remove="Data\JumpsDb.db" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Content Include="Data\JumpsDb.db">
|
<Content Include="Data\JumpsDb.db">
|
||||||
<CopyToOutputDirectory>Never</CopyToOutputDirectory>
|
<CopyToOutputDirectory>Never</CopyToOutputDirectory>
|
||||||
</Content>
|
</Content>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="AutoMapper" Version="12.0.1" />
|
<PackageReference Include="AutoMapper" Version="12.0.1" />
|
||||||
<PackageReference Include="AutoMapper.Extensions.Microsoft.DependencyInjection" Version="12.0.1" />
|
<PackageReference Include="AutoMapper.Extensions.Microsoft.DependencyInjection" Version="12.0.1" />
|
||||||
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="7.0.9" />
|
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="7.0.10" />
|
||||||
<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="7.0.8" />
|
<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="7.0.9" />
|
||||||
<PackageReference Include="System.IdentityModel.Tokens.Jwt" Version="6.32.1" />
|
<PackageReference Include="System.IdentityModel.Tokens.Jwt" Version="6.32.1" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\skydiveLogs-api.DomainBusiness\skydiveLogs-api.DomainBusiness.csproj" />
|
<ProjectReference Include="..\skydiveLogs-api.DomainBusiness\skydiveLogs-api.DomainBusiness.csproj" />
|
||||||
<ProjectReference Include="..\skydiveLogs-api.Ioc\skydiveLogs-api.Ioc.csproj" />
|
<ProjectReference Include="..\skydiveLogs-api.Ioc\skydiveLogs-api.Ioc.csproj" />
|
||||||
<ProjectReference Include="..\skydiveLogs-api.Domain\skydiveLogs-api.Domain.csproj" />
|
<ProjectReference Include="..\skydiveLogs-api.Domain\skydiveLogs-api.Domain.csproj" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
</Project>
|
</Project>
|
||||||
|
|||||||
Reference in New Issue
Block a user