|
using iWare_SCADA_Model;
|
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 SystemBussinessHelper
|
{
|
/// <summary>
|
/// 设置WorkPieceLog 的创建人
|
/// </summary>
|
/// <param name="workPieceLog"></param>
|
/// <param name="_DataCapturePointCode"></param>
|
/// <param name="_DataCapturePointName"></param>
|
public static void SetWorkPieceLogMiddleForCreatedUserName(ref WorkPieceLogMiddle workPieceLog, string _DataCapturePointCode, string _DataCapturePointName)
|
{
|
workPieceLog.CreatedUserName = _DataCapturePointCode;
|
workPieceLog.DataCapturePointCname = _DataCapturePointName;
|
}
|
/// <summary>
|
/// 设置WorkPieceLog 的创建人
|
/// </summary>
|
/// <param name="workPieceLog"></param>
|
/// <param name="_DataCapturePointCode"></param>
|
/// <param name="_DataCapturePointName"></param>
|
public static void SetWorkPieceLogMiddleForCreatedUserName(ref WorkPieceLog workPieceLog, string _DataCapturePointCode, string _DataCapturePointName)
|
{
|
workPieceLog.CreatedUserName = _DataCapturePointCode;
|
workPieceLog.DataCapturePointCname = _DataCapturePointName;
|
}
|
|
/// <summary>
|
/// 设置WorkPieceLog 的更新人
|
/// </summary>
|
/// <param name="workPieceLog"></param>
|
/// <param name="_DataCapturePointCode"></param>
|
/// <param name="_DataCapturePointName"></param>
|
public static void SetWorkPieceLogMiddleForUpdatedUserName(ref WorkPieceLogMiddle workPieceLog, string _DataCapturePointCode, string _DataCapturePointName)
|
{
|
workPieceLog.UpdatedUserName = _DataCapturePointCode;
|
workPieceLog.UpdateDataCapturePointCname = _DataCapturePointName;
|
}
|
|
|
/// <summary>
|
/// 是否允许修改WorkPieceState 为WIP
|
/// </summary>
|
/// <param name="info"></param>
|
/// <param name="db"></param>
|
/// <param name="logMiddle"></param>
|
/// <returns></returns>
|
public static bool IsAllowUpdateWorkPieceStateToWip(WorkPieceInfo info, DbModel db, WorkPieceLogMiddle logMiddle)
|
{
|
//这里修复OP10、OP40 因为PLC先推 SPC推出、再推 产品下线问题,导致 产品下线更新数据时,把SPC数据覆盖的问题 【Editby shaocx,2024-08-27】
|
if (logMiddle.WorkingProcedure == "OP10" || logMiddle.WorkingProcedure == "OP40")
|
{
|
var curPross = db.WorkPieceProcess.Where(x => x.WorkPieceID == info.WorkPieceID).OrderByDescending(x => x.Id).FirstOrDefault();
|
if (curPross != null && curPross.OperationType == OperationType.SPC.ToString())
|
{
|
return false;
|
}
|
return true;
|
}
|
return true;
|
}
|
}
|
}
|