aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio
diff options
context:
space:
mode:
authorVictoria Plitt <Victoria.Plitt@twine-s.com>2022-09-15 13:26:17 +0300
committerVictoria Plitt <Victoria.Plitt@twine-s.com>2022-09-15 13:26:17 +0300
commite2b0b25d6e0d307c154e478caad42c25dad9eabd (patch)
treec118b162f4562647be2df54da2ada21b3100e0c8 /Software/Visual_Studio
parent012d0255d261fb6ddacbce7cb4ef007786e91dff (diff)
downloadTango-e2b0b25d6e0d307c154e478caad42c25dad9eabd.tar.gz
Tango-e2b0b25d6e0d307c154e478caad42c25dad9eabd.zip
MS. Performance when open RML extensions. Bug during delete tab - remove objects before save.
Related Work Items: #7357
Diffstat (limited to 'Software/Visual_Studio')
-rw-r--r--Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/MainViewVM.cs21
-rw-r--r--Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/TestResultsViewVM.cs32
-rw-r--r--Software/Visual_Studio/Tango.BL/Builders/RMLExtensionTestResultsCollectionBuilder.cs64
-rw-r--r--Software/Visual_Studio/Tango.BL/Builders/machinesCollectionBuilder.cs21
4 files changed, 67 insertions, 71 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/MainViewVM.cs b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/MainViewVM.cs
index 458bc913a..686d95ccc 100644
--- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/MainViewVM.cs
+++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/MainViewVM.cs
@@ -992,16 +992,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels
YarnTypes = _active_context.YarnTypes.ToObservableCollection();
IndustrySector = _active_context.YarnIndustrysectors.ToObservableCollection();
- var machines = new MachinesCollectionBuilder(_active_context).SetAll().WithConfiguration().Build();
- Machines = machines.Select(x => new MachineModel()
- {
- Guid = x.Guid,
- Name = x.Name,
- SerialNumber = x.SerialNumber,
- IdsPacks = x.Configuration.IdsPacks.Where(z => !z.IsEmpty),
- LastUpdated = x.LastUpdated,
- HasRMLTest = false
- }).ToObservableCollection();
+
}
@@ -1058,6 +1049,16 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels
_active_context = ObservablesContext.CreateDefault();
LoadRmlProperties();
+ var machines = await new MachinesCollectionBuilder(_active_context).SetAll().WithConfiguration().BuildListAsync();
+ Machines = machines.Select(x => new MachineModel()
+ {
+ Guid = x.Guid,
+ Name = x.Name,
+ SerialNumber = x.SerialNumber,
+ IdsPacks = x.Configuration.IdsPacks.Where(z => !z.IsEmpty),
+ LastUpdated = x.LastUpdated,
+ HasRMLTest = false
+ }).ToObservableCollection();
if (guid == null)
{
diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/TestResultsViewVM.cs b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/TestResultsViewVM.cs
index ba7ae7238..c63a34394 100644
--- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/TestResultsViewVM.cs
+++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/TestResultsViewVM.cs
@@ -198,9 +198,13 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels
_active_context.TensileResults.RemoveRange(tab.TestResult.TensileResults);
tab.TestResult.TensileResults = null;
-
+
+ _active_context.RmlExtensionTestWashingResults.RemoveRange(tab.TestResult.RmlExtensionTestWashingResults);
+ tab.TestResult.RmlExtensionTestWashingResults = null;
+
_active_context.RmlExtensionTestResults.Remove(tab.TestResult);
+
ResultTabs.Remove(tab);
SelectedTab = ResultTabs.LastOrDefault();
_active_context.SaveChanges();
@@ -211,7 +215,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels
/// <summary>
/// Adds a new tab.
/// </summary>
- private bool AddNewTab(String name = null)
+ private bool AddNewTab(String name = null)
{
if (ResultTabs.Count > 7)
{
@@ -226,11 +230,21 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels
if (!String.IsNullOrWhiteSpace(name))
{
- var tab = CreateNewTestResultVM(name, (ResultTabs.Count + 1));
- ResultTabs.Add(tab);
- _active_context.RmlExtensionTestResults.Add(tab.TestResult);
- SelectedTab = tab;
- return true;
+ try
+ {
+ var tab = CreateNewTestResultVM(name, (ResultTabs.Count + 1));
+ ResultTabs.Add(tab);
+ _active_context.RmlExtensionTestResults.Add(tab.TestResult);
+ _active_context.SaveChanges();
+ SelectedTab = ResultTabs.FirstOrDefault(x=> x.TestResult.Guid == tab.TestResult.Guid);
+
+ return true;
+ }
+ catch(Exception ex)
+ {
+ LogManager.Log(ex, $"Error add new Tab TestResults.\n{ex.FlattenMessage()}");
+ return false;
+ }
}
else
{
@@ -472,7 +486,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels
try
{
IsFree = false;
- await Task.Factory.StartNew(() =>
+ await Task.Run(() =>
{
foreach (var tab in ResultTabs)
{
@@ -482,7 +496,7 @@ namespace Tango.MachineStudio.ThreadExtensions.ViewModels
_active_context.SaveChanges();
});
- // LoadTestResults();
+ //LoadTestResults();
}
catch (Exception ex)
{
diff --git a/Software/Visual_Studio/Tango.BL/Builders/RMLExtensionTestResultsCollectionBuilder.cs b/Software/Visual_Studio/Tango.BL/Builders/RMLExtensionTestResultsCollectionBuilder.cs
index a9aabdbdd..8accb9a90 100644
--- a/Software/Visual_Studio/Tango.BL/Builders/RMLExtensionTestResultsCollectionBuilder.cs
+++ b/Software/Visual_Studio/Tango.BL/Builders/RMLExtensionTestResultsCollectionBuilder.cs
@@ -15,27 +15,6 @@ namespace Tango.BL.Builders
{
}
- public virtual RMLExtensionTestResultsCollectionBuilder WithRubbingAndTensileResults()
- {
- return AddStep(2, () =>
- {
- foreach (var result in Entities.ToList())
- {
- Context.RubbingResults.Where(x => x.RmlExtensionTestResultsGuid == result.Guid).OrderBy(x => x.Color).ToList();
- Context.TensileResults.Where(x => x.RmlExtensionTestResultsGuid == result.Guid).OrderByDescending(i => i.ColorPercent.HasValue).ThenBy(x => x.ColorPercent).ThenByDescending(x => x.Color).ToList();
- }
- });
- }
- public virtual RMLExtensionTestResultsCollectionBuilder WithTestResultsFiles()
- {
- return AddStep(3, () =>
- {
- foreach (var result in Entities.ToList())
- {
- Context.RmlExtensionTestResultsFiles.Where(x => x.RmlExtensionTestResultsGuid == result.Guid).OrderBy(x => x.FileName).ToList();
- }
- });
- }
public virtual RMLExtensionTestResultsCollectionBuilder ForRMLExtension(String rmlExtensionGUID)
{
return AddQueryStep(0, (query) =>
@@ -50,6 +29,7 @@ namespace Tango.BL.Builders
}
});
}
+
public virtual RMLExtensionTestResultsCollectionBuilder ForMachine(String machineGUID)
{
return AddQueryStep(1, (query) =>
@@ -65,9 +45,23 @@ namespace Tango.BL.Builders
});
}
+ public virtual RMLExtensionTestResultsCollectionBuilder WithRubbingAndTensileResults()
+ {
+ return AddQueryStep(2, (query) =>
+ {
+ return query.Include(x => x.RubbingResults).Include(x => x.TensileResults); ;
+ });
+
+ }
+
public virtual RMLExtensionTestResultsCollectionBuilder WithWashingTestResults()
{
- return AddStep(4, () =>
+ return AddQueryStep(3, (query) =>
+ {
+ return query.Include(x => x.RmlExtensionTestWashingResults);//.Include(x => x.RmlExtensionTestWashingResults.WashingTestMaterials);
+ });
+
+ /* return AddStep(4, () =>
{
foreach (var result in Entities.ToList())
{
@@ -78,30 +72,30 @@ namespace Tango.BL.Builders
}
}
- });
+ });*/
}
public virtual RMLExtensionTestResultsCollectionBuilder WithBtsrApplicationTypes()
{
- return AddStep(5, () =>
+ return AddQueryStep(4, (query) =>
{
- foreach (var result in Entities.ToList())
- {
- if(!String.IsNullOrEmpty(result.BtsrApplicationTypeGuid))
- result.BtsrApplicationType = Context.BtsrApplicationTypes.FirstOrDefault(x => x.Guid == result.BtsrApplicationTypeGuid);
- }
+ return query.Include(x => x.BtsrApplicationType) ;
});
}
public virtual RMLExtensionTestResultsCollectionBuilder WithBtsrYarnTypes()
{
- return AddStep(6, () =>
+ return AddQueryStep(5, (query) =>
{
- foreach (var result in Entities.ToList())
- {
- if (!String.IsNullOrEmpty(result.BtsrYarnTypeGuid))
- result.BtsrYarnType = Context.BtsrYarnTypes.FirstOrDefault(x => x.Guid == result.BtsrYarnTypeGuid);
- }
+ return query.Include(x => x.BtsrYarnType);
+ });
+ }
+
+ public virtual RMLExtensionTestResultsCollectionBuilder WithTestResultsFiles()
+ {
+ return AddQueryStep(6, (query) =>
+ {
+ return query.Include(x => x.RmlExtensionTestResultsFiles);
});
}
}
diff --git a/Software/Visual_Studio/Tango.BL/Builders/machinesCollectionBuilder.cs b/Software/Visual_Studio/Tango.BL/Builders/machinesCollectionBuilder.cs
index 25ca3e8f3..38d31feea 100644
--- a/Software/Visual_Studio/Tango.BL/Builders/machinesCollectionBuilder.cs
+++ b/Software/Visual_Studio/Tango.BL/Builders/machinesCollectionBuilder.cs
@@ -21,34 +21,21 @@ namespace Tango.BL.Builders
{
return query.Include(x => x.MachineVersion);
});
-
}
public virtual MachinesCollectionBuilder WithOrganization()
{
- return AddStep(2, () =>
+ return AddQueryStep(2, (query) =>
{
- foreach (var machine in Entities.ToList())
- {
- Context.Organizations.Where(x => x.Guid == machine.OrganizationGuid)
- .Include(x => x.Address)
- .Include(x => x.Contact).FirstOrDefault();
- }
+ return query.Include(x => x.Organization);
});
}
public virtual MachinesCollectionBuilder WithConfiguration()
{
- return AddStep(3, () =>
+ return AddQueryStep(3, (query) =>
{
- foreach (var machine in Entities.ToList())
- {
- new ConfigurationBuilder(Context)
- .Set(machine.ConfigurationGuid)
- .WithIdsPacks()
- .WithHardwareVersion()
- .Build();
- }
+ return query.Include(x => x.Configuration).Include(x => x.Configuration.IdsPacks);
});
}
}