Beispiel #1
0
        protected void btnComplete_Click(Object Sender, EventArgs e)
        {
            int intResourceWorkflow = Int32.Parse(lblResourceWorkflow.Text);
            int intResourceParent   = oResourceRequest.GetWorkflowParent(intResourceWorkflow);

            oResourceRequest.UpdateWorkflowStatus(intResourceWorkflow, 3, true);
            oResourceRequest.CloseWorkflow(intResourceWorkflow, intEnvironment, 0, dsnServiceEditor, true, intResourceRequestApprove, intAssignPage, intViewPage, dsnAsset, dsnIP);
            oOnDemandTasks.UpdateServerStorageComplete(intRequest, intItem, intNumber);
            // Add a green / completed status if there are no updates, OR the last status is not green
            DataSet dsStatus = oResourceRequest.GetStatuss(intResourceWorkflow);

            if (dsStatus.Tables[0].Rows.Count == 0 || dsStatus.Tables[0].Rows[0]["status"].ToString() != "3")
            {
                oResourceRequest.AddStatus(intResourceWorkflow, 3, "Completed", intProfile);
            }
            // Update II OnDemand Task
            int intAnswer = Int32.Parse(lblAnswer.Text);
            int intModel  = Int32.Parse(lblModel.Text);

            oOnDemandTasks.UpdateStorage(intAnswer, intModel);
            // Initiate PNC Workflow (if applicable)
            PNCTasks oPNCTask = new PNCTasks(0, dsn);

            strEMailIdsBCC = oFunction.GetGetEmailAlertsEmailIds("EMAILGRP_DESIGN_BUILDER");
            //oPNCTask.InitiateNextStep(intRequest, intService, intNumber, intAnswer, intModel, intEnvironment, intApplicationCitrix, intAssignPage, intViewPage, dsnAsset, dsnIP, dsnServiceEditor, false, 0);
            oPNCTask.InitiateNextStep(intRequest, intAnswer, intModel, intEnvironment, intAssignPage, intViewPage, dsnAsset, dsnIP, dsnServiceEditor);
            // Notify Builder
            bool     boolProd   = (lblProd.Text == "1");
            Forecast oForecast  = new Forecast(0, dsn);
            int      intBuilder = 0;
            DataSet  dsTasks    = oOnDemandTasks.GetPending(intAnswer);

            if (dsTasks.Tables[0].Rows.Count > 0)
            {
                intBuilder = Int32.Parse(dsTasks.Tables[0].Rows[0]["resourceid"].ToString());
                intBuilder = Int32.Parse(oResourceRequest.GetWorkflow(intBuilder, "userid"));
            }

            if (intBuilder > 0)
            {
                oFunction.SendEmail("Storage Completed!", oUser.GetName(intBuilder), "", strEMailIdsBCC, "Storage Completed!", "<p><b>This message is to notify you that " + (boolProd ? "PRODUCTION" : "TEST") + " storage has been configured for the following design...</b></p><p>" + oForecast.GetAnswerBody(intAnswer, intEnvironment, dsnAsset, dsnIP) + "</p>", true, false);
            }
            else
            {
                oFunction.SendEmail("Storage Completed!", strEMailIdsBCC, "", "", "Storage Completed!", "<p><b>This message is to notify you that " + (boolProd ? "PRODUCTION" : "QA / TEST") + " storage has been configured for the following design...</b> (No Builder for ANSWERID " + intAnswer.ToString() + ")</p><p>" + oForecast.GetAnswerBody(intAnswer, intEnvironment, dsnAsset, dsnIP) + "</p>", true, false);
            }
            Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "reload", "<script type=\"text/javascript\">RefreshOpeningWindow();window.close();<" + "/" + "script>");
        }
Beispiel #2
0
        protected void btnComplete_Click(Object Sender, EventArgs e)
        {
            int intResourceWorkflow = Int32.Parse(lblResourceWorkflow.Text);
            int intResourceParent   = oResourceRequest.GetWorkflowParent(intResourceWorkflow);

            oResourceRequest.UpdateWorkflowStatus(intResourceWorkflow, 3, true);
            oResourceRequest.CloseWorkflow(intResourceWorkflow, intEnvironment, 0, dsnServiceEditor, true, intResourceRequestApprove, intAssignPage, intViewPage, dsnAsset, dsnIP);
            // Send to Remediation Team (based off initial midrange flag)
            oCustomized.UpdateStorage3rd(intRequest, intItem, intNumber, double.Parse(txtAmount.Text));
            int intNewService = intServiceDistributed;

            if (lblMidrange.Text == "1")
            {
                intNewService = intServiceMidrange;
            }
            int intNewItem   = oService.GetItemId(intNewService);
            int intNewNumber = oResourceRequest.GetNumber(intRequest, intNewItem);

            oCustomized.UpdateStorage3rd(intRequest, intItem, intNumber, intNewItem, intNewNumber);
            oCustomized.UpdateStorage3rdFlow3(intRequest, intItem, intNumber, intNewItem, intNewNumber);
            int intResource = oServiceRequest.AddRequest(intRequest, intNewItem, intNewService, 0, 0.00, 2, intNewNumber, dsnServiceEditor);

            oServiceRequest.NotifyTeamLead(intNewItem, intResource, intAssignPage, intViewPage, intEnvironment, "", dsnServiceEditor, dsnAsset, dsnIP, 0);
            Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "reload", "<script type=\"text/javascript\">RefreshOpeningWindow();window.close();<" + "/" + "script>");
        }
