Esempio n. 1
0
        private void CreateMobilePlantIssuesWorksheet(ExcelXmlWriter excelXmlWriter, IEnumerable<Issue> issues)
        {
            excelXmlWriter.OpenWorkSheet("Issues - Mobile Plant");

            double[] colWidths = new[]
                                     {
                                         80d, 110d, 80d, 220d, 200d,
                                         75d
                                     };

            excelXmlWriter.OpenTable(200, colWidths.Length, colWidths, 1);

            int row = 1;

            string[] header = new[]
                                  {
                                      "ID", "Title", "MobilePlant", "Mobile Plant Description", "Implemented",
                                      "Tested"
                                  };

            excelXmlWriter.WriteRow(row++, header, true);

            foreach (Issue issue in issues)
            {
                foreach (IssueRelatedMobilePlant relatedMobilePlant in issue.IssueRelatedMobilePlants)
                {
                    List<ExcelValueObject> values = new List<ExcelValueObject>();

                    //1 CMS Issue ID
                    values.Add(new ExcelValueObject(issue.Id.ToString(), ExcelCellFormat.Number, ExcelCellStyle.Number));

                    //2 CMS Issue Title
                    values.Add(new ExcelValueObject(issue.Name));

                    //3 CP ID
                    values.Add(new ExcelValueObject(relatedMobilePlant.Id.ToString(), ExcelCellFormat.Number, ExcelCellStyle.Number));

                    //4 CP Desc
                    values.Add(new ExcelValueObject(relatedMobilePlant.MobilePlant.Description));

                    //5 implemented Yes/No
                    if (relatedMobilePlant.Implemented)
                    {
                        values.Add(new ExcelValueObject("Yes", ExcelCellFormat.String, ExcelCellStyle.Normal));
                    }
                    else
                    {
                        values.Add(new ExcelValueObject("No", ExcelCellFormat.String, ExcelCellStyle.Normal));
                    }

                    //6 tested
                    if (relatedMobilePlant.Tested)
                    {
                        values.Add(new ExcelValueObject("Yes", ExcelCellFormat.String, ExcelCellStyle.Normal));
                    }
                    else
                    {
                        values.Add(new ExcelValueObject("No", ExcelCellFormat.String, ExcelCellStyle.Normal));
                    }

                    excelXmlWriter.WriteRow(row++, values.ToArray());
                }

            }

            excelXmlWriter.CloseTable();
            excelXmlWriter.CloseWorkSheet();
        }
Esempio n. 2
0
        private void CreatePipingIssuesWorksheet(ExcelXmlWriter excelXmlWriter, IEnumerable<Issue> issues)
        {
            excelXmlWriter.OpenWorkSheet("Issues - Piping");

            double[] colWidths = new[]
                                     {
                                         80d, 110d, 80d, 220d, 200d
                                     };

            excelXmlWriter.OpenTable(200, colWidths.Length, colWidths, 1);

            int row = 1;

            string[] header = new[]
                                  {
                                      "ID", "Title", "Pipe",  "Implemented","Tested"
                                  };

            excelXmlWriter.WriteRow(row++, header, true);

            foreach (Issue issue in issues)
            {
                foreach (IssueRelatedPipe issueRelatedPipe in issue.IssueRelatedPipes)
                {
                    List<ExcelValueObject> values = new List<ExcelValueObject>();

                    //1 CMS Issue ID
                    values.Add(new ExcelValueObject(issue.Id.ToString(), ExcelCellFormat.Number, ExcelCellStyle.Number));

                    //2 CMS Issue Title
                    values.Add(new ExcelValueObject(issue.Name));

                    //3 PIPE ID
                    values.Add(new ExcelValueObject(issueRelatedPipe.Id.ToString(), ExcelCellFormat.Number, ExcelCellStyle.Number));

                    //5 implemented Yes/No
                    if (issueRelatedPipe.Implemented)
                    {
                        values.Add(new ExcelValueObject("Yes", ExcelCellFormat.String, ExcelCellStyle.Normal));
                    }
                    else
                    {
                        values.Add(new ExcelValueObject("No", ExcelCellFormat.String, ExcelCellStyle.Normal));
                    }

                    //6 TESTED
                    if (issueRelatedPipe.Tested)
                    {
                        values.Add(new ExcelValueObject("Yes", ExcelCellFormat.String, ExcelCellStyle.Normal));
                    }
                    else
                    {
                        values.Add(new ExcelValueObject("No", ExcelCellFormat.String, ExcelCellStyle.Normal));
                    }

                    excelXmlWriter.WriteRow(row++, values.ToArray());
                }

            }

            excelXmlWriter.CloseTable();
            excelXmlWriter.CloseWorkSheet();
        }
