add entities and DTO

features/UserSvc
Vianney JOURDY 1 day ago
parent 540da06ef0
commit 681c55c8f5

@ -0,0 +1,25 @@
**/.dockerignore
**/.env
**/.git
**/.gitignore
**/.project
**/.settings
**/.toolstarget
**/.vs
**/.vscode
**/.idea
**/*.*proj.user
**/*.dbmdl
**/*.jfm
**/azds.yaml
**/bin
**/charts
**/docker-compose*
**/Dockerfile*
**/node_modules
**/npm-debug.log
**/obj
**/secrets.dev.yaml
**/values.dev.yaml
LICENSE
README.md

@ -9,6 +9,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CatalogService", "src\Catal
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Shared", "src\Shared\Shared.csproj", "{BF49B348-4188-4AC7-9ED4-5837F4B3BCD2}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UserService", "UserService\UserService.csproj", "{460A1582-80AD-46DD-A2BF-77A882653B90}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@ -26,9 +28,14 @@ Global
{BF49B348-4188-4AC7-9ED4-5837F4B3BCD2}.Debug|Any CPU.Build.0 = Debug|Any CPU
{BF49B348-4188-4AC7-9ED4-5837F4B3BCD2}.Release|Any CPU.ActiveCfg = Release|Any CPU
{BF49B348-4188-4AC7-9ED4-5837F4B3BCD2}.Release|Any CPU.Build.0 = Release|Any CPU
{460A1582-80AD-46DD-A2BF-77A882653B90}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{460A1582-80AD-46DD-A2BF-77A882653B90}.Debug|Any CPU.Build.0 = Debug|Any CPU
{460A1582-80AD-46DD-A2BF-77A882653B90}.Release|Any CPU.ActiveCfg = Release|Any CPU
{460A1582-80AD-46DD-A2BF-77A882653B90}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{54BE8DE8-08BD-429F-BCCA-3363A879D922} = {2A7200CA-F40B-4715-8726-4ED30C785FA4}
{BF49B348-4188-4AC7-9ED4-5837F4B3BCD2} = {2A7200CA-F40B-4715-8726-4ED30C785FA4}
{460A1582-80AD-46DD-A2BF-77A882653B90} = {2A7200CA-F40B-4715-8726-4ED30C785FA4}
EndGlobalSection
EndGlobal

@ -0,0 +1,21 @@
FROM mcr.microsoft.com/dotnet/runtime:8.0 AS base
USER $APP_UID
WORKDIR /app
FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
ARG BUILD_CONFIGURATION=Release
WORKDIR /src
COPY ["UserService/UserService.csproj", "UserService/"]
RUN dotnet restore "UserService/UserService.csproj"
COPY . .
WORKDIR "/src/UserService"
RUN dotnet build "UserService.csproj" -c $BUILD_CONFIGURATION -o /app/build
FROM build AS publish
ARG BUILD_CONFIGURATION=Release
RUN dotnet publish "UserService.csproj" -c $BUILD_CONFIGURATION -o /app/publish /p:UseAppHost=false
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "UserService.dll"]

@ -0,0 +1,23 @@
namespace UserService.Entities;
public class User
{
public Guid Id { get; set; }
public string Name { get; set; } = "Gest";
public string Surname { get; set; } = "Gest";
public int Age { get; set; } = 0;
public float Weight { get; set; } = 0.0f;
public float Height { get; set; } = 0.0f;
public bool Sexe { get; set; } = true;
public string ProfilePict { get; set; } = "https://cdn.pixabay.com/photo/2015/10/05/22/37/blank-profile-picture-973460_960_720.png";
public int NbSessionWeek { get; set; } = 1;
public string Goal { get; set; } = null;
public string SleepLevel { get; set; } = null;
public string SportLevel { get; set; } = null;
public string Sports { get; set; } = null;
public string HealthProblems { get; set; } = null;
public DateTime CreatedAt { get; set; } = DateTime.UtcNow;
public DateTime UpdatedAt { get; set; } = DateTime.UtcNow;
}

@ -0,0 +1,7 @@
using UserService;
var builder = Host.CreateApplicationBuilder(args);
builder.Services.AddHostedService<Worker>();
var host = builder.Build();
host.Run();

@ -0,0 +1,12 @@
{
"$schema": "http://json.schemastore.org/launchsettings.json",
"profiles": {
"UserService": {
"commandName": "Project",
"dotnetRunMessages": true,
"environmentVariables": {
"DOTNET_ENVIRONMENT": "Development"
}
}
}
}

@ -0,0 +1,24 @@
<Project Sdk="Microsoft.NET.Sdk.Worker">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<UserSecretsId>dotnet-UserService-2cc009cf-2522-48e6-b2c0-d6f06a3170d3</UserSecretsId>
<DockerDefaultTargetOS>Linux</DockerDefaultTargetOS>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.Extensions.Hosting" Version="8.0.1"/>
</ItemGroup>
<ItemGroup>
<Content Include="..\.dockerignore">
<Link>.dockerignore</Link>
</Content>
</ItemGroup>
<ItemGroup>
<Folder Include="DTOs\" />
</ItemGroup>
</Project>

@ -0,0 +1,24 @@
namespace UserService;
public class Worker : BackgroundService
{
private readonly ILogger<Worker> _logger;
public Worker(ILogger<Worker> logger)
{
_logger = logger;
}
protected override async Task ExecuteAsync(CancellationToken stoppingToken)
{
while (!stoppingToken.IsCancellationRequested)
{
if (_logger.IsEnabled(LogLevel.Information))
{
_logger.LogInformation("Worker running at: {time}", DateTimeOffset.Now);
}
await Task.Delay(1000, stoppingToken);
}
}
}

@ -8,4 +8,9 @@ services:
volumes:
- pgdata:/var/lib/postgresql/data
volumes:
pgdata:
pgdata:
userservice:
image: userservice
build:
context: .
dockerfile: UserService/Dockerfile

@ -0,0 +1,7 @@
namespace Shared.DTOs;
public class UserDto
{
public string Name { get; set; };
}

@ -0,0 +1,11 @@
namespace Shared.Enum;
public enum EGoal
{
None,
WeightLoss,
MassGain,
Fitness,
ImproveStamina,
KeepFit,
}

@ -0,0 +1,10 @@
namespace Shared.Enum;
public enum EHealthProblem
{
None,
Arthrosis,
Migraine,
BackPain,
Arthritis,
}

@ -0,0 +1,11 @@
namespace Shared.Enum;
public enum ESleepLevel
{
None,
Excellent,
Good,
Bad,
VeryBad,
Terrible,
}

@ -0,0 +1,15 @@
namespace Shared.Enum;
public enum ESport
{
None,
Football,
Basketball,
Handball,
Tennis,
Walking,
Running,
Biking,
Yoga,
Else,
}

@ -0,0 +1,10 @@
namespace Shared.Enum;
public enum ESportLevel
{
None,
VerySporty,
Sporty,
Beginner,
NotSporty,
}
Loading…
Cancel
Save