Beispiel #3
0
        protected void btnComplete_Click(Object Sender, EventArgs e)
        {
            int intResourceWorkflow = Int32.Parse(lblResourceWorkflow.Text);
            int intResourceParent   = oResourceRequest.GetWorkflowParent(intResourceWorkflow);

            if (panNoSlider.Visible == true)
            {
                double dblAllocated = double.Parse(oResourceRequest.GetWorkflow(intResourceWorkflow, "allocated"));
                oResourceRequest.UpdateWorkflowHoursOverwrite(intResourceWorkflow, dblAllocated);
            }
            int     intAnswer = 0;
            int     intModel  = 0;
            DataSet ds        = oOnDemandTasks.GetServerOther(intRequest, intService, intNumber);

            if (ds.Tables[0].Rows.Count > 0)
            {
                intAnswer = Int32.Parse(ds.Tables[0].Rows[0]["answerid"].ToString());
                intModel  = Int32.Parse(ds.Tables[0].Rows[0]["modelid"].ToString());
            }
            //Generate Security Task
            int intServiceId     = Int32.Parse(ConfigurationManager.AppSettings["SERVICEID_PNC_SECURITY"]);
            int intServiceItemId = oService.GetItemId(intServiceId);
            int intServiceNumber = 1;

            oOnDemandTasks.AddServerOther(intRequest, intServiceId, intServiceNumber, intAnswer, intModel);
            double dblServiceHours = oServiceDetail.GetHours(intServiceId, 1);
            int    intResource     = oServiceRequest.AddRequest(intRequest, intServiceItemId, intServiceId, 1, dblServiceHours, 2, intServiceNumber, dsnServiceEditor);

            oServiceRequest.NotifyTeamLead(intServiceItemId, intResource, intAssignPage, intViewPage, intEnvironment, strBCC, "", dsnServiceEditor, dsnAsset, dsnIP, 0);
            //End of Generate Security Task
            oResourceRequest.UpdateWorkflowStatus(intResourceWorkflow, 3, true);
            oResourceRequest.CloseWorkflow(intResourceWorkflow, intEnvironment, strBCC, 0, dsnServiceEditor, true, intResourceRequestApprove, intAssignPage, intViewPage, dsnAsset, dsnIP);
            Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "reload", "<script type=\"text/javascript\">if(window.opener!=null)window.opener.navigate('" + oPage.GetFullLink(intMyWork) + "');window.close();<" + "/" + "script>");
        }
        protected void btnComplete_Click(Object Sender, EventArgs e)
        {
            int intResourceWorkflow = Int32.Parse(lblResourceWorkflow.Text);
            int intResourceParent   = oResourceRequest.GetWorkflowParent(intResourceWorkflow);

            oResourceRequest.UpdateWorkflowStatus(intResourceWorkflow, 3, true);
            oResourceRequest.CloseWorkflow(intResourceWorkflow, intEnvironment, 0, dsnServiceEditor, true, intResourceRequestApprove, intAssignPage, intViewPage, dsnAsset, dsnIP);
            //// Send to SAN Team
            int intNewService = intServiceSAN;
            int intNewItem    = oService.GetItemId(intNewService);
            int intNewNumber  = oResourceRequest.GetNumber(intRequest, intNewItem);

            oCustomized.UpdateStorage3rd(intRequest, intItem, intNumber, intNewItem, intNewNumber);
            oCustomized.UpdateStorage3rdFlow2(intRequest, intItem, intNumber, intNewItem, intNewNumber);
            int intResource = oServiceRequest.AddRequest(intRequest, intNewItem, intNewService, 0, 0.00, 2, intNewNumber, dsnServiceEditor);

            oServiceRequest.NotifyTeamLead(intNewItem, intResource, intAssignPage, intViewPage, intEnvironment, "", dsnServiceEditor, dsnAsset, dsnIP, 0);
            // Notify Remediation Team (but do not create request)
            string  strDetails = "";
            DataSet ds         = oCustomized.GetStorage3rd(intRequest, intNewItem, intNewNumber);

            if (ds.Tables[0].Rows.Count > 0)
            {
                strDetails = oCustomized.GetStorage3rdBody(intRequest, intNewItem, intNewNumber, intEnvironment);
            }
            if (strDetails != "")
            {
                strDetails = "<table width=\"100%\" border=\"0\" cellSpacing=\"2\" cellPadding=\"4\" style=\"" + oVariable.DefaultFontStyle() + "\">" + strDetails + "</table>";
            }
            strEMailIdsBCC = oFunction.GetGetEmailAlertsEmailIds("EMAILGRP_DEVELOPER_ALERT");
            oFunction.SendEmail("Incoming Storage Request [CVT" + intRequest.ToString() + "]", strRemediationTeam, "", strEMailIdsBCC, "Incoming Storage Request [#CVT" + intRequest.ToString() + "]", "<p><b>The following server growth request has been sent to the SAN department...this message is to inform you that it will arrive soon.</b></p><p>When the SAN team has finished configuring this request, another notification will be sent to you to assign a resource.</p><p>" + strDetails + "</p>", true, false);
            Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "reload", "<script type=\"text/javascript\">RefreshOpeningWindow();window.close();<" + "/" + "script>");
        }