Esempio n. 3
0
        private void CreateMechEquipWorksheet(ExcelXmlWriter excel, IEnumerable<Issue> matchList)
        {
            excel.OpenWorkSheet("Issues - Mech Equipment");

            double[] colWidths = new[]
                                     {
                                         30d, 180d, 150d, 150d, 150d,
                                         100d, 100d
                                     };

            excel.OpenTable(200, colWidths.Length, colWidths, 1);

            int row = 1;

            string[] header = new[]
                                  {
                                      "ID", "Title", "Mech Equipment", "Mech Equipment Description", "Maint Sys ID",
                                      "Implemented", "Tested"
                                  };

            excel.WriteRow(row++, header, true);

            using (CmsEntities cee = new CmsEntities())
            {
                cee.Configuration.LazyLoadingEnabled = true;

                foreach (Issue issue in matchList)
                {
                    var rsq = from rs in cee.IssueRelatedMechanicalEquipments
                              where rs.IssueId == issue.Id
                              select rs;

                    foreach (IssueRelatedMechanicalEquipment rs in rsq.ToList())
                    {
                        List<ExcelValueObject> values = new List<ExcelValueObject>();
                        //1
                        values.Add(new ExcelValueObject(issue.Id.ToString(), ExcelCellFormat.Number, ExcelCellStyle.Number));
                        //2
                        values.Add(new ExcelValueObject(issue.Name));
                        //3
                        values.Add(new ExcelValueObject(rs.MechanicalEquipment != null ? rs.MechanicalEquipment.Name : ""));
                        //4
                        values.Add(new ExcelValueObject(rs.MechanicalEquipment != null ? rs.MechanicalEquipment.Description : ""));
                        //5
                        values.Add(new ExcelValueObject(rs.MechanicalEquipment != null ? rs.MechanicalEquipment.MaintSystemId : ""));
                        //6
                        values.Add(new ExcelValueObject(CmsWebService.GetTimestampUserString(rs.ImplementedDate, rs.ImplementedById)));
                        //7
                        values.Add(new ExcelValueObject(CmsWebService.GetTimestampUserString(rs.TestedDate, rs.TestedById)));

                        excel.WriteRow(row++, values.ToArray());
                    }
                }
            }
            excel.CloseTable();
            excel.CloseWorkSheet();
        }
