// // 這個檔案是 差旅費 資料表的資料存取類別 檔案二 // 您可以修改這個檔案,加入您自訂的屬性與方法 // using NPOI.SS.Formula.Functions; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Data.Common; using System.Data.SqlClient; using System.Linq; using System.Text; using WebLib; namespace Education { /// /// 差旅費 資料存取類別 /// public partial class DAC_差旅費 : WebLib.DAC { #region 自動產生的資料存取方法 /// /// InsertOne 之前會執行此方法 /// 在這裡可以做一些檢查或是自動編號等動作 /// 回傳 false 會打斷 InsertOne 的執行 /// protected virtual bool BeforeInsertOne(差旅費Item value) { value.作廢 = 0; value.合計 = 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) { value.合計 = 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 // 有另外加上去的屬性及方法,請加在這裡 /// /// 判斷是否為空 /// /// /// public bool IsEmpty(差旅費Item item) { if (item == null) return true; return string.IsNullOrEmpty(item.編號) && item.領據編號 == 0 && string.IsNullOrEmpty(item.票價資訊) && string.IsNullOrEmpty(item.費用別) && string.IsNullOrEmpty(item.起點) && string.IsNullOrEmpty(item.訖點) && item.捷運公車.HasValue && item.火車.HasValue && item.計程車.HasValue && item.高鐵飛機.HasValue && item.自行開車.HasValue && item.過路費停車費.HasValue && item.住宿費.HasValue && item.合計.HasValue; } } /// ///差旅費 資料集合類別 /// public partial class 差旅費List : List<差旅費Item> { // 有另外加上去的屬性及方法,請加在這裡 } /// ///差旅費 資料紀錄類別 /// public partial class 差旅費Item { // 有另外加上去的屬性及方法,請加在這裡 public bool IsEmpty { get { return (!合計.HasValue || 合計 == 0); } } public int 計算合計() { return (捷運公車.HasValue ? 捷運公車.Value : 0) + (火車.HasValue ? 火車.Value : 0) + (計程車.HasValue ? 計程車.Value : 0) + (高鐵飛機.HasValue ? 高鐵飛機.Value : 0) + (自行開車.HasValue ? 自行開車.Value : 0) + (過路費停車費.HasValue ? 過路費停車費.Value : 0) + (住宿費.HasValue ? 住宿費.Value : 0); } } }