Beispiel #5
0
        protected void btnComplete_Click(Object Sender, EventArgs e)
        {
            int intResourceWorkflow = Int32.Parse(lblResourceWorkflow.Text);
            int intResourceParent   = oResourceRequest.GetWorkflowParent(intResourceWorkflow);

            oResourceRequest.UpdateWorkflowStatus(intResourceWorkflow, 3, true);
            oResourceRequest.CloseWorkflow(intResourceWorkflow, intEnvironment, 0, dsnServiceEditor, true, intResourceRequestApprove, intAssignPage, intViewPage, dsnAsset, dsnIP);
            Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "reload", "<script type=\"text/javascript\">RefreshOpeningWindow();window.close();<" + "/" + "script>");
        }
Beispiel #6
0
        private void CompletedWorkflow()
        {
            int intResourceWorkflow = Int32.Parse(lblResourceWorkflow.Text);
            int intResourceParent   = oResourceRequest.GetWorkflowParent(intResourceWorkflow);

            double dblAllocated = double.Parse(oResourceRequest.GetWorkflow(intResourceWorkflow, "allocated"));

            oResourceRequest.UpdateWorkflowHoursOverwrite(intResourceWorkflow, dblAllocated);

            // Add a green / completed status if there are no updates, OR the last status is not green
            DataSet dsStatus = oResourceRequest.GetStatuss(intResourceWorkflow);

            if (dsStatus.Tables[0].Rows.Count == 0 || dsStatus.Tables[0].Rows[0]["status"].ToString() != "3")
            {
                oResourceRequest.AddStatus(intResourceWorkflow, 3, "Completed", intProfile);
            }
            oResourceRequest.UpdateWorkflowStatus(intResourceWorkflow, 3, true);
            oResourceRequest.CloseWorkflow(intResourceWorkflow, intEnvironment, 0, dsnServiceEditor, true, intResourceRequestApprove, intAssignPage, intViewPage, dsnAsset, dsnIP);

            //update Procurement Details Initiate new Services or Complete Request
            UpdateProcurementDetails();

            //Asset Order => Initiate New Service Or Complete Request
            oAssetOrder.InitiateNextServiceRequestOrCompleteRequest(Int32.Parse(hdnOrderId.Value), intNumber, intService, false, dsnServiceEditor, intAssignPage, intViewPage, dsnAsset, dsnIP);

            //If this service was returned then update the status of next service
            if (boolServiceReturned == true)
            {
                DataSet dsRR = oResourceRequest.GetRequestService(intRequest, intService, intNumber);
                if (dsRR.Tables[0].Rows.Count > 0)
                {
                    int intRRId = Int32.Parse(dsRR.Tables[0].Rows[0]["parent"].ToString());

                    DataSet dsRRReturn = oResourceRequest.getResourceRequestReturn(intRRId, intService, intNumber, 1, 0);
                    if (dsRRReturn.Tables[0].Rows.Count > 0)
                    {
                        int intNextRRId      = Int32.Parse(dsRRReturn.Tables[0].Rows[0]["NextRRId"].ToString());
                        int intNextServiceId = Int32.Parse(dsRRReturn.Tables[0].Rows[0]["NextServiceId"].ToString());
                        int intNextNumber    = Int32.Parse(dsRRReturn.Tables[0].Rows[0]["NextNumber"].ToString());;


                        oResourceRequest.UpdateStatusRequest(intNextRRId, 2);
                        DataSet dsRRWF = oResourceRequest.GetWorkflowsParent(intNextRRId);
                        foreach (DataRow dr in dsRRWF.Tables[0].Rows)
                        {
                            int intRRWFId = Int32.Parse(dr["id"].ToString());
                            oResourceRequest.UpdateWorkflowStatus(intRRWFId, 2, true);
                        }
                    }
                }
                oResourceRequest.updateResourceRequestReturnCompleted(Int32.Parse(lblReqReturnedId.Text));
            }
            Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "reload", "<script type=\"text/javascript\">RefreshOpeningWindow();window.close();<" + "/" + "script>");
        }
