Make_StepReportDetailFail.cs 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183
  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.Runtime.InteropServices;
  8. using System.Text;
  9. using System.Windows.Forms;
  10. using UAS_MES_NEW.DataOperate;
  11. using UAS_MES_NEW.Entity;
  12. using UAS_MES_NEW.PublicMethod;
  13. namespace UAS_MES_NEW.Make
  14. {
  15. public partial class Make_StepReportDetailFail : CustomControl.BaseForm.BaseForm
  16. {
  17. //所有用到了headBar的部分都需要这段代码
  18. [DllImport("user32.dll")]
  19. public static extern bool ReleaseCapture();
  20. [DllImport("user32.dll")]
  21. public static extern bool SendMessage(IntPtr hwnd, int wMsg, int wParam, int lParam);
  22. [DllImport("user32.dll", EntryPoint = "GetWindowLong", CharSet = CharSet.Auto)]
  23. public static extern int GetWindowLong(HandleRef hWnd, int nIndex);
  24. [DllImport("user32.dll", EntryPoint = "SetWindowLong", CharSet = CharSet.Auto)]
  25. public static extern IntPtr SetWindowLong(HandleRef hWnd, int nIndex, int dwNewLong);
  26. public const int WM_SYSCOMMAND = 0x0112;
  27. public const int SC_MOVE = 0xF010;
  28. public const int HTCAPTION = 0x0002;
  29. DataHelper dh;
  30. LogStringBuilder sql = new LogStringBuilder();
  31. string msid;
  32. double badqty;
  33. string macode;
  34. public Make_StepReportDetailFail(string msid, double badqty, string macode)
  35. {
  36. dh = SystemInf.dh;
  37. InitializeComponent();
  38. this.msid = msid;
  39. this.badqty = badqty;
  40. this.macode = macode;
  41. }
  42. private void Warehouse_ProdDetail_Load(object sender, EventArgs e)
  43. {
  44. ngsum.Text = badqty.ToString();
  45. ma_code.Text = macode;
  46. stepcode.Text = User.CurrentStepCode;
  47. FillDataGridView();
  48. }
  49. private void headBar1_MouseDown(object sender, MouseEventArgs e)
  50. {
  51. ReleaseCapture();
  52. SendMessage(this.Handle, WM_SYSCOMMAND, SC_MOVE + HTCAPTION, 0);
  53. }
  54. private void BatchProductDGV_CellContentClick66(object sender, DataGridViewCellEventArgs e)
  55. {
  56. if (BatchProductDGV.Columns[e.ColumnIndex].Name == "DeleteRow")
  57. {
  58. if (e.RowIndex >= 0)
  59. {
  60. string id = BatchProductDGV.Rows[e.RowIndex].Cells["msf_id"].Value.ToString();
  61. if (id != "0")
  62. {
  63. dh.ExecuteSql("update MES_STEPREPORTFAIL set msf_status =-1 where msf_id='" + id + "'", "delete");
  64. LogicHandler.DoCommandLog(Tag.ToString(), User.UserCode, ma_code.Text, User.UserLineCode, User.UserSourceCode, "工序报废报工", "删除记录" + id, "", "");
  65. FillDataGridView();
  66. }
  67. }
  68. }
  69. }
  70. private void FillDataGridView()
  71. {
  72. sql.Clear();
  73. sql.Append("select msf_id,msf_msid,msf_badname,msf_qty,msf_indate,msf_status,msf_stepcode from MES_STEPREPORTFAIL ");
  74. sql.Append("where msf_msid = '" + msid + "' and msf_stepcode = '" + User.CurrentStepCode + "' and msf_status = 0");
  75. DataTable dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
  76. BaseUtil.FillDgvWithDataTable(BatchProductDGV, dt);
  77. }
  78. private void button1_Click(object sender, EventArgs e)
  79. {
  80. }
  81. private void BatchProductDGV_CellFormatting12(object sender, DataGridViewCellFormattingEventArgs e)
  82. {
  83. if (BatchProductDGV.Columns[e.ColumnIndex].Name == "DeleteRow")
  84. {
  85. if (BatchProductDGV.Rows[e.RowIndex].Cells["msf_id"].Value.ToString() == "0")
  86. e.Value = Properties.Resources.WhiteImage;
  87. else
  88. e.Value = Properties.Resources.bindingNavigatorDeleteItem_Image;
  89. }
  90. }
  91. private void button1_Click_1(object sender, EventArgs e)
  92. {
  93. }
  94. private void BatchProductDGV_CellPainting(object sender, DataGridViewCellPaintingEventArgs e)
  95. {
  96. bool mouseOver = e.CellBounds.Contains(this.PointToClient(Cursor.Position));
  97. if (e.ColumnIndex > 0)
  98. {
  99. if (BatchProductDGV.Columns[e.ColumnIndex].Name == "msf_qty")
  100. {
  101. SolidBrush solidBrush = new SolidBrush(Color.FromArgb(51, 153, 255));
  102. e.Graphics.FillRectangle(mouseOver ? solidBrush : Brushes.LightSeaGreen, e.CellBounds);
  103. Rectangle border = e.CellBounds;
  104. border.Width -= 1;
  105. e.Graphics.DrawRectangle(Pens.White, border);
  106. e.PaintContent(e.CellBounds);
  107. e.Handled = true;
  108. }
  109. }
  110. }
  111. private void button1_Click_2(object sender, EventArgs e)
  112. {
  113. try
  114. {
  115. if (comBoxWithFocus1.Text == "" || ngqty.Text == "")
  116. {
  117. MessageBox.Show("必填项为空");
  118. return;
  119. }
  120. double ng = double.Parse(ngqty.Text);
  121. double nowng = double.Parse(dh.getFieldDataByCondition("MES_STEPREPORTFAIL", "nvl(sum(msf_qty),0)", " msf_msid = '" + msid + "' and msf_stepcode = '" + User.CurrentStepCode + "' and msf_status = 0 ").ToString());
  122. if (nowng + double.Parse(ngqty.Text) > badqty)
  123. {
  124. MessageBox.Show("已录入报废" + nowng + "+待录入报废" + ng + "大于报废总数" + badqty + "");
  125. return;
  126. }
  127. else
  128. {
  129. string msdid = dh.GetSEQ("MES_STEPREPORTFAIL_seq");
  130. sql.Clear();
  131. sql.Append("insert into MES_STEPREPORTFAIL (MSF_ID,MSF_MSID,MSF_BADNAME ,MSF_QTY,");
  132. sql.Append("MSF_INDATE,MSF_STATUS,MSF_STEPCODE,MSF_TYPE");
  133. sql.Append(") values(" + msdid + "," + msid + ",'" + comBoxWithFocus1.Text + "',");
  134. sql.Append("'" + ng + "',sysdate,'0','" + User.CurrentStepCode + "','"+ comBoxWithFocus2.Text+ "')");
  135. dh.ExecuteSql(sql.GetString(), "insert");
  136. LogicHandler.DoCommandLog(Tag.ToString(), User.UserCode, ma_code.Text, User.UserLineCode, User.UserSourceCode, "工序报废报工", "现象:" + comBoxWithFocus1.Text + ",数量:" + ng + "", "", "");
  137. FillDataGridView();
  138. comBoxWithFocus1.Text = "";
  139. ngqty.Text = "";
  140. }
  141. }
  142. catch (Exception ex)
  143. {
  144. Console.WriteLine(ex.Message);
  145. }
  146. }
  147. private void comBoxWithFocus2_SelectedIndexChanged(object sender, EventArgs e)
  148. {
  149. sql.Clear();
  150. sql.Append("select BGD_BADCODE from badgroupdetail left join badgroup on bgd_bgid = bg_id where bg_code = '报废' and bgd_brcode = '"+ comBoxWithFocus2.Text+ "' ORDER BY BGD_ID ASC");
  151. DataTable dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
  152. comBoxWithFocus1.DisplayMember = "BGD_BADCODE";
  153. comBoxWithFocus1.ValueMember = "BGD_BADCODE";
  154. comBoxWithFocus1.DataSource = dt;
  155. comBoxWithFocus1.Text = "";
  156. }
  157. }
  158. }