Ejemplo n.º 1
0
        public int UpdateCausation(decimal incidentID)
        {
            int status = 0;

            using (PSsqmEntities ctx = new PSsqmEntities())
            {
                status = ctx.ExecuteStoreCommand("DELETE FROM INCFORM_CAUSATION WHERE INCIDENT_ID = " + incidentID.ToString());

                if (!string.IsNullOrEmpty(ddlCausation.SelectedValue))
                {
                    INCFORM_CAUSATION causation = new INCFORM_CAUSATION();
                    causation.INCIDENT_ID   = incidentID;
                    causation.CAUSEATION_CD = ddlCausation.SelectedValue;
                    causation.TEAM_LIST     = tbTeam.Text.Trim();
                    causation.LAST_UPD_BY   = SessionManager.UserContext.UserName();
                    causation.LAST_UPD_DT   = WebSiteCommon.LocalTime(DateTime.UtcNow, IncidentLocationTZ);
                    ctx.AddToINCFORM_CAUSATION(causation);

                    status = ctx.SaveChanges();

                    EHSIncidentMgr.UpdateIncidentStatus(incidentID, IncidentStepStatus.rootcauseComplete, WebSiteCommon.LocalTime(DateTime.UtcNow, IncidentLocationTZ));
                }
                else
                {
                }
            }

            return(status);
        }
        void InitializeForm()
        {
            //call function for get the attachment files for  Final Corrective Action.
            GetAttachments(IncidentId);

            IncidentId           = (IsEditContext) ? IncidentId : NewIncidentId;
            lblStatusMsg.Visible = false;

            LocalIncident = EHSIncidentMgr.SelectIncidentById(new PSsqmEntities(), IncidentId);
            if (LocalIncident == null)
            {
                return;
            }

            pnlAction.Visible = true;
            if (PageMode == PageUseMode.ViewOnly)
            {
                divTitle.Visible  = true;
                lblFormTitle.Text = Resources.LocalizedText.CorrectiveAction;
            }

            rptAction.DataSource = EHSIncidentMgr.GetCorrectiveActionList(IncidentId, WebSiteCommon.LocalTime(DateTime.UtcNow, IncidentLocationTZ), PageMode == PageUseMode.ViewOnly ? false : true);
            rptAction.DataBind();

            pnlAction.Enabled = PageMode == PageUseMode.ViewOnly ? false : EHSIncidentMgr.CanUpdateIncident(LocalIncident, IsEditContext, SysPriv.action, LocalIncident.INCFORM_LAST_STEP_COMPLETED);

            if (PageMode == PageUseMode.ViewOnly && rptAction.Items.Count == 0)
            {
                rptAction.Visible = false;
            }
        }
        private decimal GetTaskLocation(TASK_STATUS task)
        {
            decimal plantID = SessionManager.UserContext.HRLocation.Plant.PLANT_ID;

            switch ((TaskRecordType)task.RECORD_TYPE)
            {
            case TaskRecordType.HealthSafetyIncident:
            case TaskRecordType.PreventativeAction:
                INCIDENT incident = EHSIncidentMgr.SelectIncidentById(new PSsqmEntities(), task.RECORD_ID);
                if (incident != null && incident.DETECT_PLANT_ID.HasValue)
                {
                    plantID = (decimal)incident.DETECT_PLANT_ID;
                }
                break;

            case TaskRecordType.Audit:
                AUDIT audit = EHSAuditMgr.SelectAuditById(new PSsqmEntities(), task.RECORD_ID);
                if (audit != null && audit.DETECT_PLANT_ID.HasValue)
                {
                    plantID = (decimal)audit.DETECT_PLANT_ID;
                }
                break;
            }

            return(plantID);
        }
        public void PopulateInitialForm()
        {
            PSsqmEntities entities = new PSsqmEntities();
            decimal       typeId   = (IsEditContext) ? EditIncidentTypeId : SelectedTypeId;

            if (IncidentId > 0)
            {
                try
                {
                    LocalIncident = (from i in entities.INCIDENT where i.INCIDENT_ID == IncidentId select i).SingleOrDefault();
                    PLANT plant = SQMModelMgr.LookupPlant(entities, (decimal)LocalIncident.DETECT_PLANT_ID, "");
                    if (plant != null)
                    {
                        IncidentLocationTZ = plant.LOCAL_TIMEZONE;
                    }


                    if (PageMode == PageUseMode.ViewOnly)
                    {
                        divTitle.Visible  = true;
                        lblFormTitle.Text = Resources.LocalizedText.RootCause;
                    }

                    pnlRoot5Y.Enabled = PageMode == PageUseMode.ViewOnly ? false : EHSIncidentMgr.CanUpdateIncident(LocalIncident, IsEditContext, SysPriv.originate, LocalIncident.INCFORM_LAST_STEP_COMPLETED);
                }
                catch { }
            }

            InitializeForm();
        }