Esempio n. 4
0
        private void CreateIssuesSummaryWorksheet(ExcelXmlWriter excelXmlWriter, IEnumerable<Issue> matchList)
        {
            excelXmlWriter.OpenWorkSheet("Issues - Summary");

            double[] colWidths = new[]
                                     {
                                         30d, 150d, 150d, 150d, 150d,
                                         75d, 100d, 100d, 75d, 75d,
                                         75d, 75d, 75d, 110d, 110d,
                                         110d, 110d, 180d, 180d, 180d,
                                         165d, 165d, 165d, 165d, 165d,
                                         165d, 90d, 90d, 90d, 90d,110d,
                                         110d
                                     };

            excelXmlWriter.OpenTable(200, colWidths.Length, colWidths, 1);

            int row = 1;

            string[] header = new[]
                                  {
                                      "ID", "Title", "Description", "Reason", "Suggested Solution",
                                      "Status", "Priority", "Classification", "Issue Type", "Risk Rating",
                                      "Category", "Assigned To", "Initiated By", "Initiated On",
                                      "Requested By", "Designed By", "Approval",
                                      "Commissioning Engineer Approval", "Operations Engineer Approval",
                                      "Estimated Implementation (Hrs)", "Actual Implementation (Hrs)",
                                      "Estimated Testing (Hrs)", "Actual Testing (Hrs)", "Estimated Documentation (Hrs)",
                                      "Actual Documentation (Hrs)", "Implemented", "Tested", "Documented", "Actions",
                                      "Last Modified By",
                                      "Last Modified On"
                                  };

            excelXmlWriter.WriteRow(row++, header, true);

            foreach (Issue issue in matchList)
            {
                CmsWebService.IssueSummaryTotals totals = CmsWebService.GetIssuesSummaryTotals(issue.Id);

                List<ExcelValueObject> values = new List<ExcelValueObject>();
                //1
                values.Add(new ExcelValueObject(issue.Id.ToString(), ExcelCellFormat.Number, ExcelCellStyle.Number));
                //2
                values.Add(new ExcelValueObject(issue.Name));
                //3
                values.Add(new ExcelValueObject(issue.Description));
                //4
                values.Add(new ExcelValueObject(issue.Reason));
                //5
                values.Add(new ExcelValueObject(issue.SuggestedSolution));
                //6
                values.Add(new ExcelValueObject(CmsWebService.GetStatusName(issue.IssueStatusId)));
                //7
                values.Add(new ExcelValueObject(CmsWebService.GetPriorityName(issue.IssuePriorityId)));
                //8
                values.Add(new ExcelValueObject(CmsWebService.GetClassificationName(issue.IssueClassificationId)));
                //9
                values.Add(new ExcelValueObject(CmsWebService.GetIssueTypeName(issue.IssueTypeId)));
                //10
                values.Add(new ExcelValueObject(CmsWebService.GetFinalRiskRatingText(issue.Id)));
                //11
                values.Add(new ExcelValueObject(CmsWebService.GetAssignedCategoryNames(issue)));
                //12
                values.Add(new ExcelValueObject(CmsWebService.GetUserName(issue.CurrentlyAssignedToId)));
                //13
                values.Add(new ExcelValueObject(CmsWebService.GetUserName(issue.InitiatedById)));
                //14
                values.Add(new ExcelValueObject(issue.InitiatedDate.ToString("s"), ExcelCellFormat.DateTime, ExcelCellStyle.Date));
                //15
                values.Add(new ExcelValueObject(issue.RequestedBy));
                //16
                values.Add(new ExcelValueObject(CmsWebService.GetUserName(issue.ProjectSupervisorId)));
                //17
                values.Add(new ExcelValueObject(GetApproversText(issue)));
                //18
                values.Add(new ExcelValueObject(String.Empty));//now redundant
                //19
                values.Add(new ExcelValueObject(String.Empty));
                //20
                if (issue.IssueTracking.ImplementedEstimate != null)
                    values.Add(new ExcelValueObject(issue.IssueTracking.ImplementedEstimate.Value.ToString(), ExcelCellFormat.Number, ExcelCellStyle.Number));
                else
                    values.Add(new ExcelValueObject(String.Empty));

                //21
                if (issue.IssueTracking.ImplementedActual != null)
                    values.Add(new ExcelValueObject(issue.IssueTracking.ImplementedActual.Value.ToString(), ExcelCellFormat.Number, ExcelCellStyle.Number));
                else
                    values.Add(new ExcelValueObject(String.Empty));

                //22
                if (issue.IssueTracking.TestedEstimate != null)
                    values.Add(new ExcelValueObject(issue.IssueTracking.TestedEstimate.Value.ToString(), ExcelCellFormat.Number, ExcelCellStyle.Number));
                else
                    values.Add(new ExcelValueObject(String.Empty));

                //23
                if (issue.IssueTracking.TestedActual != null)
                    values.Add(new ExcelValueObject(issue.IssueTracking.TestedActual.Value.ToString(), ExcelCellFormat.Number, ExcelCellStyle.Number));
                else
                    values.Add(new ExcelValueObject(String.Empty));

                //24
                if (issue.IssueTracking.DocumentedEstimate != null)
                    values.Add(new ExcelValueObject(issue.IssueTracking.DocumentedEstimate.Value.ToString(), ExcelCellFormat.Number, ExcelCellStyle.Number));
                else
                    values.Add(new ExcelValueObject(String.Empty));

                //25
                if (issue.IssueTracking.DocumentedActual != null)
                    values.Add(new ExcelValueObject(issue.IssueTracking.DocumentedActual.ToString(), ExcelCellFormat.Number, ExcelCellStyle.Number));
                else
                    values.Add(new ExcelValueObject(String.Empty));

                //26
                if (totals.ImplementedTotal == 0)
                    values.Add(new ExcelValueObject(String.Empty));
                else
                    values.Add(new ExcelValueObject(totals.ImplementedPercent.ToString(), ExcelCellFormat.Number, ExcelCellStyle.Percent));

                //27
                if (totals.TestedTotal == 0)
                    values.Add(new ExcelValueObject(String.Empty));
                else
                    values.Add(new ExcelValueObject(totals.TestedPercent.ToString(), ExcelCellFormat.Number, ExcelCellStyle.Percent));

                //28
                if (totals.DocTotal == 0)
                    values.Add(new ExcelValueObject(String.Empty));
                else
                    values.Add(new ExcelValueObject(totals.DocPercent.ToString(), ExcelCellFormat.Number, ExcelCellStyle.Percent));

                //29 ACTIONS
                if (totals.ImplementedTotal == 0)
                    values.Add(new ExcelValueObject(String.Empty));
                else
                    values.Add(new ExcelValueObject(totals.ImplementedPercent.ToString(), ExcelCellFormat.Number, ExcelCellStyle.Percent));

                //30
                values.Add(new ExcelValueObject(CmsWebService.GetUserName(issue.ModifiedById)));

                //31
                values.Add(new ExcelValueObject(issue.ModifiedDate.ToString("s"), ExcelCellFormat.DateTime, ExcelCellStyle.Date));

                //end
                excelXmlWriter.WriteRow(row++, values.ToArray());
            }

            excelXmlWriter.CloseTable();
            excelXmlWriter.CloseWorkSheet();
        }