Beispiel #7
0
        protected void btnComplete_Click(Object Sender, EventArgs e)
        {
            int intResourceWorkflow = Int32.Parse(lblResourceWorkflow.Text);
            int intResourceParent   = oResourceRequest.GetWorkflowParent(intResourceWorkflow);

            if (panNoSlider.Visible == true)
            {
                double dblAllocated = double.Parse(oResourceRequest.GetWorkflow(intResourceWorkflow, "allocated"));
                oResourceRequest.UpdateWorkflowHoursOverwrite(intResourceWorkflow, dblAllocated);
            }
            // Add a green / completed status if there are no updates, OR the last status is not green
            DataSet dsStatus = oResourceRequest.GetStatuss(intResourceWorkflow);

            if (dsStatus.Tables[0].Rows.Count == 0 || dsStatus.Tables[0].Rows[0]["status"].ToString() != "3")
            {
                oResourceRequest.AddStatus(intResourceWorkflow, 3, "Completed", intProfile);
            }

            int     intAnswer = 0;
            int     intModel  = 0;
            DataSet ds        = oOnDemandTasks.GetServerOther(intRequest, intService, intNumber);

            if (ds.Tables[0].Rows.Count > 0)
            {
                intAnswer = Int32.Parse(ds.Tables[0].Rows[0]["answerid"].ToString());
                intModel  = Int32.Parse(ds.Tables[0].Rows[0]["modelid"].ToString());
            }
            else if (intService == intServiceDNS)
            {
                Customized oCustomized = new Customized(0, dsn);
                ds = oCustomized.GetPNCDNSConflict(intRequest, intItem, intNumber);
                if (ds.Tables[0].Rows.Count > 0)
                {
                    intAnswer = Int32.Parse(ds.Tables[0].Rows[0]["answerid"].ToString());
                    intModel  = oForecast.GetModelAsset(intAnswer);
                    if (intModel == 0)
                    {
                        intModel = oForecast.GetModel(intAnswer);
                    }
                    oCustomized.UpdatePNCDNSConflict(intRequest, intItem, intNumber);
                }
            }
            SaveMIS();
            oOnDemandTasks.UpdateServerOtherComplete(intRequest, intService, intNumber);
            oResourceRequest.UpdateWorkflowStatus(intResourceWorkflow, 3, true);

            //oPNCTask.InitiateNextStep(intRequest, intService, intNumber, intAnswer, intModel, intEnvironment, intApplicationCitrix, intAssignPage, intViewPage, dsnAsset, dsnIP, dsnServiceEditor, false, 0);
            oPNCTask.InitiateNextStep(intRequest, intAnswer, intModel, intEnvironment, intAssignPage, intViewPage, dsnAsset, dsnIP, dsnServiceEditor);


            oResourceRequest.CloseWorkflow(intResourceWorkflow, intEnvironment, 0, dsnServiceEditor, true, intResourceRequestApprove, intAssignPage, intViewPage, dsnAsset, dsnIP);
            Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "reload", "<script type=\"text/javascript\">RefreshOpeningWindow();window.close();<" + "/" + "script>");
        }
Beispiel #8
0
        protected void btnComplete_Click(Object Sender, EventArgs e)
        {
            int intResourceWorkflow = Int32.Parse(lblResourceWorkflow.Text);
            int intResourceParent   = oResourceRequest.GetWorkflowParent(intResourceWorkflow);

            oResourceRequest.UpdateWorkflowStatus(intResourceWorkflow, 3, true);
            oOnDemandTasks.AddSuccess(intResourceParent, "VMware", Int32.Parse(ddlSuccess.SelectedItem.Value), txtComments.Text);
            oOnDemandTasks.UpdateVirtualIIComplete(intRequest, intItem, intNumber);
            Forecast oForecast = new Forecast(intProfile, dsn);

            oForecast.UpdateAnswerFinished(Int32.Parse(lblAnswer.Text));
            oResourceRequest.CloseWorkflow(intResourceWorkflow, intEnvironment, strBCC, 0, dsnServiceEditor, true, intResourceRequestApprove, intAssignPage, intViewPage, dsnAsset, dsnIP);
            Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "reload", "<script type=\"text/javascript\">RefreshOpeningWindow();window.close();<" + "/" + "script>");
        }
        protected void btnComplete_Click(Object Sender, EventArgs e)
        {
            int intResourceWorkflow = Int32.Parse(lblResourceWorkflow.Text);
            int intResourceParent   = oResourceRequest.GetWorkflowParent(intResourceWorkflow);

            oResourceRequest.UpdateWorkflowStatus(intResourceWorkflow, 3, true);
            // Send to Client as completed
            int    intUser  = oRequest.GetUser(intRequest);
            string strEmail = oUser.GetName(intUser);

            LoadDetails();
            strEMailIdsBCC = oFunction.GetGetEmailAlertsEmailIds("EMAILGRP_REQUEST_STATUS");
            oFunction.SendEmail("Request Completed [CVT" + intRequest.ToString() + "]", strEmail, "", strEMailIdsBCC, "Request Completed [#CVT" + intRequest.ToString() + "]", "<p><b>The following server growth request has been completed!</b></p><p>" + strDetails + "</p>", true, false);
            oResourceRequest.CloseWorkflow(intResourceWorkflow, intEnvironment, 0, dsnServiceEditor, true, intResourceRequestApprove, intAssignPage, intViewPage, dsnAsset, dsnIP);
            Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "reload", "<script type=\"text/javascript\">RefreshOpeningWindow();window.close();<" + "/" + "script>");
        }
