diff options
author | Sergey Chebotar <s.chebotar@gmail.com> | 2021-12-26 18:22:32 +0300 |
---|---|---|
committer | Sergey Chebotar <s.chebotar@gmail.com> | 2021-12-26 18:22:32 +0300 |
commit | 54fc3320e7d64d7903b4d091fe0d5c15df01fd78 (patch) | |
tree | ac8b9aa1e883a85339a594b2797ab319cca73c4e /Source/AddIn/Functions.cs | |
parent | 20cfbfcca3a779c04aecdca5e4b465651e2be42a (diff) |
Move to /src
Diffstat (limited to 'Source/AddIn/Functions.cs')
-rw-r--r-- | Source/AddIn/Functions.cs | 56 |
1 files changed, 0 insertions, 56 deletions
diff --git a/Source/AddIn/Functions.cs b/Source/AddIn/Functions.cs deleted file mode 100644 index 618d17d..0000000 --- a/Source/AddIn/Functions.cs +++ /dev/null @@ -1,56 +0,0 @@ -using ExcelDna.Integration; -using RehauSku.Assistant; - -namespace RehauSku -{ - public class Functions - { - [ExcelFunction(description: "Получение названия первого продукта в поиске")] - public static object RAUNAME([ExcelArgument(Name = "\"Запрос\"", Description = "в свободной форме или ячейка с запросом")] string request) - => MakeRequest(request, ProductField.Name); - - [ExcelFunction(Description = "Получение артикула первого продукта в поиске")] - public static object RAUSKU([ExcelArgument(Name = "\"Запрос\"", Description = "в свободной форме или ячейка с запросом")] string request) - => MakeRequest(request, ProductField.Id); - - [ExcelFunction(Description = "Получение цены первого продукта в поиске")] - public static object RAUPRICE([ExcelArgument(Name = "\"Запрос\"", Description = "в свободной форме или ячейка с запросом")] string request) - => MakeRequest(request, ProductField.Price); - - private static object MakeRequest(string request, ProductField field) - { - object result; - - if (request.IsCached()) - result = request.GetFromCache(); - - else - { - result = ExcelAsyncUtil.Run("Request", request, delegate - { - return request.RequestAndCache().GetAwaiter().GetResult(); - }); - } - - if (result == null) - return "Не найдено :("; - - if (result.Equals(ExcelError.ExcelErrorNA)) - return "Загрузка..."; - - IProduct product = result as IProduct; - - switch (field) - { - case ProductField.Name: - return product.Name; - case ProductField.Id: - return product.Id; - case ProductField.Price: - return double.Parse(product.Price, System.Globalization.CultureInfo.InvariantCulture); - default: - return null; - } - } - } -}
\ No newline at end of file |