protected void btnSubmit_Click(Object Sender, EventArgs e) { int intResourceParent = Int32.Parse(lblResourceParent.Text); ds = oResourceRequest.Get(intResourceParent); if (ds.Tables[0].Rows.Count > 0) { int intRequest = Int32.Parse(ds.Tables[0].Rows[0]["requestid"].ToString()); int intItem = Int32.Parse(ds.Tables[0].Rows[0]["itemid"].ToString()); int intService = Int32.Parse(ds.Tables[0].Rows[0]["serviceid"].ToString()); int intNumber = Int32.Parse(ds.Tables[0].Rows[0]["number"].ToString()); string strCVT = "CVT" + intRequest.ToString() + "-" + intService.ToString() + "-" + intNumber.ToString(); string strService = oService.GetName(intService); if (intService == 0) { strService = oRequestItem.GetItemName(intItem); } int intApp = oRequestItem.GetItemApplication(intItem); int intProject = Int32.Parse(oRequest.Get(intRequest, "projectid")); Projects oProject = new Projects(intProfile, dsn); ProjectsPending oProjectsPending = new ProjectsPending(intProfile, dsn, intEnvironment); Variables oVariable = new Variables(intEnvironment); RequestFields oRequestField = new RequestFields(intProfile, dsn); int intRequester = Int32.Parse(oRequest.Get(intRequest, "userid")); int intPC = 0; int intIE = 0; if (intProject > 0) { if (oProject.Get(intProject, "lead") != "") { intPC = Int32.Parse(oProject.Get(intProject, "lead")); } if (oProject.Get(intProject, "engineer") != "") { intIE = Int32.Parse(oProject.Get(intProject, "engineer")); } } else { try { intPC = Int32.Parse(oProjectsPending.GetRequest(intRequest, "lead")); intIE = Int32.Parse(oProjectsPending.GetRequest(intRequest, "engineer")); } catch { } } string strCC = ""; if (intPC > 0) { strCC += oUser.GetName(intPC) + ";"; } if (intIE > 0) { strCC += oUser.GetName(intIE) + ";"; } int intEnhancement = 0; if (panEnhancement.Visible) { DataSet dsEnhancement = oEnhancement.GetRequest(intRequest); if (dsEnhancement.Tables[0].Rows.Count == 1) { intEnhancement = Int32.Parse(dsEnhancement.Tables[0].Rows[0]["id"].ToString()); } } if (radReject.Checked == true || (panEnhancement.Visible && radEnhancementReject.Checked)) { string strComments = txtEnhancementReject.Text.Trim(); if (strComments == "" && txtReject.Text.Trim() != "") { strComments = "<p>The following comments were added:<br/>" + oFunction.FormatText(txtReject.Text) + "</p>"; } string strDefault = oUser.GetApplicationUrl(intRequester, intAssignPage); string strEMailIdsBCC = oFunction.GetGetEmailAlertsEmailIds("EMAILGRP_REQUEST_ASSIGNMENT,EMAILGRP_REQUEST_STATUS"); if (strDefault == "" || oApplication.Get(intApp, "tpm") != "1") { oFunction.SendEmail("Request REJECTED: " + strService, oUser.GetName(intRequester), strCC, strEMailIdsBCC, "Request REJECTED: " + strService, "<p>The following request has been rejected by <b>" + oUser.GetFullName(intProfile) + "</b><p><p>" + oResourceRequest.GetSummary(intResourceParent, 0, intEnvironment, dsnServiceEditor, dsnAsset, dsnIP) + "</p>" + strComments, true, false); } else { oFunction.SendEmail("Request REJECTED: " + strService, oUser.GetName(intRequester), strCC, strEMailIdsBCC, "Request REJECTED: " + strService, "<p>The following request has been rejected by <b>" + oUser.GetFullName(intProfile) + "</b><p><p>" + oResourceRequest.GetSummary(intResourceParent, 0, intEnvironment, dsnServiceEditor, dsnAsset, dsnIP) + "</p>" + strComments + "<p><a href=\"" + oVariable.URL() + "/redirect.aspx?referrer=/" + strDefault + oPage.GetFullLink(intAssignPage) + "?rrid=" + intResourceParent.ToString() + "\" target=\"_blank\">Click here to assign a new project manager to your request.</a></p>", true, false); } oResourceRequest.UpdateAccepted(intResourceParent, -1); oResourceRequest.UpdateReason(intResourceParent, txtReject.Text); if (panEnhancement.Visible) { oResourceRequest.UpdateStatusOverall(intResourceParent, (int)EnhancementStatus.Denied); oResourceRequest.UpdateReason(intResourceParent, txtEnhancementReject.Text); oEnhancement.AddLog(intEnhancement, 0, "Rejected", intProfile, ""); } } else if (radHold.Checked == true) { oResourceRequest.UpdateStatusOverall(intResourceParent, 5); oResourceRequest.UpdateReason(intResourceParent, txtHold.Text); } else { if (panEnhancement.Visible && radEnhancementLong.Checked) { oResourceRequest.UpdateStatusOverall(intResourceParent, (int)EnhancementStatus.AwaitingLongDocument); oEnhancement.AddLog(intEnhancement, 0, "Sent Back to Client for Additonal Requirements", intProfile, ""); } else if (panEnhancement.Visible && radEnhancementDuplicate.Checked) { oResourceRequest.UpdateStatusOverall(intResourceParent, (int)EnhancementStatus.Duplicate); oEnhancement.AddLog(intEnhancement, 0, "Duplicate", intProfile, ""); } else { if (oResourceRequest.Get(intResourceParent, "assigned") == "") // hasn't already been assigned. { string strComments = ""; if (txtComments.Text != "") { strComments = "<p>The following comments were added:<br/>" + oFunction.FormatText(txtComments.Text) + "</p>"; } if (panEnhancement.Visible) { oEnhancement.UpdateModuleID(intResourceParent, Int32.Parse(ddlModule.SelectedItem.Value)); oEnhancement.AddLog(intEnhancement, 0, "Assigned", intProfile, ""); } bool boolSolo = (oResourceRequest.Get(intResourceParent, "solo") == "1"); int intAssigned = 0; bool boolRejected = (oResourceRequest.Get(intResourceParent, "accepted") == "-1"); if (boolRejected == true) { oResourceRequest.UpdateRejected(intResourceParent, 1); intAssigned = Int32.Parse(Request.Form[hdnManager.UniqueID]); } else { intAssigned = Int32.Parse(ddlUser.SelectedItem.Value); oResourceRequest.UpdateAccepted(intResourceParent, 1); } # region "Send Service Center Notification" // intAssigned = USERID //if (intService = Configuration.AppSettings["DECOMMISSION_SERVER_NEW"] // get serverid from cv_WM_server_decommission based on requestid, itemid, number // generate SC email with attachment in HTML format with "Assign TO: USER" at the top (only for non-vmware) //int intServerDecommServiceID = Int32.Parse(ConfigurationManager.AppSettings["SERVICEID_SERVER_DECOMMISSION"]); //if (intService == intServerDecommServiceID) //{ // SendServiceCenterNotification(intRequest, intItem, intNumber, intAssigned); //} #endregion oProject.Update(intProject, 2); int intResourceWorkflow = oResourceRequest.AddWorkflow(intResourceParent, 0, oResourceRequest.Get(intResourceParent, "name"), intAssigned, Int32.Parse(txtQuantity.Text), double.Parse(txtHours.Text), 2, 0); oLog.AddEvent(intRequest.ToString(), strCVT, "Request assigned by " + oUser.GetFullNameWithLanID(intProfile) + " to " + oUser.GetFullNameWithLanID(intAssigned), LoggingType.Debug); oResourceRequest.UpdateComments(intResourceParent, txtComments.Text); oResourceRequest.UpdateAssignedBy(intResourceParent, intProfile); ProjectRequest oProjectRequest = new ProjectRequest(intProfile, dsn); string strDefault = oUser.GetApplicationUrl(intAssigned, intViewPage); string strNotify = ""; string strSpacerRow = "<tr><td colspan=\"3\"><img src=\"" + oVariable.ImageURL() + "/images/spacer.gif\" border=\"0\" width=\"1\" height=\"7\" /></td></tr>"; if (txtHours.Enabled == true) { oResourceRequest.UpdateDevices(intResourceParent, Int32.Parse(txtQuantity.Text), double.Parse(txtHours.Text)); } if (boolSolo == true) { oResourceRequest.UpdateStatusOverall(intResourceParent, 2); if (oApplication.Get(intApp, "tpm") != "1" && oProject.Get(intProject, "number") == "") { oProject.Update(intProject, oProjectNumber.New()); } if (intItem != intImplementorDistributed && intItem != intImplementorMidrange) { string strEMailIdsBCC = oFunction.GetGetEmailAlertsEmailIds("EMAILGRP_REQUEST_ASSIGNMENT"); //if (oProject.Get(intProject, "number").StartsWith("CV") == false) // strNotify = "<p><span style=\"color:#0000FF\"><b>PROJECT COORDINATOR:</b> Please allocate the hours listed above for each resource in Clarity.</span></p>"; if (strDefault == "") { oFunction.SendEmail("Request Assignment: " + strService, oUser.GetName(intAssigned), "", strEMailIdsBCC, "Request Assignment: " + strService, "<p><b>The following request has been assigned to you by " + oUser.GetFullName(intProfile) + "</b><p>" + strComments + "<p>" + oResourceRequest.GetWorkflowSummary(intResourceWorkflow, intEnvironment, dsnServiceEditor, dsnAsset, dsnIP) + "</p>", true, false); } else { if (intProject > 0) { oFunction.SendEmail("Request Assignment: " + strService, oUser.GetName(intAssigned), "", strEMailIdsBCC, "Request Assignment: " + strService, "<p><b>The following request has been assigned to you by " + oUser.GetFullName(intProfile) + "</b><p>" + strComments + "<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 new assignment.</a></p>", true, false); } else { oFunction.SendEmail("Request Assignment: " + strService, oUser.GetName(intAssigned), "", strEMailIdsBCC, "Request Assignment: " + strService, "<p><b>The following request has been assigned to you by " + oUser.GetFullName(intProfile) + "</b><p>" + strComments + "<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 new assignment.</a></p>", true, false); } } string strActivity = "<tr><td><b>Resource:</b></td><td> </td><td>" + oUser.GetFullName(intAssigned) + "</td></tr>"; strActivity += strSpacerRow; strActivity += "<tr><td><b>Service:</b></td><td> </td><td>" + strService + "</td></tr>"; strActivity = "<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" style=\"" + oVariable.DefaultFontStyle() + "\">" + strActivity + "</table>"; string strDeliverable = oApplication.Get(intApp, "deliverables_doc"); if (strDeliverable.Trim() != "") { strDeliverable = "<p><a href=\"" + oVariable.URL() + strDeliverable + "\">Click here to view the service deliverables</a></p>"; } if (oService.Get(intService, "notify_client") != "0") { oFunction.SendEmail("Request Assignment: " + strService, oUser.GetName(intRequester), strCC, strEMailIdsBCC, "Request Assignment: " + strService, "<p><b>A resource has been assigned to the following request...</b><p><p>" + oResourceRequest.GetWorkflowSummary(intResourceWorkflow, intEnvironment, dsnServiceEditor, dsnAsset, dsnIP) + "</p><p>" + strActivity + "</p>" + strDeliverable + strNotify, true, false); } } } else { // ADD PM string strEMailIdsBCC = oFunction.GetGetEmailAlertsEmailIds("EMAILGRP_REQUEST_ASSIGNMENT"); if (strDefault == "") { oFunction.SendEmail("Request Assignment", oUser.GetName(intAssigned), "", strEMailIdsBCC, "Request Assignment", "<p><b>The following project has been assigned to you by " + oUser.GetFullName(intProfile) + "</b><p>" + strComments + "<p>" + oProjectRequest.GetBody(intRequest, intEnvironment, true) + "</p>", true, false); } else { if (intProject > 0) { oFunction.SendEmail("Request Assignment", oUser.GetName(intAssigned), "", strEMailIdsBCC, "Request Assignment", "<p><b>The following project has been assigned to you by " + oUser.GetFullName(intProfile) + "</b><p>" + strComments + "<p>" + oProjectRequest.GetBody(intRequest, intEnvironment, true) + "</p><p><a href=\"" + oVariable.URL() + "/redirect.aspx?referrer=/" + strDefault + oPage.GetFullLink(intViewPage) + "?pid=" + intProject.ToString() + "\" target=\"_blank\">Click here to review your new assignment.</a></p>", true, false); } else { oFunction.SendEmail("Request Assignment", oUser.GetName(intAssigned), "", strEMailIdsBCC, "Request Assignment", "<p><b>The following project has been assigned to you by " + oUser.GetFullName(intProfile) + "</b><p>" + strComments + "<p>" + oProjectRequest.GetBody(intRequest, intEnvironment, true) + "</p><p><a href=\"" + oVariable.URL() + "/redirect.aspx?referrer=/frame/resource_request.aspx?rrid=" + intResourceWorkflow.ToString() + "\" target=\"_blank\">Click here to review your new assignment.</a></p>", true, false); } } string strExecutive = oProject.Get(intProject, "executive"); string strWorking = oProject.Get(intProject, "working"); string strActivity = "<tr><td><b>Resource:</b></td><td> </td><td>" + oUser.GetFullName(intAssigned) + "</td></tr>"; strActivity += strSpacerRow; strActivity += "<tr><td><b>Service:</b></td><td> </td><td>Project Coordinator</td></tr>"; strActivity = "<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" style=\"" + oVariable.DefaultFontStyle() + "\">" + strActivity + "</table>"; string strDeliverable = oApplication.Get(intApp, "deliverables_doc"); if (strDeliverable.Trim() != "") { strDeliverable = "<p><a href=\"" + oVariable.URL() + strDeliverable + "\">Click here to view the service deliverables</a></p>"; } if (oService.Get(intService, "notify_client") != "0") { oFunction.SendEmail("Request Assignment", oUser.GetName(intRequester), strExecutive + ";" + strWorking + ";" + strCC, strEMailIdsBCC, "Request Assignment", "<p><b>A resource has been assigned to the following project...</b><p><p>" + oProjectRequest.GetBody(intRequest, intEnvironment, true) + "</p><p>" + strActivity + "</p>" + strDeliverable + strNotify, true, false); } } } } } }
protected void Page_Load(object sender, EventArgs e) { intProfile = Int32.Parse(Request.Cookies["profileid"].Value); oProject = new Projects(intProfile, dsn); oFunction = new Functions(intProfile, dsn, intEnvironment); oUser = new Users(intProfile, dsn); oPage = new Pages(intProfile, dsn); oResourceRequest = new ResourceRequest(intProfile, dsn); oRequestItem = new RequestItems(intProfile, dsn); oRequest = new Requests(intProfile, dsn); oService = new Services(intProfile, dsn); oServiceRequest = new ServiceRequests(intProfile, dsn); oRequestField = new RequestFields(intProfile, dsn); oApplication = new Applications(intProfile, dsn); oServiceDetail = new ServiceDetails(intProfile, dsn); oDelegate = new Delegates(intProfile, dsn); oEnhancement = new Enhancements(intProfile, dsn); oVariable = new Variables(intEnvironment); if (Request.QueryString["applicationid"] != null && Request.QueryString["applicationid"] != "") { intApplication = Int32.Parse(Request.QueryString["applicationid"]); } if (Request.QueryString["pageid"] != null && Request.QueryString["pageid"] != "") { intPage = Int32.Parse(Request.QueryString["pageid"]); } if (Request.Cookies["application"] != null && Request.Cookies["application"].Value != "") { intApplication = Int32.Parse(Request.Cookies["application"].Value); } if (Request.QueryString["rrid"] != null && Request.QueryString["rrid"] != "") { // Start Workflow Change lblResourceWorkflow.Text = Request.QueryString["rrid"]; int intResourceWorkflow = Int32.Parse(Request.QueryString["rrid"]); int intResourceParent = oResourceRequest.GetWorkflowParent(intResourceWorkflow); ds = oResourceRequest.Get(intResourceParent); // End Workflow Change intRequest = Int32.Parse(ds.Tables[0].Rows[0]["requestid"].ToString()); DataSet dsEnhancement = oEnhancement.GetRequest(intRequest); if (dsEnhancement.Tables[0].Rows.Count == 1) { intID = Int32.Parse(dsEnhancement.Tables[0].Rows[0]["id"].ToString()); lblStatus.Text = oEnhancement.Status(intID); } else { lblStatus.Text = "Not Found (" + dsEnhancement.Tables[0].Rows.Count.ToString() + ")"; } lblRequestedBy.Text = oUser.GetFullName(oRequest.GetUser(intRequest)); lblRequestedOn.Text = DateTime.Parse(oResourceRequest.Get(intResourceParent, "created")).ToString(); lblDescription.Text = oRequest.Get(intRequest, "description"); if (lblDescription.Text == "") { lblDescription.Text = "<i>No information</i>"; } intItem = Int32.Parse(ds.Tables[0].Rows[0]["itemid"].ToString()); intNumber = Int32.Parse(ds.Tables[0].Rows[0]["number"].ToString()); // Start Workflow Change bool boolComplete = (oResourceRequest.GetWorkflow(intResourceWorkflow, "status") == "3"); int intUser = Int32.Parse(oResourceRequest.GetWorkflow(intResourceWorkflow, "userid")); txtCustom.Text = oResourceRequest.GetWorkflow(intResourceWorkflow, "name"); double dblAllocated = double.Parse(oResourceRequest.GetWorkflow(intResourceWorkflow, "allocated")); // End Workflow Change intService = Int32.Parse(ds.Tables[0].Rows[0]["serviceid"].ToString()); lblService.Text = oService.Get(intService, "name"); int intApp = oRequestItem.GetItemApplication(intItem); if (Request.QueryString["save"] != null && Request.QueryString["save"] != "") { Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "saved", "<script type=\"text/javascript\">alert('Information Saved Successfully');<" + "/" + "script>"); } if (Request.QueryString["status"] != null && Request.QueryString["status"] != "") { Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "statusd", "<script type=\"text/javascript\">alert('Status Updates has been Added');<" + "/" + "script>"); } if (!IsPostBack) { double dblUsed = oResourceRequest.GetWorkflowUsed(intResourceWorkflow); lblUpdated.Text = oResourceRequest.GetUpdated(intResourceWorkflow); if (dblAllocated == dblUsed) { if (boolComplete == false) { oFunction.ConfigureToolButton(btnComplete, "/images/tool_complete"); btnComplete.Attributes.Add("onclick", "return confirm('Are you sure you want to mark this as completed and remove it from your workload?');"); } else { oFunction.ConfigureToolButton(btnComplete, "/images/tool_complete"); btnComplete.Attributes.Add("onclick", "alert('This task has already been marked COMPLETE. You can close this window.');return false;"); } } else { btnComplete.ImageUrl = "/images/tool_complete_dbl.gif"; btnComplete.Enabled = false; } dblUsed = (dblUsed / dblAllocated) * 100; intProject = oRequest.GetProjectNumber(intRequest); hdnTab.Value = "D"; panWorkload.Visible = true; LoadLists(); LoadStatus(intResourceWorkflow); LoadInformation(intResourceWorkflow); btnDenied.Attributes.Add("onclick", "return CloseWindow();"); oFunction.ConfigureToolButton(btnSave, "/images/tool_save"); oFunction.ConfigureToolButton(btnPrint, "/images/tool_print"); btnPrint.Attributes.Add("onclick", "return PrintWindow();"); oFunction.ConfigureToolButton(btnClose, "/images/tool_close"); btnClose.Attributes.Add("onclick", "return ExitWindow();"); btnMessage.Attributes.Add("onclick", "ShowHideDiv2('" + divMessage.ClientID + "');return false;"); // 6/1/2009 - Load ReadOnly View if (oResourceRequest.CanUpdate(intProfile, intResourceWorkflow, false) == false) { oFunction.ConfigureToolButtonRO(btnSave, btnComplete); //panDenied.Visible = true; } } } else { panDenied.Visible = true; } }