Make_CancleSndown.cs 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233
  1. using System;
  2. using System.Data;
  3. using System.Threading;
  4. using System.Windows.Forms;
  5. using UAS_MES_NEW.DataOperate;
  6. using UAS_MES_NEW.Entity;
  7. using UAS_MES_NEW.PublicForm;
  8. using UAS_MES_NEW.PublicMethod;
  9. namespace UAS_MES_NEW.Make
  10. {
  11. public partial class Make_CancleSndown : Form
  12. {
  13. DataHelper dh;
  14. LogStringBuilder sql = new LogStringBuilder();
  15. AutoSizeFormClass asc = new AutoSizeFormClass();
  16. DataTable ComBoxData = new DataTable();
  17. DataTable Dbfind;
  18. public Make_CancleSndown()
  19. {
  20. InitializeComponent();
  21. }
  22. private void Query_OnlineTraceBack_Load(object sender, EventArgs e)
  23. {
  24. asc.controllInitializeSize(this);
  25. dh = SystemInf.dh;
  26. //工单号放大镜配置
  27. ma_code.TableName = "make left join product on ma_prodcode=pr_code";
  28. ma_code.SelectField = "ma_code # 工单号,ma_prodcode # 产品编号,ma_qty # 工单数量,pr_detail # 产品名称,ma_softversion # 软件版本";
  29. ma_code.FormName = Name;
  30. ma_code.SetValueField = new string[] { "ma_code" };
  31. ma_code.Condition = "ma_statuscode='STARTED'";
  32. ma_code.DbChange += Ma_code_DbChange;
  33. DataTable dt = (DataTable)dh.ExecuteSql(" select li_code,li_name from line ", "select");
  34. linecode.DisplayMember = "li_name";
  35. linecode.ValueMember = "li_name";
  36. linecode.DataSource = dt;
  37. linecode.Text = "";
  38. }
  39. private void Ma_code_DbChange(object sender, EventArgs e)
  40. {
  41. Dbfind = ma_code.ReturnData;
  42. // BaseUtil.SetFormValue(this.Controls, Dbfind);
  43. // Query.PerformClick();
  44. }
  45. private void Query_OnlineTraceBack_SizeChanged(object sender, EventArgs e)
  46. {
  47. asc.controlAutoSize(this);
  48. }
  49. private void Query_Click(object sender, EventArgs e)
  50. {
  51. //if (dh.CheckExist("make", "ma_code='" + ma_code.Text + "'"))
  52. //{
  53. string condition = BaseUtil.GetScreenSqlCondition(ma_code, linecode, ms_stepcode);
  54. sql.Clear();
  55. sql.Append("select md_id,md_sncode,md_macode,md_prodcode,md_linecode,md_stepcode,md_downdate,st_name,ms_outboxcode,v_outboxcode from makedown left join makeserial on md_msid = ms_id left join step on ms_nextstepcode = st_code left join mes_package_view on ms_makecode = v_makecode and ms_sncode = v_barcode and v_type = 3 ");
  56. sql.Append(condition);
  57. sql.Append("and md_downdate between to_date('" + BeginDate.Value.ToString("yyyy-MM-dd HH:mm:ss") + "', 'yyyy-mm-dd hh24:mi:ss') and to_date('" + EndDate.Value.ToString("yyyy-MM-dd HH:mm:ss") + "', 'yyyy-mm-dd hh24:mi:ss') and md_status = 0");
  58. sql.Append(" order by md_id asc ");
  59. DataTable dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
  60. BaseUtil.FillDgvWithDataTable(SnInf, dt);
  61. checkBox1.Checked = false;
  62. Count.Text = "";
  63. //}
  64. //else
  65. //{
  66. // MessageBox.Show("工单号" + ma_code.Text + "不存在");
  67. // //BaseUtil.CleanDataGridView(SnInf);
  68. // //ma_code.Text = "";
  69. //}
  70. }
  71. private void normalButton1_Click(object sender, EventArgs e)
  72. {
  73. Thread InitPrint;
  74. InitPrint = new Thread(InPrint);
  75. SetLoadingWindow stw = new SetLoadingWindow(InitPrint, "SN解锁中");
  76. BaseUtil.SetFormCenter(stw);
  77. stw.ShowDialog();
  78. }
  79. private void InPrint()
  80. {
  81. try
  82. {
  83. int count = SnInf.Rows.Count;
  84. int check = 0;
  85. for (int i = 0; i < count; i++)
  86. {
  87. DataGridViewCheckBoxCell checkCell = (DataGridViewCheckBoxCell)SnInf.Rows[i].Cells["choose1"];
  88. Boolean flag = Convert.ToBoolean(checkCell.Value);
  89. if (flag == true)
  90. {
  91. sql.Clear();
  92. sql.Append("update makedown set md_status = -1,md_update = sysdate,md_upman = '" + User.UserCode + "' where md_id = " + SnInf.Rows[i].Cells["md_id"].Value.ToString() + " ");
  93. //执行
  94. dh.ExecuteSql(sql.GetString(), "insert");
  95. check++;
  96. }
  97. }
  98. MessageBox.Show(check + "条数据解除锁定成功");
  99. Thread.Sleep(500);
  100. Query_Click(null, null);
  101. }
  102. catch (Exception EX)
  103. {
  104. MessageBox.Show(EX.Message);
  105. }
  106. }
  107. private void Query_OnlineTraceBack_FormClosing(object sender, FormClosingEventArgs e)
  108. {
  109. dh.Dispose();
  110. }
  111. private void checkBox1_CheckedChanged(object sender, EventArgs e)
  112. {
  113. int count = SnInf.Rows.Count;
  114. for (int i = 0; i < count; i++)
  115. {
  116. DataGridViewCheckBoxCell checkCell = (DataGridViewCheckBoxCell)SnInf.Rows[i].Cells["choose1"];
  117. Boolean flag = Convert.ToBoolean(checkCell.Value);
  118. if (flag != checkBox1.Checked)
  119. {
  120. checkCell.Value = checkBox1.Checked;
  121. }
  122. else
  123. {
  124. continue;
  125. }
  126. }
  127. countcheck();
  128. }
  129. private void normalButton2_Click(object sender, EventArgs e)
  130. {
  131. }
  132. private void countcheck()
  133. {
  134. int checkedRowCount = 0;
  135. foreach (DataGridViewRow row in SnInf.Rows)
  136. {
  137. DataGridViewCheckBoxCell checkBoxCell = row.Cells["choose1"] as DataGridViewCheckBoxCell;
  138. if (checkBoxCell != null && Convert.ToBoolean(checkBoxCell.Value) == true)
  139. {
  140. checkedRowCount++;
  141. }
  142. }
  143. Count.Text = checkedRowCount.ToString();
  144. }
  145. private void ma_code_UserControlTextChanged(object sender, EventArgs e)
  146. {
  147. DataTable dt = (DataTable)dh.ExecuteSql(" select mcd_stepcode,mcd_stepname from MAKECRAFTDETAIL where mcd_macode = '" + ma_code.Text + "' order by mcd_detno asc ", "select");
  148. ms_stepcode.DisplayMember = "mcd_stepname";
  149. ms_stepcode.ValueMember = "mcd_stepname";
  150. ms_stepcode.DataSource = dt;
  151. ms_stepcode.Text = "";
  152. }
  153. private void SnInf_CurrentCellDirtyStateChanged(object sender, EventArgs e)
  154. {
  155. if (SnInf.CurrentCell is DataGridViewCheckBoxCell)
  156. {
  157. SnInf.CommitEdit(DataGridViewDataErrorContexts.Commit);
  158. countcheck();
  159. // 执行你的操作,使用 checkedRows
  160. }
  161. }
  162. private void normalButton2_Click_1(object sender, EventArgs e)
  163. {
  164. //Data表示导出数据
  165. //Templet表示导出模板
  166. folderBrowserDialog1.Description = "选择导出的路径";
  167. DialogResult result = folderBrowserDialog1.ShowDialog();
  168. if (result == DialogResult.OK)
  169. {
  170. string FolderPath = folderBrowserDialog1.SelectedPath;
  171. ExcelHandler eh = new ExcelHandler();
  172. //DataTable dt = (DataTable)SnInf.DataSource;
  173. //导出Excel的时候返回一个文件名,用户选择是否打开
  174. string filePath = eh.ExportExcel(SnInf, FolderPath);
  175. //用户选择导出之后是否立即打开
  176. MessageBoxButtons messButton = MessageBoxButtons.YesNo;
  177. string openFile = MessageBox.Show(this.ParentForm, "是否打开文件" + filePath, "提示", messButton).ToString();
  178. if (openFile == "Yes")
  179. {
  180. System.Diagnostics.Process.Start(filePath);
  181. }
  182. }
  183. }
  184. }
  185. }