Files
egtbeamwall/EgtBEAMWALL.ViewerOptimizer/TopPanel/TopPanelVM.vb
T
Emmanuele Sassi bab90cf7dc - selezione dei pezzi btl in prod
- implementazione copia rawpart travi
- selezione dei pezzi btl in prod
- implementazione accesso Db con codice chiave
2021-05-20 18:05:02 +02:00

276 lines
8.4 KiB
VB.net

Imports EgtBEAMWALL.Core
Imports EgtUILib
Public Class TopPanelVM
#Region "FIELDS & PROPERTIES"
' Definizione comandi
Private m_cmdProduceAllRawPart As ICommand
Private m_cmdProduceRawPart As ICommand
Private m_cmdCopyRawPart As ICommand
Private m_cmdRemoveRawPart As ICommand
Private m_cmdRemovePart As ICommand
Private m_cmdMoveUpPart As ICommand
Private m_cmdMoveDownPart As ICommand
Private m_cmdReOrderPart As ICommand
#End Region 'FIELDS & PROPERTIES
Sub New()
' imposto riferimento su mappa
'Map.SetRefLeftPanelVM(Me)
End Sub
#Region "METHODS"
#End Region ' METHODS
#Region "COMMANDS"
#Region "ProduceRawPart"
''' <summary>
''' Returns a command that do Exec.
''' </summary>
Public ReadOnly Property ProduceRawPart_Command As ICommand
Get
If m_cmdProduceRawPart Is Nothing Then
m_cmdProduceRawPart = New Command(AddressOf ProduceRawPart)
End If
Return m_cmdProduceRawPart
End Get
End Property
''' <summary>
''' Execute the Exec. This method is invoked by the ExecCommand.
''' </summary>
Public Sub ProduceRawPart()
If IsNothing(Map.refProdManagerVM.CurrProd) Then Return
Dim SelMachGroup As MyMachGroupVM = Map.refMachGroupPanelVM.SelectedMachGroup
If IsNothing(SelMachGroup) Then Return
DbControllers.m_MachGroupController.UpdateSupervisor(Map.refProdManagerVM.CurrProd.nProdId, SelMachGroup.Id, DbControllers.m_SupervisorId)
End Sub
#End Region ' ProduceRawPart
#Region "ProduceAllRawPart"
''' <summary>
''' Returns a command that do Exec.
''' </summary>
Public ReadOnly Property ProduceAllRawPart_Command As ICommand
Get
If m_cmdProduceAllRawPart Is Nothing Then
m_cmdProduceAllRawPart = New Command(AddressOf ProduceAllRawPart)
End If
Return m_cmdProduceAllRawPart
End Get
End Property
''' <summary>
''' Execute the Exec. This method is invoked by the ExecCommand.
''' </summary>
Public Sub ProduceAllRawPart()
If IsNothing(Map.refProdManagerVM.CurrProd) Then Return
If Map.refMachGroupPanelVM.MachGroupVMList.Count > 0 Then
For Each Machgroup In Map.refMachGroupPanelVM.MachGroupVMList
DbControllers.m_MachGroupController.UpdateSupervisor(Map.refProdManagerVM.CurrProd.nProdId, Machgroup.Id, DbControllers.m_SupervisorId)
Next
End If
End Sub
#End Region ' ProduceAllRawPart
#Region "CopyRawPart"
''' <summary>
''' Returns a command that do Exec.
''' </summary>
Public ReadOnly Property CopyRawPart_Command As ICommand
Get
If m_cmdCopyRawPart Is Nothing Then
m_cmdCopyRawPart = New Command(AddressOf CopyRawPart)
End If
Return m_cmdCopyRawPart
End Get
End Property
''' <summary>
''' Execute the Exec. This method is invoked by the ExecCommand.
''' </summary>
Public Sub CopyRawPart()
If IsNothing(Map.refProdManagerVM.CurrProd) Then Return
Dim SelMachGroup As MyMachGroupVM = Map.refMachGroupPanelVM.SelectedMachGroup
If IsNothing(SelMachGroup) Then Return
' creo copia
Dim NewMachGroup As MyMachGroupVM = SelMachGroup.Copy()
If Not IsNothing(NewMachGroup) Then
' lo seleziono
Map.refProjectVM.MachGroupPanelVM.SelectedMachGroup = NewMachGroup
End If
End Sub
#End Region ' CopyRawPart
#Region "RemoveRawPart"
''' <summary>
''' Returns a command that do Exec.
''' </summary>
Public ReadOnly Property RemoveRawPart_Command As ICommand
Get
If m_cmdRemoveRawPart Is Nothing Then
m_cmdRemoveRawPart = New Command(AddressOf RemoveRawPart)
End If
Return m_cmdRemoveRawPart
End Get
End Property
''' <summary>
''' Execute the Exec. This method is invoked by the ExecCommand.
''' </summary>
Public Sub RemoveRawPart()
If IsNothing(Map.refProdManagerVM.CurrProd) Then Return
Dim SelMachGroup As MyMachGroupVM = refMachGroupPanelVM.SelectedMachGroup
If IsNothing(SelMachGroup) Then Return
SelMachGroup.DeleteMachGroup()
End Sub
#End Region ' RemoveRawPart
#Region "RemovePart"
''' <summary>
''' Returns a command that do Exec.
''' </summary>
Public ReadOnly Property RemovePart_Command As ICommand
Get
If m_cmdRemovePart Is Nothing Then
m_cmdRemovePart = New Command(AddressOf RemovePart)
End If
Return m_cmdRemovePart
End Get
End Property
''' <summary>
''' Execute the Exec. This method is invoked by the ExecCommand.
''' </summary>
Public Sub RemovePart()
If IsNothing(Map.refProdManagerVM.CurrProd) Then Return
Dim SelMachGroup As MyMachGroupVM = Map.refMachGroupPanelVM.SelectedMachGroup
If IsNothing(SelMachGroup) Then Return
Dim SelPart As PartVM = SelMachGroup.SelPart
If IsNothing(SelPart) Then Return
SelPart.DeletePart()
End Sub
#End Region ' RemovePart
#Region "MoveUpPart"
''' <summary>
''' Returns a command that do Exec.
''' </summary>
Public ReadOnly Property MoveUpPart_Command As ICommand
Get
If m_cmdMoveUpPart Is Nothing Then
m_cmdMoveUpPart = New Command(AddressOf MoveUpPart)
End If
Return m_cmdMoveUpPart
End Get
End Property
''' <summary>
''' Execute the Exec. This method is invoked by the ExecCommand.
''' </summary>
Public Sub MoveUpPart()
If IsNothing(Map.refProdManagerVM.CurrProd) Then Return
Dim SelMachGroup As MyMachGroupVM = Map.refMachGroupPanelVM.SelectedMachGroup
If IsNothing(SelMachGroup) Then Return
Dim SelPart As PartVM = SelMachGroup.SelPart
If IsNothing(SelPart) Then Return
If SelMachGroup.nMachineType = MachineType.BEAM Then
Dim BeamMachGroup As BeamMachGroupVM = DirectCast(SelMachGroup, BeamMachGroupVM)
BeamMachGroup.MoveBeam(SelPart, MoveDirections.UP)
EgtDraw()
' riseleziono trave
SelMachGroup.SelPart = SelPart
End If
End Sub
#End Region ' MoveUpPart
#Region "MoveDownPart"
''' <summary>
''' Returns a command that do Exec.
''' </summary>
Public ReadOnly Property MoveDownPart_Command As ICommand
Get
If m_cmdMoveDownPart Is Nothing Then
m_cmdMoveDownPart = New Command(AddressOf MoveDownPart)
End If
Return m_cmdMoveDownPart
End Get
End Property
''' <summary>
''' Execute the Exec. This method is invoked by the ExecCommand.
''' </summary>
Public Sub MoveDownPart()
If IsNothing(Map.refProdManagerVM.CurrProd) Then Return
Dim SelMachGroup As MyMachGroupVM = Map.refMachGroupPanelVM.SelectedMachGroup
If IsNothing(SelMachGroup) Then Return
Dim SelPart As PartVM = SelMachGroup.SelPart
If IsNothing(SelPart) Then Return
If SelMachGroup.nMachineType = MachineType.BEAM Then
Dim BeamMachGroup As BeamMachGroupVM = DirectCast(SelMachGroup, BeamMachGroupVM)
BeamMachGroup.MoveBeam(SelPart, MoveDirections.DOWN)
EgtDraw()
' riseleziono trave
SelMachGroup.SelPart = SelPart
End If
End Sub
#End Region ' MoveDownPart
#Region "ReOrderPart"
''' <summary>
''' Returns a command that do Exec.
''' </summary>
Public ReadOnly Property ReOrderPart_Command As ICommand
Get
If m_cmdReOrderPart Is Nothing Then
m_cmdReOrderPart = New Command(AddressOf ReOrderPart)
End If
Return m_cmdReOrderPart
End Get
End Property
''' <summary>
''' Execute the Exec. This method is invoked by the ExecCommand.
''' </summary>
Public Sub ReOrderPart()
If IsNothing(Map.refProdManagerVM.CurrProd) Then Return
Dim SelMachGroup As MyMachGroupVM = Map.refMachGroupPanelVM.SelectedMachGroup
If IsNothing(SelMachGroup) Then Return
Dim SelPart As PartVM = SelMachGroup.SelPart
If IsNothing(SelPart) Then Return
If SelMachGroup.nMachineType = MachineType.BEAM Then
Dim BeamMachGroup As BeamMachGroupVM = DirectCast(SelMachGroup, BeamMachGroupVM)
BeamMachGroup.ReorderBeam()
' riseleziono trave
If Not IsNothing(SelPart) AndAlso (IsNothing(SelMachGroup.SelPart) OrElse SelPart.nPartId <> SelMachGroup.SelPart.nPartId) Then
SelMachGroup.SelPart = SelPart
End If
End If
End Sub
#End Region ' ReOrderPart
#End Region ' COMMANDS
End Class