using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
//using System.Windows.Forms;
namespace bizFacade//MESPC
{
///
///
///
public class MaterialData
{
///
/// 验证物料全部信息(包括订单信息、验证物料信息)
/// 用来保存到数据库表[MES_装配数据_零部件追溯]
///
public static DataTable MaterialTableForSave=null;
///
/// [MES_计划BOM_发动机订单计划]
///
public static DataTable dt_OrderFormPlan=null;
///
/// [MES_计划BOM_发动机号]
///
public static DataTable dt_EngineNumber=null;
///
/// 原始物料表
///
public static DataTable dt_Material=null;
///
/// 需要验证的物料表
///
public static DataTable dt_Material_Verify=null;
///
/// 需要强制验证的物料表
///
public static DataTable dt_MaterialUnchecked=null;
///
/// ID
/// 物料号表索引号
///
public static string MaterialIndexField = "物料号表索引号";
///
/// 上线工位追溯代码
///
public static string FirstOpNameTraceCodeField = "上线工位追溯代码";
///
/// 上线工位追溯代码
///
public static int firstOpNameTraceCode;
///
/// 追溯代码
///
public static int traceID ;
///
/// 1:设备返修
/// 2:MES放行
///
public static string RepairReasonID = "1";
///
/// 1:设备返修
/// 2:MES放行
///
public static string RepairReasonText = "设备返修";
///
/// 订单号traceID
///
public static string OrderFormField = "订单号";
///
/// 订单号
///
public static string orderForm;
///
/// 主配厂家
///
public static string MainPruduceFatoryField = "主配厂家";
///
/// 主配厂家
///
public static string mainPruduceFatory ;
///
/// 订单计划发动机号
///
public static string EngineNumber_OrderPlanField = "订单计划发动机号";
///
/// 订单计划发动机号
///
public static string engineNumber_OrderPlan;
///
/// 发动机号
///
public static string EngineNumberField = "发动机号";
///
/// 发动机号
///
public static string engineNumber;
///
/// 追踪代码
///
public static string EngineTraceCodeField = "追踪代码";
///
/// 追踪代码
///
public static string engineTraceCode;
///
/// 工位号
///
public static string OpNameField = "工位号";
///
/// 工位号
///
public static string opName;
///
/// 到达时间
///
public static string CycleActualCycleTime = "实际循环时间";
///
/// 到达时间
///
public static int cycleActualCycleTime;
///
/// 到达时间
///
public static string ArrivedTimeField = "到达时间";
///
/// 到达时间
///
public static DateTime arrivedTime;
///
/// 离开时间
///
public static string LeavedTimeField = "离开时间";
///
/// 离开时间
///
public static DateTime leavedTime;
///
/// 操作者工号
///
public static string OperatorCodeField = "操作者工号";
///
/// 操作者工号
///
public static string operatorCode;
///
/// 操作者姓名
///
public static string OperatorNameField = "操作者姓名";
///
/// 操作者姓名
///
public static string operatorName;
///
/// 班次代码
///
public static string OperatorShiftField = "班次代码";
///
/// 班次代码
///
public static string operatorShift;
///
/// 班次名称
///
public static string OperatorShiftNameField = "班次名称";
///
/// 班次名称
///
public static string operatorShiftName;
///
/// 工位名称
///
public static string PositionIDNameField = "工位名称";
///
/// 工位名称
///
public static string positionIDName;
///
/// SAP物料号
///
public static string SAPMaterialNumberField = "SAP物料号";
///
/// SAP物料号
///
public static string sAPMaterialNumber;
///
/// 发动机型号
///
public static string EngineNumberTypeField = "发动机型号";
///
/// 发动机型号
///
public static string engineNumberType;
///
/// 发动机型号代码
///
public static string EngineNumberCodeField = "发动机型号代码";
/////
///// 发动机型号代码
/////
//public static string EngineNumberTypeCodeField = "发动机型号代码";
///
/// 发动机型号代码
///
public static int engineNumberCode;
/////
///// 发动机型号代码
/////
//public static int engineNumberTypeCode;
///
/// 发动机机型
///
public static string EngineNumberBasicTypeField = "发动机机型";
///
/// 发动机机型
///
public static string engineNumberBasicType;
///
/// 发动机数量
///
public static string EngineCountField = "发动机数量";
///
/// 发动机数量
///
public static string engineCount;
///
/// 厂牌编号起始号
///
public static string EngineNumberFirstIDField = "厂牌编号起始号";
///
/// 厂牌编号起始号
///
public static string engineNumberFirstID;
///
/// 客户名称
///
public static string CustomesNameField = "客户名称";
///
/// 客户名称
///
public static string customesName;
///
/// 投料日期
///
public static string PrepareMaterialDateTimeField = "投料日期";
///
/// 投料日期
///
public static DateTime prepareMaterialDateTime;
///
/// 文件编号
///
public static string FileCodeField = "文件编号";
///
/// 文件编号
///
public static string fileCode;
///
/// 集团名称
///
public static string GroupNameField = "集团名称";
///
/// 集团名称
///
public static string groupName;
///
/// 通知号
///
public static string NotifyCodeField = "通知号";
///
/// 通知号
///
public static string notifyCode;
///
/// 功率
///
public static string N_ForceField = "功率";
///
/// 功率
///
public static string n_Force;
///
/// 指南文件编号
///
public static string DirectFileCodeField = "指南文件编号";
///
/// 指南文件编号
///
public static string directFileCode;
///
/// 装机状态
///
public static string WorkEngineStatusField = "装机状态";
///
/// 装机状态
///
public static string workEngineStatus;
///
/// 适用状态
///
public static string AdaptDateTimeField = "适用状态";
///
/// 适用状态
///
public static DateTime adaptDateTime;
///
/// 订单装配指导
///
public static string OrderFormDirectField = "订单装配指导";
///
/// 物料描述
///
public static string MaterialDescriptField = "物料描述";
///
/// 物料描述
///
public static string materialDescript;
///
/// 计划下达日期
///
public static string PlanSendedDateTimeField = "计划下达日期";
///
/// 计划下达日期
///
public static DateTime planSendedDateTime;
///
/// 计划完工日期
///
public static string PlanFinishDateTimeField = "计划完工日期";
///
/// 计划完工日期
///
public static DateTime planFinishDateTime;
///
/// 生产厂家
///
public static string ProduceFatoryField = "生产厂家";
///
/// 生产厂家
///
public string produceFatory;
///
/// 零件类型
///
public static string PartTypeField = "零件类型";
///
/// 零件类型
///
public static int partType;
///
/// 是否合格
///
public static int isGoodQuality;
///
/// 物料号
///
public static string MaterialNumberField = "物料号";
///
/// 物料号
///
public string materialNumber;
///
/// 主物料号
///
public static string MainMaterialNumberField = "主物料号";
///
/// 主物料号
///
public static string mainMaterialNumber;
///
/// 零件图号
///
public static string PartDrawNumberField = "零件图号";
///
/// 零件图号
///
public string partDrawNumber;
///
/// 零件名称
///
public static string PartDrawNameField = "零件名称";
///
/// 零件名称
///
public string partDrawName;
///
/// 零件数量
///
public static string PartCountField = "零件数量";
///
/// 零件数量
///
public int partCount;
///
/// 零件数量验证
///
public static string PartCountVerifyField = "零件数量验证";
///
/// 零件数量验证
///
public int partCountVerify;
///
/// 是否扫描
/// =1需要扫描
/// =0不需要扫描
///
public static string MaterialTraceField = "是否扫描";
///
/// 是否扫描
/// =0需要扫描
/// =1不需要扫描
///
public int materialTrace;
///
/// 扫描方式
/// =0,多个零件只扫描一次
/// =1,几个零件只扫描几次,分别进行扫描。
///
public static string MaterialVerifyIDField = "扫描方式";
///
/// 扫描方式
///
public int materialVerifyID;
///
/// 是否主物料
/// =0,否主物料
/// =1,是主物料
///
public static string IsMainMaterialField = "是否主物料";
///
/// 是否主物料
///
public static int isMainMaterial;
///
/// 厂家代码
///
public static string ProduceFatoryCodeField = "厂家代码";
///
/// 厂家代码
///
public string produceFatoryCode;
///
/// 物料条码
///
public static string BarCodeField = "物料条码";
///
/// 物料条码
///
public string barCode;
///
/// 物料条码物料号
///
public static string BarCode_MaterialField = "物料条码物料号";
///
/// 物料条码物料号
///
public string barCode_Material;
///
/// 物料条码批次
///
public static string BarCode_SerailNumberField = "物料条码批次";
///
/// 物料条码批次
///
public string barCode_SerailNumber;
///
/// 验证结果
/// 验证结果
/// 验证结果 CheckState.Unchecked 0没有验证
/// 验证结果 CheckState.Checked 1 已经验证
/// 验证结果 CheckState.Indeterminate 2 已经强制验证
///
public static string MaterialVerifyResultField = "验证结果";
///
/// 强制验证原因
///
public static string MaterialVerifyReasonField = "强制验证原因";
///
/// 登录时间
///
public static string OperatorLoginTimeField = "登录时间";
///
/// 登录时间
///
public static DateTime operatorLoginTime;
///
/// 退出时间
///
public static string OperatorLogoutTimeField = "退出时间";
///
/// 退出时间
///
public static DateTime operatorLogoutTime;
///
/// 验证 选项
///
public static string MaterialVerifySelectField = "验证";
///
/// 日实际产量
///
public static string DayActualCountField = "日实际产量";
///
/// 日实际产量
///
public static int dayActualCount;
///
/// 日计划产量
///
public static string DayPlanCountField = "日计划产量";
///
/// 返修标志
/// 0 装配正常 ; 1 需要返修
///
public static int isRepairID;
///
/// 返修标志
///
public static string IsRepairIDField = "返修标志";
///
/// 日计划产量
///
public static int dayPlanCount;
///
/// ID
///
public static int ID;
/////
///// 发动机机型
/////
//public static string engineNumberBasicType;
///
/// 物料号表索引号确认
///
public static int materialIndexConfirm;
///
/// 物料号确认
///
public static string materialNumberConfirm;
///
/// 物料条码确认(待强制确认物料条码号)
///
public static string barCodeInputForConfirm;
///
/// 物料条码物料号(待强制确认物料条码号)
///
public static string barCode_MaterialInputForConfirm;
///
/// 物料条码批次(待强制确认物料条码号)
///
public static string barCode_SerailNumberInputForConfirm;
///
/// 物料条码确认
///
public static string barCodeConfirm;
///
/// 物料条码物料号确认
///
public static string barCode_MaterialConfirm;
///
/// 物料条码批次确认
///
public static string barCode_SerailNumberConfirm;
///
/// 物料号表索引号
///
public static int materialIndex;
///
/// 验证结果
/// 验证结果
/// 验证结果 CheckState.Unchecked 0没有验证
/// 验证结果 CheckState.Checked 1 已经验证
/// 验证结果 CheckState.Indeterminate 2 已经强制验证
///
public int materialVerifyResult;
///
/// 强制验证原因
///
public static string materialVerifyReason;
///
/// 创建需要验证的物料表
///
///
public static DataTable MaterialTable()
{
DataTable dt;
DataColumn dc;
dt = new DataTable();
//
// 物料号表索引号
//
dc = new DataColumn(MaterialIndexField, typeof(Int32));
dt.Columns.Add(dc);
//
// 订单号
//
dc = new DataColumn(OrderFormField, typeof(string));
dt.Columns.Add(dc);
//
// 主配厂家
//
dc = new DataColumn(MainPruduceFatoryField, typeof(string));
dt.Columns.Add(dc);
//
// 发动机号
//
dc = new DataColumn(EngineNumberField, typeof(string));
dt.Columns.Add(dc);
//
// 发动机型号代码
//
dc = new DataColumn(EngineNumberCodeField, typeof(Int32));
dt.Columns.Add(dc);
//
// 工位号
//
dc = new DataColumn(OpNameField, typeof(string));
dt.Columns.Add(dc);
//
// 工位名称
//
dc = new DataColumn(PositionIDNameField, typeof(string));
dt.Columns.Add(dc);
//
// SAP物料号
//
dc = new DataColumn(SAPMaterialNumberField, typeof(string));
dt.Columns.Add(dc);
//
// 发动机型号
//
dc = new DataColumn(EngineNumberTypeField, typeof(string));
dt.Columns.Add(dc);
//
// 发动机机型
//
dc = new DataColumn(EngineNumberBasicTypeField, typeof(string));
dt.Columns.Add(dc);
//
// 客户名称
//
dc = new DataColumn(CustomesNameField, typeof(string));
dt.Columns.Add(dc);
//
// 投料日期
//
dc = new DataColumn(PrepareMaterialDateTimeField, typeof(DateTime));
dt.Columns.Add(dc);
//
// 文件编号
//
dc = new DataColumn(FileCodeField, typeof(string));
dt.Columns.Add(dc);
//
// 集团名称
//
dc = new DataColumn(GroupNameField, typeof(string));
dt.Columns.Add(dc);
//
// 通知号
//
dc = new DataColumn(NotifyCodeField, typeof(string));
dt.Columns.Add(dc);
//
// 功率
//
dc = new DataColumn(N_ForceField, typeof(string));
dt.Columns.Add(dc);
//
// 指南文件编号
//
dc = new DataColumn(DirectFileCodeField, typeof(string));
dt.Columns.Add(dc);
//
// 装机状态
//
dc = new DataColumn(WorkEngineStatusField, typeof(DateTime));
dt.Columns.Add(dc);
//
// 适用状态
//
dc = new DataColumn(AdaptDateTimeField, typeof(string));
dt.Columns.Add(dc);
//
// 订单装配指导
//
dc = new DataColumn(OrderFormDirectField, typeof(string));
dt.Columns.Add(dc);
//
// 物料描述
//
dc = new DataColumn(MaterialDescriptField, typeof(string));
dt.Columns.Add(dc);
//
// 计划下达日期
//
dc = new DataColumn(PlanSendedDateTimeField, typeof(DateTime));
dt.Columns.Add(dc);
//
// 物料号
//
dc = new DataColumn(MaterialNumberField, typeof(string));
dt.Columns.Add(dc);
//
// 零件图号
//
dc = new DataColumn(PartDrawNumberField, typeof(string));
dt.Columns.Add(dc);
//
// 零件名称
//
dc = new DataColumn(PartDrawNameField, typeof(string));
dt.Columns.Add(dc);
//
// 零件数量
//
dc = new DataColumn(PartCountField, typeof(Int32));
dt.Columns.Add(dc);
//
// 零件数量验证
//
dc = new DataColumn(PartCountVerifyField, typeof(Int32));
dt.Columns.Add(dc);
//
// 是否扫描
//
dc = new DataColumn(MaterialTraceField, typeof(Int32));
dt.Columns.Add(dc);
//
// 扫描方式
//
dc = new DataColumn(MaterialVerifyIDField, typeof(Int32));
dt.Columns.Add(dc);
//
// 厂家代码
//
dc = new DataColumn(ProduceFatoryCodeField, typeof(string));
dt.Columns.Add(dc);
//
// 生产厂家
//
dc = new DataColumn(ProduceFatoryField, typeof(string));
dt.Columns.Add(dc);
//
// 物料条码
//
dc = new DataColumn(BarCodeField, typeof(string));
dt.Columns.Add(dc);
//
// 物料条码物料号
//
dc = new DataColumn(BarCode_MaterialField, typeof(string));
dt.Columns.Add(dc);
//
// 物料条码批次
//
dc = new DataColumn(BarCode_SerailNumberField, typeof(string));
dt.Columns.Add(dc);
//
// 验证结果
// 验证结果
// 验证结果 CheckState.Unchecked 0没有验证
// 验证结果 CheckState.Checked 1 已经验证
// 验证结果 CheckState.Indeterminate 2 已经强制验证
//
dc = new DataColumn(MaterialVerifyResultField, typeof(Int32));
dt.Columns.Add(dc);
//
// 强制验证原因
//
dc = new DataColumn(MaterialVerifyReasonField, typeof(string));
dt.Columns.Add(dc);
//
// 操作者工号
//
dc = new DataColumn(OperatorCodeField, typeof(string));
dt.Columns.Add(dc);
//
// 操作者姓名
//
dc = new DataColumn(OperatorNameField, typeof(string));
dt.Columns.Add(dc);
//
// 班次代码
//
dc = new DataColumn(OperatorShiftField, typeof(string));
dt.Columns.Add(dc);
//
// 验证
//
dc = new DataColumn(MaterialVerifySelectField, typeof(string));
dt.Columns.Add(dc);
//
// 返修标志
//
dc = new DataColumn(IsRepairIDField, typeof(int));
dt.Columns.Add(dc);
//DataTable dt;
//DataColumn dc;
//dt = new DataTable();
return dt;
}
///
/// 获得需要强制验证的物料表,条件:"验证结果 = 0"
/// 验证结果 CheckState.Unchecked 0没有验证
/// 验证结果 CheckState.Checked 1 已经验证
/// 验证结果 CheckState.Indeterminate 2 已经强制验证
///
///
///
public static DataTable GetVerifyBarCodeTableUnchecked(DataTable dt)
{
DataTable dt_MaterialUnchecked;
DataRow dr;
DataRow[] drs;
dt_MaterialUnchecked = MaterialData.MaterialTable();
drs = dt.Select("验证结果 = 0");
for (int i = 0; i < drs.Length; i++)
{
dr = dt_MaterialUnchecked.NewRow();
MaterialTableSetDataRowValue(drs[i], dr);
dt_MaterialUnchecked.Rows.Add(dr);
}
return dt_MaterialUnchecked;
}
///
/// 初始化物料表行赋值
///
///
///
///
public static void MaterialTableSetDataRowValue(int index, DataRow dr, DataRow drOut)
{
if (dr == null) return;
try
{
//
// 物料号表索引号
//
drOut[MaterialIndexField] = index;
//
// 订单号
//
drOut[OrderFormField] = orderForm;
//
// 发动机号
//
drOut[EngineNumberField] = engineNumber;
//
// 发动机型号代码
//
drOut[EngineNumberCodeField] = engineNumberCode;
//
// 工位号
//
drOut[OpNameField] = opName;
//
// 工位名称
//
drOut[PositionIDNameField] = positionIDName;
//
// 物料号
//
drOut[MaterialNumberField] = dr[MaterialNumberField];
//
// 零件图号
//
drOut[PartDrawNumberField] = dr[PartDrawNumberField];
//
// 零件名称
//
drOut[PartDrawNameField] = dr[PartDrawNameField];
//
// 零件数量
//
drOut[PartCountField] = dr[PartCountField];
//
// 生产厂家
//
drOut[ProduceFatoryField] = dr[ProduceFatoryField];
//
// 厂家代码
//
drOut[ProduceFatoryCodeField] = dr[ProduceFatoryCodeField];
//
// 是否扫描
//
drOut[MaterialTraceField] = dr[MaterialTraceField];
//
// 扫描方式
//
drOut[MaterialVerifyIDField] = dr[MaterialVerifyIDField];
//
// 操作者工号
//
drOut[OperatorCodeField] = operatorCode;
//
// 操作者姓名
//
drOut[OperatorNameField] = operatorName;
//
// 班次代码
//
drOut[OperatorShiftField] = operatorShift;
//
// 验证结果
// 验证结果
// 验证结果 CheckState.Unchecked 0没有验证
// 验证结果 CheckState.Checked 1 已经验证
// 验证结果 CheckState.Indeterminate 2 已经强制验证
drOut[MaterialVerifyResultField] = 0;
drOut[MaterialVerifyIDField] = dr[MaterialVerifyIDField];
//
// 强制验证原因
//
drOut[MaterialVerifyReasonField] = "";
//
drOut[MaterialVerifySelectField] = "选择";
}
catch
{
//MessageBox.Show(err.Message);
}
}
///
/// 物料表行赋值
///
///
///
public static void MaterialTableSetDataRowValue(DataRow dr, DataRow drOut)
{
if (dr == null) return;
try
{
//
// 物料号表索引号
//
drOut[MaterialIndexField] = dr[MaterialIndexField];
//
// 订单号
//
drOut[OrderFormField] = dr[OrderFormField];
//
// 发动机型号
//
drOut[EngineNumberField] = dr[EngineNumberField];
//
// 发动机型号代码
//
drOut[EngineNumberCodeField] = dr[EngineNumberCodeField];
//
// 工位号
//
drOut[OpNameField] = dr[OpNameField];
//
// 工位名称
//
drOut[PositionIDNameField] = dr[PositionIDNameField];
//
// 物料号
//
drOut[MaterialNumberField] = dr[MaterialNumberField];
//
// 零件图号
//
drOut[PartDrawNumberField] = dr[PartDrawNumberField];
//
// 零件名称
//
drOut[PartDrawNameField] = dr[PartDrawNameField];
//
// 零件数量
//
drOut[PartCountField] = dr[PartCountField];
//
// 零件数量验证
//
drOut[PartCountVerifyField] = dr[PartCountVerifyField];
//
// 生产厂家
//
drOut[ProduceFatoryField] = dr[ProduceFatoryField];
//
// 厂家代码
//
drOut[ProduceFatoryCodeField] = dr[ProduceFatoryCodeField];
//
// 物料条码
//
drOut[BarCodeField] = dr[BarCodeField];
//
// 物料条码物料号
//
drOut[BarCode_MaterialField] = dr[BarCode_MaterialField];
//
// 物料条码批次
//
drOut[BarCode_SerailNumberField] = dr[BarCode_SerailNumberField];
//
// 是否扫描
//
drOut[MaterialTraceField] = dr[MaterialTraceField];
//
// 扫描方式
//
drOut[MaterialVerifyIDField] = dr[MaterialVerifyIDField];
//
// 操作者工号
//
drOut[OperatorCodeField] = dr[OperatorCodeField];
//
// 操作者姓名
//
drOut[OperatorNameField] = dr[OperatorNameField];
//
// 班次代码
//
drOut[OperatorShiftField] = dr[OperatorShiftField];
//
// 验证结果
// 验证结果
// 验证结果 CheckState.Unchecked 0没有验证
// 验证结果 CheckState.Checked 1 已经验证
// 验证结果 CheckState.Indeterminate 2 已经强制验证
drOut[MaterialVerifyResultField] = dr[MaterialVerifyResultField];
//
// 强制验证原因
//
drOut[MaterialVerifyReasonField] = dr[MaterialVerifyReasonField];
//验证
//drOut[MaterialVerifySelectField] = dr[MaterialVerifySelectField];
}
catch
{
//MessageBox.Show(err.Message);
}
}
///
/// 获得index行对应的数据
///
///
public void MaterialTable(int index)
{
DataTable dt = dt_Material_Verify;
DataRow[] dr;
dr = dt.Select(MaterialIndexField + "= " + index.ToString());
if (dr == null) return;
//
// 物料号表索引号
//
materialIndex = (int)dr[0][MaterialIndexField];
//
// 订单号
//
orderForm = dr[0][OrderFormField].ToString();
//
// 发动机型号
//
engineNumber = dr[0][EngineNumberField].ToString();
//
// 发动机型号代码
//
engineNumberCode = (int)dr[0][EngineNumberCodeField];
//
// 工位号
//
opName = dr[0][OpNameField].ToString();
//
// 工位名称
//
positionIDName = dr[0][PositionIDNameField].ToString();
//
// 物料号
//
materialNumber = dr[0][MaterialNumberField].ToString();
//
// 零件图号
//
partDrawNumber = dr[0][PartDrawNumberField].ToString();
//
// 零件名称
//
partDrawName = dr[0][PartDrawNameField].ToString();
//
// 零件数量
//
partCount = (int)dr[0][PartCountField];
//
// 零件数量验证
//
partCountVerify = (int)dr[0][PartCountVerifyField];
//
// 生产厂家
//
produceFatory = dr[0][ProduceFatoryField].ToString();
//
// 厂家代码
//
produceFatoryCode = dr[0][ProduceFatoryCodeField].ToString();
//
// 物料条码
//
barCode = dr[0][BarCodeField].ToString();
//
// 物料条码物料号
//
barCode_Material = dr[0][BarCode_MaterialField].ToString();
//
// 物料条码批次
//
barCode_SerailNumber = dr[0][BarCode_SerailNumberField].ToString();
//
// 是否扫描
//
materialTrace = (int)dr[0][MaterialTraceField];
//
// 扫描方式
//
materialVerifyID = (int)dr[0][MaterialVerifyIDField];
//
// 操作者工号
//
operatorCode = dr[0][OperatorCodeField].ToString();
//
// 操作者姓名
//
operatorName = dr[0][OperatorNameField].ToString();
//
// 班次代码
//
operatorShift = dr[0][OperatorShiftField].ToString();
//
// 验证结果
// 验证结果
// 验证结果 CheckState.Unchecked 0没有验证
// 验证结果 CheckState.Checked 1 已经验证
// 验证结果 CheckState.Indeterminate 2 已经强制验证
materialVerifyResult = (int)dr[0][MaterialVerifyResultField];
//
// 强制验证原因
//
materialVerifyReason = dr[0][MaterialVerifyReasonField].ToString();
}
///
/// 分解条码,获得物料号和批次
/// M/13009130/6800811001
///
/// 物料条码
/// 物料条码_物料号
/// 物料条码_批次
public static void SplitBarCode(string barCode, out string barCode_Material, out string barCode_SerailNumber)
{
barCode_Material = null;
barCode_SerailNumber = null;
try
{
string[] str = barCode.Split('/');
if (str != null)
{
if (str.Length >= 2)
{
try
{
barCode_Material = str[1];
}
catch { barCode_Material = ""; }
try
{
barCode_SerailNumber = str[2];
}
catch { barCode_SerailNumber = ""; }
}
}
}
catch
{
//MessageBox.Show(err.Message);
}
}
/////
/////
/////
//public static void CreateMaterialTableForSave()
//{
// DataTable dt;
// DataColumn dc;
// dt = new DataTable();
// ///
// /// 订单号
// ///
// dc = new DataColumn(OrderFormField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 主配厂家
// ///
// dc = new DataColumn(MainPruduceFatoryField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 发动机号
// ///
// dc = new DataColumn(EngineNumberField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 发动机型号代码
// ///
// dc = new DataColumn(EngineNumberCodeField, typeof(Int32));
// dt.Columns.Add(dc);
// ///
// /// 工位号
// ///
// dc = new DataColumn(OpNameField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 工位名称
// ///
// dc = new DataColumn(PositionIDNameField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// SAP物料号
// ///
// dc = new DataColumn(SAPMaterialNumberField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 发动机型号
// ///
// dc = new DataColumn(EngineNumberTypeField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 发动机机型
// ///
// dc = new DataColumn(EngineNumberBasicTypeField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 客户名称
// ///
// dc = new DataColumn(CustomesNameField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 投料日期
// ///
// dc = new DataColumn(PrepareMaterialDateTimeField, typeof(DateTime));
// dt.Columns.Add(dc);
// ///
// /// 文件编号
// ///
// dc = new DataColumn(FileCodeField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 集团名称
// ///
// dc = new DataColumn(GroupNameField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 通知号
// ///
// dc = new DataColumn(NotifyCodeField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 功率
// ///
// dc = new DataColumn(N_ForceField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 指南文件编号
// ///
// dc = new DataColumn(DirectFileCodeField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 装机状态
// ///
// dc = new DataColumn(WorkEngineStatusField, typeof(DateTime));
// dt.Columns.Add(dc);
// ///
// /// 适用状态
// ///
// dc = new DataColumn(AdaptDateTimeField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 订单装配指导
// ///
// dc = new DataColumn(OrderFormDirectField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 物料描述
// ///
// dc = new DataColumn(MaterialDescriptField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 计划下达日期
// ///
// dc = new DataColumn(PlanSendedDateTimeField, typeof(DateTime));
// dt.Columns.Add(dc);
// ///
// /// 物料号
// ///
// dc = new DataColumn(MaterialNumberField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 零件图号
// ///
// dc = new DataColumn(PartDrawNumberField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 零件名称
// ///
// dc = new DataColumn(PartDrawNameField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 零件数量
// ///
// dc = new DataColumn(PartCountField, typeof(Int32));
// dt.Columns.Add(dc);
// ///
// /// 零件数量验证
// ///
// dc = new DataColumn(PartCountVerifyField, typeof(Int32));
// dt.Columns.Add(dc);
// dt.Columns.Add(dc);
// ///
// /// 是否扫描
// ///
// dc = new DataColumn(MaterialTraceField, typeof(Int32));
// dt.Columns.Add(dc);
// ///
// /// 扫描方式
// ///
// dc = new DataColumn(MaterialVerifyIDField, typeof(Int32));
// dt.Columns.Add(dc);
// ///
// /// 厂家代码
// ///
// dc = new DataColumn(ProduceFatoryCodeField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 生产厂家
// ///
// dc = new DataColumn(ProduceFatoryField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 物料条码
// ///
// dc = new DataColumn(BarCodeField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 物料条码物料号
// ///
// dc = new DataColumn(BarCode_MaterialField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 物料条码批次
// ///
// dc = new DataColumn(BarCode_SerailNumberField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 验证结果
// /// 验证结果
// /// 验证结果 CheckState.Unchecked 0没有验证
// /// 验证结果 CheckState.Checked 1 已经验证
// /// 验证结果 CheckState.Indeterminate 2 已经强制验证
// ///
// dc = new DataColumn(MaterialVerifyResultField, typeof(Int32));
// dt.Columns.Add(dc);
// ///
// /// 强制验证原因
// ///
// dc = new DataColumn(MaterialVerifyReasonField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 操作者工号
// ///
// dc = new DataColumn(OperatorCodeField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 操作者姓名
// ///
// dc = new DataColumn(OperatorNameField, typeof(string));
// dt.Columns.Add(dc);
// ///
// /// 班次代码
// ///
// dc = new DataColumn(OperatorShiftField, typeof(string));
// dt.Columns.Add(dc);
// MaterialTableForSave = dt;
//}
///
/// 测试是否需要验证。
/// 返回值 false ,没有全部验证完成,需要验证。
/// 返回值 true ,全部验证完成,不需要验证。
/// 验证结果 CheckState.Unchecked 0没有验证
/// 验证结果 CheckState.Checked 1 已经验证
/// 验证结果 CheckState.Indeterminate 2 已经强制验证
///
///
public static bool CheckVeriftBarCode()
{
DataTable dt;
bool check = true;
//dt = dt_Material_Verify;
dt = MaterialData.dt_Material_Verify;//.dt_Material_Verify;
if (dt == null) return check;
for (int i = 0; i < dt.Rows.Count; i++)
{
if ((int)dt.Rows[i]["验证结果"] == 0)
{
check = false;
break;
}
}
return check;
}
///
/// 创建数据表
/// TagID,测量位置,测量项目,测量值,合格标志
///
public static DataTable QualityTable()
{
DataTable dt;
DataColumn dc;
dt = new DataTable();
// 物料号表索引号
dc = new DataColumn("TagID", typeof(string));
dt.Columns.Add(dc);
dc = new DataColumn("工位号", typeof(string));
dt.Columns.Add(dc);
dc = new DataColumn("测量位置", typeof(string));
dt.Columns.Add(dc);
dc = new DataColumn("测量项目", typeof(string));
dt.Columns.Add(dc);
dc = new DataColumn("测量值", typeof(double));
dt.Columns.Add(dc);
dc = new DataColumn("合格标志", typeof(Int32));
dt.Columns.Add(dc);
return dt;
}
}
}