Exemplo n.º 1
0
    private void loadAttachments()
    {
        WorkItem_Task task = new WorkItem_Task(taskID: this.taskID);

        if (task == null || !task.Load())
        {
            return;
        }

        txtWorkloadNumber.Text = string.Format("{0} - {1}", task.WorkItemID.ToString(), task.Task_Number.ToString());
        txtTitle.Text          = HttpUtility.HtmlDecode(Uri.UnescapeDataString(task.Title.Replace(" ", "").Trim()));

        DataTable dt = WorkItem_Task.WorkItem_Task_GetAttachmentList(WorkItemTaskID: this.taskID);

        if (dt != null && dt.Rows.Count > 0)
        {
            Attachment_Count = dt.Rows.Count;
        }
        if (dt != null)
        {
            dc = dt.Columns;

            if (dt.Rows.Count > 0)
            {
                gridAttachments.DataSource = dt;
                gridAttachments.DataBind();
            }
        }
    }
Exemplo n.º 2
0
    public static string ValidateSubTaskNumber(int subTaskNumber, int parentTaskID)
    {
        var result = WTSPage.CreateDefaultResult();

        WorkItem_Task task   = new WorkItem_Task();
        bool          loaded = task.LoadByNumber(parentTaskID, subTaskNumber);

        if (loaded)
        {
            result["WORKITEMID"]      = task.WorkItemID.ToString();
            result["WORKITEM_TASKID"] = task.WorkItem_TaskID.ToString();
            result["TASK_NUMBER"]     = subTaskNumber.ToString();

            result["title"]  = task.Title;
            result["exists"] = "true";
        }
        else
        {
            result["exists"] = "false";
        }

        result["success"] = "true";

        return(JsonConvert.SerializeObject(result, Newtonsoft.Json.Formatting.None));
    }
Exemplo n.º 3
0
    public static string DeleteAttachment(int WorkItemTaskID, int id)
    {
        Dictionary <string, string> result = new Dictionary <string, string>()
        {
            { "deleted", "" }, { "id", "" }, { "error", "" }
        };

        bool   deleted = false;
        string errorMsg = string.Empty, ids = string.Empty;

        try
        {
            deleted = WorkItem_Task.Attachment_Delete(WorkItemTaskID: WorkItemTaskID, attachmentID: id, errorMsg: out errorMsg);
        }
        catch (Exception ex)
        {
            LogUtility.LogException(ex);
            errorMsg += ": " + ex.Message;
            deleted   = false;
        }

        result["deleted"] = deleted.ToString();
        result["id"]      = id.ToString();
        result["error"]   = errorMsg;

        return(JsonConvert.SerializeObject(result, Formatting.None));
    }
Exemplo n.º 4
0
 public static int WorkItem_TaskID_Get(int itemID, int taskNumber)
 {
     try
     {
         return(WorkItem_Task.WorkItem_TaskID_Get(itemID, taskNumber));
     }
     catch (Exception) { return(-1); }
 }
Exemplo n.º 5
0
    public static string DeleteComments(int taskID, dynamic arrCommentIDsToDelete)
    {
        Dictionary <string, string> result = new Dictionary <string, string>()
        {
            { "deleted", "" }
            , { "ids", "" }
            , { "error", "" }
        };

        bool          deleted = false;
        string        errorMsg = string.Empty, ids = string.Empty;
        int           commentId = 0;
        WorkItem_Task task      = new WorkItem_Task(taskID);

        foreach (dynamic id in arrCommentIDsToDelete)
        {
            commentId = 0;

            try
            {
                if (int.TryParse(id.ToString(), out commentId))
                {
                    deleted = task.DeleteComment(errorMsg: out errorMsg, commentId: commentId);

                    if (deleted)
                    {
                        ids += "," + commentId.ToString();
                    }
                }
            }
            catch (Exception ex)
            {
                LogUtility.LogException(ex);
                errorMsg += ": " + ex.Message;
                deleted   = false;
            }
        }

        ids = ids.TrimEnd(new char[] { ',' });
        if (ids.Length > 0)
        {
            deleted = true;
        }

        result["deleted"] = deleted.ToString();
        result["ids"]     = ids;
        result["error"]   = errorMsg;

        return(JsonConvert.SerializeObject(result, Formatting.None));
    }