Esempio n. 5
0
        private void CreateActionsSummaryWorksheet(ExcelXmlWriter excelXmlWriter, IEnumerable<Issue> issues)
        {
            excelXmlWriter.OpenWorkSheet("Actions - Summary");

            //excelXmlWriter.WriteHeader(Styles);//does not work....

            double[] colWidths = new[]
                                     {
                                         80d, 110d, 80d, 220d, 200d,
                                         110d, 110d, 150d, 120d, 100d,
                                         575d
                                     };

            excelXmlWriter.OpenTable(200, colWidths.Length, colWidths, 1);

            int row = 1;

            string[] header = new[]
                                  {
                                      "CMS Issue ID", "CMS Issue Title", "Action ID", "Action Description", "Action Initiated By",
                                      "Action Initiated On", "Action Assigned To", "Action Required By", "Action Days Overdue","Action Implemented",
                                      "Action Notes"
                                  };

            excelXmlWriter.WriteRow(row++, header, true);

            foreach (Issue issue in issues)
            {
                foreach (IssueRelatedAction action in issue.IssueRelatedActions)
                {
                    List<ExcelValueObject> values = new List<ExcelValueObject>();

                    //1 CMS Issue ID
                    values.Add(new ExcelValueObject(issue.Id.ToString(), ExcelCellFormat.Number, ExcelCellStyle.Number));

                    //2 CMS Issue Title
                    values.Add(new ExcelValueObject(issue.Name));

                    //3 Action ID
                    values.Add(new ExcelValueObject(action.Id.ToString(), ExcelCellFormat.Number, ExcelCellStyle.Number));

                    //4 Action Desc
                    values.Add(new ExcelValueObject(action.Description));

                    //5 Action Initiated By
                    values.Add(new ExcelValueObject(action.InitiatedByUser.UserName));

                    //6 Action initiated on
                    if (action.InitiatedDate.HasValue)
                    {
                        values.Add(new ExcelValueObject(action.InitiatedDate.Value.ToString("s"), ExcelCellFormat.DateTime, ExcelCellStyle.Date));
                    }
                    else
                    {
                        values.Add(new ExcelValueObject(String.Empty));
                    }

                    //7 Action Assigned To
                    if (action.AssignedToUser != null)
                    {
                        values.Add(new ExcelValueObject(action.AssignedToUser.UserName));
                    }
                    else
                    {
                        values.Add(new ExcelValueObject(String.Empty));
                    }

                    //8 Required By
                    if (action.RequiredDate.HasValue)
                    {
                        values.Add(new ExcelValueObject(action.RequiredDate.Value.ToString("s"), ExcelCellFormat.DateTime, ExcelCellStyle.Date));
                    }
                    else
                    {
                        values.Add(new ExcelValueObject(String.Empty));
                    }

                    //9 Days overdue
                    if (action.RequiredDate.HasValue)
                    {
                        TimeSpan ts = DateTime.Now - action.RequiredDate.Value;

                        if (ts.Days < 0)
                        {
                            values.Add(new ExcelValueObject(ts.Days.ToString(), ExcelCellFormat.Number, ExcelCellStyle.Number));
                        }
                        else
                        {
                            //RED BACKGROUND...cannot get to work using stupid styles...
                            values.Add(new ExcelValueObject(ts.Days.ToString(), ExcelCellFormat.Number, ExcelCellStyle.Number));
                        }
                    }
                    else
                    {
                        values.Add(new ExcelValueObject(String.Empty));
                    }

                    //10 implemented Yes/No
                    if (action.Implemented)
                    {
                        values.Add(new ExcelValueObject("Yes", ExcelCellFormat.String, ExcelCellStyle.Normal));
                    }
                    else
                    {
                        values.Add(new ExcelValueObject("No", ExcelCellFormat.String, ExcelCellStyle.Normal));
                    }

                    //11 Notes
                    values.Add(new ExcelValueObject(action.Notes, ExcelCellFormat.String, ExcelCellStyle.Normal));

                    excelXmlWriter.WriteRow(row++, values.ToArray());
                }
            }

            excelXmlWriter.CloseTable();
            excelXmlWriter.CloseWorkSheet();
        }
