天津投入产出系统后端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

54 lines
2.2 KiB

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace QMAPP.FJC.TRACING.DataAnalyzers
{
/// <summary>
/// 线束号解析
/// </summary>
public class DPWHCodeAnalyzer : DAInterface.IDataAnalyzer
{
public void Analyze(DAInterface.DAObject data)
{
if (data.DAValue.ToString().Equals("NOWIRING")) //无线束
{
DAL.QT.WorkCellRunStateDAL statedal = new DAL.QT.WorkCellRunStateDAL();
var state = statedal.GetCurrentState(data.DAI.WORKCELL_CODE, data.DAI.WORKLOC_CODE, data.MouldCode);
if (state == null || string.IsNullOrWhiteSpace(state.BOM_CODE))
{
return;
}
MD.DAL.PbomDAL bomdal = new MD.DAL.PbomDAL();
var item = bomdal.GetBomItemByMaterilType(state.BOM_CODE, data.DAI.MATERIAL_TYPE,true);
if (item.UNIT_SUM > 0 && item.PBOM_CODE.Contains("F_"))
{
throw new Exception("当前产品为有线束件!");
}
data.ObjectPID = "";//mould.PID;
data.AnalyzedValue = data.DAValue.ToString();
data.MaterialCode = item.MATERIAL_CODE;
DAL.MD.MaterialDAL mdal = new DAL.MD.MaterialDAL();
var material = mdal.Get(data.MaterialCode);
data.MaterialName = material == null ? "" : material.MATERIAL_SHORT;
}
else
{
DAL.MD.MaterialDAL dal = new DAL.MD.MaterialDAL();
var material = dal.Get(data.MaterialCode);
if (material == null)
{
throw new Exception("无法查到与此条码相关的物料信息!");
}
data.ObjectPID = "";//mould.PID;
data.AnalyzedValue = data.DAValue.ToString();
data.MaterialCode = material.MATERIAL_CODE;
//DAL.MD.MaterialDAL mdal = new DAL.MD.MaterialDAL();
//var material = mdal.Get(data.MaterialCode);
data.MaterialName = material == null ? "" : material.MATERIAL_SHORT;
}
}
}
}