Ejemplo n.º 5
0
        protected string GetPlantName(decimal incidentId)
        {
            string content = "";

            content = EHSIncidentMgr.SelectIncidentLocationNameByIncidentId(incidentId);
            return(content);
        }
        void InitializeForm()
        {
            lblStatusMsg.Visible = false;
            pnlContain.Visible   = true;

            LocalIncident = EHSIncidentMgr.SelectIncidentById(new PSsqmEntities(), IncidentId);
            if (LocalIncident == null)
            {
                return;
            }

            PLANT plant = SQMModelMgr.LookupPlant(entities, (decimal)LocalIncident.DETECT_PLANT_ID, "");

            if (plant != null)
            {
                IncidentLocationTZ = plant.LOCAL_TIMEZONE;
            }

            pnlContain.Visible = true;
            if (PageMode == PageUseMode.ViewOnly)
            {
                divTitle.Visible  = true;
                lblFormTitle.Text = Resources.LocalizedText.InitialAction;
            }

            rptContain.DataSource = EHSIncidentMgr.GetContainmentList(IncidentId, WebSiteCommon.LocalTime(DateTime.UtcNow, IncidentLocationTZ), PageMode == PageUseMode.ViewOnly ? false : true);
            rptContain.DataBind();

            pnlContain.Enabled = PageMode == PageUseMode.ViewOnly ? false : EHSIncidentMgr.CanUpdateIncident(LocalIncident, IsEditContext, SysPriv.originate, LocalIncident.INCFORM_LAST_STEP_COMPLETED);
        }
        private void GetAttachments(decimal incidentId)
        {
            uploaderFinalCorrectiveAction.SetAttachmentRecordStep("1");
            uploaderFinalCorrectiveAction.SetReportOption(false);
            uploaderFinalCorrectiveAction.SetDescription(false);
            // Specifying postback triggers allows uploader to persist on other postbacks (e.g. 8D checkbox toggle)
            //uploader.RAUpload.PostbackTriggers = new string[] { "btnSubnavSave", "btnSaveReturn", "btnSaveContinue", "btnDelete", "btnDeleteInc", "btnSubnavIncident", "btnSubnavContainment", "btnSubnavRootCause", "btnSubnavAction", "btnSubnavApproval" };
            //uploader.RAUpload.PostbackTriggers = new string[] { "btnSubnavSave", "btnSaveReturn", "btnSaveContinue", "btnDelete", "btnDeleteInc", "btnSubnavIncident", "btnSubnavContainment", "btnSubnavRootCause", "btnSubnavAction", "btnSubnavApproval" };

            int attCnt = EHSIncidentMgr.AttachmentCounts(incidentId, 1);//Apply 1 for getting the attachment for  Final Corrective Action section.
            int px     = 128;

            if (attCnt > 0)
            {
                px = px + (attCnt * 30) + 35;
                uploaderFinalCorrectiveAction.GetUploadedFilesIncidentSection(40, incidentId, "", (int)Incident_Section.FinalCorrectiveAttachment);
            }
            else
            {
                uploaderFinalCorrectiveAction.GetBlinkATTACHMENT();
            }

            /*
             *
             */
            // Set the html Div height based on number of attachments to be displayed in the grid:
            //dvAttachLbl.Style.Add("height", px.ToString() + "px !important");
            //dvAttach.Style.Add("height", px.ToString() + "px !important");
        }
        public int AddUpdateINCFORM_ALERT(decimal incidentId)
        {
            lblStatusMsg.Visible = false;
            int  status            = 0;
            bool allFieldsComplete = true;

            localCtx = new PSsqmEntities();

            INCFORM_ALERT incidentAlert = EHSIncidentMgr.LookupIncidentAlert(localCtx, IncidentId);

            if (incidentAlert == null)  // new alert
            {
                incidentAlert             = new INCFORM_ALERT();
                incidentAlert.INCIDENT_ID = LocalIncident.INCIDENT_ID;
                incidentAlert.ALERT_TYPE  = ((int)TaskRecordType.HealthSafetyIncident).ToString();
                incidentAlert.CREATE_DT   = DateTime.UtcNow;
                incidentAlert.CREATE_BY   = SessionManager.UserContext.UserName();
                localCtx.AddToINCFORM_ALERT(incidentAlert);
                lblAlertStatus.Text = XLATList.Where(l => l.XLAT_GROUP == "TASK_STATUS" && l.XLAT_CODE == "0").FirstOrDefault().DESCRIPTION;
            }
            SaveAttachments(incidentId);
            incidentAlert.LOCATION_LIST = "";
            foreach (RadComboBoxItem item in ddlLocations.Items.Where(i => i.Checked == true && i.Value.Contains("BU") == false).ToList())
            {
                incidentAlert.LOCATION_LIST += string.IsNullOrEmpty(incidentAlert.LOCATION_LIST) ? item.Value : (item.Value + ",");
            }

            incidentAlert.ALERT_GROUP = "";
            foreach (RadComboBoxItem item in ddlNotifyGroup.Items.Where(i => i.Checked == true).ToList())
            {
                incidentAlert.ALERT_GROUP += string.IsNullOrEmpty(incidentAlert.ALERT_GROUP) ? item.Value : (item.Value + ",");
            }

            incidentAlert.RESPONSIBLE_GROUP = ddlResponsibleGroup.SelectedValue;
            //  incidentAlert.ALERT_DESC = tbAlertDesc.Text;
            incidentAlert.COMMENTS = tbComments.Text;
            incidentAlert.DUE_DT   = rdpDueDate.SelectedDate;



            // Update CEO-Comments value.
            incidentAlert.CEO_COMMENTS = tbCeoComments.Text.Trim();

            // send general notifications
            if (incidentAlert.INCIDENT_ALERT_ID < 1)
            {
                EHSNotificationMgr.NotifyIncidentAlert(LocalIncident, ((int)SysPriv.notify).ToString(), "380",
                                                       ddlLocations.Items.Where(i => i.Checked == true && i.Value.Contains("BU") == false).Select(i => Convert.ToDecimal(i.Value)).ToList());
            }

            List <TASK_STATUS> alertTaskList = UpdateAlertTaskList(EHSIncidentMgr.GetAlertTaskList(localCtx, LocalIncident.INCIDENT_ID));

            status = localCtx.SaveChanges();

            // send specific task assignments
            EHSNotificationMgr.NotifyIncidentAlertTaskAssignment(LocalIncident, alertTaskList.Where(l => l.RESPONSIBLE_ID.HasValue).ToList());

            return(status);
        }
