using Newtonsoft.Json; using System; using System.Collections.Generic; using System.ComponentModel; using System.ComponentModel.DataAnnotations; using System.Globalization; using System.Linq; using System.Reflection; using System.Reflection.Emit; using System.Runtime.Serialization; using System.Web.Http; namespace Model { [MetadataType(typeof(transfer_registerMetadata))] public partial class transfer_register { private class transfer_registerMetadata { [JsonIgnore] public virtual accounting accounting { get; set; } [JsonIgnore] public virtual accounting_kind2 accounting_kind2 { get; set; } [JsonIgnore] public virtual activity activity { get; set; } [JsonIgnore] public virtual follower follower { get; set; } [JsonIgnore] public virtual follower follower1 { get; set; } [JsonIgnore] public virtual member member { get; set; } [JsonIgnore] public virtual actItem actItem { get; set; } [JsonIgnore] public virtual pro_order_detail pro_order_detail { get; set; } [DisplayName("系統流水號")] public int id { get; set; } [DisplayName("法會編號")] public int? activity_num { get; set; } [DisplayName("姓名")] [StringLength(50)] public string name { get; set; } [DisplayName("電話")] [StringLength(30)] public string phone { get; set; } [DisplayName("支付方式")] public int? pay_type { get; set; } [DisplayName("帳號後五碼")] [StringLength(10)] public string account_last5 { get; set; } [DisplayName("支付金額")] public int? amount { get; set; } [DisplayName("支付型態")] [StringLength(10)] public string pay_mode { get; set; } [DisplayName("備註")] [StringLength(200)] public string note { get; set; } [DisplayName("匯款憑證圖片檔名")] [StringLength(100)] public string proof_img { get; set; } [DisplayName("信眾核對狀態(階段1)")] public int? status { get; set; } [DisplayName("自動比對信眾編號")] public int? f_num_match { get; set; } [DisplayName("信眾編號")] public int? f_num { get; set; } [DisplayName("入帳銀行帳戶編號")] public int? acc_num { get; set; } [DisplayName("入帳日期")] public DateTime? check_date { get; set; } [DisplayName("入帳金額")] public int? check_amount { get; set; } [DisplayName("帳簿備註")] [StringLength(200)] public string check_memo { get; set; } [DisplayName("匯款核對狀態(階段2)")] public int? check_status { get; set; } [DisplayName("入帳帳戶類型")] public int? acc_kind { get; set; } [DisplayName("會員編號")] public int? member_num { get; set; } [DisplayName("核對時間")] public DateTime? verify_time { get; set; } [DisplayName("核對記錄")] [StringLength(200)] public string verify_note { get; set; } [DisplayName("沖帳暫存資料(JSON)")] public string draft { get; set; } [DisplayName("剩餘金額")] public int? remain_amount { get; set; } [DisplayName("餘額處理-活動品項")] public int? balance_act_item { get; set; } [DisplayName("餘額處理-訂單明細")] public int? balance_pro_order_detail { get; set; } [DisplayName("建立時間")] public DateTime? create_time { get; set; } } public const string Dir = "~/upload/transfer"; // 匯款證明圖片上傳位置 public string log; public enum PayType : int // 支付方式 { [Description("現金")] Cash = 1, [Description("匯款")] Transfer = 2, [Description("支票")] Check = 3 } public enum Status : int // 信眾核對狀態 : 階段1 { [Description("待確認")] Pending = 1, [Description("確認")] Confirmed = 2, [Description("作廢")] Void = 3 } public enum CheckStatus : int // 匯款核對狀態 : 階段2 { [Description("未核對")] Unchecked = 1, [Description("核對")] Checked = 2, [Description("金額不符")] AmountMismatch = 3, [Description("其他問題")] OtherIssue = 4, [Description("作廢")] Void = 5, // 沖帳完成時, 若還有餘額未沖, 將 status 改為 98, 此值不可下拉 [Description("沖帳有餘額")] Remained = 90, // 餘額沖帳相關狀態, [Description("未聯絡")] Uncontacted = 91, [Description("已聯絡")] Contacted = 92, [Description("餘額核銷")] BalanceVoided = 95, // 沖帳完成後, 若餘額為0, 將 status 改為 99, 此值不可下拉 [Description("沖帳完成")] Voided = 99 } } }