106 lines
3.3 KiB
C#
106 lines
3.3 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows.Forms;
|
|
using bsmd.database;
|
|
|
|
|
|
namespace CoreDeleteTool
|
|
{
|
|
public partial class Main : Form
|
|
{
|
|
SortableBindingList<MessageCore> messageCores = new SortableBindingList<MessageCore>();
|
|
|
|
public Main()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
|
|
#region overrides
|
|
|
|
protected override void OnLoad(EventArgs e)
|
|
{
|
|
base.OnLoad(e);
|
|
|
|
if (DBManager.Instance.Connect(Properties.Settings.Default.ConnectionString))
|
|
{
|
|
foreach (MessageCore mc in DBManager.Instance.GetMessageCoresByStatus(MessageCore.BSMDStatus.PREPARE))
|
|
this.messageCores.Add(mc);
|
|
}
|
|
else
|
|
{
|
|
MessageBox.Show("Cannot connect to database!");
|
|
|
|
// create a dummy cores
|
|
MessageCore mc = new MessageCore();
|
|
mc.IMO = "1234567";
|
|
mc.ETA = DateTime.Now;
|
|
mc.PoC = "ZZUKN";
|
|
mc.Portname = "Hamburg";
|
|
|
|
this.messageCores.Add(mc);
|
|
|
|
mc = new MessageCore();
|
|
mc.IMO = "9999999";
|
|
mc.ETA = DateTime.Now + TimeSpan.FromHours(1);
|
|
mc.PoC = "DEBRE";
|
|
mc.Portname = "Bremen";
|
|
|
|
this.messageCores.Add(mc);
|
|
|
|
}
|
|
|
|
this.dataGridView.DataSource = this.messageCores;
|
|
}
|
|
|
|
#endregion
|
|
|
|
#region event handler
|
|
|
|
private void buttonDelete_Click(object sender, EventArgs e)
|
|
{
|
|
if ((this.dataGridView.SelectedRows.Count > 0) && DBManager.Instance.IsConnected)
|
|
{
|
|
if (MessageBox.Show("Delete selected item(s)?", "Confirmation", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.Yes)
|
|
{
|
|
for (int i = 0; i < this.dataGridView.SelectedRows.Count; i++)
|
|
{
|
|
MessageCore selectedCore = this.dataGridView.SelectedRows[i].DataBoundItem as MessageCore;
|
|
if (selectedCore != null)
|
|
{
|
|
DBManager.Instance.DeleteCore(selectedCore);
|
|
|
|
this.messageCores.Remove(selectedCore);
|
|
}
|
|
}
|
|
// TODO:refresh data source?
|
|
}
|
|
}
|
|
}
|
|
|
|
private void buttonClose_Click(object sender, EventArgs e)
|
|
{
|
|
this.Close();
|
|
}
|
|
|
|
private void dataGridView_DataBindingComplete(object sender, DataGridViewBindingCompleteEventArgs e)
|
|
{
|
|
foreach (DataGridViewColumn column in dataGridView.Columns)
|
|
column.SortMode = DataGridViewColumnSortMode.Automatic;
|
|
}
|
|
|
|
private void menuStripDelete_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
|
|
{
|
|
this.buttonDelete_Click(sender, new EventArgs());
|
|
}
|
|
|
|
#endregion
|
|
|
|
}
|
|
}
|