Ejemplo n.º 9
0
        void InitializeForm()
        {
            IncidentId = (IsEditContext) ? EditIncidentId : NewIncidentId;

            pnlContain.Visible    = true;
            rptContain.DataSource = EHSIncidentMgr.GetContainmentList(IncidentId);
            rptContain.DataBind();
        }
        void InitializeForm()
        {
            IncidentId = (IsEditContext) ? EditIncidentId : NewIncidentId;

            pnlAction.Visible    = true;
            rptAction.DataSource = EHSIncidentMgr.GetFinalActionList(IncidentId);
            rptAction.DataBind();
        }
        void InitializeForm()
        {
            IncidentId = (IsEditContext) ? EditIncidentId : NewIncidentId;

            pnlRoot5Y.Visible       = true;
            rptRootCause.DataSource = EHSIncidentMgr.GetRootCauseList(IncidentId);
            rptRootCause.DataBind();
        }
Ejemplo n.º 12
0
        protected void UpdateDisplayState(DisplayState state, decimal incidentID)
        {
            try
            {
                switch (state)
                {
                case DisplayState.IncidentList:
                    SearchIncidents();
                    SessionManager.ClearReturns();
                    break;

                case DisplayState.IncidentNotificationNew:
                    SessionManager.ClearReturns();
                    if (rddlNewActionType.SelectedItem != null)
                    {
                        INCIDENT newIncident = new INCIDENT();
                        newIncident.DETECT_PLANT_ID = Convert.ToDecimal(ddlActionLocation.SelectedValue);
                        newIncident.ISSUE_TYPE_ID   = (decimal)EHSIncidentTypeId.PreventativeAction;
                        newIncident.ISSUE_TYPE      = rddlNewActionType.SelectedValue;
                        if (newIncident.DETECT_PLANT_ID < 1 || newIncident.ISSUE_TYPE_ID < 1)
                        {
                            ScriptManager.RegisterStartupScript(this, GetType(), "showalert", "alert('Error creating new PrevAction');", true);
                        }
                        else
                        {
                            SessionManager.ReturnObject = newIncident;
                            SessionManager.ReturnStatus = true;
                            Response.Redirect("/EHS/EHS_PrevActionForm.aspx");
                        }
                    }
                    break;

                case DisplayState.IncidentNotificationEdit:
                    SessionManager.ClearReturns();
                    INCIDENT theIncident = EHSIncidentMgr.SelectIncidentById(entities, incidentID);
                    if (theIncident != null)
                    {
                        SessionManager.ReturnObject = theIncident;
                        SessionManager.ReturnStatus = true;
                        string stepCmd = "";
                        if (!string.IsNullOrEmpty(Request.QueryString["s"]))                                   // from inbox/calendar assume this is a task assignment. direct to corrective actions page
                        {
                            stepCmd = ("?s=" + Request.QueryString["s"]);
                        }
                        Response.Redirect("/EHS/EHS_PrevActionForm.aspx" + stepCmd);
                    }
                    break;

                default:
                    SessionManager.ClearReturns();
                    break;
                }
            }
            catch (Exception ex)
            {
                ScriptManager.RegisterStartupScript(this, GetType(), "showalert", "alert('Error updating PrevAction display state:'" + ex.Message + ");", true);
            }
        }
