package models import "time" // BackendApprovalFlow 审批流程配置表 yz_backend_approval_flows type BackendApprovalFlow struct { ID uint64 `orm:"column(id);pk;auto" json:"id"` Tid uint64 `orm:"column(tid)" json:"tid"` UID *uint64 `orm:"column(uid);null" json:"uid"` FlowName string `orm:"column(flow_name);size(100)" json:"flow_name"` StepOrder int8 `orm:"column(step_order);default(0)" json:"step_order"` ApproverRole string `orm:"column(approver_role);size(50)" json:"approver_role"` ApproverRule string `orm:"column(approver_rule);size(200)" json:"approver_rule"` TimeoutHours int `orm:"column(timeout_hours);default(48)" json:"timeout_hours"` IsActive int8 `orm:"column(is_active);default(1)" json:"is_active"` IsDeleted int8 `orm:"column(is_deleted);default(0)" json:"is_deleted"` CreateTime time.Time `orm:"column(create_time);auto_now_add;type(datetime)" json:"create_time"` UpdateTime *time.Time `orm:"column(update_time);null;type(datetime)" json:"update_time"` DeleteTime *time.Time `orm:"column(delete_time);null;type(datetime)" json:"delete_time"` } func (m *BackendApprovalFlow) TableName() string { return "yz_backend_approval_flows" } // BackendApprovalRecord 审批记录表 yz_backend_approval_records type BackendApprovalRecord struct { ID uint64 `orm:"column(id);pk;auto" json:"id"` Tid uint64 `orm:"column(tid)" json:"tid"` UID *uint64 `orm:"column(uid);null" json:"uid"` ReimbursementID uint64 `orm:"column(reimbursement_id)" json:"reimbursement_id"` ApproverID uint64 `orm:"column(approver_id)" json:"approver_id"` ApproverName string `orm:"column(approver_name);size(100)" json:"approver_name"` Action int8 `orm:"column(action);default(0)" json:"action"` Comment *string `orm:"column(comment);null;type(text)" json:"comment"` Step int8 `orm:"column(step);default(0)" json:"step"` PrevStep int8 `orm:"column(prev_step);default(0)" json:"prev_step"` IsDeleted int8 `orm:"column(is_deleted);default(0)" json:"is_deleted"` CreateTime time.Time `orm:"column(create_time);auto_now_add;type(datetime)" json:"create_time"` UpdateTime *time.Time `orm:"column(update_time);null;type(datetime)" json:"update_time"` DeleteTime *time.Time `orm:"column(delete_time);null;type(datetime)" json:"delete_time"` } func (m *BackendApprovalRecord) TableName() string { return "yz_backend_approval_records" } // BackendReimbursement 报销单主表 yz_backend_reimbursements type BackendReimbursement struct { ID uint64 `orm:"column(id);pk;auto" json:"id"` Tid uint64 `orm:"column(tid)" json:"tid"` UID *uint64 `orm:"column(uid);null" json:"uid"` UserID uint64 `orm:"column(user_id)" json:"user_id"` DepartmentID *uint64 `orm:"column(department_id);null" json:"department_id"` TotalAmount float64 `orm:"column(total_amount);type(decimal);digits(10);decimals(2)" json:"total_amount"` Status int8 `orm:"column(status);default(0)" json:"status"` ApplyDate time.Time `orm:"column(apply_date);type(date)" json:"apply_date"` Description *string `orm:"column(description);null;type(text)" json:"description"` CurrentApproverID uint64 `orm:"column(current_approver_id);default(0)" json:"current_approver_id"` CurrentStep int8 `orm:"column(current_step);default(0)" json:"current_step"` IsDeleted int8 `orm:"column(is_deleted);default(0)" json:"is_deleted"` CreateTime time.Time `orm:"column(create_time);auto_now_add;type(datetime)" json:"create_time"` UpdateTime *time.Time `orm:"column(update_time);null;type(datetime)" json:"update_time"` DeleteTime *time.Time `orm:"column(delete_time);null;type(datetime)" json:"delete_time"` } func (m *BackendReimbursement) TableName() string { return "yz_backend_reimbursements" } // BackendReimbursementItem 报销费用明细表 yz_backend_reimbursement_items type BackendReimbursementItem struct { ID uint64 `orm:"column(id);pk;auto" json:"id"` Tid uint64 `orm:"column(tid)" json:"tid"` UID *uint64 `orm:"column(uid);null" json:"uid"` ReimbursementID uint64 `orm:"column(reimbursement_id)" json:"reimbursement_id"` ExpenseType string `orm:"column(expense_type);size(50)" json:"expense_type"` ExpenseDate time.Time `orm:"column(expense_date);type(date)" json:"expense_date"` Amount float64 `orm:"column(amount);type(decimal);digits(10);decimals(2)" json:"amount"` Quantity int `orm:"column(quantity);default(1)" json:"quantity"` UnitPrice float64 `orm:"column(unit_price);type(decimal);digits(10);decimals(2)" json:"unit_price"` Description string `orm:"column(description);size(200)" json:"description"` ReceiptFlag int8 `orm:"column(receipt_flag);default(0)" json:"receipt_flag"` ReceiptFileIDs string `orm:"column(receipt_file_ids);size(500)" json:"receipt_file_ids"` ReceiptURLs string `orm:"column(receipt_urls);size(500)" json:"receipt_urls"` ReceiptAmounts string `orm:"column(receipt_amounts);size(500)" json:"receipt_amounts"` IsDeleted int8 `orm:"column(is_deleted);default(0)" json:"is_deleted"` CreateTime time.Time `orm:"column(create_time);auto_now_add;type(datetime)" json:"create_time"` UpdateTime *time.Time `orm:"column(update_time);null;type(datetime)" json:"update_time"` DeleteTime *time.Time `orm:"column(delete_time);null;type(datetime)" json:"delete_time"` } func (m *BackendReimbursementItem) TableName() string { return "yz_backend_reimbursement_items" } // BackendReimbursementExpenseType 报销费用类型表 yz_backend_reimbursement_expense_types type BackendReimbursementExpenseType struct { ID uint64 `orm:"column(id);pk;auto" json:"id"` Tid uint64 `orm:"column(tid)" json:"tid"` UID *uint64 `orm:"column(uid);null" json:"uid"` Name string `orm:"column(name);size(50)" json:"name"` SortOrder int `orm:"column(sort_order);default(0)" json:"sort_order"` IsActive int8 `orm:"column(is_active);default(1)" json:"is_active"` IsDeleted int8 `orm:"column(is_deleted);default(0)" json:"is_deleted"` CreateTime time.Time `orm:"column(create_time);auto_now_add;type(datetime)" json:"create_time"` UpdateTime *time.Time `orm:"column(update_time);null;type(datetime)" json:"update_time"` DeleteTime *time.Time `orm:"column(delete_time);null;type(datetime)" json:"delete_time"` } func (m *BackendReimbursementExpenseType) TableName() string { return "yz_backend_reimbursement_expense_types" }