/// <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> /// btnSelectEvent_Click - for adding client event for mailing /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnSelectEvent_Click(object sender, EventArgs e) { DataGridViewForm dataGridViewForm = new DataGridViewForm(this, ClientEventDataAccess.LoadClientEvent()); dataGridViewForm.ShowDialog(); }
/// <summary> /// btnClientEventUpdate_Click - click event for update client event record /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnClientEventUpdate_Click(object sender, EventArgs e) { if (ValidateChildren(ValidationConstraints.Enabled)) { bool isValid = true; _clientEvent.ClientEventID = int.Parse(txtClientEventId.Text.Trim()); _clientEvent.WorkersRequested = int.Parse(txtWorkerRequested.Text.Trim()); _clientEvent.Date = txtClientEventDate.Text.Trim(); _clientEvent.IsLunchProvided = rdoClientEventIsLunchProvided_True.Checked ? true : false; _clientEvent.WorkerCalloutSent = rdoClientEventWorkerCalloutSent_True.Checked ? true : false; _clientEvent.RequireSafetyDemo = rdoClientEventRequireSafetyDemo_True.Checked ? true : false; if (cbClientEventIsUsingUpperPaddock.Checked != true && cbClientEventIsUsingMiddlePaddock.Checked != true && cbClientEventIsUsingLowerPaddock.Checked != true) { isValid = false; gbClientEventIsUsingPaddock.Focus(); errorProviderApp.SetError(gbClientEventIsUsingPaddock, "At least one paddock should be selected!"); } else { if (cbClientEventIsUsingUpperPaddock.Checked) { _clientEvent.IsUsingUpperPaddock = true; } else { _clientEvent.IsUsingUpperPaddock = false; } if (cbClientEventIsUsingMiddlePaddock.Checked) { _clientEvent.IsUsingMiddlePaddock = true; } else { _clientEvent.IsUsingMiddlePaddock = false; } if (cbClientEventIsUsingLowerPaddock.Checked) { _clientEvent.IsUsingLowerPaddock = true; } else { _clientEvent.IsUsingLowerPaddock = false; } } if (_clientEvent.ClientID == 0) { isValid = false; btnClientAdd.Focus(); errorProviderApp.SetError(btnClientAdd, "You havent select a client"); } if (_clientEvent.TrackID == 0) { isValid = false; btnTrackAdd.Focus(); errorProviderApp.SetError(btnTrackAdd, "You havent select a track"); } if (_clientsEvents_TrackWorkers.Count == 0) { isValid = false; btnManageTrackWorker.Focus(); errorProviderApp.SetError(btnManageTrackWorker, "You havent select any Track Worker"); } if (isValid) { try { // database insert statement ClientEventDataAccess.UpdateClientEvent(_clientEvent, _clientEvent.ClientEventID); ClientEvents_TrackWorkersDataAccess.RemoveAllClientEventTrackWorker(_clientEvent.ClientEventID); ClientEvents_TrackWorkersDataAccess.SaveClientEventTrackWorker(_clientsEvents_TrackWorkers, _clientEvent.ClientEventID); } catch (Exception ex) { MessageBox.Show("Runtime Error\n" + ex.Message, "Unexpected Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { this.Close(); } } } }