Ejemplo n.º 13
0
        public static void NotifyOnCreate(decimal incidentId, decimal plantId)
        {
            var entities = new PSsqmEntities();

            decimal companyId = SessionManager.UserContext.HRLocation.Company.COMPANY_ID;
            decimal busOrgId  = SessionManager.UserContext.HRLocation.BusinessOrg.BUS_ORG_ID;
            var     emailIds  = new HashSet <decimal>();

            INCIDENT incident         = EHSIncidentMgr.SelectIncidentById(entities, incidentId);
            string   incidentLocation = EHSIncidentMgr.SelectIncidentLocationNameByIncidentId(incidentId);
            string   incidentType     = EHSIncidentMgr.SelectIncidentTypeByIncidentId(incidentId);

            List <ATTACHMENT> attachList = SQM.Website.Classes.SQMDocumentMgr.SelectAttachmentListByRecord(40, incidentId, "", "");

            List <NOTIFY> notifications = SQMModelMgr.SelectNotifyHierarchy(companyId, busOrgId, plantId, 0, TaskRecordType.HealthSafetyIncident);

            foreach (NOTIFY n in notifications)
            {
                if (n.NOTIFY_PERSON1 != null)
                {
                    emailIds.Add((decimal)n.NOTIFY_PERSON1);
                }
                if (n.NOTIFY_PERSON2 != null)
                {
                    emailIds.Add((decimal)n.NOTIFY_PERSON2);
                }
            }

            if (emailIds.Count > 0)
            {
                string appUrl = SQMSettings.SelectSettingByCode(entities, "MAIL", "TASK", "MailURL").VALUE;
                if (string.IsNullOrEmpty(appUrl))
                {
                    appUrl = "the website";
                }

                string emailSubject = "Incident Created: " + incidentType + " (" + incidentLocation + ")";
                string emailBody    = "A new incident has been created:<br/>" +
                                      "<br/>" +
                                      incidentLocation + "<br/>" +
                                      incidentType + "<br/>" +
                                      "<br/>" +
                                      incident.DESCRIPTION + "<br/>" +
                                      "<br/>" +
                                      "Please log in to " + appUrl + " to view the incident.";

                foreach (decimal eid in emailIds)
                {
                    string emailAddress = (from p in entities.PERSON where p.PERSON_ID == eid select p.EMAIL).FirstOrDefault();

                    Thread thread = new Thread(() => WebSiteCommon.SendEmail(emailAddress, emailSubject, emailBody, "", "web", attachList));
                    thread.IsBackground = true;
                    thread.Start();

                    //WebSiteCommon.SendEmail(emailAddress, emailSubject, emailBody, "");
                }
            }
        }
Ejemplo n.º 14
0
        protected void gvPreventLocationsList_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                decimal plantId = (decimal)gvPreventLocationsList.DataKeys[e.Row.RowIndex].Value;
                RadGrid rg      = (RadGrid)e.Row.FindControl("rgPlantContacts");

                var personList = EHSIncidentMgr.SelectEhsPeopleAtPlant(plantId);
                if (personList.Count > 0)
                {
                    rg.DataSource = personList;
                    rg.DataBind();

                    if (IsEditContext == true)
                    {
                        // Find and select people previously selected
                        PSsqmEntities entities = new PSsqmEntities();
                        foreach (GridDataItem dataItem in rg.Items)
                        {
                            decimal personId = (decimal)dataItem.GetDataKeyValue("PERSON_ID");
                            if (personId != null)
                            {
                                var verificationLine = (from iv in entities.INCIDENT_VERIFICATION
                                                        where iv.INCIDENT_ID == IncidentId &&
                                                        iv.PLANT_ID == plantId &&
                                                        iv.PERSON_ID == personId
                                                        select iv).FirstOrDefault();

                                if (verificationLine != null)
                                {
                                    dataItem.Selected = true;
                                    if (verificationLine.HAS_RESPONDED == true)
                                    {
                                        Label confirmedLabel = (Label)dataItem.FindControl("lblConfirmed");
                                        confirmedLabel.Visible = true;
                                    }
                                }
                            }
                        }
                    }
                }
                else
                {
                    e.Row.Visible = false;
                }

                var     comments = EHSIncidentMgr.SelectIncidentComments(IncidentId, plantId);
                Panel   pc       = (Panel)e.Row.FindControl("pnlComments");
                RadGrid rgc      = (RadGrid)e.Row.FindControl("rgPlantComments");
                if (comments.Count > 0)
                {
                    pc.Visible     = true;
                    rgc.DataSource = comments;
                    rgc.DataBind();
                }
            }
        }
        void InitializeForm()
        {
            List <INCFORM_ROOT5Y> rootCauseList = EHSIncidentMgr.GetRootCauseList(IncidentId, false);

            rootCauseList = EHSIncidentMgr.FormatRootCauseList(LocalIncident, rootCauseList);

            rptRootCause.DataSource = rootCauseList.OrderBy(l => l.PROBLEM_SERIES).ThenBy(l => l.ITEM_SEQ).ToList();
            rptRootCause.DataBind();
        }
        public void PopulateInitialForm()
        {
            PSsqmEntities entities = new PSsqmEntities();
            decimal       typeId   = (IsEditContext) ? EditIncidentTypeId : SelectedTypeId;

            formSteps      = EHSIncidentMgr.GetStepsForincidentTypeId(typeId);
            totalFormSteps = formSteps.Count();

            InitializeForm();
        }