Exemplo n.º 6
0
    private void loadComments()
    {
        WorkItem_Task task = new WorkItem_Task(taskID: this.WorkItem_TaskID);

        if (task == null || !task.Load())
        {
            return;
        }

        txtWorkloadNumber.Text = string.Format("{0} - {1}", task.WorkItemID.ToString(), task.Task_Number.ToString());
        txtTitle.Text          = HttpUtility.HtmlDecode(Uri.UnescapeDataString(task.Title.Replace("&nbsp;", "").Trim()));

        DataTable dt = task.GetComments();

        if (dt != null && dt.Rows.Count > 0)
        {
            Comment_Count = dt.Rows.Count;
        }

        Page.ClientScript.RegisterArrayDeclaration("arrComments", JsonConvert.SerializeObject(dt, Newtonsoft.Json.Formatting.None));
    }
Exemplo n.º 7
0
    protected void btnSubmit_Click(Object sender, EventArgs e)
    {
        bool   exists                = false;
        int    newAttachmentID       = 0;
        int    newModuleAttachmentID = 0;
        bool   saved    = false;
        string errorMsg = string.Empty;

        var dtfilesAttr = JsonConvert.DeserializeObject <DataTable>(inpHide.Value);

        if (this.Edit || (this.fileUpload1.HasFile))
        {
            if (!this.Edit)                  //adding an attachment, not editing one
            {
                int i = 0;
                foreach (HttpPostedFile uploadedFile in fileUpload1.PostedFiles)
                {
                    string   fileName       = "";
                    string   fileExtension  = "";
                    string   strFileTypeID  = "";
                    string   strDescription = "";
                    int      intAttachType  = 0;
                    Stream   fStream        = uploadedFile.InputStream;
                    int      fileLength     = uploadedFile.ContentLength;
                    byte[]   fByte          = new byte[fileLength];
                    string   fileType       = uploadedFile.ContentType;
                    string[] splitFileName  = fileName.Split('\\');
                    fileName = splitFileName[splitFileName.Length - 1];

                    fStream.Read(fByte, 0, fByte.Length);
                    fStream.Close();

                    if (fileUpload1.PostedFiles.Count > 1)
                    {
                        fileName      = dtfilesAttr.Rows[i]["name"].ToString();
                        strFileTypeID = dtfilesAttr.Rows[i]["type"].ToString();
                        int.TryParse(strFileTypeID, out intAttachType);
                        strDescription = dtfilesAttr.Rows[i]["description"].ToString();
                    }
                    else
                    {
                        fileName      = uploadedFile.FileName;
                        strFileTypeID = ddlAttachmentType.SelectedValue;
                        int.TryParse(ddlAttachmentType.SelectedValue, out intAttachType);
                        strDescription = txtDescription.Text;
                    }

                    splitFileName = fileName.Split('\\');
                    fileName      = splitFileName[splitFileName.Length - 1];
                    splitFileName = fileName.Split('.');
                    fileExtension = splitFileName[splitFileName.Length - 1];

                    switch (Module.ToUpper())
                    {
                    case "TASK":
                        saved = WorkItem_Task.Attachment_Add(WorkItemTaskID: this.workItemTaskID
                                                             , attachmentTypeID: intAttachType
                                                             , fileName: fileName
                                                             , title: strDescription
                                                             , description: strDescription
                                                             , fileData: fByte
                                                             , extensionID: 0
                                                             , newAttachmentID: out newAttachmentID
                                                             , newWorkItemAttachmentID: out newModuleAttachmentID
                                                             , errorMsg: out errorMsg);
                        break;

                    case "WORKITEM":
                        saved = WorkloadItem.Attachment_Add(workItemID: this.WorkItemID
                                                            , attachmentTypeID: intAttachType
                                                            , fileName: fileName
                                                            , title: strDescription
                                                            , description: strDescription
                                                            , fileData: fByte
                                                            , extensionID: 0
                                                            , newAttachmentID: out newAttachmentID
                                                            , newWorkItemAttachmentID: out newModuleAttachmentID
                                                            , errorMsg: out errorMsg);
                        break;

                    case "WORKREQUEST":
                        saved = WorkRequest.Attachment_Add(workRequestID: this.WorkRequestID
                                                           , attachmentTypeID: intAttachType
                                                           , fileName: fileName
                                                           , title: strDescription
                                                           , description: strDescription
                                                           , fileData: fByte
                                                           , extensionID: 0
                                                           , newAttachmentID: out newAttachmentID
                                                           , newWorkItemAttachmentID: out newModuleAttachmentID
                                                           , errorMsg: out errorMsg);
                        break;

                    case "MEETING":
                        saved = AOR.AORMeetingInstanceAttachment_Save(0, AORMeetingInstanceID, 0, intAttachType, fileName, strDescription, strDescription, fByte, out newAttachmentID);
                        break;

                    case "RQMTDESC":
                        saved = RQMT.RQMTDescriptionAttachment_Save(0, RQMTDescriptionID, 0, intAttachType, fileName, strDescription, fByte, out newAttachmentID);
                        break;

                    case "MDIMAGE":
                        Dictionary <string, string> result = new Dictionary <string, string> {
                            { "saved", "false" }, { "exists", "false" }, { "newID", "0" }, { "error", "" }
                        };
                        string[] allowedExtensions = new string[] { ".jpg", ".jpeg", ".png", ".gif" };
                        string   extension         = Path.GetExtension(fileName).ToLower();

                        if (!allowedExtensions.Contains(extension))
                        {
                            continue;
                        }

                        result   = MasterData.Image_Add(ImageName: strDescription, Description: strDescription, FileName: fileName, FileData: fByte);
                        saved    = result["saved"].ToUpper() == "TRUE";
                        errorMsg = result["error"];
                        break;

                    case "NEWS":
                        saved = WTSNews.NewsAttachment_Add(newsID: this.NewsID
                                                           , attachmentTypeID: (int)AttachmentTypeEnum.News
                                                           , fileName: fileName
                                                           , title: strDescription
                                                           , description: strDescription
                                                           , fileData: fByte
                                                           , extensionID: 0
                                                           , newAttachmentID: out newAttachmentID
                                                           //, newWorkItemAttachmentID: out newModuleAttachmentID
                                                           , errorMsg: out errorMsg);
                        break;

                    default:
                        saved = WTSData.Attachment_Add(attachmentTypeID: intAttachType
                                                       , fileName: fileName
                                                       , title: strDescription
                                                       , description: strDescription
                                                       , fileData: fByte
                                                       , extensionID: 0
                                                       , newID: out newAttachmentID
                                                       , errorMsg: out errorMsg);
                        break;
                    }

                    i += 1;
                }
            }
            else
            {
                string fileName = "";
                fileName = fileUpload1.FileName;

                //Stream fStream = fileUpload1.PostedFile.InputStream;
                //int fileLength = fileUpload1.PostedFile.ContentLength;

                //byte[] fByte = new byte[fileLength];

                string fileType = string.Empty;
                if (fileUpload1.PostedFile != null)
                {
                    fileName = fileUpload1.PostedFile.FileName;
                    fileType = fileUpload1.PostedFile.ContentType;
                }
                string[] splitFileName = fileName.Split('\\');
                fileName      = splitFileName[splitFileName.Length - 1];
                splitFileName = fileName.Split('.');

                string fileExtension = splitFileName[splitFileName.Length - 1];
                //fStream.Read(fByte, 0, fByte.Length);
                //fStream.Close();

                if (fileName == "")
                {
                    fileName = this.OriginalFileName;
                }

                string attachmentType = ddlAttachmentType.SelectedValue;
                if (Module == "News")
                {
                    attachmentType = ((int)AttachmentTypeEnum.News).ToString();
                }

                saved = WTSData.Attachment_Update(attachmentID: this.AttachmentID
                                                  , attachmentTypeID: int.Parse(attachmentType)
                                                  , fileName: fileName
                                                  , title: txtDescription.Text
                                                  , description: txtDescription.Text
                                                  //, fileData: fByte
                                                  , exists: out exists
                                                  , errorMsg: out errorMsg);
            }

            if (!saved || errorMsg.Length > 0)
            {
                lblError.Text = errorMsg;
            }
            else
            {
                if (!exists)
                {
                    HasUploaded = 1;
                }
                else
                {
                    AlreadyExists = 1;
                }

                if (Module.ToUpper() == "WORKITEM")
                {
                    Workload.SendWorkloadEmail("WorkItem", false, this.WorkItemID);
                }
            }
        }
    }
