PlanSizingControl.cs 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Drawing;
  5. using System.Data;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9. using Infragistics.Win;
  10. using Infragistics.Win.UltraWinGrid;
  11. using Infragistics.Win.UltraWinDataSource;
  12. using Core.Mes.Client.Comm.Control;
  13. using com.steering.mes.mcp.entity;
  14. using Core.Mes.Client.Comm.Server;
  15. using Core.Mes.Client.Comm.Tool;
  16. using CoreFS.CA06;
  17. namespace Core.StlMes.Client.Mcp.Control
  18. {
  19. public partial class PlanSizingControl : UserControl
  20. {
  21. private string actnum;
  22. private string actwt;
  23. private VrpSizingResultEntity _load = new VrpSizingResultEntity();
  24. private OpeBase ob;
  25. public OpeBase Ob
  26. {
  27. get { return ob; }
  28. set { ob = value; }
  29. }
  30. public VrpSizingResultEntity Value
  31. {
  32. get { return _load; }
  33. set
  34. {
  35. if(value != null)
  36. {
  37. this._load = value;
  38. UpdateData();
  39. }
  40. }
  41. }
  42. private Infragistics.Win.UltraWinGrid.UltraGrid _grid = null;
  43. /// <summary>
  44. /// 编辑区GRID
  45. /// </summary>
  46. public Infragistics.Win.UltraWinGrid.UltraGrid Grid
  47. {
  48. get { return _grid; }
  49. }
  50. public PlanSizingControl()
  51. {
  52. InitializeComponent();
  53. GridHelper.InitCardGrid(ultraDataSource1, ultraGrid1);
  54. _grid = this.ultraGrid1;
  55. }
  56. /// <summary>
  57. /// 刷新控件数据显示
  58. /// </summary>
  59. public void UpdateData()
  60. {
  61. if (_load != null)
  62. {
  63. ultraDataSource1.Rows[0]["SPEED_IN"] = _load.SpeedIn;
  64. ultraDataSource1.Rows[0]["SPEED_OUT"] = _load.SpeedOut;
  65. ultraDataSource1.Rows[0]["MOTOR_SPEED1"] = _load.MotorSpeed1;
  66. ultraDataSource1.Rows[0]["MOTOR_SPEED2"] = _load.MotorSpeed2;
  67. ultraDataSource1.Rows[0]["MOTOR_SPEED3"] = _load.MotorSpeed3;
  68. ultraDataSource1.Rows[0]["MOTOR_SPEED4"] = _load.MotorSpeed4;
  69. ultraDataSource1.Rows[0]["MOTOR_SPEED5"] = _load.MotorSpeed5;
  70. ultraDataSource1.Rows[0]["MOTOR_DR"] = _load.MotorDr;
  71. ultraDataSource1.Rows[0]["PRO_NUM"] = _load.ProNum;
  72. ultraDataSource1.Rows[0]["PRO_WT"] = _load.ProWt;
  73. ultraDataSource1.Rows[0]["FAIL_NUM"] = string.IsNullOrEmpty(_load.FailNum)?"0" :_load.FailNum;
  74. ultraDataSource1.Rows[0]["FAIL_WT"] = string.IsNullOrEmpty(_load.FailWt) ? "0" : _load.FailWt;
  75. ultraDataSource1.Rows[0]["FAIL_REASON"] = _load.FailReason;
  76. ultraDataSource1.Rows[0]["PRODUCER"] = _load.Producer;
  77. ultraDataSource1.Rows[0]["PRODUCER_TIME"] = _load.ProducerTime;
  78. ultraDataSource1.Rows[0]["LOAD_TIME"] = _load.LoadTime;
  79. ultraDataSource1.Rows[0]["LOAD_SHIFT"] = _load.LoadShift;
  80. ultraDataSource1.Rows[0]["LOAD_GROUP"] = _load.LoadGroup;
  81. ultraDataSource1.Rows[0]["LOAD_USER"] = _load.LoadUser;
  82. ultraDataSource1.Rows[0]["SHE_DIMATER"] = _load.SheDimater;
  83. ultraDataSource1.Rows[0]["SHE_HEIGHT"] = _load.SheHeight;
  84. ultraDataSource1.Rows[0]["SIZ_DIMATER"] = _load.SizDimater;
  85. ultraDataSource1.Rows[0]["SIZ_HEIGHT"] = _load.SizHeight;
  86. ultraDataSource1.Rows[0]["ACT_COUNT"] = _load.ActNum;
  87. ultraDataSource1.Rows[0]["ACT_WEIGHT"] = _load.ActWt;
  88. actnum = _load.ProNum;
  89. actwt = _load.ProWt;
  90. }
  91. else
  92. {
  93. GridHelper.InitCardGrid(ultraDataSource1,ultraGrid1);
  94. }
  95. this.ultraGrid1.UpdateData();
  96. }
  97. /// <summary>
  98. /// 控件编辑后更新已修改数据
  99. /// </summary>
  100. public void CompleteEdit()
  101. {
  102. ultraGrid1.UpdateData();
  103. }
  104. private void ultraGrid1_AfterCellUpdate(object sender, CellEventArgs e)
  105. {
  106. try
  107. {
  108. if (e.Cell.Column.Key.Equals("SPEED_IN"))
  109. {
  110. Value.SpeedIn = e.Cell.Value.ToString();
  111. }
  112. if (e.Cell.Column.Key.Equals("SPEED_OUT"))
  113. {
  114. Value.SpeedOut = e.Cell.Value.ToString();
  115. }
  116. if (e.Cell.Column.Key.Equals("MOTOR_SPEED1"))
  117. {
  118. Value.MotorSpeed1 = e.Cell.Value.ToString();
  119. }
  120. if (e.Cell.Column.Key.Equals("MOTOR_SPEED2"))
  121. {
  122. Value.MotorSpeed2 = e.Cell.Value.ToString();
  123. }
  124. if (e.Cell.Column.Key.Equals("MOTOR_SPEED3"))
  125. {
  126. Value.MotorSpeed3 = e.Cell.Value.ToString();
  127. }
  128. if (e.Cell.Column.Key.Equals("MOTOR_SPEED4"))
  129. {
  130. Value.MotorSpeed4 = e.Cell.Value.ToString();
  131. }
  132. if (e.Cell.Column.Key.Equals("MOTOR_SPEED5"))
  133. {
  134. Value.MotorSpeed5 = e.Cell.Value.ToString();
  135. }
  136. if (e.Cell.Column.Key.Equals("MOTOR_DR"))
  137. {
  138. Value.MotorDr = e.Cell.Value.ToString();
  139. }
  140. if (e.Cell.Column.Key.Equals("PRO_NUM"))
  141. {
  142. Value.ProNum = e.Cell.Value.ToString();
  143. }
  144. if (e.Cell.Column.Key.Equals("PRO_WT"))
  145. {
  146. Value.ProWt = e.Cell.Value.ToString();
  147. }
  148. if (e.Cell.Column.Key.Equals("FAIL_NUM"))
  149. {
  150. Value.FailNum = e.Cell.Value.ToString();
  151. }
  152. if (e.Cell.Column.Key.Equals("FAIL_WT"))
  153. {
  154. Value.FailWt = e.Cell.Value.ToString();
  155. }
  156. if (e.Cell.Column.Key.Equals("FAIL_REASON"))
  157. {
  158. Value.FailReason = e.Cell.Value.ToString();
  159. }
  160. if (e.Cell.Column.Key.Equals("PRODUCER"))
  161. {
  162. Value.Producer = e.Cell.Value.ToString();
  163. }
  164. if (e.Cell.Column.Key.Equals("PRODUCER_TIME"))
  165. {
  166. Value.ProducerTime = e.Cell.Value.ToString();
  167. }
  168. if (e.Cell.Column.Key.Equals("LOAD_TIME"))
  169. {
  170. Value.LoadTime = e.Cell.Value.ToString();
  171. }
  172. if (e.Cell.Column.Key.Equals("LOAD_SHIFT"))
  173. {
  174. Value.LoadShift = e.Cell.Value.ToString();
  175. }
  176. if (e.Cell.Column.Key.Equals("LOAD_GROUP"))
  177. {
  178. Value.LoadGroup = e.Cell.Value.ToString();
  179. }
  180. if (e.Cell.Column.Key.Equals("LOAD_USER"))
  181. {
  182. Value.LoadUser = e.Cell.Value.ToString();
  183. }
  184. if (e.Cell.Column.Key.Equals("SHE_DIMATER"))
  185. {
  186. Value.SheDimater = e.Cell.Value.ToString();
  187. }
  188. if (e.Cell.Column.Key.Equals("SHE_HEIGHT"))
  189. {
  190. Value.SheHeight = e.Cell.Value.ToString();
  191. }
  192. if (e.Cell.Column.Key.Equals("SIZ_DIMATER"))
  193. {
  194. Value.SizDimater = e.Cell.Value.ToString();
  195. }
  196. if (e.Cell.Column.Key.Equals("SIZ_HEIGHT"))
  197. {
  198. Value.SizHeight = e.Cell.Value.ToString();
  199. }
  200. if (e.Cell.Column.Key.Equals("ACT_COUNT"))
  201. {
  202. Value.ActNum = e.Cell.Value.ToString();
  203. }
  204. if (e.Cell.Column.Key.Equals("ACT_WEIGHT"))
  205. {
  206. Value.ActWt = e.Cell.Value.ToString();
  207. }
  208. }
  209. catch (Exception ex)
  210. {
  211. }
  212. }
  213. /// <summary>
  214. /// 验证格试
  215. /// </summary>
  216. public bool ValidInput1()
  217. {
  218. ultraGrid1.UpdateData();
  219. string TestingNum = ultraDataSource1.Rows[0]["PRO_NUM"].ToString();
  220. string TestingWt = ultraDataSource1.Rows[0]["PRO_WT"].ToString();
  221. string TestingNum1 = ultraDataSource1.Rows[0]["FAIL_NUM"].ToString();
  222. string TestingWt1 = ultraDataSource1.Rows[0]["FAIL_WT"].ToString();
  223. if (!StringUtil.IsInt(TestingNum))
  224. {
  225. MessageBox.Show("合格支数 请输入整数", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
  226. return false;
  227. }
  228. if (!StringUtil.IsDouble(TestingWt))
  229. {
  230. MessageBox.Show("合格重量 请输入重量", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
  231. return false;
  232. }
  233. if (!StringUtil.IsInt(TestingNum1))
  234. {
  235. MessageBox.Show("废品支数 请输入整数", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
  236. return false;
  237. }
  238. if (!StringUtil.IsDouble(TestingWt1))
  239. {
  240. MessageBox.Show("废品重量 请输入重量", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
  241. return false;
  242. }
  243. return true;
  244. }
  245. public void LoadData()
  246. {
  247. DataTable dt = ServerHelper.GetData("com.steering.mes.mcp.coup.CoupCutService.getCutResultFp", new object[] { "6510" }, this.ob);
  248. cmbFaReason.DataSource = dt;
  249. cmbFaReason.ValueMember = "BASENAME";
  250. YdmBaseClass.SetComboItemHeight(cmbFaReason);
  251. }
  252. private void ultraGrid1_CellChange(object sender, CellEventArgs e)
  253. {
  254. ultraGrid1.UpdateData();
  255. if (e.Cell.Column.Key.Equals("FAIL_NUM"))
  256. {
  257. if (ultraDataSource1.Rows[0]["FAIL_NUM"].ToString().Equals(""))
  258. {
  259. ultraDataSource1.Rows[0]["FAIL_NUM"] = "0";
  260. }
  261. double ctwt = 0;
  262. if (!ultraDataSource1.Rows[0]["PRO_WT"].ToString().Equals("0"))
  263. {
  264. if (actnum != null && !actnum.Equals("0"))
  265. {
  266. ctwt = double.Parse(ultraDataSource1.Rows[0]["FAIL_NUM"].ToString()) * (double.Parse(actwt) / double.Parse(actnum));
  267. }
  268. }
  269. ultraDataSource1.Rows[0]["FAIL_WT"] = ctwt.ToString("f3");
  270. Value.FailWt = ultraDataSource1.Rows[0]["FAIL_WT"].ToString();
  271. //ultraDataSource1.Rows[0]["PRO_NUM"] = (int.Parse(actnum) - int.Parse(ultraDataSource1.Rows[0]["FAIL_NUM"].ToString())).ToString();
  272. //ultraDataSource1.Rows[0]["PRO_NUM"] = (int.Parse(ultraDataSource1.Rows[0]["PRO_NUM"].ToString()) - int.Parse(ultraDataSource1.Rows[0]["FAIL_NUM"].ToString())).ToString();
  273. //Value.ProNum = ultraDataSource1.Rows[0]["PRO_NUM"].ToString();
  274. //ultraDataSource1.Rows[0]["PRO_WT"] = (double.Parse(actwt) - ctwt).ToString("f3");
  275. // ultraDataSource1.Rows[0]["PRO_WT"] = (double.Parse(ultraDataSource1.Rows[0]["PRO_WT"].ToString()) - ctwt).ToString("f3");
  276. //Value.ProWt = ultraDataSource1.Rows[0]["PRO_WT"].ToString();
  277. }
  278. if (e.Cell.Column.Key.Equals("PRO_NUM"))//动这个字段会进下面的内容里
  279. {
  280. if (actnum != null && !actnum.Equals("0"))
  281. {
  282. e.Cell.Row.Cells["PRO_WT"].Value = (double.Parse(ultraDataSource1.Rows[0]["PRO_NUM"].ToString()) * (double.Parse(actwt)) / (double.Parse(actnum))).ToString("f3");
  283. }
  284. if (ultraDataSource1.Rows[0]["FAIL_NUM"].ToString().Equals(""))
  285. {
  286. ultraDataSource1.Rows[0]["FAIL_NUM"] = "0";
  287. }
  288. }
  289. }
  290. }
  291. }