protected void gridLeftBtnAcceptAll_Click(object sender, EventArgs e) { foreach (GridViewRow row in gridViewLeftPanel1.Rows) { CheckBox cb = (CheckBox)row.FindControl("gridLeftChkBoxSelect"); if (cb.Checked) { int userid = Convert.ToInt32(Session["UserId"]); JobTracker jobtracker = new JobTracker(); JobTrackerHistory jtHist = new JobTrackerHistory(); //var data = jobtracker.GetRequestNeededApproval(userid); Label jobtrackId = (Label)row.FindControl("gridLeftlblJobTrackId"); jobtracker = jobtracker.GetJobTracker(Convert.ToInt32(jobtrackId.Text), false); if (jobtracker.ActionRequest == "Delete") { jobtracker.Status = "Approved"; jtHist = jtHist.ConvertToHistory(jobtracker); jobtracker.Delete(jobtracker.Id); } else { jobtracker.Status = "Approved"; jobtracker.Update(jobtracker); jtHist = jtHist.ConvertToHistory(jobtracker); } jtHist.Insert(jtHist); } } gridLeftChkBoxSelectAll.Checked = false; InitializeGridViewLeftPanel1(new List<string>()); InitializeGridViewLeftPanel2(); InitializeGridViewLeftPanel3(); }
protected void lnkBtn_Command(object sender, CommandEventArgs e) { if (e.CommandName == "JobOverviewDetails") { JobTracker j = new JobTracker(); j = j.GetJobTracker(Convert.ToInt32(e.CommandArgument),false); modalDetailLabelName.Text = j.fullname; modalDetailLabelJobType.Text = j.jobtype; modalDetailLabelJobStatus.Text = j.JobStatus; modalDetailLabelDate.Text = Convert.ToDateTime(j.ScheduleDate).ToString("dd-MMM-yyyy"); modalDetailLabelStartTime.Text = Convert.ToDateTime(j.StartTime).ToString("hh:mm tt"); modalDetailLabelEndTime.Text = Convert.ToDateTime(j.EndTime).ToString("hh:mm tt"); modalDetailTxtBoxRemarks.Text = j.Remarks; this.programmaticModalPopupDetail.Show(); } else if (e.CommandName == "JobOverviewSummary") { JobTypeDepartment jobtypeDepartment = new JobTypeDepartment(); JobTracker jobtracker = new JobTracker(); string argument = e.CommandArgument.ToString(); string[] s = argument.Split('|'); var jobtypes = jobtypeDepartment.GetJobOverviewJobType(Convert.ToInt32(s[0])); Dictionary<string, string> repeaterdata = new Dictionary<string, string>(); for (int i = 0; i < jobtypes.Count; i++) { JobTracker j = jobtracker.GetJobTrackerJobOverview(jobtypes[i].Id, s[2], s[1], Convert.ToDateTime(txtBoxStartDate.Text + " 00:00:00"), Convert.ToDateTime(txtBoxEndDate.Text + " 23:59:59"), Convert.ToInt32(s[0])); if (j == null) { repeaterdata.Add(jobtypes[i].Description, ""); } else { repeaterdata.Add(jobtypes[i].Description, j.JobStatus + " " + Convert.ToDateTime(j.EndTime).ToString("dd-MMM-yyyy")); } } modalSummaryRepeater.DataSource = repeaterdata; modalSummaryRepeater.DataBind(); programmaticModalPopupSummary.Show(); } }
protected void modalBtnConfirm_Command(object sender, CommandEventArgs e) { string[] remarks = modalTxtBoxRemarks.Text.Replace("\n"," ").Trim().Split(' '); int counter = 0; Regex rgx = new Regex("[^a-zA-Z0-9]"); for (int i = 0; i < remarks.Length; i++) { if (rgx.Replace(remarks[i],"").Trim() != "") { counter++; } } if (counter > 2) { int userid = Convert.ToInt32(Session["UserId"]); if (e.CommandName == "RejectAll") { foreach (GridViewRow row in gridViewLeftPanel1.Rows) { CheckBox cb = (CheckBox)row.FindControl("gridLeftChkBoxSelect"); if (cb.Checked) { JobTracker jobtracker = new JobTracker(); JobTrackerHistory jtHist = new JobTrackerHistory(); Label jobtrackId = (Label)row.FindControl("gridLeftlblJobTrackId"); jobtracker = jobtracker.GetJobTracker(Convert.ToInt32(jobtrackId.Text), false); jobtracker.ApprovedBy = userid; jobtracker.LastUpdatedBy = userid; jobtracker.LastUpdateDate = DateTime.Now; jobtracker.SupervisorRemarks = modalTxtBoxRemarks.Text; jobtracker.Status = "Rejected"; jobtracker.Update(jobtracker); jtHist = jtHist.ConvertToHistory(jobtracker); jtHist.Insert(jtHist); } } gridLeftChkBoxSelectAll.Checked = false; InitializeGridViewLeftPanel1(new List<string>()); } else { JobTracker jobtracker = new JobTracker(); JobTrackerHistory jtHist = new JobTrackerHistory(); int id = Convert.ToInt32(e.CommandArgument); jobtracker = jobtracker.GetJobTracker(id, false); jobtracker.ApprovedBy = userid; jobtracker.LastUpdatedBy = userid; jobtracker.LastUpdateDate = DateTime.Now; jobtracker.SupervisorRemarks = modalTxtBoxRemarks.Text; jobtracker.Status = "Rejected"; jobtracker.Update(jobtracker); jtHist = jtHist.ConvertToHistory(jobtracker); jtHist.Insert(jtHist); List<string> selectedJobtrackerId = GetGridViewLeftPanel1SelectedJobIds(); InitializeGridViewLeftPanel1(selectedJobtrackerId); } InitializeGridViewLeftPanel2(); InitializeGridViewLeftPanel3(); } else { modalBottomLabelError.Text = "Minimum Three(3) Words"; modalBottomLabelError.Visible = true; programmaticModalPopup.Show(); } }
protected void gridViewLeftPanel1_RowCommand(object sender, GridViewCommandEventArgs e) { int userid = Convert.ToInt32(Session["UserId"]); int index = Convert.ToInt32(e.CommandArgument); JobTracker jobtracker = new JobTracker(); JobTrackerHistory jtHist = new JobTrackerHistory(); //var data = jobtracker.GetRequestNeededApproval(userid); Label jobtrackId = (Label)gridViewLeftPanel1.Rows[index].FindControl("gridLeftlblJobTrackId"); jobtracker = jobtracker.GetJobTracker(Convert.ToInt32(jobtrackId.Text),false); //data[index].LastUpdateDate = DateTime.Now; //data[index].LastUpdatedBy = userid; jobtracker.ApprovedBy = userid; jobtracker.LastUpdateDate = DateTime.Now; jobtracker.LastUpdatedBy = userid; if(e.CommandName == "AcceptRequest") { if (jobtracker.ActionRequest == "Delete") { jobtracker.Status = "Approved"; jtHist = jtHist.ConvertToHistory(jobtracker); jobtracker.Delete(jobtracker.Id); } else { jobtracker.Status = "Approved"; jobtracker.Update(jobtracker); jtHist = jtHist.ConvertToHistory(jobtracker); } jtHist.Insert(jtHist); List<string> selectedJobtrackerId = GetGridViewLeftPanel1SelectedJobIds(); InitializeGridViewLeftPanel1(selectedJobtrackerId); InitializeGridViewLeftPanel2(); InitializeGridViewLeftPanel3(); } else if (e.CommandName == "RejectRequest") { //data[index].Status = "Rejected"; modalBottomLabelError.Visible = false; modalBottomLabelError.Text = ""; modalBtnConfirm.CommandArgument = jobtracker.Id.ToString(); modalBtnConfirm.CommandName = "Reject"; modalTxtBoxRemarks.Text = ""; programmaticModalPopup.Show(); //jobtracker.Update(data[index]); //InitializeGridViewLeft(); } }
protected void gridViewJobTrack_Command(object sender, GridViewCommandEventArgs e) { if (e.CommandName == "Select") { modalBtnDelete.Visible = true; DateTime date = Convert.ToDateTime(txtBoxDate.Text); int i = Convert.ToInt32(e.CommandArgument); int userid = Convert.ToInt32(Session["UserId"]); int jobtrackerId = Convert.ToInt32(((Label)gridJobTrack.Rows[i].FindControl("labelJobTrackId")).Text); bool noError = true; if (date.CompareTo(DateTime.Today) < 0) { SupervisorMapping supmap = new SupervisorMapping(); if (supmap.GetActiveSupervisors(userid).Count < 1) { noError = false; panelAlertHeader2.CssClass = "modalAlertHeader"; alertModalBtnOK2.CssClass = "buttonalert"; labelAlertHeader2.Text = "Error"; labelAlertMessage2.Text = "Sorry you cannot edit job on previous date without a direct supervisor. Please contact your system administrator."; programmaticAlertModalPopup2.Show(); } } else { JobTracker jobtracker = new JobTracker(); string errMsg = ""; errMsg = jobtracker.GetError(userid, date, 7); if (errMsg.Trim() != "") { noError = false; panelAlertHeader2.CssClass = "modalAlertHeader"; alertModalBtnOK2.CssClass = "buttonalert"; labelAlertHeader2.Text = "Error"; labelAlertMessage2.Text = errMsg.Trim() + " Please settle error first."; programmaticAlertModalPopup2.Show(); } } if(noError) { JobTracker jobtracker = new JobTracker(); jobtracker = jobtracker.GetJobTracker(jobtrackerId,false); //List<JobTracker> datalist = new List<JobTracker>(); //datalist = jobtracker.GetJobTrackerList(userid, date); modalLabelError.Text = ""; modalLabelError.Visible = false; modalBtnSubmit.CommandArgument = jobtracker.Id.ToString(); modalBtnDelete.CommandArgument = jobtracker.Id.ToString(); InitializeModalJobType(jobtracker.JobTypeId.ToString()); //InitializeModalStartTime(jobtracker.StartTime.ToString()); InitializeModalJobStatus(jobtracker.JobStatus == null ? "" : jobtracker.JobStatus.Trim()); bool generateBlank = false; if (date.CompareTo(DateTime.Today) == 0) generateBlank = true; Session["StartTime"] = Convert.ToDateTime(jobtracker.StartTime).TimeOfDay.ToString(); GenerateStartHour(Convert.ToDateTime(jobtracker.StartTime).TimeOfDay.ToString()); GenerateStartMin(Convert.ToInt32(modalDropDownStartTimeHour.SelectedItem.Value), Convert.ToDateTime(jobtracker.StartTime).TimeOfDay.ToString()); string endtime = ""; if (jobtracker.EndTime != null) endtime = jobtracker.EndTime.ToString(); //InitializeModalEndTime(endtime); GenerateEndHour(Convert.ToInt32(modalDropDownStartTimeHour.SelectedItem.Value), Convert.ToInt32(modalDropDownStartTimeMin.SelectedItem.Value), generateBlank, endtime == "" ? "" : Convert.ToDateTime(jobtracker.EndTime).ToString()); GenerateEndMin(Convert.ToInt32(modalDropDownStartTimeHour.SelectedItem.Value), Convert.ToInt32(modalDropDownStartTimeMin.SelectedItem.Value), modalDropDownEndTimeHour.SelectedItem.Text.Trim(), endtime == "" ? "" : Convert.ToDateTime(jobtracker.EndTime).TimeOfDay.ToString()); //if (datalist[i].ApprovedBy != null && datalist[i].ApprovedBy != userid && datalist[i].ApprovedBy != 0) //{ // //InitializeModalSupervisor(datalist[i].ApprovedBy.ToString()); // //modalLabelSupervisor.Visible = true; // //modalLabelSupColon.Visible = true; // //modalDropDownSupervisor.Visible = true; //} //else if (date.CompareTo(DateTime.Today) < 0) //{ //InitializeModalSupervisor(); //modalLabelSupervisor.Visible = true; //modalLabelSupColon.Visible = true; //modalDropDownSupervisor.Visible = true; //} //else //{ // //modalLabelSupervisor.Visible = false; // //modalLabelSupColon.Visible = false; // //modalDropDownSupervisor.Visible = false; //} if (jobtracker.JobIdNumber != null && jobtracker.JobIdNumber.Trim() != "") { modalTxtBoxJobId.Text = jobtracker.JobIdNumber; JobTracker jobTracker = new JobTracker(); jobTracker = jobTracker.GenerateHWAndSW(modalTxtBoxJobId.Text.Trim()); modallabelBoxJobDescription.Text = jobTracker.Description; modallabelCustomer.Text = jobTracker.Customer; modalLabelHWSW.Text = jobTracker.HWNo; modalLabelHWSW.ToolTip = jobTracker.SWNo; modalLabelEvalNo.Text = jobTracker.EvalNo; } modalTxtBoxRemarks.Text = jobtracker.Remarks == null ? "" : jobtracker.Remarks.Trim(); Page.Validate(); this.programmaticModalPopup.Show(); } } }
protected void modalBtnSubmit_Command(object sender, CommandEventArgs e) { bool haserror = false; string errormessage = ""; if (modalLabelError.Visible == true) { errormessage = modalLabelError.Text; haserror = true; } else if (modalReqJobStatus.Enabled == true && modalDropDownJobStatus.SelectedItem.Value == "Completed" && modalDropDownEndTimeHour.SelectedItem.Text == "--") { errormessage = "Cannot set job status as Completed without selecting End Time."; haserror = true; } if (haserror) { //System.Web.HttpContext.Current.Response.Write("<SCRIPT LANGUAGE='JavaScript'>alert('Error: "+errormessage+"')</SCRIPT>"); panelAlertHeader2.CssClass = "modalAlertHeader"; alertModalBtnOK2.CssClass = "buttonalert"; labelAlertHeader2.Text = "Error"; labelAlertMessage2.Text = errormessage; this.programmaticModalPopup.Show(); programmaticAlertModalPopup2.Show(); } else { DateTime selectedDate = DateTime.Parse(txtBoxDate.Text); int userid = Convert.ToInt32(Session["UserId"]); JobTracker jobTracker = new JobTracker(); JobTrackerHistory jtHist = new JobTrackerHistory(); //DateTime startTime = DateTime.Parse(selectedDate.Year + "-" + selectedDate.Month + "-" + selectedDate.Day + " " + modalDropDownStartTime.SelectedValue + ":00"); DateTime startTime = DateTime.Parse(selectedDate.Year + "-" + selectedDate.Month + "-" + selectedDate.Day + " " + modalDropDownStartTimeHour.SelectedValue+":"+modalDropDownStartTimeMin.SelectedValue + ":00"); //DateTime endTime = DateTime.Parse(selectedDate.Year + "-" + selectedDate.Month + "-" + selectedDate.Day + " " + modalDropDownEndTime.SelectedValue + ":00"); DateTime endTime; if (modalDropDownEndTimeHour.SelectedValue == "24") //end date selected is 12:00 AM next day { endTime = DateTime.Parse((selectedDate.AddDays(1)).Year + "-" + (selectedDate.AddDays(1)).Month + "-" + (selectedDate.AddDays(1)).Day + " 00:00:00"); } else { endTime = DateTime.Parse(selectedDate.Year + "-" + selectedDate.Month + "-" + selectedDate.Day + " " + modalDropDownEndTimeHour.SelectedValue + ":" + modalDropDownEndTimeMin.SelectedValue + ":00"); } jobTracker.StartTime = startTime; jobTracker.ScheduleDate = selectedDate; //if (modalDropDownEndTime.SelectedItem.Text != "Select End Time") if (modalDropDownEndTimeHour.SelectedItem.Text != "--") { jobTracker.EndTime = endTime; } jobTracker.JobTypeId = Convert.ToInt32(modalDropDownJobType.SelectedValue); jobTracker.JobIdNumber = modalTxtBoxJobId.Text.Trim(); jobTracker.Remarks = modalTxtBoxRemarks.Text.Trim(); jobTracker.LastUpdateDate = DateTime.Now; jobTracker.LastUpdatedBy = userid; jobTracker.UserId = userid; jobTracker.HWNo = modalLabelHWSW.Text; jobTracker.SWNo = modalLabelHWSW.ToolTip; jobTracker.Customer = modallabelCustomer.Text; jobTracker.EvalNo = modalLabelEvalNo.Text; jobTracker.Description = modallabelBoxJobDescription.Text; //if (jobTracker.JobIdNumber.Trim() != "") jobTracker.JobStatus = modalDropDownJobStatus.SelectedItem.Value; if (modalReqJobStatus.Enabled == false) // Put blank on task that does not require job status. jobTracker.JobStatus = ""; if (selectedDate.CompareTo(DateTime.Today) == 0) { jobTracker.ApprovedBy = userid; //if (modalDropDownEndTime.SelectedItem.Text != "Select End Time") if (modalDropDownEndTimeHour.SelectedItem.Text != "--") jobTracker.Status = "Approved"; else jobTracker.Status = "Pending"; } else { jobTracker.Status = "For Approval"; } if (e.CommandArgument.ToString() == "Add") { if (selectedDate.CompareTo(DateTime.Today) != 0) { if ((DateTime.Now.Subtract(startTime)).TotalHours < 24) { jobTracker.Status = "Approved"; jobTracker.ApprovedBy = userid; } } jobTracker.CreateDate = DateTime.Now; jobTracker.SupervisorRemarks = ""; jobTracker.CreatedBy = userid; jobTracker.ActionRequest = "Add"; jobTracker.Insert(jobTracker); jobTracker = jobTracker.GetJobTracker(Convert.ToInt32(jobTracker.CreatedBy), Convert.ToInt32(jobTracker.LastUpdatedBy), Convert.ToDateTime(jobTracker.StartTime), Convert.ToInt32(jobTracker.JobTypeId), jobTracker.ActionRequest, jobTracker.Status,false); } else { if (selectedDate.CompareTo(DateTime.Today) != 0) { if ((DateTime.Now.Subtract(startTime)).TotalHours < 2) { jobTracker.Status = "Approved"; jobTracker.ApprovedBy = userid; } } jobTracker.Id = Convert.ToInt32(e.CommandArgument); jobTracker.ActionRequest = "Update"; jobTracker.Update(jobTracker); } //jobTracker.CreateDate = DateTime.Now; jtHist = jtHist.ConvertToHistory(jobTracker); jtHist.Insert(jtHist); InitializeWorkingHours(); InitializeGrid(); this.programmaticModalPopup.Hide(); } }
protected void modalBtnDelete_Command(object sender, CommandEventArgs e) { DateTime selectedDate = DateTime.Parse(txtBoxDate.Text); int userid = Convert.ToInt32(Session["UserId"]); JobTracker jobTracker = new JobTracker(); JobTrackerHistory jtHist = new JobTrackerHistory(); jobTracker.Id = Convert.ToInt32(e.CommandArgument); jobTracker = jobTracker.GetJobTracker(jobTracker.Id,false); if (selectedDate.CompareTo(DateTime.Today) == 0 || (jobTracker.Status == "Rejected" && jobTracker.ActionRequest != "Delete")) { jobTracker.ActionRequest = "Delete"; jobTracker.Status = "Approved"; jobTracker.LastUpdateDate = DateTime.Now; jobTracker.LastUpdatedBy = userid; jtHist = jtHist.ConvertToHistory(jobTracker); jobTracker.Delete(jobTracker.Id); } else { jobTracker.ActionRequest = "Delete"; jobTracker.Status = "For Approval"; jobTracker.LastUpdateDate = DateTime.Now; jobTracker.LastUpdatedBy = userid; jobTracker.Update(jobTracker); jtHist = jtHist.ConvertToHistory(jobTracker); } jtHist.Insert(jtHist); InitializeWorkingHours(); InitializeGrid(); }
private void RunBreakButtonActionForShifting() { int userid = Convert.ToInt32(Session["UserId"]); JobType jobtype = new JobType(); jobtype = jobtype.GetDefaultBreak(); DateTime selectedDate = DateTime.Parse(txtBoxDate.Text); JobTracker jobtracker = new JobTracker(); int jobtrackid = 0; bool noError = true; User user = new User(); user = user.GetUser(userid, selectedDate); TimeSpan cutOffTime = user.GetMyCutOfTime(); if (BtnBreak.Text == "Take a break") { DateTime startTime = new DateTime(); if (gridJobTrack.Rows.Count > 0) { jobtrackid = Convert.ToInt32(((Label)gridJobTrack.Rows[gridJobTrack.Rows.Count - 1].FindControl("labelJobTrackId")).Text); jobtracker = jobtracker.GetJobTracker(jobtrackid, false); JobType jtype = jobtype.GetJobType(Convert.ToInt32(jobtracker.JobTypeId)); if (Convert.ToDateTime(jobtracker.StartTime).TimeOfDay < cutOffTime && DateTime.Now.TimeOfDay >= cutOffTime) { if (jobtracker.EndTime == null) { noError = false; TimeSetting tsetting = new TimeSetting(); tsetting = tsetting.GetTimeSetting(); panelAlertHeader2.CssClass = "modalAlertHeader"; alertModalBtnOK2.CssClass = "buttonalert"; labelAlertHeader2.Text = "Error"; labelAlertMessage2.Text = "Please close all task first."; } else { GenerateStartHour(); GenerateStartMin(Convert.ToInt32(modalDropDownStartTimeHour.SelectedItem.Value)); startTime = DateTime.Parse(selectedDate.Year + "-" + selectedDate.Month + "-" + selectedDate.Day + " " + modalDropDownStartTimeHour.SelectedValue + ":" + modalDropDownStartTimeMin.SelectedValue + ":00"); } } else { if (jobtracker.EndTime == null) { DateTime stime = Convert.ToDateTime(jobtracker.StartTime); GenerateEndHour(stime.Hour, stime.Minute, true); GenerateEndMin(stime.Hour, stime.Minute, "--"); modalDropDownEndTimeHour.SelectedIndex = (modalDropDownEndTimeHour.Items.Count - 1); GenerateEndMin(stime.Hour, stime.Minute, modalDropDownEndTimeHour.SelectedItem.Text.Trim(), modalDropDownEndTimeMin.Items.Count == 0 ? "" : modalDropDownEndTimeHour.Items[modalDropDownEndTimeHour.Items.Count - 1].Text.Trim() + ":" + modalDropDownEndTimeMin.SelectedItem.Text.Trim()); if (modalDropDownEndTimeHour.Items[modalDropDownEndTimeHour.Items.Count - 1].Text != "--") { if (modalDropDownEndTimeHour.SelectedValue == "24") //end date selected is 12:00 AM next day { jobtracker.EndTime = DateTime.Parse((selectedDate.AddDays(1)).Year + "-" + (selectedDate.AddDays(1)).Month + "-" + (selectedDate.AddDays(1)).Day + " 00:00:00"); } else { jobtracker.EndTime = DateTime.Parse(selectedDate.Year + "-" + selectedDate.Month + "-" + selectedDate.Day + " " + modalDropDownEndTimeHour.Items[modalDropDownEndTimeHour.Items.Count - 1].Value + ":" + modalDropDownEndTimeMin.Items[modalDropDownEndTimeMin.Items.Count - 1].Value + ":00"); } jobtracker.Status = "Approved"; jobtracker.ApprovedBy = userid; jobtracker.ActionRequest = "Update"; jobtracker.Update(jobtracker); startTime = Convert.ToDateTime(jobtracker.EndTime); InitializeGrid(); } else { noError = false; TimeSetting tsetting = new TimeSetting(); tsetting = tsetting.GetTimeSetting(); panelAlertHeader2.CssClass = "modalAlertHeader"; alertModalBtnOK2.CssClass = "buttonalert"; labelAlertHeader2.Text = "Error"; labelAlertMessage2.Text = "Cannot take a break without spending at least " + tsetting + " minutes on the last task."; } } else { startTime = Convert.ToDateTime(jobtracker.EndTime); } } } else { GenerateStartHour(); GenerateStartMin(Convert.ToInt32(modalDropDownStartTimeHour.SelectedItem.Value)); startTime = DateTime.Parse(selectedDate.Year + "-" + selectedDate.Month + "-" + selectedDate.Day + " " + modalDropDownStartTimeHour.SelectedValue + ":" + modalDropDownStartTimeMin.SelectedValue + ":00"); } if (noError) { jobtracker = new JobTracker(); jobtracker.StartTime = startTime; jobtracker.Status = "Pending"; jobtracker.JobStatus = ""; jobtracker.ApprovedBy = userid; jobtracker.ActionRequest = "Add"; jobtracker.UserId = userid; jobtracker.CreateDate = DateTime.Now; jobtracker.CreatedBy = userid; jobtracker.LastUpdateDate = DateTime.Now; jobtracker.LastUpdatedBy = userid; jobtracker.Description = jobtype.Description; jobtracker.JobTypeId = jobtype.Id; jobtracker.ScheduleDate = selectedDate; jobtracker.Remarks = ""; jobtracker.Insert(jobtracker); InitializeGrid(); } else { programmaticAlertModalPopup2.Show(); } } else if (BtnBreak.Text == "End break") { jobtrackid = Convert.ToInt32(((Label)gridJobTrack.Rows[gridJobTrack.Rows.Count - 1].FindControl("labelJobTrackId")).Text); jobtracker = jobtracker.GetJobTracker(jobtrackid, false); jobtracker.LastUpdateDate = DateTime.Now; jobtracker.LastUpdatedBy = userid; if (jobtracker.JobTypeId == jobtype.Id) { DateTime stime = Convert.ToDateTime(jobtracker.StartTime); GenerateEndHour(stime.Hour, stime.Minute, true); GenerateEndMin(stime.Hour, stime.Minute, "--"); modalDropDownEndTimeHour.SelectedIndex = (modalDropDownEndTimeHour.Items.Count - 1); GenerateEndMin(stime.Hour, stime.Minute, modalDropDownEndTimeHour.SelectedItem.Text.Trim(), modalDropDownEndTimeMin.Items.Count == 0 ? "" : modalDropDownEndTimeHour.Items[modalDropDownEndTimeHour.Items.Count - 1].Text.Trim() + ":" + modalDropDownEndTimeMin.SelectedItem.Text.Trim()); if (modalDropDownEndTimeHour.Items[modalDropDownEndTimeHour.Items.Count - 1].Text != "--") { if (modalDropDownEndTimeHour.SelectedValue == "24") //end date selected is 12:00 AM next day { jobtracker.EndTime = DateTime.Parse((selectedDate.AddDays(1)).Year + "-" + (selectedDate.AddDays(1)).Month + "-" + (selectedDate.AddDays(1)).Day + " 00:00:00"); } else { jobtracker.EndTime = DateTime.Parse(selectedDate.Year + "-" + selectedDate.Month + "-" + selectedDate.Day + " " + modalDropDownEndTimeHour.Items[modalDropDownEndTimeHour.Items.Count - 1].Value + ":" + modalDropDownEndTimeMin.Items[modalDropDownEndTimeMin.Items.Count - 1].Value + ":00"); } jobtracker.Status = "Approved"; jobtracker.ApprovedBy = userid; jobtracker.ActionRequest = "Update"; jobtracker.Update(jobtracker); InitializeGrid(); } else//delete break if start time and end time are the same { jobtracker.Delete(jobtracker.Id); InitializeGrid(); } } if (gridJobTrack.Rows.Count > 1) // continue the last created job { for (int i = gridJobTrack.Rows.Count - 1; i >= 0; i--) { jobtrackid = Convert.ToInt32(((Label)gridJobTrack.Rows[i].FindControl("labelJobTrackId")).Text); JobTracker jtracker = jobtracker.GetJobTracker(jobtrackid, false); JobType jtype = jobtype.GetJobType(Convert.ToInt32(jtracker.JobTypeId)); if (jtype.ComputeTime == true) { jtracker.StartTime = jobtracker.EndTime; jtracker.UserId = userid; jtracker.CreateDate = DateTime.Now; jtracker.CreatedBy = userid; jtracker.LastUpdateDate = DateTime.Now; jtracker.LastUpdatedBy = userid; jtracker.EndTime = null; jtracker.ActionRequest = "Add"; jtracker.Status = "Approved"; if(Convert.ToDateTime(jobtracker.EndTime).TimeOfDay != new TimeSpan(0,0,0)) //only insert if endtime is not equal to 24:00 (next day) jtracker.Insert(jtracker); InitializeGrid(); break; } } } } }