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
+216
View File
@@ -0,0 +1,216 @@
using System;
using System.Data;
using System.Web.UI.WebControls;
using Wellan.Common;
using Wellan.Data;
public partial class forms_punchcard_fmCardSearch : Wellan.Web.UI.WUserControlBase
{
private DateTime date;
private RcrdDAC rcrdDao;
private bool _canEdit = true;
public bool CanEdit
{
get
{
return _canEdit;
}
set
{
_canEdit = value;
}
}
private void SetColumn()
{
if (_canEdit)
{
MultiView1.ActiveViewIndex = 0;
GridView1.Columns[0].Visible = false;
}
else
{
MultiView1.ActiveViewIndex = 1;
lbFunctionName.Text = "出勤查詢";
// GridView1.Columns[4].Visible = false;
GridView1.Columns[5].Visible = false;
GridView1.Columns[7].Visible = false;
GridView1.Columns[8].Visible = false;
GridView1.Columns[10].Visible = false;
GridView1.Columns[11].Visible = false;
GridView1.Columns[13].Visible = false;
GridView1.Columns[14].Visible = false;
}
}
protected void Page_Load(object sender, EventArgs e)
{
if (txtDate.Text == "")
txtDate.Text = DateTime.UtcNow.AddHours(8).Date.ToString("yyyyMMdd");
if (txtDate1.Text == "")
txtDate1.Text = WGuard1.WDAYTRAN(DateTime.UtcNow.AddHours(8).Date, 1).ToString("yyyyMMdd");
if (txtDate2.Text == "")
txtDate2.Text = WGuard1.WDAYTRAN(DateTime.UtcNow.AddHours(8).Date, 31).ToString("yyyyMMdd");
//if (IsPostBack)
// GridView1.DataBind();
}
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
rcrdDao = new RcrdDAC(Query);
SetColumn();
}
protected void btnYY_Click(object sender, EventArgs e)
{
ddlROPYN.DataSource = new BpaaDAC().GetBpaa(WDAC.GetInt32Value(txtYear.Text) + WGuard1.CY11);
ddlROPYN.DataValueField = "BPPYN";
ddlROPYN.DataTextField = "BPPYM";
ddlROPYN.DataBind();
}
protected void btnSearch_Click(object sender, EventArgs e)
{
if (!CheckProjectRight())
return;
GridView1.DataBind();
}
protected void dsCard_Selecting(object sender, ObjectDataSourceSelectingEventArgs e)
{
if (CanEdit)
{
CheckDate(txtDate.Text, out date);
if (date.Ticks == 0)
return;
e.InputParameters["起日"] = date;
e.InputParameters["迄日"] = date;
e.InputParameters["年度專案"] = ddlROPYN.SelectedValue;
e.InputParameters["人員編號"] = "";
}
else
{
DateTime date1;
CheckDate(txtDate1.Text, out date1);
DateTime date2;
CheckDate(txtDate2.Text, out date2);
if (date1.Ticks != 0 && date2.Ticks == 0)
date2 = date1;
else if (date2.Ticks != 0 && date1.Ticks == 0)
date1 = date2;
e.InputParameters["起日"] = date1;
e.InputParameters["迄日"] = date2;
e.InputParameters["年度專案"] = ddl專案.SelectedValue;
e.InputParameters["人員編號"] = ddl人員.SelectedValue;
}
}
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (!CheckProjectRight())
return;
CheckDate(txtDate.Text, out date);
if (date.Ticks == 0)
return;
var punchTime = ddlHH.SelectedValue + ":" + ddlMM.SelectedValue + ":00";
var dataAndTime = new DateAndTime(date, date, punchTime, date, punchTime, "台北", "Taipei Standard Time");
switch (e.CommandName)
{
case "PUNCH1": // 補打上班
rcrdDao.PunchRCC01(dataAndTime, e.CommandArgument.ToString(), "補打卡", true);
break;
case "CLEAR1": // 清除上班
rcrdDao.ClearRCC01(date, e.CommandArgument.ToString());
break;
case "PUNCH2": // 補打下班
rcrdDao.PunchRCC02(dataAndTime, e.CommandArgument.ToString(), "補打卡", true);
break;
case "CLEAR2": // 清除下班
rcrdDao.ClearRCC02(date, e.CommandArgument.ToString());
break;
case "PUNCH7": // 補打出差外出
rcrdDao.PunchRCC07(dataAndTime, e.CommandArgument.ToString(), "補打卡", true);
break;
case "CLEAR7": // 清除出差外出
rcrdDao.ClearRCC07(date, e.CommandArgument.ToString());
break;
case "PUNCH8": // 補打出差返回
rcrdDao.PunchRCC08(dataAndTime, e.CommandArgument.ToString(), "補打卡", true);
break;
case "CLEAR8": // 清除出差返回
rcrdDao.ClearRCC08(date, e.CommandArgument.ToString());
break;
}
GridView1.DataBind();
}
protected void btn確定日期_Click(object sender, EventArgs e)
{
ddl專案.DataSource = new BsgpDAC().(txtDate1.Value.Ticks > 0 ? txtDate1.Value.Year - WGuard1.CY11 : 0,
txtDate2.Value.Ticks > 0 ? txtDate2.Value.Year - WGuard1.CY11 : 0, UserId);
ddl專案.DataValueField = "BSPYN";
ddl專案.DataTextField = "BPPYM";
ddl專案.DataBind();
}
protected void btn查詢_Click(object sender, EventArgs e)
{
GridView1.PageIndex = 0;
GridView1.DataBind();
}
protected void btn確定專案_Click(object sender, EventArgs e)
{
if (!CheckProjectRight())
return;
DateTime date1;
CheckDate(txtDate1.Text, out date1);
DateTime date2;
CheckDate(txtDate2.Text, out date2);
DataTable t = new GetData(Query).GetRASN_DATE_BPPYN(date1, date2, ddl專案.SelectedValue, null);
ddl人員.Items.Clear();
ddl人員.Items.Add(new ListItem("(請選擇)", ""));
foreach (DataRow r in t.Rows)
{
ddl人員.Items.Add(new ListItem(String.Format("{0} {1}", r["RANUM"], r["BPNME"]), r["RANUM"].ToString()));
}
}
protected bool CheckProjectRight()
{
// 檢查此使用者是否有權限處理這個專案
// 20230324 移除專案權限檢查
//var bppyn = ddlROPYN.SelectedValue;
//if (!CanEdit)
// bppyn = ddl專案.SelectedValue;
//BprmDAC bprm = new BprmDAC(Query);
//if (!bprm.GetRight(bppyn, UserId))
//{
// //MultiView1.Visible = false;
// cvMessage.ErrorMessage = "對不起,你沒有處理這個專案的權限!";
// cvMessage.IsValid = false;
// return false;
//}
return true;
}
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
//GridView_RowDataBound_Shrink_ViewState(sender, e);
}
}