Exemplo n.º 8
0
    public static string SaveComments(int taskID, dynamic comments)
    {
        Dictionary <string, string> result = new Dictionary <string, string>()
        {
            { "saved", "0" }
            , { "failed", "0" }
            , { "savedIds", "" }
            , { "failedIds", "" }
            , { "error", "" }
        };

        bool          saved = false;
        int           savedQty = 0, failedQty = 0;
        string        errorMsg = string.Empty, tempMsg = string.Empty, ids = string.Empty, failedIds = string.Empty;
        int           commentId = 0, parentCommentId = 0;
        string        commentText = string.Empty;
        WorkItem_Task task        = new WorkItem_Task(taskID);

        foreach (dynamic comment in comments)
        {
            commentId       = 0;
            parentCommentId = 0;
            //comment[0]=commentid, comment[1]=parentid, comment[2]=text
            try
            {
                commentText = comment[2].ToString();
                if (string.IsNullOrWhiteSpace(comment[0].ToString()) ||
                    !int.TryParse(comment[0].ToString(), out commentId))
                {
                    int.TryParse(comment[1].ToString(), out parentCommentId);
                    saved = task.AddComment(newID: out commentId, errorMsg: out tempMsg, parentCommentID: 0, comment_text: commentText);
                }
                else
                {
                    saved = task.UpdateComment(errorMsg: out tempMsg, commentId: commentId, comment_text: commentText);
                }


                if (saved)
                {
                    ids      += string.Format("{0}{1}", ids.Length > 0 ? "," : "", commentId.ToString());
                    savedQty += 1;
                }
                else
                {
                    failedQty += 1;
                }

                if (tempMsg.Length > 0)
                {
                    errorMsg = string.Format("{0}{1}{2}", errorMsg, errorMsg.Length > 0 ? Environment.NewLine : "", tempMsg);
                }
            }
            catch (Exception ex)
            {
                LogUtility.LogException(ex);
                errorMsg += ": " + ex.Message;
            }
        }

        result["savedIds"]  = ids;
        result["failedIds"] = failedIds;
        result["saved"]     = savedQty.ToString();
        result["failed"]    = failedQty.ToString();
        result["error"]     = errorMsg;

        return(JsonConvert.SerializeObject(result, Formatting.None));
    }
