|
using iWare_SCADA_Model;
|
using Newtonsoft.Json;
|
using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Text;
|
using System.Threading.Tasks;
|
|
namespace iWare_SCADA_BusinessLogical.Utils
|
{
|
/// <summary>
|
/// 质量状态变更帮助类
|
/// </summary>
|
public class QualityStateHelper
|
{
|
/// <summary>
|
/// NOOK推出时,更新质量状态 【Editby shaocx,2024-08-23】
|
/// </summary>
|
/// <param name="value"></param>
|
/// <returns></returns>
|
public static void SetQualityStateForNoOk(ref WorkPieceInfo info, ref WorkPieceProcess pro)
|
{
|
try
|
{
|
QualityNoOkEnum? qualityNoOkEnum = null;
|
info.QualityState = (int)QualityState.NG;
|
|
if (info.QualityNoOk == null)
|
{
|
SetQualityNoOkEnum(info, ref qualityNoOkEnum);
|
if (qualityNoOkEnum != null)
|
{
|
info.QualityNoOk = (int)qualityNoOkEnum;
|
info.QualityNoOkReason = qualityNoOkEnum.ToString();
|
}
|
}
|
|
if (pro != null)
|
{
|
pro.QualityState = (int)QualityState.NG;
|
|
if (qualityNoOkEnum != null)
|
{
|
info.QualityNoOk = (int)qualityNoOkEnum;
|
info.QualityNoOkReason = qualityNoOkEnum.ToString();
|
}
|
}
|
}
|
catch (Exception ex)
|
{
|
|
}
|
}
|
|
|
/// <summary>
|
/// 获取不合格原因
|
/// </summary>
|
private static void SetQualityNoOkEnum(WorkPieceInfo logMiddle, ref QualityNoOkEnum? qualityNoOkEnum)
|
{
|
qualityNoOkEnum = null;
|
if (logMiddle.WorkingProcedureCurrent == "OP60")
|
{
|
return;
|
}
|
else if (logMiddle.WorkingProcedureCurrent == "OP80")
|
{
|
return;
|
}
|
else if (logMiddle.WorkingProcedureCurrent == "OP10")
|
{
|
qualityNoOkEnum = QualityNoOkEnum.OP10厚度超差;
|
return;
|
}
|
else if (logMiddle.WorkingProcedureCurrent == "OP20")
|
{
|
qualityNoOkEnum = QualityNoOkEnum.OP20小头孔直径超差;
|
return;
|
}
|
else if (logMiddle.WorkingProcedureCurrent == "OP30")
|
{
|
return;
|
}
|
else if (logMiddle.WorkingProcedureCurrent == "OP35")
|
{
|
qualityNoOkEnum = QualityNoOkEnum.OP35滚压力不合格;
|
return;
|
}
|
else if (logMiddle.WorkingProcedureCurrent == "OP40")
|
{
|
qualityNoOkEnum = QualityNoOkEnum.OP40厚度超差;
|
return;
|
}
|
return;
|
}
|
|
}
|
}
|