Form_paymentScheme.cs 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Text;
  7. using System.Windows.Forms;
  8. using DevComponents.DotNetBar;
  9. using DevComponents.DotNetBar.Controls;
  10. using Terminal;
  11. namespace centralController
  12. {
  13. public partial class Form_paymentScheme : DevComponents.DotNetBar.OfficeForm
  14. {
  15. public Form_paymentScheme()
  16. {
  17. InitializeComponent();
  18. }
  19. private void Form_paymentScheme_Load(object sender, EventArgs e)
  20. {
  21. if (PaymentScheme.ins == null)
  22. {
  23. PaymentScheme.ins = PaymentScheme.GetCurrentPaymentScheme(1);
  24. MessageBox.Show("无法获得收费策略,请稍后重试", "警告");
  25. Close();
  26. }
  27. else
  28. {
  29. displayScheme();
  30. }
  31. }
  32. /// <summary>
  33. /// 显示计费策略
  34. /// </summary>
  35. private void displayScheme()
  36. {
  37. tbx_freeTime.Text = PaymentScheme.ins.freeTime.ToString();
  38. tbx_firstChargeTime.Text = PaymentScheme.ins.firstChargeTime.ToString();
  39. tbx_firstCharge.Text = PaymentScheme.ins.firstCharge.ToString();
  40. tbx_intervalCharge.Text = PaymentScheme.ins.intervalCharge.ToString();
  41. tbx_upperBound.Text = PaymentScheme.ins.upperBound.ToString();
  42. tbx_eachCharge.Text = PaymentScheme.ins.eachCharge.ToString();
  43. tbx_overnightCharge.Text = PaymentScheme.ins.overnightCharge.ToString();
  44. tbx_startChargeTime.Text = PaymentScheme.ins.startChargeTime;
  45. tbx_endChargeTime.Text = PaymentScheme.ins.endChargeTime;
  46. tbx_peakCharge.Text = PaymentScheme.ins.chargeStandard.ToString();
  47. tbx_monthCard.Text = PaymentScheme.ins.monthCardCharge.ToString();
  48. tbx_seasonCard.Text = PaymentScheme.ins.seasonCardCharge.ToString();
  49. tbx_halfYearCard.Text = PaymentScheme.ins.halfYearCardCharge.ToString();
  50. tbx_yearCard.Text = PaymentScheme.ins.yearCardCharge.ToString();
  51. tbx_bookCharge.Text = PaymentScheme.ins.bookCharge.ToString();
  52. }
  53. /// <summary>
  54. /// 设置textboxX只读属性
  55. /// </summary>
  56. /// <param name="isReadOnly"></param>
  57. private void SetReadOnly(bool isReadOnly)
  58. {
  59. try
  60. {
  61. Control.ControlCollection gp_paymentCC = gp_paymentScheme.Controls;
  62. for (int i = 0; i < gp_paymentCC.Count; i++)
  63. {
  64. if (gp_paymentCC[i].GetType().Equals(typeof(TextBoxX)))
  65. {
  66. ((TextBoxX)gp_paymentCC[i]).ReadOnly = isReadOnly;
  67. }
  68. }
  69. }
  70. catch (Exception ex) { Console.WriteLine("启动修改按钮异常,panel1"); }
  71. try
  72. {
  73. Control.ControlCollection gp_vipCC = gp_VIPScheme.Controls;
  74. for (int i = 0; i < gp_vipCC.Count; i++)
  75. {
  76. if (gp_vipCC[i].GetType().Equals(typeof(TextBoxX)))
  77. {
  78. ((TextBoxX)gp_vipCC[i]).ReadOnly = isReadOnly;
  79. }
  80. }
  81. }
  82. catch (Exception ex) { Console.WriteLine("启动修改按钮异常,panel2"); }
  83. }
  84. /// <summary>
  85. /// 允许修改计费策略参数
  86. /// </summary>
  87. /// <param name="sender"></param>
  88. /// <param name="e"></param>
  89. private void btnx_enableModify_Click(object sender, EventArgs e)
  90. {
  91. SetReadOnly(false);
  92. }
  93. /// <summary>
  94. /// 将修改结果写入数据库
  95. /// </summary>
  96. /// <param name="sender"></param>
  97. /// <param name="e"></param>
  98. private void btnx_confirmModification_Click(object sender, EventArgs e)
  99. {
  100. try
  101. {
  102. PaymentScheme ps = new PaymentScheme()
  103. {
  104. freeTime = int.Parse(tbx_freeTime.Text),
  105. firstChargeTime = int.Parse(tbx_firstChargeTime.Text),
  106. firstCharge = int.Parse(tbx_firstCharge.Text),
  107. intervalCharge = int.Parse(tbx_intervalCharge.Text),
  108. upperBound = int.Parse(tbx_upperBound.Text),
  109. eachCharge = int.Parse(tbx_eachCharge.Text),
  110. overnightCharge = int.Parse(tbx_overnightCharge.Text),
  111. startChargeTime = tbx_startChargeTime.Text,
  112. endChargeTime = tbx_endChargeTime.Text,
  113. chargeStandard = int.Parse(tbx_peakCharge.Text),
  114. monthCardCharge = int.Parse(tbx_monthCard.Text),
  115. seasonCardCharge = int.Parse(tbx_seasonCard.Text),
  116. halfYearCardCharge = int.Parse(tbx_halfYearCard.Text),
  117. yearCardCharge = int.Parse(tbx_yearCard.Text),
  118. bookCharge = int.Parse(tbx_bookCharge.Text),
  119. };
  120. bool result = PaymentScheme.SetPaymentScheme(ps);
  121. if (result)
  122. {
  123. PaymentScheme.ins = PaymentScheme.GetCurrentPaymentScheme(1);
  124. displayScheme();
  125. SetReadOnly(true);
  126. MessageBox.Show("成功更新收费策略","提示");
  127. }
  128. else
  129. {
  130. MessageBox.Show("收费策略修改失败,请检查后重试", "提示");
  131. }
  132. }
  133. catch (Exception ex){ MessageBox.Show("收费策略修改失败,请检查后重试", "提示"); }
  134. }
  135. /// <summary>
  136. /// 取消修改,显示原参数并将参数设为只读
  137. /// </summary>
  138. /// <param name="sender"></param>
  139. /// <param name="e"></param>
  140. private void btnx_cancelModify_Click(object sender, EventArgs e)
  141. {
  142. displayScheme();
  143. SetReadOnly(true);
  144. }
  145. }
  146. }