Exemplo n.º 9
0
    public static string SaveTask(int taskID, int workItemID, int priorityID
                                  , string title, string description, int assignedToID, int primaryResourceID, int secondaryResourceID
                                  , int primaryBusResourceID, int secondaryBusResourceID
                                  , string plannedStartDate, string actualStartDate, int estimatedEffortID, int actualEffortID, string actualEndDate
                                  , int completionPercent, int statusID, int workItemTypeID, int businessRank, int sortOrder, string pageOption, string SRNumber, int assignedToRankID, int productVersionID, string dateNeeded, bool businessReview, string aors)
    {
        Dictionary <string, string> result = new Dictionary <string, string>()
        {
            { "saved", "" }
            , { "id", "0" }
            , { "error", "" }
            , { "pageOption", pageOption }
        };
        bool   saved = false, loaded = false, savedAOR = false;
        string errorMsg = string.Empty;

        try
        {
            HttpServerUtility server = HttpContext.Current.Server;
            description = server.UrlDecode(description);

            int submittedByID = 0;
            submittedByID = UserManagement.GetUserId_FromUsername();

            WorkItem_Task task = new WorkItem_Task(taskID);
            if (taskID > 0)
            {
                loaded = task.Load();
            }

            task.WorkItemID             = workItemID;
            task.PriorityID             = priorityID;
            task.Title                  = title;
            task.Description            = description;
            task.AssignedResourceID     = assignedToID;
            task.PrimaryResourceID      = primaryResourceID;
            task.SecondaryResourceID    = secondaryResourceID;
            task.PrimaryBusResourceID   = primaryBusResourceID;
            task.SecondaryBusResourceID = secondaryBusResourceID;
            task.EstimatedStartDate     = plannedStartDate;
            task.ActualStartDate        = actualStartDate;
            task.EstimatedEffortID      = estimatedEffortID;
            task.ActualEffortID         = actualEffortID;
            task.ActualEndDate          = actualEndDate;
            task.CompletionPercent      = completionPercent;
            task.StatusID               = statusID;
            task.WorkItemTypeID         = workItemTypeID;
            task.BusinessRank           = businessRank;
            task.Sort_Order             = sortOrder;
            task.SRNumber               = SRNumber;
            task.AssignedToRankID       = assignedToRankID;
            task.ProductVersionID       = productVersionID;
            task.NeedDate               = dateNeeded;
            task.BusinessReview         = businessReview;

            XmlDocument docAORs = (XmlDocument)JsonConvert.DeserializeXmlNode(aors, "aors");

            if (taskID == 0)
            {
                task.SubmittedByID = submittedByID;

                saved = task.Add(newID: out taskID, errorMsg: out errorMsg);

                if (saved)
                {
                    savedAOR = AOR.AORSubTask_Save(TaskID: taskID, AORs: docAORs, Add: 0, CascadeAOR: false);
                    Workload.SendWorkloadEmail("WorkItemTask", true, taskID);
                }
            }
            else
            {
                if (loaded)
                {
                    saved = task.Save(errorMsg: out errorMsg);
                }

                if (saved)
                {
                    savedAOR = AOR.AORSubTask_Save(TaskID: taskID, AORs: docAORs, Add: 0, CascadeAOR: false);
                    Workload.SendWorkloadEmail("WorkItemTask", false, taskID);
                }
            }
        }
        catch (Exception ex)
        {
            saved    = false;
            errorMsg = ex.Message;
            LogUtility.LogException(ex);
        }

        result["saved"] = saved.ToString();
        result["id"]    = taskID.ToString();
        result["error"] = errorMsg;

        return(JsonConvert.SerializeObject(result, Newtonsoft.Json.Formatting.None));
    }
