|
@@ -117,8 +117,8 @@ public class LogikalClient : IDisposable
|
|
|
{ LogikalMethod.Projects, typeof(LogikalProjectsResponse<LogikalProject>) },
|
|
|
{ LogikalMethod.Phases, typeof(LogikalPhasesResponse<LogikalPhase>) },
|
|
|
{ LogikalMethod.ElevationSummary, typeof(LogikalElevationSummaryResponse<LogikalElevationSummary>) },
|
|
|
- { LogikalMethod.ElevationDetail, typeof(LogikalElevationDetailResponse<LogikalElevationDetail,LogikalFinish,LogikalProfile,LogikalGasket,LogikalComponent, LogikalGlass, LogikalLabour>) },
|
|
|
- { LogikalMethod.BOM, typeof(LogikalBOMResponse<LogikalBOM,LogikalFinish,LogikalProfile,LogikalGasket,LogikalComponent, LogikalGlass, LogikalLabour>) },
|
|
|
+ { LogikalMethod.ElevationDetail, typeof(LogikalElevationDetailResponse<LogikalElevationDetail,LogikalProductGroup, LogikalFinish,LogikalProfile,LogikalGasket,LogikalComponent, LogikalGlass, LogikalLabour>) },
|
|
|
+ { LogikalMethod.BOM, typeof(LogikalBOMResponse<LogikalBOM,LogikalProductGroup, LogikalFinish,LogikalProfile,LogikalGasket,LogikalComponent, LogikalGlass, LogikalLabour>) },
|
|
|
{ LogikalMethod.Error, typeof(LogikalErrorResponse) },
|
|
|
};
|
|
|
|
|
@@ -487,6 +487,7 @@ public class LogikalClient : IDisposable
|
|
|
.Error(response => { })
|
|
|
.Success<LogikalBOMResponse<
|
|
|
LogikalBOM,
|
|
|
+ LogikalProductGroup,
|
|
|
LogikalFinish,
|
|
|
LogikalProfile,
|
|
|
LogikalGasket,
|
|
@@ -544,6 +545,7 @@ public class LogikalClient : IDisposable
|
|
|
_result = Send(_request)
|
|
|
.Success<LogikalElevationDetailResponse<
|
|
|
LogikalElevationDetail,
|
|
|
+ LogikalProductGroup,
|
|
|
LogikalFinish,
|
|
|
LogikalProfile,
|
|
|
LogikalGasket,
|
|
@@ -578,7 +580,7 @@ public class LogikalClient : IDisposable
|
|
|
: 1.0;
|
|
|
}
|
|
|
|
|
|
- private void ExtractBOMData(IEnumerable<ILogikalBOM<LogikalFinish,LogikalProfile,LogikalGasket,LogikalComponent,LogikalGlass,LogikalLabour>> elevations, bool optimised, bool includeexcel)
|
|
|
+ private void ExtractBOMData(IEnumerable<ILogikalBOM<LogikalProductGroup, LogikalFinish,LogikalProfile,LogikalGasket,LogikalComponent,LogikalGlass,LogikalLabour>> elevations, bool optimised, bool includeexcel)
|
|
|
{
|
|
|
foreach (var elevation in elevations)
|
|
|
{
|
|
@@ -592,6 +594,34 @@ public class LogikalClient : IDisposable
|
|
|
|
|
|
_connection.Open();
|
|
|
|
|
|
+ using (var _data = new SQLiteCommand(_connection))
|
|
|
+ {
|
|
|
+ _data.CommandText = LogikalProductGroup.SQL.Replace('\n', ' ');
|
|
|
+ try
|
|
|
+ {
|
|
|
+ using (var _reader = _data.ExecuteReader())
|
|
|
+ {
|
|
|
+ DataTable _dt = new DataTable();
|
|
|
+ _dt.Load(_reader);
|
|
|
+ List<LogikalProductGroup> _groups = new List<LogikalProductGroup>();
|
|
|
+ foreach (DataRow row in _dt.Rows)
|
|
|
+ {
|
|
|
+ var _group = new LogikalProductGroup();
|
|
|
+ _group.Code = CheckValue<string>(row[nameof(LogikalFinish.Code)]);
|
|
|
+ _group.Description = CheckValue<string>(row[nameof(LogikalFinish.Description)]);
|
|
|
+ _groups.Add(_group);
|
|
|
+ }
|
|
|
+
|
|
|
+ elevation.Groups = _groups;
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ catch (Exception e)
|
|
|
+ {
|
|
|
+ throw new Exception($"Error: {e.Message}\nQuery: {_data.CommandText}\nTrace: {e.StackTrace}");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
// Get Finishes
|
|
|
using (var _data = new SQLiteCommand(_connection))
|
|
|
{
|