Beispiel #10
0
        protected void btnComplete_Click(Object Sender, EventArgs e)
        {
            int intResourceWorkflow = Int32.Parse(lblResourceWorkflow.Text);
            int intResourceParent   = oResourceRequest.GetWorkflowParent(intResourceWorkflow);

            oResourceRequest.UpdateWorkflowStatus(intResourceWorkflow, 3, true);
            if (intNumber == 1)
            {
                oCustomized.UpdateEnhancementStatus(intRequest, 3, Int32.Parse(ddlRelease.SelectedItem.Value), radPriority.SelectedItem.Value);
                oCustomized.UpdateEnhancementNew(intRequest, 1);
            }
            else
            {
                oCustomized.UpdateIssueStatus(intRequest, 3);
                oCustomized.UpdateIssueNew(intRequest, 1);
            }
            oResourceRequest.CloseWorkflow(intResourceWorkflow, intEnvironment, 0, dsnServiceEditor, true, intResourceRequestApprove, intAssignPage, intViewPage, dsnAsset, dsnIP);
            Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "reload", "<script type=\"text/javascript\">RefreshOpeningWindow();window.close();<" + "/" + "script>");
        }
Beispiel #11
0
        protected void btnComplete_Click(Object Sender, EventArgs e)
        {
            int     intResourceWorkflow = Int32.Parse(lblResourceWorkflow.Text);
            int     intResourceParent   = oResourceRequest.GetWorkflowParent(intResourceWorkflow);
            int     intAnswer           = 0;
            int     intModel            = 0;
            DataSet ds = oOnDemandTasks.GetServerOther(intRequest, intService, intNumber);

            if (ds.Tables[0].Rows.Count > 0)
            {
                intAnswer = Int32.Parse(ds.Tables[0].Rows[0]["answerid"].ToString());
                intModel  = Int32.Parse(ds.Tables[0].Rows[0]["modelid"].ToString());
            }
            string strSaveError = SaveConfigs(intAnswer, true);

            if (strSaveError == "")
            {
                // Add a green / completed status if there are no updates, OR the last status is not green
                DataSet dsStatus = oResourceRequest.GetStatuss(intResourceWorkflow);
                if (dsStatus.Tables[0].Rows.Count == 0 || dsStatus.Tables[0].Rows[0]["status"].ToString() != "3")
                {
                    oResourceRequest.AddStatus(intResourceWorkflow, 3, "Completed", intProfile);
                }

                oOnDemandTasks.UpdateServerOtherComplete(intRequest, intService, intNumber);
                oResourceRequest.UpdateWorkflowStatus(intResourceWorkflow, 3, true);

                PNCTasks oPNCTask = new PNCTasks(0, dsn);
                //oPNCTask.InitiateNextStep(intRequest, intService, intNumber, intAnswer, intModel, intEnvironment, intApplicationCitrix, intAssignPage, intViewPage, dsnAsset, dsnIP, dsnServiceEditor, false, 50);
                oPNCTask.InitiateNextStep(intRequest, intAnswer, intModel, intEnvironment, intAssignPage, intViewPage, dsnAsset, dsnIP, dsnServiceEditor);

                oResourceRequest.CloseWorkflow(intResourceWorkflow, intEnvironment, 0, dsnServiceEditor, true, intResourceRequestApprove, intAssignPage, intViewPage, dsnAsset, dsnIP);
                Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "reload", "<script type=\"text/javascript\">RefreshOpeningWindow();window.close();<" + "/" + "script>");
            }
            else
            {
                GetError(strSaveError);
            }
        }
 protected void Complete()
 {
     oResourceRequest.UpdateWorkflowStatus(intResourceWorkflow, 3, true);
     oResourceRequest.CloseWorkflow(intResourceWorkflow, intEnvironment, 0, dsnServiceEditor, true, intResourceRequestApprove, intAssignPage, intViewPage, dsnAsset, dsnIP);
     Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "reload", "<script type=\"text/javascript\">RefreshOpeningWindow();window.close();<" + "/" + "script>");
 }
