Special_ReSNBD.cs 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184
  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_NEW.DataOperate;
  10. using UAS_MES_NEW.Entity;
  11. using UAS_MES_NEW.PublicMethod;
  12. namespace UAS_MES_NEW.Special
  13. {
  14. public partial class Special_ReSNBD : Form
  15. {
  16. AutoSizeFormClass asc = new AutoSizeFormClass();
  17. DataHelper dh;
  18. string bsncode = "";//序列号录入框值
  19. LogStringBuilder sql = new LogStringBuilder();
  20. public Special_ReSNBD()
  21. {
  22. InitializeComponent();
  23. }
  24. private void Special_BoxSplit_Load(object sender, EventArgs e)
  25. {
  26. asc.controllInitializeSize(this);
  27. dh = SystemInf.dh;
  28. sncode.Focus();
  29. OperateResult.AppendText(">>请输入返修SN号\n", Color.Black);
  30. }
  31. private void ClearSn_code_Click(object sender, EventArgs e)
  32. {
  33. bsncode = "";
  34. if (ChangeResult.Checked)
  35. {
  36. //勾选的时候提示输入TSN
  37. OperateResult.AppendText(">>请输入待转换新SN号\n", Color.Black,show_sncode);
  38. }
  39. else
  40. {
  41. OperateResult.AppendText(">>请输入返修SN号\n", Color.Black, show_sncode);
  42. }
  43. ChangeResult.Enabled = true;
  44. }
  45. string makecode;
  46. string prodcode;
  47. string orispeccode;
  48. string othcode1;
  49. private void sncode_KeyDown(object sender, KeyEventArgs e)
  50. {
  51. if (e.KeyCode == Keys.Enter)
  52. {
  53. if (sncode.Text != "")
  54. {
  55. if (bsncode == "")
  56. {
  57. if (!ChangeResult.Checked)
  58. {
  59. if (!dh.CheckExist("makeserial", "ms_sncode = '" + sncode.Text + "'"))
  60. {
  61. if (!dh.CheckExist("AFSALES", "as_sn = '" + sncode.Text + "'"))
  62. {
  63. OperateResult.AppendText(">>SN" + sncode.Text + "未查询到生产记录以及售后判定记录,无法采集\n", Color.Red, sncode);
  64. return;
  65. }
  66. else
  67. {
  68. makecode = "";
  69. prodcode = "";
  70. orispeccode = "";
  71. }
  72. }
  73. else
  74. {
  75. DataTable dt = (DataTable)dh.ExecuteSql("select * from makeserial left join product on ms_prodcode = pr_code where ms_sncode = '"+sncode.Text+"' order by ms_id desc", "select");
  76. makecode = dt.Rows[0]["ms_makecode"].ToString();
  77. prodcode = dt.Rows[0]["ms_prodcode"].ToString();
  78. orispeccode = dt.Rows[0]["pr_orispeccode"].ToString();
  79. othcode1 = dt.Rows[0]["ms_othcode1"].ToString();
  80. }
  81. if (dh.CheckExist("returnsnbd", "rsb_oldsn = '" + sncode.Text + "'"))
  82. {
  83. string newsn = dh.getFieldDataByCondition("returnsnbd", "rsb_newsn", "rsb_oldsn = '" + sncode.Text + "'").ToString();
  84. OperateResult.AppendText(">>返修SN" + sncode.Text + "已关联SN"+newsn+",无法直接采集,需转换\n", Color.Red, sncode);
  85. return;
  86. }
  87. bsncode = sncode.Text;
  88. show_sncode.Text = bsncode;
  89. sncode.Text = "";
  90. ChangeResult.Enabled = false;
  91. OperateResult.AppendText(">>返修SN" + bsncode + "采集\n", Color.Green, sncode);
  92. return;
  93. }
  94. else
  95. {
  96. if (!dh.CheckExist("returnsnbd", "rsb_newsn = '" + sncode.Text + "'"))
  97. {
  98. OperateResult.AppendText(">>待转换新SN" + sncode.Text + "无采集记录,不可转换\n", Color.Red, sncode);
  99. return;
  100. }
  101. bsncode = sncode.Text;
  102. show_sncode.Text = bsncode;
  103. sncode.Text = "";
  104. ChangeResult.Enabled = false;
  105. OperateResult.AppendText(">>待转换新SN" + bsncode + "采集\n", Color.Green, sncode);
  106. return;
  107. }
  108. }
  109. else
  110. {
  111. if (sncode.Text == bsncode)
  112. {
  113. OperateResult.AppendText(">>不允许自己转自己\n", Color.Red, sncode);
  114. return;
  115. }
  116. if (!ChangeResult.Checked)
  117. {
  118. if (dh.CheckExist("returnsnbd", "rsb_newsn = '" + sncode.Text + "'"))
  119. {
  120. string oldsn = dh.getFieldDataByCondition("returnsnbd", "rsb_oldsn", "rsb_newsn = '" + sncode.Text + "'").ToString();
  121. OperateResult.AppendText(">>采集新SN:" + sncode.Text + "已关联返修SN:" + oldsn + ",无法采集\n", Color.Red, sncode);
  122. return;
  123. }
  124. dh.ExecuteSql("insert into returnsnbd (rsb_id,rsb_newsn,rsb_oldsn,RSB_MAKECODE,RSB_PRODCODE,RSB_ORISPECCODE) values (returnsnbd_seq.nextval,'" + sncode.Text + "','"+ show_sncode.Text + "','"+makecode+"','"+prodcode+"','"+orispeccode+"') ", "insert");
  125. dh.ExecuteSql("update makeserial set ms_othcode1='" + othcode1 + "' where ms_sncode='" + sncode.Text + "'","update");
  126. bsncode = "";
  127. ChangeResult.Enabled = true;
  128. OperateResult.AppendText(">>返修SN:" + show_sncode.Text + "与新SN:"+ sncode.Text + "关联成功\n", Color.LawnGreen, sncode, show_sncode);
  129. return;
  130. }
  131. else
  132. {
  133. if (dh.CheckExist("returnsnbd", "rsb_newsn = '" + sncode.Text + "'"))
  134. {
  135. string oldsn = dh.getFieldDataByCondition("returnsnbd", "rsb_oldsn", "rsb_newsn = '" + sncode.Text + "'").ToString();
  136. OperateResult.AppendText(">>采集新SN:" + sncode.Text + "已关联返修SN:" + oldsn + ",无法采集\n", Color.Red, sncode);
  137. return;
  138. }
  139. dh.ExecuteSql(" update returnsnbd set rsb_newsn = '"+ sncode.Text + "' where rsb_newsn = '"+show_sncode.Text+"' ", "update");
  140. bsncode = "";
  141. ChangeResult.Enabled = true;
  142. OperateResult.AppendText(">>待转换新SN:" + show_sncode.Text + "更换至新SN:" + sncode.Text + "成功\n", Color.LawnGreen, sncode, show_sncode);
  143. return;
  144. }
  145. }
  146. }
  147. else
  148. {
  149. OperateResult.AppendText("<<序列号不能为空\n", Color.Red);
  150. }
  151. }
  152. }
  153. private void ChangeResult_CheckedChanged(object sender, EventArgs e)
  154. {
  155. if (ChangeResult.Checked)
  156. {
  157. //勾选的时候提示输入TSN
  158. OperateResult.AppendText(">>请输入待转换新SN号\n", Color.Black);
  159. }
  160. else {
  161. OperateResult.AppendText(">>请输入返修SN号\n", Color.Black);
  162. }
  163. }
  164. private void Special_ReSNBD_SizeChanged(object sender, EventArgs e)
  165. {
  166. asc.controlAutoSize(this);
  167. }
  168. }
  169. }