Aggiunto chiamata x status canali IO
This commit is contained in:
@@ -15,7 +15,7 @@
|
||||
<xs:element name="page" type="xs:string" />
|
||||
<xs:element name="wire" type="xs:string" />
|
||||
<xs:element name="profinet" type="xs:string" />
|
||||
<xs:element name="disableForce" type ="xs:boolean" />
|
||||
<xs:element name="disableForce" type ="xs:boolean" minOccurs="0" />
|
||||
</xs:all>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
|
||||
@@ -38,7 +38,7 @@ namespace Thermo.Active.Model.DTOModels.ThIO
|
||||
}
|
||||
public class DigitalOUT : DigitalIN
|
||||
{
|
||||
public bool ForceEnabled { get; set; } = false;
|
||||
public bool ForceEnabled { get; set; } = true;
|
||||
public bool ForceZero { get; set; } = false;
|
||||
public bool ForceOne { get; set; } = false;
|
||||
public bool IsForced { get; set; } = false;
|
||||
@@ -94,7 +94,7 @@ namespace Thermo.Active.Model.DTOModels.ThIO
|
||||
|
||||
public class AnalogOUT : AnalogIN
|
||||
{
|
||||
public bool ForceEnabled { get; set; } = false;
|
||||
public bool ForceEnabled { get; set; } = true;
|
||||
public double ForcedValue { get; set; } = 0;
|
||||
public bool IsForced { get; set; } = false;
|
||||
|
||||
@@ -125,13 +125,13 @@ namespace Thermo.Active.Model.DTOModels.ThIO
|
||||
public class IoBaseConf
|
||||
{
|
||||
public int Id { get; set; } = 0;
|
||||
public int Bank { get; set; } = 0;
|
||||
public string Position { get; set; } = "";
|
||||
public string Page { get; set; } = "";
|
||||
public string Wire { get; set; } = "";
|
||||
public string Profinet { get; set; } = "";
|
||||
public string Label { get; set; } = "";
|
||||
public bool Visible { get; set; } = false;
|
||||
public string Bank { get; set; } = "0";
|
||||
public string Position { get; set; } = "0";
|
||||
public string Page { get; set; } = "0";
|
||||
public string Wire { get; set; } = "0";
|
||||
public string Profinet { get; set; } = "0";
|
||||
public string Label { get; set; } = "LBL";
|
||||
public bool Visible { get; set; } = true;
|
||||
|
||||
|
||||
public override bool Equals(object obj)
|
||||
|
||||
@@ -1,47 +0,0 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Thermo.Active.Model.DTOModels.ThIO
|
||||
{
|
||||
public class DTODigInModel
|
||||
{
|
||||
public int Block { get; set; } = 0;
|
||||
public int Num { get; set; } = 0;
|
||||
public string Page { get; set; } = "0";
|
||||
public string Wire { get; set; } = "0";
|
||||
public string Profinet { get; set; } = "";
|
||||
public string Label { get; set; } = "";
|
||||
public bool Value { get; set; } = false;
|
||||
|
||||
public override bool Equals(object obj)
|
||||
{
|
||||
if (!(obj is DTODigInModel item))
|
||||
return false;
|
||||
|
||||
if (Block != item.Block)
|
||||
return false;
|
||||
if (Num != item.Num)
|
||||
return false;
|
||||
if (Page != item.Page)
|
||||
return false;
|
||||
if (Wire!= Wire)
|
||||
return false;
|
||||
if (Profinet != item.Profinet)
|
||||
return false;
|
||||
if (Label != item.Label)
|
||||
return false;
|
||||
if (Value != item.Value)
|
||||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public override int GetHashCode()
|
||||
{
|
||||
return base.GetHashCode();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,56 +0,0 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Thermo.Active.Model.DTOModels.ThIO
|
||||
{
|
||||
public class DTODigOutModel
|
||||
{
|
||||
public int Block { get; set; } = 0;
|
||||
public int Num { get; set; } = 0;
|
||||
public string Page { get; set; } = "0";
|
||||
public string Wire { get; set; } = "0";
|
||||
public string Profinet { get; set; } = "";
|
||||
public string Label { get; set; } = "";
|
||||
public bool Value { get; set; } = false;
|
||||
public bool ForceZero { get; set; } = false;
|
||||
public bool ForceOne { get; set; } = false;
|
||||
public bool IsForced { get; set; } = false;
|
||||
|
||||
public override bool Equals(object obj)
|
||||
{
|
||||
if (!(obj is DTODigOutModel item))
|
||||
return false;
|
||||
|
||||
if (Block != item.Block)
|
||||
return false;
|
||||
if (Num != item.Num)
|
||||
return false;
|
||||
if (Page != item.Page)
|
||||
return false;
|
||||
if (Wire != Wire)
|
||||
return false;
|
||||
if (Profinet != item.Profinet)
|
||||
return false;
|
||||
if (Label != item.Label)
|
||||
return false;
|
||||
if (Value != item.Value)
|
||||
return false;
|
||||
if (ForceZero != item.ForceZero)
|
||||
return false;
|
||||
if (ForceOne != item.ForceOne)
|
||||
return false;
|
||||
if (IsForced != item.IsForced)
|
||||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public override int GetHashCode()
|
||||
{
|
||||
return base.GetHashCode();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -113,9 +113,7 @@
|
||||
<Compile Include="DTOModels\DTOM156InputModel.cs" />
|
||||
<Compile Include="DTOModels\DTOMessageModel.cs" />
|
||||
<Compile Include="DTOModels\ThAxes\DTOAxisInfoModel.cs" />
|
||||
<Compile Include="DTOModels\ThIO\DTODigInModel.cs" />
|
||||
<Compile Include="DTOModels\ThIO\DTOChannelsIOModel.cs" />
|
||||
<Compile Include="DTOModels\ThIO\DTODigOutModel.cs" />
|
||||
<Compile Include="DTOModels\ThModules\DTOModulesBlock.cs" />
|
||||
<Compile Include="DTOModels\ThProd\DTOProdInfo.cs" />
|
||||
<Compile Include="DTOModels\ThProd\DTOThermoPanelProd.cs" />
|
||||
|
||||
@@ -5,6 +5,7 @@ using Thermo.Active.Database.Controllers;
|
||||
using Thermo.Active.Model.ConfigModels;
|
||||
using Thermo.Active.Model.DTOModels;
|
||||
using Thermo.Active.Model.DTOModels.AlarmModels;
|
||||
using Thermo.Active.Model.DTOModels.ThIO;
|
||||
using Thermo.Active.Model.DTOModels.ThProd;
|
||||
using Thermo.Active.Model.DTOModels.ThRecipe;
|
||||
using static Thermo.Active.Config.ServerConfig;
|
||||
@@ -124,6 +125,68 @@ namespace Thermo.Active.Controllers.WebApi
|
||||
return Ok(recipeConfig);
|
||||
}
|
||||
|
||||
#if false
|
||||
[Route("IO"), HttpGet]
|
||||
public IHttpActionResult GetIOConfig()
|
||||
{
|
||||
DTOChannelsIOModel ChannelsIO = new DTOChannelsIOModel();
|
||||
// leggo i 4 tipi di oggetti e popolo
|
||||
List<DigitalIN> listDI = IOConfig.Where(x => x.Category == Model.Constants.TACT_IO_TYPE.DI).Select(x => new DigitalIN()
|
||||
{
|
||||
Id = x.Id,
|
||||
Bank = x.Bank,
|
||||
Position = x.Position,
|
||||
//Page = x.Category.ToString(),
|
||||
Page = x.Page,
|
||||
Wire = x.Wire,
|
||||
Profinet = x.Profinet,
|
||||
Label = x.Label.Replace("__", "_").Replace("__", "_").ToLower()
|
||||
}).ToList();
|
||||
List<DigitalOUT> listDO = IOConfig.Where(x => x.Category == Model.Constants.TACT_IO_TYPE.DO).Select(x => new DigitalOUT()
|
||||
{
|
||||
Id = x.Id,
|
||||
Bank = x.Bank,
|
||||
Position = x.Position,
|
||||
//Page = x.Category.ToString(),
|
||||
Page = x.Page,
|
||||
Wire = x.Wire,
|
||||
Profinet = x.Profinet,
|
||||
Label = x.Label.Replace("__", "_").Replace("__", "_").ToLower()
|
||||
}).ToList();
|
||||
List<AnalogIN> listAI = IOConfig.Where(x => x.Category == Model.Constants.TACT_IO_TYPE.AI).Select(x => new AnalogIN()
|
||||
{
|
||||
Id = x.Id,
|
||||
Bank = x.Bank,
|
||||
Position = x.Position,
|
||||
//Page = x.Category.ToString(),
|
||||
Page = x.Page,
|
||||
Wire = x.Wire,
|
||||
Profinet = x.Profinet,
|
||||
Label = x.Label.Replace("__", "_").Replace("__", "_").ToLower()
|
||||
}).ToList();
|
||||
List<AnalogOUT> listAO = IOConfig.Where(x => x.Category == Model.Constants.TACT_IO_TYPE.AO).Select(x => new AnalogOUT()
|
||||
{
|
||||
Id = x.Id,
|
||||
Bank = x.Bank,
|
||||
Position = x.Position,
|
||||
//Page = x.Category.ToString(),
|
||||
Page = x.Page,
|
||||
Wire = x.Wire,
|
||||
Profinet = x.Profinet,
|
||||
Label = x.Label.Replace("__", "_").Replace("__", "_").ToLower()
|
||||
}).ToList();
|
||||
|
||||
// assegno!
|
||||
ChannelsIO.DI = listDI;
|
||||
ChannelsIO.DO = listDO;
|
||||
ChannelsIO.AI = listAI;
|
||||
ChannelsIO.AO = listAO;
|
||||
|
||||
// restituisco
|
||||
return Ok(ChannelsIO);
|
||||
}
|
||||
#endif
|
||||
|
||||
[Route("thermoProd"), HttpGet]
|
||||
public IHttpActionResult GetThermoProdConfig()
|
||||
{
|
||||
|
||||
@@ -15,6 +15,7 @@ using TeamDev.SDK.MVVM;
|
||||
using Thermo.Active.Config;
|
||||
using Thermo.Active.Database.Controllers;
|
||||
using Thermo.Active.Model.DTOModels;
|
||||
using Thermo.Active.Model.DTOModels.ThIO;
|
||||
using Thermo.Active.Model.DTOModels.ThRecipe;
|
||||
using Thermo.Active.Model.DTOModels.ThWarmers;
|
||||
using Thermo.Active.NC;
|
||||
@@ -52,5 +53,65 @@ namespace Thermo.Active.Controllers.WebApi
|
||||
|
||||
return Ok(machineLog);
|
||||
}
|
||||
|
||||
[Route("channels_io"), HttpGet]
|
||||
public IHttpActionResult GetChannelsIO()
|
||||
{
|
||||
DTOChannelsIOModel ChannelsIO = new DTOChannelsIOModel();
|
||||
// leggo i 4 tipi di oggetti e popolo
|
||||
List<DigitalIN> listDI = IOConfig.Where(x => x.Category == Model.Constants.TACT_IO_TYPE.DI).Select(x => new DigitalIN()
|
||||
{
|
||||
Id = x.Id,
|
||||
Bank = x.Bank,
|
||||
Position = x.Position,
|
||||
//Page = x.Category.ToString(),
|
||||
Page = x.Page,
|
||||
Wire = x.Wire,
|
||||
Profinet = x.Profinet,
|
||||
Label = x.Label.Replace("__", "_").Replace("__", "_").ToLower()
|
||||
}).ToList();
|
||||
List<DigitalOUT> listDO = IOConfig.Where(x => x.Category == Model.Constants.TACT_IO_TYPE.DO).Select(x => new DigitalOUT()
|
||||
{
|
||||
Id = x.Id,
|
||||
Bank = x.Bank,
|
||||
Position = x.Position,
|
||||
//Page = x.Category.ToString(),
|
||||
Page = x.Page,
|
||||
Wire = x.Wire,
|
||||
Profinet = x.Profinet,
|
||||
Label = x.Label.Replace("__", "_").Replace("__", "_").ToLower()
|
||||
}).ToList();
|
||||
List<AnalogIN> listAI = IOConfig.Where(x => x.Category == Model.Constants.TACT_IO_TYPE.AI).Select(x => new AnalogIN()
|
||||
{
|
||||
Id = x.Id,
|
||||
Bank = x.Bank,
|
||||
Position = x.Position,
|
||||
//Page = x.Category.ToString(),
|
||||
Page = x.Page,
|
||||
Wire = x.Wire,
|
||||
Profinet = x.Profinet,
|
||||
Label = x.Label.Replace("__", "_").Replace("__", "_").ToLower()
|
||||
}).ToList();
|
||||
List<AnalogOUT> listAO = IOConfig.Where(x => x.Category == Model.Constants.TACT_IO_TYPE.AO).Select(x => new AnalogOUT()
|
||||
{
|
||||
Id = x.Id,
|
||||
Bank = x.Bank,
|
||||
Position = x.Position,
|
||||
//Page = x.Category.ToString(),
|
||||
Page = x.Page,
|
||||
Wire = x.Wire,
|
||||
Profinet = x.Profinet,
|
||||
Label = x.Label.Replace("__", "_").Replace("__", "_").ToLower()
|
||||
}).ToList();
|
||||
|
||||
// assegno!
|
||||
ChannelsIO.DI = listDI;
|
||||
ChannelsIO.DO = listDO;
|
||||
ChannelsIO.AI = listAI;
|
||||
ChannelsIO.AO = listAO;
|
||||
|
||||
// restituisco
|
||||
return Ok(ChannelsIO);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user