using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Core.StlMes.Client.PlnSaleOrd
{
///
/// 轧制长度计算
///
class RollLenCal
{
///
/// 管加工标准
///
private string stdGjgNo = "";
///
/// 产线
///
private string pline = "";
///
/// 品种
///
private string producName = "";
///
/// 扣型
///
private string modelDesc = "";
///
/// 成品长度上限
///
private double lengthmax = 0;
///
/// 成品长度下限
///
private double lengthmin = 0;
///
/// 轧制长度下限
///
private double lenToendMin = 0;
///
/// 轧制长度上限
///
private double lenToendMax = 0;
///
/// 单支排产加长m
///
private double extraLenTot = 0;
///
/// 计算轧制长度上限
///
public void calToendMax()
{
//过程1
if (pline != "C012" && lengthmax <= 7)
{
lenToendMax = lengthmax * 2 + 0.01;
lenToendMin = lengthmin * 2 + 0.01;
}
else
{
//产线是ASSEL机组
lenToendMax = lengthmax;
lenToendMin = lengthmin;
}
//过程2
if (producName.Contains("套管"))
{
if (!producName.Contains("平端"))
{
lenToendMax = lengthmax - 0.2;
}
}
else if (producName.Contains("油管"))
{
if (modelDesc.Contains("EU"))
{
if (producName.Contains("平端"))
{
lenToendMax = lengthmax + 0.15;
}
else
{
lenToendMax = lengthmax + 0.08;
}
lenToendMin = lengthmin + 0.2;
}
else
{
if (!producName.Contains("平端"))
{
lenToendMax = lengthmax - 0.1;
}
}
}
//过程3
if (!producName.Contains("套管") && !producName.Contains("油管"))
{
if (modelDesc.Contains("PE") && (lenToendMax - lenToendMin) < 0.3)
{
lenToendMax = lenToendMin + 0.5;
lenToendMin = lenToendMin + 0.2;
extraLenTot = 0.5 - (lenToendMax - lenToendMin);
}
else if (modelDesc.Contains("BE") && (lenToendMax - lenToendMin) < 0.3)
{
lenToendMax = lenToendMin + 0.5;
lenToendMin = lenToendMin + 0.2;
extraLenTot = 0.5 - (lenToendMax - lenToendMin);
}
}
//过程4
if (stdGjgNo.Trim().Equals("/"))
{
lenToendMax = lengthmax;
lenToendMin = lengthmin;
}
}
///
/// 成品长度上限
///
public double Lengthmax
{
get { return lengthmax; }
set { lengthmax = value; }
}
///
/// 成品长度下限
///
public double Lengthmin
{
get { return lengthmin; }
set { lengthmin = value; }
}
///
/// 轧制长度下限
///
public double LenToendMin
{
get { return lenToendMin; }
set { lenToendMin = value; }
}
///
/// 轧制长度上限
///
public double LenToendMax
{
get { return lenToendMax; }
set { lenToendMax = value; }
}
///
/// 产线
///
public string Pline
{
get { return pline; }
set { pline = value; }
}
///
/// 品种
///
public string ProducName
{
get { return producName; }
set { producName = value; }
}
///
/// 扣型
///
public string ModelDesc
{
get { return modelDesc; }
set { modelDesc = value; }
}
///
/// 单支排产加长m
///
public double ExtraLenTot
{
get { return extraLenTot; }
set { extraLenTot = value; }
}
///
/// 管加工标准
///
public string StdGjgNo
{
get { return stdGjgNo; }
set { stdGjgNo = value; }
}
}
}