Exemplo n.º 10
0
    private void loadTask()
    {
        WorkItem_Task task = new WorkItem_Task(taskID: this.WorkItem_TaskID);

        if (task == null || !task.Load())
        {
            return;
        }

        txtWorkloadNumber.Text = string.Format("{0} - {1}", task.WorkItemID.ToString(), task.Task_Number.ToString());
        WTSUtility.SelectDdlItem(ddlPriority, task.PriorityID.ToString(), task.Priority.ToString());
        txtParentTitle.Text = HttpUtility.HtmlDecode(Uri.UnescapeDataString(task.ParentTitle.Replace("&nbsp;", "").Trim()));
        txtTitle.Text       = HttpUtility.HtmlDecode(Uri.UnescapeDataString(task.Title.Replace("&nbsp;", "").Trim()));

        ListItem li = null;

        li = ddlAssignedTo.Items.FindByValue(task.AssignedResourceID.ToString());
        if (li == null)
        {
            li = new ListItem(task.AssignedResource.ToString(), task.AssignedResourceID.ToString());
            int uID = 0;
            int.TryParse(task.AssignedResourceID.ToString(), out uID);
            WTS_User u = new WTS_User(uID);
            u.Load();

            if (u.AORResourceTeam)
            {
                li.Attributes.Add("og", "Action Team");

                DataTable dt = AOR.AORResourceTeamList_Get(AORID: 0, AORReleaseID: 0);
                dt.DefaultView.RowFilter = "ResourceTeamUserID = " + uID;
                dt = dt.DefaultView.ToTable();
                if (dt.Rows.Count > 0)
                {
                    li.Attributes.Add("aorid", dt.Rows[0]["AORID"].ToString());
                }

                ddlAssignedTo.Items.Insert(1, li);
            }
            else
            {
                ddlAssignedTo.Items.Insert(0, li);
            }
        }
        li.Selected = true;

        WTSUtility.SelectDdlItem(ddlPrimaryResource, task.PrimaryResourceID.ToString(), task.PrimaryResource.ToString());
        WTSUtility.SelectDdlItem(ddlSecondaryResource, task.SecondaryResourceID.ToString(), task.SecondaryResource.ToString());
        WTSUtility.SelectDdlItem(ddlPrimaryBusResource, task.PrimaryBusResourceID.ToString(), task.PrimaryBusResource.ToString());
        WTSUtility.SelectDdlItem(ddlSecondaryBusResource, task.SecondaryBusResourceID.ToString(), task.SecondaryBusResource.ToString());
        txtStartDate_Planned.Text = task.EstimatedStartDate;
        txtStartDate_Actual.Text  = task.ActualStartDate;
        txtEndDate_Actual.Text    = task.ActualEndDate;
        WTSUtility.SelectDdlItem(ddlHours_Planned, task.EstimatedEffortID.ToString(), task.PlannedHours.ToString());
        WTSUtility.SelectDdlItem(ddlHours_Actual, task.ActualEffortID.ToString(), task.ActualHours.ToString());
        WTSUtility.SelectDdlItem(ddlPercentComplete, task.CompletionPercent.ToString(), task.CompletionPercent.ToString());
        WTSUtility.SelectDdlItem(ddlStatus, task.StatusID.ToString(), task.Status);

        filterStatuses(false);

        txtBusinessRank.Text          = task.BusinessRank.ToString();
        txtSortOrder.Text             = task.Sort_Order.ToString();
        textAreaDescription.InnerHtml = task.Description;
        txtSRNumber.Text = task.SRNumber.ToString();

        WTSUtility.SelectDdlItem(ddlAssignedToRank, task.AssignedToRankID.ToString(), "");
        WTSUtility.SelectDdlItem(ddlProductVersion, task.ProductVersionID.ToString(), task.ProductVersion.ToString());
        WTSUtility.SelectDdlItem(ddlWorkItemType, task.WorkItemTypeID.ToString(), task.WorkItemType.ToString());
        this.ProductVersionID       = task.ProductVersionID;
        this.lblProductVersion.Text = task.ProductVersion;
        this.SystemID             = task.SystemID;
        this.UnclosedSRTasks      = task.UnclosedSRTasks;
        txtDateNeeded.Text        = task.NeedDate;
        chkBusinessReview.Checked = task.BusinessReview;

        if (!IsNew)
        {
            this.labelCreated.Text = task.CreatedBy + " - " + task.CreatedDate;
            this.labelUpdated.Text = task.UpdatedBy + " - " + task.UpdatedDate;
        }

        DataTable parentTaskData = WorkloadItem.WorkItem_Get(workItemID: WorkItemID);

        txtResourceGroup.Text = HttpUtility.HtmlDecode(Uri.UnescapeDataString(parentTaskData.Rows[0]["WorkType"].ToString().Replace("&nbsp;", "").Trim()));
        txtResourceGroup.Attributes.Add("ResourceGroupID", HttpUtility.HtmlDecode(Uri.UnescapeDataString(parentTaskData.Rows[0]["WorkTypeID"].ToString())));
        txtFunctionality.Text      = HttpUtility.HtmlDecode(Uri.UnescapeDataString(parentTaskData.Rows[0]["WorkloadGroup"].ToString().Replace("&nbsp;", "").Trim()));
        txtProductionStatus.Text   = HttpUtility.HtmlDecode(Uri.UnescapeDataString(parentTaskData.Rows[0]["ProductionStatus"].ToString().Replace("&nbsp;", "").Trim()));
        txtSystemTask.Text         = HttpUtility.HtmlDecode(Uri.UnescapeDataString(parentTaskData.Rows[0]["WTS_SYSTEM"].ToString().Replace("&nbsp;", "").Trim()));
        txtContract.Text           = HttpUtility.HtmlDecode(Uri.UnescapeDataString(parentTaskData.Rows[0]["CONTRACT"].ToString().Replace("&nbsp;", "").Trim()));
        txtWorkloadAllocation.Text = HttpUtility.HtmlDecode(Uri.UnescapeDataString(parentTaskData.Rows[0]["WorkloadAllocation"].ToString().Replace("&nbsp;", "").Trim()));

        int workAreaID = 0, systemID = 0;

        int.TryParse(parentTaskData.Rows[0]["WorkAreaID"].ToString(), out workAreaID);
        int.TryParse(parentTaskData.Rows[0]["WTS_SYSTEMID"].ToString(), out systemID);

        txtSystemTask.Attributes["WTS_SYSTEMID"] = systemID.ToString();
        txtWorkArea.Attributes["WorkAreaID"]     = workAreaID.ToString();

        this.labelTotalDaysOpened.Text         = task.TotalDaysOpened.ToString();
        this.labelTotalBusinessDaysOpened.Text = task.TotalBusinessDaysOpened.ToString();
        this.labelInProgressDate.Text          = (String.IsNullOrEmpty(task.InProgressDate.ToString())) ? null : task.InProgressDate.Value.ToShortDateString();
        this.labelInProgressTime.Text          = (String.IsNullOrEmpty(task.InProgressDate.ToString())) ? null : task.InProgressDate.Value.ToShortTimeString();
        this.labelDeployedDate.Text            = (String.IsNullOrEmpty(task.DeployedDate.ToString())) ? null : task.DeployedDate.Value.ToShortDateString();
        this.labelDeployedTime.Text            = (String.IsNullOrEmpty(task.DeployedDate.ToString())) ? null : task.DeployedDate.Value.ToShortTimeString();
        this.labelReadyForReviewDate.Text      = (String.IsNullOrEmpty(task.ReadyForReviewDate.ToString())) ? null : task.ReadyForReviewDate.Value.ToShortDateString();
        this.labelReadyForReviewTime.Text      = (String.IsNullOrEmpty(task.ReadyForReviewDate.ToString())) ? null : task.ReadyForReviewDate.Value.ToShortTimeString();
        this.labelClosedDate.Text              = (String.IsNullOrEmpty(task.ClosedDate.ToString())) ? null : task.ClosedDate.Value.ToShortDateString();
        this.labelClosedTime.Text              = (String.IsNullOrEmpty(task.ClosedDate.ToString())) ? null : task.ClosedDate.Value.ToShortTimeString();
        this.labelTotalDaysInProgress.Text     = task.TotalDaysInProgress.ToString();
        this.labelTotalDaysDeployed.Text       = task.TotalDaysDeployed.ToString();
        this.labelTotalDaysReadyForReview.Text = task.TotalDaysReadyForReview.ToString();
        this.labelTotalDaysClosed.Text         = task.TotalDaysClosed.ToString();

        DataTable dtWorkArea   = MasterData.WorkArea_SystemList_Get(workAreaID: workAreaID);
        string    workAreaText = string.Empty;

        if (dtWorkArea != null && dtWorkArea.Rows.Count > 1)
        {
            workAreaText = dtWorkArea.Rows[dtWorkArea.Rows.Count - 1]["ApprovedPriority"].ToString() + " - " + dtWorkArea.Rows[dtWorkArea.Rows.Count - 1]["WorkArea"].ToString();
        }

        txtWorkArea.Text = HttpUtility.HtmlDecode(workAreaText.Replace("&nbsp;", "").Trim());

        DataTable dtAORs = AOR.AORTaskAORList_Get(TaskID: WorkItemID);

        if (dtAORs != null && dtAORs.Rows.Count > 0)
        {
            foreach (DataRow dr in dtAORs.Rows)
            {
                if (dr["AORWorkTypeID"].ToString() == "1")
                {
                    txtWorkloadAOR.Text    = dr["AORID"].ToString() + " (" + dr["Abbreviation"].ToString() + ") - " + dr["AORName"].ToString();
                    txtWorkloadAOR.ToolTip = txtWorkloadAOR.Text;
                }
                if (dr["AORWorkTypeID"].ToString() == "2")
                {
                    txtReleaseAOR.Text    = dr["AORID"].ToString() + " (" + dr["Abbreviation"].ToString() + ") - " + dr["AORName"].ToString();
                    txtReleaseAOR.ToolTip = txtReleaseAOR.Text;
                    ParentRelAORReleaseID = dr["AORReleaseID"].ToString();
                }
            }
        }
    }
