using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace IStation.Application
{
///
/// 通信转换辅助类
///
public static class CommunicationTransferHelper
{
///
/// 转换为设备
///
public static Model.Product ToProduct(this AddCommunicationInput input)
{
var product=new Model.Product();
product.ID = 0;
product.CorpID = input.CorpID;
product.BelongType = input.BelongType;
product.BelongID = input.BelongID;
product.GroupID = input.GroupID;
product.Catalog = Product.Catalog_TongXinSheBei;
product.ProductTypeID=input.ProductTypeID;
product.NO=input.NO;
product.Name = input.SpecialNO;
product.Code= input.Code;
product.ManufacturerID=input.ManufacturerID;
var communication = new Model.Communication();
communication.ServerIP = input.ServerIP;
communication.ServerPort = input.ServerPort;
communication.SpecialNO = input.SpecialNO;
communication.RegisterCode=input.RegisterCode;
communication.Heartbeat=input.Heartbeat;
communication.HeartInterval= input.HeartInterval;
communication.BaudRate= input.BaudRate;
communication.FeedBack= input.FeedBack;
product.RatedParas = communication.ToJson();
product.TerminalId = input.TerminalId;
product.TagName = input.TagName;
product.SortCode = input.SortCode;
product.UseStatus = Model.Product.eUseStatus.Enable;
product.Description = input.Description;
return product;
}
///
/// 更新设备
///
public static Model.Product UpdateProduct(this UpdateCommunicationInput input,Model.Product product)
{
product.NO= input.NO;
product.Code = input.Code;
product.ManufacturerID = input.ManufacturerID;
product.Name = input.SpecialNO;
var communication = new Model.Communication();
communication.ServerIP = input.ServerIP;
communication.ServerPort = input.ServerPort;
communication.SpecialNO = input.SpecialNO;
communication.RegisterCode = input.RegisterCode;
communication.Heartbeat = input.Heartbeat;
communication.HeartInterval = input.HeartInterval;
communication.BaudRate = input.BaudRate;
communication.FeedBack = input.FeedBack;
product.RatedParas = communication.ToJson();
product.PropsParas = input.PropsParas;
product.InspectionSchedule = input.InspectionSchedule;
product.TerminalId= input.TerminalId;
product.TagName = input.TagName;
product.Description=input.Description;
return product;
}
}
}