FrmFurnaceOrdBreak.cs 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. using Core.Mes.Client.Comm.Tool;
  2. using CoreFS.CA06;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.ComponentModel;
  6. using System.Data;
  7. using System.Drawing;
  8. using System.Linq;
  9. using System.Text;
  10. using System.Windows.Forms;
  11. namespace Core.StlMes.Client.PlnSaleOrd.炼钢计划.control
  12. {
  13. public partial class FrmFurnaceOrdBreak : FrmBase
  14. { /// <summary>
  15. /// 可分配重量
  16. /// </summary>
  17. private double waitSpitWgt;
  18. /// <summary>
  19. /// 可分配支数
  20. /// </summary>
  21. private int waitSpitNum;
  22. /// <summary>
  23. /// 已分配重量
  24. /// </summary>
  25. private double alreadySpitWgt = 0;
  26. public double AlreadySpitWgt
  27. {
  28. get { return alreadySpitWgt; }
  29. set { alreadySpitWgt = value; }
  30. }
  31. /// <summary>
  32. /// 已分配支数
  33. /// </summary>
  34. private int alreadySpitNum = 0;
  35. public int AlreadySpitNum
  36. {
  37. get { return alreadySpitNum; }
  38. set { alreadySpitNum = value; }
  39. }
  40. private double spitRatio;
  41. public FrmFurnaceOrdBreak(double waitSpitWgt, int waitSpitNum, double _spitRatio)
  42. {
  43. spitRatio = _spitRatio;
  44. this.waitSpitWgt = waitSpitWgt;
  45. this.waitSpitNum = waitSpitNum;
  46. //窗体居中
  47. this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
  48. //取消窗体默认关闭按钮
  49. this.ControlBox = false;
  50. InitializeComponent();
  51. }
  52. private void FrmFurnaceOrdBreak_Load(object sender, EventArgs e)
  53. {
  54. numEditorAllow.Value = waitSpitWgt;
  55. ultraNumericEditor1.Value = waitSpitNum;
  56. }
  57. private void buttonCommit_Click(object sender, EventArgs e)
  58. {
  59. string spitNum = ultraNumericEditor2.Value == null ? "0" : ultraNumericEditor2.Value.ToString();
  60. //string spitWgt = numEditorAlready.Value == null ? "0" : numEditorAlready.Value.ToString();
  61. if (int.Parse(spitNum) <= 0)
  62. {
  63. MessageUtil.ShowWarning("拆分支数不能为0支!");
  64. return;
  65. }
  66. if (Convert.ToInt32(spitNum) >= waitSpitNum)
  67. {
  68. MessageUtil.ShowWarning("拆分支数不能大于/等于可分配支数!");
  69. return;
  70. }
  71. double spitWgt = Convert.ToInt32(spitNum) * spitRatio;
  72. alreadySpitWgt = Convert.ToDouble(spitWgt);
  73. //通过重量与支数的比例计划 分配支数
  74. alreadySpitNum = Convert.ToInt32(spitNum);
  75. this.Close();
  76. }
  77. private void buttonCancel_Click(object sender, EventArgs e)
  78. {
  79. this.Close();
  80. }
  81. private void numEditorAlready_ValueChanged(object sender, EventArgs e)
  82. {
  83. if (numEditorAlready == null)
  84. {
  85. numEditorAlready.Value = 0;
  86. ultraNumericEditor2.Value = 0;
  87. return;
  88. }
  89. string spitWt = numEditorAlready.Value.ToString();
  90. if (double.Parse(spitWt) > waitSpitWgt)
  91. {
  92. numEditorAlready.Value = waitSpitWgt;
  93. ultraNumericEditor2.Value = waitSpitNum;
  94. return;
  95. }
  96. int spitNum = (int)Math.Ceiling(double.Parse(spitWt) / spitRatio);
  97. ultraNumericEditor2.Value = spitNum;
  98. }
  99. }
  100. }