mirror of
https://github.com/yummy4friends/y4f.git
synced 2025-07-17 19:33:17 +02:00
Compare commits
4 Commits
6f8dabbd3f
...
workflow/T
Author | SHA1 | Date | |
---|---|---|---|
59ff664ffe | |||
fced97beb0 | |||
bf32b6999b | |||
b7719ca4b6 |
23
.github/workflows/dotnet.yml
vendored
Normal file
23
.github/workflows/dotnet.yml
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
name: Test if program still runs
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ "dev" ]
|
||||
pull_request:
|
||||
branches: [ "dev" ]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Setup .NET
|
||||
uses: actions/setup-dotnet@v3
|
||||
with:
|
||||
dotnet-version: 7.0.107
|
||||
- name: Restore dependencies
|
||||
run: dotnet restore
|
||||
- name: Build
|
||||
run: dotnet build --no-restore
|
@ -1,3 +1,4 @@
|
||||
using Blazored.LocalStorage;
|
||||
using Microsoft.AspNetCore.Components.Web;
|
||||
using Microsoft.AspNetCore.Components.WebAssembly.Hosting;
|
||||
using y4f;
|
||||
@ -6,7 +7,7 @@ var builder = WebAssemblyHostBuilder.CreateDefault(args);
|
||||
builder.RootComponents.Add<App>("#app");
|
||||
builder.RootComponents.Add<HeadOutlet>("head::after");
|
||||
|
||||
|
||||
builder.Services.AddBlazoredLocalStorage();
|
||||
|
||||
builder.Services.AddScoped(sp => new HttpClient { BaseAddress = new Uri(builder.HostEnvironment.BaseAddress) });
|
||||
|
||||
|
@ -14,6 +14,7 @@
|
||||
</div>
|
||||
|
||||
<table>
|
||||
|
||||
<tr class="loadtext">
|
||||
<td>Bestellung eingegangen</td>
|
||||
<td class="load2">Bestellung wird zubereitet</td>
|
||||
|
@ -5,7 +5,7 @@
|
||||
|
||||
|
||||
<div class="container mt-auto">
|
||||
<h4>AccountID: #1234</h4>
|
||||
<h4>AccountID: @RegistrierungA.userName</h4>
|
||||
<h4>Ihr QR-Code: </h4>
|
||||
<img src="assets/K-QR.png" class="img" title="logo image">
|
||||
|
||||
|
@ -1,22 +1,36 @@
|
||||
@page "/RegistrierungA"
|
||||
@page "/RegistrierungA"
|
||||
@layout Registrierung
|
||||
@inject NavigationManager NavManager
|
||||
@inject Blazored.LocalStorage.ISyncLocalStorageService localStorage
|
||||
|
||||
<div class="container col-lg-5 col-md-9 col-sm-12 d-flex flex-column " id="content">
|
||||
<p>Benutzername:</p>
|
||||
<center>
|
||||
<input type="text" class="form-control" id="name" name="name">
|
||||
</center>
|
||||
<p>Passwort:</p>
|
||||
<center>
|
||||
<input type="text" class="form-control" id="password" name="password">
|
||||
</center>
|
||||
<center>
|
||||
|
||||
<form id="button" action="Bestelluebersicht">
|
||||
<input type="submit" value="Login" class="btn">
|
||||
</form>
|
||||
</center>
|
||||
</div>
|
||||
@code {
|
||||
|
||||
<input type="text" class="form-control" id="name" name="name" @bind="@inputName">
|
||||
|
||||
<p>Passwort:</p>
|
||||
<input type="password" class="form-control" id="password" name="password" @bind="@inputPassword">
|
||||
|
||||
<button type="button" class="btn" @onclick="@Login">Login</button>
|
||||
|
||||
</div>
|
||||
|
||||
@code {
|
||||
public string inputName { get; set; } = string.Empty;
|
||||
public string inputPassword { get; set; } = string.Empty;
|
||||
|
||||
public static string userName { get; set; } = string.Empty;
|
||||
|
||||
public void Login() {
|
||||
if (inputName == userDataName && inputPassword == userDataPassword) {
|
||||
localStorage.SetItem("name", inputName);
|
||||
userName = localStorage.GetItem<string>("name");
|
||||
NavManager.NavigateTo("/Bestelluebersicht");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@code {
|
||||
public string userDataName { get; set; } = "";
|
||||
public string userDataPassword { get; set; } = "";
|
||||
}
|
@ -15,5 +15,8 @@ input {
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
button {
|
||||
text-align: center;
|
||||
background-color: #89F9A5;
|
||||
border-radius: 50px;
|
||||
}
|
||||
|
@ -1,29 +1,105 @@
|
||||
@page "/Yummy-Punkte"
|
||||
@inject HttpClient Http
|
||||
@inject Blazored.LocalStorage.ISyncLocalStorageService localStorage
|
||||
|
||||
<body>
|
||||
<div class="container col-lg-5 col-md-9 col-sm-12 d-flex flex-column " id="content">
|
||||
<h4><b>Ihre Yummy-Punkte</b></h4>
|
||||
|
||||
<div class="img" >
|
||||
@for(int i = 0; i < 10; i++)
|
||||
{
|
||||
<img src="assets/White-Circle.png ">
|
||||
}
|
||||
<br>
|
||||
</div>
|
||||
|
||||
<p class="text">Bei einem Mindestbestellwert von 8€ erhalten Sie ein Yummy-Punkt. Ab der 10ten Bestellung gibt es einen Rabatt zu Ihrer nächsten Bestellung.</p>
|
||||
|
||||
<div class="button">
|
||||
<form id="button1" action="/">
|
||||
<input type="submit" value="Zurück" class="btn">
|
||||
</form>
|
||||
</div>
|
||||
<div class="container col-lg-5 col-md-9 col-sm-12 d-flex flex-column " id="content">
|
||||
<h4><b>Ihre Yummy-Punkte</b></h4>
|
||||
|
||||
</div>
|
||||
<div class="img">
|
||||
@for (int i = 0; i < 10; i++)
|
||||
{
|
||||
@*if kunde hat treuepunkte*@
|
||||
@if (kunde.Treuepunkte > i)
|
||||
{
|
||||
<img src="assets/Point-Circle.png ">
|
||||
}
|
||||
else
|
||||
{
|
||||
<img src="assets/White-Circle.png ">
|
||||
}
|
||||
}
|
||||
<br>
|
||||
</div>
|
||||
|
||||
<p class="text">Bei einem Mindestbestellwert von 8€ erhalten Sie ein Yummy-Punkt. Ab der 10ten Bestellung gibt es einen Rabatt zu Ihrer nächsten Bestellung.</p>
|
||||
<p class="text">Aktueller Rabatt: @rabatt.Prozent %</p>
|
||||
|
||||
<div class="button">
|
||||
<form id="button1" action="/">
|
||||
<input type="submit" value="Zurück" class="btn">
|
||||
</form>
|
||||
@*reset button to set the treuepunkte to null*@
|
||||
<button class="btn btn-danger" @onclick="@(()=>resetTreuepunkte())">Yummy-Punkte einlösen</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
|
||||
@code {
|
||||
|
||||
|
||||
// allergien, bestellungsposition, kunde, menuitem, menuitemkategorie, menuitemueberkategorie, rabatt
|
||||
|
||||
private List<Kunde> kunden = new List<Kunde>();
|
||||
private Kunde kunde = new Kunde();
|
||||
|
||||
private List<Rabatt> rabatte = new List<Rabatt>();
|
||||
private Rabatt rabatt = new Rabatt();
|
||||
|
||||
|
||||
public void resetTreuepunkte()
|
||||
{
|
||||
if (kunde.Treuepunkte == 10)
|
||||
{
|
||||
kunde.Treuepunkte = 0;
|
||||
// API change treupunkte to 0 if kunde has 10 treuepunkte
|
||||
Http.PutAsJsonAsync("https://localhost:7076/api/kunden/" + kunde.Idkunde, kunde);
|
||||
}
|
||||
}
|
||||
|
||||
protected override async Task OnInitializedAsync()
|
||||
{
|
||||
kunden = await Http.GetFromJsonAsync<List<Kunde>>("https://localhost:7076/api/kunden");
|
||||
rabatte = await Http.GetFromJsonAsync<List<Rabatt>>("https://localhost:7076/api/Rabatte");
|
||||
|
||||
kunde = kunden[0];
|
||||
|
||||
// get the most recent rabatt, that are still valid (GueltigkeitBis)
|
||||
// if there is no rabatt, set the rabatt to null
|
||||
if (rabatte.Count == 0)
|
||||
{
|
||||
rabatt = null;
|
||||
}
|
||||
else
|
||||
{
|
||||
for (int i = 0; i < rabatte.Count; i++)
|
||||
{
|
||||
if (rabatte[i].GueltigkeitBis > DateTime.Now)
|
||||
{
|
||||
rabatt = rabatte[i];
|
||||
}
|
||||
}
|
||||
}
|
||||
//rabatt = rabatte[rabatte.Count - 1];
|
||||
|
||||
|
||||
}
|
||||
|
||||
public class Kunde
|
||||
{
|
||||
public int Idkunde { get; set; }
|
||||
public string Code { get; set; }
|
||||
public int Treuepunkte { get; set; }
|
||||
}
|
||||
public class Rabatt
|
||||
{
|
||||
public int Idrabatt { get; set; }
|
||||
|
||||
public decimal Prozent { get; set; }
|
||||
|
||||
public DateTime GueltigkeitVon { get; set; }
|
||||
|
||||
public DateTime GueltigkeitBis { get; set; }
|
||||
|
||||
}
|
||||
}
|
||||
|
BIN
src/y4f/wwwroot/assets/Point-Circle.png
Normal file
BIN
src/y4f/wwwroot/assets/Point-Circle.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 55 KiB |
@ -12,6 +12,7 @@
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Blazored.LocalStorage" Version="4.3.0" />
|
||||
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly" Version="7.0.1" />
|
||||
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.DevServer" Version="7.0.1" PrivateAssets="all" />
|
||||
</ItemGroup>
|
||||
|
Reference in New Issue
Block a user