Add a controler for "User" (add and authenticate)

This commit is contained in:
Sébastien André
2020-03-12 12:24:51 +01:00
parent 8a29fd7de9
commit 32a27b6d26
23 changed files with 225 additions and 34 deletions

View File

@@ -0,0 +1,44 @@
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Cors;
using AutoMapper;
using skydiveLogs_api.Business.Interface;
using skydiveLogs_api.DataContract;
using skydiveLogs_api.Model;
namespace skydiveLogs_api.Controllers
{
[Route("api/[controller]")]
[ApiController]
public class UserController : ControllerBase
{
public UserController(IUserService userService,
IMapper mapper)
{
_userService = userService;
_mapper = mapper;
}
// POST: api/User
[HttpPost]
[EnableCors]
public UserResp Authenticate([FromBody] string login, [FromBody] string password)
{
var result = _userService.GetByLogin(login, password);
return _mapper.Map<UserResp>(result);
}
// POST: api/User
[HttpPost]
[EnableCors]
public void Post([FromBody] UserReq value)
{
_userService.AddNewUser(_mapper.Map<User>(value));
}
private readonly IUserService _userService;
private readonly IMapper _mapper;
}
}

Binary file not shown.

View File

@@ -1,9 +1,4 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace skydiveLogs_api.DataContract
namespace skydiveLogs_api.DataContract
{
public class AircraftResp
{

View File

@@ -1,7 +1,4 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace skydiveLogs_api.DataContract
{

View File

@@ -1,9 +1,4 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace skydiveLogs_api.DataContract
namespace skydiveLogs_api.DataContract
{
public class JumpTypeReq
{

View File

@@ -1,9 +1,4 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace skydiveLogs_api.DataContract
namespace skydiveLogs_api.DataContract
{
public class JumpTypeResp
{

View File

@@ -0,0 +1,13 @@
namespace skydiveLogs_api.DataContract
{
public class UserReq
{
public string FirstName { get; set; }
public string LastName { get; set; }
public string Login { get; set; }
public string Password { get; set; }
}
}

View File

@@ -0,0 +1,13 @@
namespace skydiveLogs_api.DataContract
{
public class UserResp
{
public int Id { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string Login { get; set; }
}
}

View File

@@ -11,6 +11,7 @@ namespace skydiveLogs_api.Mapper
CreateMap<DataContract.AircraftReq, Model.Aircraft>();
CreateMap<DataContract.DropZoneReq, Model.DropZone>();
CreateMap<DataContract.GearReq, Model.Gear>();
CreateMap<DataContract.UserReq, Model.User>();
CreateMap<Model.Gear, DataContract.GearResp>();
CreateMap<Model.Jump, DataContract.JumpResp>();
@@ -18,6 +19,7 @@ namespace skydiveLogs_api.Mapper
CreateMap<Model.Aircraft ,DataContract.AircraftResp>();
CreateMap<Model.DropZone ,DataContract.DropZoneResp>();
CreateMap<Model.Statistic ,DataContract.StatisticResp>();
CreateMap<Model.User, DataContract.UserResp>();
CreateMap<Model.SimpleSummary, DataContract.SimpleSummaryResp>();
}