Esempio n. 6
0
        private void CreateWorksheet(ExcelXmlWriter excelXmlWriter, IEnumerable<Pipe> matchList, IList<Document> documents)
        {
            excelXmlWriter.OpenWorkSheet("Pipes");

            double[] colWidths = new[]
                                     {
                                         30d, 150d, 150d, 150d, 150d,
                                         75d, 100d, 100d, 75d
                                     };

            excelXmlWriter.OpenTable(200, colWidths.Length, colWidths, 1);

            int row = 1;

            string[] header = new[]
                                  {
                                      "Area", "Sequence No.", "Pipe Class", "Size (mm)", "Fluid Code", "Special Feature", "P&ID", "From", "To"
                                  };

            excelXmlWriter.WriteRow(row++, header, true);

            foreach (Pipe pipe in matchList)
            {
                List<ExcelValueObject> values = new List<ExcelValueObject>();
                //1
                values.Add(new ExcelValueObject(pipe.Area.AreaNumber.ToString(), ExcelCellFormat.Number, ExcelCellStyle.Number));
                //2
                values.Add(new ExcelValueObject(pipe.SequenceNo.ToString(), ExcelCellFormat.Number, ExcelCellStyle.Number));
                //3
                values.Add(new ExcelValueObject(pipe.PipeClass.Name));
                //4
                values.Add(new ExcelValueObject(pipe.PipeSize.Name));
                //5
                values.Add(new ExcelValueObject(pipe.PipeFluidCode.Name));
                //6
                values.Add(new ExcelValueObject(pipe.PipeSpecialFeature.Name));

                //7
                Document document = (from d in documents where d.Id == pipe.PIDDocumentId select d).FirstOrDefault();
                if (document != null)
                {
                    values.Add(new ExcelValueObject(document.Name));
                }
                else
                {
                    values.Add(new ExcelValueObject(""));
                }

                //8
                values.Add(new ExcelValueObject(pipe.From));

                //9
                values.Add(new ExcelValueObject(pipe.To));

                //end
                excelXmlWriter.WriteRow(row++, values.ToArray());
            }

            excelXmlWriter.CloseTable();
            excelXmlWriter.CloseWorkSheet();
        }
Esempio n. 7
0
        private void CreateWorksheet(string componentTypeName, ExcelXmlWriter excelXmlWriter, IEnumerable<PipeComponent> matchList, IList<PipeProperty> properties)
        {
            excelXmlWriter.OpenWorkSheet(componentTypeName);

            List<string> header = new List<string>
                                      {
                                          "Pipe Name",
                                          "Component Tag",
                                          "Component Description"
                                      };

            List<double> colWidths = new List<double> { 80d, 150d, 150d };

            //dynamic properties
            header.AddRange(properties.Select(property => property.Name));

            //dynamic cols - set widths
            if (header.Count > colWidths.Count)
            {
                int k = header.Count - colWidths.Count;

                for (int i = 0; i < k; i++)
                {
                    colWidths.Add(80);
                }
            }

            excelXmlWriter.OpenTable(200, colWidths.Count, colWidths.ToArray(), 1);

            int row = 1;

            excelXmlWriter.WriteRow(row++, header.ToArray(), true);

            foreach (PipeComponent pipeComponent in matchList)
            {
                List<ExcelValueObject> values = new List<ExcelValueObject>();
                //1
                values.Add(new ExcelValueObject(pipeComponent.Pipe.Name));
                //2
                values.Add(new ExcelValueObject(pipeComponent.Name));
                //3
                values.Add(new ExcelValueObject(pipeComponent.Description));

                //4
                foreach (PipeProperty pipeComponentProperty in properties)
                {
                    PipePropertyValue propertyValue = (from pv in pipeComponent.PipePropertyValues
                                                                where (pv.PipePropertyId == pipeComponentProperty.Id)  && (pv.ComponentId==pipeComponent.Id)
                                                                select pv).FirstOrDefault();

                    if (propertyValue != null)
                    {
                        values.Add(new ExcelValueObject(propertyValue.Value, ExcelCellFormat.String));
                    }
                    else
                    {
                        values.Add(new ExcelValueObject(string.Empty, ExcelCellFormat.String));
                    }
                }

                //end
                excelXmlWriter.WriteRow(row++, values.ToArray());
            }

            excelXmlWriter.CloseTable();
            excelXmlWriter.CloseWorkSheet();
        }