Ejemplo n.º 17
0
        void InitializeForm()
        {
            IncidentId = (IsEditContext) ? EditIncidentId : NewIncidentId;

            //SetUserAccess("INCFORM_LOSTTIME_HIST");

            pnlLostTime.Visible    = true;
            rptLostTime.DataSource = EHSIncidentMgr.GetLostTimeList(IncidentId);
            rptLostTime.DataBind();
        }
        void InitializeForm()
        {
            IncidentId = (IsEditContext) ? EditIncidentId : NewIncidentId;

            SetUserAccess("INCFORM_APPROVAL");

            pnlApproval.Visible     = true;
            rptApprovals.DataSource = EHSIncidentMgr.GetApprovalList(IncidentId);
            rptApprovals.DataBind();
        }
        protected void rptAction_ItemCommand(object source, RepeaterCommandEventArgs e)
        {
            List <TASK_STATUS> actionList = GetActionListFromGrid();

            if (e.CommandArgument.ToString() == "ActionType")
            {
                Panel pnl = (Panel)e.Item.FindControl("pnlActionType");
                if (pnl.Visible)
                {
                    pnl.Visible = false;
                    pnl         = (Panel)e.Item.FindControl("pnlActionTypeSelect");
                    pnl.Visible = true;
                    HiddenField hf   = (HiddenField)e.Item.FindControl("hfActionType");
                    XLAT        xlat = XLATList.Where(l => l.XLAT_GROUP == "ACTION_CATEGORY" && l.XLAT_CODE == hf.Value).FirstOrDefault();
                    if (xlat != null)
                    {
                        Label lb = (Label)e.Item.FindControl("lblActionType");
                        lb.Text = xlat.DESCRIPTION;
                    }
                }
                else
                {
                    pnl.Visible = true;
                    pnl         = (Panel)e.Item.FindControl("pnlActionTypeSelect");
                    pnl.Visible = false;
                }
            }

            if (e.CommandArgument.ToString() == "Delete")
            {
                int delId = e.Item.ItemIndex;

                TASK_STATUS action = actionList.ElementAt(delId);
                if (action != null)
                {
                    if (action.TASK_ID > 0)                      // only delete existing actions
                    {
                        using (PSsqmEntities entities = new PSsqmEntities())
                        {
                            entities.ExecuteStoreCommand("DELETE FROM TASK_STATUS WHERE TASK_ID = " + action.TASK_ID.ToString());
                        }
                    }
                    actionList.Remove(action);
                    if (actionList.Count == 0)
                    {
                        actionList.Add(EHSIncidentMgr.CreateEmptyTask(ActionIncident.INCIDENT_ID, ((int)SysPriv.action).ToString(), 1, WebSiteCommon.LocalTime(DateTime.UtcNow, IncidentLocationTZ)));
                    }
                }

                rptAction.DataSource = actionList;
                rptAction.DataBind();

                decimal incidentId = (IsEditContext) ? IncidentId : NewIncidentId;
            }
        }
        protected void AddDelete_Click(object sender, EventArgs e)
        {
            Button btn = (Button)sender;

            if (btn.CommandArgument == "AddAnother")
            {
                List <TASK_STATUS> actionList = GetActionListFromGrid();
                int newSeq = actionList.Max(l => l.TASK_SEQ).Value + 1;
                actionList.Add(EHSIncidentMgr.CreateEmptyTask(ActionIncident.INCIDENT_ID, ((int)SysPriv.action).ToString(), newSeq, WebSiteCommon.LocalTime(DateTime.UtcNow, IncidentLocationTZ)));
                rptAction.DataSource = actionList;
                rptAction.DataBind();
            }
        }
        protected List <TASK_STATUS> UpdateAlertTaskList(List <TASK_STATUS> alertTaskList)
        {
            // create task for each location and/or update existing task
            TASK_STATUS task    = null;
            int         taskSeq = 0;
            bool        isNew   = false;
            RadComboBox ddl     = null;
            HiddenField hf      = null;

            foreach (GridDataItem item in rgAlertTaskList.Items)
            {
                hf  = (HiddenField)item.FindControl("hfTaskID");
                ddl = (RadComboBox)item.FindControl("ddlResponsible");

                if (string.IsNullOrEmpty(hf.Value)) // create new
                {
                    isNew             = true;
                    task              = new TASK_STATUS();
                    hf                = (HiddenField)item.FindControl("hfLocationTZ");
                    task              = EHSIncidentMgr.CreateEmptyTask(LocalIncident.INCIDENT_ID, ((int)SysPriv.notify).ToString(), ++taskSeq, WebSiteCommon.LocalTime(DateTime.UtcNow, hf.Value));
                    task.RECORD_TYPE  = (int)TaskRecordType.HealthSafetyIncident;
                    hf                = (HiddenField)item.FindControl("hfLocation");
                    task.RECORD_SUBID = Convert.ToDecimal(hf.Value);
                    task.RECORD_ID    = LocalIncident.INCIDENT_ID;
                    alertTaskList.Add(task);
                    localCtx.AddToTASK_STATUS(task);
                }
                else
                {
                    isNew = false;
                    task  = alertTaskList.Where(l => l.TASK_ID.ToString() == hf.Value).FirstOrDefault(); // existing
                }

                //  task.DESCRIPTION = tbAlertDesc.Text;
                task.DETAIL = tbComments.Text;
                task.DUE_DT = rdpDueDate.SelectedDate;
                if (!string.IsNullOrEmpty(ddl.SelectedValue))
                {
                    task.RESPONSIBLE_ID = Convert.ToDecimal(ddl.SelectedValue);
                }
                else
                {
                    alertTaskList.Remove(task);
                    localCtx.DeleteObject(task);
                }
            }

            return(alertTaskList);
        }
        private int SaveLostTime(decimal incidentId, List <INCFORM_LOSTTIME_HIST> itemList)
        {
            int status = 0;

            PSsqmEntities entities = new PSsqmEntities();

            using (var ctx = new PSsqmEntities())
            {
                ctx.ExecuteStoreCommand("DELETE FROM INCFORM_LOSTTIME_HIST WHERE INCIDENT_ID = {0}", incidentId);
            }

            int seq = 0;

            foreach (INCFORM_LOSTTIME_HIST item in itemList)
            {
                var newItem = new INCFORM_LOSTTIME_HIST();

                if (!String.IsNullOrEmpty(item.WORK_STATUS) && item.WORK_STATUS != "")
                {
                    newItem.INCIDENT_ID        = incidentId;
                    newItem.ITEM_DESCRIPTION   = item.ITEM_DESCRIPTION;
                    newItem.WORK_STATUS        = item.WORK_STATUS;
                    newItem.BEGIN_DT           = item.BEGIN_DT;
                    newItem.RETURN_TOWORK_DT   = item.RETURN_TOWORK_DT;
                    newItem.NEXT_MEDAPPT_DT    = item.NEXT_MEDAPPT_DT;
                    newItem.RETURN_EXPECTED_DT = item.RETURN_EXPECTED_DT;

                    newItem.LAST_UPD_BY = SessionManager.UserContext.Person.FIRST_NAME + " " + SessionManager.UserContext.Person.LAST_NAME;
                    newItem.LAST_UPD_DT = WebSiteCommon.LocalTime(DateTime.UtcNow, IncidentLocationTZ);

                    entities.AddToINCFORM_LOSTTIME_HIST(newItem);
                    status = entities.SaveChanges();
                }
            }

            if (seq > 0)
            {
                EHSIncidentMgr.UpdateIncidentStatus(incidentId, IncidentStepStatus.workstatus, WebSiteCommon.LocalTime(DateTime.UtcNow, IncidentLocationTZ));
            }

            /*
             * if (status > -1)
             * {
             *      EHSNotificationMgr.NotifyIncidentStatus(WorkStatusIncident, ((int)SysPriv.update).ToString(), "Work status updated");
             * }
             */
            return(status);
        }
