Merge remote-tracking branch 'gitlab.steamware/develop' into DataLayer
This commit is contained in:
@@ -0,0 +1,129 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{F22835A1-83D8-4334-91BB-BAAEB9CF59B1}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<RootNamespace>EgtBEAMWALL.Core</RootNamespace>
|
||||
<AssemblyName>EgtBEAMWALL.Core</AssemblyName>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<MyType>Windows</MyType>
|
||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||
<Deterministic>true</Deterministic>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<DefineDebug>true</DefineDebug>
|
||||
<DefineTrace>true</DefineTrace>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DocumentationFile>EgtBEAMWALL.Core.xml</DocumentationFile>
|
||||
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<DefineDebug>false</DefineDebug>
|
||||
<DefineTrace>true</DefineTrace>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DocumentationFile>EgtBEAMWALL.Core.xml</DocumentationFile>
|
||||
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<OptionExplicit>On</OptionExplicit>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<OptionCompare>Binary</OptionCompare>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<OptionStrict>Off</OptionStrict>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<OptionInfer>On</OptionInfer>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="EgtUILib">
|
||||
<HintPath>..\..\..\EgtProg\DllD32\EgtUILib.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="EgtWPFLib5">
|
||||
<HintPath>..\..\..\EgtProg\DllD32\EgtWPFLib5.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="PresentationCore" />
|
||||
<Reference Include="PresentationFramework" />
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="WindowsBase" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Import Include="Microsoft.VisualBasic" />
|
||||
<Import Include="System" />
|
||||
<Import Include="System.Collections" />
|
||||
<Import Include="System.Collections.Generic" />
|
||||
<Import Include="System.Data" />
|
||||
<Import Include="System.Diagnostics" />
|
||||
<Import Include="System.Linq" />
|
||||
<Import Include="System.Xml.Linq" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Beam.vb" />
|
||||
<Compile Include="BeamMachGroup.vb" />
|
||||
<Compile Include="BTLFeature.vb" />
|
||||
<Compile Include="BTLParam.vb" />
|
||||
<Compile Include="BTLPart.vb" />
|
||||
<Compile Include="BTLStructure.vb" />
|
||||
<Compile Include="Constants\ConstBeam.vb" />
|
||||
<Compile Include="Enum.vb" />
|
||||
<Compile Include="My Project\AssemblyInfo.vb" />
|
||||
<Compile Include="My Project\Application.Designer.vb">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Application.myapp</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="My Project\Resources.Designer.vb">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DesignTime>True</DesignTime>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="My Project\Settings.Designer.vb">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Settings.settings</DependentUpon>
|
||||
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
||||
</Compile>
|
||||
<Compile Include="MyMachGroup.vb" />
|
||||
<Compile Include="Part.vb" />
|
||||
<Compile Include="SectionXMaterial.vb" />
|
||||
<Compile Include="Utility\BTLIniFile.vb" />
|
||||
<Compile Include="Utility\Command.vb" />
|
||||
<Compile Include="Utility\VMBase.vb" />
|
||||
<Compile Include="Wall.vb" />
|
||||
<Compile Include="WallMachGroup.vb" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="My Project\Resources.resx">
|
||||
<Generator>VbMyResourcesResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.vb</LastGenOutput>
|
||||
<CustomToolNamespace>My.Resources</CustomToolNamespace>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="My Project\Application.myapp">
|
||||
<Generator>MyApplicationCodeGenerator</Generator>
|
||||
<LastGenOutput>Application.Designer.vb</LastGenOutput>
|
||||
</None>
|
||||
<None Include="My Project\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
<CustomToolNamespace>My</CustomToolNamespace>
|
||||
<LastGenOutput>Settings.Designer.vb</LastGenOutput>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
|
||||
<PropertyGroup>
|
||||
<PostBuildEvent>copy $(TargetPath) c:\EgtProg\EgtBEAMWALL\ViewerOptimizer\EgtBEAMWALL.Core.dll</PostBuildEvent>
|
||||
</PropertyGroup>
|
||||
</Project>
|
||||
@@ -20,7 +20,6 @@ Public Class ProjectFile
|
||||
End Get
|
||||
End Property
|
||||
|
||||
|
||||
Protected m_nProdId As Integer = 0
|
||||
Public ReadOnly Property nProdId As Integer
|
||||
Get
|
||||
@@ -55,6 +54,7 @@ Public Class ProjectFile
|
||||
End Set
|
||||
End Property
|
||||
|
||||
' temporaneo, per funzionamento vecchio senza db
|
||||
Sub New()
|
||||
|
||||
End Sub
|
||||
|
||||
@@ -7,14 +7,24 @@
|
||||
<entityFramework>
|
||||
<defaultConnectionFactory type="MySql.Data.Entity.MySqlConnectionFactory, MySql.Data.Entity.EF6" />
|
||||
<providers>
|
||||
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6, Version=6.9.12.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
|
||||
|
||||
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
|
||||
</providers>
|
||||
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6, Version=6.9.12.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"></provider></providers>
|
||||
</entityFramework>
|
||||
<system.data>
|
||||
<connectionStrings>
|
||||
<add name="DefaultConnection" connectionString="server=localhost;port=3306;User Id=root;password=viacremasca;Persist Security Info=True;database=EgtBwDb;SslMode=none" providerName="MySql.Data.MySqlClient" />
|
||||
</connectionStrings>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="MySql.Data" publicKeyToken="c5687fc88969c44d" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-6.9.12.0" newVersion="6.9.12.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
<system.data>
|
||||
<DbProviderFactories>
|
||||
<remove invariant="MySql.Data.MySqlClient" />
|
||||
<add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.9.12.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
|
||||
</DbProviderFactories>
|
||||
</system.data>
|
||||
</configuration>
|
||||
</system.data></configuration>
|
||||
@@ -186,14 +186,14 @@ namespace EgtBEAMWALL.DataLayer.Controllers
|
||||
public bool Update(BTLPartModel updItem)
|
||||
{
|
||||
bool done = false;
|
||||
var item2del = dbCtx
|
||||
var item2update = dbCtx
|
||||
.BTLPartList
|
||||
.Where(x => x.PartDbId == updItem.PartDbId)
|
||||
.SingleOrDefault();
|
||||
try
|
||||
{
|
||||
// update, vers 1...
|
||||
dbCtx.Entry(item2del).CurrentValues.SetValues(updItem);
|
||||
dbCtx.Entry(item2update).CurrentValues.SetValues(updItem);
|
||||
|
||||
//// update, vers 2
|
||||
//dbCtx.BTLPartList.Remove(item2del);
|
||||
|
||||
@@ -137,6 +137,34 @@ namespace EgtBEAMWALL.DataLayer.Controllers
|
||||
return newRawPart;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Update single RawPart
|
||||
/// </summary>
|
||||
/// <param name="updItem">Item to update (with updated values)</param>
|
||||
/// <returns></returns>
|
||||
public bool Update(RawPartModel updItem)
|
||||
{
|
||||
bool done = false;
|
||||
var item2update = dbCtx
|
||||
.RawPartList
|
||||
.Where(x => x.RawPartDbId == updItem.RawPartDbId)
|
||||
.SingleOrDefault();
|
||||
try
|
||||
{
|
||||
// update, vers 1...
|
||||
dbCtx.Entry(item2update).CurrentValues.SetValues(updItem);
|
||||
|
||||
//// update, vers 2
|
||||
//dbCtx.BTLPartList.Remove(item2del);
|
||||
//dbCtx.BTLPartList.Add(updItem);
|
||||
|
||||
// Commit changes
|
||||
dbCtx.SaveChanges();
|
||||
done = true;
|
||||
}
|
||||
catch
|
||||
{ }
|
||||
return done;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -48,9 +48,9 @@ namespace EgtBEAMWALL.DataLayer
|
||||
//providerName="System.Data.EntityClient"
|
||||
|
||||
|
||||
public static string CONNECTION_STRING = $"server={Constants.DATABASE_SERV};port=3306;database={Constants.DATABASE_NAME};uid={Constants.DATABASE_USER};pwd={Constants.DATABASE_PWD};";
|
||||
public static string CONNECTION_STRING = $"server={Constants.DATABASE_SERV};port=3306;database={Constants.DATABASE_NAME};uid={Constants.DATABASE_USER};pwd={Constants.DATABASE_PWD};sslmode=None";
|
||||
|
||||
public DatabaseContext() : base(CONNECTION_STRING)
|
||||
public DatabaseContext() : base("DefaultConnection")
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
@@ -22,6 +22,9 @@ namespace EgtBEAMWALL.DataLayer.DatabaseModels
|
||||
[Column("Prod_Description")]
|
||||
public string Description { get; set; } = "";
|
||||
|
||||
/// <summary>
|
||||
/// Stato locked (quando aperto da un dispositivo in rete)
|
||||
/// </summary>
|
||||
[Column("Prod_Lock")]
|
||||
public bool Locked { get; set; } = false;
|
||||
|
||||
|
||||
@@ -22,6 +22,9 @@ namespace EgtBEAMWALL.DataLayer.DatabaseModels
|
||||
[Column("Proj_BTLFileName")]
|
||||
public string BTLFileName { get; set; } = "";
|
||||
|
||||
/// <summary>
|
||||
/// Stato locked (quando aperto da un dispositivo in rete)
|
||||
/// </summary>
|
||||
[Column("Proj_Lock")]
|
||||
public bool Locked { get; set; } = false;
|
||||
|
||||
|
||||
@@ -22,9 +22,18 @@ namespace EgtBEAMWALL.DataLayer.DatabaseModels
|
||||
[Column("RawPart_Descript")]
|
||||
public string Description { get; set; } = "";
|
||||
|
||||
/// <summary>
|
||||
/// RawPart state
|
||||
/// </summary>
|
||||
[Column("RawPart_State")]
|
||||
public RawPartState State { get; set; } = RawPartState.ND;
|
||||
|
||||
/// <summary>
|
||||
/// Stato locked (quando aperto da un dispositivo in rete)
|
||||
/// </summary>
|
||||
[Column("RawPart_Lock")]
|
||||
public bool Locked { get; set; } = false;
|
||||
|
||||
[Column("RawPart_Assign")]
|
||||
public string Assign { get; set; } = "";
|
||||
|
||||
|
||||
@@ -74,6 +74,10 @@
|
||||
<Compile Include="Migrations\202103031811160_InitDb.Designer.cs">
|
||||
<DependentUpon>202103031811160_InitDb.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Migrations\202103051205114_updateProj.cs" />
|
||||
<Compile Include="Migrations\202103051205114_updateProj.Designer.cs">
|
||||
<DependentUpon>202103051205114_updateProj.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Migrations\Configuration.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
@@ -91,6 +95,9 @@
|
||||
<EmbeddedResource Include="Migrations\202103031811160_InitDb.resx">
|
||||
<DependentUpon>202103031811160_InitDb.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Migrations\202103051205114_updateProj.resx">
|
||||
<DependentUpon>202103051205114_updateProj.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<PropertyGroup>
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
// <auto-generated />
|
||||
namespace EgtBEAMWALL.DataLayer.Migrations
|
||||
{
|
||||
using System.CodeDom.Compiler;
|
||||
using System.Data.Entity.Migrations;
|
||||
using System.Data.Entity.Migrations.Infrastructure;
|
||||
using System.Resources;
|
||||
|
||||
[GeneratedCode("EntityFramework.Migrations", "6.0.0-20911")]
|
||||
public sealed partial class updateProj : IMigrationMetadata
|
||||
{
|
||||
private readonly ResourceManager Resources = new ResourceManager(typeof(updateProj));
|
||||
|
||||
string IMigrationMetadata.Id
|
||||
{
|
||||
get { return "202103051205114_updateProj"; }
|
||||
}
|
||||
|
||||
string IMigrationMetadata.Source
|
||||
{
|
||||
get { return null; }
|
||||
}
|
||||
|
||||
string IMigrationMetadata.Target
|
||||
{
|
||||
get { return Resources.GetString("Target"); }
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
namespace EgtBEAMWALL.DataLayer.Migrations
|
||||
{
|
||||
using System;
|
||||
using System.Data.Entity.Migrations;
|
||||
|
||||
public partial class updateProj : DbMigration
|
||||
{
|
||||
public override void Up()
|
||||
{
|
||||
AddColumn("dbo.BTLPartList", "BTLPart_CalcState", c => c.Int(nullable: false));
|
||||
AddColumn("dbo.ProjList", "Proj_Lock", c => c.Boolean(nullable: false));
|
||||
AddColumn("dbo.PartList", "Part_CalcState", c => c.Int(nullable: false));
|
||||
AddColumn("dbo.RawPartList", "RawPart_State", c => c.Int(nullable: false));
|
||||
AddColumn("dbo.RawPartList", "RawPart_Assign", c => c.String(unicode: false));
|
||||
DropColumn("dbo.BTLPartList", "BTLPart_State");
|
||||
}
|
||||
|
||||
public override void Down()
|
||||
{
|
||||
AddColumn("dbo.BTLPartList", "BTLPart_State", c => c.Int(nullable: false));
|
||||
DropColumn("dbo.RawPartList", "RawPart_Assign");
|
||||
DropColumn("dbo.RawPartList", "RawPart_State");
|
||||
DropColumn("dbo.PartList", "Part_CalcState");
|
||||
DropColumn("dbo.ProjList", "Proj_Lock");
|
||||
DropColumn("dbo.BTLPartList", "BTLPart_CalcState");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,126 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name="Target" xml:space="preserve">
|
||||
<value>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</value>
|
||||
</data>
|
||||
<data name="DefaultSchema" xml:space="preserve">
|
||||
<value>dbo</value>
|
||||
</data>
|
||||
</root>
|
||||
@@ -178,6 +178,7 @@
|
||||
<LastGenOutput>Resources.Designer.vb</LastGenOutput>
|
||||
<CustomToolNamespace>My.Resources</CustomToolNamespace>
|
||||
</EmbeddedResource>
|
||||
<None Include="app.config" />
|
||||
<None Include="My Project\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
<LastGenOutput>Settings.Designer.vb</LastGenOutput>
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="MySql.Data" publicKeyToken="c5687fc88969c44d" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-6.9.12.0" newVersion="6.9.12.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
@@ -5,13 +5,26 @@
|
||||
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
|
||||
</configSections>
|
||||
<entityFramework>
|
||||
<defaultConnectionFactory type="MySql.Data.Entity.MySqlConnectionFactory, MySql.Data.Entity.EF6" />
|
||||
<providers>
|
||||
|
||||
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
|
||||
</providers>
|
||||
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
|
||||
<parameters>
|
||||
<parameter value="v13.0" />
|
||||
</parameters>
|
||||
</defaultConnectionFactory>
|
||||
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6, Version=6.9.12.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"></provider></providers>
|
||||
</entityFramework>
|
||||
</configuration>
|
||||
<connectionStrings>
|
||||
<add name="DefaultConnection" connectionString="server=localhost;port=3306;User Id=root;password=viacremasca;Persist Security Info=True;database=EgtBwDb;SslMode=none" providerName="MySql.Data.MySqlClient" />
|
||||
</connectionStrings>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="MySql.Data" publicKeyToken="c5687fc88969c44d" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-6.9.12.0" newVersion="6.9.12.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
<system.data>
|
||||
<DbProviderFactories>
|
||||
<remove invariant="MySql.Data.MySqlClient" />
|
||||
<add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.9.12.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
|
||||
</DbProviderFactories>
|
||||
</system.data></configuration>
|
||||
@@ -107,6 +107,12 @@
|
||||
<Reference Include="EntityFramework.SqlServer, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\EntityFramework.6.0.0\lib\net40\EntityFramework.SqlServer.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="MySql.Data, Version=6.9.12.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MySql.Data.6.9.12\lib\net40\MySql.Data.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="MySql.Data.Entity.EF6, Version=6.9.12.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MySql.Data.Entity.6.9.12\lib\net40\MySql.Data.Entity.EF6.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.ComponentModel.DataAnnotations" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Drawing" />
|
||||
|
||||
@@ -99,9 +99,11 @@ Public Class OpenProjectFileDialogVM
|
||||
Public Function Init(ProjectType As ProjectType, Optional ProjectList As List(Of ProjectFile) = Nothing) As Boolean?
|
||||
m_ProjectType = ProjectType
|
||||
If IsNothing(ProjectList) OrElse ProjectList.Count = 0 Then
|
||||
' leggo lista proj da DB
|
||||
' leggo da db
|
||||
Dim ProjController As New DataLayer.Controllers.ProjController
|
||||
Dim ProjList As List(Of DataLayer.DatabaseModels.ProjModel) = ProjController.GetLastPaginatedDesc(50)
|
||||
For Each Project In ProjController.GetLastDesc(50)
|
||||
m_ProjectList.Add(New ProjectFile(Project.nProjectType, Project.nProjId, Project.nProdId, Project.BTLFileName))
|
||||
Next
|
||||
'' cartella da cui leggere i programmi
|
||||
'Dim sFolderPath As String
|
||||
'If m_ProjectType = ProjectType.PROJ Then
|
||||
@@ -133,20 +135,6 @@ Public Class OpenProjectFileDialogVM
|
||||
Next
|
||||
End Sub
|
||||
|
||||
Private Sub VerifyFiles(FileId As String)
|
||||
Dim AllFilesInDir As IEnumerable(Of String) = IO.Directory.EnumerateFiles(CurrDirectory)
|
||||
For Each File In AllFilesInDir
|
||||
If Path.GetExtension(File).ToLower() = ".nge" Then
|
||||
Dim nProjId As Integer = 0
|
||||
Dim nProdId As Integer = 0
|
||||
Dim sBTLFileName As String = ""
|
||||
If ProjectFile.VerifyProjectFile(m_ProjectType, Path.GetFileNameWithoutExtension(File), nProjId, nProdId, sBTLFileName) Then
|
||||
m_ProjectList.Add(New ProjectFile(m_ProjectType, nProjId, nProdId, sBTLFileName))
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
End Sub
|
||||
|
||||
Friend Function VerifySelected() As Boolean
|
||||
Return Not IsNothing(SelProject)
|
||||
End Function
|
||||
|
||||
@@ -0,0 +1,278 @@
|
||||
Imports System.IO
|
||||
Imports EgtUILib
|
||||
|
||||
Public Class ProjectFile
|
||||
|
||||
Private m_nProjectType As ProjectType
|
||||
Public ReadOnly Property nProjectType As ProjectType
|
||||
Get
|
||||
Return m_nProjectType
|
||||
End Get
|
||||
End Property
|
||||
Friend Sub SetProjectType(nProjectType As ProjectType)
|
||||
m_nProjectType = nProjectType
|
||||
End Sub
|
||||
|
||||
Private m_nProjId As Integer = 0
|
||||
Public ReadOnly Property nProjId As Integer
|
||||
Get
|
||||
Return m_nProjId
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Friend ReadOnly Property sProjDirPath As String
|
||||
Get
|
||||
If IsNothing(m_nProjId) OrElse m_nProjId = 0 Then Return String.Empty
|
||||
Return refMainWindowVM.MainWindowM.sProjsDir & "\" & nProjId.ToString("0000")
|
||||
End Get
|
||||
End Property
|
||||
Friend ReadOnly Property sProjPath As String
|
||||
Get
|
||||
Dim sPath As String = String.Empty
|
||||
If IsNothing(m_nProjId) OrElse m_nProjId = 0 Then Return String.Empty
|
||||
sPath = refMainWindowVM.MainWindowM.sProjsDir & "\" & nProjId.ToString("0000") & "\" & nProjId.ToString("0000") & FILENAMESEPARATOR
|
||||
If Not IsNothing(m_nProdId) AndAlso m_nProdId > 0 Then
|
||||
sPath &= nProdId.ToString("0000")
|
||||
End If
|
||||
sPath &= FILENAMESEPARATOR & BTLFileName & ".nge"
|
||||
Return sPath
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private m_nProdId As Integer = 0
|
||||
Public ReadOnly Property nProdId As Integer
|
||||
Get
|
||||
Return m_nProdId
|
||||
End Get
|
||||
End Property
|
||||
Friend ReadOnly Property sProdDirPath As String
|
||||
Get
|
||||
Dim sPath As String = String.Empty
|
||||
If IsNothing(m_nProdId) OrElse m_nProdId = 0 Then Return String.Empty
|
||||
Return refMainWindowVM.MainWindowM.sProdsDir & "\" & nProdId.ToString("0000")
|
||||
End Get
|
||||
End Property
|
||||
Friend ReadOnly Property sProdPath As String
|
||||
Get
|
||||
Dim sPath As String = String.Empty
|
||||
If IsNothing(m_nProdId) OrElse m_nProdId = 0 Then Return String.Empty
|
||||
Return refMainWindowVM.MainWindowM.sProdsDir & "\" & nProdId.ToString("0000") & "\" & nProdId.ToString("0000") & ".nge"
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private m_BTLFileName As String = String.Empty
|
||||
Public ReadOnly Property BTLFileName As String
|
||||
Get
|
||||
Return m_BTLFileName
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private m_NewProj As Boolean
|
||||
Friend Property NewProj As Boolean
|
||||
Get
|
||||
Return m_NewProj
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_NewProj = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_NewProd As Boolean
|
||||
Friend Property NewProd As Boolean
|
||||
Get
|
||||
Return m_NewProd
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_NewProd = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
' nome del file mostrato nella finestra OpenProjFileDialog
|
||||
Public ReadOnly Property OpenFileName As String
|
||||
Get
|
||||
If m_nProjectType = ProjectType.PROJ Then
|
||||
Return m_nProjId.ToString("0000") & " " & BTLFileName
|
||||
ElseIf m_nProjectType = ProjectType.PROD Then
|
||||
Return m_nProdId.ToString("0000")
|
||||
Else
|
||||
Return ""
|
||||
End If
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Sub New(nProjectType As ProjectType, ProjectFileName As String)
|
||||
m_nProjectType = nProjectType
|
||||
If m_nProjectType = ProjectType.PROJ Then
|
||||
Dim DataFromFileName As String() = ProjectFileName.Split(FILENAMESEPARATOR)
|
||||
If Not String.IsNullOrEmpty(DataFromFileName(0)) Then
|
||||
Integer.TryParse(DataFromFileName(0), m_nProjId)
|
||||
End If
|
||||
If Not String.IsNullOrEmpty(DataFromFileName(1)) Then
|
||||
Integer.TryParse(DataFromFileName(1), m_nProdId)
|
||||
Else
|
||||
m_nProdId = 0
|
||||
End If
|
||||
If Not String.IsNullOrEmpty(DataFromFileName(2)) Then
|
||||
m_BTLFileName = DataFromFileName(2)
|
||||
End If
|
||||
ElseIf m_nProjectType = ProjectType.PROD Then
|
||||
Integer.TryParse(ProjectFileName, m_nProdId)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Sub New(nProjectType As ProjectType, nProjId As Integer, nProdId As Integer, sBTLFileName As String)
|
||||
m_nProjectType = nProjectType
|
||||
If m_nProjectType = ProjectType.PROJ Then
|
||||
m_nProjId = nProjId
|
||||
m_nProdId = nProdId
|
||||
m_BTLFileName = sBTLFileName
|
||||
ElseIf m_nProjectType = ProjectType.PROD Then
|
||||
m_nProdId = nProdId
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Friend Sub SetProdId(nProdId As Integer)
|
||||
' rinomino proj con riferimento a prod
|
||||
Dim OldPath As String = sProjPath
|
||||
m_nProdId = nProdId
|
||||
Dim NewPath As String = sProjPath
|
||||
File.Move(OldPath, NewPath)
|
||||
End Sub
|
||||
|
||||
Friend Sub ResetProdId()
|
||||
SetProdId(0)
|
||||
End Sub
|
||||
|
||||
' funzione che restituisce le parti di nome file
|
||||
Friend Shared Function VerifyProjectFile(nProjectType As ProjectType, ProjectFileName As String, ByRef nProjId As Integer, ByRef nProdId As Integer, ByRef sBTLFileName As String) As Boolean
|
||||
If nProjectType = ProjectType.PROJ Then
|
||||
Dim DataFromFileName As String() = ProjectFileName.Split(FILENAMESEPARATOR)
|
||||
If DataFromFileName.Count = 3 Then
|
||||
If Not String.IsNullOrEmpty(DataFromFileName(0)) Then
|
||||
Integer.TryParse(DataFromFileName(0), nProjId)
|
||||
Else Return False
|
||||
End If
|
||||
If Not String.IsNullOrEmpty(DataFromFileName(1)) Then
|
||||
Integer.TryParse(DataFromFileName(1), nProdId)
|
||||
Else
|
||||
nProdId = 0
|
||||
End If
|
||||
If Not String.IsNullOrEmpty(DataFromFileName(2)) Then
|
||||
sBTLFileName = DataFromFileName(2)
|
||||
End If
|
||||
Return True
|
||||
Else Return False
|
||||
End If
|
||||
ElseIf nProjectType = ProjectType.PROD Then
|
||||
Return Integer.TryParse(ProjectFileName, nProdId)
|
||||
Else Return False
|
||||
End If
|
||||
End Function
|
||||
|
||||
' funzione che dato un nome file e il tipo restituisce il corretto numero di progetto
|
||||
Friend Shared Function GetProjectNumber(nProjectType As ProjectType, ProjectFileName As String, ByRef nProjId As Integer, ByRef nProdId As Integer, ByRef sBTLFileName As String) As Boolean
|
||||
If String.IsNullOrWhiteSpace(ProjectFileName) Then
|
||||
nProjId = 0
|
||||
nProdId = 0
|
||||
sBTLFileName = ""
|
||||
Return False
|
||||
ElseIf ProjectFileName.Contains(FILENAMESEPARATOR) Then
|
||||
Dim DataFromFileName As String() = ProjectFileName.Split(FILENAMESEPARATOR)
|
||||
If DataFromFileName.Count = 3 Then
|
||||
If Not String.IsNullOrEmpty(DataFromFileName(0)) Then
|
||||
Integer.TryParse(DataFromFileName(0), nProjId)
|
||||
Else Return False
|
||||
End If
|
||||
If Not String.IsNullOrEmpty(DataFromFileName(1)) Then
|
||||
Integer.TryParse(DataFromFileName(1), nProdId)
|
||||
Else
|
||||
nProdId = 0
|
||||
End If
|
||||
If Not String.IsNullOrEmpty(DataFromFileName(2)) Then
|
||||
sBTLFileName = DataFromFileName(2)
|
||||
End If
|
||||
Return True
|
||||
Else Return False
|
||||
End If
|
||||
ElseIf nProjectType = ProjectType.PROJ Then
|
||||
Dim ProjectFileNameProd As String = Integer.TryParse(ProjectFileName, nProdId)
|
||||
Dim nTempProjId As Integer = 0
|
||||
Dim nTempProdId As Integer = 0
|
||||
Dim sTempBTLFileName As String = ""
|
||||
' ricavo lista cartelle proj
|
||||
Dim AllDirsInDir As IEnumerable(Of String) = IO.Directory.EnumerateDirectories(Map.refMainWindowVM.MainWindowM.sProjsDir)
|
||||
For Each Directory In AllDirsInDir
|
||||
Dim AllFilesInDir As IEnumerable(Of String) = IO.Directory.EnumerateFiles(Directory)
|
||||
For Each File In AllFilesInDir
|
||||
If Path.GetExtension(File).ToLower() = ".nge" Then
|
||||
If File.Contains(FILENAMESEPARATOR) Then
|
||||
Dim DataFromFileName As String() = ProjectFileName.Split(FILENAMESEPARATOR)
|
||||
If DataFromFileName.Count = 3 Then
|
||||
If Not String.IsNullOrEmpty(DataFromFileName(0)) Then
|
||||
Integer.TryParse(DataFromFileName(0), nTempProjId)
|
||||
Else Return False
|
||||
End If
|
||||
If Not String.IsNullOrEmpty(DataFromFileName(1)) Then
|
||||
Integer.TryParse(DataFromFileName(1), nTempProdId)
|
||||
Else
|
||||
nProdId = 0
|
||||
End If
|
||||
If Not String.IsNullOrEmpty(DataFromFileName(2)) Then
|
||||
sTempBTLFileName = DataFromFileName(2)
|
||||
End If
|
||||
If ProjectFileNameProd = nTempProdId Then
|
||||
nProjId = nTempProjId
|
||||
nProdId = nTempProdId
|
||||
sTempBTLFileName = sBTLFileName
|
||||
Return True
|
||||
End If
|
||||
Else Return False
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
Next
|
||||
End If
|
||||
Return False
|
||||
End Function
|
||||
|
||||
Friend Shared Function VerifyProjectModification(CurrProject As ProjectFile, Type As ProjectType) As Boolean
|
||||
If IsNothing(CurrProject) Then Return False
|
||||
Dim bNewProject As Boolean = False
|
||||
Dim sProjectDirPath As String = ""
|
||||
If Type = ProjectType.PROJ Then
|
||||
bNewProject = CurrProject.NewProj
|
||||
sProjectDirPath = CurrProject.sProjDirPath
|
||||
Else
|
||||
bNewProject = CurrProject.NewProd
|
||||
sProjectDirPath = CurrProject.sProdDirPath
|
||||
End If
|
||||
' verifico se progetto modificato, e chiedo se salvare
|
||||
If (EgtGetModified() Or bNewProject) Then
|
||||
If MessageBox.Show("Salvare le modifiche apportate al progetto?", "", MessageBoxButton.YesNo, MessageBoxImage.Question) = MessageBoxResult.Yes Then
|
||||
' salvo proj
|
||||
If Type = ProjectType.PROJ Then
|
||||
Map.refProjManagerVM.Save()
|
||||
Else
|
||||
Map.refProdManagerVM.Save()
|
||||
End If
|
||||
Return True
|
||||
Else
|
||||
' se da non salvare e nuovo proj
|
||||
If bNewProject Then
|
||||
' lo elimino
|
||||
Directory.Delete(sProjectDirPath, True)
|
||||
If Type = ProjectType.PROD AndAlso CurrProject.m_nProdId = Map.refProjManagerVM.CurrProj.m_nProdId Then
|
||||
' reset prod in path proj
|
||||
Map.refProjManagerVM.CurrProj.ResetProdId()
|
||||
End If
|
||||
CurrProject = Nothing
|
||||
End If
|
||||
EgtResetModified()
|
||||
Return False
|
||||
End If
|
||||
End If
|
||||
Return True
|
||||
End Function
|
||||
|
||||
End Class
|
||||
@@ -1,4 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="EntityFramework" version="6.0.0" targetFramework="net40" />
|
||||
<package id="MySql.Data" version="6.9.12" targetFramework="net40" />
|
||||
<package id="MySql.Data.Entity" version="6.9.12" targetFramework="net40" />
|
||||
</packages>
|
||||
Reference in New Issue
Block a user