LogicHandler.cs 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. using System;
  2. using System.Data;
  3. using UAS_LabelMachine.Entity;
  4. namespace UAS_LabelMachine.PublicMethod
  5. {
  6. class LogicHandler
  7. {
  8. static AccessDBHelper adh = SystemInf.adh;
  9. static DataHelper dh = SystemInf.dh;
  10. /// <summary>
  11. /// 更新为已复核
  12. /// </summary>
  13. /// <param name="iPibID"></param>
  14. public static void UpdateRowRechecked(object iPibID)
  15. {
  16. adh.UpdateByCondition("prodiobarcode", "pib_ifcheck=-1", "pib_id=" + iPibID);
  17. }
  18. /// <summary>
  19. /// 更新为已打印
  20. /// </summary>
  21. /// <param name="iPibID"></param>
  22. public static void UpdateRowPrinted(object iPibID)
  23. {
  24. adh.UpdateByCondition("prodiobarcode", "pib_ifprint=-1", "pib_id=" + iPibID);
  25. }
  26. /// <summary>
  27. /// 更新为已采集
  28. /// </summary>
  29. /// <param name="iPibID"></param>
  30. public static void UpdateRowPicked(object iPibID)
  31. {
  32. adh.UpdateByCondition("prodiobarcode", "pib_ifpick=-1,pib_modify=-1", "pib_id=" + iPibID);
  33. }
  34. /// <summary>
  35. /// 获取十六进制字节数组
  36. /// </summary>
  37. /// <param name="Data"></param>
  38. /// <returns></returns>
  39. public static byte[] SendPLCData(string Data)
  40. {
  41. byte[] arr = new byte[1];
  42. arr[0] = (byte)Convert.ToInt32(Data, 16);
  43. return arr;
  44. }
  45. /// <summary>
  46. /// 检测数据库未上传的数据,根据设置的上传条数上传数据
  47. /// </summary>
  48. /// <param name="iInoutno"></param>
  49. public static bool CheckUploadData(string iInoutno, int iUploadNum)
  50. {
  51. 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");
  52. //如果本地需要上传的数据已经达到了需要上传的条数
  53. if (iUploadNum <= dt.Rows.Count)
  54. {
  55. //上传数据
  56. dh.SaveDataTable(dt, "prodiobarcode", "pib_id");
  57. //更新本地数据为已上传
  58. if (adh.UpdateByCondition("prodiobarcode", "pib_ifupload=-1", "pib_inoutno='" + iInoutno + "' and pib_ifrecheck=-1 and pib_ifupload<>-1") > 0)
  59. {
  60. return true;
  61. }
  62. }
  63. return false;
  64. }
  65. }
  66. }