From 2c44c5d2df75edd0d6f032612d6ecba5cf7450a1 Mon Sep 17 00:00:00 2001 From: Sergey Chebotar Date: Tue, 20 Jun 2023 11:50:11 +0300 Subject: [PATCH] Add Sleeves Calculator service --- RhSolutions.AddIn/AddIn/RhSolutionsAddIn.cs | 1 + RhSolutions.AddIn/Services/ISleevesCaluculator.cs | 6 ++++++ RhSolutions.AddIn/Services/SleevesCalculator.cs | 13 +++++++++++++ 3 files changed, 20 insertions(+) create mode 100644 RhSolutions.AddIn/Services/ISleevesCaluculator.cs create mode 100644 RhSolutions.AddIn/Services/SleevesCalculator.cs diff --git a/RhSolutions.AddIn/AddIn/RhSolutionsAddIn.cs b/RhSolutions.AddIn/AddIn/RhSolutionsAddIn.cs index b0ad869..6bb1b25 100644 --- a/RhSolutions.AddIn/AddIn/RhSolutionsAddIn.cs +++ b/RhSolutions.AddIn/AddIn/RhSolutionsAddIn.cs @@ -25,6 +25,7 @@ public sealed class RhSolutionsAddIn : IExcelAddIn .AddSingleton() .AddSingleton() .AddSingleton() + .AddSingleton() .AddTransient(); Services.AddSingleton(); diff --git a/RhSolutions.AddIn/Services/ISleevesCaluculator.cs b/RhSolutions.AddIn/Services/ISleevesCaluculator.cs new file mode 100644 index 0000000..371427f --- /dev/null +++ b/RhSolutions.AddIn/Services/ISleevesCaluculator.cs @@ -0,0 +1,6 @@ +namespace RhSolutions.Services; + +public interface ISleevesCaluculator +{ + public Dictionary CalculateSleeves(Dictionary products); +} diff --git a/RhSolutions.AddIn/Services/SleevesCalculator.cs b/RhSolutions.AddIn/Services/SleevesCalculator.cs new file mode 100644 index 0000000..0c58f35 --- /dev/null +++ b/RhSolutions.AddIn/Services/SleevesCalculator.cs @@ -0,0 +1,13 @@ +namespace RhSolutions.Services; + +public class SleevesCalculator : ISleevesCaluculator +{ + public Dictionary CalculateSleeves(Dictionary products) + { + int counter = products.Where(kvp => kvp.Key.ProductLines.Contains("RAUTITAN")).Count(); + return new Dictionary() + { + [new Product("11600011001")] = counter + }; + } +}