From 0fc7d826a88eb0840195773a9feed2a3b1609c85 Mon Sep 17 00:00:00 2001 From: Emmanuele Sassi Date: Thu, 27 Jul 2023 12:45:16 +0200 Subject: [PATCH] Modifiche per campo Description --- .../OpenProjectFileDialogV.xaml | 10 +++- .../OpenProjectFileDialogVM.vb | 5 ++ .../OpenProjectFileDialogVM.vb | 50 +++++++++++++--- .../Utility/Dictionary.xaml | 14 +++++ .../OpenProjectFileDialogVM.vb | 57 ++++++++++--------- .../ProjectFileVM/ProjFileVM.vb | 2 +- 6 files changed, 99 insertions(+), 39 deletions(-) diff --git a/EgtBEAMWALL.Core/OpenProjectFileDialog/OpenProjectFileDialogV.xaml b/EgtBEAMWALL.Core/OpenProjectFileDialog/OpenProjectFileDialogV.xaml index eca28990..b460f1a7 100644 --- a/EgtBEAMWALL.Core/OpenProjectFileDialog/OpenProjectFileDialogV.xaml +++ b/EgtBEAMWALL.Core/OpenProjectFileDialog/OpenProjectFileDialogV.xaml @@ -148,8 +148,16 @@ + + + + + + + + - + diff --git a/EgtBEAMWALL.Core/OpenProjectFileDialog/OpenProjectFileDialogVM.vb b/EgtBEAMWALL.Core/OpenProjectFileDialog/OpenProjectFileDialogVM.vb index dcc32dc0..16a3b2ff 100644 --- a/EgtBEAMWALL.Core/OpenProjectFileDialog/OpenProjectFileDialogVM.vb +++ b/EgtBEAMWALL.Core/OpenProjectFileDialog/OpenProjectFileDialogVM.vb @@ -302,6 +302,11 @@ Public MustInherit Class OpenProjectFileDialogVM #Region "Messages" + Public ReadOnly Property Title As String + Get + Return "Open Project" + End Get + End Property Public ReadOnly Property FilterType_Msg As String Get Return EgtMsg(61836) diff --git a/EgtBEAMWALL.Supervisor/OpenProjectFileDialog/OpenProjectFileDialogVM.vb b/EgtBEAMWALL.Supervisor/OpenProjectFileDialog/OpenProjectFileDialogVM.vb index 754b9022..a2208cce 100644 --- a/EgtBEAMWALL.Supervisor/OpenProjectFileDialog/OpenProjectFileDialogVM.vb +++ b/EgtBEAMWALL.Supervisor/OpenProjectFileDialog/OpenProjectFileDialogVM.vb @@ -12,19 +12,12 @@ Public Class OpenProjectFileDialogVM Public Overrides Function Init(ProjectType As ProjectType, Optional CurrProjectList As List(Of ProjectFileVM) = Nothing, Optional GoToProd As Boolean = False) As Boolean? m_ProjectType = ProjectType ' carico colonne - LoadColumns(ProjectType) + LoadColumns(m_ProjectType) NotifyPropertyChanged(NameOf(FilterTypeList)) m_SelFilterType = m_FilterTypeList(0) ' carico lista progetti If IsNothing(CurrProjectList) OrElse CurrProjectList.Count = 0 Then - ' leggo da db - If ProjectType = ProjectType.PROD Then - Dim DbProjectList As New List(Of ProdFileM) - DbProjectList = DbControllers.m_ProdController.GetLastDesc(50, False) - For Each Project In DbProjectList - m_ProjectList.Add(New ProdFileVM(Project)) - Next - End If + RefreshProjectList(GoToProd) Else m_ProjectList = New ObservableCollection(Of ProjectFileVM)(CurrProjectList) NotifyPropertyChanged(NameOf(ProjectList)) @@ -33,6 +26,45 @@ Public Class OpenProjectFileDialogVM m_ProjectList_View.Filter = AddressOf ProjectFilter End Function + Public Overrides Sub RefreshProjectList(Optional GoToProd As Boolean = False) + m_ProjectList.Clear() + ' calcolo periodo e righe + Dim dtStart As DateTime + Dim dtEnd As DateTime + Dim nRowQuantity As Integer = 20 + Select Case SelRowQuantity + Case RowQuantities.FIFTY + nRowQuantity = 50 + Case RowQuantities.HUNDRED + nRowQuantity = 100 + Case RowQuantities.HUNDREDANDFIFTY + nRowQuantity = 150 + End Select + Select Case m_SelDayType + Case DayTypes.LASTMONTH + dtEnd = DateTime.Today + TimeSpan.FromDays(1) + dtStart = dtEnd - TimeSpan.FromDays(31) + Case DayTypes.LAST3MONTHS + dtEnd = DateTime.Today + TimeSpan.FromDays(1) + dtStart = dtEnd - TimeSpan.FromDays(31 * 3) + Case DayTypes.LAST6MONTHS + dtEnd = DateTime.Today + TimeSpan.FromDays(1) + dtStart = dtEnd - TimeSpan.FromDays(31 * 6) + Case DayTypes.PERIOD + dtStart = dtStartDate + TimeSpan.FromDays(1) + dtEnd = dtEndDate + End Select + ' leggo da db + If m_ProjectType = ProjectType.PROD Then + Dim DbProjectList As New List(Of ProdFileM) + DbProjectList = DbControllers.m_ProdController.GetLastDesc(dtStart, dtEnd, nRowQuantity, True) + For Each Project In DbProjectList + m_ProjectList.Add(New ProdFileVM(Project)) + Next + End If + + End Sub + #End Region ' METHODS End Class diff --git a/EgtBEAMWALL.Supervisor/Utility/Dictionary.xaml b/EgtBEAMWALL.Supervisor/Utility/Dictionary.xaml index 1777c305..1e76bd26 100644 --- a/EgtBEAMWALL.Supervisor/Utility/Dictionary.xaml +++ b/EgtBEAMWALL.Supervisor/Utility/Dictionary.xaml @@ -348,6 +348,11 @@ + + @@ -733,5 +738,14 @@ + + + + + + diff --git a/EgtBEAMWALL.ViewerOptimizer/OpenProjectFileDialog/OpenProjectFileDialogVM.vb b/EgtBEAMWALL.ViewerOptimizer/OpenProjectFileDialog/OpenProjectFileDialogVM.vb index 32dbe05b..48b92f9d 100644 --- a/EgtBEAMWALL.ViewerOptimizer/OpenProjectFileDialog/OpenProjectFileDialogVM.vb +++ b/EgtBEAMWALL.ViewerOptimizer/OpenProjectFileDialog/OpenProjectFileDialogVM.vb @@ -29,39 +29,40 @@ Public Class OpenProjectFileDialogVM Public Overrides Sub RefreshProjectList(Optional GoToProd As Boolean = False) m_ProjectList.Clear() + ' calcolo periodo e righe + Dim dtStart As DateTime + Dim dtEnd As DateTime + Dim nRowQuantity As Integer = 20 + Select Case SelRowQuantity + Case RowQuantities.FIFTY + nRowQuantity = 50 + Case RowQuantities.HUNDRED + nRowQuantity = 100 + Case RowQuantities.HUNDREDANDFIFTY + nRowQuantity = 150 + End Select + Select Case m_SelDayType + Case DayTypes.LASTMONTH + dtEnd = DateTime.Today + TimeSpan.FromDays(1) + dtStart = dtEnd - TimeSpan.FromDays(31) + Case DayTypes.LAST3MONTHS + dtEnd = DateTime.Today + TimeSpan.FromDays(1) + dtStart = dtEnd - TimeSpan.FromDays(31 * 3) + Case DayTypes.LAST6MONTHS + dtEnd = DateTime.Today + TimeSpan.FromDays(1) + dtStart = dtEnd - TimeSpan.FromDays(31 * 6) + Case DayTypes.PERIOD + dtStart = dtStartDate + TimeSpan.FromDays(1) + dtEnd = dtEndDate + End Select ' leggo da db If m_ProjectType = ProjectType.PROJ Then Dim DbProjectList As New List(Of ProjFileM) ' CheckMe: lasciato come prima, anche NON attivi (cancellazione logica) - Dim dtStart As DateTime - Dim dtEnd As DateTime - Dim nRowQuantity As Integer = 20 - Select Case SelRowQuantity - Case RowQuantities.FIFTY - nRowQuantity = 50 - Case RowQuantities.HUNDRED - nRowQuantity = 100 - Case RowQuantities.HUNDREDANDFIFTY - nRowQuantity = 150 - End Select - Select Case m_SelDayType - Case DayTypes.LASTMONTH - dtEnd = DateTime.Today + TimeSpan.FromDays(1) - dtStart = dtEnd - TimeSpan.FromDays(31) - Case DayTypes.LAST3MONTHS - dtEnd = DateTime.Today + TimeSpan.FromDays(1) - dtStart = dtEnd - TimeSpan.FromDays(31 * 3) - Case DayTypes.LAST6MONTHS - dtEnd = DateTime.Today + TimeSpan.FromDays(1) - dtStart = dtEnd - TimeSpan.FromDays(31 * 6) - Case DayTypes.PERIOD - dtStart = dtStartDate + TimeSpan.FromDays(1) - dtEnd = dtEndDate - End Select If m_SelBTLDateType = BTLDateTypes.CREATEDATE Then DbProjectList = DbControllers.m_ProjController.GetLastDesc(dtStart, dtEnd, nRowQuantity, True) Else - 'DbProjectList = DbControllers.m_ProjController.(dtStart, dtEnd, nRowQuantity, False) + DbProjectList = DbControllers.m_ProjController.GetLastByExpDesc(dtStart, dtEnd, nRowQuantity, False) End If For Each Project In DbProjectList ' recupero path per verificare esista @@ -77,7 +78,7 @@ Public Class OpenProjectFileDialogVM Next ElseIf m_ProjectType = ProjectType.PROD Then Dim DbProjectList As New List(Of ProdFileM) - DbProjectList = DbControllers.m_ProdController.GetLastDesc(5000) + DbProjectList = DbControllers.m_ProdController.GetLastDesc(dtStart, dtEnd, nRowQuantity, True) If GoToProd Then For Each Project In DbProjectList ' recupero path per verificare esista @@ -216,7 +217,7 @@ Public Class OpenProjectFileDialogVM ' aggiorno lista progetti m_ProjectList.Clear() Dim DbProjectList As New List(Of ProdFileM) - DbProjectList = DbControllers.m_ProdController.GetLastDesc(50) + DbProjectList = DbControllers.m_ProdController.GetLastDesc(50, False) For Each Project In DbProjectList m_ProjectList.Add(New ProdFileVM(Project)) Next diff --git a/EgtBEAMWALL.ViewerOptimizer/ProjectFileVM/ProjFileVM.vb b/EgtBEAMWALL.ViewerOptimizer/ProjectFileVM/ProjFileVM.vb index c29f6baa..68cc9840 100644 --- a/EgtBEAMWALL.ViewerOptimizer/ProjectFileVM/ProjFileVM.vb +++ b/EgtBEAMWALL.ViewerOptimizer/ProjectFileVM/ProjFileVM.vb @@ -16,7 +16,7 @@ Public Class ProjFileVM Sub New(ProjectFileM As ProjFileM) MyBase.New(ProjectFileM) ' verifico valore description - If String.IsNullOrWhiteSpace(ProjectFileM.sDescription) Then + If Not IsNothing(ProjectFileM) AndAlso String.IsNullOrWhiteSpace(ProjectFileM.sDescription) Then DbControllers.m_ProjController.UpdateDescription(ProjectFileM.nProjId, ProjectFileM.sBTLFileName) ProjectFileM.sDescription = ProjectFileM.sBTLFileName End If