Merge branch 'feature/ReportConfigWnd' into feature/NewPage
This commit is contained in:
@@ -144,6 +144,8 @@
|
||||
Public Const BTL_PRT_INVERTED As String = "INVERTED"
|
||||
Public Const BTL_PRT_MATERIAL As String = "MATERIAL"
|
||||
Public Const BTL_PRT_VOLUME As String = "VOLUME"
|
||||
Public Const BTL_PRT_ROT As String = "ROT"
|
||||
Public Const BTL_PRT_FLIP As String = "FLIP"
|
||||
' parametri pezzo
|
||||
Public Const BTL_PRT_SINGLEMEMBERNUM = "SINGLEMEMBERNUMBER"
|
||||
Public Const BTL_PRT_ASSEMBLYNUM = "ASSEMBLYNUMBER"
|
||||
|
||||
@@ -1,11 +1,27 @@
|
||||
Public Module ConstColumns
|
||||
|
||||
Public Const COL_ID As String = "colID"
|
||||
Public Const COL_DO As String = "colDO"
|
||||
Public Const COL_VALUE As String = "colVALUE"
|
||||
Public Const COL_CUSTOM As String = "colCUSTOM"
|
||||
Public Const COL_NAME As String = "colNAME"
|
||||
Public Const COL_CALC As String = "colCALC"
|
||||
Public Const COL_PDN As String = "colPDN"
|
||||
Public Const COL_STARTCUT As String = "colSTARTCUT"
|
||||
Public Const COL_W As String = "colW"
|
||||
Public Const COL_H As String = "colH"
|
||||
Public Const COL_L As String = "colL"
|
||||
Public Const COL_CNT As String = "colCNT"
|
||||
Public Const COL_ADDED As String = "colADDED"
|
||||
Public Const COL_INPROD As String = "colINPROD"
|
||||
Public Const COL_DONE As String = "colDONE"
|
||||
Public Const COL_MATERIAL As String = "colMATERIAL"
|
||||
Public Const COL_UNITVOLUME As String = "colUNITVOLUME"
|
||||
Public Const COL_TOTVOLUME As String = "colTOTVOLUME"
|
||||
Public Const COL_UNITTIME As String = "colUNITTIME"
|
||||
Public Const COL_TOTTIME As String = "colTOTTIME"
|
||||
Public Const COL_USAGE As String = "colUSAGE"
|
||||
Public Const COL_WASTE As String = "colWASTE"
|
||||
Public Const COL_POSZ As String = "colPOSZ"
|
||||
Public Const COL_ROT As String = "colROT"
|
||||
Public Const COL_FLIP As String = "colFLIP"
|
||||
@@ -15,13 +31,10 @@
|
||||
Public Const COL_REDO As String = "colREDO"
|
||||
Public Const COL_TYPE As String = "colTYPE"
|
||||
Public Const COL_DESCRIPTION As String = "colDESCRIPTION"
|
||||
Public Const COL_DESC As String = "colDESC"
|
||||
Public Const COL_SUPERVISORID As String = "colSUPERVISORID"
|
||||
Public Const COL_PRIORITY As String = "colPRIORITY"
|
||||
Public Const COL_NAME As String = "colNAME"
|
||||
Public Const COL_H As String = "colH"
|
||||
Public Const COL_MATERIAL As String = "colMATERIAL"
|
||||
Public Const COL_USAGE As String = "colUSAGE"
|
||||
Public Const COL_WASTE As String = "colWASTE"
|
||||
Public Const COL_QTY As String = "colQTY"
|
||||
Public Const COL_ARCHIVED As String = "colARCHIVED"
|
||||
|
||||
End Module
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
Public Const S_PARTLIST As String = "DG_PartList"
|
||||
Public Const S_FEATUREINPARTINRAWPARTLIST As String = "DG_FeatureInPartInRawPartList"
|
||||
Public Const S_STATISTICS As String = "DG_Statistics"
|
||||
Public Const S_STATISTICS_PART As String = "DG_Statistics_PART"
|
||||
Public Const S_OPTIMIZERSTATISTICS As String = "DG_OptimizerStatistics"
|
||||
Public Const S_RAWPARTSTATISTICS As String = "DG_RawPartStatistics"
|
||||
Public Const S_BEAMMACHININGS As String = "DG_BeamMachinings"
|
||||
|
||||
@@ -97,6 +97,7 @@ Public Module ConstIni
|
||||
Public Const S_IMPORT As String = "Import"
|
||||
Public Const K_BTLFLAG As String = "BtlFlag"
|
||||
Public Const K_WALLBTLFLAG As String = "WallBtlFlag"
|
||||
Public Const K_BTLAUXDIR As String = "BtlAuxDir"
|
||||
Public Const K_WALLOPPOSITESIDENESTING As String = "WallOppositeSideNesting"
|
||||
|
||||
'Public Const S_MACH As String = "Mach"
|
||||
@@ -163,6 +164,11 @@ Public Module ConstIni
|
||||
Public Const K_TYPE As String = "Type"
|
||||
Public Const K_DEFAULTQUANTITY As String = "DefaultQuantity"
|
||||
|
||||
Public Const S_SECTION As String = "Section_Checked"
|
||||
Public Const S_IMAGE As String = "Image_Checked"
|
||||
|
||||
Public Const S_PDFEDITOR As String = "PDFEditor"
|
||||
|
||||
Public Const S_BACKUPANDRESTORE As String = "Backup&Restore"
|
||||
Public Const K_EXTERNALBACKUPACTIVE As String = "ExternalBackupActive"
|
||||
Public Const K_EXTERNALFILEPATH As String = "ExternalFilePath"
|
||||
|
||||
@@ -136,6 +136,7 @@
|
||||
</Compile>
|
||||
<Compile Include="NewOpenProjectFileDialog\NewOpenProjectFileDialogVM.vb" />
|
||||
<Compile Include="Utility\Configuration.vb" />
|
||||
<Compile Include="ProjectFileVM\ProdItem.vb" />
|
||||
<Compile Include="Utility\DimensionsIniFile.vb" />
|
||||
<Compile Include="Utility\Enum.vb" />
|
||||
<Compile Include="MachGroupPanel\MyMachGroupPanelVM.vb" />
|
||||
|
||||
@@ -4,9 +4,6 @@ Imports System.ComponentModel
|
||||
Imports System.Windows
|
||||
Imports System.Windows.Controls
|
||||
Imports System.Windows.Data
|
||||
Imports System.Windows.Controls.Primitives
|
||||
Imports System.Windows.Input
|
||||
Imports System.Windows.Media
|
||||
Imports EgtUILib
|
||||
Imports EgtWPFLib5
|
||||
|
||||
@@ -370,9 +367,23 @@ Public Class EgtDataGrid
|
||||
End Class
|
||||
|
||||
Public Class EgtDataGridColumn
|
||||
Inherits VMBase
|
||||
|
||||
Private m_dgColumn As DataGridColumn
|
||||
|
||||
'Check Box per le singole colonne
|
||||
Private m_bIsCheched As Boolean
|
||||
Public Property bIsChecked As Boolean
|
||||
Get
|
||||
Return m_bIsCheched
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_bIsCheched = value
|
||||
NotifyPropertyChanged(NameOf(bIsChecked))
|
||||
WriteMainPrivateProfileString(S_PDFEDITOR, m_Name, If(m_bIsCheched, 1, 0))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private Property m_ParentDataGridName As String
|
||||
Public Property ParentDataGridName As String
|
||||
Get
|
||||
@@ -574,6 +585,7 @@ Public Class EgtDataGridColumn
|
||||
m_Visible = bVisible
|
||||
m_CanUserEditVisible = bCanUserEditVisible
|
||||
m_SortDirection = nSortDirection
|
||||
m_bIsCheched = GetMainPrivateProfileInt(S_PDFEDITOR, m_Name, 0) <> 0
|
||||
End Sub
|
||||
|
||||
Friend Sub InitColumn(dgColumn As DataGridColumn)
|
||||
|
||||
@@ -779,94 +779,3 @@ Public MustInherit Class NewOpenProjectFileDialogVM
|
||||
|
||||
End Class
|
||||
|
||||
Public Class ProdItem
|
||||
Inherits VMBase
|
||||
|
||||
Public Shared m_delIsModifiedSetUp As Action(Of Boolean)
|
||||
|
||||
Protected m_ProdFileVM As ProdFileVM
|
||||
Public ReadOnly Property ProdFileVM As ProdFileVM
|
||||
Get
|
||||
Return m_ProdFileVM
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private m_ProjFileList As New List(Of ProjectFileVM)
|
||||
Public ReadOnly Property ProjFileList As List(Of ProjectFileVM)
|
||||
Get
|
||||
Return m_ProjFileList
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property sProdId As String
|
||||
Get
|
||||
Return If(Not IsNothing(m_ProdFileVM), m_ProdFileVM.sProdId, "")
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public Overridable Property sName As String
|
||||
Get
|
||||
Return If(Not IsNothing(m_ProdFileVM), m_ProdFileVM.sName, "")
|
||||
End Get
|
||||
Set(value As String)
|
||||
If Not IsNothing(m_ProdFileVM) Then
|
||||
m_ProdFileVM.sName = value
|
||||
End If
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property dtCreateDate As Date
|
||||
Get
|
||||
Return If(Not IsNothing(m_ProdFileVM), {m_ProdFileVM.dtCreateDate, m_ProjFileList.Min(Function(x) x.dtCreateDate)}.Min(), m_ProjFileList.Min(Function(x) x.dtCreateDate))
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property sCreateDate As String
|
||||
Get
|
||||
Return dtCreateDate.ToString()
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property sMachine As String
|
||||
Get
|
||||
If Not IsNothing(m_ProdFileVM) Then
|
||||
Return m_ProdFileVM.sMachine
|
||||
ElseIf Not IsNothing(m_ProjFileList(0)) Then
|
||||
Return m_ProjFileList(0).sMachine
|
||||
Else Return ""
|
||||
End If
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property bIsArchived As Boolean
|
||||
Get
|
||||
If Not IsNothing(m_ProdFileVM) Then
|
||||
Return m_ProdFileVM.bIsArchived
|
||||
ElseIf Not IsNothing(m_ProjFileList(0)) Then
|
||||
Return m_ProjFileList(0).bIsArchived
|
||||
Else
|
||||
Return True
|
||||
End If
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property Archived_Visibility As Visibility
|
||||
Get
|
||||
Return If(bIsArchived, Visibility.Visible, Visibility.Collapsed)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Sub New(ProdFileVM As ProdFileVM, ProjFileVM As ProjFileVM)
|
||||
m_ProdFileVM = ProdFileVM
|
||||
m_ProjFileList.Add(ProjFileVM)
|
||||
End Sub
|
||||
|
||||
Sub New(ProjFileVM As ProjFileVM)
|
||||
m_ProjFileList = New List(Of ProjectFileVM)({ProjFileVM})
|
||||
End Sub
|
||||
|
||||
Sub New(ProdFileVM As ProjectFileVM, ProjFileVMList As List(Of ProjectFileVM))
|
||||
m_ProdFileVM = ProdFileVM
|
||||
m_ProjFileList = ProjFileVMList
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
@@ -42,6 +42,8 @@ Public MustInherit Class OpenProjectFileDialogVM
|
||||
|
||||
Friend Event m_CloseWindow(bDialogResult As Boolean)
|
||||
|
||||
Protected m_GoToProd As Boolean = False
|
||||
|
||||
Protected m_ProjectColumns As New ObservableCollection(Of EgtDataGridColumn)
|
||||
Public Property ProjectColumns As ObservableCollection(Of EgtDataGridColumn)
|
||||
Get
|
||||
@@ -438,7 +440,7 @@ Public MustInherit Class OpenProjectFileDialogVM
|
||||
#Region "METHODS"
|
||||
|
||||
Public MustOverride Function Init(ProjectType As ProjectType, Optional CurrProjectList As List(Of ProjectFileVM) = Nothing, Optional GoToProd As Boolean = False) As Boolean?
|
||||
Public Overridable Sub RefreshProjectList(Optional GoToProd As Boolean = False)
|
||||
Public Overridable Sub RefreshProjectList()
|
||||
End Sub
|
||||
|
||||
Protected Sub LoadColumns(ProjectType As ProjectType)
|
||||
|
||||
@@ -14,6 +14,13 @@ Public Class ProdFileM
|
||||
m_nProjIdList = value
|
||||
End Sub
|
||||
|
||||
Protected m_ProjMList As List(Of ProjFileM)
|
||||
Public ReadOnly Property ProjMList As List(Of ProjFileM)
|
||||
Get
|
||||
Return m_ProjMList
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Protected m_sName As String
|
||||
Public Property sName As String
|
||||
Get
|
||||
@@ -60,6 +67,24 @@ Public Class ProdFileM
|
||||
Return NewProjectFileM
|
||||
End Function
|
||||
|
||||
Public Shared Function CreateProdFileM(nProdId As Integer, nProjIdList As List(Of Integer), dtCreateProjDate As DateTime, sName As String, nType As BWType,
|
||||
sMachine As String, sLockedBy As String, dtLock As DateTime, bIsActive As Boolean, bIsProduced As Boolean, bIsArchived As Boolean, ProjMList As List(Of ProjFileM)) As ProdFileM
|
||||
Dim NewProjectFileM As New ProdFileM
|
||||
NewProjectFileM.m_nProdId = nProdId
|
||||
NewProjectFileM.m_nProjIdList = nProjIdList
|
||||
NewProjectFileM.m_dtCreateDate = dtCreateProjDate
|
||||
NewProjectFileM.m_sName = sName
|
||||
NewProjectFileM.m_nType = nType
|
||||
NewProjectFileM.m_sMachine = sMachine
|
||||
NewProjectFileM.m_sLockedBy = sLockedBy
|
||||
NewProjectFileM.m_dtLock = dtLock
|
||||
NewProjectFileM.m_bIsActive = bIsActive
|
||||
NewProjectFileM.m_bIsProduced = bIsProduced
|
||||
NewProjectFileM.m_bIsArchived = bIsArchived
|
||||
NewProjectFileM.m_ProjMList = ProjMList
|
||||
Return NewProjectFileM
|
||||
End Function
|
||||
|
||||
#End Region ' CONSTRUCTORS
|
||||
|
||||
End Class
|
||||
@@ -0,0 +1,119 @@
|
||||
|
||||
Imports EgtWPFLib5
|
||||
Imports System.Windows
|
||||
|
||||
Public Class ProdItem
|
||||
Inherits VMBase
|
||||
|
||||
Public Shared m_delUpdateNameInDb As Action(Of Integer, String)
|
||||
Public Shared m_delIsModifiedSetUp As Action(Of Boolean)
|
||||
|
||||
Protected m_ProdFileVM As ProdFileVM
|
||||
Public ReadOnly Property ProdFileVM As ProdFileVM
|
||||
Get
|
||||
Return m_ProdFileVM
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private m_ProjFileList As New List(Of ProjectFileVM)
|
||||
Public ReadOnly Property ProjFileList As List(Of ProjectFileVM)
|
||||
Get
|
||||
Return m_ProjFileList
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property sProdId As String
|
||||
Get
|
||||
Return If(Not IsNothing(m_ProdFileVM), m_ProdFileVM.sProdId, "")
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public Overridable Property sName As String
|
||||
Get
|
||||
Return If(Not IsNothing(m_ProdFileVM), m_ProdFileVM.sName, "")
|
||||
End Get
|
||||
Set(value As String)
|
||||
If Not IsNothing(m_ProdFileVM) Then
|
||||
m_delUpdateNameInDb(m_ProdFileVM.nProdId, value)
|
||||
m_ProdFileVM.sName = value
|
||||
m_delIsModifiedSetUp(False)
|
||||
End If
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property dtCreateDate As Date
|
||||
Get
|
||||
Return If(Not IsNothing(m_ProdFileVM), {m_ProdFileVM.dtCreateDate, m_ProjFileList.Min(Function(x) x.dtCreateDate)}.Min(), m_ProjFileList.Min(Function(x) x.dtCreateDate))
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property sCreateDate As String
|
||||
Get
|
||||
Return dtCreateDate.ToString()
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property sMachine As String
|
||||
Get
|
||||
If Not IsNothing(m_ProdFileVM) Then
|
||||
Return m_ProdFileVM.sMachine
|
||||
ElseIf Not IsNothing(m_ProjFileList(0)) Then
|
||||
Return m_ProjFileList(0).sMachine
|
||||
Else Return ""
|
||||
End If
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property bIsArchived As Boolean
|
||||
Get
|
||||
If Not IsNothing(m_ProdFileVM) Then
|
||||
Return m_ProdFileVM.bIsArchived
|
||||
ElseIf Not IsNothing(m_ProjFileList(0)) Then
|
||||
Return m_ProjFileList(0).bIsArchived
|
||||
Else
|
||||
Return True
|
||||
End If
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property Archived_Visibility As Visibility
|
||||
Get
|
||||
Return If(bIsArchived, Visibility.Visible, Visibility.Collapsed)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Sub New(ProdFileVM As ProdFileVM, ProjFileVM As ProjFileVM)
|
||||
m_ProdFileVM = ProdFileVM
|
||||
m_ProjFileList.Add(ProjFileVM)
|
||||
End Sub
|
||||
|
||||
Sub New(ProjFileVM As ProjFileVM)
|
||||
m_ProjFileList = New List(Of ProjectFileVM)({ProjFileVM})
|
||||
End Sub
|
||||
|
||||
Sub New(ProdFileVM As ProjectFileVM, ProjFileVMList As List(Of ProjectFileVM))
|
||||
m_ProdFileVM = ProdFileVM
|
||||
m_ProjFileList = ProjFileVMList
|
||||
End Sub
|
||||
|
||||
|
||||
Public Shared Function CreateProdItem(nProdId As Integer, nProjIdList As List(Of Integer), dtCreateProjDate As DateTime, sName As String, nType As BWType,
|
||||
sMachine As String, sLockedBy As String, dtLock As DateTime, bIsActive As Boolean, bIsProduced As Boolean, bIsArchived As Boolean, ProjMList As List(Of ProjFileM)) As ProdItem
|
||||
|
||||
|
||||
Dim NewProdFileM = ProdFileM.CreateProdFileM(nProdId, nProjIdList, dtCreateProjDate, sName, nType, sMachine, sLockedBy, dtLock, bIsActive, bIsProduced, bIsArchived)
|
||||
Dim NewProdFileVM = New ProdFileVM(NewProdFileM)
|
||||
Dim NewProjFileVM As IEnumerable(Of ProjectFileVM)
|
||||
NewProjFileVM = ProjMList.Select(Of ProjFileVM)(Function(j) New ProjFileVM(j)).ToList
|
||||
Dim NewProdItem = New ProdItem(NewProdFileVM, NewProjFileVM.ToList)
|
||||
|
||||
Return NewProdItem
|
||||
End Function
|
||||
|
||||
Public Shared Function CreateProdItem(ProjFileM As ProjFileM) As ProdItem
|
||||
|
||||
Dim NewProdItem = New ProdItem(New ProjFileVM(ProjFileM))
|
||||
|
||||
Return NewProdItem
|
||||
End Function
|
||||
|
||||
End Class
|
||||
@@ -2,6 +2,7 @@
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data.Entity;
|
||||
using System.Linq;
|
||||
using static EgtBEAMWALL.Core.ConstBeam;
|
||||
|
||||
@@ -208,11 +209,11 @@ namespace EgtBEAMWALL.DataLayer.Controllers
|
||||
/// <summary>
|
||||
/// Elenco prod
|
||||
/// </summary>
|
||||
/// <param name="numRecord">Num max record da recuperare</param>
|
||||
/// <param name="NumRecord">Num max record da recuperare</param>
|
||||
/// <param name="OnlyActive">Solo con ALMENO 1 PROJ attivo (senza cancellazione logica)</param>
|
||||
/// <param name="ShowArchived">Se true: mostra anche archiviati (default li nasconde)</param>
|
||||
/// <returns></returns>
|
||||
public List<Core.ProdFileM> GetLastDesc(int numRecord, bool OnlyActive, bool ShowArchived = false)
|
||||
public List<Core.ProdFileM> GetLastDesc(int NumRecord, bool OnlyActive, bool ShowArchived = false)
|
||||
{
|
||||
List<Core.ProdFileM> result = new List<Core.ProdFileM>();
|
||||
//List<ProdModel> dbResult = GetLastDbModelDesc(numRecord);
|
||||
@@ -220,9 +221,9 @@ namespace EgtBEAMWALL.DataLayer.Controllers
|
||||
using (DatabaseContext localDbCtx = new DatabaseContext(DbConfig.CONNECTION_STRING))
|
||||
{
|
||||
// se numRecord = 0 --> passo tutti
|
||||
if (numRecord == 0)
|
||||
if (NumRecord == 0)
|
||||
{
|
||||
numRecord = localDbCtx.ProdList.Count();
|
||||
NumRecord = localDbCtx.ProdList.Count();
|
||||
}
|
||||
// retrieve
|
||||
dbResult = localDbCtx
|
||||
@@ -235,7 +236,7 @@ namespace EgtBEAMWALL.DataLayer.Controllers
|
||||
(p, e) => p)
|
||||
.Distinct()
|
||||
.OrderByDescending(x => x.ProdId)
|
||||
.Take(numRecord)
|
||||
.Take(NumRecord)
|
||||
.ToList();
|
||||
}
|
||||
|
||||
@@ -247,13 +248,13 @@ namespace EgtBEAMWALL.DataLayer.Controllers
|
||||
/// <summary>
|
||||
/// Elenco prod
|
||||
/// </summary>
|
||||
/// <param name="dtStart">Inizio periodo estrazione</param>
|
||||
/// <param name="dtEnd">Fine periodo estrazione</param>
|
||||
/// <param name="numRecord">Num max record da recuperare</param>
|
||||
/// <param name="DtStart">Inizio periodo estrazione</param>
|
||||
/// <param name="DtEnd">Fine periodo estrazione</param>
|
||||
/// <param name="NumRecord">Num max record da recuperare</param>
|
||||
/// <param name="OnlyActive">Solo con ALMENO 1 PROJ attivo (senza cancellazione logica)</param>
|
||||
/// <param name="ShowArchived">Se true: mostra anche archiviati (default li nasconde)</param>
|
||||
/// <returns></returns>
|
||||
public List<Core.ProdFileM> GetLastDesc(DateTime dtStart, DateTime dtEnd, int numRecord, bool OnlyActive, bool ShowArchived = false)
|
||||
public List<Core.ProdFileM> GetLastDesc(DateTime DtStart, DateTime DtEnd, int NumRecord, bool OnlyActive, bool ShowArchived = false)
|
||||
{
|
||||
List<Core.ProdFileM> result = new List<Core.ProdFileM>();
|
||||
//List<ProdModel> dbResult = GetLastDbModelDesc(numRecord);
|
||||
@@ -261,14 +262,14 @@ namespace EgtBEAMWALL.DataLayer.Controllers
|
||||
using (DatabaseContext localDbCtx = new DatabaseContext(DbConfig.CONNECTION_STRING))
|
||||
{
|
||||
// se numRecord = 0 --> passo tutti
|
||||
if (numRecord == 0)
|
||||
if (NumRecord == 0)
|
||||
{
|
||||
numRecord = localDbCtx.ProdList.Count();
|
||||
NumRecord = localDbCtx.ProdList.Count();
|
||||
}
|
||||
// retrieve
|
||||
dbResult = localDbCtx
|
||||
.ProdList
|
||||
.Where(x => x.DtCreated >= dtStart && x.DtCreated <= dtEnd && (!x.IsArchived || ShowArchived))
|
||||
.Where(x => x.DtCreated >= DtStart && x.DtCreated <= DtEnd && (!x.IsArchived || ShowArchived))
|
||||
// condizione join sui PROJ
|
||||
.Join(localDbCtx.ProjList.Where(x => x.IsActive || !OnlyActive),
|
||||
p => p.ProdDbId,
|
||||
@@ -276,7 +277,7 @@ namespace EgtBEAMWALL.DataLayer.Controllers
|
||||
(p, e) => p)
|
||||
.Distinct()
|
||||
.OrderByDescending(x => x.ProdId)
|
||||
.Take(numRecord)
|
||||
.Take(NumRecord)
|
||||
.ToList();
|
||||
}
|
||||
|
||||
@@ -285,6 +286,183 @@ namespace EgtBEAMWALL.DataLayer.Controllers
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Elenco prod
|
||||
/// </summary>
|
||||
/// <param name="NumRecord">Num max record da recuperare</param>
|
||||
/// <param name="OnlyActive">Solo con ALMENO 1 PROJ attivo (senza cancellazione logica)</param>
|
||||
/// <param name="ShowArchived">Se true: mostra anche archiviati (default li nasconde)</param>
|
||||
/// <returns></returns>
|
||||
public List<Core.ProdItem> GetLastDescFull(int NumRecord, bool OnlyActive, bool ShowArchived = false)
|
||||
{
|
||||
List<Core.ProdItem> result = new List<Core.ProdItem>();
|
||||
// elenco prod completi
|
||||
List<ProdModel> dbResultProd = new List<ProdModel>();
|
||||
// elenco proj "orfani"
|
||||
List<ProjModel> dbResultProj = new List<ProjModel>();
|
||||
using (DatabaseContext localDbCtx = new DatabaseContext(DbConfig.CONNECTION_STRING))
|
||||
{
|
||||
// se numRecord = 0 --> passo tutti
|
||||
if (NumRecord == 0)
|
||||
{
|
||||
NumRecord = localDbCtx.ProdList.Count();
|
||||
}
|
||||
// recupero PROD + proj relativi
|
||||
dbResultProd = localDbCtx
|
||||
.ProdList
|
||||
.Where(x => (!x.IsArchived || ShowArchived))
|
||||
//.Include(j => j.)
|
||||
// condizione join sui PROJ
|
||||
.Join(localDbCtx.ProjList.Where(x => x.IsActive || !OnlyActive),
|
||||
p => p.ProdDbId,
|
||||
e => e.ProdDbId,
|
||||
(p, e) => p)
|
||||
.Distinct()
|
||||
.Include(j => j.ProjListNav)
|
||||
.OrderByDescending(x => x.ProdId)
|
||||
.Take(NumRecord)
|
||||
.ToList();
|
||||
|
||||
// recupero i proj "orfani"
|
||||
dbResultProj = localDbCtx
|
||||
.ProjList
|
||||
.Where(x => (x.IsActive || !OnlyActive) && x.Prod == null)
|
||||
.OrderByDescending(x => x.ProjId)
|
||||
.Take(NumRecord)
|
||||
.ToList();
|
||||
}
|
||||
|
||||
// conversione
|
||||
result = dbResultProd.Select(x => coreItemConv(x)).ToList();
|
||||
var resProj = dbResultProj.Select(x => coreItemConv(x)).ToList();
|
||||
// sommo i risultati
|
||||
result.AddRange(resProj);
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Elenco prod
|
||||
/// </summary>
|
||||
/// <param name="DtStart">Inizio periodo estrazione</param>
|
||||
/// <param name="DtEnd">Fine periodo estrazione</param>
|
||||
/// <param name="NumRecord">Num max record da recuperare</param>
|
||||
/// <param name="OnlyActive">Solo con ALMENO 1 PROJ attivo (senza cancellazione logica)</param>
|
||||
/// <param name="ShowArchived">Se true: mostra anche archiviati (default li nasconde)</param>
|
||||
/// <returns></returns>
|
||||
public List<Core.ProdItem> GetLastDescFull(DateTime DtStart, DateTime DtEnd, int NumRecord, bool OnlyActive, bool ShowArchived = false)
|
||||
{
|
||||
List<Core.ProdItem> result = new List<Core.ProdItem>();
|
||||
// elenco prod completi
|
||||
List<ProdModel> dbResultProd = new List<ProdModel>();
|
||||
// elenco proj "orfani"
|
||||
List<ProjModel> dbResultProj = new List<ProjModel>();
|
||||
using (DatabaseContext localDbCtx = new DatabaseContext(DbConfig.CONNECTION_STRING))
|
||||
{
|
||||
// se numRecord = 0 --> passo tutti
|
||||
if (NumRecord == 0)
|
||||
{
|
||||
NumRecord = localDbCtx.ProdList.Count();
|
||||
}
|
||||
// retrieve
|
||||
dbResultProd = localDbCtx
|
||||
.ProdList
|
||||
.Where(x => x.DtCreated >= DtStart && x.DtCreated <= DtEnd && (!x.IsArchived || ShowArchived))
|
||||
// condizione join sui PROJ
|
||||
.Join(localDbCtx.ProjList.Where(x => x.IsActive || !OnlyActive),
|
||||
p => p.ProdDbId,
|
||||
e => e.ProdDbId,
|
||||
(p, e) => p)
|
||||
.Distinct()
|
||||
.Include(j => j.ProjListNav)
|
||||
.OrderByDescending(x => x.ProdId)
|
||||
.Take(NumRecord)
|
||||
.ToList();
|
||||
|
||||
// recupero i proj "orfani"
|
||||
dbResultProj = localDbCtx
|
||||
.ProjList
|
||||
.Where(x => (x.IsActive || !OnlyActive) && x.Prod == null && (x.DtCreated >= DtStart && x.DtCreated <= DtEnd))
|
||||
.OrderByDescending(x => x.ProjId)
|
||||
.Take(NumRecord)
|
||||
.ToList();
|
||||
}
|
||||
// conversione
|
||||
result = dbResultProd.Select(x => coreItemConv(x)).ToList();
|
||||
var resProj = dbResultProj.Select(x => coreItemConv(x)).ToList();
|
||||
// sommo i risultati
|
||||
result.AddRange(resProj);
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Elenco prod
|
||||
/// </summary>
|
||||
/// <param name="DtStart">Inizio periodo estrazione</param>
|
||||
/// <param name="DtEnd">Fine periodo estrazione</param>
|
||||
/// <param name="DtIsCreation">Ture: usa data creazione / False: usa data export</param>
|
||||
/// <param name="NumRecord">Num max record da recuperare</param>
|
||||
/// <param name="OnlyActive">Solo con ALMENO 1 PROJ attivo (senza cancellazione logica)</param>
|
||||
/// <param name="Machine">Nome Macchina (default vuoto = non usato)</param>
|
||||
/// <param name="BtlFileName">Nome file BTL (default vuoto = non usato)</param>
|
||||
/// <param name="ListName">Nome List (default vuoto = non usato)</param>
|
||||
/// <param name="ShowArchived">Se true: mostra anche archiviati (default li nasconde)</param>
|
||||
/// <returns></returns>
|
||||
public List<Core.ProdItem> GetLastDescFull(DateTime DtStart, DateTime DtEnd, bool DtIsCreation, int NumRecord, bool OnlyActive, string Machine = "", string BtlFileName = "", string ListName = "", bool ShowArchived = false)
|
||||
{
|
||||
List<Core.ProdItem> result = new List<Core.ProdItem>();
|
||||
List<ProdModel> dbResultProd = new List<ProdModel>();
|
||||
// elenco proj "orfani"
|
||||
List<ProjModel> dbResultProj = new List<ProjModel>();
|
||||
using (DatabaseContext localDbCtx = new DatabaseContext(DbConfig.CONNECTION_STRING))
|
||||
{
|
||||
// se numRecord = 0 --> passo tutti
|
||||
if (NumRecord == 0)
|
||||
{
|
||||
NumRecord = localDbCtx.ProdList.Count();
|
||||
}
|
||||
// retrieve
|
||||
dbResultProd = localDbCtx
|
||||
.ProdList
|
||||
.Where(x => (!x.IsArchived || ShowArchived))
|
||||
// condizione join sui PROJ
|
||||
.Join(localDbCtx.ProjList.Where(x =>
|
||||
(x.IsActive || !OnlyActive)
|
||||
&& (string.IsNullOrEmpty(Machine) || x.Machine.ToLower().Contains(Machine.ToLower()))
|
||||
&& (string.IsNullOrEmpty(BtlFileName) || x.BTLFileName.ToLower().Contains( BtlFileName.ToLower()))
|
||||
&& (string.IsNullOrEmpty(ListName) || x.ListName.ToLower().Contains(ListName.ToLower()))
|
||||
&& ((DtIsCreation && (x.DtCreated >= DtStart && x.DtCreated <= DtEnd)) || (!DtIsCreation && (x.DtExported >= DtStart && x.DtExported <= DtEnd)))
|
||||
),
|
||||
p => p.ProdDbId,
|
||||
e => e.ProdDbId,
|
||||
(p, e) => p)
|
||||
.Distinct()
|
||||
.Include(j => j.ProjListNav)
|
||||
.OrderByDescending(x => x.ProdId)
|
||||
.Take(NumRecord)
|
||||
.ToList();
|
||||
|
||||
// recupero i proj "orfani"
|
||||
dbResultProj = localDbCtx
|
||||
.ProjList
|
||||
.Where(x =>
|
||||
(x.IsActive || !OnlyActive)
|
||||
&& x.Prod == null
|
||||
&& (string.IsNullOrEmpty(Machine) || x.Machine.ToLower().Contains(Machine.ToLower()))
|
||||
&& (string.IsNullOrEmpty(BtlFileName) || x.BTLFileName.ToLower().Contains(BtlFileName.ToLower()))
|
||||
&& (string.IsNullOrEmpty(ListName) || x.ListName.ToLower().Contains(ListName.ToLower()))
|
||||
&& ((DtIsCreation && (x.DtCreated >= DtStart && x.DtCreated <= DtEnd)) || (!DtIsCreation && (x.DtExported >= DtStart && x.DtExported <= DtEnd))))
|
||||
.OrderByDescending(x => x.ProjId)
|
||||
.Take(NumRecord)
|
||||
.ToList();
|
||||
}
|
||||
// conversione
|
||||
result = dbResultProd.Select(x => coreItemConv(x)).ToList();
|
||||
var resProj = dbResultProj.Select(x => coreItemConv(x)).ToList();
|
||||
// sommo i risultati
|
||||
result.AddRange(resProj);
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Fornisce nuovo indice VUOTO da usare (allocando sul DB)
|
||||
/// </summary>
|
||||
@@ -910,6 +1088,29 @@ namespace EgtBEAMWALL.DataLayer.Controllers
|
||||
protected Core.ProdFileM coreConv(ProdModel currProd)
|
||||
{
|
||||
Core.ProdFileM answ = Core.ProdFileM.CreateProdFileM(currProd.ProdId, ProjIdByProd(currProd.ProdId), currProd.DtCreated, currProd.Description, currProd.PType, currProd.Machine, currProd.LockedBy, currProd.LockDate, currProd.IsActive, currProd.IsProduced, currProd.IsArchived);
|
||||
//Core.ProdFileM answ = Core.ProdFileM.CreateProdFileM(currProd.ProdId, ProjIdByProd(currProd.ProdId), currProd.DtCreated, currProd.Description, currProd.PType, currProd.Machine, currProd.LockedBy, currProd.LockDate, currProd.IsActive, currProd.IsProduced, currProd.IsArchived, currProd.ProjListNav.Select(j => Core.ProjFileM.CreateProjFileM(j.ProjId, currProd.ProdId, j.DtCreated, j.DtExported, j.ListName, j.BTLFileName, j.ProjDescription, j.IsNew, j.Locked, j.PType, j.Machine, j.IsActive, j.IsActive)).ToList());
|
||||
return answ;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Helper conversione modelli verso prodItem
|
||||
/// </summary>
|
||||
/// <param name="currProd"></param>
|
||||
/// <returns></returns>
|
||||
protected Core.ProdItem coreItemConv(ProdModel currProd)
|
||||
{
|
||||
Core.ProdItem answ = Core.ProdItem.CreateProdItem(currProd.ProdId, ProjIdByProd(currProd.ProdId), currProd.DtCreated, currProd.Description, currProd.PType, currProd.Machine, currProd.LockedBy, currProd.LockDate, currProd.IsActive, currProd.IsProduced, currProd.IsArchived, currProd.ProjListNav.Select(j => Core.ProjFileM.CreateProjFileM(j.ProjId, currProd.ProdId, j.DtCreated, j.DtExported, j.ListName, j.BTLFileName, j.ProjDescription, j.IsNew, j.Locked, j.PType, j.Machine, j.IsActive, j.IsActive)).ToList());
|
||||
return answ;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Helper conversione modelli verso prodItem da singolo proj
|
||||
/// </summary>
|
||||
/// <param name="currProd"></param>
|
||||
/// <returns></returns>
|
||||
protected Core.ProdItem coreItemConv(ProjModel currProj)
|
||||
{
|
||||
Core.ProdItem answ = Core.ProdItem.CreateProdItem(Core.ProjFileM.CreateProjFileM(currProj.ProjId, 0, currProj.DtCreated, currProj.DtExported, currProj.ListName, currProj.BTLFileName, currProj.ProjDescription, currProj.IsNew, currProj.Locked, currProj.PType, currProj.Machine, currProj.IsActive, currProj.IsActive));
|
||||
return answ;
|
||||
}
|
||||
|
||||
|
||||
@@ -33,6 +33,8 @@ namespace EgtBEAMWALL.DataLayer.Controllers
|
||||
var dbResult = localDbCtx
|
||||
.ProjList
|
||||
.Where(x => x.BTLFileName == BTLFileName)
|
||||
//valutare se usare solo attivi...
|
||||
//.Where(x => x.BTLFileName == BTLFileName && x.IsActive == true)
|
||||
.FirstOrDefault();
|
||||
|
||||
//se avesse trovato-- > riporto id...
|
||||
@@ -581,7 +583,7 @@ namespace EgtBEAMWALL.DataLayer.Controllers
|
||||
/// Update record su DB x elenco BTLParts
|
||||
/// </summary>
|
||||
/// <param name="ProjId"></param>
|
||||
/// <param name="newBTLFileName"></param>
|
||||
/// <param name="BtlPartList"></param>
|
||||
/// <returns></returns>
|
||||
public ProjModel UpdateBtlParts(int ProjId, List<Core.BTLPartM> BtlPartList)
|
||||
{
|
||||
|
||||
@@ -19,6 +19,11 @@ namespace EgtBEAMWALL.DataLayer.DatabaseModels
|
||||
{
|
||||
#region Public Properties
|
||||
|
||||
public ProdModel()
|
||||
{
|
||||
ProjListNav = new HashSet<ProjModel>();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Chiave univoca DB
|
||||
/// </summary>
|
||||
@@ -98,6 +103,11 @@ namespace EgtBEAMWALL.DataLayer.DatabaseModels
|
||||
[Column("IsArchived")]
|
||||
public bool IsArchived { get; set; } = false;
|
||||
|
||||
/// <summary>
|
||||
/// Collezione oggetti Proj associati (almeno 1 by design)
|
||||
/// </summary>
|
||||
public virtual ICollection<ProjModel> ProjListNav { get; set; }
|
||||
|
||||
#endregion Public Properties
|
||||
}
|
||||
}
|
||||
@@ -11,13 +11,14 @@ 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
|
||||
m_GoToProd = GoToProd
|
||||
' carico colonne
|
||||
LoadColumns(m_ProjectType)
|
||||
NotifyPropertyChanged(NameOf(FilterTypeList))
|
||||
m_SelFilterType = m_FilterTypeList(0)
|
||||
' carico lista progetti
|
||||
If IsNothing(CurrProjectList) OrElse CurrProjectList.Count = 0 Then
|
||||
RefreshProjectList(GoToProd)
|
||||
RefreshProjectList()
|
||||
Else
|
||||
m_ProjectList = New ObservableCollection(Of ProjectFileVM)(CurrProjectList)
|
||||
NotifyPropertyChanged(NameOf(ProjectList))
|
||||
@@ -26,7 +27,7 @@ Public Class OpenProjectFileDialogVM
|
||||
m_ProjectList_View.Filter = AddressOf ProjectFilter
|
||||
End Function
|
||||
|
||||
Public Overrides Sub RefreshProjectList(Optional GoToProd As Boolean = False)
|
||||
Public Overrides Sub RefreshProjectList()
|
||||
m_ProjectList.Clear()
|
||||
' calcolo periodo e righe
|
||||
Dim dtStart As DateTime
|
||||
|
||||
@@ -1,16 +1,13 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<configSections>
|
||||
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
|
||||
|
||||
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
|
||||
</configSections>
|
||||
<entityFramework>
|
||||
<!--<defaultConnectionFactory type="MySql.Data.Entity.MySqlConnectionFactory, MySql.Data.EntityFramework" />-->
|
||||
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
|
||||
<providers>
|
||||
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.EntityFramework, Version=8.0.21.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d">
|
||||
</provider>
|
||||
</providers>
|
||||
|
||||
</entityFramework>
|
||||
<connectionStrings>
|
||||
<add name="DefaultConnection" connectionString="server=localhost;port=3306;User Id=EgtUser;password=viacremasca;Persist Security Info=True;database=EgtBwDb;SslMode=none" providerName="MySql.Data.MySqlClient" />
|
||||
@@ -49,6 +46,10 @@
|
||||
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.IO.Pipelines" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
<system.data>
|
||||
|
||||
@@ -189,6 +189,7 @@ Public Class BTLPartManagerVM
|
||||
End Sub
|
||||
|
||||
Public Sub NewRawPart(bLast As Boolean)
|
||||
If IsNothing(ProjectManagerVM.CurrProd) Then Return
|
||||
If IsNothing(ProjectManagerVM.CurrProd) Then Return
|
||||
'Dim SelPart As BTLPartVM = Map.refProjectVM.BTLStructureVM.SelBTLPart
|
||||
Dim SelParts As List(Of BTLPartVM) = Map.refProjectVM.BTLStructureVM.SelBTLParts.ToList()
|
||||
@@ -518,7 +519,7 @@ Public Class BTLPartManagerVM
|
||||
Return CurrSParam
|
||||
ElseIf Map.refProjectVM.BTLStructureVM.nPROJTYPE = MachineType.WALL Then
|
||||
' creo sParam
|
||||
If Not IsNothing(Map.refProjectVM.BTLStructureVM.SelBTLPart) Then CurrSParam = New SParam(Map.refProjectVM.BTLStructureVM.SelBTLPart.Section, dRawW, dRawL, nQuantity, False)
|
||||
If Not IsNothing(Map.refProjectVM.BTLStructureVM.SelBTLParts(0)) Then CurrSParam = New SParam(Map.refProjectVM.BTLStructureVM.SelBTLParts(0).Section, dRawW, dRawL, nQuantity, False)
|
||||
Dim sW As String = String.Empty
|
||||
Dim sL As String = String.Empty
|
||||
sW = LenToString(CurrSParam.dW, 3)
|
||||
@@ -611,6 +612,7 @@ Public Class BTLPartManagerVM
|
||||
''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
''' </summary>
|
||||
Public Sub AddToRawPart()
|
||||
If IsNothing(ProjectManagerVM.CurrProd) Then Return
|
||||
If IsNothing(ProjectManagerVM.CurrProd) Then Return
|
||||
Dim SelPart As BTLPartVM = Map.refProjectVM.BTLStructureVM.SelBTLParts(0)
|
||||
Dim SelParts As List(Of BTLPartVM) = Map.refProjectVM.BTLStructureVM.SelBTLParts.ToList()
|
||||
@@ -907,6 +909,7 @@ Public Class BTLPartManagerVM
|
||||
''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
''' </summary>
|
||||
Public Sub CopyPart()
|
||||
If IsNothing(ProjectManagerVM.CurrProj) Then Return
|
||||
If IsNothing(ProjectManagerVM.CurrProj) Then Return
|
||||
Dim SelPart As BTLPartVM = Map.refProjectVM.BTLStructureVM.SelBTLPart
|
||||
If IsNothing(SelPart) Then Return
|
||||
@@ -938,6 +941,7 @@ Public Class BTLPartManagerVM
|
||||
''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
''' </summary>
|
||||
Public Sub AddPart(ByVal param As Object)
|
||||
If IsNothing(ProjectManagerVM.CurrProj) Then Return
|
||||
If IsNothing(ProjectManagerVM.CurrProj) Then Return
|
||||
' apro finestra di definizione nuovo part
|
||||
Dim AddPartWndVM As New AddPartWndVM()
|
||||
@@ -947,6 +951,7 @@ Public Class BTLPartManagerVM
|
||||
Dim nNewPartId As Integer = EgtBeamCreatePart()
|
||||
' scrivo info proj
|
||||
EgtSetInfo(nNewPartId, BTL_PRT_PROJ, ProjectManagerVM.CurrProj.nProjId)
|
||||
EgtSetInfo(nNewPartId, BTL_PRT_PROJ, ProjectManagerVM.CurrProj.nProjId)
|
||||
EgtBeamSetPartProdNbr(AddPartWndVM.nPDN)
|
||||
If Not IsNothing(AddPartWndVM.sNAM) Then EgtBeamSetPartName(AddPartWndVM.sNAM)
|
||||
EgtBeamSetPartCount(AddPartWndVM.nCNT)
|
||||
@@ -1001,12 +1006,7 @@ Public Class BTLPartManagerVM
|
||||
''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
''' </summary>
|
||||
Public Sub RemovePartCmd()
|
||||
'If IsNothing(ProjectManagerVM.CurrProj) Then Return
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso IsNothing(Map.refProjManagerVM) Then
|
||||
Return
|
||||
ElseIf Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE AndAlso IsNothing(Map.refOnlyProdManagerVM) Then
|
||||
Return
|
||||
End If
|
||||
If IsNothing(ProjectManagerVM.CurrProj) Then Return
|
||||
If Map.refProjectVM.BTLStructureVM.SelBTLParts.Count > 0 Then
|
||||
Dim CurrSelBTLParts As List(Of BTLPartVM) = Map.refProjectVM.BTLStructureVM.SelBTLParts.ToList()
|
||||
For RemoveIndex = CurrSelBTLParts.Count - 1 To 0 Step -1
|
||||
@@ -1115,6 +1115,7 @@ Public Class BTLPartManagerVM
|
||||
''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
''' </summary>
|
||||
Public Sub BackRotation()
|
||||
If IsNothing(ProjectManagerVM.CurrProj) OrElse IsNothing(Map.refProjectVM.BTLStructureVM) Then Return
|
||||
If IsNothing(ProjectManagerVM.CurrProj) OrElse IsNothing(Map.refProjectVM.BTLStructureVM) Then Return
|
||||
' salvo sezione impostata
|
||||
Dim CurrSection As SectionXMaterial = Map.refProjectVM.BTLStructureVM.SelSection
|
||||
@@ -1156,6 +1157,7 @@ Public Class BTLPartManagerVM
|
||||
''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
''' </summary>
|
||||
Public Sub ForwardRotation()
|
||||
If IsNothing(ProjectManagerVM.CurrProj) OrElse IsNothing(Map.refProjectVM.BTLStructureVM) Then Return
|
||||
If IsNothing(ProjectManagerVM.CurrProj) OrElse IsNothing(Map.refProjectVM.BTLStructureVM) Then Return
|
||||
' salvo sezione impostata
|
||||
Dim CurrSection As SectionXMaterial = Map.refProjectVM.BTLStructureVM.SelSection
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
<DockPanel x:Class="ConfigurationPageV"
|
||||
<DockPanel x:Class="ConfigurationPageV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:EgtBEAMWALLCORE="clr-namespace:EgtBEAMWALL.Core;assembly=EgtBEAMWALL.Core">
|
||||
xmlns:EgtBEAMWALLCORE="clr-namespace:EgtBEAMWALL.Core;assembly=EgtBEAMWALL.Core"
|
||||
xmlns:EgtBEAMWALL="clr-namespace:EgtBEAMWALL.ViewerOptimizer">
|
||||
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
@@ -48,7 +49,7 @@
|
||||
<EgtBEAMWALLCORE:QParameter_ConfigurationPageV/>
|
||||
</TabItem.Content>
|
||||
</TabItem>
|
||||
<TabItem >
|
||||
<TabItem>
|
||||
<TabItem.Header>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock Text="{Binding Machine_Msg}"
|
||||
@@ -65,6 +66,25 @@
|
||||
<EgtBEAMWALLCORE:Machine_ConfigurationPageV/>
|
||||
</TabItem.Content>
|
||||
</TabItem>
|
||||
<TabItem>
|
||||
<TabItem.Header>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock Text="{Binding PDFEditor_Msg}"
|
||||
Style="{StaticResource OptionTextBlock}"/>
|
||||
<Button Command="{Binding SaveCommand}"
|
||||
ToolTip="{Binding SaveToolTip}"
|
||||
Visibility="{Binding PDFEditor_Visibility}"
|
||||
Style="{StaticResource OptionPanel_Button}">
|
||||
<Image Source="/Resources/ProjectManager/Save.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</TabItem.Header>
|
||||
|
||||
<TabItem.Content>
|
||||
<EgtBEAMWALL:PDFEditorV/>
|
||||
</TabItem.Content>
|
||||
</TabItem>
|
||||
|
||||
</TabControl>
|
||||
|
||||
<!--<Button Command="{Binding SaveCommand}"
|
||||
|
||||
@@ -3,6 +3,7 @@ Imports System.IO
|
||||
Imports EgtUILib
|
||||
Imports EgtWPFLib5
|
||||
Imports EgtBEAMWALL.Core
|
||||
Imports System.Linq.Expressions
|
||||
Imports MS.Internal
|
||||
Imports Ionic.Zip
|
||||
|
||||
@@ -13,6 +14,7 @@ Public Class ConfigurationPageVM
|
||||
GENERAL = 0
|
||||
QPARAMETERS = 1
|
||||
MACHINE = 2
|
||||
PDFEDITOR = 3
|
||||
End Enum
|
||||
|
||||
Private m_QParametersModified As Boolean = False
|
||||
@@ -36,18 +38,27 @@ Public Class ConfigurationPageVM
|
||||
m_bGeneral_Visibility = Visibility.Visible
|
||||
m_bParameterQ_Visibility = Visibility.Collapsed
|
||||
m_bMachine_Visibility = Visibility.Collapsed
|
||||
m_bPDFEditor_Visibility = Visibility.Collapsed
|
||||
ElseIf m_SelConfigSubPage = ConfigSubPages.QPARAMETERS Then
|
||||
m_bParameterQ_Visibility = Visibility.Visible
|
||||
m_bGeneral_Visibility = Visibility.Collapsed
|
||||
m_bMachine_Visibility = Visibility.Collapsed
|
||||
m_bPDFEditor_Visibility = Visibility.Collapsed
|
||||
ElseIf m_SelConfigSubPage = ConfigSubPages.MACHINE Then
|
||||
m_bMachine_Visibility = Visibility.Visible
|
||||
m_bGeneral_Visibility = Visibility.Collapsed
|
||||
m_bParameterQ_Visibility = Visibility.Collapsed
|
||||
m_bPDFEditor_Visibility = Visibility.Collapsed
|
||||
ElseIf m_SelConfigSubPage = ConfigSubPages.PDFEDITOR Then
|
||||
m_bPDFEditor_Visibility = Visibility.Visible
|
||||
m_bMachine_Visibility = Visibility.Collapsed
|
||||
m_bGeneral_Visibility = Visibility.Collapsed
|
||||
m_bParameterQ_Visibility = Visibility.Collapsed
|
||||
End If
|
||||
NotifyPropertyChanged(NameOf(General_Visibility))
|
||||
NotifyPropertyChanged(NameOf(ParameterQ_Visibility))
|
||||
NotifyPropertyChanged(NameOf(Machine_Visibility))
|
||||
NotifyPropertyChanged(NameOf(PDFEditor_Visibility))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
@@ -262,6 +273,17 @@ Public Class ConfigurationPageVM
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_bPDFEditor_Visibility As Visibility = Visibility.Collapsed
|
||||
Public Property PDFEditor_Visibility As Visibility
|
||||
Get
|
||||
Return m_bPDFEditor_Visibility
|
||||
End Get
|
||||
Set(value As Visibility)
|
||||
m_bPDFEditor_Visibility = value
|
||||
NotifyPropertyChanged(NameOf(PDFEditor_Visibility))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
' Definizione comandi
|
||||
Private m_cmdSave As ICommand
|
||||
Private m_cmdChooseExternalBackupFolderPath As ICommand
|
||||
@@ -269,7 +291,6 @@ Public Class ConfigurationPageVM
|
||||
Private m_cmdRestore As ICommand
|
||||
|
||||
#Region "Messages"
|
||||
|
||||
Public ReadOnly Property L_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61803)
|
||||
@@ -288,6 +309,12 @@ Public Class ConfigurationPageVM
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property PND_Msg As String
|
||||
Get
|
||||
Return EgtMsg(6180)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property Type_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61850)
|
||||
@@ -317,36 +344,43 @@ Public Class ConfigurationPageVM
|
||||
Return EgtMsg(61616)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property Max_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61617)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property CurrentLanguage_Msg As String
|
||||
Get
|
||||
Return EgtMsg(6501)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property LanguageAdvert_Msg As String
|
||||
Get
|
||||
Return EgtMsg(6502)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property MMUnits_Msg As String
|
||||
Get
|
||||
Return EgtMsg(6540)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property Nesting_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61829)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property SectionTime_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61806)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property PartTime_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61807)
|
||||
@@ -419,6 +453,12 @@ Public Class ConfigurationPageVM
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property PDFEditor_Msg As String
|
||||
Get
|
||||
Return EgtMsg(62538)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
#End Region ' Messages
|
||||
|
||||
#Region "Constructor"
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="..\packages\EntityFramework.6.4.4\build\EntityFramework.props" Condition="Exists('..\packages\EntityFramework.6.4.4\build\EntityFramework.props')" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
@@ -138,12 +137,6 @@
|
||||
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="BouncyCastle.Crypto, Version=1.9.0.0, Culture=neutral, PublicKeyToken=0e99375e54769942, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Portable.BouncyCastle.1.9.0\lib\net40\BouncyCastle.Crypto.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="DotNetZip, Version=1.16.0.0, Culture=neutral, PublicKeyToken=6583c7c814667745, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\DotNetZip.1.16.0\lib\net40\DotNetZip.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="EgtUILib, Version=2.4.3.1, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\ExtLibs\EgtUILib.dll</HintPath>
|
||||
@@ -152,55 +145,7 @@
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\ExtLibs\EgtWPFLib5.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\EntityFramework.6.4.4\lib\net45\EntityFramework.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="EntityFramework.SqlServer, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\EntityFramework.6.4.4\lib\net45\EntityFramework.SqlServer.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Google.Protobuf, Version=3.21.9.0, Culture=neutral, PublicKeyToken=a7d26565bac4d604, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Google.Protobuf.3.21.9\lib\net45\Google.Protobuf.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="K4os.Compression.LZ4, Version=1.3.5.0, Culture=neutral, PublicKeyToken=2186fa9121ef231d, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\K4os.Compression.LZ4.1.3.5\lib\net462\K4os.Compression.LZ4.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="K4os.Compression.LZ4.Streams, Version=1.3.5.0, Culture=neutral, PublicKeyToken=2186fa9121ef231d, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\K4os.Compression.LZ4.Streams.1.3.5\lib\net462\K4os.Compression.LZ4.Streams.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="K4os.Hash.xxHash, Version=1.0.8.0, Culture=neutral, PublicKeyToken=32cd54395057cec3, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\K4os.Hash.xxHash.1.0.8\lib\net462\K4os.Hash.xxHash.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="MigraDoc.DocumentObjectModel-wpf, Version=1.50.5147.0, Culture=neutral, PublicKeyToken=f94615aa0424f9eb, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\PDFsharp-MigraDoc-wpf.1.50.5147\lib\net30\MigraDoc.DocumentObjectModel-wpf.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="MigraDoc.Rendering-wpf, Version=1.50.5147.0, Culture=neutral, PublicKeyToken=f94615aa0424f9eb, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\PDFsharp-MigraDoc-wpf.1.50.5147\lib\net30\MigraDoc.Rendering-wpf.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="MigraDoc.RtfRendering-wpf, Version=1.50.5147.0, Culture=neutral, PublicKeyToken=f94615aa0424f9eb, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\PDFsharp-MigraDoc-wpf.1.50.5147\lib\net30\MigraDoc.RtfRendering-wpf.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="MySql.Data, Version=8.0.21.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MySql.Data.8.0.21\lib\net452\MySql.Data.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="MySql.Data.EntityFramework, Version=8.0.21.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MySql.Data.EntityFramework.8.0.21\lib\net452\MySql.Data.EntityFramework.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="NLog, Version=5.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\NLog.5.0.1\lib\net46\NLog.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="PdfSharp-wpf, Version=1.50.5147.0, Culture=neutral, PublicKeyToken=f94615aa0424f9eb, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\PDFsharp-MigraDoc-wpf.1.50.5147\lib\net30\PdfSharp-wpf.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="PdfSharp.Charting-wpf, Version=1.50.5147.0, Culture=neutral, PublicKeyToken=f94615aa0424f9eb, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\PDFsharp-MigraDoc-wpf.1.50.5147\lib\net30\PdfSharp.Charting-wpf.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Renci.SshNet, Version=2016.1.0.0, Culture=neutral, PublicKeyToken=1cee9f8bde3db106, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\SSH.NET.2016.1.0\lib\net40\Renci.SshNet.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.ComponentModel" />
|
||||
<Reference Include="System.ComponentModel.DataAnnotations" />
|
||||
<Reference Include="System.Configuration" />
|
||||
@@ -209,24 +154,9 @@
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Drawing.Design" />
|
||||
<Reference Include="System.IO.Compression" />
|
||||
<Reference Include="System.IO.Pipelines, Version=5.0.0.2, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.IO.Pipelines.5.0.2\lib\net461\System.IO.Pipelines.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Management" />
|
||||
<Reference Include="System.Memory, Version=4.0.1.2, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Numerics" />
|
||||
<Reference Include="System.Numerics.Vectors, Version=4.1.4.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Security" />
|
||||
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Transactions" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
@@ -237,16 +167,10 @@
|
||||
<Reference Include="System.Xaml">
|
||||
<RequiredTargetFramework>4.0</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="Ubiety.Dns.Core, Version=2.2.1.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MySql.Data.8.0.21\lib\net452\Ubiety.Dns.Core.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="WindowsBase" />
|
||||
<Reference Include="PresentationCore" />
|
||||
<Reference Include="PresentationFramework" />
|
||||
<Reference Include="WindowsFormsIntegration" />
|
||||
<Reference Include="Zstandard.Net, Version=1.1.7.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MySql.Data.8.0.21\lib\net452\Zstandard.Net.dll</HintPath>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ApplicationDefinition Include="Application.xaml">
|
||||
@@ -275,6 +199,7 @@
|
||||
<Compile Include="PartInRawPartManager\PartInRawPartManagerWndV.xaml.vb">
|
||||
<DependentUpon>PartInRawPartManagerWndV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="PdfViewer\PDFViewerVM.vb" />
|
||||
<Compile Include="RawPartManager\RawPartManagerWndV.xaml.vb">
|
||||
<DependentUpon>RawPartManagerWndV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
@@ -380,6 +305,9 @@
|
||||
</Compile>
|
||||
<Compile Include="ProdProjManager\ProdProjManagerVM.vb" />
|
||||
<Compile Include="ProjectManager\ProjectManagerVM.vb" />
|
||||
<Compile Include="PdfViewer\PdfViewer.xaml.vb">
|
||||
<DependentUpon>PdfViewer.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="ProjectTypeWnd\ProjectTypeWndV.xaml.vb">
|
||||
<DependentUpon>ProjectTypeWndV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
@@ -411,6 +339,10 @@
|
||||
<Compile Include="Statistics\OptimizerStatisticsV.xaml.vb">
|
||||
<DependentUpon>OptimizerStatisticsV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Statistics\PDFEditorV.xaml.vb">
|
||||
<DependentUpon>PDFEditorV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Statistics\PDFEditorVM.vb" />
|
||||
<Compile Include="Statistics\PDFHelper.vb" />
|
||||
<Compile Include="Statistics\StatisticsV.xaml.vb">
|
||||
<DependentUpon>StatisticsV.xaml</DependentUpon>
|
||||
@@ -436,6 +368,7 @@
|
||||
<Compile Include="Utility\LuaExec.vb" />
|
||||
<Compile Include="Utility\PartsObservableCollection.vb" />
|
||||
<Compile Include="Utility\SectionXMaterialToBeAdded.vb" />
|
||||
<Compile Include="Utility\Statistic_Messages.vb" />
|
||||
<Compile Include="Utility\TextBlockUtils.vb" />
|
||||
<Compile Include="Utility\TreeViewItemBase.vb" />
|
||||
<Compile Include="WarehouseWnd\WarehouseHelper.vb" />
|
||||
@@ -544,10 +477,34 @@
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="OnlyProdProject\OnlyProdProjectV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="OptimizePanel\OnlyProdOptimizePanelV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="PartInRawPartManager\PartInRawPartManagerV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="PartInRawPartManager\PartInRawPartManagerWndV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="PartParametersWnd\PartParametersWndV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="PdfViewer\PdfViewer.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="ProdProjManager\ProdProjManagerV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="RawPartManager\RawPartManagerWndV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
@@ -640,26 +597,6 @@
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="OnlyProdProject\OnlyProdProjectV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="OptimizePanel\OnlyProdOptimizePanelV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="PartInRawPartManager\PartInRawPartManagerV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="PartParametersWnd\PartParametersWndV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="ProdProjManager\ProdProjManagerV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="ProjectTypeWnd\ProjectTypeWndV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
@@ -692,6 +629,10 @@
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="Statistics\PDFEditorV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="Statistics\StatisticsV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
@@ -914,7 +855,6 @@
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
<LastGenOutput>Settings.Designer.vb</LastGenOutput>
|
||||
</None>
|
||||
<None Include="packages.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\EgtBEAMWALL.ico" />
|
||||
@@ -1133,9 +1073,56 @@
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\ProjectManager\AddProj.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\PDFEditor\MoveUp.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\PDFEditor\MoveDown.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\PDFEditor\PrintPDF.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\PDFEditor\Delete.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\OpenProjectFileDialog\Archived.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<PackageReference Include="BouncyCastle">
|
||||
<Version>1.8.5</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="DotNetZip">
|
||||
<Version>1.16.0</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="EntityFramework">
|
||||
<Version>6.4.4</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Google.Protobuf">
|
||||
<Version>3.21.9</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="K4os.Compression.LZ4.Streams">
|
||||
<Version>1.3.5</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Microsoft.Windows.SDK.Contracts">
|
||||
<Version>10.0.22621.2428</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="MySql.Data.EntityFramework">
|
||||
<Version>8.0.21</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="NLog">
|
||||
<Version>5.0.1</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="PDFsharp-MigraDoc-wpf">
|
||||
<Version>1.50.5147</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Portable.BouncyCastle">
|
||||
<Version>1.9.0</Version>
|
||||
</PackageReference>
|
||||
<PackageReference Include="System.IO.Pipelines">
|
||||
<Version>6.0.0</Version>
|
||||
</PackageReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
|
||||
<PropertyGroup>
|
||||
<PostBuildEvent>IF "$(PlatformName)"=="x86" IF "$(ConfigurationName)" == "Release" copy $(TargetPath) c:\EgtProg\EgtBEAMWALL\EgtBEAMWALL.ViewerOptimizerR32.exe
|
||||
@@ -1143,12 +1130,4 @@ IF "$(PlatformName)"=="x86" IF "$(ConfigurationName)" == "Debug" copy $(TargetPa
|
||||
IF "$(PlatformName)"=="x64" IF "$(ConfigurationName)" == "Release" copy $(TargetPath) c:\EgtProg\EgtBEAMWALL\EgtBEAMWALL.ViewerOptimizerR64.exe
|
||||
IF "$(PlatformName)"=="x64" IF "$(ConfigurationName)" == "Debug" copy $(TargetPath) c:\EgtProg\EgtBEAMWALL\EgtBEAMWALL.ViewerOptimizerD64.exe</PostBuildEvent>
|
||||
</PropertyGroup>
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\EntityFramework.6.4.4\build\EntityFramework.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\EntityFramework.6.4.4\build\EntityFramework.props'))" />
|
||||
<Error Condition="!Exists('..\packages\EntityFramework.6.4.4\build\EntityFramework.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\EntityFramework.6.4.4\build\EntityFramework.targets'))" />
|
||||
</Target>
|
||||
<Import Project="..\packages\EntityFramework.6.4.4\build\EntityFramework.targets" Condition="Exists('..\packages\EntityFramework.6.4.4\build\EntityFramework.targets')" />
|
||||
</Project>
|
||||
@@ -208,6 +208,15 @@ Public Class PartVM
|
||||
ElseIf Map.refProjectVM.BTLStructureVM.nPROJTYPE = MachineType.WALL Then
|
||||
vtAxes = Vector3d.X_AX
|
||||
End If
|
||||
If EgtRotate(nPartId, b3Box.Center, vtAxes, 180, GDB_RT.GLOB) Then
|
||||
Dim vtAxes As Vector3d
|
||||
' se travi ruoto attorno all'asse Z
|
||||
If Map.refProjectVM.BTLStructureVM.nPROJTYPE = MachineType.BEAM Then
|
||||
vtAxes = Vector3d.Z_AX
|
||||
' se pareti ruoto attorno all'asse X
|
||||
ElseIf Map.refProjectVM.BTLStructureVM.nPROJTYPE = MachineType.WALL Then
|
||||
vtAxes = Vector3d.X_AX
|
||||
End If
|
||||
If EgtRotate(nPartId, b3Box.Center, vtAxes, 180, GDB_RT.GLOB) Then
|
||||
m_PartM.nFLIP = If(value, 180, 0)
|
||||
EgtSetInfo(nPartId, MGR_PRT_FLIP, If(value, 180, 0))
|
||||
@@ -241,6 +250,33 @@ Public Class PartVM
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
If Map.refProjectVM.BTLStructureVM.nPROJTYPE = BWType.WALL Then
|
||||
' recupero box del pezzo
|
||||
Dim b3Part As New BBox3d
|
||||
EgtGetBBoxGlob(nPartId, GDB_BB.STANDARD, b3Part)
|
||||
' calcolo distanza tra i box
|
||||
Dim vtDeltaBox As Vector3d = b3Box.Min - b3Part.Min
|
||||
' reinserisco il pezzo nel grezzo
|
||||
EgtAddPartToRawPart(nPartId, New Point3d(dTempPosX - vtDeltaBox.x, dTempPosY - vtDeltaBox.y, 0), ParentMachGroupVM.MyMachGroupM.nRawPartId)
|
||||
ElseIf Map.refProjectVM.BTLStructureVM.nPROJTYPE = BWType.BEAM Then
|
||||
' elimino vecchio grezzo ed eseguo script creazione nuovo
|
||||
DeleteOldRaw()
|
||||
Dim sLogPath As String = Map.refMainWindowVM.MainWindowM.sTempDir & "\RawPartLog.txt"
|
||||
If Not ExecBeam(sLogPath, Map.refMachinePanelVM.SelectedMachine.Name, CalcIntegration.CmdTypes.RAWPART, False) Then
|
||||
EgtOutLog("Fallita creazione barra nell'ExecBeam in bFlip")
|
||||
' elimino vecchio grezzo ed eseguo script creazione nuovo
|
||||
DeleteOldRaw()
|
||||
If EgtRotate(nPartId, b3Box.Center, vtAxes, 180, GDB_RT.GLOB) Then
|
||||
m_PartM.nFLIP = 180
|
||||
EgtSetInfo(nPartId, MGR_PRT_FLIP, 180)
|
||||
Else
|
||||
NotifyPropertyChanged(NameOf(m_PartM.nFLIP))
|
||||
End If
|
||||
If Not ExecBeam(sLogPath, Map.refMachinePanelVM.SelectedMachine.Name, CalcIntegration.CmdTypes.RAWPART, False) Then
|
||||
EgtOutLog("Fallita esecuzione ExecBeam. ERRORE")
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
' lo riseleziono
|
||||
EgtSelectObj(nPartId)
|
||||
' resetto validazione del pezzo
|
||||
@@ -435,6 +471,20 @@ Public Class PartVM
|
||||
End Select
|
||||
' reinserisco il pezzo nel grezzo
|
||||
EgtAddPartToRawPart(nPartId, New Point3d(dTempPosX - vtDeltaBox.x, dTempPosY - vtDeltaBox.y, 0), ParentMachGroupVM.MyMachGroupM.nRawPartId)
|
||||
End If
|
||||
Case MCH_CR.TR
|
||||
'vtDeltaBox = b3Box.Max - b3Part.Max
|
||||
dTempPosX = dTempPosX - dL + dW
|
||||
dTempPosY = dTempPosY - dW + dL
|
||||
Case MCH_CR.BR
|
||||
'vtDeltaBox = New Vector3d(b3Box.Max.x - b3Part.Max.x, b3Box.Min.y - b3Part.Min.y, 0)
|
||||
dTempPosX = dTempPosX - dL + dW
|
||||
End Select
|
||||
Case Else
|
||||
' non cambio nulla
|
||||
End Select
|
||||
' reinserisco il pezzo nel grezzo
|
||||
EgtAddPartToRawPart(nPartId, New Point3d(dTempPosX - vtDeltaBox.x, dTempPosY - vtDeltaBox.y, 0), ParentMachGroupVM.MyMachGroupM.nRawPartId)
|
||||
End If
|
||||
' lo riseleziono
|
||||
EgtSelectObj(nPartId)
|
||||
|
||||
@@ -22,6 +22,7 @@ Public Class NewOpenProjectFileDialogVM
|
||||
|
||||
Public Overrides Function Init(ProjectType As ProjectType, Optional CurrProjectList As List(Of ProjectFileVM) = Nothing, Optional GoToProd As Boolean = False) As Boolean?
|
||||
m_ProjectType = ProjectType
|
||||
ProdItem.m_delUpdateNameInDb = AddressOf DbControllers.m_ProdController.UpdateDescription
|
||||
|
||||
NotifyPropertyChanged(NameOf(FilterTypeList))
|
||||
m_SelFilterType = m_FilterTypeList(0)
|
||||
@@ -250,33 +251,3 @@ Public Class NewOpenProjectFileDialogVM
|
||||
#End Region ' METHODS
|
||||
|
||||
End Class
|
||||
|
||||
Public Class ProdItem
|
||||
Inherits Core.ProdItem
|
||||
|
||||
Public Overrides Property sName As String
|
||||
Get
|
||||
Return If(Not IsNothing(m_ProdFileVM), m_ProdFileVM.sName, "")
|
||||
End Get
|
||||
Set(value As String)
|
||||
If Not IsNothing(m_ProdFileVM) Then
|
||||
DbControllers.m_ProdController.UpdateDescription(m_ProdFileVM.nProdId, value)
|
||||
m_ProdFileVM.sName = value
|
||||
m_delIsModifiedSetUp(False)
|
||||
End If
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Sub New(ProdFileVM As ProdFileVM, ProjFileVM As ProjFileVM)
|
||||
MyBase.New(ProdFileVM, ProjFileVM)
|
||||
End Sub
|
||||
|
||||
Sub New(ProjFileVM As ProjFileVM)
|
||||
MyBase.New(ProjFileVM)
|
||||
End Sub
|
||||
|
||||
Sub New(ProdFileVM As ProjectFileVM, ProjFileVMList As List(Of ProjectFileVM))
|
||||
MyBase.New(ProdFileVM, ProjFileVMList)
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
@@ -12,6 +12,7 @@ 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
|
||||
m_GoToProd = GoToProd
|
||||
' carico colonne
|
||||
LoadColumns(ProjectType)
|
||||
NotifyPropertyChanged(NameOf(FilterTypeList))
|
||||
@@ -19,7 +20,7 @@ Public Class OpenProjectFileDialogVM
|
||||
' carico lista progetti
|
||||
If IsNothing(CurrProjectList) OrElse CurrProjectList.Count = 0 Then
|
||||
SetFixedProjectList(False)
|
||||
RefreshProjectList(GoToProd)
|
||||
RefreshProjectList()
|
||||
Else
|
||||
SetFixedProjectList(True)
|
||||
m_ProjectList = New ObservableCollection(Of ProjectFileVM)(CurrProjectList)
|
||||
@@ -29,7 +30,7 @@ Public Class OpenProjectFileDialogVM
|
||||
m_ProjectList_View.Filter = AddressOf ProjectFilter
|
||||
End Function
|
||||
|
||||
Public Overrides Sub RefreshProjectList(Optional GoToProd As Boolean = False)
|
||||
Public Overrides Sub RefreshProjectList()
|
||||
m_ProjectList.Clear()
|
||||
' calcolo periodo e righe
|
||||
Dim dtStart As DateTime
|
||||
@@ -66,22 +67,7 @@ Public Class OpenProjectFileDialogVM
|
||||
Else
|
||||
DbProjectList = DbControllers.m_ProjController.GetLastByExpDesc(dtStart, dtEnd, nRowQuantity, False)
|
||||
End If
|
||||
For Each Project In DbProjectList
|
||||
' recupero path per verificare esista
|
||||
If IsNothing(Project.nProjId) OrElse Project.nProjId = 0 Then Continue For
|
||||
Dim sPath As String = Map.refMainWindowVM.MainWindowM.sProjsDir & "\" & Project.nProjId.ToString("0000") & "\" & Project.nProjId.ToString("0000") & ".nge"
|
||||
If File.Exists(sPath) Then
|
||||
m_ProjectList.Add(New ProjFileVM(Project))
|
||||
Else
|
||||
' CheckMe impostata come cancellazione FISICA dal DB...
|
||||
DbControllers.m_ProjController.DeleteProj(Project.nProjId, False)
|
||||
EgtOutLog("Found project on Db without the folder and erased it! Proj number " & Project.nProjId.ToString("0000"))
|
||||
End If
|
||||
Next
|
||||
ElseIf m_ProjectType = ProjectType.PROD Then
|
||||
Dim DbProjectList As New List(Of ProdFileM)
|
||||
DbProjectList = DbControllers.m_ProdController.GetLastDesc(dtStart, dtEnd, nRowQuantity, True)
|
||||
If GoToProd Then
|
||||
If m_GoToProd Then
|
||||
For Each Project In DbProjectList
|
||||
' recupero path per verificare esista
|
||||
If IsNothing(Project.nProdId) OrElse Project.nProdId = 0 Then Continue For
|
||||
@@ -89,7 +75,7 @@ Public Class OpenProjectFileDialogVM
|
||||
If Project.sMachine = ProjectManagerVM.CurrProj.sMachine AndAlso
|
||||
Project.nType = ProjectManagerVM.CurrProj.nType Then
|
||||
If File.Exists(sPath) Then
|
||||
m_ProjectList.Add(New ProdFileVM(Project))
|
||||
m_ProjectList.Add(New ProjFileVM(Project))
|
||||
Else
|
||||
DbControllers.m_ProdController.DeleteProd(Project.nProdId, True)
|
||||
EgtOutLog("Found project on Db without the folder and erased it! Prod number " & Project.nProdId.ToString("0000"))
|
||||
@@ -99,16 +85,31 @@ Public Class OpenProjectFileDialogVM
|
||||
Else
|
||||
For Each Project In DbProjectList
|
||||
' recupero path per verificare esista
|
||||
If IsNothing(Project.nProdId) OrElse Project.nProdId = 0 Then Continue For
|
||||
Dim sPath As String = Map.refMainWindowVM.MainWindowM.sProdsDir & "\" & Project.nProdId.ToString("0000") & "\" & Project.nProdId.ToString("0000") & ".nge"
|
||||
If IsNothing(Project.nProjId) OrElse Project.nProjId = 0 Then Continue For
|
||||
Dim sPath As String = Map.refMainWindowVM.MainWindowM.sProjsDir & "\" & Project.nProjId.ToString("0000") & "\" & Project.nProjId.ToString("0000") & ".nge"
|
||||
If File.Exists(sPath) Then
|
||||
m_ProjectList.Add(New ProdFileVM(Project))
|
||||
m_ProjectList.Add(New ProjFileVM(Project))
|
||||
Else
|
||||
DbControllers.m_ProdController.DeleteProd(Project.nProdId, True)
|
||||
EgtOutLog("Found project on Db without the folder and erased it! Prod number " & Project.nProdId.ToString("0000"))
|
||||
' CheckMe impostata come cancellazione FISICA dal DB...
|
||||
DbControllers.m_ProjController.DeleteProj(Project.nProjId, False)
|
||||
EgtOutLog("Found project on Db without the folder and erased it! Proj number " & Project.nProjId.ToString("0000"))
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
ElseIf 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
|
||||
' recupero path per verificare esista
|
||||
If IsNothing(Project.nProdId) OrElse Project.nProdId = 0 Then Continue For
|
||||
Dim sPath As String = Map.refMainWindowVM.MainWindowM.sProdsDir & "\" & Project.nProdId.ToString("0000") & "\" & Project.nProdId.ToString("0000") & ".nge"
|
||||
If File.Exists(sPath) Then
|
||||
m_ProjectList.Add(New ProdFileVM(Project))
|
||||
Else
|
||||
DbControllers.m_ProdController.DeleteProd(Project.nProdId, True)
|
||||
EgtOutLog("Found project on Db without the folder and erased it! Prod number " & Project.nProdId.ToString("0000"))
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
@@ -0,0 +1,101 @@
|
||||
Imports System.Threading.Tasks
|
||||
Imports EgtWPFLib5
|
||||
Imports Windows.Storage
|
||||
Imports System.IO
|
||||
Imports Windows.Data.Pdf
|
||||
Imports Windows.Storage.Streams
|
||||
|
||||
Public Class PDFViewerVM
|
||||
Inherits VMBase
|
||||
|
||||
#Region "FIELDS & PROPERTIES"
|
||||
|
||||
Private m_sPdfPath As String
|
||||
Public Property PdfPath As String
|
||||
Get
|
||||
Return m_sPdfPath
|
||||
End Get
|
||||
Set(value As String)
|
||||
m_sPdfPath = value
|
||||
If Not String.IsNullOrEmpty(m_sPdfPath) Then
|
||||
Dim path = System.IO.Path.GetFullPath(m_sPdfPath)
|
||||
StorageFile.GetFileFromPathAsync(path).AsTask().ContinueWith(Function(t) PdfDocument.LoadFromFileAsync(t.Result).AsTask()).Unwrap().ContinueWith(Function(t2) PdfToImages(t2.Result), TaskScheduler.FromCurrentSynchronizationContext())
|
||||
End If
|
||||
NotifyPropertyChanged(NameOf(PdfPath))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private Shared m_Items As List(Of Image)
|
||||
Public Shared ReadOnly Property Items As List(Of Image)
|
||||
Get
|
||||
Return m_Items
|
||||
End Get
|
||||
End Property
|
||||
|
||||
'Public Shared ReadOnly PdfPathProperty As DependencyProperty = DependencyProperty.Register("PdfPath",
|
||||
' GetType(String),
|
||||
' GetType(PDFViewerVM))
|
||||
|
||||
'Private Shared Sub OnPdfPathChanged(d As DependencyObject, e As DependencyPropertyChangedEventArgs)
|
||||
' 'Dim pdfDrawer As PdfViewer = CType(d, PdfViewer)
|
||||
|
||||
' If Not String.IsNullOrEmpty(PdfPath) Then
|
||||
' Dim path = System.IO.Path.GetFullPath(PdfPath)
|
||||
' StorageFile.GetFileFromPathAsync(path).AsTask().ContinueWith(Function(t) PdfDocument.LoadFromFileAsync(t.Result).AsTask()).Unwrap().ContinueWith(Function(t2) PdfToImages(pdfDrawer, t2.Result), TaskScheduler.FromCurrentSynchronizationContext())
|
||||
' End If
|
||||
'End Sub
|
||||
|
||||
#End Region ' Field & Properties
|
||||
|
||||
Sub New()
|
||||
End Sub
|
||||
|
||||
#Region "METHODS"
|
||||
|
||||
''' <summary>
|
||||
''' Funzione che trasforma le pagine del pdf in immagine
|
||||
''' </summary>
|
||||
''' <param name="pdfDoc">Singola pagina del PDf</param>
|
||||
''' <returns></returns>
|
||||
Private Shared Async Function PdfToImages(pdfDoc As PdfDocument) As Task
|
||||
'Dim items As ItemCollection = pdfViewer.PagesContainer.Items
|
||||
Items.Clear()
|
||||
|
||||
If IsNothing(pdfDoc) Then Return
|
||||
|
||||
For i As Integer = 0 To pdfDoc.PageCount - 1
|
||||
Using page As PdfPage = pdfDoc.GetPage(i)
|
||||
Dim bitmap As BitmapImage = Await PageToBitmapAsync(page)
|
||||
Dim image As New Image With {
|
||||
.Source = bitmap,
|
||||
.HorizontalAlignment = HorizontalAlignment.Center,
|
||||
.Width = bitmap.Width,
|
||||
.Height = bitmap.Height
|
||||
}
|
||||
Items.Add(image)
|
||||
End Using
|
||||
Next
|
||||
End Function
|
||||
|
||||
''' <summary>
|
||||
''' Funzione che trasforma la singola pagina del PDF in bitmap
|
||||
''' </summary>
|
||||
''' <param name="page">Singola pagina del PDF che verrà trasformata in bitmap</param>
|
||||
''' <returns></returns>
|
||||
Private Shared Async Function PageToBitmapAsync(page As PdfPage) As Task(Of BitmapImage)
|
||||
Dim image As New BitmapImage()
|
||||
|
||||
Using stream = New InMemoryRandomAccessStream()
|
||||
Await page.RenderToStreamAsync(stream)
|
||||
image.BeginInit()
|
||||
image.CacheOption = BitmapCacheOption.OnLoad
|
||||
image.StreamSource = stream.AsStream()
|
||||
image.EndInit()
|
||||
End Using
|
||||
|
||||
Return image
|
||||
End Function
|
||||
|
||||
#End Region ' Methods
|
||||
|
||||
End Class
|
||||
@@ -0,0 +1,9 @@
|
||||
<UserControl x:Class="PdfViewer"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
|
||||
<ScrollViewer PanningMode="Both"
|
||||
Background="DarkGray">
|
||||
<!--<ItemsControl ItemsSource="{Binding Items}"/>-->
|
||||
<ItemsControl x:Name="PagesContainer"/>
|
||||
</ScrollViewer>
|
||||
</UserControl>
|
||||
@@ -0,0 +1,143 @@
|
||||
Imports System.IO
|
||||
Imports System.Threading.Tasks
|
||||
Imports Windows.Data.Pdf
|
||||
Imports Windows.Storage
|
||||
Imports Windows.Storage.Streams
|
||||
|
||||
Partial Public Class PdfViewer
|
||||
Inherits UserControl
|
||||
|
||||
'Public Property PdfPath As String
|
||||
' Get
|
||||
' Return CStr(GetValue(PdfPathProperty))
|
||||
' End Get
|
||||
' Set(value As String)
|
||||
' SetValue(PdfPathProperty, value)
|
||||
' End Set
|
||||
'End Property
|
||||
|
||||
'Private Shared m_Items As New List(Of Image)
|
||||
'Public Shared ReadOnly Property Items As List(Of Image)
|
||||
' Get
|
||||
' Return m_Items
|
||||
' End Get
|
||||
'End Property
|
||||
|
||||
Public Property PdfPath As String
|
||||
Get
|
||||
Return CStr(GetValue(PdfPathProperty))
|
||||
End Get
|
||||
Set(value As String)
|
||||
SetValue(PdfPathProperty, value)
|
||||
End Set
|
||||
End Property
|
||||
|
||||
'Public Shared ReadOnly PdfPathProperty As DependencyProperty = DependencyProperty.Register("PdfPath",
|
||||
' GetType(String),
|
||||
' GetType(PdfViewer),
|
||||
' New FrameworkPropertyMetadata(String.Empty, New PropertyChangedCallback(AddressOf OnPdfPathChanged)))
|
||||
|
||||
Public Shared ReadOnly PdfPathProperty As DependencyProperty = DependencyProperty.Register("PdfPath",
|
||||
GetType(String),
|
||||
GetType(PdfViewer),
|
||||
New PropertyMetadata(Nothing, propertyChangedCallback:=AddressOf OnPdfPathChanged))
|
||||
|
||||
Private Shared Sub OnPdfPathChanged(d As DependencyObject, e As DependencyPropertyChangedEventArgs)
|
||||
Dim pdfDrawer As PdfViewer = CType(d, PdfViewer)
|
||||
|
||||
If Not String.IsNullOrEmpty(pdfDrawer.PdfPath) Then
|
||||
Dim path = System.IO.Path.GetFullPath(pdfDrawer.PdfPath)
|
||||
StorageFile.GetFileFromPathAsync(path).AsTask().ContinueWith(Function(t) PdfDocument.LoadFromFileAsync(t.Result).AsTask()).Unwrap().ContinueWith(Function(t2) PdfToImages(pdfDrawer, t2.Result), TaskScheduler.FromCurrentSynchronizationContext())
|
||||
End If
|
||||
End Sub
|
||||
|
||||
'Private Shared Sub OnPdfPathChanged(d As DependencyObject, e As DependencyPropertyChangedEventArgs)
|
||||
' Dim pdfDrawer As PdfViewer = CType(d, PdfViewer)
|
||||
' If Not String.IsNullOrEmpty(pdfDrawer.PdfPath) Then
|
||||
' Dim path = System.IO.Path.GetFullPath(pdfDrawer.PdfPath)
|
||||
' StorageFile.GetFileFromPathAsync(path).AsTask().ContinueWith(Function(t) PdfDocument.LoadFromFileAsync(t.Result).AsTask()).Unwrap().ContinueWith(Function(t2) PdfToImages(t2.Result), TaskScheduler.FromCurrentSynchronizationContext())
|
||||
' End If
|
||||
'End Sub
|
||||
|
||||
Sub New()
|
||||
InitializeComponent()
|
||||
End Sub
|
||||
|
||||
'''' <summary>
|
||||
'''' Funzione che trasforma le pagine del pdf in immagine
|
||||
'''' </summary>
|
||||
'''' <param name="pdfDoc">Singola pagina del PDf</param>
|
||||
'''' <returns></returns>
|
||||
'Private Shared Async Function PdfToImages(pdfDoc As PdfDocument) As Task
|
||||
' 'Dim items As ItemCollection = pdfViewer.PagesContainer.Items
|
||||
' Items.Clear()
|
||||
|
||||
' If IsNothing(pdfDoc) Then Return
|
||||
|
||||
' For i As Integer = 0 To pdfDoc.PageCount - 1
|
||||
' Using page As PdfPage = pdfDoc.GetPage(i)
|
||||
' Dim bitmap As BitmapImage = Await PageToBitmapAsync(page)
|
||||
' Dim image As New Image With {
|
||||
' .Source = bitmap,
|
||||
' .HorizontalAlignment = HorizontalAlignment.Center,
|
||||
' .Width = bitmap.Width,
|
||||
' .Height = bitmap.Height
|
||||
' }
|
||||
' Items.Add(image)
|
||||
' End Using
|
||||
' Next
|
||||
'End Function
|
||||
|
||||
''' <summary>
|
||||
''' Funzione che trasforma le pagine del pdf in immagine
|
||||
''' </summary>
|
||||
''' <param name="pdfViewer">PDF da trasformare</param>
|
||||
''' <param name="pdfDoc">Singola pagina del PDf</param>
|
||||
''' <returns></returns>
|
||||
Private Shared Async Function PdfToImages(pdfViewer As PdfViewer, pdfDoc As PdfDocument) As Task
|
||||
Dim items As ItemCollection = pdfViewer.PagesContainer.Items
|
||||
items.Clear()
|
||||
|
||||
If IsNothing(pdfDoc) Then Return
|
||||
|
||||
For i As Integer = 0 To pdfDoc.PageCount - 1
|
||||
Using page As PdfPage = pdfDoc.GetPage(i)
|
||||
Dim bitmap As BitmapImage = Await PageToBitmapAsync(page)
|
||||
Dim image As New Image With {
|
||||
.Source = bitmap,
|
||||
.Width = bitmap.PixelWidth,
|
||||
.Height = bitmap.PixelHeight,
|
||||
.HorizontalAlignment = HorizontalAlignment.Center,
|
||||
.Margin = New Thickness(5, 20, 5, 20),
|
||||
.SnapsToDevicePixels = True,
|
||||
.Stretch = Stretch.UniformToFill
|
||||
}
|
||||
items.Add(image)
|
||||
End Using
|
||||
Next
|
||||
End Function
|
||||
|
||||
''' <summary>
|
||||
''' Funzione che trasforma la singola pagina del PDF in bitmap
|
||||
''' </summary>
|
||||
''' <param name="page">Singola pagina del PDF che verrà trasformata in bitmap</param>
|
||||
''' <returns></returns>
|
||||
Private Shared Async Function PageToBitmapAsync(page As PdfPage) As Task(Of BitmapImage)
|
||||
Dim image As New BitmapImage()
|
||||
|
||||
Using stream = New InMemoryRandomAccessStream()
|
||||
Await page.RenderToStreamAsync(stream)
|
||||
image.BeginInit()
|
||||
image.CreateOptions = BitmapCreateOptions.PreservePixelFormat
|
||||
image.DecodePixelWidth = page.Size.Width
|
||||
image.DecodePixelHeight = page.Size.Height
|
||||
image.CacheOption = BitmapCacheOption.OnLoad
|
||||
image.StreamSource = stream.AsStream()
|
||||
image.UriSource = Nothing
|
||||
image.EndInit()
|
||||
End Using
|
||||
'image.Freeze()
|
||||
|
||||
Return image
|
||||
End Function
|
||||
End Class
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 658 B |
Binary file not shown.
|
After Width: | Height: | Size: 499 B |
Binary file not shown.
|
After Width: | Height: | Size: 492 B |
Binary file not shown.
|
After Width: | Height: | Size: 591 B |
@@ -68,6 +68,10 @@ Public Class MySceneHostVM
|
||||
EgtSetCurrentContext(MainScene.GetCtx())
|
||||
' inizializzo gestore travi e pareti
|
||||
EgtInitBeamMgr(EIB_FL.TS3_POS + EIB_FL.USEUATTR)
|
||||
' imposto direttorio BtlAux per geometrie Variant
|
||||
Dim sBtlAuxDir As String = ""
|
||||
GetMainPrivateProfileString(S_IMPORT, K_BTLAUXDIR, "", sBtlAuxDir)
|
||||
EgtSetBtlAuxDir( sBtlAuxDir)
|
||||
' inizializzo gestore lavorazioni
|
||||
EgtInitMachMgr(Map.refMainWindowVM.MainWindowM.sMachinesRoot, Map.refMainWindowVM.MainWindowM.sToolMakersDir)
|
||||
' Seleziono la macchina impostata nel file ini
|
||||
|
||||
@@ -0,0 +1,138 @@
|
||||
<Grid x:Class="PDFEditorV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:EgtBEAMWALL="clr-namespace:EgtBEAMWALL.ViewerOptimizer">
|
||||
|
||||
<Grid.Resources>
|
||||
<EgtBEAMWALL:ColumnNameConverter x:Key="ColumnNameConverter"/>
|
||||
</Grid.Resources>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<GroupBox Header="PDF Preview"
|
||||
Style="{StaticResource GroupBox_PDFPreview}">
|
||||
<StackPanel Style="{StaticResource StackPanel_List}">
|
||||
<Button ToolTip="PDF Viewer - Preview"
|
||||
Command="{Binding CreatePreviewVis_Command}"
|
||||
Style="{StaticResource PDFPanel_Button}">
|
||||
<Image Source="/Resources/PDFEditor/PrintPDF.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button ToolTip="PDF Viewer - Optimizer"
|
||||
Command="{Binding CreatePreviewOtt_Command}"
|
||||
Style="{StaticResource PDFPanel_Button}">
|
||||
<Image Source="/Resources/PDFEditor/PrintPDF.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button ToolTip="Close PDF Viewer"
|
||||
Command="{Binding ClosePreview_Command}"
|
||||
Style="{StaticResource Close_Button}">
|
||||
<Image Source="/Resources/PDFEditor/Delete.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</GroupBox>
|
||||
<ScrollViewer Grid.Row="1"
|
||||
Style="{StaticResource ScrollViewer}">
|
||||
<ItemsControl ItemsSource="{Binding ExpanderList}"
|
||||
Style="{StaticResource ItemsControl_ExpanderList}">
|
||||
<ItemsControl.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<StackPanel Style="{StaticResource StackPanel}"/>
|
||||
</ItemsPanelTemplate>
|
||||
</ItemsControl.ItemsPanel>
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Expander Style="{StaticResource Expander}">
|
||||
<Expander.Header>
|
||||
<TextBlock Text="{Binding sNameCategory}"
|
||||
Style="{StaticResource Category_TextBlock}"/>
|
||||
</Expander.Header>
|
||||
<ItemsControl ItemsSource="{Binding ExpanderElementList}"
|
||||
Style="{StaticResource ItemsControl_ExpanderElementList}">
|
||||
<ItemsControl.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<StackPanel Style="{StaticResource StackPanel}"/>
|
||||
</ItemsPanelTemplate>
|
||||
</ItemsControl.ItemsPanel>
|
||||
<ItemsControl.Resources>
|
||||
<DataTemplate DataType="{x:Type EgtBEAMWALL:ExpanderElement}">
|
||||
<StackPanel Style="{StaticResource StackPanel_List}">
|
||||
<CheckBox IsChecked="{Binding bParameter_IsChecked, UpdateSourceTrigger=PropertyChanged}"
|
||||
Style="{StaticResource OptionCheckBox}"/>
|
||||
<TextBlock Text="{Binding sNameParameter}"
|
||||
Style="{StaticResource OptionTextBlock}"/>
|
||||
</StackPanel>
|
||||
</DataTemplate>
|
||||
<DataTemplate DataType="{x:Type EgtBEAMWALL:ExpanderTable}">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<ListBox ItemsSource="{Binding RawPartColumns}"
|
||||
SelectedItem="{Binding SelColumns}"
|
||||
Style="{StaticResource ListBox}">
|
||||
<ListBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<StackPanel Style="{StaticResource StackPanel_List}">
|
||||
<CheckBox IsChecked="{Binding bIsChecked}"
|
||||
Style="{StaticResource OptionCheckBox}"/>
|
||||
<TextBlock Text="{Binding Name, Converter={StaticResource ColumnNameConverter}}"
|
||||
Style="{StaticResource OptionTextBlock}"/>
|
||||
</StackPanel>
|
||||
</DataTemplate>
|
||||
</ListBox.ItemTemplate>
|
||||
</ListBox>
|
||||
<UniformGrid Grid.Row="1"
|
||||
Rows="2"
|
||||
Visibility="{Binding vRawPartVisibility}">
|
||||
<StackPanel Style="{StaticResource StackPanel_List}">
|
||||
<CheckBox IsChecked="{Binding bSection_IsChecked}"
|
||||
Style="{StaticResource OptionCheckBox}"/>
|
||||
<TextBlock Text="{Binding Section_Msg}"
|
||||
Style="{StaticResource OptionTextBlock}"/>
|
||||
</StackPanel>
|
||||
<StackPanel Style="{StaticResource StackPanel_List}">
|
||||
<CheckBox IsChecked="{Binding bImage_IsChecked}"
|
||||
Style="{StaticResource OptionCheckBox}"/>
|
||||
<TextBlock Text="{Binding Image_Msg}"
|
||||
Style="{StaticResource OptionTextBlock}"/>
|
||||
</StackPanel>
|
||||
</UniformGrid>
|
||||
<StackPanel Grid.Column="1"
|
||||
Style="{StaticResource StackPanel_Button}">
|
||||
<Button Command="{Binding MoveUpOrder_Command}"
|
||||
Style="{StaticResource LeftPanel_Button}">
|
||||
<Image Source="/Resources/PDFEditor/MoveUp.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button Command="{Binding MoveDownOrder_Command}"
|
||||
Style="{StaticResource LeftPanel_Button}">
|
||||
<Image Source="/Resources/PDFEditor/MoveDown.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ItemsControl.Resources>
|
||||
</ItemsControl>
|
||||
</Expander>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
</ScrollViewer>
|
||||
<GroupBox Header="PDF"
|
||||
Grid.Column="1"
|
||||
Grid.RowSpan="2"
|
||||
Style="{StaticResource GroupBox_PDFPreview}">
|
||||
<!--<WebBrowser EgtBEAMWALL:WebBrowserUtility.BindableSource="{Binding WebAddress}"/>-->
|
||||
<EgtBEAMWALL:PdfViewer PdfPath="{Binding WebAddress, Mode=TwoWay}" Visibility="{Binding PdfViewer_Visibility}"/>
|
||||
</GroupBox>
|
||||
</Grid>
|
||||
</Grid>
|
||||
@@ -0,0 +1,12 @@
|
||||
Public Class PDFEditorV
|
||||
|
||||
Sub New()
|
||||
|
||||
' La chiamata è richiesta dalla finestra di progettazione.
|
||||
InitializeComponent()
|
||||
|
||||
' Aggiungere le eventuali istruzioni di inizializzazione dopo la chiamata a InitializeComponent().
|
||||
DataContext = New PDFEditorVM()
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
@@ -0,0 +1,497 @@
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports EgtBEAMWALL.Core
|
||||
Imports EgtWPFLib5
|
||||
Imports EgtUILib
|
||||
Imports System.Globalization
|
||||
Imports System.IO
|
||||
|
||||
Public Class PDFEditorVM
|
||||
Inherits VMBase
|
||||
|
||||
#Region "FIELDS & PROPERTIES"
|
||||
|
||||
Private Enum PDFPage As Integer
|
||||
VIEW = 0 ' PDF Visualizzatore
|
||||
MACHING = 1 ' PDF Ottimizzatore
|
||||
End Enum
|
||||
|
||||
' Lista contenente le singole categorie
|
||||
Private m_ExpanderList As New ObservableCollection(Of ExpanderPDF)
|
||||
Public ReadOnly Property ExpanderList As ObservableCollection(Of ExpanderPDF)
|
||||
Get
|
||||
Return m_ExpanderList
|
||||
End Get
|
||||
End Property
|
||||
|
||||
' PDF visualizzato come preview nella sezione PDF Editor
|
||||
Private m_WebAddress As String
|
||||
Public Property WebAddress As String
|
||||
Get
|
||||
Return m_WebAddress
|
||||
End Get
|
||||
Set(value As String)
|
||||
m_WebAddress = value
|
||||
NotifyPropertyChanged(NameOf(WebAddress))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_PdfViewer_Visibility As Visibility
|
||||
Public Property PdfViewer_Visibility As Visibility
|
||||
Get
|
||||
Return m_PdfViewer_Visibility
|
||||
End Get
|
||||
Set(value As Visibility)
|
||||
m_PdfViewer_Visibility = value
|
||||
NotifyPropertyChanged(NameOf(PdfViewer_Visibility))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
' Definizione comandi
|
||||
Private m_cmdCreatePDFPreviewVis As ICommand
|
||||
Private m_cmdCreatePDFPreviewOtt As ICommand
|
||||
Private m_cmdClosePreview As ICommand
|
||||
|
||||
#End Region
|
||||
|
||||
#Region "CONSTRUCTORS"
|
||||
|
||||
Sub New()
|
||||
m_ExpanderList.Add(New ExpanderPDF(ListTypes.MACHGROUPTOT)) ' MachGroup Totals
|
||||
m_ExpanderList.Add(New ExpanderPDF(ListTypes.MACHGROUP)) ' MachGroup List
|
||||
m_ExpanderList.Add(New ExpanderPDF(ListTypes.PART_LIST)) ' Raw Part
|
||||
m_ExpanderList.Add(New ExpanderPDF(ListTypes.RAWPART)) ' RawPart List
|
||||
m_ExpanderList.Add(New ExpanderPDF(ListTypes.PART_TOT)) ' Part Totals
|
||||
m_ExpanderList.Add(New ExpanderPDF(ListTypes.PART)) ' Part List
|
||||
m_WebAddress = "" ' Pagina vuota
|
||||
m_PdfViewer_Visibility = Visibility.Hidden
|
||||
Map.SetRefPDFEditorVM(Me)
|
||||
End Sub
|
||||
|
||||
#End Region ' Constructors
|
||||
|
||||
#Region "COMMANDS"
|
||||
|
||||
#Region "CreatePreviewVis"
|
||||
|
||||
Public ReadOnly Property CreatePreviewVis_Command As ICommand
|
||||
Get
|
||||
If m_cmdCreatePDFPreviewVis Is Nothing Then
|
||||
m_cmdCreatePDFPreviewVis = New Command(AddressOf CreatePreviewVis)
|
||||
End If
|
||||
Return m_cmdCreatePDFPreviewVis
|
||||
End Get
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Funzione per la visualizzazione della preview del PDF della sezione visualizzatore
|
||||
''' </summary>
|
||||
Public Sub CreatePreviewVis()
|
||||
m_PdfViewer_Visibility = Visibility.Visible
|
||||
Configuration.CreatePrintPDF(PDFPage.VIEW, True)
|
||||
WebAddress = Map.refMainWindowVM.MainWindowM.sTempDir & "\Statistics.pdf"
|
||||
NotifyPropertyChanged(NameOf(WebAddress))
|
||||
NotifyPropertyChanged(NameOf(PdfViewer_Visibility))
|
||||
End Sub
|
||||
|
||||
#End Region ' CreatePreviewVis
|
||||
|
||||
#Region "CreatePreviewOt"
|
||||
|
||||
Public ReadOnly Property CreatePreviewOtt_Command As ICommand
|
||||
Get
|
||||
If m_cmdCreatePDFPreviewOtt Is Nothing Then
|
||||
m_cmdCreatePDFPreviewOtt = New Command(AddressOf CreatePreviewOtt)
|
||||
End If
|
||||
Return m_cmdCreatePDFPreviewOtt
|
||||
End Get
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Funzione per la visualizzazione della preview del PDF della sezione ottimizzatore
|
||||
''' </summary>
|
||||
Public Sub CreatePreviewOtt()
|
||||
m_PdfViewer_Visibility = Visibility.Visible
|
||||
Configuration.CreatePrintPDF(PDFPage.MACHING, True)
|
||||
WebAddress = Map.refMainWindowVM.MainWindowM.sTempDir & "\Statistics.pdf"
|
||||
NotifyPropertyChanged(NameOf(WebAddress))
|
||||
NotifyPropertyChanged(NameOf(PdfViewer_Visibility))
|
||||
End Sub
|
||||
|
||||
#End Region ' CreatePreviewOt
|
||||
|
||||
#Region "ClosePreview"
|
||||
|
||||
Public ReadOnly Property ClosePreview_Command As ICommand
|
||||
Get
|
||||
If m_cmdClosePreview Is Nothing Then
|
||||
m_cmdClosePreview = New Command(AddressOf ClosePreview)
|
||||
End If
|
||||
Return m_cmdClosePreview
|
||||
End Get
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Funzione per la chiusura della preview
|
||||
''' </summary>
|
||||
Public Sub ClosePreview()
|
||||
Try
|
||||
File.Delete(Map.refMainWindowVM.MainWindowM.sTempDir & "\Statistics.pdf")
|
||||
'File.Delete(Map.refMainWindowVM.MainWindowM.sTempDir & "\Statistics - Optimizer.pdf")
|
||||
Catch ex As Exception
|
||||
EgtOutLog("Errore! Cancellazione dei file pdf fallita")
|
||||
End Try
|
||||
|
||||
m_PdfViewer_Visibility = Visibility.Hidden
|
||||
WebAddress = ""
|
||||
NotifyPropertyChanged(NameOf(WebAddress))
|
||||
NotifyPropertyChanged(NameOf(PdfViewer_Visibility))
|
||||
End Sub
|
||||
|
||||
#End Region ' CreatePreviewVis
|
||||
|
||||
#End Region ' Commands
|
||||
|
||||
End Class
|
||||
|
||||
Public Class ExpanderPDF
|
||||
Inherits VMBase
|
||||
|
||||
#Region "FIELDS & PROPERTIES"
|
||||
|
||||
'Nome della categoria MachGroup Totals, MachGroup List, Raw Part e Raw Part List
|
||||
Private m_sNameCategory As String
|
||||
Public ReadOnly Property sNameCategory As String
|
||||
Get
|
||||
Return m_sNameCategory
|
||||
End Get
|
||||
End Property
|
||||
|
||||
'Lista degli elementi visualizzati nell'expander es Numero di grezzi o le colonne es colName
|
||||
Private m_ExpanderElementList As New List(Of ExpanderPDF)
|
||||
Public ReadOnly Property ExpanderElementList As List(Of ExpanderPDF)
|
||||
Get
|
||||
Return m_ExpanderElementList
|
||||
End Get
|
||||
End Property
|
||||
|
||||
#End Region ' Fields & Properties
|
||||
|
||||
#Region "CONTRUCTORS"
|
||||
|
||||
Sub New()
|
||||
End Sub
|
||||
|
||||
Sub New(nListType As Integer)
|
||||
Select Case nListType
|
||||
Case ListTypes.MACHGROUPTOT ' MachGroup Totals
|
||||
m_sNameCategory = EgtMsg(61729) ' Titolo Categoria: MachGroup Totals
|
||||
m_ExpanderElementList.Add(New ExpanderElement(EgtMsg(61721))) ' Numero di grezzi
|
||||
m_ExpanderElementList.Add(New ExpanderElement(EgtMsg(61717))) ' Volume totale
|
||||
m_ExpanderElementList.Add(New ExpanderElement(EgtMsg(61719))) ' Tempo totole stimato
|
||||
m_ExpanderElementList.Add(New ExpanderElement(EgtMsg(61718))) ' Tempo totale
|
||||
m_ExpanderElementList.Add(New ExpanderElement(EgtMsg(61720))) ' Tempo rimanente
|
||||
m_ExpanderElementList.Add(New ExpanderElement(EgtMsg(61722))) ' Numero di pezzi da BTL
|
||||
m_ExpanderElementList.Add(New ExpanderElement(EgtMsg(61723))) ' Numero di pezzi aggiunti
|
||||
m_ExpanderElementList.Add(New ExpanderElement(EgtMsg(61724))) ' Numero di pezzi inseriti nei grezzi
|
||||
m_ExpanderElementList.Add(New ExpanderElement(EgtMsg(61725))) ' Numero di pezzi completati
|
||||
Case ListTypes.MACHGROUP ' MachGroup List
|
||||
m_sNameCategory = EgtMsg(61730) ' Titolo Categoria: MachGroup List
|
||||
m_ExpanderElementList.Add(New ExpanderTable(S_OPTIMIZERSTATISTICS)) ' Tabella MachGroupList
|
||||
Case ListTypes.PART_LIST ' Raw Part
|
||||
m_sNameCategory = EgtMsg(61731) ' Titolo Categoria: Raw Part
|
||||
m_ExpanderElementList.Add(New ExpanderTable(S_STATISTICS_PART)) ' Tabella RawPart + Sezione e Immagine
|
||||
Case ListTypes.RAWPART ' RawPart List
|
||||
m_sNameCategory = EgtMsg(61732) ' Titolo Categoria: RawPart List
|
||||
m_ExpanderElementList.Add(New ExpanderTable(S_RAWPARTSTATISTICS)) ' Tabella RawPartList
|
||||
Case ListTypes.PART_TOT ' Part Totals
|
||||
m_sNameCategory = EgtMsg(61734) ' Titolo Categoria: Part Totals
|
||||
m_ExpanderElementList.Add(New ExpanderElement(EgtMsg(61716))) ' Numero totale di pezzi
|
||||
m_ExpanderElementList.Add(New ExpanderElement(EgtMsg(61717))) ' Volume totale
|
||||
m_ExpanderElementList.Add(New ExpanderElement(EgtMsg(61718))) ' Tempo totale
|
||||
m_ExpanderElementList.Add(New ExpanderElement(EgtMsg(61720))) ' Tempo rimanente
|
||||
Case ListTypes.PART ' Part List
|
||||
m_sNameCategory = EgtMsg(61733) ' Titolo Categoria: Part List
|
||||
m_ExpanderElementList.Add(New ExpanderTable(S_STATISTICS)) ' Tabella PartList
|
||||
End Select
|
||||
End Sub
|
||||
|
||||
#End Region ' Constructors
|
||||
|
||||
End Class
|
||||
|
||||
Public Class ExpanderElement
|
||||
Inherits ExpanderPDF
|
||||
|
||||
#Region "FIELDS & PROPERTIES"
|
||||
|
||||
'Nome dei parametri visualizzati nella sezione del PDF Machgroup Totals es Numero di grezzi
|
||||
Private m_sNameParameter As String
|
||||
Public ReadOnly Property sNameParameter As String
|
||||
Get
|
||||
Return m_sNameParameter
|
||||
End Get
|
||||
End Property
|
||||
|
||||
'Check Box dei parametri visualizzati nella sezione del PDF Machgroup Totals
|
||||
Private m_bParameter_IsChecked As Boolean
|
||||
Public Property bParameter_IsChecked As Boolean
|
||||
Get
|
||||
Return m_bParameter_IsChecked
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_bParameter_IsChecked = value
|
||||
NotifyPropertyChanged(NameOf(bParameter_IsChecked))
|
||||
WriteMainPrivateProfileString(S_PDFEDITOR, m_sNameParameter, If(m_bParameter_IsChecked, 1, 0))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
#End Region 'Fields & Properties
|
||||
|
||||
#Region "CONTRUCTORS"
|
||||
|
||||
Sub New(NameParameter As String)
|
||||
m_sNameParameter = NameParameter
|
||||
m_bParameter_IsChecked = GetMainPrivateProfileInt(S_PDFEDITOR, m_sNameParameter, 0) <> 0
|
||||
End Sub
|
||||
|
||||
#End Region 'Constructors
|
||||
|
||||
End Class
|
||||
|
||||
Public Class ExpanderTable
|
||||
Inherits ExpanderPDF
|
||||
|
||||
#Region "FIELDS & PROPERTIES"
|
||||
|
||||
#Region "RAWPARTCOLUMNS"
|
||||
|
||||
'Lista Colonne Tabella MachGroup List, RawPart List, PartList
|
||||
Private m_RawPartColumns As New ObservableCollection(Of EgtDataGridColumn)
|
||||
Public ReadOnly Property RawPartColumns As ObservableCollection(Of EgtDataGridColumn)
|
||||
Get
|
||||
Return m_RawPartColumns
|
||||
End Get
|
||||
End Property
|
||||
|
||||
'Elemento delle Liste MachGroup List, RawPart List, PartList selezionato es colName
|
||||
Private m_SelColumns As EgtDataGridColumn
|
||||
Public Property SelColumns As EgtDataGridColumn
|
||||
Get
|
||||
Return m_SelColumns
|
||||
End Get
|
||||
Set(value As EgtDataGridColumn)
|
||||
m_SelColumns = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
#End Region ' RawPartColumns
|
||||
|
||||
#Region "SECTION & IMAGE"
|
||||
|
||||
' Visualizza Sezione ed Immagine solo se fa parte di DG_Statistics_PART
|
||||
Private m_vRawPartVisibility As Visibility
|
||||
Public ReadOnly Property vRawPartVisibility As Visibility
|
||||
Get
|
||||
Return m_vRawPartVisibility
|
||||
End Get
|
||||
End Property
|
||||
|
||||
' Check Box per la visualizzazione nel PDF della sezione
|
||||
Private m_bSection_IsChecked As Boolean
|
||||
Public Property bSection_IsChecked As Boolean
|
||||
Get
|
||||
Return m_bSection_IsChecked
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_bSection_IsChecked = value
|
||||
NotifyPropertyChanged(NameOf(bSection_IsChecked))
|
||||
WriteMainPrivateProfileString(S_PDFEDITOR, S_SECTION, If(m_bSection_IsChecked, 1, 0))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
' Check Box per la visualizzazione nel PDF dell' immagine
|
||||
Private m_bImage_IsChecked As Boolean
|
||||
Public Property bImage_IsChecked As Boolean
|
||||
Get
|
||||
Return m_bImage_IsChecked
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_bImage_IsChecked = value
|
||||
NotifyPropertyChanged(NameOf(bImage_IsChecked))
|
||||
WriteMainPrivateProfileString(S_PDFEDITOR, S_IMAGE, If(m_bImage_IsChecked, 1, 0))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
#End Region ' Section & Image
|
||||
|
||||
#End Region ' FIELDS & PROPERTIES
|
||||
|
||||
#Region "MESSAGES"
|
||||
|
||||
Public ReadOnly Property Section_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61735).ToUpper()
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property Image_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61736).ToUpper()
|
||||
End Get
|
||||
End Property
|
||||
|
||||
#End Region ' Messages
|
||||
|
||||
' Definizione comandi
|
||||
Private m_cmdMoveUpOrder As ICommand
|
||||
Private m_cmdMoveDownOrder As ICommand
|
||||
|
||||
#Region "CONTRUCTORS"
|
||||
|
||||
Sub New(TypeTable As String)
|
||||
GetPrivateProfileColumns(TypeTable, m_RawPartColumns)
|
||||
m_vRawPartVisibility = If(TypeTable = S_STATISTICS_PART, Visibility.Visible, Visibility.Collapsed)
|
||||
m_bSection_IsChecked = GetMainPrivateProfileInt(S_PDFEDITOR, S_SECTION, 0) <> 0
|
||||
m_bImage_IsChecked = GetMainPrivateProfileInt(S_PDFEDITOR, S_IMAGE, 0) <> 0
|
||||
End Sub
|
||||
|
||||
#End Region ' Constructors
|
||||
|
||||
#Region "COMMANDS"
|
||||
|
||||
#Region "MoveUpOrder"
|
||||
|
||||
Public ReadOnly Property MoveUpOrder_Command As ICommand
|
||||
Get
|
||||
If m_cmdMoveUpOrder Is Nothing Then
|
||||
m_cmdMoveUpOrder = New Command(AddressOf MoveUpOrder)
|
||||
End If
|
||||
Return m_cmdMoveUpOrder
|
||||
End Get
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Funzione per spostare in alto la colonna
|
||||
''' </summary>
|
||||
Public Sub MoveUpOrder()
|
||||
If IsNothing(m_RawPartColumns) Then Return
|
||||
Dim nIndex As Integer = m_RawPartColumns.IndexOf(m_SelColumns)
|
||||
If nIndex < 0 Then Return
|
||||
If nIndex > 0 Then m_RawPartColumns.Move(nIndex, nIndex - 1)
|
||||
End Sub
|
||||
|
||||
#End Region ' MoveUpOrder
|
||||
|
||||
#Region "MoveDownOrder"
|
||||
|
||||
Public ReadOnly Property MoveDownOrder_Command As ICommand
|
||||
Get
|
||||
If m_cmdMoveDownOrder Is Nothing Then
|
||||
m_cmdMoveDownOrder = New Command(AddressOf MoveDownOrder)
|
||||
End If
|
||||
Return m_cmdMoveDownOrder
|
||||
End Get
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Funzione per spostare in basso la colonna
|
||||
''' </summary>
|
||||
Public Sub MoveDownOrder()
|
||||
If IsNothing(m_RawPartColumns) Then Return
|
||||
Dim nIndex As Integer = m_RawPartColumns.IndexOf(m_SelColumns)
|
||||
If nIndex < 0 Then Return
|
||||
If nIndex < m_RawPartColumns.Count - 1 Then m_RawPartColumns.Move(nIndex, nIndex + 1)
|
||||
End Sub
|
||||
|
||||
#End Region ' MoveDownOrder
|
||||
|
||||
#End Region ' Commands
|
||||
|
||||
End Class
|
||||
|
||||
|
||||
' Classe gestione binding Web browser
|
||||
'Public Class WebBrowserUtility
|
||||
|
||||
' Public Shared ReadOnly BindableSourceProperty As DependencyProperty = DependencyProperty.RegisterAttached("BindableSource",
|
||||
' GetType(String),
|
||||
' GetType(WebBrowserUtility),
|
||||
' New UIPropertyMetadata(Nothing, AddressOf BindableSourcePropertyChanged))
|
||||
|
||||
' Public Shared Function GetBindableSource(obj As DependencyObject) As String
|
||||
' Return DirectCast(obj.GetValue(BindableSourceProperty), String)
|
||||
' End Function
|
||||
|
||||
' Public Shared Sub SetBindableSource(obj As DependencyObject, value As String)
|
||||
' obj.SetValue(BindableSourceProperty, value)
|
||||
' End Sub
|
||||
|
||||
' Public Shared Sub BindableSourcePropertyChanged(o As DependencyObject, e As DependencyPropertyChangedEventArgs)
|
||||
' Dim browser As WebBrowser = TryCast(o, WebBrowser)
|
||||
' If Not IsNothing(browser) Then
|
||||
' Dim uri As String = TryCast(e.NewValue, String)
|
||||
' If Not IsNothing(uri) Then
|
||||
' browser.Source = New Uri(uri)
|
||||
' Else
|
||||
' browser.Source = Nothing
|
||||
' End If
|
||||
' End If
|
||||
' End Sub
|
||||
'End Class
|
||||
|
||||
Class ColumnNameConverter
|
||||
Implements IValueConverter
|
||||
|
||||
Public Function Convert(value As Object, targetType As Type, parameter As Object, culture As CultureInfo) As Object Implements IValueConverter.Convert
|
||||
Dim ColName As String = ""
|
||||
If TypeOf value Is String Then
|
||||
ColName = CStr(value)
|
||||
Select Case value
|
||||
Case COL_PDN
|
||||
Return Statistic_Messages.PDN_Msg
|
||||
Case COL_W
|
||||
Return Statistic_Messages.W_Msg
|
||||
Case COL_H
|
||||
Return Statistic_Messages.H_Msg
|
||||
Case COL_L
|
||||
Return Statistic_Messages.L_Msg
|
||||
Case COL_DESC
|
||||
Return Statistic_Messages.NAM_Msg
|
||||
Case COL_NAME
|
||||
Return Statistic_Messages.NAM_Msg
|
||||
Case COL_MATERIAL
|
||||
Return Statistic_Messages.MAT_Msg
|
||||
Case COL_CNT
|
||||
Return Statistic_Messages.CNT_Msg
|
||||
Case COL_ADDED
|
||||
Return Statistic_Messages.ADDED_Msg
|
||||
Case COL_DONE
|
||||
Return Statistic_Messages.DONE_Msg
|
||||
Case COL_USAGE
|
||||
Return Statistic_Messages.Used_Msg
|
||||
Case COL_WASTE
|
||||
Return Statistic_Messages.Waste_Msg
|
||||
Case COL_UNITVOLUME
|
||||
Return Statistic_Messages.UNIT_VOLUME_Msg
|
||||
Case COL_TOTVOLUME
|
||||
Return Statistic_Messages.TOT_VOLUME_Msg
|
||||
Case COL_UNITTIME
|
||||
Return Statistic_Messages.UNIT_TIME_Msg
|
||||
Case COL_TOTTIME
|
||||
Return Statistic_Messages.TOT_TIME_Msg
|
||||
Case COL_QTY
|
||||
Return Statistic_Messages.QTY_Msg
|
||||
Case COL_INPROD
|
||||
Return Statistic_Messages.INPROD_Msg
|
||||
Case Else
|
||||
Return Nothing
|
||||
End Select
|
||||
Else
|
||||
Return Nothing
|
||||
End If
|
||||
End Function
|
||||
|
||||
Public Function ConvertBack(value As Object, targetType As Type, parameter As Object, culture As CultureInfo) As Object Implements IValueConverter.ConvertBack
|
||||
Throw New NotImplementedException()
|
||||
End Function
|
||||
End Class
|
||||
File diff suppressed because it is too large
Load Diff
@@ -89,179 +89,181 @@ Public Class StatisticsVM
|
||||
|
||||
Public ReadOnly Property PDN_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61809)
|
||||
Return Statistic_Messages.PDN_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property ID_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61809)
|
||||
Return Statistic_Messages.ID_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property DO_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61810)
|
||||
Return Statistic_Messages.DO_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property W_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61605)
|
||||
Return Statistic_Messages.W_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property H_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61606)
|
||||
Return Statistic_Messages.H_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property L_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61604)
|
||||
Return Statistic_Messages.L_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property NAM_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61603)
|
||||
Return Statistic_Messages.NAM_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property MAT_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61607)
|
||||
Return Statistic_Messages.MAT_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property CNT_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61608)
|
||||
Return Statistic_Messages.CNT_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property ADDED_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61813)
|
||||
Return Statistic_Messages.ADDED_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property INPROD_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61609)
|
||||
Return Statistic_Messages.INPROD_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property DONE_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61814)
|
||||
Return Statistic_Messages.DONE_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property GRP_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61612)
|
||||
Return Statistic_Messages.GRP_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property UNIT_VOLUME_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61712)
|
||||
Return Statistic_Messages.UNIT_VOLUME_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property TOT_VOLUME_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61713)
|
||||
Return Statistic_Messages.TOT_VOLUME_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property UNIT_TIME_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61714)
|
||||
Return Statistic_Messages.UNIT_TIME_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property TOT_TIME_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61715)
|
||||
Return Statistic_Messages.TOT_TIME_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property BTLTotParts_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61716) & ": "
|
||||
Return Statistic_Messages.BTLTotParts_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property BTLTotVolume_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61717) & ": "
|
||||
Return Statistic_Messages.BTLTotVolume_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property BTLTotEstimatedTime_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61719) & ": "
|
||||
Return Statistic_Messages.BTLTotEstimatedTime_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property BTLTotTime_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61718) & ": "
|
||||
Return Statistic_Messages.BTLTotTime_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property BTLRemainingTime_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61720) & ": "
|
||||
Return Statistic_Messages.BTLRemainingTime_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property TotMachGroups_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61721) & ": "
|
||||
Return Statistic_Messages.TotMachGroups_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property TotCNTParts_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61722) & ": "
|
||||
Return Statistic_Messages.TotCNTParts_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property TotADDEDParts_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61723) & ": "
|
||||
Return Statistic_Messages.TotADDEDParts_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property TotINPRODParts_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61724) & ": "
|
||||
Return Statistic_Messages.TotINPRODParts_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property TotDONEParts_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61725) & ": "
|
||||
Return Statistic_Messages.TotDONEParts_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property Used_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61817)
|
||||
Return Statistic_Messages.Used_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property Waste_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61818)
|
||||
Return Statistic_Messages.Waste_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property QTY_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61726)
|
||||
Return Statistic_Messages.QTY_Msg
|
||||
End Get
|
||||
End Property
|
||||
|
||||
@@ -320,33 +322,19 @@ Public Class StatisticsVM
|
||||
End Select
|
||||
End Sub
|
||||
|
||||
#End Region ' METHODS
|
||||
|
||||
#Region "COMMANDS"
|
||||
|
||||
#Region "PrintPDF"
|
||||
|
||||
Public ReadOnly Property PrintPDF_Command As ICommand
|
||||
Get
|
||||
If m_cmdPrintPDF Is Nothing Then
|
||||
m_cmdPrintPDF = New Command(AddressOf PrintPDF)
|
||||
End If
|
||||
Return m_cmdPrintPDF
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public Sub PrintPDF()
|
||||
Public Sub CreatePrintPDF(ActivePage As Integer, bPreview As Boolean)
|
||||
LoadingWndHelper.OpenLoadingWnd(ActiveIds.CREATINGPDF, 1, "Creating PDF", "", 100)
|
||||
Try
|
||||
' creo documento MigraDoc
|
||||
Dim document As Document = PDFHelper.CreateStatReport(Map.refMainMenuVM.SelPage)
|
||||
Dim document As Document = PDFHelper.CreateStatReport(ActivePage, bPreview)
|
||||
Dim documentPath As String = Map.refMainWindowVM.MainWindowM.sTempDir & "\MigraDoc.mdddl"
|
||||
MigraDoc.DocumentObjectModel.IO.DdlWriter.WriteToFile(document, documentPath)
|
||||
Dim renderer As PdfDocumentRenderer = New PdfDocumentRenderer(True)
|
||||
renderer.Document = document
|
||||
Dim renderer As New PdfDocumentRenderer(True) With {
|
||||
.Document = document
|
||||
}
|
||||
renderer.RenderDocument()
|
||||
' salvo il documento
|
||||
Dim sFileName As String = Map.refMainWindowVM.MainWindowM.sTempDir & "\Statistics.pdf"
|
||||
Dim sFileName As String = ""
|
||||
'Select Case Map.refMainMenuVM.SelPage
|
||||
' Case Pages.VIEW Or (Pages.ONLYPRODPAGE AndAlso Map.refInstrumentPanelVM.VisStatistic_IsEnabled)
|
||||
' sFileName = ProjectManagerVM.CurrProj.sProjDirPath & "\" & "Statistics.pdf"
|
||||
@@ -355,18 +343,26 @@ Public Class StatisticsVM
|
||||
' PrevSelect()
|
||||
'End Select
|
||||
|
||||
If Pages.VIEW OrElse (Pages.ONLYPRODPAGE AndAlso Map.refInstrumentPanelVM.bVisOtt_Selected = False) Then
|
||||
If (ActivePage = Pages.VIEW AndAlso Not bPreview) OrElse (ActivePage = Pages.ONLYPRODPAGE AndAlso Not Map.refInstrumentPanelVM.bVisOtt_Selected AndAlso Not bPreview) Then
|
||||
sFileName = ProjectManagerVM.CurrProj.sProjDirPath & "\" & "Statistics.pdf"
|
||||
ElseIf Pages.MACHINING OrElse (Pages.ONLYPRODPAGE AndAlso Map.refInstrumentPanelVM.bVisOtt_Selected) Then
|
||||
ElseIf ActivePage = Pages.VIEW OrElse Pages.ONLYPRODPAGE AndAlso bPreview Then
|
||||
sFileName = Map.refMainWindowVM.MainWindowM.sTempDir & "\Statistics.pdf" ' Se la pagina e' 0 e' bPreview e' True creo PDF Visualization
|
||||
ElseIf (ActivePage = Pages.MACHINING AndAlso Not bPreview) OrElse (ActivePage = Pages.ONLYPRODPAGE AndAlso Map.refInstrumentPanelVM.bVisOtt_Selected AndAlso Not bPreview) Then
|
||||
sFileName = ProjectManagerVM.CurrProd.sProdDirPath & "\" & ProjectManagerVM.CurrProd.sProdId & " - " & "Statistics.pdf"
|
||||
ElseIf ActivePage = Pages.MACHINING OrElse Pages.ONLYPRODPAGE AndAlso bPreview Then ' Se la pagina e' 1 e' bPreview e' True creo PDF Optimizer
|
||||
sFileName = Map.refMainWindowVM.MainWindowM.sTempDir & "\Statistics.pdf"
|
||||
PrevSelect()
|
||||
End If
|
||||
|
||||
' avvio il visualizzatore
|
||||
renderer.PdfDocument.Save(sFileName)
|
||||
' cancello file MigraDoc
|
||||
File.Delete(documentPath)
|
||||
' avvio il visualizzatore
|
||||
Process.Start(sFileName)
|
||||
|
||||
If bPreview Then
|
||||
Else
|
||||
Process.Start(sFileName)
|
||||
End If
|
||||
Catch ex As Exception
|
||||
EgtOutLog("Error genereting pdf: " & ex.ToString())
|
||||
End Try
|
||||
@@ -391,6 +387,8 @@ Public Class StatisticsVM
|
||||
|
||||
#End Region ' PrintPDF
|
||||
|
||||
#Region "COMMANDS"
|
||||
|
||||
#Region "Ok"
|
||||
|
||||
Public ReadOnly Property Ok_Command As ICommand
|
||||
@@ -408,6 +406,63 @@ Public Class StatisticsVM
|
||||
|
||||
#End Region ' Ok
|
||||
|
||||
#Region "PrintPDF"
|
||||
|
||||
Public ReadOnly Property PrintPDF_Command As ICommand
|
||||
Get
|
||||
If m_cmdPrintPDF Is Nothing Then
|
||||
m_cmdPrintPDF = New Command(AddressOf PrintPDF)
|
||||
End If
|
||||
Return m_cmdPrintPDF
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public Sub PrintPDF()
|
||||
Configuration.CreatePrintPDF(Map.refMainMenuVM.SelPage, False)
|
||||
'LoadingWndHelper.OpenLoadingWnd(ActiveIds.CREATINGPDF, 1, "Creating PDF", "", 100)
|
||||
'Try
|
||||
' ' creo documento MigraDoc
|
||||
' Dim document As Document = PDFHelper.CreateStatReport(Map.refMainMenuVM.SelPage, False)
|
||||
' Dim documentPath As String = Map.refMainWindowVM.MainWindowM.sTempDir & "\MigraDoc.mdddl"
|
||||
' MigraDoc.DocumentObjectModel.IO.DdlWriter.WriteToFile(document, documentPath)
|
||||
' Dim renderer As PdfDocumentRenderer = New PdfDocumentRenderer(True)
|
||||
' renderer.Document = document
|
||||
' renderer.RenderDocument()
|
||||
' ' salvo il documento
|
||||
' Dim sFileName As String = Map.refMainWindowVM.MainWindowM.sTempDir & "\Statistics.pdf"
|
||||
' Select Case Map.refMainMenuVM.SelPage
|
||||
' Case Pages.VIEW
|
||||
' sFileName = Map.refProjManagerVM.CurrProj.sProjDirPath & "\" & "Statistics.pdf"
|
||||
' Case Pages.MACHINING
|
||||
' sFileName = Map.refProdManagerVM.CurrProd.sProdDirPath & "\" & Map.refProdManagerVM.CurrProd.sProdId & " - " & "Statistics.pdf"
|
||||
' ' ripristino selezione precedente
|
||||
' Dim nCurrMachGroupId As Integer = EgtGetCurrMachGroup()
|
||||
' If Not IsNothing(Map.refProjectVM.MachGroupPanelVM.SelectedMachGroup) AndAlso nCurrMachGroupId <> Map.refProjectVM.MachGroupPanelVM.SelectedMachGroup.Id Then
|
||||
' EgtSetCurrMachGroup(Map.refProjectVM.MachGroupPanelVM.SelectedMachGroup.Id)
|
||||
' End If
|
||||
' 'If Map.refProjectVM.BTLStructureVM.nPROJTYPE = BWType.BEAM Then
|
||||
' ' EgtSetView(VT.ISO_SW, False)
|
||||
' 'Else
|
||||
' ' EgtSetView(VT.TOP, False)
|
||||
' 'End If
|
||||
' Core.ViewPanelVM.BWSetView(If(Core.ViewPanelVM.Type = BWType.BEAM, VT.ISO_SW, VT.TOP), False)
|
||||
' EgtZoom(ZM.ALL, True)
|
||||
' End Select
|
||||
|
||||
' renderer.PdfDocument.Save(sFileName)
|
||||
' ' cancello file MigraDoc
|
||||
' File.Delete(documentPath)
|
||||
' ' avvio il visualizzatore
|
||||
' Process.Start(sFileName)
|
||||
'Catch ex As Exception
|
||||
' EgtOutLog("Error genereting pdf: " & ex.ToString())
|
||||
'End Try
|
||||
'LoadingWndHelper.CloseLoadingWnd(ActiveIds.CREATINGPDF)
|
||||
|
||||
End Sub
|
||||
|
||||
#End Region ' PrintPDF
|
||||
|
||||
#End Region ' COMMANDS
|
||||
|
||||
End Class
|
||||
|
||||
@@ -224,4 +224,67 @@ Module Configuration
|
||||
EgtBeamShowLoadingSide(bLoadingSideShow, bLeftToRight)
|
||||
End Sub
|
||||
|
||||
Public Sub CreatePrintPDF(ActivePage As Integer, bPreview As Boolean)
|
||||
LoadingWndHelper.OpenLoadingWnd(ActiveIds.CREATINGPDF, 1, "Creating PDF", "", 100)
|
||||
Try
|
||||
' creo documento MigraDoc
|
||||
Dim document As Document = PDFHelper.CreateStatReport(ActivePage, bPreview)
|
||||
Dim documentPath As String = Map.refMainWindowVM.MainWindowM.sTempDir & "\MigraDoc.mdddl"
|
||||
MigraDoc.DocumentObjectModel.IO.DdlWriter.WriteToFile(document, documentPath)
|
||||
Dim renderer As New PdfDocumentRenderer(True) With {
|
||||
.document = document
|
||||
}
|
||||
renderer.RenderDocument()
|
||||
' salvo il documento
|
||||
Dim sFileName As String = ""
|
||||
'Select Case Map.refMainMenuVM.SelPage
|
||||
' Case Pages.VIEW Or (Pages.ONLYPRODPAGE AndAlso Map.refInstrumentPanelVM.VisStatistic_IsEnabled)
|
||||
' sFileName = ProjectManagerVM.CurrProj.sProjDirPath & "\" & "Statistics.pdf"
|
||||
' Case Pages.MACHINING OrElse (Pages.ONLYPRODPAGE AndAlso Map.refInstrumentPanelVM.OtStatistic_IsEnabled)
|
||||
' sFileName = ProjectManagerVM.CurrProd.sProdDirPath & "\" & ProjectManagerVM.CurrProd.sProdId & " - " & "Statistics.pdf"
|
||||
' PrevSelect()
|
||||
'End Select
|
||||
|
||||
If (ActivePage = Pages.VIEW AndAlso Not bPreview) OrElse (ActivePage = Pages.ONLYPRODPAGE AndAlso Not Map.refInstrumentPanelVM.bVisOtt_Selected AndAlso Not bPreview) Then
|
||||
sFileName = ProjectManagerVM.CurrProj.sProjDirPath & "\" & "Statistics.pdf"
|
||||
ElseIf ActivePage = Pages.VIEW OrElse Pages.ONLYPRODPAGE AndAlso bPreview Then
|
||||
sFileName = Map.refMainWindowVM.MainWindowM.sTempDir & "\Statistics.pdf" ' Se la pagina e' 0 e' bPreview e' True creo PDF Visualization
|
||||
ElseIf (ActivePage = Pages.MACHINING AndAlso Not bPreview) OrElse (ActivePage = Pages.ONLYPRODPAGE AndAlso Map.refInstrumentPanelVM.bVisOtt_Selected AndAlso Not bPreview) Then
|
||||
sFileName = ProjectManagerVM.CurrProd.sProdDirPath & "\" & ProjectManagerVM.CurrProd.sProdId & " - " & "Statistics.pdf"
|
||||
ElseIf ActivePage = Pages.MACHINING OrElse Pages.ONLYPRODPAGE AndAlso bPreview Then ' Se la pagina e' 1 e' bPreview e' True creo PDF Optimizer
|
||||
sFileName = Map.refMainWindowVM.MainWindowM.sTempDir & "\Statistics.pdf"
|
||||
PrevSelect()
|
||||
End If
|
||||
|
||||
' avvio il visualizzatore
|
||||
renderer.PdfDocument.Save(sFileName)
|
||||
' cancello file MigraDoc
|
||||
System.IO.File.Delete(documentPath)
|
||||
|
||||
If bPreview Then
|
||||
Else
|
||||
Process.Start(sFileName)
|
||||
End If
|
||||
Catch ex As Exception
|
||||
EgtOutLog("Error genereting pdf: " & ex.ToString())
|
||||
End Try
|
||||
LoadingWndHelper.CloseLoadingWnd(ActiveIds.CREATINGPDF)
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub PrevSelect()
|
||||
' ripristino selezione precedente
|
||||
Dim nCurrMachGroupId As Integer = EgtGetCurrMachGroup()
|
||||
If Not IsNothing(Map.refProjectVM.MachGroupPanelVM.SelectedMachGroup) AndAlso nCurrMachGroupId <> Map.refProjectVM.MachGroupPanelVM.SelectedMachGroup.Id Then
|
||||
EgtSetCurrMachGroup(Map.refProjectVM.MachGroupPanelVM.SelectedMachGroup.Id)
|
||||
End If
|
||||
'If Map.refProjectVM.BTLStructureVM.nPROJTYPE = BWType.BEAM Then
|
||||
' EgtSetView(VT.ISO_SW, False)
|
||||
'Else
|
||||
' EgtSetView(VT.TOP, False)
|
||||
'End If
|
||||
Core.ViewPanelVM.BWSetView(If(Core.ViewPanelVM.Type = BWType.BEAM, VT.ISO_SW, VT.TOP), False)
|
||||
EgtZoom(ZM.ALL, True)
|
||||
End Sub
|
||||
|
||||
End Module
|
||||
|
||||
@@ -68,8 +68,6 @@ Public Module DbControllers
|
||||
DataLayer.DbConfig.CheckMigrateDb()
|
||||
DataLayer.DbConfig.CheckUser(sUser, sPwd, m_bNetwork AndAlso Map.refMainWindowVM.MainWindowM.GetKeyOption(KEY_OPT.NETWORK))
|
||||
DataLayer.DbConfig.CheckViews(sUser, sPwd)
|
||||
' riattivare il dump per il backup
|
||||
'DataLayer.DbConfig.DumpDB("C:\Program Files\MariaDB 10.5\bin\mysqldump", "c:\Temp\Pippo.sql")
|
||||
If m_bNetwork AndAlso Map.refMainWindowVM.MainWindowM.GetKeyOption(KEY_OPT.NETWORK) Then
|
||||
' imposto cartella condivisa
|
||||
GetMainPrivateProfileString(S_GENERAL, K_SHAREDFOLDER, Map.refMainWindowVM.MainWindowM.sDataDir, sSharedFolder)
|
||||
|
||||
@@ -199,6 +199,26 @@
|
||||
<Style x:Key="LeftPanel_Button" TargetType="{x:Type Button}" BasedOn="{StaticResource {x:Type Button}}">
|
||||
<Setter Property="Height" Value="30"/>
|
||||
<Setter Property="Width" Value="30"/>
|
||||
<Setter Property="Margin" Value="2.5,2.5,2.5,2.5"/>
|
||||
</Style>
|
||||
|
||||
<Style x:Key="Close_Button" TargetType="{x:Type Button}" BasedOn="{StaticResource {x:Type Button}}">
|
||||
<Setter Property="Height" Value="40"/>
|
||||
<Setter Property="Width" Value="50"/>
|
||||
<Setter Property="Margin" Value="2.5,2.5,2.5,2.5"/>
|
||||
</Style>
|
||||
|
||||
<Style x:Key="PDFPanel_Button" TargetType="{x:Type Button}" BasedOn="{StaticResource {x:Type Button}}">
|
||||
<Setter Property="Height" Value="40"/>
|
||||
<Setter Property="Width" Value="120"/>
|
||||
<Setter Property="FocusVisualStyle" Value="{StaticResource FocusVisual}"/>
|
||||
<Setter Property="Background" Value="{StaticResource Button.Static.Background}"/>
|
||||
<Setter Property="BorderBrush" Value="{StaticResource Button.Static.Border}"/>
|
||||
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}"/>
|
||||
<Setter Property="BorderThickness" Value="1"/>
|
||||
<Setter Property="HorizontalContentAlignment" Value="Center"/>
|
||||
<Setter Property="VerticalContentAlignment" Value="Center"/>
|
||||
<Setter Property="Padding" Value="1"/>
|
||||
</Style>
|
||||
|
||||
<!-- ______________________________________________________________________________________________________________________________________________ -->
|
||||
@@ -370,6 +390,12 @@
|
||||
<Setter Property="Margin" Value="10,0,10,0"/>
|
||||
</Style>
|
||||
|
||||
<Style x:Key="Category_TextBlock" TargetType="{x:Type TextBlock}" BasedOn="{StaticResource {x:Type TextBlock}}">
|
||||
<Setter Property="Foreground" Value="DarkBlue"/>
|
||||
<Setter Property="FontSize" Value="16"/>
|
||||
<Setter Property="FontWeight" Value="Bold"/>
|
||||
</Style>
|
||||
|
||||
<Style x:Key="Filter_TextBlock" TargetType="{x:Type TextBlock}" BasedOn="{StaticResource {x:Type TextBlock}}">
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
<Setter Property="Margin" Value="2.5,0,2.5,0"/>
|
||||
@@ -725,6 +751,12 @@
|
||||
</Setter>
|
||||
</Style>
|
||||
|
||||
<Style x:Key="GroupBox_PDFPreview" TargetType="{x:Type GroupBox}">
|
||||
<Setter Property="Margin" Value="2.5"/>
|
||||
<Setter Property="Width" Value="Auto"/>
|
||||
</Style>
|
||||
|
||||
|
||||
<!-- ______________________________________________________________________________________________________________________________________________ -->
|
||||
|
||||
<!-- TabControl that have only Headers and no Pages -->
|
||||
@@ -836,6 +868,14 @@
|
||||
|
||||
<!-- ______________________________________________________________________________________________________________________________________________ -->
|
||||
|
||||
<!-- ScrollViewer -->
|
||||
|
||||
<Style x:Key="ScrollViewer" TargetType="{x:Type ScrollViewer}" BasedOn="{StaticResource {x:Type ScrollViewer}}">
|
||||
<Setter Property="CanContentScroll" Value="True"/>
|
||||
<Setter Property="VerticalScrollBarVisibility" Value="Auto"/>
|
||||
<Setter Property="Margin" Value="2.5,2.5,2.5,2.5"/>
|
||||
<Setter Property="HorizontalScrollBarVisibility" Value="Hidden"/>
|
||||
</Style>
|
||||
<!-- DatePicker -->
|
||||
|
||||
<Style x:Key="Filter_DatePicker" TargetType="{x:Type DatePicker}">
|
||||
@@ -845,4 +885,63 @@
|
||||
|
||||
<!-- ______________________________________________________________________________________________________________________________________________ -->
|
||||
|
||||
<!-- ItemsControl -->
|
||||
|
||||
<Style x:Key="ItemsControl_ExpanderList" TargetType="{x:Type ItemsControl}" BasedOn="{StaticResource {x:Type ItemsControl}}">
|
||||
<Setter Property="BorderThickness" Value="0"/>
|
||||
<Setter Property="Margin" Value="0"/>
|
||||
<Setter Property="Padding" Value="0"/>
|
||||
</Style>
|
||||
|
||||
<Style x:Key="ItemsControl_ExpanderElementList" TargetType="{x:Type ItemsControl}" BasedOn="{StaticResource {x:Type ItemsControl}}">
|
||||
<Setter Property="BorderThickness" Value="0"/>
|
||||
<Setter Property="Margin" Value="0"/>
|
||||
<Setter Property="Padding" Value="0"/>
|
||||
<Setter Property="FontSize" Value="14"/>
|
||||
</Style>
|
||||
|
||||
<!-- ______________________________________________________________________________________________________________________________________________ -->
|
||||
|
||||
<!-- StackPanel -->
|
||||
|
||||
<Style x:Key="StackPanel" TargetType="{x:Type StackPanel}">
|
||||
<Setter Property="Orientation" Value="Vertical"/>
|
||||
<Setter Property="Margin" Value="0"/>
|
||||
</Style>
|
||||
|
||||
<Style x:Key="StackPanel_List" TargetType="{x:Type StackPanel}">
|
||||
<Setter Property="Orientation" Value="Horizontal"/>
|
||||
<Setter Property="Margin" Value="5,5,5,0"/>
|
||||
</Style>
|
||||
|
||||
<Style x:Key="StackPanel_Button" TargetType="{x:Type StackPanel}">
|
||||
<Setter Property="Orientation" Value="Vertical"/>
|
||||
<Setter Property="Margin" Value="2.5,0,0,0"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
<Setter Property="HorizontalAlignment" Value="Right"/>
|
||||
</Style>
|
||||
|
||||
<!-- ______________________________________________________________________________________________________________________________________________ -->
|
||||
|
||||
<!-- Expander -->
|
||||
|
||||
<Style x:Key="Expander" TargetType="{x:Type Expander}">
|
||||
<Setter Property="IsExpanded" Value="True"/>
|
||||
<Setter Property="VerticalContentAlignment" Value="Top"/>
|
||||
<Setter Property="HorizontalContentAlignment" Value="Left"/>
|
||||
<Setter Property="Margin" Value="2.5"/>
|
||||
</Style>
|
||||
|
||||
<!-- ______________________________________________________________________________________________________________________________________________ -->
|
||||
|
||||
<!-- ListBox -->
|
||||
|
||||
<Style x:Key="ListBox" TargetType="{x:Type ListBox}">
|
||||
<Setter Property="BorderThickness" Value="0"/>
|
||||
<Setter Property="Padding" Value="0"/>
|
||||
<Setter Property="Margin" Value="0"/>
|
||||
<Setter Property="VerticalContentAlignment" Value="Top"/>
|
||||
<Setter Property="HorizontalContentAlignment" Value="Left"/>
|
||||
</Style>
|
||||
|
||||
</ResourceDictionary>
|
||||
|
||||
@@ -34,6 +34,7 @@ Module Map
|
||||
Private m_refFeatureManagerVM As FeatureManagerVM
|
||||
Private m_refAddSectionXMaterialWndVM As AddSectionXMaterialWndVM
|
||||
Private m_refStatisticsTimePanelVM As StatisticsTimePanelVM
|
||||
Private m_refPDFEditorVM As PDFEditorVM
|
||||
Private m_refOnlyProdManagerVM As OnlyProdManagerVM
|
||||
Private m_refBTLPartManagerVM As BTLPartManagerVM
|
||||
Private m_refRawPartManagerVM As RawPartManagerVM
|
||||
@@ -249,6 +250,12 @@ Module Map
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property refPDFEditorVM As PDFEditorVM
|
||||
Get
|
||||
Return m_refPDFEditorVM
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property refOnlyProdManagerVM As OnlyProdManagerVM
|
||||
Get
|
||||
Return m_refOnlyProdManagerVM
|
||||
@@ -291,7 +298,6 @@ Module Map
|
||||
End Get
|
||||
End Property
|
||||
|
||||
|
||||
Public ReadOnly Property refSpecialPanelVM As SpecialPanelVM
|
||||
Get
|
||||
Return m_refSpecialPanelVM
|
||||
@@ -510,6 +516,11 @@ Module Map
|
||||
Return Not IsNothing(m_refStatisticsTimePanelVM)
|
||||
End Function
|
||||
|
||||
Friend Function SetRefPDFEditorVM(PDFEditorVM As PDFEditorVM) As Boolean
|
||||
m_refPDFEditorVM = PDFEditorVM
|
||||
Return Not IsNothing(m_refPDFEditorVM)
|
||||
End Function
|
||||
|
||||
Friend Function SetRefOnlyProdManagerVM(OnlyProdManagerVM As OnlyProdManagerVM) As Boolean
|
||||
m_refOnlyProdManagerVM = OnlyProdManagerVM
|
||||
Return Not IsNothing(m_refOnlyProdManagerVM)
|
||||
@@ -545,7 +556,6 @@ Module Map
|
||||
Return Not IsNothing(m_refProjWndVM)
|
||||
End Function
|
||||
|
||||
|
||||
Friend Function SetRefSpecialPanelVM(SpecialPanelVM As SpecialPanelVM) As Boolean
|
||||
m_refSpecialPanelVM = SpecialPanelVM
|
||||
Return Not IsNothing(m_refSpecialPanelVM)
|
||||
@@ -625,6 +635,7 @@ Module Map
|
||||
Not IsNothing(m_refStatisticsVM) AndAlso Not IsNothing(m_refPParameterListVM) AndAlso
|
||||
Not IsNothing(m_refQParameterListVM) AndAlso Not IsNothing(m_refFeatureManagerVM) AndAlso
|
||||
Not IsNothing(m_refAddSectionXMaterialWndVM) AndAlso Not IsNothing(m_refStatisticsTimePanelVM) AndAlso
|
||||
Not IsNothing(m_refPDFEditorVM) AndAlso Not IsNothing(m_refSpecialPanelVM) AndAlso
|
||||
Not IsNothing(m_refOnlyProdManagerVM) AndAlso Not IsNothing(m_refBTLPartManagerVM) AndAlso
|
||||
Not IsNothing(m_refRawPartManagerVM) AndAlso Not IsNothing(m_refPartInRawPartManagerVM) AndAlso
|
||||
Not IsNothing(m_refFeatureListManagerVM) AndAlso Not IsNothing(m_refProdProjManagerVM) AndAlso
|
||||
|
||||
@@ -0,0 +1,183 @@
|
||||
Imports EgtUILib
|
||||
|
||||
Module Statistic_Messages
|
||||
|
||||
Public ReadOnly Property PDN_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61809)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property ID_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61809)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property DO_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61810)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property W_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61605)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property H_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61606)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property L_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61604)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property NAM_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61603)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property MAT_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61607)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property CNT_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61608)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property ADDED_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61813)
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property INPROD_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61609)
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property DONE_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61814)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property GRP_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61612)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property UNIT_VOLUME_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61712)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property TOT_VOLUME_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61713)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property UNIT_TIME_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61714)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property TOT_TIME_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61715)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property BTLTotParts_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61716) & ": "
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property BTLTotVolume_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61717) & ": "
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property BTLTotEstimatedTime_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61719) & ": "
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property BTLTotTime_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61718) & ": "
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property BTLRemainingTime_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61720) & ": "
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property TotMachGroups_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61721) & ": "
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property TotCNTParts_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61722) & ": "
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property TotADDEDParts_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61723) & ": "
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property TotINPRODParts_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61724) & ": "
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property TotDONEParts_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61725) & ": "
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property Used_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61817)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property Waste_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61818)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property QTY_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61726)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
End Module
|
||||
+1046
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,182 @@
|
||||
<!DOCTYPE html>
|
||||
<!-- saved from url=(0014)about:internet -->
|
||||
|
||||
<html xmlns:msxsl="urn:schemas-microsoft-com:xslt"><head><meta content="en-us" http-equiv="Content-Language" /><meta content="text/html; charset=utf-16" http-equiv="Content-Type" /><title _locID="NuGetUpgradeReportTitle">
|
||||
NuGetMigrationLog
|
||||
</title><style>
|
||||
|
||||
/* Body style, for the entire document */
|
||||
body
|
||||
{
|
||||
background: #F3F3F4;
|
||||
color: #1E1E1F;
|
||||
font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
|
||||
font-size: 12pt;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
/* Header1 style, used for the main title */
|
||||
h1
|
||||
{
|
||||
padding: 10px 0px 10px 10px;
|
||||
font-size: 21pt;
|
||||
background-color: #E2E2E2;
|
||||
border-bottom: 1px #C1C1C2 solid;
|
||||
color: #201F20;
|
||||
margin: 0;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
/* Header2 style, used for "Overview" and other sections */
|
||||
h2
|
||||
{
|
||||
font-size: 18pt;
|
||||
font-weight: normal;
|
||||
padding: 15px 0 5px 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
/* Header3 style, used for sub-sections, such as project name */
|
||||
h3
|
||||
{
|
||||
font-weight: normal;
|
||||
font-size: 15pt;
|
||||
margin: 0;
|
||||
padding: 15px 0 5px 0;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.info-text
|
||||
{
|
||||
margin: 0px 0 0.75em 0;
|
||||
}
|
||||
|
||||
/* Color all hyperlinks one color */
|
||||
a
|
||||
{
|
||||
color: #1382CE;
|
||||
}
|
||||
|
||||
/* Table styles */
|
||||
table
|
||||
{
|
||||
border-spacing: 0 0;
|
||||
border-collapse: collapse;
|
||||
font-size: 11pt;
|
||||
}
|
||||
|
||||
table th
|
||||
{
|
||||
background: #E7E7E8;
|
||||
text-align: left;
|
||||
text-decoration: none;
|
||||
font-weight: normal;
|
||||
padding: 3px 6px 3px 6px;
|
||||
}
|
||||
|
||||
table td
|
||||
{
|
||||
vertical-align: top;
|
||||
padding: 3px 6px 5px 5px;
|
||||
margin: 0px;
|
||||
border: 1px solid #E7E7E8;
|
||||
background: #F7F7F8;
|
||||
}
|
||||
|
||||
/* Local link is a style for hyperlinks that link to file:/// content, there are lots so color them as 'normal' text until the user mouse overs */
|
||||
.localLink
|
||||
{
|
||||
color: #1E1E1F;
|
||||
background: #EEEEED;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.localLink:hover
|
||||
{
|
||||
color: #1382CE;
|
||||
background: #FFFF99;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.issueCell
|
||||
{
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.packageIssue
|
||||
{
|
||||
margin-left: 25px;
|
||||
}
|
||||
|
||||
/* Padding around the content after the h1 */
|
||||
#content
|
||||
{
|
||||
padding: 0px 20px 20px 20px;
|
||||
}
|
||||
|
||||
.issues table
|
||||
{
|
||||
width: 97%;
|
||||
}
|
||||
|
||||
/* All Icons */
|
||||
.IconSuccessEncoded, .IconInfoEncoded, .IconWarningEncoded, .IconErrorEncoded
|
||||
{
|
||||
min-width:18px;
|
||||
min-height:18px;
|
||||
background-repeat:no-repeat;
|
||||
background-position:center;
|
||||
}
|
||||
|
||||
.IconSuccessEncoded
|
||||
{
|
||||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAA7EAAAOxAGVKw4bAAABcElEQVR4Xq2TsUsCURzHv15g8ZJcBWlyiYYgCIWcb9DFRRwMW5TA2c0/QEFwFkxxUQdxVlBwCYWOi6IhWgQhBLHJUCkhLr/BW8S7gvrAg+N+v8/v+x68Z8MGy+XSCyABQAXgBgHGALoASkIIDWSLeLBetdHryMjd5IxQPWT4rn1c/P7+xxp72Cs9m5SZ0Bq2vPnbPFafK2zDvmNHypdC0BPkLlQhxJsCAhQoZwdZU5mwxh720qGo8MzTxTTKZDPCx2HoVzp6lz0Q9tKhyx0kGs8Ny+TkWRKk8lCROwEduhyg9l/6lunOPSfmH3NUH6uQ0KHLAe7JYvJjevm+DAMGJHToKtigE+vwvIidxLamb8IBY9e+C5LiXREkfho3TSd06HJA13/oh6T51MTsfQbHrsMynQ5dDihFjiK8JJAU9AKIWTp76dCVN7HWHrajmUEGvyF9nkbAE6gLIS7kTUyuf2gscLoJrElZo/Mvj+nPz/kLTmfnEwP3tB0AAAAASUVORK5CYII=);
|
||||
}
|
||||
|
||||
.IconInfoEncoded
|
||||
{
|
||||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABHElEQVR4Xs2TsUoDQRRF7wwoziokjZUKadInhdhukR9YP8DMX1hYW+QvdsXa/QHBbcXC7W0CamWTQnclFutceIQJwwaWNLlwm5k5d94M76mmaeCrrmsLYOocY12FcxZFUeozCqKqqgYA8uevv1H6VuPxcwlfk5N92KHBxfFeCSAxxswlYAW/Xr989x/mv9gkhtyMDhcAxgzRsp7flj8B/HF1RsMXq+NZMkopaHe7lbKxQUEIGbKsYNoGn969060hZBkQex/W8oRQwsQaW2o3Ago2SVcJUzAgY3N0lTCZZm+zPS8HB51gMmS1DEYyOz9acKO1D8JWTlafKIMxdhvlfdyT94Vv5h7P8Ky7nQzACmhvKq3zk3PjW9asz9D/1oigecsioooAAAAASUVORK5CYII=);
|
||||
}
|
||||
|
||||
.IconWarningEncoded
|
||||
{
|
||||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAx0lEQVR4XpWSMQ7CMAxFf4xAyBMLCxMrO8dhaBcuwdCJS3RJBw7SA/QGTCxdWJgiQYWKXJWKIXHIlyw5lqr34tQgEOdcBsCOx5yZK3hCCKdYXneQkh4pEfqzLfu+wVDSyyzFoJjfz9NB+pAF+eizx2Vruts0k15mPgvS6GYvpVtQhB61IB/dk6AF6fS4Ben0uIX5odtFe8Q/eW1KvFeH4e8khT6+gm5B+t3juyDt7n0jpe+CANTd+oTUjN/U3yVaABnSUjFz/gFq44JaVSCXeQAAAABJRU5ErkJggg==);
|
||||
}
|
||||
|
||||
.IconErrorEncoded
|
||||
{
|
||||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABQElEQVR4XqWTvUoEQRCE6wYPZUA80AfwAQz23uCMjA7MDRQEIzPBVEyNTQUFIw00vcQTTMzuAh/AxEQQT8HF/3G/oGGnEUGuoNnd6qoZuqltyKEsyzVJq5I6rnUp6SjGeGhESikzzlc1eL7opfuVbrqbU1Zw9NCgtQMaZpY0eNnaaL2fHusvTK5vKu7sjSS1Y4y3QUA6K3e3Mau5UFDyMP7tYF9o8cAHZv68vipoIJg971PZIZ5HiwdvYGGvFVFHmGmZ2MxwmQYPXubPl9Up0tfoMQGetXd6mRbvhBw+boZ6WF7Mbv1+GsHRk0fQmPAH1GfmZirbCfDJ61tw3Px8/8pZsPAG4jlVhcPgZ7adwNWBB68lkRQWFiTgFlbnLY3DGGM7izIJIyT/jjIvEJw6fdJTc6krDzh6aMwMP9bvDH4ADSsa9uSWVJkAAAAASUVORK5CYII=);
|
||||
}
|
||||
|
||||
</style></head><body><h1>
|
||||
NuGet Migration Report - EgtBEAMWALL.ViewerOptimizer</h1><div id="content"><h2 _locID="OverviewTitle">Overview</h2><div class="info-text">Migration to PackageReference was completed successfully. Please build and run your solution to verify that all packages are available.</div><div class="info-text">
|
||||
If you run into any problems, have feedback, questions, or concerns, please
|
||||
<a href="https://github.com/NuGet/Home/issues/">file an issue on the NuGet GitHub repository.</a></div><div class="info-text">
|
||||
Changed files and this report have been backed up here:
|
||||
<a href="C:\EgtDev\egtbeamwall\MigrationBackup\814cbbc9\EgtBEAMWALL.ViewerOptimizer">C:\EgtDev\egtbeamwall\MigrationBackup\814cbbc9\EgtBEAMWALL.ViewerOptimizer</a></div><div class="info-text"><a href="https://aka.ms/nuget-pc2pr-migrator-rollback">Help me rollback to packages.config</a></div><h2 _locID="PackagesTitle">Packages processed</h2><h3 _locID="IncludePackagesTitle">Top-level dependencies:</h3><div class="issues"><table><tr><th class="issueCell">Package Id</th><th>Version</th></tr><tr><td class="issueCell"><span>BouncyCastle</span></td><td><span>
|
||||
v1.8.5</span></td></tr><tr><td class="issueCell"><span>DotNetZip</span></td><td><span>
|
||||
v1.16.0</span></td></tr><tr><td class="issueCell"><span>EntityFramework</span></td><td><span>
|
||||
v6.4.4</span></td></tr><tr><td class="issueCell"><span>Google.Protobuf</span></td><td><span>
|
||||
v3.21.9</span></td></tr><tr><td class="issueCell"><span>K4os.Compression.LZ4.Streams</span></td><td><span>
|
||||
v1.3.5</span></td></tr><tr><td class="issueCell"><span>Microsoft.Windows.SDK.Contracts</span></td><td><span>
|
||||
v10.0.22621.2428</span></td></tr><tr><td class="issueCell"><span>MySql.Data.EntityFramework</span></td><td><span>
|
||||
v8.0.21</span></td></tr><tr><td class="issueCell"><span>NLog</span></td><td><span>
|
||||
v5.0.1</span></td></tr><tr><td class="issueCell"><span>PDFsharp-MigraDoc-wpf</span></td><td><span>
|
||||
v1.50.5147</span></td></tr><tr><td class="issueCell"><span>Portable.BouncyCastle</span></td><td><span>
|
||||
v1.9.0</span></td></tr><tr><td class="issueCell"><span>System.IO.Pipelines</span></td><td><span>
|
||||
v6.0.0</span></td></tr></table></div><p /><h3 _locID="IncludePackagesTitle">Transitive dependencies:</h3><div class="issues"><table><tr><th class="issueCell">Package Id</th><th>Version</th></tr><tr><td class="issueCell"><span>K4os.Compression.LZ4</span></td><td><span>
|
||||
v1.3.5</span></td></tr><tr><td class="issueCell"><span>K4os.Hash.xxHash</span></td><td><span>
|
||||
v1.0.8</span></td></tr><tr><td class="issueCell"><span>MySql.Data</span></td><td><span>
|
||||
v8.0.21</span></td></tr><tr><td class="issueCell"><span>SSH.NET</span></td><td><span>
|
||||
v2016.1.0</span></td></tr><tr><td class="issueCell"><span>System.Buffers</span></td><td><span>
|
||||
v4.5.1</span></td></tr><tr><td class="issueCell"><span>System.Memory</span></td><td><span>
|
||||
v4.5.5</span></td></tr><tr><td class="issueCell"><span>System.Numerics.Vectors</span></td><td><span>
|
||||
v4.5.0</span></td></tr><tr><td class="issueCell"><span>System.Runtime.CompilerServices.Unsafe</span></td><td><span>
|
||||
v6.0.0</span></td></tr><tr><td class="issueCell"><span>System.Runtime.InteropServices.WindowsRuntime</span></td><td><span>
|
||||
v4.3.0</span></td></tr><tr><td class="issueCell"><span>System.Runtime.WindowsRuntime</span></td><td><span>
|
||||
v4.6.0</span></td></tr><tr><td class="issueCell"><span>System.Runtime.WindowsRuntime.UI.Xaml</span></td><td><span>
|
||||
v4.6.0</span></td></tr><tr><td class="issueCell"><span>System.Threading.Tasks.Extensions</span></td><td><span>
|
||||
v4.5.4</span></td></tr></table></div><h2 _locID="IssuesTitle">Package compatibility issues</h2><div class="issues"><table><tr><th /><th class="issueCell" _locID="DescriptionTableHeader">Description</th></tr><tr><td class="IconInfoEncoded" /><td class="issueCell">
|
||||
No issues were found.
|
||||
</td></tr></table></div></div></body></html>
|
||||
+5
-1
@@ -7,6 +7,7 @@
|
||||
<package id="K4os.Compression.LZ4" version="1.3.5" targetFramework="net472" />
|
||||
<package id="K4os.Compression.LZ4.Streams" version="1.3.5" targetFramework="net472" />
|
||||
<package id="K4os.Hash.xxHash" version="1.0.8" targetFramework="net472" />
|
||||
<package id="Microsoft.Windows.SDK.Contracts" version="10.0.22621.2428" targetFramework="net472" />
|
||||
<package id="MySql.Data" version="8.0.21" targetFramework="net472" />
|
||||
<package id="MySql.Data.EntityFramework" version="8.0.21" targetFramework="net472" />
|
||||
<package id="NLog" version="5.0.1" targetFramework="net472" />
|
||||
@@ -14,9 +15,12 @@
|
||||
<package id="Portable.BouncyCastle" version="1.9.0" targetFramework="net472" />
|
||||
<package id="SSH.NET" version="2016.1.0" targetFramework="net472" />
|
||||
<package id="System.Buffers" version="4.5.1" targetFramework="net472" />
|
||||
<package id="System.IO.Pipelines" version="5.0.2" targetFramework="net472" />
|
||||
<package id="System.IO.Pipelines" version="6.0.0" targetFramework="net472" />
|
||||
<package id="System.Memory" version="4.5.5" targetFramework="net472" />
|
||||
<package id="System.Numerics.Vectors" version="4.5.0" targetFramework="net472" />
|
||||
<package id="System.Runtime.CompilerServices.Unsafe" version="6.0.0" targetFramework="net472" />
|
||||
<package id="System.Runtime.InteropServices.WindowsRuntime" version="4.3.0" targetFramework="net472" />
|
||||
<package id="System.Runtime.WindowsRuntime" version="4.6.0" targetFramework="net472" />
|
||||
<package id="System.Runtime.WindowsRuntime.UI.Xaml" version="4.6.0" targetFramework="net472" />
|
||||
<package id="System.Threading.Tasks.Extensions" version="4.5.4" targetFramework="net472" />
|
||||
</packages>
|
||||
Reference in New Issue
Block a user