From 5e0cdf885008648029beb01db70665944d6eddaf Mon Sep 17 00:00:00 2001 From: Geir Okkenhaug Jerstad Date: Wed, 8 Jan 2025 13:37:24 +0100 Subject: [PATCH] LagerSystem --- .../Lagerstyringssystem.sln | 16 ++++++++++++ .../Lagerstyringssystem/Elektronikk.cs | 13 ++++++++++ .../Lagerstyringssystem/IProdukt.cs | 9 +++++++ .../Lagerstyringssystem/Klær.cs | 13 ++++++++++ .../Lagerstyringssystem/Lager.cs | 25 +++++++++++++++++++ .../Lagerstyringssystem.csproj | 10 ++++++++ .../Lagerstyringssystem/Matvare.cs | 14 +++++++++++ .../Lagerstyringssystem/Program.cs | 3 +++ 8 files changed, 103 insertions(+) create mode 100644 Emne 3/Lagerstyringssystem/Lagerstyringssystem.sln create mode 100644 Emne 3/Lagerstyringssystem/Lagerstyringssystem/Elektronikk.cs create mode 100644 Emne 3/Lagerstyringssystem/Lagerstyringssystem/IProdukt.cs create mode 100644 Emne 3/Lagerstyringssystem/Lagerstyringssystem/Klær.cs create mode 100644 Emne 3/Lagerstyringssystem/Lagerstyringssystem/Lager.cs create mode 100644 Emne 3/Lagerstyringssystem/Lagerstyringssystem/Lagerstyringssystem.csproj create mode 100644 Emne 3/Lagerstyringssystem/Lagerstyringssystem/Matvare.cs create mode 100644 Emne 3/Lagerstyringssystem/Lagerstyringssystem/Program.cs diff --git a/Emne 3/Lagerstyringssystem/Lagerstyringssystem.sln b/Emne 3/Lagerstyringssystem/Lagerstyringssystem.sln new file mode 100644 index 0000000..bec8e54 --- /dev/null +++ b/Emne 3/Lagerstyringssystem/Lagerstyringssystem.sln @@ -0,0 +1,16 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lagerstyringssystem", "Lagerstyringssystem\Lagerstyringssystem.csproj", "{A3AEB290-4543-4552-BF61-7AEB4C95A6F1}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {A3AEB290-4543-4552-BF61-7AEB4C95A6F1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A3AEB290-4543-4552-BF61-7AEB4C95A6F1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A3AEB290-4543-4552-BF61-7AEB4C95A6F1}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A3AEB290-4543-4552-BF61-7AEB4C95A6F1}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection +EndGlobal diff --git a/Emne 3/Lagerstyringssystem/Lagerstyringssystem/Elektronikk.cs b/Emne 3/Lagerstyringssystem/Lagerstyringssystem/Elektronikk.cs new file mode 100644 index 0000000..ce6bdf9 --- /dev/null +++ b/Emne 3/Lagerstyringssystem/Lagerstyringssystem/Elektronikk.cs @@ -0,0 +1,13 @@ +namespace Lagerstyringssystem; + +public class Elektronikk: IProdukt +{ + public string Navn { get; set; } + public double Pris { get; set; } + int Garantitid { get; set; } + + + public void SkrivUtInfo() { + Console.WriteLine($"Navn: {Navn}\nPris: {Pris}\nGarantitid: {Garantitid}"); + } +} \ No newline at end of file diff --git a/Emne 3/Lagerstyringssystem/Lagerstyringssystem/IProdukt.cs b/Emne 3/Lagerstyringssystem/Lagerstyringssystem/IProdukt.cs new file mode 100644 index 0000000..b5d7232 --- /dev/null +++ b/Emne 3/Lagerstyringssystem/Lagerstyringssystem/IProdukt.cs @@ -0,0 +1,9 @@ +namespace Lagerstyringssystem; + +public interface IProdukt +{ + string Navn { get; set; } + double Pris { get; set; } + + void SkrivUtInfo(); +} \ No newline at end of file diff --git a/Emne 3/Lagerstyringssystem/Lagerstyringssystem/Klær.cs b/Emne 3/Lagerstyringssystem/Lagerstyringssystem/Klær.cs new file mode 100644 index 0000000..2f4b8b5 --- /dev/null +++ b/Emne 3/Lagerstyringssystem/Lagerstyringssystem/Klær.cs @@ -0,0 +1,13 @@ +namespace Lagerstyringssystem; + +public class Klær: IProdukt +{ + public string Navn { get; set; } + public double Pris { get; set; } + public string Størrelse { get; set; } + + public void SkrivUtInfo() + { + throw new NotImplementedException(); + } +} \ No newline at end of file diff --git a/Emne 3/Lagerstyringssystem/Lagerstyringssystem/Lager.cs b/Emne 3/Lagerstyringssystem/Lagerstyringssystem/Lager.cs new file mode 100644 index 0000000..09f7c80 --- /dev/null +++ b/Emne 3/Lagerstyringssystem/Lagerstyringssystem/Lager.cs @@ -0,0 +1,25 @@ +namespace Lagerstyringssystem; + +public class Lager +{ + List Inventar { get; set; } + + void Add(IProdukt produkt) + { + Inventar.Add(produkt); + } + + void Remove(IProdukt produkt) + { + Inventar.Remove(produkt); + } + + void ListAll(List inventar) + { + foreach (IProdukt produkt in inventar) + { + produkt.SkrivUtInfo(); + } + } + +} \ No newline at end of file diff --git a/Emne 3/Lagerstyringssystem/Lagerstyringssystem/Lagerstyringssystem.csproj b/Emne 3/Lagerstyringssystem/Lagerstyringssystem/Lagerstyringssystem.csproj new file mode 100644 index 0000000..2f4fc77 --- /dev/null +++ b/Emne 3/Lagerstyringssystem/Lagerstyringssystem/Lagerstyringssystem.csproj @@ -0,0 +1,10 @@ + + + + Exe + net8.0 + enable + enable + + + diff --git a/Emne 3/Lagerstyringssystem/Lagerstyringssystem/Matvare.cs b/Emne 3/Lagerstyringssystem/Lagerstyringssystem/Matvare.cs new file mode 100644 index 0000000..21bbecb --- /dev/null +++ b/Emne 3/Lagerstyringssystem/Lagerstyringssystem/Matvare.cs @@ -0,0 +1,14 @@ +namespace Lagerstyringssystem; + +public class Matvare: IProdukt +{ + public string Navn { get; set; } + + public double Pris { get; set; } + public DateTime Utløpsdato { get; set; } + + public void SkrivUtInfo() + { + throw new NotImplementedException(); + } +} \ No newline at end of file diff --git a/Emne 3/Lagerstyringssystem/Lagerstyringssystem/Program.cs b/Emne 3/Lagerstyringssystem/Lagerstyringssystem/Program.cs new file mode 100644 index 0000000..e5dff12 --- /dev/null +++ b/Emne 3/Lagerstyringssystem/Lagerstyringssystem/Program.cs @@ -0,0 +1,3 @@ +// See https://aka.ms/new-console-template for more information + +Console.WriteLine("Hello, World!"); \ No newline at end of file