Files
thinkyu/教育訓練系統/Web/DAC/基本資料/DAC_課程2.cs
T
sryang 577060bc78 chore: 首次簽入 Thinkyu ASP.NET 專案
- 加入 Visual Studio / ASP.NET .gitignore
- 排除建置輸出、IDE 設定、NuGet packages、大型 MSI 安裝檔
2026-09-10 09:42:37 +08:00

236 lines
6.5 KiB
C#

//
// 這個檔案是 課程 資料表的資料存取類別 檔案二
// 您可以修改這個檔案,加入您自訂的屬性與方法
//
using System;
using System.Collections.Generic;
using System.Text;
using System.ComponentModel;
using System.Data;
using System.Data.Common;
using WebLib;
using System.Data.SqlClient;
namespace Education
{
///<summary>
/// 課程 資料存取類別
///</summary>
public partial class DAC_課程 : WebLib.DAC
{
///<summary>
/// 給查詢畫面用的 Select 方法
///</summary>
[DataObjectMethod(DataObjectMethodType.Select)]
public 課程List Select(bool noInputReturnAll, string 課程編號, string 課程類別, string 課程名稱, string 訓練對象)
{
課程List result = new 課程List();
if (!noInputReturnAll
&& 課程編號 == null
&& 課程類別 == null
&& 課程名稱 == null
&& 訓練對象 == null)
return result;
IDataList list = result as IDataList;
DbCommand cmdSelect = NewCommand();
cmdSelect.CommandText = _select + _from + _where;
if (課程編號 != null && 課程編號.Length > 0)
{
cmdSelect.CommandText += " and 課程編號 like @課程編號 ";
AddParam(cmdSelect, "課程編號", 課程編號 + "%");
}
if (課程類別 != null && 課程類別.Length > 0)
{
cmdSelect.CommandText += " and 課程類別 like @課程類別 ";
AddParam(cmdSelect, "課程類別", 課程類別 + "%");
}
if (課程名稱 != null && 課程名稱.Length > 0)
{
cmdSelect.CommandText += " and 課程名稱 like @課程名稱 ";
AddParam(cmdSelect, "課程名稱", 課程名稱 + "%");
}
if (訓練對象 != null && 訓練對象.Length > 0)
{
cmdSelect.CommandText += " and 訓練對象 like @訓練對象 ";
AddParam(cmdSelect, "訓練對象", 訓練對象 + "%");
}
cmdSelect.CommandText += _order;
Select(cmdSelect, ref list);
return result;
}
[DataObjectMethod(DataObjectMethodType.Select)]
public 課程List Select(string 課程類別, string 課程名稱, string 課程類型)
{
課程List result = new 課程List();
if ((課程類別 == null || 課程類別.Length == 0) &&
(課程名稱 == null || 課程名稱.Length == 0) &&
(課程類型 == null || 課程類型.Length == 0))
return result;
IDataList list = result as IDataList;
DbCommand cmdSelect = NewCommand();
cmdSelect.CommandText = _select + _from + _where;
if (課程類別 != null && 課程類別.Length > 0)
{
cmdSelect.CommandText += " and 課程類別 = @課程類別 ";
AddParam(cmdSelect, "課程類別", 課程類別);
}
else
{
return result;
}
if (課程名稱 != null && 課程名稱.Length > 0)
{
cmdSelect.CommandText += " and 課程名稱 like @課程名稱 ";
AddParam(cmdSelect, "課程名稱", "%" + 課程名稱 + "%");
}
if (課程類型 != null && 課程類型.Length > 0)
{
cmdSelect.CommandText += " and 課程類型 = @課程類型 ";
AddParam(cmdSelect, "課程類型", 課程類型);
}
cmdSelect.CommandText += _order;
Select(cmdSelect, ref list);
return result;
}
///<summary>
/// InsertOne 之前會執行此方法
/// 在這裡可以做一些檢查或是自動編號等動作
/// 回傳 false 會打斷 InsertOne 的執行
///</summary>
protected virtual bool BeforeInsertOne(課程 value)
{
value.課程編號 = Next課程編號(value.課程類別);
return true;
}
///<summary>
/// InsertOne 之後會執行此方法
///</summary>
protected virtual void AfterInsertOne(課程 value)
{
}
///<summary>
/// InsertOne 發生錯誤時會執行此方法
///</summary>
protected virtual void OnInsertOneError(Exception error, out bool handled)
{
handled = false;
}
///<summary>
/// UpdateOne 之前會執行此方法
/// 在這裡可以做一些檢查
/// 回傳 false 會打斷 UpdateOne 的執行
///</summary>
protected virtual bool BeforeUpdateOne(課程 value)
{
return true;
}
///<summary>
/// UpdateOne 之後會執行此方法
///</summary>
protected virtual void AfterUpdateOne(課程 value)
{
}
///<summary>
/// UpdateOne 發生錯誤時會執行此方法
///</summary>
protected virtual void OnUpdateOneError(Exception error, out bool handled)
{
handled = false;
}
///<summary>
/// DeleteOne 之前會執行此方法
/// 在這裡可以做一些檢查
/// 回傳 false 會打斷 DeleteOne 的執行
///</summary>
protected virtual bool BeforeDeleteOne(課程 value)
{
return true;
}
///<summary>
/// DeleteOne 之後會執行此方法
///</summary>
protected virtual void AfterDeleteOne(課程 value)
{
}
///<summary>
/// DeleteOne 之前會執行此方法
/// 在這裡可以做一些檢查
/// 回傳 false 會打斷 DeleteOne 的執行
///</summary>
protected virtual bool BeforeDeleteOne(string 課程編號, int DB_APPNO)
{
return true;
}
///<summary>
/// DeleteOne 之後會執行此方法
///</summary>
protected virtual void AfterDeleteOne(string 課程編號, int DB_APPNO)
{
}
///<summary>
/// DeleteOne 發生錯誤時會執行此方法
///</summary>
protected virtual void OnDeleteOneError(Exception error, out bool handled)
{
handled = false;
}
// 有另外加上去的屬性及方法,請加在這裡
protected string Next課程編號(string 課程類別)
{
return Next單號(DateTime.UtcNow.AddHours(8).Date, _tableName, "課程編號", String.Format("\"{0}\"<999>", 課程類別), "");
}
public bool IsOccipued(string 課程編號)
{
DbCommand cmd = NewCommand(
@"SELECT COUNT(1) FROM 訓練課程內容 WHERE 課程編號 = @課程編號");
AddParam(cmd, "課程編號", 課程編號);
int i;
ExecuteScalar(cmd, out i);
return i > 0;
}
}
///<summary>
/// 課程 資料集合類別
///</summary>
public partial class 課程List : List<課程>
{
// 有另外加上去的屬性及方法,請加在這裡
}
///<summary>
/// 課程 資料紀錄類別
///</summary>
public partial class 課程
{
// 有另外加上去的屬性及方法,請加在這裡
}
}