private void Page_Load(object sender, System.EventArgs e) { DateTime dtCurrentDate; int l_iResult; try { OrgId = _functions.GetUserOrgId(HttpContext.Current.User.Identity.Name, false); if(Request.QueryString["sid"] == null || Request.QueryString["equipid"] == null) { Session["lastpage"] = "wo_showEquipsForInspect.aspx"; Session["error"] = _functions.ErrorMessage(104); Response.Redirect("error.aspx", false); return; } try { EquipId = Convert.ToInt32(Request.QueryString["equipid"]); InspectSchedDetailId = Convert.ToInt32(Request.QueryString["sid"]); } catch(FormatException fex) { Session["lastpage"] = "wo_showEquipsForInspect.aspx"; Session["error"] = _functions.ErrorMessage(105); Response.Redirect("error.aspx", false); return; } NextBackControl.BackPage = "wo_showEquipsForInspect.aspx"; NextBackControl.NextText = " << Create >> "; if(!IsPostBack) { dtCurrentDate = DateTime.Now; // getting the main (fixed) data order = new clsWorkOrders(); order.iOrgId = OrgId; order.iEquipId = EquipId; order.iInspectSchedDetailId = InspectSchedDetailId; order.daCurrentDate = dtCurrentDate; l_iResult = order.GetInfoForCreateWOInspection(); if(l_iResult == -1) { Session["lastpage"] = "wo_showEquipsForInspect.aspx"; Session["error"] = _functions.ErrorMessage(147); Response.Redirect("error.aspx", false); return; } lblEquipId.Text = order.sEquipId.Value; lblWOType.Text = order.sType.Value; lblInspectSchedule.Text = order.sInspectSchedule.Value; lblInspectName.Text = order.sInspectionName.Value; lblStatus.Text = order.sStatusId.Value; lblLastInspectDate.Text = order.sLastInspection.Value; lblDateRange.Text = order.sDatesRange.Value; if(order.sStatusId.Value == "No Service History") { dtCurrentDate = dtCurrentDate.AddMinutes(60-dtCurrentDate.Minute); //lblScheduledDate.Text = dtCurrentDate.ToLongDateString() + " " + dtCurrentDate.ToShortTimeString(); lblScheduledDate.Text = "System cannot calculate the optimal date for inspection without history. Please select the next scheduled date of inspection."; lblScheduledDate.Font.Italic = true; adtScheduled.Date = dtCurrentDate; // if exist a future work order then alert if(l_iResult == 1) { Header.ErrorMessage = "Warning: " + _functions.ErrorMessage(152); dtCurrentDate = dtCurrentDate.AddMinutes(60-dtCurrentDate.Minute); //lblScheduledDate.Text = dtCurrentDate.ToLongDateString() + " " + dtCurrentDate.ToLongTimeString(); adtScheduled.Date = dtCurrentDate; } } else { l_iResult = order.GetDateTimeOfForecastInspection(); if(l_iResult == -1) { // error Header.ErrorMessage = _functions.ErrorMessage(order.iErrorCode.Value); NextBackControl.NextEnabled = false; adtScheduled.Date = dtCurrentDate.AddMinutes(60-dtCurrentDate.Minute); return; } else { if(l_iResult == 1) Header.ErrorMessage = "Warning: " + _functions.ErrorMessage(152); // {dtCurrentDate = dtCurrentDate.AddMinutes(60-dtCurrentDate.Minute); // lblScheduledDate.Text = dtCurrentDate.ToLongDateString() + " " + dtCurrentDate.ToShortTimeString(); // adtScheduled.Date = dtCurrentDate; // return; } if(l_iResult == 2) Header.ErrorMessage = "Warning: " + _functions.ErrorMessage(149); if(dtCurrentDate < order.daScheduled.Value) dtCurrentDate = order.daScheduled.Value; else dtCurrentDate = dtCurrentDate.AddMinutes(60-dtCurrentDate.Minute); lblScheduledDate.Text = dtCurrentDate.ToLongDateString() + " " + dtCurrentDate.ToShortTimeString(); adtScheduled.Date = dtCurrentDate; } } } } catch(Exception ex) { _functions.Log(ex, HttpContext.Current.User.Identity.Name, SourcePageName); Session["lastpage"] = "wo_showEquipsForInspect.aspx"; Session["error"] = ex.Message; Session["error_report"] = ex.ToString(); Response.Redirect("error.aspx", false); } finally { if(order != null) order.Dispose(); } }
private void btSave_FormSubmit(object sender, EventArgs e) { string sDomenName; int l_iResult; try { SaveChangedItems(); order = new clsWorkOrders(); order.iOrgId = OrgId; order.iId = OrderId; order.iInspectionId = InspectId; order.iUserId = _functions.GetUserOrgId(HttpContext.Current.User.Identity.Name, true); order.iTechId = _functions.GetUserOrgId(HttpContext.Current.User.Identity.Name, true); order.sInitials = tbInitial.Text; order.sPIN = tbPIN.Text; order.daCurrentDate = _functions.CorrectDate(adtInspection.Date); switch(order.SigningInspectionList()) { case 0: if(cbAutoCreateWO.Checked) { order.iInspectSchedDetailId = (int)ViewState["InspectSchedDetailId"]; order.iEquipId = (int)ViewState["EquipId"]; order.daCurrentDate = _functions.CorrectDate(adtInspection.Date); l_iResult = order.GetDateTimeOfForecastInspection(); if(l_iResult == -1) { // error Header.ErrorMessage = _functions.ErrorMessage(order.iErrorCode.Value); } else { if(l_iResult == 2) { // sent email contain that inspection has been created but The Minimum through Maximum Date range is too small or the Holiday/No Service Date Ranges are too wide and the system is unable to identify any service dates available } order.SetInspectWorkOrder(); // redirect to the finish screen BackFinishScreen finish = new BackFinishScreen(); if(l_iResult == 1) finish.sMainText = "The Inspection has been completed successfully. <br>" + _functions.ErrorMessage(order.iErrorCode.Value); else finish.sMainText = "The Inspection has been completed successfully. <br>Next Inspection has been scheduled by " + order.daScheduled.Value.ToString() + " of work order"; finish.bMainMenuVisible = true; finish.sMainMenuText = "[Return to Main Menu]"; finish.sMainMenuURL = "main.aspx"; if(l_iResult == 1) finish.bContinueVisible = false; else { finish.bContinueVisible = true; finish.sContinueText = "[View the Work Order of Next Inspection]"; finish.sContinueURL = "wo_viewWorkOrder.aspx?id=" + order.iId.Value.ToString(); } finish.bViewVisible = true; finish.sViewText = "[Return to Work Order Detail]"; finish.sViewURL = "wo_viewWorkOrder.aspx?id=" + OrderId.ToString(); finish.bAdditionalVisible = false; finish.bPrintVisible = false; Session["BackFinish"] = finish; Response.Redirect("wo_finish.aspx", false); } } else Response.Redirect("wo_viewWorkOrder.aspx?id=" + OrderId.ToString() + "&#Issues", false); return; case -1: Header.ErrorMessage = _functions.ErrorMessage(140); break; case -2: Header.ErrorMessage = _functions.ErrorMessage(139); break; default: break; } repInspectItems.DataSource = new DataView(order.GetWorkOrderInspectItems()); repInspectItems.DataBind(); } catch(Exception ex) { _functions.Log(ex, HttpContext.Current.User.Identity.Name, SourcePageName); Session["lastpage"] = "wo_viewCompleteInspection.aspx?id=" + OrderId.ToString() + "&inspectid=" + InspectId.ToString(); Session["error"] = ex.Message; Session["error_report"] = ex.ToString(); Response.Redirect("error.aspx", false); } finally { if(order != null) order.Dispose(); } }