Fix on the admin user.

This commit is contained in:
Sébastien André
2021-03-18 15:50:41 +01:00
parent b192bb7192
commit 7caf1d7df2
16 changed files with 80 additions and 37 deletions

2
.gitignore vendored
View File

@@ -35,3 +35,5 @@
Back/skydiveLogs-api.Domain/bin/Release/net5.0/ref/skydiveLogs-api.Domain.dll Back/skydiveLogs-api.Domain/bin/Release/net5.0/ref/skydiveLogs-api.Domain.dll
Back/skydiveLogs-api.Domain/bin/Release/net5.0/skydiveLogs-api.Domain.dll Back/skydiveLogs-api.Domain/bin/Release/net5.0/skydiveLogs-api.Domain.dll
Back/skydiveLogs-api.Domain/bin/Release/net5.0/skydiveLogs-api.Domain.pdb Back/skydiveLogs-api.Domain/bin/Release/net5.0/skydiveLogs-api.Domain.pdb
Back/skydiveLogs-api/Data/JumpsDb-log.db
Back/skydiveLogs-api/Data/JumpsDb.db

View File

@@ -22,6 +22,23 @@ namespace skydiveLogs_api.DomainBusiness
_gearRepository.Add(newGear); _gearRepository.Add(newGear);
} }
public void AddRentalGear(User connectedUser)
{
var rentalGear = new Gear
{
Name = "Rental gear",
Manufacturer = "?",
MainCanopy = "?",
Aad = "Cypress/Vigil",
MaxSize = 280,
MinSize = 190,
ReserveCanopy = "?",
User = connectedUser
};
_gearRepository.Add(rentalGear);
}
public void DeleteGearById(int id) public void DeleteGearById(int id)
{ {
throw new NotImplementedException(); throw new NotImplementedException();

View File

@@ -82,12 +82,12 @@ namespace skydiveLogs_api.DomainBusiness
var adminUser = new User var adminUser = new User
{ {
Login = "administrator", Login = "administrator",
Password = "logsadmin" Password = "logsadmin",
Email = "no mail"
}; };
_userService.AddNewUser(adminUser); _userService.AddNewUser(adminUser, true);
} }
private readonly IAircraftService _aircraftService; private readonly IAircraftService _aircraftService;
private readonly IJumpTypeService _jumpTypeService; private readonly IJumpTypeService _jumpTypeService;

View File

@@ -16,5 +16,7 @@ namespace skydiveLogs_api.DomainBusiness.Interfaces
void UpdateGear(int id, Gear gear); void UpdateGear(int id, Gear gear);
void AddNewGear(Gear gear, User connectedUser); void AddNewGear(Gear gear, User connectedUser);
void AddRentalGear(User connectedUser);
} }
} }

View File

@@ -8,6 +8,6 @@ namespace skydiveLogs_api.DomainBusiness.Interfaces
User GetById(int userId); User GetById(int userId);
bool AddNewUser(User user); bool AddNewUser(User user, bool isAdmin = false);
} }
} }

View File

@@ -12,9 +12,11 @@ namespace skydiveLogs_api.DomainBusiness
{ {
public class UserService : IUserService public class UserService : IUserService
{ {
public UserService(IUserRepository userRepository) public UserService(IUserRepository userRepository,
IGearService gearService)
{ {
_userRepository = userRepository; _userRepository = userRepository;
_gearService = gearService;
} }
public User GetById(int userId) public User GetById(int userId)
@@ -27,7 +29,7 @@ namespace skydiveLogs_api.DomainBusiness
return _userRepository.GetByLogin(login, EncryptPassword(password)); return _userRepository.GetByLogin(login, EncryptPassword(password));
} }
public bool AddNewUser(User newUser) public bool AddNewUser(User newUser, bool isAdmin = false)
{ {
newUser.Password = EncryptPassword(newUser.Password); newUser.Password = EncryptPassword(newUser.Password);
var foundUser = _userRepository.GetByLogin(newUser.Login, newUser.Password); var foundUser = _userRepository.GetByLogin(newUser.Login, newUser.Password);
@@ -35,8 +37,15 @@ namespace skydiveLogs_api.DomainBusiness
if (foundUser == null) if (foundUser == null)
{ {
newUser.IsAdmin = false; newUser.IsAdmin = isAdmin;
result = _userRepository.Add(newUser); var newUserId = _userRepository.Add(newUser);
result = (newUserId > 0);
if (result)
{
newUser.Id = newUserId;
_gearService.AddRentalGear(newUser);
}
} }
return result; return result;
@@ -70,5 +79,7 @@ namespace skydiveLogs_api.DomainBusiness
} }
private readonly IUserRepository _userRepository; private readonly IUserRepository _userRepository;
private readonly IGearService _gearService;
} }
} }

