/// <summary> /// DataGridViewForm - display all client event for mailing /// </summary> /// <param name="mainForm"></param> /// <param name="clientEventsList"></param> public DataGridViewForm(MainForm mainForm, List <ClientEventModel> clientEventsList) { InitializeComponent(); DataGridView dataGridView = dgvData; DataTable dataTable = ToDataTable(clientEventsList); foreach (DataRow row in dataTable.Rows) { if (row["ClientId"] != null) { ClientModel clientModel = ClientDataAccess.LoadClient((int)row["ClientId"]); row["ClientName"] = clientModel.Name; } if (row["TrackId"] != null) { TrackModel trackModel = TrackDataAccess.LoadTrack((int)row["TrackId"]); row["TrackName"] = trackModel.Name; } } dataTable.Columns.Add("Applied", typeof(bool)).SetOrdinal(0); dataTable.Columns["ClientEventID"].SetOrdinal(1); dataTable.Columns["ClientName"].SetOrdinal(2); dataTable.Columns["TrackName"].SetOrdinal(3); dataGridView.DataSource = dataTable; dataGridView.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.DisplayedCells; dataGridView.Columns["IsDeleted"].Visible = false; dataGridView.Columns["ClientId"].Visible = false; dataGridView.Columns["TrackId"].Visible = false; int dgv_width = dataGridView.Columns.GetColumnsWidth(DataGridViewElementStates.Visible); this.Width = 365 + dgv_width; foreach (DataGridViewColumn column in dgvData.Columns) { if (column.HeaderText == "Applied") { column.ReadOnly = false; } else { column.ReadOnly = true; } } dataGridView.ClearSelection(); btnSelect.Click += btnAddClientEvent_Click; _mainForm = mainForm; }
/// <summary> /// RefreshDataGridViewClientEvent - refresh client event data grid view /// </summary> public void RefreshDataGridViewClientEvent() { List <ClientEventModel> list = ClientEventDataAccess.LoadAllClientEvent(); DataGridView dataGridView = dgvClientEvent; DataTable dataTable = ToDataTable(list); foreach (DataRow row in dataTable.Rows) { if (row["ClientID"] != null) { ClientModel clientModel = ClientDataAccess.LoadClient((int)row["ClientID"]); row["ClientName"] = clientModel.Name; } if (row["TrackID"] != null) { TrackModel trackModel = TrackDataAccess.LoadTrack((int)row["TrackID"]); row["TrackName"] = trackModel.Name; } } dataTable.Columns["ClientEventID"].SetOrdinal(0); dataTable.Columns["ClientName"].SetOrdinal(1); dataTable.Columns["TrackName"].SetOrdinal(2); dataGridView.DataSource = dataTable; dataGridView.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.DisplayedCells; dataGridView.Columns["IsDeleted"].Visible = false; dataGridView.Columns["ClientId"].Visible = false; dataGridView.Columns["TrackId"].Visible = false; int dgv_width = dataGridView.Columns.GetColumnsWidth(DataGridViewElementStates.Visible); this.Width = 250 + dgv_width; dataGridView.ClearSelection(); }
/// <summary> /// SetWebBrowserTable - for creating html mail /// </summary> public void SetWebBrowserTable() { List <ClientEventModel> clientEventModelsList = new List <ClientEventModel>(); allClientEventTrackWorkerIdList = new List <int>(); foreach (int clientEventId in _clientEventIdList) { ClientEventModel clientEvent = ClientEventDataAccess.LoadClientEvent(clientEventId); clientEvent.TrackWorkersId = ClientEvents_TrackWorkersDataAccess.LoadClientEventTrackWorkerIDList(clientEventId); allClientEventTrackWorkerIdList = allClientEventTrackWorkerIdList.Union(clientEvent.TrackWorkersId).ToList(); clientEventModelsList.Add(clientEvent); } stringBodyHTML += "<table style=\"border: 1px solid black;text-align:center;\">"; stringBodyHTML += "<tr>"; stringBodyHTML += "<td></td>"; foreach (ClientEventModel clientEvent in clientEventModelsList) { ClientModel client = ClientDataAccess.LoadClient(clientEvent.ClientID); stringBodyHTML += "<td style=\"border: 1px solid black;\">" + client.Name + "</td>"; } stringBodyHTML += "</tr>"; stringBodyHTML += "<tr>"; stringBodyHTML += "<td></td>"; foreach (ClientEventModel clientEvent in clientEventModelsList) { stringBodyHTML += "<td style=\"border: 1px solid black;\">" + clientEvent.Date + "</td>"; } stringBodyHTML += "</tr>"; stringBodyHTML += "<tr>"; stringBodyHTML += "<td style=\"border: 1px solid black;\"># Workers Needed</td>"; foreach (ClientEventModel clientEvent in clientEventModelsList) { stringBodyHTML += "<td style=\"border: 1px solid black;\">" + clientEvent.WorkersRequested + "</td>"; } stringBodyHTML += "</tr>"; stringBodyHTML += "<tr>"; stringBodyHTML += "<td style=\"border: 1px solid black;\">Track</td>"; foreach (ClientEventModel clientEvent in clientEventModelsList) { TrackModel track = TrackDataAccess.LoadTrack(clientEvent.TrackID); stringBodyHTML += "<td style=\"border: 1px solid black;\">" + track.Name + "</td>"; } stringBodyHTML += "</tr>"; stringBodyHTML += "<tr><td><b>Worker Name</b></td></tr>"; foreach (int trackWorkerId in allClientEventTrackWorkerIdList) { stringBodyHTML += "<tr>"; TrackWorkerModel trackWorker = TrackWorkerDataAccess.LoadTrackWorker(trackWorkerId); stringBodyHTML += "<td style=\"border: 1px solid black;\">" + trackWorker.FullName() + "</td>"; foreach (ClientEventModel clientEvent in clientEventModelsList) { if (clientEvent.TrackWorkersId.Contains(trackWorkerId)) { stringBodyHTML += "<td style=\"border: 1px solid black;\">X</td>"; } else { stringBodyHTML += "<td style=\"border: 1px solid black;\"> </td>"; } } stringBodyHTML += "</tr>"; } stringBodyHTML += "</table>"; //webBrowser.DocumentText += stringTableHTML; }
/// <summary> /// ClientEventForm - for updating client event record /// </summary> /// <param name="mainForm">main form</param> /// <param name="clientEventModel">client event record</param> public ClientEventForm(MainForm mainForm, ClientEventModel clientEventModel) { _mainForm = mainForm; InitializeComponent(); btnEnter.Click += btnClientEventUpdate_Click; btnEnter.Text = "&Update"; // load client event data to the form _clientEvent = clientEventModel; ClientModel clientModel = ClientDataAccess.LoadClient(_clientEvent.ClientID); TrackModel trackModel = TrackDataAccess.LoadTrack(_clientEvent.TrackID); _clientsEvents_TrackWorkers = ClientEvents_TrackWorkersDataAccess.LoadClientEventTrackWorker(clientEventModel.ClientEventID); txtClientEventId.Text = clientEventModel.ClientEventID.ToString(); txtClientId.Text = clientModel.Name.ToString(); txtTrackID.Text = trackModel.Name.ToString(); txtClientEventDate.Text = _clientEvent.Date.ToString(); txtWorkerRequested.Text = _clientEvent.WorkersRequested.ToString(); if (_clientEvent.IsLunchProvided) { rdoClientEventIsLunchProvided_True.Checked = true; } else { rdoClientEventIsLunchProvided_False.Checked = true; } if (_clientEvent.IsUsingUpperPaddock) { cbClientEventIsUsingUpperPaddock.Checked = true; } else { cbClientEventIsUsingUpperPaddock.Checked = false; } if (_clientEvent.IsUsingMiddlePaddock) { cbClientEventIsUsingMiddlePaddock.Checked = true; } else { cbClientEventIsUsingMiddlePaddock.Checked = false; } if (_clientEvent.IsUsingLowerPaddock) { cbClientEventIsUsingLowerPaddock.Checked = true; } else { cbClientEventIsUsingLowerPaddock.Checked = false; } if (_clientEvent.WorkerCalloutSent) { rdoClientEventWorkerCalloutSent_True.Checked = true; } else { rdoClientEventWorkerCalloutSent_False.Checked = true; } if (_clientEvent.RequireSafetyDemo) { rdoClientEventRequireSafetyDemo_True.Checked = true; } else { rdoClientEventRequireSafetyDemo_False.Checked = true; } if (_clientEvent.IsDeleted) { rdoClientEventIsDeleted_Disabled.Checked = true; } else { rdoClientEventIsDeleted_Enabled.Checked = true; } }
/// <summary> /// btnClientAdd_Click - for adding client for client event /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnClientAdd_Click(object sender, EventArgs e) { DataGridViewForm dataGridViewForm = new DataGridViewForm(this, ClientDataAccess.LoadClient()); dataGridViewForm.ShowDialog(); }