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
+191
View File
@@ -0,0 +1,191 @@
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Collections.Generic;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using Wellan.Common;
using Wellan.Data;
using System.Data.Common;
using CRAX;
using System.IO;
public partial class forms_report_fmCardDailyReport : Wellan.Web.UI.WUserControlBase
{
private RasnDAC rasnDao;
private RparDAC rparDao;
private ProjectBranchGroupDAC pbgDao;
private string ;
private string ;
private string ;
private List<ProjectEmployeeItem> Data = null;
private List<Item> Data = null;
private List<Item> Data = null;
private List<Item> Data = null;
private List<RASNBRHItem> = null;
protected void Page_Load(object sender, EventArgs e)
{
}
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
if (txtDate1.Value.Ticks == 0)
txtDate1.Value = DateTime.UtcNow.AddHours(8).Date;
if (txtDate2.Value.Ticks == 0)
txtDate2.Value = DateTime.UtcNow.AddHours(8).Date;
SetClientFocus(txtDate1);
rasnDao = new RasnDAC(Query);
rparDao = new RparDAC(Query);
pbgDao = new ProjectBranchGroupDAC(Query);
}
protected void btnOk_Click(object sender, EventArgs e)
{
cvMessage.IsValid = true;
cvMessage.ErrorMessage = "";
if (!CheckProjectRight())
return;
if (!CheckDateValid())
return;
// 取得並儲存畫面輸入的站別歸屬
pbgDao.DeleteByProject(ddlRPPYN.SelectedValue);
foreach (GridViewRow row in gvBranch.Rows)
{
var txtGroup = (row.Cells[0].FindControl("txtGroup") as TextBox);
if (txtGroup != null)
{
var group = txtGroup.Text;
var branchId = txtGroup.Attributes["relatevalue"];
if (!string.IsNullOrEmpty(group) && !string.IsNullOrEmpty(branchId))
{
pbgDao.Insert(ddlRPPYN.SelectedValue, branchId, group);
}
}
}
= GetLookup("BPAA", ddlRPPYN.SelectedValue, "BPPYM");
// 取得客戶名稱、公司別
= CompanyDAC.GetCompanyName(WDAC.GetStringValue(Query.ExecuteScalar(
@"SELECT BPCPY FROM BPRJ B
INNER JOIN BPAA C ON B.BPPNM=C.BPPNM
WHERE C.BPPYN='" + ddlRPPYN.SelectedValue + "'"))); ;
= WDAC.GetStringValue(Query.ExecuteScalar(
@"SELECT BCNAM FROM BCUS A
INNER JOIN BPRJ B ON A.BCNUM=B.BPNUM
INNER JOIN BPAA C ON B.BPPNM=C.BPPNM
WHERE C.BPPYN='" + ddlRPPYN.SelectedValue + "'"));
Data = new GetData(Query).GetRASN_DATE_BPPYN(txtDate1.Value, txtDate2.Value, ddlRPPYN.SelectedValue);
Data = rparDao.(ddlRPPYN.SelectedValue, txtDate1.Value, txtDate2.Value, RPAR_TYPE.T0_請假);
Data = rparDao.(ddlRPPYN.SelectedValue, txtDate1.Value, txtDate2.Value, RPAR_TYPE.T1_加班);
Data = rparDao.(ddlRPPYN.SelectedValue, txtDate1.Value, txtDate2.Value, RPAR_TYPE.T3_出差);
= rasnDao.SelectBranchForReport(ddlRPPYN.SelectedValue);
if (Data.Count != 0)
{
Do差勤日報表();
}
else
{
cvMessage.IsValid = false;
cvMessage.ErrorMessage = "無符合條件的資料";
}
}
private void Do差勤日報表()
{
var = new ();
. = txtDate1.Value;
. = txtDate2.Value;
. = ;
. = ;
. = ;
. = ddlRPPYN.SelectedValue;
.Data = Data;
.Data = Data;
.Data = Data;
.Data = Data;
. = ;
. = new GetData(Query).GetOverTimeToMinutes(ddlRPPYN.SelectedValue);
MemoryStream ms = .();
ResponseWriteFile(ms, String.Format("差勤日報表_{0}_{1:yyyyMMdd}_{2:yyyyMMdd}.xls", ddlRPPYN.SelectedValue, txtDate1.Value, txtDate2.Value));
}
protected bool CheckProjectRight()
{
// 檢查此使用者是否有權限處理這個專案
BprmDAC bprm = new BprmDAC(Query);
if (!bprm.GetRight(ddlRPPYN.SelectedValue, UserId))
{
cvMessage.ErrorMessage = "對不起,你沒有處理這個專案的權限!";
cvMessage.IsValid = false;
pnlGroup.Visible = false;
return false;
}
return true;
}
protected void Next_Click(object sender, EventArgs e)
{
if (!CheckProjectRight())
return;
pnlGroup.Visible = true;
gvBranch.DataSource = rasnDao.SelectBranchForForm(ddlRPPYN.SelectedValue);
gvBranch.DataBind();
}
protected void btnDate_Click(object sender, EventArgs e)
{
if (!CheckDateValid())
return;
pnlGroup.Visible = false;
ddlRPPYN.DataSource = new BpaaDAC().GetBpaa(txtDate1.Value.Year);
ddlRPPYN.DataBind();
}
private bool CheckDateValid()
{
if (txtDate1.Value.Ticks == 0 && txtDate2.Value.Ticks != 0)
txtDate1.Value = txtDate2.Value;
if (txtDate2.Value.Ticks == 0 && txtDate1.Value.Ticks != 0)
txtDate2.Value = txtDate1.Value;
if (txtDate1.Value.Ticks == 0 || txtDate2.Value.Ticks == 0)
{
cvMessage.ErrorMessage = "開始日期與結束日期都應輸入!";
cvMessage.IsValid = false;
return false;
}
// 檢查日期是否跨年
if (txtDate1.Value.Year != txtDate2.Value.Year)
{
cvMessage.ErrorMessage = "日期請勿跨年!";
cvMessage.IsValid = false;
return false;
}
return true;
}
}