Ejemplo n.º 23
0
        public static List <PERSON> InvolvedPersonList(INCIDENT incident)
        {
            List <PERSON> involvedList = new List <PERSON>();

            if (incident.ISSUE_TYPE_ID == (int)EHSIncidentTypeId.InjuryIllness)
            {
                PSsqmEntities         ctx      = new PSsqmEntities();
                INCFORM_INJURYILLNESS iiDetail = EHSIncidentMgr.SelectInjuryIllnessDetailsById(ctx, incident.INCIDENT_ID);
                if (iiDetail != null && iiDetail.INVOLVED_PERSON_ID.HasValue)
                {
                    involvedList = SQMModelMgr.GetSupvHierarchy(ctx, SQMModelMgr.LookupPerson(ctx, (decimal)iiDetail.INVOLVED_PERSON_ID, "", false), 2, true);
                }
            }

            return(involvedList);
        }
Ejemplo n.º 24
0
        protected void rbNew_Click(object sender, EventArgs e)
        {
            List <BusinessLocation> locationList = SessionManager.PlantList;

            locationList = UserContext.FilterPlantAccessList(locationList);
            SQMBasePage.SetLocationList(ddlIncidentLocation, locationList, 0, true);

            var incidentTypeList = EHSIncidentMgr.SelectIncidentTypeList(companyId, SessionManager.UserContext.Language.NLS_LANGUAGE);

            rddlNewIncidentType.DataSource     = incidentTypeList;
            rddlNewIncidentType.DataTextField  = "TITLE";
            rddlNewIncidentType.DataValueField = "INCIDENT_TYPE_ID";
            rddlNewIncidentType.DataBind();

            string script = "function f(){OpenNewIncidentWindow(); Sys.Application.remove_load(f);}Sys.Application.add_load(f);";

            ScriptManager.RegisterStartupScript(Page, Page.GetType(), "key", script, true);
        }
        void InitializeForm()
        {
            IncidentId = (IsEditContext) ? IncidentId : NewIncidentId;

            //SetUserAccess("INCFORM_LOSTTIME_HIST");

            if (IncidentId >= 0)
            {
                pnlLostTime.Visible = true;
                if (PageMode == PageUseMode.ViewOnly)
                {
                    divTitle.Visible  = true;
                    lblFormTitle.Text = Resources.LocalizedText.LostTimeHistory;
                }
                rptLostTime.DataSource = EHSIncidentMgr.GetLostTimeList(IncidentId);
                rptLostTime.DataBind();
                //EHSIncidentMgr.CalculateWorkStatusSummary(EHSIncidentMgr.CalculateWorkStatusAccounting(new PSsqmEntities(), IncidentId, null, null));
            }
        }
        protected int SaveRootCauses(decimal incidentId, List <INCFORM_ROOT5Y> itemList)
        {
            PSsqmEntities entities = new PSsqmEntities();
            int           status   = 0;

            using (var ctx = new PSsqmEntities())
            {
                ctx.ExecuteStoreCommand("DELETE FROM INCFORM_ROOT5Y WHERE INCIDENT_ID = {0}", incidentId);
            }

            int seq = 0;

            foreach (INCFORM_ROOT5Y item in itemList)
            {
                var newItem = new INCFORM_ROOT5Y();

                if (!string.IsNullOrEmpty(item.ITEM_DESCRIPTION))
                {
                    seq = seq + 1;

                    newItem.INCIDENT_ID      = incidentId;
                    newItem.ITEM_SEQ         = seq;
                    newItem.ITEM_TYPE        = item.ITEM_TYPE;
                    newItem.PROBLEM_SERIES   = item.PROBLEM_SERIES;
                    newItem.ITEM_DESCRIPTION = item.ITEM_DESCRIPTION;
                    newItem.IS_ROOTCAUSE     = item.IS_ROOTCAUSE;
                    newItem.LAST_UPD_BY      = SessionManager.UserContext.Person.FIRST_NAME + " " + SessionManager.UserContext.Person.LAST_NAME;
                    newItem.LAST_UPD_DT      = WebSiteCommon.LocalTime(DateTime.UtcNow, IncidentLocationTZ);

                    entities.AddToINCFORM_ROOT5Y(newItem);
                    status = entities.SaveChanges();
                }
            }

            if (seq > 0)
            {
                EHSIncidentMgr.UpdateIncidentStatus(incidentId, IncidentStepStatus.rootcause, WebSiteCommon.LocalTime(DateTime.UtcNow, IncidentLocationTZ));
            }

            return(status);
        }
        private int SaveContainment(decimal incidentId, List <INCFORM_CONTAIN> itemList)
        {
            PSsqmEntities entities = new PSsqmEntities();
            int           status   = 0;

            using (var ctx = new PSsqmEntities())
            {
                ctx.ExecuteStoreCommand("DELETE FROM INCFORM_CONTAIN WHERE INCIDENT_ID = {0}", incidentId);
            }

            int seq = 0;

            foreach (INCFORM_CONTAIN item in itemList)
            {
                var newItem = new INCFORM_CONTAIN();

                if (!string.IsNullOrEmpty(item.ITEM_DESCRIPTION))
                {
                    seq = seq + 1;

                    newItem.INCIDENT_ID        = incidentId;
                    newItem.ITEM_SEQ           = seq;
                    newItem.ITEM_DESCRIPTION   = item.ITEM_DESCRIPTION;
                    newItem.ASSIGNED_PERSON_ID = item.ASSIGNED_PERSON_ID;
                    newItem.START_DATE         = item.START_DATE;
                    newItem.COMMENTS           = item.COMMENTS;
                    newItem.LAST_UPD_BY        = SessionManager.UserContext.Person.FIRST_NAME + " " + SessionManager.UserContext.Person.LAST_NAME;
                    newItem.LAST_UPD_DT        = WebSiteCommon.LocalTime(DateTime.UtcNow, IncidentLocationTZ);

                    entities.AddToINCFORM_CONTAIN(newItem);
                    status = entities.SaveChanges();
                }
            }

            if (seq > 0)
            {
                EHSIncidentMgr.UpdateIncidentStatus(incidentId, IncidentStepStatus.containment, WebSiteCommon.LocalTime(DateTime.UtcNow, IncidentLocationTZ));
            }

            return(status);
        }
        private int SaveActions(decimal incidentId, List <TASK_STATUS> actionList)
        {
            PSsqmEntities entities = new PSsqmEntities();
            int           status   = 0;

            foreach (TASK_STATUS action in actionList)
            {
                if (!string.IsNullOrEmpty(action.DESCRIPTION) && action.DUE_DT.HasValue && action.RESPONSIBLE_ID.HasValue)
                {
                    EHSIncidentMgr.CreateOrUpdateTask(ActionIncident, action, WebSiteCommon.LocalTime(DateTime.UtcNow, IncidentLocationTZ));
                }
            }

            if (status > -1)
            {
                EHSNotificationMgr.NotifyIncidentStatus(ActionIncident, ((int)SysPriv.update).ToString(), "Corrective action specified");
            }

            EHSIncidentMgr.UpdateIncidentStatus(incidentId, IncidentStepStatus.correctiveaction, WebSiteCommon.LocalTime(DateTime.UtcNow, IncidentLocationTZ));

            return(status);
        }
