using System;
using System.Data;
using UAS_LabelMachine.Entity;
namespace UAS_LabelMachine.PublicMethod
{
class LogicHandler
{
static AccessDBHelper adh = SystemInf.adh;
static DataHelper dh = SystemInf.dh;
///
/// 更新为已复核
///
///
public static void UpdateRowRechecked(object iPibID)
{
adh.UpdateByCondition("prodiobarcode", "pib_ifcheck=-1", "pib_id=" + iPibID);
}
///
/// 更新为已打印
///
///
public static void UpdateRowPrinted(object iPibID)
{
adh.UpdateByCondition("prodiobarcode", "pib_ifprint=-1", "pib_id=" + iPibID);
}
///
/// 更新为已采集
///
///
public static void UpdateRowPicked(object iPibID)
{
adh.UpdateByCondition("prodiobarcode", "pib_ifpick=-1,pib_modify=-1", "pib_id=" + iPibID);
}
///
/// 获取十六进制字节数组
///
///
///
public static byte[] SendPLCData(string Data)
{
byte[] arr = new byte[1];
arr[0] = (byte)Convert.ToInt32(Data, 16);
return arr;
}
///
/// 检测数据库未上传的数据,根据设置的上传条数上传数据
///
///
public static bool CheckUploadData(string iInoutno, int iUploadNum)
{
DataTable dt = (DataTable)adh.ExecuteSql("select pib_id,pib_lotno,pib_ifmodify,pib_datecode,pib_ifpick,-1 as pib_ifupload,pib_ifprint,pib_ifrecheck from prodiobarcode where pib_inoutno='" + iInoutno + "' and pib_ifupload=0 and pib_ifrecheck=-1", "select");
//如果本地需要上传的数据已经达到了需要上传的条数
if (iUploadNum <= dt.Rows.Count)
{
//上传数据
dh.SaveDataTable(dt, "prodiobarcode", "pib_id");
//更新本地数据为已上传
if (adh.UpdateByCondition("prodiobarcode", "pib_ifupload=-1", "pib_inoutno='" + iInoutno + "' and pib_ifrecheck=-1 and pib_ifupload<>-1") > 0)
{
return true;
}
}
return false;
}
}
}