Exemplo n.º 11
0
    private void loadLookupData()
    {
        DataSet dsOptions = WorkItem_Task.GetAvailableOptions(workItemID: this.WorkItemID);

        if (dsOptions == null || dsOptions.Tables.Count == 0)
        {
            return;
        }

        ListItem item = null;

        if (dsOptions.Tables.Contains("Priority"))
        {
            ddlPriority.DataSource     = dsOptions.Tables["Priority"];
            ddlPriority.DataTextField  = "PRIORITY";
            ddlPriority.DataValueField = "PRIORITYID";
            ddlPriority.DataBind();
        }

        if (dsOptions.Tables.Contains("TshirtSizes"))
        {
            ddlHours_Planned.DataSource     = dsOptions.Tables["TshirtSizes"];
            ddlHours_Planned.DataTextField  = "EFFORTSIZE";
            ddlHours_Planned.DataValueField = "EFFORTSIZEID";
            ddlHours_Planned.DataBind();
        }

        if (dsOptions.Tables.Contains("TshirtSizes"))
        {
            ddlHours_Actual.DataSource     = dsOptions.Tables["TshirtSizes"];
            ddlHours_Actual.DataTextField  = "EFFORTSIZE";
            ddlHours_Actual.DataValueField = "EFFORTSIZEID";
            ddlHours_Actual.DataBind();
        }

        if (dsOptions.Tables.Contains("User"))
        {
            item = null;
            string name = string.Empty;

            foreach (DataRow row in dsOptions.Tables["User"].Rows)
            {
                name = string.Format("{0} {1}", row["FIRST_NAME"].ToString(), row["LAST_NAME"].ToString());
                item = new ListItem(name, row["WTS_RESOURCEID"].ToString());
                item.Attributes.Add("username", row["USERNAME"].ToString());
                item.Attributes.Add("organizationID", row["ORGANIZATIONID"].ToString());

                ddlAssignedTo.Items.Add(item);

                item = new ListItem(name, row["WTS_RESOURCEID"].ToString());
                item.Attributes.Add("username", row["USERNAME"].ToString());
                item.Attributes.Add("organizationID", row["ORGANIZATIONID"].ToString());

                ddlPrimaryResource.Items.Add(item);

                item = new ListItem(name, row["WTS_RESOURCEID"].ToString());
                item.Attributes.Add("username", row["USERNAME"].ToString());
                item.Attributes.Add("organizationID", row["ORGANIZATIONID"].ToString());

                ddlSecondaryResource.Items.Add(item);

                item = new ListItem(name, row["WTS_RESOURCEID"].ToString());
                item.Attributes.Add("username", row["USERNAME"].ToString());
                item.Attributes.Add("organizationID", row["ORGANIZATIONID"].ToString());

                ddlPrimaryBusResource.Items.Add(item);

                item = new ListItem(name, row["WTS_RESOURCEID"].ToString());
                item.Attributes.Add("username", row["USERNAME"].ToString());
                item.Attributes.Add("organizationID", row["ORGANIZATIONID"].ToString());

                ddlSecondaryBusResource.Items.Add(item);
            }
        }
        if (dsOptions.Tables.Contains("Status"))
        {
            ddlStatus.DataSource     = dsOptions.Tables["Status"];
            ddlStatus.DataTextField  = "Status";
            ddlStatus.DataValueField = "StatusID";
            ddlStatus.DataBind();
        }
        if (dsOptions.Tables.Contains("PercentComplete"))
        {
            ddlPercentComplete.DataSource     = dsOptions.Tables["PercentComplete"];
            ddlPercentComplete.DataTextField  = "Percent";
            ddlPercentComplete.DataValueField = "Percent";
            ddlPercentComplete.DataBind();
        }

        if (dsOptions.Tables.Contains("Rank"))
        {
            ddlAssignedToRank.DataSource     = dsOptions.Tables["Rank"];
            ddlAssignedToRank.DataTextField  = "PRIORITY";
            ddlAssignedToRank.DataValueField = "PRIORITYID";
            ddlAssignedToRank.DataBind();
        }

        if (dsOptions.Tables.Contains("ProductVersion"))
        {
            ddlProductVersion.DataSource     = dsOptions.Tables["ProductVersion"];
            ddlProductVersion.DataTextField  = "ProductVersion";
            ddlProductVersion.DataValueField = "ProductVersionID";
            ddlProductVersion.DataBind();
        }

        if (dsOptions.Tables.Contains("WorkItemType"))
        {
            DataTable dtWorkItemType       = dsOptions.Tables["WorkItemType"];
            int       workloadAllocationID = 0;
            //string currentPhaseID = string.Empty;
            string    currentWorkActivityGroup = string.Empty;
            ListItem  li;
            DataTable dtAOR = AOR.AORTaskAORList_Get(TaskID: (WorkItemID == 0 ? -1 : WorkItemID));

            dtAOR.DefaultView.RowFilter = "AORWorkTypeID = 2";
            dtAOR = dtAOR.DefaultView.ToTable();

            if (dtAOR.Rows.Count > 0)
            {
                int.TryParse(dtAOR.Rows[0]["WorkloadAllocationID"].ToString(), out workloadAllocationID);
            }

            foreach (DataRow dr in dtWorkItemType.Rows)
            {
                if (/*dr["PDDTDR_PHASEID"].ToString() == "" || */ dr["WorkloadAllocationID"].ToString() == "" || dr["WorkloadAllocationID"].ToString() == workloadAllocationID.ToString())
                {
                    /*if (currentPhaseID != dr["PDDTDR_PHASEID"].ToString() && dr["PDDTDR_PHASEID"].ToString() != "")
                     * {
                     *  li = new ListItem();
                     *  li.Text = dr["PDDTDR_PHASE"].ToString();
                     *  li.Attributes["disabled"] = "disabled";
                     *  li.Attributes["style"] = "background-color: white";
                     *  ddlWorkItemType.Items.Add(li);
                     *
                     *  currentPhaseID = dr["PDDTDR_PHASEID"].ToString();
                     * }*/

                    if (currentWorkActivityGroup != dr["WorkActivityGroup"].ToString() && dr["WorkActivityGroup"].ToString() != "")
                    {
                        li      = new ListItem();
                        li.Text = dr["WorkActivityGroup"].ToString();
                        li.Attributes["disabled"] = "disabled";
                        li.Attributes["style"]    = "background-color: white";
                        ddlWorkItemType.Items.Add(li);

                        currentWorkActivityGroup = dr["WorkActivityGroup"].ToString();
                    }

                    li       = new ListItem();
                    li.Value = dr["WORKITEMTYPEID"].ToString();
                    li.Text  = dr["WORKITEMTYPE"].ToString();
                    ddlWorkItemType.Items.Add(li);
                }
            }
        }
    }