Add "inTunnel" property on JumpType

This commit is contained in:
Sébastien ANDRE
2023-08-18 09:47:37 +02:00
parent 01fa8b60d0
commit b28bd7e7ff
6 changed files with 48 additions and 13 deletions

View File

@@ -4,6 +4,7 @@
{ {
Gear, Gear,
JumpType, JumpType,
TunnelJumpType,
Aircraft, Aircraft,
DropZone, DropZone,
Tunnel Tunnel

View File

@@ -8,7 +8,7 @@
public string Name { get; set; } public string Name { get; set; }
public string InTunnel { get; set; } public bool InTunnel { get; set; }
#endregion Public Properties #endregion Public Properties
} }

View File

@@ -13,6 +13,8 @@ namespace skydiveLogs_api.DomainBusiness.Interfaces
IEnumerable<JumpType> GetAllJumpTypes(); IEnumerable<JumpType> GetAllJumpTypes();
IEnumerable<JumpType> GetJumpTypesForTunnel();
JumpType GetJumpTypeById(int id); JumpType GetJumpTypeById(int id);
void UpdateJumpType(int id, JumpType value); void UpdateJumpType(int id, JumpType value);

View File

@@ -43,6 +43,17 @@ namespace skydiveLogs_api.DomainBusiness
return _cacheService.Get<IEnumerable<JumpType>>(CacheType.JumpType); return _cacheService.Get<IEnumerable<JumpType>>(CacheType.JumpType);
} }
public IEnumerable<JumpType> GetJumpTypesForTunnel()
{
if (!_cacheService.Contains(CacheType.JumpType))
{
var tmp = _jumpTypeRepository.GetAll().Where(t => t.InTunnel);
_cacheService.Put(CacheType.TunnelJumpType, tmp, 5 * 60 * 1000);
}
return _cacheService.Get<IEnumerable<JumpType>>(CacheType.TunnelJumpType);
}
public JumpType GetJumpTypeById(int id) public JumpType GetJumpTypeById(int id)
{ {
var allJumpTypes = GetAllJumpTypes(); var allJumpTypes = GetAllJumpTypes();

View File

@@ -40,6 +40,15 @@ namespace skydiveLogs_api.Controllers
return _mapper.Map<IEnumerable<JumpTypeResp>>(result); return _mapper.Map<IEnumerable<JumpTypeResp>>(result);
} }
// GET: api/JumpType/tunnel
[HttpGet("tunnel")]
[EnableCors]
public IEnumerable<JumpTypeResp> GetForTunnel()
{
var result = _jumpTypeService.GetJumpTypesForTunnel();
return _mapper.Map<IEnumerable<JumpTypeResp>>(result);
}
// GET: api/JumpType/5 // GET: api/JumpType/5
[HttpGet("{id}")] [HttpGet("{id}")]
[EnableCors] [EnableCors]

View File

@@ -1,50 +1,62 @@
[ [
{ {
"id": 1, "id": 1,
"name": "PAC" "name": "PAC",
"InTunnel": false
}, },
{ {
"id": 2, "id": 2,
"name": "RW 4" "name": "RW 4",
"InTunnel": true
}, },
{ {
"id": 3, "id": 3,
"name": "RW 8" "name": "RW 8",
"InTunnel": true
}, },
{ {
"id": 4, "id": 4,
"name": "RW X" "name": "RW X",
"InTunnel": false
}, },
{ {
"id": 5, "id": 5,
"name": "FreeFly" "name": "FreeFly",
"InTunnel": true
}, },
{ {
"id": 6, "id": 6,
"name": "FreeStyle" "name": "FreeStyle",
"InTunnel": false
}, },
{ {
"id": 7, "id": 7,
"name": "Canopy" "name": "Canopy",
"InTunnel": false
}, },
{ {
"id": 8, "id": 8,
"name": "Track/Trace" "name": "Track/Trace",
"InTunnel": false
}, },
{ {
"id": 9, "id": 9,
"name": "Wingsuit 1" "name": "Wingsuit 1",
"InTunnel": true
}, },
{ {
"id": 10, "id": 10,
"name": "Wingsuit 2" "name": "Wingsuit 2",
"InTunnel": false
}, },
{ {
"id": 11, "id": 11,
"name": "Wingsuit 3" "name": "Wingsuit 3",
"InTunnel": false
}, },
{ {
"id": 13, "id": 13,
"name": "Landing accuracy" "name": "Landing accuracy",
"InTunnel": false
} }
] ]