// // 這個檔案是 付款設定 資料表的資料存取類別 檔案二 // 您可以修改這個檔案,加入您自訂的屬性與方法 // using System; using System.Collections.Generic; using System.Text; using System.ComponentModel; using System.Data; using System.Data.Common; using System.Linq; using WebLib; using System.Data.SqlClient; namespace Education { /// /// 付款設定 資料存取類別 /// public partial class DAC_付款設定 : WebLib.DAC { #region 自動產生的資料存取方法 /// /// InsertOne 之前會執行此方法 /// 在這裡可以做一些檢查或是自動編號等動作 /// 回傳 false 會打斷 InsertOne 的執行 /// protected virtual bool BeforeInsertOne(付款設定Item value) { return true; } /// /// InsertOne 之後會執行此方法 /// protected virtual void AfterInsertOne(付款設定Item value) { } /// /// InsertOne 發生錯誤時會執行此方法 /// ///錯誤是否已經處理妥當 protected virtual void OnInsertOneError(Exception error, out bool handled) { handled = false; } /// /// UpdateOne 之前會執行此方法 /// 在這裡可以做一些檢查 /// 回傳 false 會打斷 UpdateOne 的執行 /// protected virtual bool BeforeUpdateOne(付款設定Item value) { return true; } /// /// UpdateOne 之前會執行此方法 /// 在這裡可以做一些檢查 /// 回傳 false 會打斷 UpdateOne 的執行 /// protected virtual bool BeforeUpdateOne(付款設定Item value, 付款設定Item original_value) { return true; } /// /// UpdateOne 之後會執行此方法 /// protected virtual void AfterUpdateOne(付款設定Item value) { } /// /// UpdateOne 之後會執行此方法 /// protected virtual void AfterUpdateOne(付款設定Item value, 付款設定Item original_value) { } /// /// UpdateOne 發生錯誤時會執行此方法 /// ///錯誤是否已經處理妥當 protected virtual void OnUpdateOneError(Exception error, out bool handled) { handled = false; } /// /// DeleteOne 之前會執行此方法 /// 在這裡可以做一些檢查 /// 回傳 false 會打斷 DeleteOne 的執行 /// protected virtual bool BeforeDeleteOne(付款設定Item value) { return true; } /// /// DeleteOne 之後會執行此方法 /// protected virtual void AfterDeleteOne(付款設定Item value) { } /// /// DeleteOne 之前會執行此方法 /// 在這裡可以做一些檢查 /// 回傳 false 會打斷 DeleteOne 的執行 /// protected virtual bool BeforeDeleteOne(int 編號, int DB_APPNO) { return true; } /// /// DeleteOne 之後會執行此方法 /// protected virtual void AfterDeleteOne(int 編號, int DB_APPNO) { } /// /// DeleteOne 發生錯誤時會執行此方法 /// ///錯誤是否已經處理妥當 protected virtual void OnDeleteOneError(Exception error, out bool handled) { handled = false; } #endregion // 有另外加上去的屬性及方法,請加在這裡 [DataObjectMethod(DataObjectMethodType.Select)] public 付款設定List SelectPageBy講師_非講師編號(int startRowIndex, int maximumRows, string 講師_非講師編號) { 付款設定List result = new 付款設定List(); IDataList list = result as IDataList; DbCommand cmdSelect = NewCommand(); cmdSelect.CommandText = String.Format("select top {0} * from (", maximumRows) + "select " + _allFields + ", row_number() over (order by 生效日期 desc) as rowid " + _from + _where; if (!String.IsNullOrEmpty(講師_非講師編號)) { cmdSelect.CommandText += " and 講師_非講師編號 = @講師_非講師編號 "; AddParam(cmdSelect, "講師_非講師編號", 講師_非講師編號); } cmdSelect.CommandText += ") as TMP1 where rowid > @startRowIndex "; AddParam(cmdSelect, "startRowIndex", startRowIndex); Select(cmdSelect, ref list); return result; } [DataObjectMethod(DataObjectMethodType.Select)] public int SelectCountBy講師_非講師編號(string 講師_非講師編號) { DbCommand cmdSelect = NewCommand(); cmdSelect.CommandText = "select count(1) " + _from + _where; if (!String.IsNullOrEmpty(講師_非講師編號)) { cmdSelect.CommandText += " and 講師_非講師編號 = @講師_非講師編號 "; AddParam(cmdSelect, "講師_非講師編號", 講師_非講師編號); } int i; ExecuteScalar(cmdSelect, out i); return i; } /// /// 依照 eventDate 選取生效的付款設定 /// /// /// /// public 付款設定Item SelectRecentlyActivated(string 講師_非講師編號, DateTime? eventDate) { if (String.IsNullOrEmpty(講師_非講師編號) || !eventDate.HasValue) { return null; } var 編號 = 講師_非講師編號.StartsWith("P") || 講師_非講師編號.StartsWith("T") ? 講師_非講師編號 : string.Format("T{0:0000}", DAC.GetInt32(講師_非講師編號)); 付款設定List result = new 付款設定List(); IDataList list = result as IDataList; DbCommand cmdSelect = NewCommand(); cmdSelect.CommandText = $"select top 1 * {_from} {_where} and 講師_非講師編號 = @講師_非講師編號 and 生效日期 <= @生效日期 order by 生效日期 desc"; AddParam(cmdSelect, "講師_非講師編號", 編號); AddParam(cmdSelect, "生效日期", eventDate.Value); Select(cmdSelect, ref list); return result.FirstOrDefault(); } } /// ///付款設定 資料集合類別 /// public partial class 付款設定List : List<付款設定Item> { // 有另外加上去的屬性及方法,請加在這裡 } /// ///付款設定 資料紀錄類別 /// public partial class 付款設定Item { // 有另外加上去的屬性及方法,請加在這裡 private DbConnection _conn = null; private DAC_BPSN _dao_bpsn = null; private DAC_BPSN dao_bpsn { get { if (_dao_bpsn == null) { if (_conn == null) { _conn = DAC.NewConnection(); _conn.Open(); } _dao_bpsn = new DAC_BPSN(_conn); } return _dao_bpsn; } } [DataObjectField(false)] public string DB_CRUSR_NAME { get { return dao_bpsn.Get員工姓名(DB_CRUSR); } } [DataObjectField(false)] public string DB_TRUSR_NAME { get { return dao_bpsn.Get員工姓名(DB_TRUSR); } } } }