diff --git a/Rehau.Sku.Assist.csproj b/Rehau.Sku.Assist.csproj
index 880105e..2cbcf0f 100644
--- a/Rehau.Sku.Assist.csproj
+++ b/Rehau.Sku.Assist.csproj
@@ -96,6 +96,7 @@
+
diff --git a/Rehau.Sku.Assist.sln b/Rehau.Sku.Assist.sln
index 903220b..68aa4f5 100644
--- a/Rehau.Sku.Assist.sln
+++ b/Rehau.Sku.Assist.sln
@@ -5,6 +5,8 @@ VisualStudioVersion = 16.0.31829.152
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Rehau.Sku.Assist", "Rehau.Sku.Assist.csproj", "{18A2FF67-0E46-4A86-B872-29F2B3F23ADF}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Rehau.Sku.Testing", "..\Rehau.Sku.Testing\Rehau.Sku.Testing.csproj", "{3D257D07-0D29-4B5E-82E4-B341769E1B3F}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -15,6 +17,10 @@ Global
{18A2FF67-0E46-4A86-B872-29F2B3F23ADF}.Debug|Any CPU.Build.0 = Debug|Any CPU
{18A2FF67-0E46-4A86-B872-29F2B3F23ADF}.Release|Any CPU.ActiveCfg = Release|Any CPU
{18A2FF67-0E46-4A86-B872-29F2B3F23ADF}.Release|Any CPU.Build.0 = Release|Any CPU
+ {3D257D07-0D29-4B5E-82E4-B341769E1B3F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {3D257D07-0D29-4B5E-82E4-B341769E1B3F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {3D257D07-0D29-4B5E-82E4-B341769E1B3F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {3D257D07-0D29-4B5E-82E4-B341769E1B3F}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/Source/Assistant/HttpClientUtil.cs b/Source/Assistant/HttpClientUtil.cs
index 6eb0b69..2d439ea 100644
--- a/Source/Assistant/HttpClientUtil.cs
+++ b/Source/Assistant/HttpClientUtil.cs
@@ -4,7 +4,6 @@ using System;
using System.Net;
using System.Net.Http;
using System.Threading.Tasks;
-using System.Text;
namespace Rehau.Sku.Assist
{
@@ -35,7 +34,7 @@ namespace Rehau.Sku.Assist
UriBuilder baseUri = new UriBuilder("https", "shop-rehau.ru");
baseUri.Path = "/catalogsearch/result/index/";
- string cleanedRequest = request._CleanRequest();
+ string cleanedRequest = request.CleanRequest();
switch (AddIn.responseOrder)
{
@@ -58,16 +57,5 @@ namespace Rehau.Sku.Assist
return baseUri.Uri;
}
-
- private static string _CleanRequest(this string input)
- {
- return new StringBuilder(input)
- .Replace("+", " plus ")
- .Replace("РХ", "")
- .Replace("º", " ")
- .Replace(".", " ")
- .Replace("Ø", " ")
- .ToString();
- }
}
}
\ No newline at end of file
diff --git a/Source/Assistant/RequestModifier.cs b/Source/Assistant/RequestModifier.cs
new file mode 100644
index 0000000..28f5775
--- /dev/null
+++ b/Source/Assistant/RequestModifier.cs
@@ -0,0 +1,60 @@
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Text.RegularExpressions;
+
+namespace Rehau.Sku.Assist
+{
+ public static class RequestModifier
+ {
+ public static string CleanRequest(this string input)
+ {
+ string replace = new StringBuilder(input)
+ .Replace("+", " plus ")
+ .Replace("РХ", "")
+ .Replace("º", " ")
+ .Replace(".", " ")
+ .Replace("Ø", " ")
+ .ToString();
+
+ return replace._tPiece();
+ }
+
+ private static string _tPiece(this string line)
+ {
+ if (!line.ToLower().Contains("тройник"))
+ return line;
+
+ string m = Regex.Match(line, @"\d{2}.\d{2}.\d{2}").Value;
+
+ int endFaceA = int.Parse($"{m[0]}{m[1]}");
+ int side = int.Parse($"{m[3]}{m[4]}");
+ int endFaceB = int.Parse($"{m[6]}{m[7]}");
+
+ int[] endFaces = new[] { endFaceA, endFaceB };
+
+ List additions = new List();
+
+ if (endFaces.All(x => x < side))
+ additions.Add("увеличенный боковой");
+
+ else
+ {
+ if (new[] { endFaceA, endFaceB, side }.Distinct().Count() == 1)
+ additions.Add("равнопроходной");
+ else
+ additions.Add("уменьшенный");
+
+ if (endFaces.Any(x => x > side))
+ additions.Add("боковой");
+ if (endFaceA != endFaceB)
+ additions.Add("торцевой");
+ }
+
+ string piece = $" {endFaces.Max()}-{side}-{endFaces.Min()} ";
+ string replace = string.Join(" ", additions) + piece;
+
+ return line.Replace(m, replace);
+ }
+ }
+}
\ No newline at end of file
diff --git a/Source/DataExport/DataWriter.cs b/Source/DataExport/DataWriter.cs
index 7095577..30a3e83 100644
--- a/Source/DataExport/DataWriter.cs
+++ b/Source/DataExport/DataWriter.cs
@@ -2,6 +2,7 @@
using Microsoft.Office.Interop.Excel;
using System;
using System.Collections.Generic;
+using System.IO;
namespace Rehau.Sku.Assist
{
@@ -10,12 +11,12 @@ namespace Rehau.Sku.Assist
private Application xlApp;
private Dictionary SkuAmount { get; set; }
private object[,] SelectedCells { get; set; }
- private string ExportFileName { get; set; }
+ private string WorkingFileName { get; set; }
public DataWriter()
{
this.xlApp = (Application)ExcelDnaUtil.Application;
- this.ExportFileName = AddIn.priceListPath;
+ this.WorkingFileName = xlApp.ActiveWorkbook.FullName;
GetSelectedCells();
}
@@ -71,25 +72,31 @@ namespace Rehau.Sku.Assist
}
}
- public void FillPriceList()
- {
- Workbook wb = xlApp.Workbooks.Open(ExportFileName);
- Worksheet ws = wb.ActiveSheet;
+ //public void FillPriceList()
+ //{
+ // string exportFileName = "rehau-export_" + DateTime.Now + ".xlsm";
+ // string workingDir = xlApp.ActiveWorkbook.Path;
- Range amountCell = ws.Cells.Find("Кол-во");
+ // //File.Copy(Path.GetFullPath(PriceListFilePath), Path.Combine(WorkingFileName, exportFileName + ".xlsm"));
- foreach (KeyValuePair kvp in SkuAmount)
- {
- Range cell = ws.Cells.Find(kvp.Key);
- ws.Cells[cell.Row, amountCell.Column].Value = kvp.Value;
- }
- //Range filter = ws.Cells[amountCell.Row + 1, amountCell.Column];
- //filter.AutoFilter(1, "<>");
+ // Workbook wb = xlApp.Workbooks.Open(PriceListFilePath);
+ // Worksheet ws = wb.ActiveSheet;
- wb.Save();
- wb.Close();
- }
+ // Range amountCell = ws.Cells.Find("Кол-во");
+
+ // foreach (KeyValuePair kvp in SkuAmount)
+ // {
+ // Range cell = ws.Cells.Find(kvp.Key);
+ // ws.Cells[cell.Row, amountCell.Column].Value = kvp.Value;
+ // }
+
+ // //Range filter = ws.Range["H16:H4058"];
+ // ws.Cells.AutoFilter(7, "<>");
+
+ // //wb.Save();
+ // //wb.Close();
+ //}
public void Dispose()
{
diff --git a/Source/DataExport/RibbonController.cs b/Source/DataExport/RibbonController.cs
index 3ae9099..5c4045a 100644
--- a/Source/DataExport/RibbonController.cs
+++ b/Source/DataExport/RibbonController.cs
@@ -37,7 +37,7 @@ namespace Ribbon
else
{
dw.FillSkuAmountDict();
- dw.FillPriceList();
+ //dw.FillPriceList();
}
}
}