View File

@@ -10,6 +10,6 @@ namespace skydiveLogs_api.DomainService.Repositories
bool Update(T updated); bool Update(T updated);
bool Add(T newEntity); int Add(T newEntity);
} }
} }

View File

@@ -33,17 +33,18 @@ namespace skydiveLogs_api.Infrastructure
return _col.Update(aircraft); return _col.Update(aircraft);
} }
public bool Add(Aircraft newAircraft) public int Add(Aircraft newAircraft)
{ {
var result = true; int result;
try try
{ {
_col.Insert(newAircraft); var tmp = _col.Insert(newAircraft);
result = tmp.AsInt32;
} }
catch catch
{ {
result = false; result = 0;
} }
return result; return result;

View File

@@ -33,17 +33,18 @@ namespace skydiveLogs_api.Infrastructure
return _col.Update(updatedDz); return _col.Update(updatedDz);
} }
public bool Add(DropZone newDz) public int Add(DropZone newDz)
{ {
var result = true; int result;
try try
{ {
_col.Insert(newDz); var tmp = _col.Insert(newDz);
result = tmp.AsInt32;
} }
catch catch
{ {
result = false; result = 0;
} }
return result; return result;

View File

@@ -40,17 +40,18 @@ namespace skydiveLogs_api.Infrastructure
return _col.Update(updatedGear); return _col.Update(updatedGear);
} }
public bool Add(Gear newGear) public int Add(Gear newGear)
{ {
var result = true; int result;
try try
{ {
_col.Insert(newGear); var tmp = _col.Insert(newGear);
result = tmp.AsInt32;
} }
catch catch
{ {
result = false; result = 0;
} }
return result; return result;

View File

@@ -34,17 +34,18 @@ namespace skydiveLogs_api.Infrastructure
return _col.FindById(new BsonValue(id)); return _col.FindById(new BsonValue(id));
} }
public bool Add(Jump newJump) public int Add(Jump newJump)
{ {
var result = true; int result;
try try
{ {
_col.Insert(newJump); var tmp = _col.Insert(newJump);
result = tmp.AsInt32;
} }
catch catch
{ {
result = false; result = 0;
} }
return result; return result;

View File

@@ -33,17 +33,18 @@ namespace skydiveLogs_api.Infrastructure
return _col.Update(updatedJumpType); return _col.Update(updatedJumpType);
} }
public bool Add(JumpType newJumpType) public int Add(JumpType newJumpType)
{ {
var result = true; int result;
try try
{ {
_col.Insert(newJumpType); var tmp = _col.Insert(newJumpType);
result = tmp.AsInt32;
} }
catch catch
{ {
result = false; result = 0;
} }
return result; return result;

View File

@@ -40,17 +40,18 @@ namespace skydiveLogs_api.Infrastructure
return _col.Update(image); return _col.Update(image);
} }
public bool Add(UserImage newImage) public int Add(UserImage newImage)
{ {
var result = true; int result;
try try
{ {
_col.Insert(newImage); var tmp = _col.Insert(newImage);
result = tmp.AsInt32;
} }
catch catch
{ {
result = false; result = 0;
} }
return result; return result;

View File

@@ -23,17 +23,18 @@ namespace skydiveLogs_api.Infrastructure
return _col.FindOne(u => u.Login == login && u.Password == password); return _col.FindOne(u => u.Login == login && u.Password == password);
} }
public bool Add(User newUser) public int Add(User newUser)
{ {
var result = true; int result;
try try
{ {
_col.Insert(newUser); var tmp = _col.Insert(newUser);
result = tmp.AsInt32;
} }
catch catch
{ {
result = false; result = 0;
} }
return result; return result;

View File

@@ -11,5 +11,9 @@
<WebStackScaffolding_IsAsyncSelected>False</WebStackScaffolding_IsAsyncSelected> <WebStackScaffolding_IsAsyncSelected>False</WebStackScaffolding_IsAsyncSelected>
<NameOfLastUsedPublishProfile>C:\Projects\SkydiveLogs\Back\skydiveLogs-api\Properties\PublishProfiles\FolderProfile.pubxml</NameOfLastUsedPublishProfile> <NameOfLastUsedPublishProfile>C:\Projects\SkydiveLogs\Back\skydiveLogs-api\Properties\PublishProfiles\FolderProfile.pubxml</NameOfLastUsedPublishProfile>
<ShowAllFiles>false</ShowAllFiles> <ShowAllFiles>false</ShowAllFiles>
<ActiveDebugProfile>skydiveLogs_api</ActiveDebugProfile>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<DebuggerFlavor>ProjectDebugger</DebuggerFlavor>
</PropertyGroup> </PropertyGroup>
</Project> </Project>