chore: 首次簽入 Thinkyu ASP.NET 專案

- 加入 Visual Studio / ASP.NET .gitignore
- 排除建置輸出、IDE 設定、NuGet packages、大型 MSI 安裝檔
This commit is contained in:
2026-09-10 09:42:37 +08:00
commit 577060bc78
2496 changed files with 501389 additions and 0 deletions
+197
View File
@@ -0,0 +1,197 @@
using System;
using System.Collections.Generic;
using System.Data;
using NPOI.SS.UserModel;
using System.IO;
using Wellan.Data;
using Wellan.Common;
/// <summary>
/// 加班費明細 的摘要描述
/// </summary>
public class : ExcelReportBase
{
public ()
{
}
protected override void Init()
{
base.Init();
titleStyleCenterNoBorder.SetFont(bodyFont);
bodyStyleCenterNoBorder.SetFont(bodyFont);
bodyStyleLeftNoBorder.SetFont(bodyFont8PT);
bodyNumberStyleNoBorder.SetFont(bodyFont);
titleStyleRightNoBorder.SetFont(bodyFont);
titleStyleLeftNoBorder.SetFont(bodyFont);
}
public override MemoryStream ()
{
#region
var row = 0;
excel.MergeCell(row, 0, row, 15, BorderStyle.None);
excel.SetCellValue(row, 0, , headerStyle);
excel.SetRowHeight(row, 20);
row++;
excel.MergeCell(row, 0, row, 15, BorderStyle.None);
excel.SetCellValue(row, 0, string.Format("承辦{0}", ), headerStyle);
excel.SetRowHeight(row, 20);
row++;
excel.MergeCell(row, 0, row, 15, BorderStyle.None);
excel.SetCellValue(row, 0, string.Format("『{0}』", ), headerStyle);
excel.SetRowHeight(row, 20);
row++;
excel.MergeCell(row, 0, row, 15, BorderStyle.None);
excel.SetCellValue(row, 0, string.Format("{0}【{1}{2}】", , , ), headerStyle);
excel.SetRowHeight(row, 20);
row++;
excel.MergeCell(row, 4, row, 14, BorderStyle.None);
excel.SetCellValue(row, 4, "加班時數 / 金額", titleStyleCenterNoBorder);
row++;
excel.SetCellValue(row, 0, "序號", titleStyleCenterNoBorder);
excel.SetCellValue(row, 1, "站別", titleStyleCenterNoBorder);
excel.SetCellValue(row, 2, "人員姓名", titleStyleCenterNoBorder);
excel.SetCellValue(row, 3, "薪資", titleStyleCenterNoBorder);
excel.SetCellValue(row, 4, string.Format("前段*{0}", ["前段"]), titleStyleCenterNoBorder);
excel.SetCellValue(row, 5, "小計", titleStyleCenterNoBorder);
excel.SetCellValue(row, 6, string.Format("後段*{0}", ["後段"]), titleStyleCenterNoBorder);
excel.SetCellValue(row, 7, "小計", titleStyleCenterNoBorder);
excel.SetCellValue(row, 8, string.Format("休息日再延長*{0}", ["休息日延長"]), titleStyleCenterNoBorder);
excel.SetCellValue(row, 9, "小計", titleStyleCenterNoBorder);
excel.SetCellValue(row, 10, string.Format("假日*{0}", ["假日"]), titleStyleCenterNoBorder);
excel.SetCellValue(row, 11, "小計", titleStyleCenterNoBorder);
excel.SetCellValue(row, 12, string.Format("例假日再延長*{0}", ["例假日延長"]), titleStyleCenterNoBorder);
excel.SetCellValue(row, 13, "小計", titleStyleCenterNoBorder);
excel.SetCellValue(row, 14, "請領金額", titleStyleCenterNoBorder);
excel.SetCellValue(row, 15, "備註", titleStyleCenterNoBorder);
excel.SetRowHeight(row, 24);
row++;
#endregion
#region
int beginRow = row;
int serial = 1;
int SST01_SUM = 0;
int SST02_SUM = 0;
int SST03_SUM = 0;
int SST21_SUM = 0;
int SST22_SUM = 0;
foreach (DataRow r in .Tables[0].Rows)
{
var = WDAC.GetInt32Value(r["SSP00"]) + WDAC.GetInt32Value(r["SSP02"]);
var = WDAC.GetInt32Value(r["SSP06"])
+ WDAC.GetInt32Value(r["SSP07"])
+ WDAC.GetInt32Value(r["SSP08"])
+ WDAC.GetInt32Value(r["SSP13"])
+ WDAC.GetInt32Value(r["SSP14"]);
excel.SetCellValue(row, 0, serial, bodyStyleCenterNoBorder);
excel.SetCellValue(row, 1, WDAC.GetStringValue(r["SSBRHX"]), bodyStyleCenterNoBorder);
excel.SetCellValue(row, 2, WDAC.GetStringValue(r["BPNME"]), bodyStyleCenterNoBorder);
excel.SetCellValue(row, 3, , bodyNumberStyleNoBorder);
excel.SetCellValue(row, 5, WDAC.GetInt32Value(r["SSP06"]), bodyNumberStyleNoBorder);
excel.SetCellValue(row, 7, WDAC.GetInt32Value(r["SSP07"]), bodyNumberStyleNoBorder);
excel.SetCellValue(row, 9, WDAC.GetInt32Value(r["SSP13"]), bodyNumberStyleNoBorder);
excel.SetCellValue(row, 11, WDAC.GetInt32Value(r["SSP08"]), bodyNumberStyleNoBorder);
excel.SetCellValue(row, 13, WDAC.GetInt32Value(r["SSP14"]), bodyNumberStyleNoBorder);
excel.SetCellValue(row, 14, , bodyNumberStyleNoBorder);
excel.SetCellValue(row, 15, WDAC.GetStringValue(r["SSC02"]), bodyStyleLeftNoBorder);
if ()
{
excel.SetCellValue(row, 4, string.Format("{0:#00}:{1:00}", r["SST01"], r["SST01M"]), bodyStyleCenterNoBorder);
excel.SetCellValue(row, 6, string.Format("{0:#00}:{1:00}", r["SST02"], r["SST02M"]), bodyStyleCenterNoBorder);
excel.SetCellValue(row, 8, string.Format("{0:#00}:{1:00}", r["SST21"], r["SST21M"]), bodyStyleCenterNoBorder);
excel.SetCellValue(row, 10, string.Format("{0:#00}:{1:00}", r["SST03"], r["SST03M"]), bodyStyleCenterNoBorder);
excel.SetCellValue(row, 12, string.Format("{0:#00}:{1:00}", r["SST22"], r["SST22M"]), bodyStyleCenterNoBorder);
}
else
{
excel.SetCellValue(row, 4, WDAC.GetInt32Value(r["SST01"]), bodyNumberStyleNoBorder);
excel.SetCellValue(row, 6, WDAC.GetInt32Value(r["SST02"]), bodyNumberStyleNoBorder);
excel.SetCellValue(row, 8, WDAC.GetInt32Value(r["SST21"]), bodyNumberStyleNoBorder);
excel.SetCellValue(row, 10, WDAC.GetInt32Value(r["SST03"]), bodyNumberStyleNoBorder);
excel.SetCellValue(row, 12, WDAC.GetInt32Value(r["SST22"]), bodyNumberStyleNoBorder);
}
SST01_SUM += WDAC.GetInt32Value(r["SST01"]) * 60 + WDAC.GetInt32Value(r["SST01M"]);
SST02_SUM += WDAC.GetInt32Value(r["SST02"]) * 60 + WDAC.GetInt32Value(r["SST02M"]);
SST03_SUM += WDAC.GetInt32Value(r["SST03"]) * 60 + WDAC.GetInt32Value(r["SST03M"]);
SST21_SUM += WDAC.GetInt32Value(r["SST21"]) * 60 + WDAC.GetInt32Value(r["SST21M"]);
SST22_SUM += WDAC.GetInt32Value(r["SST22"]) * 60 + WDAC.GetInt32Value(r["SST22M"]);
row++;
serial++;
}
#endregion
#region
excel.MergeCell(row, 0, row, 1, BorderStyle.None);
excel.SetCellValue(row, 0, "合計", titleStyleLeftNoBorder);
excel.SetCellFormula(row, 5, String.Format("SUM({0}:{1})", excel.RCtoA1(beginRow, 5), excel.RCtoA1(row - 1, 5)), bodyNumberStyleNoBorder);
excel.SetCellFormula(row, 7, String.Format("SUM({0}:{1})", excel.RCtoA1(beginRow, 7), excel.RCtoA1(row - 1, 7)), bodyNumberStyleNoBorder);
excel.SetCellFormula(row, 9, String.Format("SUM({0}:{1})", excel.RCtoA1(beginRow, 9), excel.RCtoA1(row - 1, 9)), bodyNumberStyleNoBorder);
excel.SetCellFormula(row, 11, String.Format("SUM({0}:{1})", excel.RCtoA1(beginRow, 11), excel.RCtoA1(row - 1, 11)), bodyNumberStyleNoBorder);
excel.SetCellFormula(row, 13, String.Format("SUM({0}:{1})", excel.RCtoA1(beginRow, 13), excel.RCtoA1(row - 1, 13)), bodyNumberStyleNoBorder);
excel.SetCellFormula(row, 14, String.Format("SUM({0}:{1})", excel.RCtoA1(beginRow, 14), excel.RCtoA1(row - 1, 14)), bodyNumberStyleNoBorder);
if ()
{
excel.SetCellValue(row, 4, MinuteToTime(SST01_SUM), bodyStyleCenterNoBorder);
excel.SetCellValue(row, 6, MinuteToTime(SST02_SUM), bodyStyleCenterNoBorder);
excel.SetCellValue(row, 8, MinuteToTime(SST21_SUM), bodyStyleCenterNoBorder);
excel.SetCellValue(row, 10, MinuteToTime(SST03_SUM), bodyStyleCenterNoBorder);
excel.SetCellValue(row, 12, MinuteToTime(SST22_SUM), bodyStyleCenterNoBorder);
}
else
{
excel.SetCellFormula(row, 4, String.Format("SUM({0}:{1})", excel.RCtoA1(beginRow, 4), excel.RCtoA1(row - 1, 4)), bodyNumberStyleNoBorder);
excel.SetCellFormula(row, 6, String.Format("SUM({0}:{1})", excel.RCtoA1(beginRow, 6), excel.RCtoA1(row - 1, 6)), bodyNumberStyleNoBorder);
excel.SetCellFormula(row, 8, String.Format("SUM({0}:{1})", excel.RCtoA1(beginRow, 8), excel.RCtoA1(row - 1, 8)), bodyNumberStyleNoBorder);
excel.SetCellFormula(row, 10, String.Format("SUM({0}:{1})", excel.RCtoA1(beginRow, 10), excel.RCtoA1(row - 1, 10)), bodyNumberStyleNoBorder);
excel.SetCellFormula(row, 12, String.Format("SUM({0}:{1})", excel.RCtoA1(beginRow, 12), excel.RCtoA1(row - 1, 12)), bodyNumberStyleNoBorder);
}
row++;
excel.MergeCell(row, 0, row, 5, BorderStyle.None);
excel.SetCellValue(row, 0, "承辦人:", titleStyleLeftNoBorder);
excel.MergeCell(row, 6, row, 10, BorderStyle.None);
excel.SetCellValue(row, 6, "業務主管:", titleStyleLeftNoBorder);
excel.MergeCell(row, 11, row, 15, BorderStyle.None);
excel.SetCellValue(row, 11, "公司章:", titleStyleLeftNoBorder);
#endregion
excel.SetColumnWidth(0, 6);
excel.SetColumnWidth(1, 10);
excel.SetColumnWidth(2, 10);
excel.SetColumnWidth(3, 10);
excel.SetColumnWidth(4, 10);
excel.SetColumnWidth(5, 10);
excel.SetColumnWidth(6, 10);
excel.SetColumnWidth(7, 10);
excel.SetColumnWidth(8, 10);
excel.SetColumnWidth(9, 10);
excel.SetColumnWidth(10, 10);
excel.SetColumnWidth(11, 10);
excel.SetColumnWidth(12, 10);
excel.SetColumnWidth(13, 10);
excel.SetColumnWidth(14, 10);
excel.SetColumnWidth(15, 50);
MemoryStream ms = new MemoryStream();
workbook.Write(ms);
return ms;
}
}