123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139 |
- using System.Collections.Generic;
- using System.Drawing;
- using System.Threading;
- using System.Windows.Forms;
- using DevExpress.XtraEditors;
- using GCAS.Code;
- using GCAS.Dto;
- using GCAS.Localization;
- using GCAS.Model;
- namespace GCAS
- {
- public partial class OperatorForm : XtraForm
- {
- private List<NameValue> L;
- private OperatorRepository operatorRepository;
- public OperatorModel currentUser;
- public OperatorForm()
- {
- InitializeComponent();
- L = LocalizationHelper.GetSource(Thread.CurrentThread.CurrentUICulture);
- }
- private void DeviceForm_Load(object sender, System.EventArgs e)
- {
- operatorRepository = new OperatorRepository();
- InitDataView();
- }
- private async void InitDataView()
- {
- gridView1.LoadingPanelVisible = true;
- var list = await operatorRepository.GetList(Thread.CurrentThread.CurrentUICulture.Name);
- gridControl1.DataSource = list;
- gridView1.LoadingPanelVisible = false;
- }
- private async void contextMenuStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
- {
- OperatorModel rowData;
- switch (e.ClickedItem.Name)
- {
- case "menu_new":
- using (NewOperatorForm form = new NewOperatorForm())
- {
- form.Text = L.GetString("new");
- form.currentOperator = currentUser;
- if (form.ShowDialog() == DialogResult.OK)
- InitDataView();
- }
- break;
- case "menu_edit":
- rowData = gridView1.GetFocusedRow() as OperatorModel;
- if (rowData != null)
- {
- using (NewOperatorForm form = new NewOperatorForm())
- {
- form.Text = L.GetString("edit");
- form.operatorModel = rowData;
- form.currentOperator = currentUser;
- if (form.ShowDialog() == DialogResult.OK)
- InitDataView();
- }
- }
- break;
- case "menu_delete":
- rowData = gridView1.GetFocusedRow() as OperatorModel;
- if (rowData != null)
- {
- if (XtraMessageBox.Show(string.Format(L.GetString("deleteOperatorMessage"), rowData.Name), L.GetString("notification"), MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
- {
- if (await operatorRepository.Delete(rowData.Id) > 0)
- InitDataView();
- }
- }
- break;
- }
- }
- private void gridView1_PopupMenuShowing(object sender, DevExpress.XtraGrid.Views.Grid.PopupMenuShowingEventArgs e)
- {
- if (e.HitInfo.InRow)
- {
- int index = gridView1.FocusedRowHandle;
- if (index >= 0)
- {
- var rowData = gridView1.GetFocusedRow() as OperatorModel;
- if (rowData?.Id == currentUser.Id)
- menu_delete.Enabled = false;
- else
- menu_delete.Enabled = true;
- menu_edit.Enabled = true;
- }
- else
- {
- menu_delete.Enabled = false;
- menu_edit.Enabled = false;
- }
- }
- else
- {
- menu_delete.Enabled = false;
- menu_edit.Enabled = false;
- }
- }
- private void OperatorForm_FormClosed(object sender, FormClosedEventArgs e)
- {
- Dispose();
- }
- private void gridView1_MouseDown(object sender, MouseEventArgs e)
- {
- if (e.Clicks != 2 || e.Button != MouseButtons.Left) return;
- if (gridView1.CalcHitInfo(new Point(e.X, e.Y)).InRow == false)
- {
- using (NewOperatorForm form = new NewOperatorForm())
- {
- form.Text = L.GetString("new");
- if (form.ShowDialog() == DialogResult.OK)
- InitDataView();
- }
- }
- var rowData = gridView1.GetRow(gridView1.CalcHitInfo(new Point(e.X, e.Y)).RowHandle) as OperatorModel;
- if (rowData != null)
- {
- using (NewOperatorForm form = new NewOperatorForm())
- {
- form.Text = L.GetString("edit");
- form.operatorModel = rowData;
- form.currentOperator = currentUser;
- if (form.ShowDialog() == DialogResult.OK)
- InitDataView();
- }
- }
- }
- }
- }
|