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
+178
View File
@@ -0,0 +1,178 @@
using System;
using System.Collections.Generic;
using System.Web;
using System.Data;
using System.Data.Common;
using System.ComponentModel;
using WebLib;
namespace
{
[DataObject]
public class DAC_BPSN : DAC
{
public DAC_BPSN()
{ }
public DAC_BPSN(DbConnection conn)
: base(conn)
{ }
public string Get員工姓名(object BPENO)
{
if (BPENO == null)
BPENO = DBNull.Value;
DbCommand cmd = NewCommand();
cmd.CommandText = @"SELECT BPNME FROM BPSNView WHERE BPENO=@BPENO";
AddParam(cmd, "BPENO", BPENO);
string result;
ExecuteScalar(cmd, out result);
return result;
}
public string Get電子郵件(object BPENO)
{
if (BPENO == null)
BPENO = DBNull.Value;
DbCommand cmd = NewCommand();
cmd.CommandText = @"SELECT BPEML FROM BPSNView WHERE BPENO=@BPENO";
AddParam(cmd, "BPENO", BPENO);
string result;
ExecuteScalar(cmd, out result);
return result;
}
public string Get公司電話(object BPENO)
{
if (BPENO == null)
BPENO = DBNull.Value;
DbCommand cmd = NewCommand();
cmd.CommandText = @"SELECT BPOTL FROM BPSNView WHERE BPENO=@BPENO";
AddParam(cmd, "BPENO", BPENO);
string result;
ExecuteScalar(cmd, out result);
return result;
}
public bool Is群組(string BPENO, string BPGLP)
{
if (BPENO == null)
return false;
DbCommand cmd = NewCommand();
cmd.CommandText = @"SELECT COUNT(1) FROM BWEH WHERE BPENO=@BPENO AND BPGLP=@BPGLP";
AddParam(cmd, "BPENO", BPENO);
AddParam(cmd, "BPGLP", BPGLP);
int i;
ExecuteScalar(cmd, out i);
return i > 0;
}
public bool Is系統管理群組(string BPENO)
{
return Is群組(BPENO, PublicVariable.SystemManagerGroup);
}
public bool Is客戶管理群組(string BPENO)
{
return Is群組(BPENO, PublicVariable.CustomManagerGroup);
}
public bool Is現場工作群組(string BPENO)
{
return Is群組(BPENO, PublicVariable.FieldStaffGroup);
}
public bool Is查詢群組(string BPENO)
{
return Is群組(BPENO, PublicVariable.QueryGroup);
}
[DataObjectMethod(DataObjectMethodType.Select)]
public NameValueList Select(string keyword)
{
if (string.IsNullOrEmpty(keyword))
return null;
DbCommand cmdSelect = NewCommand();
cmdSelect.CommandText =
@"select BPENO as Value, BPNME as Name
from BPSNView
where BPEDY is null ";
cmdSelect.CommandText += " and (BPENO like @BPENO or BPNME like @BPNME)";
AddParam(cmdSelect, "BPENO", $"%{keyword}%");
AddParam(cmdSelect, "BPNME", $"%{keyword}%");
cmdSelect.CommandText += " order by BPENO";
var result = new NameValueList();
var list = result as IDataList;
Select(cmdSelect, ref list);
return result;
}
/// <summary>
/// 客戶端下載員工名單使用
/// </summary>
/// <returns></returns>
public BPSNList SelectForClient()
{
DbCommand cmdSelect = NewCommand();
cmdSelect.CommandText =
@"SELECT
A.BPENO,
A.BPNME,
'' AS BPAWD,
MAX(CASE WHEN B.BPGLP = 'SG01' THEN 1 ELSE 0 END) AS Is系統管理群組,
MAX(CASE WHEN B.BPGLP = 'SG02' THEN 1 ELSE 0 END) AS Is客戶管理群組,
MAX(CASE WHEN B.BPGLP = 'SG03' THEN 1 ELSE 0 END) AS Is現場工作群組,
MAX(CASE WHEN B.BPGLP = 'SG04' THEN 1 ELSE 0 END) AS Is查詢群組
FROM BPSNView A
LEFT JOIN BWEH B ON A.BPENO = B.BPENO AND B.BPGLP IN ('SG01','SG02','SG03','SG04')
WHERE A.BPEDY IS NULL
GROUP BY A.BPENO, A.BPNME, A.BPAWD";
var result = new BPSNList();
var list = result as IDataList;
Select(cmdSelect, ref list);
return result;
}
}
[Serializable]
public class BPSNList : List<BPSNItem>, IDataList
{
public void Fill(DbDataReader reader)
{
DAC.FillData<BPSNItem>(reader, this);
}
}
[Serializable]
public class BPSNItem
{
[DataObjectField(true, false, false)]
public string BPENO { get; set; }
[DataObjectField(false, false, true)]
public string BPNME { get; set; }
[DataObjectField(false, false, true)]
public string BPAWD { get; set; }
[DataObjectField(false, false, true)]
public int Is系統管理群組 { get; set; }
[DataObjectField(false, false, true)]
public int Is客戶管理群組 { get; set; }
[DataObjectField(false, false, true)]
public int Is現場工作群組 { get; set; }
[DataObjectField(false, false, true)]
public int Is查詢群組 { get; set; }
}
}