Make_SeqProgramTransform.cs 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9. using UAS_MES.DataOperate;
  10. using UAS_MES.Entity;
  11. using UAS_MES.PublicMethod;
  12. namespace UAS_MES.FunctionCode.Make
  13. {
  14. public partial class Make_SeqProgramTransform : Form
  15. {
  16. AutoSizeFormClass asc = new AutoSizeFormClass();
  17. DataHelper dh;
  18. //原序列号
  19. string TSN;
  20. //转换后序列号
  21. string SN;
  22. //错误信息
  23. string errorMessage;
  24. //存放productsnrelation表中的数据
  25. DataTable dt;
  26. public Make_SeqProgramTransform()
  27. {
  28. InitializeComponent();
  29. }
  30. private void Make_SeqProgramTransform_Load(object sender, EventArgs e)
  31. {
  32. asc.controllInitializeSize(this);
  33. dh = new DataHelper();
  34. code.Focus();
  35. //提示用户“>>请输入TSN号”
  36. OperateResult.AppendText(">>请输入TSN号\n", Color.Green);
  37. }
  38. private void 序列烧录转换_SizeChanged(object sender, EventArgs e)
  39. {
  40. asc.controlAutoSize(this);
  41. }
  42. private void code_KeyDown(object sender, KeyEventArgs e)
  43. {
  44. if (e.KeyCode==Keys.Enter)
  45. {
  46. if (code.Text != "")
  47. {
  48. OperateResult.AppendText(">>序列号:" + code.Text + " , 发送请求\n", Color.Green);
  49. //判断用户是否锁定输入TSN长度,
  50. if (!checkLengthOrPre(TSNLength_checkBox, TSNLength, "长度")) {
  51. return;
  52. }
  53. //判断用户是否锁定输入TSN前缀,
  54. if (!checkLengthOrPre(TSNPre_checkBox, TSNPre, "前缀")) {
  55. return;
  56. }
  57. string oMakecode="";
  58. string oMsid="";
  59. //核对工序
  60. if (LogicHandler.CheckStepSNAndMacode(ms_macode.Text, User.UserSourceCode, code.Text, User.UserCode, out oMakecode, out oMsid, out errorMessage))
  61. {
  62. //按照out出的工单号查出工单相关信息,并赋值到相关空间
  63. }
  64. else {
  65. OperateResult.AppendText(">>" + errorMessage + "\n", Color.Red);
  66. }
  67. }
  68. else {
  69. OperateResult.AppendText(">>输入不能为空\n", Color.Red);
  70. }
  71. }
  72. }
  73. /// <summary>
  74. /// 检验长度或者前缀是否合法
  75. /// </summary>
  76. /// <param name="checkbox"></param>
  77. /// <param name="c"></param>
  78. /// <param name="info"></param>
  79. private bool checkLengthOrPre(CheckBox checkbox, TextBox textbox, string type)
  80. {
  81. if (checkbox.Checked == true)
  82. {
  83. if (type == "长度")
  84. {
  85. //则判断输入转换前的序列号长度是否合法,不合法则提示
  86. if (code.Text.Trim().Length != int.Parse(textbox.Text))
  87. {
  88. //序列号校验错误,长度错误
  89. OperateResult.AppendText(">>TSN号" + code.Text + "校验错误,长度错误\n", Color.Red);
  90. code.Text = "";
  91. OperateResult.AppendText("<<请重新输入TSN\n", Color.Green);
  92. return false;
  93. }
  94. }
  95. else if (type == "前缀")
  96. {
  97. //则判断输入转换前的序列号前缀是否合法,不合法则提示
  98. if (!code.Text.StartsWith(textbox.Text.Trim()))
  99. {
  100. //序列号校验错误,前缀错误
  101. OperateResult.AppendText(">>TSN号" + code.Text + "校验错误,前缀错误\n", Color.Red);
  102. code.Text = "";
  103. OperateResult.AppendText("<<请重新输入TSN\n", Color.Green);
  104. return false;
  105. }
  106. }
  107. return true;
  108. }
  109. return true;
  110. }
  111. }
  112. }