chore: 首次簽入 Thinkyu ASP.NET 專案
- 加入 Visual Studio / ASP.NET .gitignore - 排除建置輸出、IDE 設定、NuGet packages、大型 MSI 安裝檔
This commit is contained in:
@@ -0,0 +1,138 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
using System.Data;
|
||||
using System.Data.Common;
|
||||
using Wellan.Data;
|
||||
using Wellan.Common;
|
||||
|
||||
public partial class forms_worker_fmPunchCard : Wellan.Web.UI.WUserControlBase
|
||||
{
|
||||
private RcrdDAC rcrdDao;
|
||||
private RasnDAC rasnDao;
|
||||
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
protected override void OnInit(EventArgs e)
|
||||
{
|
||||
base.OnInit(e);
|
||||
rcrdDao = new RcrdDAC(Query);
|
||||
rasnDao = new RasnDAC(Query);
|
||||
|
||||
ReadCard();
|
||||
ReadRasn();
|
||||
}
|
||||
|
||||
protected long nowtime
|
||||
{
|
||||
get { return (DateTime.UtcNow.Ticks - new DateTime(1970, 1, 1).Ticks) / 10000; }
|
||||
}
|
||||
|
||||
protected bool showTWTime { get; set; }
|
||||
|
||||
private void ReadCard()
|
||||
{
|
||||
var aNow = DateAndTime.GetNow(UserId);
|
||||
DataTable data = rcrdDao.ReadToday(UserId, aNow.CardDate);
|
||||
|
||||
if (data.Rows.Count != 0)
|
||||
{
|
||||
lbOnDuty.Text = WQuery.GetStringValue(data.Rows[0]["RCC01"]);
|
||||
lbOffDuty.Text = WQuery.GetStringValue(data.Rows[0]["RCC02"]);
|
||||
lbOut.Text = WQuery.GetStringValue(data.Rows[0]["RCC07"]);
|
||||
lbBack.Text = WQuery.GetStringValue(data.Rows[0]["RCC08"]);
|
||||
}
|
||||
|
||||
// 20220106 解除下班打卡按鈕限制
|
||||
btnOnDuty.Enabled = lbOnDuty.Text.Length == 0;
|
||||
// btnOffDuty.Enabled = lbOffDuty.Text.Length == 0 && lbOnDuty.Text.Length > 0;
|
||||
btnOffDuty.Enabled = lbOffDuty.Text.Length == 0;
|
||||
|
||||
btnOut.Enabled = lbOut.Text.Length == 0;
|
||||
// btnBack.Enabled = lbOut.Text.Length > 0 && lbBack.Text.Length == 0;
|
||||
btnBack.Enabled = lbBack.Text.Length == 0;
|
||||
|
||||
if (lbOnDuty.Text.Length == 0)
|
||||
lbOnDuty.Text = "(尚未打卡)";
|
||||
|
||||
if (lbOffDuty.Text.Length == 0)
|
||||
lbOffDuty.Text = "(尚未打卡)";
|
||||
|
||||
if (lbOut.Text.Length == 0)
|
||||
lbOut.Text = "(尚未打卡)";
|
||||
|
||||
if (lbBack.Text.Length == 0)
|
||||
lbBack.Text = "(尚未打卡)";
|
||||
}
|
||||
|
||||
private void ReadRasn()
|
||||
{
|
||||
showTWTime = false;
|
||||
|
||||
var rasnTable = rasnDao.SelectRecent(UserId);
|
||||
if (rasnTable.Rows.Count > 0)
|
||||
{
|
||||
var rawtz = WDAC.GetStringValue(rasnTable.Rows[0]["RAWTZ"]);
|
||||
if (!string.IsNullOrEmpty(rawtz) && string.Compare(rawtz, "台北") != 0)
|
||||
{
|
||||
showTWTime = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
protected bool CheckPunchCardDays()
|
||||
{
|
||||
cvMessage.IsValid = true;
|
||||
cvMessage.ErrorMessage = string.Empty;
|
||||
|
||||
if (rcrdDao.PunchDaysIn7Days(DateAndTime.GetNow(UserId).LocalDate, UserId, false) >= 6)
|
||||
{
|
||||
cvMessage.IsValid = false;
|
||||
cvMessage.ErrorMessage = "不可連續七天打卡";
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
protected void btnOnDuty_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (!CheckPunchCardDays()) return;
|
||||
|
||||
var aNow = DateAndTime.GetNow(UserId);
|
||||
rcrdDao.PunchRCC01(aNow, UserId, Request.UserHostAddress, false);
|
||||
ReadCard();
|
||||
}
|
||||
|
||||
protected void btnOffDuty_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (!CheckPunchCardDays()) return;
|
||||
|
||||
var aNow = DateAndTime.GetNow(UserId);
|
||||
rcrdDao.PunchRCC02(aNow, UserId, Request.UserHostAddress, false);
|
||||
ReadCard();
|
||||
}
|
||||
|
||||
protected void btnOut_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (!CheckPunchCardDays()) return;
|
||||
|
||||
var aNow = DateAndTime.GetNow(UserId);
|
||||
rcrdDao.PunchRCC07(aNow, UserId, Request.UserHostAddress, false);
|
||||
ReadCard();
|
||||
}
|
||||
|
||||
protected void btnBack_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (!CheckPunchCardDays()) return;
|
||||
|
||||
var aNow = DateAndTime.GetNow(UserId);
|
||||
rcrdDao.PunchRCC08(aNow, UserId, Request.UserHostAddress, false);
|
||||
ReadCard();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user