Query_SpecialReport_CTEI.cs 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  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.Text;
  8. using System.Windows.Forms;
  9. using UAS_MES_NEW.DataOperate;
  10. using UAS_MES_NEW.Entity;
  11. using UAS_MES_NEW.PublicMethod;
  12. namespace UAS_MES_NEW.Query
  13. {
  14. public partial class Query_SpecialReport_CTEI : Form
  15. {
  16. DataHelper dh = SystemInf.dh;
  17. public Query_SpecialReport_CTEI()
  18. {
  19. InitializeComponent();
  20. }
  21. private void Export_Click(object sender, EventArgs e)
  22. {
  23. ExcelExport("");
  24. }
  25. //选择导出Excel时是选择导出数据的还是模板
  26. private void ExcelExport(string DataOrTemplet)
  27. {
  28. //Data表示导出数据
  29. //Templet表示导出模板
  30. if (ma_code.Text == "")
  31. {
  32. MessageBox.Show("请输入工单号");
  33. return;
  34. }
  35. if (Num.Text == "")
  36. {
  37. MessageBox.Show("请输入数量");
  38. return;
  39. }
  40. if (BeginMac.Text == "" || BeginMac.TextLength != 12)
  41. {
  42. MessageBox.Show("请输入起始地址号或检查长度");
  43. return;
  44. }
  45. if (BeginCTEI1.Text == "" || BeginCTEI1.TextLength != 7)
  46. {
  47. MessageBox.Show("请输入起始地址号或检查长度");
  48. return;
  49. }
  50. folderBrowserDialog1.Description = "选择导出的路径";
  51. DialogResult result = folderBrowserDialog1.ShowDialog();
  52. if (result == DialogResult.OK)
  53. {
  54. string FolderPath = folderBrowserDialog1.SelectedPath;
  55. ExcelHandler eh = new ExcelHandler();
  56. DataTable dt = new DataTable();
  57. dt.Columns.Add("工单号");
  58. dt.Columns.Add("MAC");
  59. dt.Columns.Add("BT");
  60. dt.Columns.Add("扩展栏位1");
  61. dt.Columns.Add("扩展栏位2");
  62. dt.Columns.Add("扩展栏位3");
  63. dt.Columns.Add("备注");
  64. string prefix = BeginMac.Text.Substring(0, 6);
  65. string suffix = BeginMac.Text.Substring(6, 6);
  66. int num = Int32.Parse(suffix, System.Globalization.NumberStyles.HexNumber);
  67. int num1 = Int32.Parse(BeginCTEI1.Text);
  68. for (int i = 0; i < int.Parse(Num.Text); i++)
  69. {
  70. DataRow dr = dt.NewRow();
  71. dr["工单号"] = ma_code.Text;
  72. dr["MAC"] = prefix + lpad(6, num.ToString("X"));
  73. dr["扩展栏位3"] = BeginCTEI.Text + lpad(7, num1.ToString());
  74. if (dr["MAC"].ToString().Length != 12)
  75. {
  76. MessageBox.Show("生成MAC地址错误");
  77. return;
  78. }
  79. num = num + 1;
  80. dr["BT"] = prefix + lpad(6, num.ToString("X"));
  81. if (dr["BT"].ToString().Length != 12)
  82. {
  83. MessageBox.Show("生成BT地址错误");
  84. return;
  85. }
  86. num = num + 1;
  87. num1 = num1 + 1;
  88. dt.Rows.Add(dr);
  89. }
  90. eh.ExportExcel(dt, FolderPath);
  91. }
  92. }
  93. private static string lpad(int length, string number)
  94. {
  95. while (number.Length < length)
  96. {
  97. number = "0" + number;
  98. }
  99. number = number.Substring(number.Length - length, length);
  100. return number;
  101. }
  102. private void Query_SpecialReport_Load(object sender, EventArgs e)
  103. {
  104. }
  105. }
  106. }