Beispiel #13
0
        protected void btnComplete_Click(Object Sender, EventArgs e)
        {
            int    intResourceWorkflow = Int32.Parse(lblResourceWorkflow.Text);
            string strInvalid          = "";

            if (panForm.Visible == true)
            {
                strInvalid = oServiceEditor.SaveForm(Request, intRequest, intService, intNumber, true, intEnvironment, dsn);
            }

            if (strInvalid == "")
            {
                // All Required Fields have been completed
                int intResourceParent = oResourceRequest.GetWorkflowParent(intResourceWorkflow);
                if (oResourceRequest.Get(intResourceParent, "status") == ((int)ResourceRequestStatus.Closed).ToString() ||
                    oResourceRequest.GetWorkflow(intResourceWorkflow, "status") == ((int)ResourceRequestStatus.Closed).ToString())
                {
                    // already completed - nothing to do except close the window.
                }
                else
                {
                    if (panNoSlider.Visible == true)
                    {
                        double dblAllocated = double.Parse(oResourceRequest.GetWorkflow(intResourceWorkflow, "allocated"));
                        oResourceRequest.UpdateWorkflowHoursOverwrite(intResourceWorkflow, dblAllocated);
                    }
                    // Add a green / completed status if there are no updates, OR the last status is not green
                    DataSet dsStatus = oResourceRequest.GetStatuss(intResourceWorkflow);
                    if (dsStatus.Tables[0].Rows.Count == 0 || dsStatus.Tables[0].Rows[0]["status"].ToString() != "3")
                    {
                        oResourceRequest.AddStatus(intResourceWorkflow, (int)ResourceRequestStatus.Closed, "Completed", intProfile);
                    }
                    oResourceRequest.UpdateWorkflowStatus(intResourceWorkflow, (int)ResourceRequestStatus.Closed, true);
                    string strCVT = "CVT" + intRequest.ToString() + "-" + intService.ToString() + "-" + intNumber.ToString();
                    oLog.AddEvent(intRequest.ToString(), strCVT, "Closed WM_Generic by " + oUser.GetFullNameWithLanID(intProfile), LoggingType.Debug);
                    oResourceRequest.CloseWorkflow(intResourceWorkflow, intEnvironment, 0, dsnServiceEditor, true, intResourceRequestApprove, intAssignPage, intViewPage, dsnAsset, dsnIP, boolServiceReturned);

                    // Send notification to list of completion users
                    string strCompletion = oService.Get(intService, "notify_complete");
                    if (strCompletion != "")
                    {
                        string strLink = "<a href=\"" + oVariable.URL() + "/redirect.aspx?referrer=/datapoint/service/resource.aspx?id=" + oFunction.encryptQueryString(intResourceParent.ToString()) + "\" target=\"_blank\">Click here to view this request.</a>";
                        oFunction.SendEmail("Service Request #CVT" + intRequest.ToString() + "-" + intService.ToString() + "-" + intNumber.ToString() + " Complete", strCompletion, "", "", "Service Request #CVT" + intRequest.ToString() + "-" + intService.ToString() + "-" + intNumber.ToString() + " Complete", "<p>This message is to notify you that the following service request has been completed...</p><p>" + oResourceRequest.GetWorkflowSummary(intResourceWorkflow, intEnvironment, dsnServiceEditor, dsnAsset, dsnIP) + "</p><p>You are receiving this message because you have been configured to receive a notification for all completed requests for the service <b>" + oService.GetName(intService) + "</b><p>" + strLink + "</p>", true, false);
                    }

                    //Send notification to users of associated tasks
                    WMServiceTasks oWMServiceTasks     = new WMServiceTasks(intProfile, dsn);
                    DataSet        DsWMAssociatedTasks = oWMServiceTasks.getWMServiceTasksStatusRequestWithRequest(intRequest);
                    Customized     oCustomized         = new Customized(intProfile, dsn);

                    if (DsWMAssociatedTasks.Tables[0].Rows.Count > 0)
                    {
                        foreach (DataRow drWMAssoicatedTasks in DsWMAssociatedTasks.Tables[0].Rows)
                        {
                            string strWMAssoicatedTasksUser = oUser.GetName(Int32.Parse(drWMAssoicatedTasks["createdBy"].ToString()));
                            string strComment = "";
                            string strLink    = "<p><a href=\"" + oVariable.URL() + "/redirect.aspx?referrer=/datapoint/service/resource.aspx?id=" + oFunction.encryptQueryString(intResourceParent.ToString()) + "\" target=\"_blank\">Click here to view this request.</a></p>";
                            oFunction.SendEmail("Associated Request Completed CVT" + intRequest.ToString() + "-" + intService.ToString() + "-" + intNumber.ToString(), strWMAssoicatedTasksUser, "", "", "Associated Request Completed CVT" + intRequest.ToString() + "-" + intService.ToString() + "-" + intNumber.ToString(), "<p><b>The following associated service request has been completed!</b></br>" + strComment + "</p>" + strLink + "<p>" + oResourceRequest.GetWorkflowSummary(intResourceWorkflow, intEnvironment, dsnServiceEditor, dsnAsset, dsnIP) + "</p>", true, false);
                        }
                    }
                    //End of Send notification to users of associated tasks

                    if (intService == Int32.Parse(ConfigurationManager.AppSettings["SERVICEID_DECOMMISSION_SUPPORT"]) ||
                        intService == Int32.Parse(ConfigurationManager.AppSettings["SERVICEID_DESTROY_SUPPORT"]) ||
                        intService == Int32.Parse(ConfigurationManager.AppSettings["SERVICEID_DECOMMISSION_SUPPORT_WORKSTATION"]) ||
                        intService == Int32.Parse(ConfigurationManager.AppSettings["SERVICEID_DESTROY_SUPPORT_WORKSTATION"]))
                    {
                        Asset oAsset = new Asset(0, dsnAsset);
                        oAsset.UpdateDecommissionFixed(intRequest, intNumber);
                    }

                    //If this service was returned then update the status of next service
                    if (boolServiceReturned == true)
                    {
                        DataSet dsRR = oResourceRequest.GetRequestService(intRequest, intService, intNumber);
                        if (dsRR.Tables[0].Rows.Count > 0)
                        {
                            int intRRId = Int32.Parse(dsRR.Tables[0].Rows[0]["parent"].ToString());

                            DataSet dsRRReturn = oResourceRequest.getResourceRequestReturn(intRRId, intService, intNumber, 1, 0);
                            if (dsRRReturn.Tables[0].Rows.Count > 0)
                            {
                                int intNextRRId      = Int32.Parse(dsRRReturn.Tables[0].Rows[0]["NextRRId"].ToString());
                                int intNextServiceId = Int32.Parse(dsRRReturn.Tables[0].Rows[0]["NextServiceId"].ToString());
                                int intNextNumber    = Int32.Parse(dsRRReturn.Tables[0].Rows[0]["NextNumber"].ToString());;

                                // Get all at that level to resume
                                DataSet dsWorkflow = oServiceEditor.GetWorkflow(intRequest);
                                // Get leveling
                                int intLevel = 0;
                                foreach (DataRow drWorkflow in dsWorkflow.Tables[0].Rows)
                                {
                                    if (Int32.Parse(drWorkflow["serviceid"].ToString()) == intNextServiceId)
                                    {
                                        intLevel = Int32.Parse(drWorkflow["leveling"].ToString());
                                        break;
                                    }
                                }
                                foreach (DataRow drWorkflow in dsWorkflow.Tables[0].Rows)
                                {
                                    if (Int32.Parse(drWorkflow["leveling"].ToString()) == intLevel)
                                    {
                                        string strService           = oService.GetName(Int32.Parse(drWorkflow["ServiceID"].ToString()));
                                        int    intResourceRequestID = 0;
                                        if (Int32.TryParse(drWorkflow["ResourceID"].ToString(), out intResourceRequestID))
                                        {
                                            oResourceRequest.UpdateStatusRequest(intResourceRequestID, 2);
                                            DataSet dsRRWF = oResourceRequest.GetWorkflowsParent(intResourceRequestID);
                                            foreach (DataRow dr in dsRRWF.Tables[0].Rows)
                                            {
                                                int intRRWFId     = Int32.Parse(dr["id"].ToString());
                                                int intRRWFUserId = Int32.Parse(dr["userid"].ToString());
                                                oResourceRequest.UpdateWorkflowStatus(intRRWFId, 2, true);
                                                // Notify
                                                string strEMailIdsBCC = oFunction.GetGetEmailAlertsEmailIds("EMAILGRP_REQUEST_ASSIGNMENT");
                                                string strDefault     = oUser.GetApplicationUrl(intRRWFUserId, intViewPage);
                                                if (strDefault == "")
                                                {
                                                    oFunction.SendEmail("Returned Request Completed: " + strService, oUser.GetName(intRRWFUserId), "", strEMailIdsBCC, "Returned Request Completed: " + strService, "<p><b>The following returned request has been completed by " + oUser.GetFullName(intProfile) + " and is now in your queue.</b></p><p>" + oResourceRequest.GetWorkflowSummary(intResourceWorkflow, intEnvironment, dsnServiceEditor, dsnAsset, dsnIP) + "</p>", true, false);
                                                }
                                                else
                                                {
                                                    if (intProject > 0)
                                                    {
                                                        oFunction.SendEmail("Returned Request Completed: " + strService, oUser.GetName(intRRWFUserId), "", strEMailIdsBCC, "Returned Request Completed: " + strService, "<p><b>The following returned request has been completed by " + oUser.GetFullName(intProfile) + " and is now in your queue.</b></p><p>" + oResourceRequest.GetWorkflowSummary(intResourceWorkflow, intEnvironment, dsnServiceEditor, dsnAsset, dsnIP) + "</p><p><a href=\"" + oVariable.URL() + "/redirect.aspx?referrer=/" + strDefault + oPage.GetFullLink(intViewPage) + "?pid=" + intProject.ToString() + "\" target=\"_blank\">Click here to review your assignment.</a></p>", true, false);
                                                    }
                                                    else
                                                    {
                                                        oFunction.SendEmail("Returned Request Completed: " + strService, oUser.GetName(intRRWFUserId), "", strEMailIdsBCC, "Returned Request Completed: " + strService, "<p><b>The following returned request has been completed by " + oUser.GetFullName(intProfile) + " and is now in your queue.</b></p><p>" + oResourceRequest.GetWorkflowSummary(intResourceWorkflow, intEnvironment, dsnServiceEditor, dsnAsset, dsnIP) + "</p><p><a href=\"" + oVariable.URL() + "/redirect.aspx?referrer=/frame/resource_request.aspx?rrid=" + intResourceWorkflow.ToString() + "\" target=\"_blank\">Click here to review your assignment.</a></p>", true, false);
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }


                                //oResourceRequest.UpdateStatusRequest(intNextRRId, 2);
                                //DataSet dsRRWF = oResourceRequest.GetWorkflowsParent(intNextRRId);
                                //foreach (DataRow dr in dsRRWF.Tables[0].Rows)
                                //{
                                //    int intRRWFId = Int32.Parse(dr["id"].ToString());
                                //    oResourceRequest.UpdateWorkflowStatus(intRRWFId, 2, true);
                                //}
                            }
                        }
                        oResourceRequest.updateResourceRequestReturnCompleted(Int32.Parse(lblReqReturnedId.Text));
                    }
                }
                Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "reload", "<script type=\"text/javascript\">RefreshOpeningWindow();window.close();<" + "/" + "script>");
            }
            else
            {
                Response.Redirect(Request.Path + "?rrid=" + intResourceWorkflow.ToString() + "&div=E&require=true&required=" + oFunction.encryptQueryString(strInvalid));
            }
        }
Beispiel #14
0
        protected void btnComplete_Click(Object Sender, EventArgs e)
        {
            int intResourceWorkflow = Int32.Parse(lblResourceWorkflow.Text);
            int intResourceParent   = oResourceRequest.GetWorkflowParent(intResourceWorkflow);

            // Add a green / completed status if there are no updates, OR the last status is not green
            DataSet dsStatus = oResourceRequest.GetStatuss(intResourceWorkflow);

            if (dsStatus.Tables[0].Rows.Count == 0 || dsStatus.Tables[0].Rows[0]["status"].ToString() != "3")
            {
                oResourceRequest.AddStatus(intResourceWorkflow, 3, "Completed", intProfile);
            }

            int     intAudit = 0;
            int     intStep  = 0;
            int     intMIS   = 0;
            DataSet dsAudit  = oAudit.GetError(intRequest, intService, intNumber);

            if (dsAudit.Tables[0].Rows.Count > 0)
            {
                Int32.TryParse(dsAudit.Tables[0].Rows[0]["auditid"].ToString(), out intAudit);
                Int32.TryParse(dsAudit.Tables[0].Rows[0]["step"].ToString(), out intStep);
                Int32.TryParse(dsAudit.Tables[0].Rows[0]["mis"].ToString(), out intMIS);
            }
            if (intAudit > 0)
            {
                int intServer = 0;
                dsAudit = oAudit.GetServer(intAudit);
                if (dsAudit.Tables[0].Rows.Count > 0)
                {
                    Int32.TryParse(dsAudit.Tables[0].Rows[0]["serverid"].ToString(), out intServer);
                }
                if (intServer > 0)
                {
                    oAudit.UpdateError(intRequest, intService, intNumber, (radActionFix.Checked ? 1 : 0), (radActionIgnore.Checked ? txtReason.Text : ""));
                    oAudit.UpdateErrorCompleted(intRequest, intService, intNumber);
                    // If fixed, clear the errors
                    if (radActionFix.Checked == true)
                    {
                        // Delete all audit scripts and set step to start again
                        oAudit.DeleteServer(intServer, intMIS);
                        oAudit.DeleteServerDetailRemote(intAudit);
                    }
                    if (radActionIgnore.Checked == true)
                    {
                        // Set the ERROR to IGNORE (which will skip the current script and move onto the next one).
                        oAudit.UpdateServer(intAudit, AuditStatus.Ignore, DateTime.Now.ToString());
                    }

                    // Update the error (in cv_servers_errors and cv_ondemand_tasks_done_server)
                    Servers oServer = new Servers(intProfile, dsn);
                    oServer.UpdateError(intServer, intStep, 0, intProfile, false, dsnAsset);
                    if (intMIS == 1)
                    {
                        oServer.UpdateMISAudits(intServer, "");
                    }

                    // Close Request
                    oResourceRequest.UpdateWorkflowStatus(intResourceWorkflow, 3, true);
                    oResourceRequest.CloseWorkflow(intResourceWorkflow, intEnvironment, 0, dsnServiceEditor, true, intResourceRequestApprove, intAssignPage, intViewPage, dsnAsset, dsnIP);
                    Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "reload", "<script type=\"text/javascript\">RefreshOpeningWindow();window.close();<" + "/" + "script>");
                }
                else
                {
                    Page.ClientScript.RegisterStartupScript(typeof(Page), "missing_server", "<script type=\"text/javascript\">alert('Could not find the server ID ( " + dsAudit.Tables[0].Rows[0]["serverid"].ToString() + ")');<" + "/" + "script>");
                }
            }
            else
            {
                Page.ClientScript.RegisterStartupScript(typeof(Page), "missing_audit", "<script type=\"text/javascript\">alert('Could not find the audit ID ( " + dsAudit.Tables[0].Rows[0]["auditid"].ToString() + ")');<" + "/" + "script>");
            }
        }