|
- using HKCardManager.UserPages;
- using HKLib.Dto;
- using HKLib.Interfaces;
- using HKLib.SQLHelper;
- using System.Text.RegularExpressions;
- using HKHelper;
- using UHFHelper;
-
- namespace HKCardManager
- {
- public partial class Form1 : Form
- {
- public Form1()
- {
- InitializeComponent();
- DbContext.InitTable();
- splitContainer1.SplitterDistance = 240;
- DataGridViewInit();
- ShowPage(new PersonnelEntryPage());
- Task.Factory.StartNew(() =>
- {
- var res = UHFCardHelper.GetInstance().OpenPort();
- if (res != null && res.Res)
- MessageLogNotify.GetInstance.Show("制卡设备已连接!");
- else MessageLogNotify.GetInstance.ShowError($"制卡设备未连接!");
- });
- this.SizeChanged += Form1_SizeChanged;
- this.button1.SizeChanged += Button1_SizeChanged;
- this.splitContainer2.SplitterMoved += SplitContainer1_SizeChanged;
- MessageLogNotify.GetInstance.Info = new Action<string, Color>((s, br) =>
- {
- this.Invoke(() =>
- {
- dataGridView1.Rows.Insert(0, new string[] { "", $"{DateTime.Now.ToString("HH:mm:ss")} {s}" });
- dataGridView1.Rows[0].DefaultCellStyle.ForeColor = br;
- dataGridView1.Rows[0].DefaultCellStyle.Padding = new Padding(0, 0, 0, 10);
- });
- });
- }
-
- private void SplitContainer1_SizeChanged(object? sender, EventArgs e)
- {
- if (tempUserControl != null)
- {
- tempUserControl.Width = this.panel1.Width;
- tempUserControl.Height = this.panel1.Height;
- }
- }
-
- private void DataGridViewInit()
- {
- dataGridView1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells;
- dataGridView1.AutoGenerateColumns = false;//禁止自动添加列
- dataGridView1.AllowUserToResizeColumns = false;//是否可以调整列的大小
- dataGridView1.AllowUserToResizeRows = false;//是否可以调整行的大小
- dataGridView1.BorderStyle = BorderStyle.None;//DataGridView边框样式
- dataGridView1.RowHeadersBorderStyle = DataGridViewHeaderBorderStyle.None;
- dataGridView1.ColumnHeadersBorderStyle = DataGridViewHeaderBorderStyle.None;
- dataGridView1.CellBorderStyle = DataGridViewCellBorderStyle.None;
- dataGridView1.SelectionChanged += DataGridView1_SelectionChanged;
-
- }
-
- private void DataGridView1_SelectionChanged(object? sender, EventArgs e)
- {
- dataGridView1.ClearSelection();//禁止选择行
- }
-
- private void Write(string msg)
- {
- //bool条件默认为配置文件里面定义,可以自定义任何保存数据条件
- //bool temp = Convert.ToBoolean(iniFile.IniReadValue("设置", "保存运行信息", AppDomain.CurrentDomain.BaseDirectory + "设置.ini"));
- //if (temp)
- //{
- // string logPath = Path.GetDirectoryName(Application.ExecutablePath);
- // // System.IO.StreamWriter sw = System.IO.File.AppendText(logPath + "/" + DateTime.Now.ToString("yyMMdd") + ".txt");
- // System.IO.StreamWriter sw = System.IO.File.AppendText(logPath + "\\log\\" + DateTime.Now.ToString("yyMMdd") + ".txt");
-
- // sw.WriteLine(DateTime.Now.ToString("HH:mm:ss ") + msg);
- // sw.Close();
- // sw.Dispose();
- //}
- }
-
- private void AddListToListBox(ListBox rtbox, string text, Brush foreColor, bool addTime = true)
- {
- rtbox.DrawMode = DrawMode.OwnerDrawVariable;
- rtbox.Font = new Font("楷体", 12);
- if (rtbox.ItemHeight != 24)
- {
- rtbox.ItemHeight = 1;
- rtbox.DrawItem += ((sender, e) => //控件重绘事件
- {
- if (e.Index == -1) return;
- e.DrawBackground();
- ListBoxItem item = (ListBoxItem)rtbox.Items[e.Index];
- if ((e.State & DrawItemState.Selected) == DrawItemState.Selected)
- {
- e.DrawFocusRectangle();
- Brush b = Brushes.Khaki;//设置选中项颜色
- e.Graphics.FillRectangle(b, e.Bounds);
- }
- if (item != null)
- {
- Brush brush = item.ForeColor;
- Rectangle r = e.Bounds;
- r.Height = e.Bounds.Height;
- r.Width = e.Bounds.Width + 100;
-
- e.Graphics.DrawString(item.Text, e.Font, brush, r, StringFormat.GenericDefault);
- }
- else
- {
- e.Graphics.DrawString(item.Text, e.Font, Brushes.Black, e.Bounds, StringFormat.GenericDefault);
- }
- });
- }
-
-
- rtbox.ItemHeight = 25;//设置单行高度
- if (rtbox.InvokeRequired)
- {
- rtbox.Invoke(new Action<ListBox, string, Brush, bool>((rtb, str, color, addtime) => AddListToListBox(rtb, str, color, addtime)), rtbox, text, foreColor, addTime);
- return;
- }
-
- //text = string.Format("{0}-{1}", rtbox.Items.Count.ToString("000"), text);
-
- if (addTime)
- {
- //text = string.Format("[{0}]:{1}", DateTime.Now.ToString("HH:mm:ss"), text);
- text = $"{DateTime.Now.ToString("HH:mm:ss")}:{text}";
- }
-
- if (rtbox.Items.Count > 0)
- rtbox.Items.Insert(0, new ListBoxItem(text, foreColor));
- else
- rtbox.Items.Add(new ListBoxItem(text, foreColor));
-
- try
- {
- Write(text);
-
- }
- catch { }
-
- //清除过多的数据
- if (rtbox.Items.Count > 100)
- {
- int count = rtbox.Items.Count - 100;
- List<object> temp = new List<object>();
- for (int i = 100; i < rtbox.Items.Count; i++)
- {
- if (rtbox.Items.Count >= i - 1) temp.Add(rtbox.Items[i]);
- }
- foreach (object obj in temp)
- {
- rtbox.Items.Remove(obj);
- }
- }
- //rtbox.SelectedIndex = rtbox.Items.Count - 1;
- //if (rtbox.Items.Count > 100)
- //{
- // int count = rtbox.Items.Count - 100;
-
- // List<object> temp = new List<object>();
-
- // for (int i = 0; i < count; i++)
- // {
- // temp.Add(rtbox.Items[i]);
- // }
-
- // foreach (object obj in temp)
- // {
- // rtbox.Items.Remove(obj);
- // }
- //}
- //rtbox.SelectedIndex = rtbox.Items.Count - 1;
- }
-
- private void Button1_SizeChanged(object? sender, EventArgs e)
- {
- groupBox1.Width = button1.Width;
- groupBox2.Width = button1.Width;
- groupBox3.Width = button1.Width;
- groupBox4.Width = button1.Width;
-
- button2.Left = 10;
- button2.Width = (groupBox1.Width - 20);
-
- button3.Left = 10;
- button3.Width = (groupBox1.Width - 20);
-
- button4.Left = 10;
- button4.Width = (groupBox2.Width - 20);
-
- button5.Left = 10;
- button5.Width = (groupBox2.Width - 20);
-
- button6.Left = 10;
- button6.Width = (groupBox2.Width - 20);
-
- button7.Left = 10;
- button7.Width = (groupBox2.Width - 20);
-
- button9.Left = 10;
- button9.Width = (groupBox3.Width - 20);
-
- button10.Left = 10;
- button10.Width = (groupBox3.Width - 20);
-
- button11.Left = 10;
- button11.Width = (groupBox3.Width - 20);
-
- button12.Left = 10;
- button12.Width = (groupBox4.Width - 20);
- }
-
- UserControl tempUserControl;
- private void Form1_SizeChanged(object? sender, EventArgs e)
- {
- if (tempUserControl != null)
- {
- tempUserControl.Width = this.panel1.Width;
- tempUserControl.Height = this.panel1.Height;
- }
- splitContainer1.SplitterDistance = 240;
-
- if (this.WindowState == FormWindowState.Maximized || this.WindowState == FormWindowState.Normal)
- {
- Task.Factory.StartNew(() =>
- {
- Thread.Sleep(100);
- this.Invoke(() =>
- {
- if (tempUserControl != null)
- {
- tempUserControl.Width = this.panel1.Width;
- tempUserControl.Height = this.panel1.Height;
- }
- splitContainer1.SplitterDistance = 240;
- });
- });
- }
- }
-
- //人员录入
- private void button2_Click(object sender, EventArgs e)
- {
- ShowPage(new PersonnelEntryPage());
- }
-
- //机构录入
- private void button3_Click(object sender, EventArgs e)
- {
- ShowPage(new InstitutionalEntryPage());
- }
-
- //发卡
- private void button5_Click(object sender, EventArgs e)
- {
- ShowPage(new CarMangerPage());
- }
-
- //销户,挂失,解挂
- private void button4_Click(object sender, EventArgs e)
- {
- ShowPage(new CancellationPage(), ((Button)sender)?.Tag.ToString());
- }
-
- //月餐段汇总表
- private void button11_Click(object sender, EventArgs e)
- {
- ShowPage(new ReportFormPage(), ((Button)sender)?.Tag.ToString());
- }
-
- //餐段设置
- private void button12_Click(object sender, EventArgs e)
- {
- ShowPage(new MealSegmentSetPage());
- }
-
- private void ShowPage(UserControl userControl, string? name = "")
- {
- panel1.Controls.Clear();
- userControl.Width = panel1.Width;
- userControl.Height = panel1.Height;
- tempUserControl = userControl;
- userControl.Tag = name;
- userControl.Show();
- panel1.Controls.Add(userControl);
- }
-
- private void button8_Click(object sender, EventArgs e)
- {
- ShowPage(new AdvertisingSetPage());
- }
-
- private async void button13_Click(object sender, EventArgs e)
- {
-
- if (UHFCardHelper.GetInstance().ComOpen)
- {
- try
- {
-
- var res = UHFCardHelper.GetInstance().ReadCard();
-
- if (string.IsNullOrEmpty(res))
- {
- MessageBox.Show("提示!!!\n 请放入卡片,在选择销卡...");
- MessageLogNotify.GetInstance.Show("请放入卡片");
- return;
- }
-
- if (res.Equals("666") || res.Equals("888") || res.Equals("999"))
- {
- MessageBox.Show("超级卡不能被注销");
- return;
- }
-
- var result = await HKLibHelper.GetUserList("");
- UserListDto users = null;
- result.ForEach(item =>
- {
- if (item.Cards.FirstOrDefault(t => t.CardNum.Equals(res)) != null)
- {
- users = item;
- return;
- }
- });
-
- if (users != null)
- {
- await HKLibHelper.CardStutasChange(new CardStutasDto()
- {
- keywrod = users.Name,
- Stutas = 3,
- });
- }
- var resz = MessageBox.Show($"提示!!!\n 当前卡号{res},确定销卡?", "提示", MessageBoxButtons.YesNo);
- if (resz == DialogResult.Yes)
- {
- var res1 = UHFCardHelper.GetInstance().WriteCard("000");
- MessageBox.Show(res1.Res ? "000为默认新卡卡号,销卡成功" : "销卡失败");
- }
- }
- catch (Exception)
- {
- MessageBox.Show("销卡成功");
- }
-
- }
- else
- {
- MessageBox.Show("提示!!!\n 设备未连接...");
- MessageLogNotify.GetInstance.ShowWarning("设备未连接");
- }
- }
- }
-
-
- }
|