From ecfe3a3377709bc837120825d1830d3f1fd02415 Mon Sep 17 00:00:00 2001 From: kamonwan taengsuk Date: Fri, 10 Mar 2023 10:51:10 +0700 Subject: [PATCH] update --- Controllers/Summary.Controller.cs | 225 +++++++++++++++++- .../budget/summary_building_construction.cs | 12 + 2 files changed, 227 insertions(+), 10 deletions(-) diff --git a/Controllers/Summary.Controller.cs b/Controllers/Summary.Controller.cs index 76a12fc..7f32f07 100644 --- a/Controllers/Summary.Controller.cs +++ b/Controllers/Summary.Controller.cs @@ -756,13 +756,7 @@ namespace rmutr_report.Controllers } } - else if (str.Length == 7) - { - for (int i = 4; i <= str.Length - 1; i += 7) - { - equipment.amount= str.Insert(i, ","); - } - } + else { @@ -1119,7 +1113,217 @@ namespace rmutr_report.Controllers ws.Range("L6:R6").Style.Border.OutsideBorder = XLBorderStyleValues.Thin; ws.Range("D6:F6").Style.Fill.BackgroundColor = XLColor.Gainsboro; ws.Range("H6:S6").Style.Fill.BackgroundColor = XLColor.Gainsboro; - foreach (var building in summary_building_constructions.data) + foreach (var buildings in summary_building_constructions.header_data) + { + if (buildings.color == 1) + { + ws.Cell(row, 1).Value = null; + ws.Cell(row, 2).Value = buildings.list; + ws.Cell(row, 3).Value = null; + ws.Cell(row, 4).Value = null; + ws.Cell(row, 5).Value =null; + ws.Cell(row, 6).Value = null; + ws.Cell(row, 7).Value = null; + ws.Cell(row, 8).Value = null; + ws.Cell(row, 9).Value = null; + ws.Cell(row, 10).Value = null; + ws.Cell(row, 11).Value = buildings.budget; + ws.Cell(row, 12).Value = buildings.price_1; + ws.Cell(row, 13).Value = buildings.price_2; + ws.Cell(row, 14).Value = buildings.price_3; + ws.Cell(row, 15).Value = buildings.price_4; + ws.Cell(row, 16).Value = buildings.price_5; + ws.Cell(row, 17).Value = null; + ws.Cell(row, 18).Value = null; + ws.Cell(row, 19).Value = null; + ws.Cell(row, 1).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 2).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 3).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 4).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 5).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 6).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 7).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 8).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 9).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 10).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 11).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 12).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 13).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 14).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 15).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 16).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 17).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 18).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 19).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Range(ws.Cell(row, 1), ws.Cell(row, 19)).Style.Font.FontName = + "TH Sarabun New"; + ws.Range(ws.Cell(row, 1), ws.Cell(row, 19)).Style.Font.FontSize = 11; + ws.Range(ws.Cell(row, 1), ws.Cell(row, 19)).Style.Alignment.WrapText = true; + ws.Range(ws.Cell(row, 1), ws.Cell(row, 19)).Style.Alignment.Vertical = + XLAlignmentVerticalValues.Center; + ws.Range(ws.Cell(row, 1), ws.Cell(row, 19)).Style.Fill.BackgroundColor=XLColor.BabyBlue; + ws.Cell(row, 1).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 2).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Left; + ws.Cell(row, 3).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 4).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 5).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 6).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 7).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Left; + ws.Cell(row, 8).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 9).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 10).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 11).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Right; + ws.Cell(row, 12).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Right; + ws.Cell(row, 13).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Right; + ws.Cell(row, 14).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Right; + ws.Cell(row, 15).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Right; + ws.Cell(row, 16).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Right; + ws.Cell(row, 17).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 18).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 19).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Left; + ws.Range(ws.Cell(row, 11), ws.Cell(row, 16)).Style.NumberFormat.SetFormat("#,#"); + row++; + } + if (buildings.color == 2) + { + ws.Cell(row, 1).Value = null; + ws.Cell(row, 2).Value = buildings.list; + ws.Cell(row, 3).Value = null; + ws.Cell(row, 4).Value = null; + ws.Cell(row, 5).Value =null; + ws.Cell(row, 6).Value = null; + ws.Cell(row, 7).Value = null; + ws.Cell(row, 8).Value = null; + ws.Cell(row, 9).Value = null; + ws.Cell(row, 10).Value = null; + ws.Cell(row, 11).Value = buildings.budget; + ws.Cell(row, 12).Value = buildings.price_1; + ws.Cell(row, 13).Value = buildings.price_2; + ws.Cell(row, 14).Value = buildings.price_3; + ws.Cell(row, 15).Value = buildings.price_4; + ws.Cell(row, 16).Value = buildings.price_5; + ws.Cell(row, 17).Value = null; + ws.Cell(row, 18).Value = null; + ws.Cell(row, 19).Value = null; + ws.Cell(row, 1).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 2).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 3).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 4).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 5).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 6).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 7).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 8).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 9).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 10).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 11).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 12).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 13).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 14).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 15).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 16).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 17).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 18).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 19).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Range(ws.Cell(row, 1), ws.Cell(row, 19)).Style.Font.FontName = + "TH Sarabun New"; + ws.Range(ws.Cell(row, 1), ws.Cell(row, 19)).Style.Font.FontSize = 11; + ws.Range(ws.Cell(row, 1), ws.Cell(row, 19)).Style.Alignment.WrapText = true; + ws.Range(ws.Cell(row, 1), ws.Cell(row, 19)).Style.Alignment.Vertical = + XLAlignmentVerticalValues.Center; + ws.Range(ws.Cell(row, 1), ws.Cell(row, 19)).Style.Fill.BackgroundColor=XLColor.LavenderPurple; + ws.Cell(row, 1).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 2).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Left; + ws.Cell(row, 3).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 4).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 5).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 6).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 7).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Left; + ws.Cell(row, 8).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 9).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 10).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 11).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Right; + ws.Cell(row, 12).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Right; + ws.Cell(row, 13).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Right; + ws.Cell(row, 14).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Right; + ws.Cell(row, 15).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Right; + ws.Cell(row, 16).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Right; + ws.Cell(row, 17).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 18).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 19).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Left; + ws.Range(ws.Cell(row, 11), ws.Cell(row, 16)).Style.NumberFormat.SetFormat("#,#"); + row++; + } + if (buildings.color == 3) + { + ws.Cell(row, 1).Value = null; + ws.Cell(row, 2).Value = buildings.list; + ws.Cell(row, 3).Value = null; + ws.Cell(row, 4).Value = null; + ws.Cell(row, 5).Value =null; + ws.Cell(row, 6).Value = null; + ws.Cell(row, 7).Value = null; + ws.Cell(row, 8).Value = null; + ws.Cell(row, 9).Value = null; + ws.Cell(row, 10).Value = null; + ws.Cell(row, 11).Value = buildings.budget; + ws.Cell(row, 12).Value = buildings.price_1; + ws.Cell(row, 13).Value = buildings.price_2; + ws.Cell(row, 14).Value = buildings.price_3; + ws.Cell(row, 15).Value = buildings.price_4; + ws.Cell(row, 16).Value = buildings.price_5; + ws.Cell(row, 17).Value = null; + ws.Cell(row, 18).Value = null; + ws.Cell(row, 19).Value = null; + ws.Cell(row, 1).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 2).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 3).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 4).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 5).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 6).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 7).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 8).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 9).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 10).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 11).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 12).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 13).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 14).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 15).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 16).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 17).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 18).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Cell(row, 19).Style.Border.OutsideBorder = XLBorderStyleValues.Thin; + ws.Range(ws.Cell(row, 1), ws.Cell(row, 19)).Style.Font.FontName = + "TH Sarabun New"; + ws.Range(ws.Cell(row, 1), ws.Cell(row, 19)).Style.Font.FontSize = 11; + ws.Range(ws.Cell(row, 1), ws.Cell(row, 19)).Style.Alignment.WrapText = true; + ws.Range(ws.Cell(row, 1), ws.Cell(row, 19)).Style.Alignment.Vertical = + XLAlignmentVerticalValues.Center; + ws.Range(ws.Cell(row, 1), ws.Cell(row, 19)).Style.Fill.BackgroundColor=XLColor.GrannySmithApple; + ws.Cell(row, 1).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 2).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Left; + ws.Cell(row, 3).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 4).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 5).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 6).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 7).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Left; + ws.Cell(row, 8).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 9).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 10).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 11).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Right; + ws.Cell(row, 12).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Right; + ws.Cell(row, 13).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Right; + ws.Cell(row, 14).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Right; + ws.Cell(row, 15).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Right; + ws.Cell(row, 16).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Right; + ws.Cell(row, 17).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 18).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 19).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Left; + ws.Range(ws.Cell(row, 11), ws.Cell(row, 16)).Style.NumberFormat.SetFormat("#,#"); + row++; + + } + foreach (var building in buildings.data) { ws.Cell(row, 1).Value = no; no++; @@ -1176,7 +1380,7 @@ namespace rmutr_report.Controllers ws.Cell(row, 8).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; ws.Cell(row, 9).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; ws.Cell(row, 10).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; - ws.Cell(row, 11).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; + ws.Cell(row, 11).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Right; ws.Cell(row, 12).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Right; ws.Cell(row, 13).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Right; ws.Cell(row, 14).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Right; @@ -1185,10 +1389,11 @@ namespace rmutr_report.Controllers ws.Cell(row, 17).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; ws.Cell(row, 18).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center; ws.Cell(row, 19).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Left; + ws.Range(ws.Cell(row, 11), ws.Cell(row, 16)).Style.NumberFormat.SetFormat("#,#"); row++; } } - //} + } using (var stream = new MemoryStream()) { diff --git a/Models/budget/summary_building_construction.cs b/Models/budget/summary_building_construction.cs index ff108e9..b57eeb5 100644 --- a/Models/budget/summary_building_construction.cs +++ b/Models/budget/summary_building_construction.cs @@ -14,7 +14,19 @@ namespace rmutr_report.Models public string budget_year_3 { get; set; } public string budget_year_4 { get; set; } public string budget_year_5 { get; set; } + public List header_data { get; set; } + } + public class summary_building_constructions{ + public int? color { get; set; } + public string list { get; set; } + public decimal? budget { get; set; } + public decimal? price_1 { get; set; } + public decimal? price_2 { get; set; } + public decimal? price_3 { get; set; } + public decimal? price_4 { get; set; } + public decimal? price_5 { get; set; } public List data { get; set; } + } public class summary_building_construction_detail