b4e8d68c62
Correzioni e migliorie
185 lines
6.6 KiB
VB.net
185 lines
6.6 KiB
VB.net
Imports System.Collections.ObjectModel
|
|
Imports System.IO
|
|
Imports EgtBEAMWALL.Core
|
|
Imports EgtUILib
|
|
Imports EgtWPFLib5
|
|
|
|
Public Class LeftPanelVM
|
|
Inherits VMBase
|
|
|
|
#Region "FIELDS & PROPERTIES"
|
|
|
|
Public ReadOnly Property AxisList As ObservableCollection(Of Axis)
|
|
Get
|
|
Return Map.refMachCommandMessagePanelVM.AxisList
|
|
End Get
|
|
End Property
|
|
|
|
Public ReadOnly Property sOPState As String
|
|
Get
|
|
Return Map.refMachCommandMessagePanelVM.sOPState
|
|
End Get
|
|
End Property
|
|
|
|
' Definizione comandi
|
|
Private m_cmdDeleteRawPart As ICommand
|
|
Private m_cmdMoveUpRawPart As ICommand
|
|
Private m_cmdMoveDownRawPart As ICommand
|
|
Private m_cmdCompletedRawPart As ICommand
|
|
|
|
#End Region 'FIELDS & PROPERTIES
|
|
|
|
Sub New()
|
|
' imposto riferimento su mappa
|
|
Map.SetRefLeftPanelVM(Me)
|
|
End Sub
|
|
|
|
#Region "METHODS"
|
|
|
|
Friend Sub UpdateView()
|
|
NotifyPropertyChanged("ViewPage_Visibility")
|
|
NotifyPropertyChanged("MachiningPage_Visibility")
|
|
End Sub
|
|
|
|
#End Region ' METHODS
|
|
|
|
#Region "COMMANDS"
|
|
|
|
#Region "CompletedRawPart"
|
|
|
|
''' <summary>
|
|
''' Returns a command that do Exec.
|
|
''' </summary>
|
|
Public ReadOnly Property CompletedRawPart_Command As ICommand
|
|
Get
|
|
If m_cmdCompletedRawPart Is Nothing Then
|
|
m_cmdCompletedRawPart = New Command(AddressOf CompletedRawPart)
|
|
End If
|
|
Return m_cmdCompletedRawPart
|
|
End Get
|
|
End Property
|
|
|
|
''' <summary>
|
|
''' Execute the Exec. This method is invoked by the ExecCommand.
|
|
''' </summary>
|
|
Public Sub CompletedRawPart()
|
|
If IsNothing(Map.refProjectVM.SupervisorMachGroupPanelVM.SelectedMachGroup) Then Return
|
|
Dim SelMachGroup As MyMachGroupVM = Map.refProjectVM.SupervisorMachGroupPanelVM.SelectedMachGroup
|
|
' scrivo tutti pezzi completati
|
|
For PartIndex = 0 To SelMachGroup.PartVMList.Count - 1
|
|
Dim Part As PartVM = SelMachGroup.PartVMList(PartIndex)
|
|
If Part.dtStartTime = DateTime.MinValue Then
|
|
Dim Time As DateTime = DateTime.Now()
|
|
If PartIndex = 0 Then
|
|
' aggiorno anche start MachGroup
|
|
DbControllers.m_MachGroupController.UpdateStart(Map.refSupervisorManagerVM.CurrProd.nProdId, SelMachGroup.Id, Time)
|
|
SelMachGroup.dtStartTime = Time
|
|
SelMachGroup.NotifyPropertyChanged(NameOf(SelMachGroup.Calc_Background))
|
|
End If
|
|
DbControllers.m_PartController.UpdateStart(Map.refSupervisorManagerVM.CurrProd.nProdId, SelMachGroup.Id, Part.nPartId, Time)
|
|
Part.dtStartTime = Time
|
|
End If
|
|
If Part.dtEndTime = DateTime.MinValue Then
|
|
Dim Time As DateTime = DateTime.Now()
|
|
DbControllers.m_PartController.UpdateEnd(Map.refSupervisorManagerVM.CurrProd.nProdId, SelMachGroup.Id, Part.nPartId, Time)
|
|
Part.dtEndTime = Time
|
|
If PartIndex = SelMachGroup.PartVMList.Count - 1 Then
|
|
'aggiorno anche fine MachGroup
|
|
DbControllers.m_MachGroupController.UpdateEnd(Map.refSupervisorManagerVM.CurrProd.nProdId, SelMachGroup.Id, Time)
|
|
SelMachGroup.dtEndTime = Time
|
|
SelMachGroup.NotifyPropertyChanged(NameOf(SelMachGroup.Calc_Background))
|
|
End If
|
|
End If
|
|
DbControllers.m_MachGroupController.UpdateStatus(Map.refSupervisorManagerVM.CurrProd.nProdId, Map.refProjectVM.SupervisorMachGroupPanelVM.SelectedMachGroup.Id, ItemState.Produced)
|
|
' aggiungere status!!
|
|
Part.NotifyPropertyChanged(NameOf(Part.Production_Background))
|
|
Next
|
|
End Sub
|
|
|
|
#End Region ' CompletedRawPart
|
|
|
|
#Region "DeleteRawPart"
|
|
|
|
''' <summary>
|
|
''' Returns a command that do Exec.
|
|
''' </summary>
|
|
Public ReadOnly Property DeleteRawPart_Command As ICommand
|
|
Get
|
|
If m_cmdDeleteRawPart Is Nothing Then
|
|
m_cmdDeleteRawPart = New Command(AddressOf DeleteRawPart)
|
|
End If
|
|
Return m_cmdDeleteRawPart
|
|
End Get
|
|
End Property
|
|
|
|
''' <summary>
|
|
''' Execute the Exec. This method is invoked by the ExecCommand.
|
|
''' </summary>
|
|
Public Sub DeleteRawPart()
|
|
If IsNothing(Map.refProjectVM.SupervisorMachGroupPanelVM.SelectedMachGroup) Then Return
|
|
Dim SelMachGroup As MyMachGroupVM = Map.refProjectVM.SupervisorMachGroupPanelVM.SelectedMachGroup
|
|
' se gia' prodotto, o in produzione non lo posso eliminare
|
|
If SelMachGroup.dtStartTime <> Date.MinValue OrElse SelMachGroup.dtEndTime <> Date.MinValue OrElse SelMachGroup.bReadyForMachining OrElse SelMachGroup.bSentToMachine OrElse SelMachGroup.bResetWhileCutting Then
|
|
MessageBox.Show("Impossibile cancellare il grezzo")
|
|
Return
|
|
End If
|
|
If DbControllers.m_MachGroupController.RemoveFromSupervisor(Map.refSupervisorManagerVM.CurrProd.nProdId, Map.refProjectVM.SupervisorMachGroupPanelVM.SelectedMachGroup.Id) Then
|
|
' se rimozione da Db ok, lo rimuovo da lista
|
|
Map.refProjectVM.SupervisorMachGroupPanelVM.MachGroupVMList.Remove(SelMachGroup)
|
|
End If
|
|
End Sub
|
|
|
|
#End Region ' DeleteRawPart
|
|
|
|
#Region "MoveUpRawPart"
|
|
|
|
''' <summary>
|
|
''' Returns a command that do Exec.
|
|
''' </summary>
|
|
Public ReadOnly Property MoveUpRawPart_Command As ICommand
|
|
Get
|
|
If m_cmdMoveUpRawPart Is Nothing Then
|
|
m_cmdMoveUpRawPart = New Command(AddressOf MoveUpRawPart)
|
|
End If
|
|
Return m_cmdMoveUpRawPart
|
|
End Get
|
|
End Property
|
|
|
|
''' <summary>
|
|
''' Execute the Exec. This method is invoked by the ExecCommand.
|
|
''' </summary>
|
|
Public Sub MoveUpRawPart()
|
|
If IsNothing(Map.refProjectVM.SupervisorMachGroupPanelVM.SelectedMachGroup) Then Return
|
|
DbControllers.m_MachGroupController.UpdateStatus(Map.refSupervisorManagerVM.CurrProd.nProdId, Map.refProjectVM.SupervisorMachGroupPanelVM.SelectedMachGroup.Id, ItemState.Produced)
|
|
End Sub
|
|
|
|
#End Region ' MoveUpRawPart
|
|
|
|
#Region "MoveDownRawPart"
|
|
|
|
''' <summary>
|
|
''' Returns a command that do Exec.
|
|
''' </summary>
|
|
Public ReadOnly Property MoveDownRawPart_Command As ICommand
|
|
Get
|
|
If m_cmdMoveDownRawPart Is Nothing Then
|
|
m_cmdMoveDownRawPart = New Command(AddressOf MoveDownRawPart)
|
|
End If
|
|
Return m_cmdMoveDownRawPart
|
|
End Get
|
|
End Property
|
|
|
|
''' <summary>
|
|
''' Execute the Exec. This method is invoked by the ExecCommand.
|
|
''' </summary>
|
|
Public Sub MoveDownRawPart()
|
|
If IsNothing(Map.refProjectVM.SupervisorMachGroupPanelVM.SelectedMachGroup) Then Return
|
|
DbControllers.m_MachGroupController.UpdateStatus(Map.refSupervisorManagerVM.CurrProd.nProdId, Map.refProjectVM.SupervisorMachGroupPanelVM.SelectedMachGroup.Id, ItemState.Produced)
|
|
End Sub
|
|
|
|
#End Region ' MoveDownRawPart
|
|
|
|
#End Region ' COMMANDS
|
|
|
|
End Class
|