using Eventech.Common;
|
using IStation.Model;
|
using System.Collections.Generic;
|
using System.Linq;
|
|
namespace IStation.WinFrmUI.Basic
|
{
|
/// <summary>
|
/// 泵曲线导出
|
/// </summary>
|
public class PumpCurveDtoHelper
|
{
|
|
static string CurveKey = "Client";
|
|
public static string ExportJson(Model.PumpCurve rhs)
|
{
|
var pumpCurve = ExportDto(rhs);
|
if (pumpCurve == null)
|
return default;
|
|
return pumpCurve.ToJson();
|
}
|
|
|
public static Model.PumpCurveDto ExportDto(Model.PumpCurve rhs)
|
{
|
if (rhs == null)
|
return default;
|
|
var pumpCurve = new Model.PumpCurveDto();
|
pumpCurve.Name = rhs.CurveCode;
|
pumpCurve.SourceWay = rhs.SourceFrom;
|
pumpCurve.CreateMethod = rhs.CreateMethod.GetDisplayText();
|
pumpCurve.ReliabilityStatus = rhs.ReliabilityStatus;
|
pumpCurve.InputTime = rhs.CreateTime;
|
pumpCurve.Description = rhs.Description;
|
pumpCurve.CoordParas = new Dictionary<string, string>();
|
|
if (rhs.CoordParas != null)
|
{
|
var coordParas = new Model.CurveCoordinateParasDto();
|
coordParas.GridNumberX = rhs.CoordParas.GridNumberX;
|
coordParas.GridNumberY = rhs.CoordParas.GridNumberY;
|
coordParas.CoordMinQ = rhs.CoordParas.CoordMinQ;
|
coordParas.CoordSpaceQ = rhs.CoordParas.CoordSpaceQ;
|
coordParas.CoordMinH = rhs.CoordParas.CoordMinH;
|
coordParas.CoordSpaceH = rhs.CoordParas.CoordSpaceH;
|
coordParas.StartLineNoH = rhs.CoordParas.StartLineNoH;
|
coordParas.EndLineNoH = rhs.CoordParas.EndLineNoH;
|
coordParas.CoordMinP = rhs.CoordParas.CoordMinP;
|
coordParas.CoordSpaceP = rhs.CoordParas.CoordSpaceP;
|
coordParas.StartLineNoP = rhs.CoordParas.StartLineNoP;
|
coordParas.EndLineNoP = rhs.CoordParas.EndLineNoP;
|
coordParas.DispPanelQP = rhs.CoordParas.DispPanelQP;
|
coordParas.CoordMinE = rhs.CoordParas.CoordMinE;
|
coordParas.CoordSpaceE = rhs.CoordParas.CoordSpaceE;
|
coordParas.StartLineNoE = rhs.CoordParas.StartLineNoE;
|
coordParas.EndLineNoE = rhs.CoordParas.EndLineNoE;
|
coordParas.DispPanelQE = rhs.CoordParas.DispPanelQE;
|
|
pumpCurve.CoordParas.Add(CurveKey, coordParas.ToJson());
|
}
|
|
|
if (rhs.CurveInfo != null)
|
{
|
var curveInfo = new Model.FeatCurveExpressGroupDto();
|
if (rhs.CurveInfo.CurveQH != null)
|
{
|
curveInfo.CurveQH = new Model.CurveExpressDto();
|
curveInfo.CurveQH.FitType = rhs.CurveInfo.CurveQH.FitType;
|
|
var definePoints = rhs.CurveInfo.CurveQH.DefinePoints;
|
if (definePoints == null)
|
{
|
definePoints = rhs.CurveInfo.CurveQH.GetFitPoints(12);
|
}
|
curveInfo.CurveQH.DefinePoints = definePoints?.Select(x => new CurvePointDto(x.X, x.Y)).ToList();
|
}
|
|
if (rhs.CurveInfo.CurveQE != null)
|
{
|
curveInfo.CurveQE = new Model.CurveExpressDto();
|
curveInfo.CurveQE.FitType = rhs.CurveInfo.CurveQE.FitType;
|
|
var definePoints = rhs.CurveInfo.CurveQE.DefinePoints;
|
if (definePoints == null)
|
{
|
definePoints = rhs.CurveInfo.CurveQE.GetFitPoints(12);
|
}
|
curveInfo.CurveQE.DefinePoints = definePoints?.Select(x => new CurvePointDto(x.X, x.Y)).ToList();
|
}
|
|
if (rhs.CurveInfo.CurveQP != null)
|
{
|
curveInfo.CurveQP = new Model.CurveExpressDto();
|
curveInfo.CurveQP.FitType = rhs.CurveInfo.CurveQP.FitType;
|
|
var definePoints = rhs.CurveInfo.CurveQP.DefinePoints;
|
if (definePoints == null)
|
{
|
definePoints = rhs.CurveInfo.CurveQP.GetFitPoints(12);
|
}
|
curveInfo.CurveQP.DefinePoints = definePoints?.Select(x => new CurvePointDto(x.X, x.Y)).ToList();
|
}
|
|
pumpCurve.CurveExpress = curveInfo;
|
}
|
|
return pumpCurve;
|
|
}
|
|
}
|
}
|