Ejemplo n.º 29
0
        public int PopulateInitialForm(PSsqmEntities ctx)
        {
            int status = 0;

            INCIDENT incident = EHSIncidentMgr.SelectIncidentById(ctx, IncidentId, true);

            //if incident is not null populate the form
            if (incident != null)
            {
                PLANT plant = SQMModelMgr.LookupPlant(ctx, (decimal)incident.DETECT_PLANT_ID, "");
                if (plant != null)
                {
                    IncidentLocationTZ = plant.LOCAL_TIMEZONE;
                }

                BindCausation(incident);

                pnlCausation.Enabled = PageMode == PageUseMode.ViewOnly ? false : EHSIncidentMgr.CanUpdateIncident(incident, IsEditContext, SysPriv.originate, incident.INCFORM_LAST_STEP_COMPLETED);
            }

            return(status);
        }
        private int SaveActions(decimal incidentId, List <INCFORM_ACTION> itemList)
        {
            PSsqmEntities entities = new PSsqmEntities();
            int           status   = 0;

            using (var ctx = new PSsqmEntities())
            {
                ctx.ExecuteStoreCommand("DELETE FROM INCFORM_ACTION WHERE INCIDENT_ID = {0}", incidentId);
            }

            int seq = 0;

            foreach (INCFORM_ACTION item in itemList)
            {
                var newItem = new INCFORM_ACTION();

                if (!string.IsNullOrEmpty(item.ITEM_DESCRIPTION))
                {
                    seq = seq + 1;

                    newItem.INCIDENT_ID        = incidentId;
                    newItem.ITEM_SEQ           = seq;
                    newItem.ITEM_DESCRIPTION   = item.ITEM_DESCRIPTION;
                    newItem.ASSIGNED_PERSON_ID = item.ASSIGNED_PERSON_ID;
                    newItem.START_DATE         = item.START_DATE;
                    newItem.COMPLETION_DATE    = item.COMPLETION_DATE;
                    newItem.IsCompleted        = item.IsCompleted;
                    newItem.LAST_UPD_BY        = SessionManager.UserContext.Person.FIRST_NAME + " " + SessionManager.UserContext.Person.LAST_NAME;
                    newItem.LAST_UPD_DT        = DateTime.Now;

                    entities.AddToINCFORM_ACTION(newItem);
                    status = entities.SaveChanges();

                    DateTime dueDate = newItem.START_DATE.HasValue ? (DateTime)newItem.START_DATE : DateTime.Now.AddDays(2);
                    EHSIncidentMgr.CreateOrUpdateTask(incidentId, (decimal)item.ASSIGNED_PERSON_ID, 40, dueDate, item.ITEM_DESCRIPTION);
                }
            }
            return(status);
        }