cash_pool_transaction_record.go
1.3 KB
package domain
import "time"
// 现金池事务记录
type CashPoolTransactionRecord struct {
CashPoolTransactionRecordId int64 `json:"cashPoolTransactionRecordId"` // 现金池事务记录ID
RecordType int `json:"recordType"` // 记录类型
CashPoolBeforeTransaction *CashPool `json:"cashPoolBeforeTransaction"` // 事务处理前现金池
CurrentCashPool *CashPool `json:"CurrentCashPool"` // 当前现金池
Cash float64 `json:"CashPool"` // 事务现金值
Operator *EmployeeInfo `json:"operator"` // 操作人
RecordDescription string `json:"recordDescription"` // 现金池事务记录描述
CreateTime time.Time `json:"createTime"` // 创建时间
}
type CashPoolTransactionRecordRepository interface {
Save(cashPoolTransactionRecord *CashPoolTransactionRecord) (*CashPoolTransactionRecord, error)
}
func (cashPoolTransactionRecord *CashPoolTransactionRecord) Identity() interface{} {
if cashPoolTransactionRecord.CashPoolTransactionRecordId == 0 {
return nil
}
return cashPoolTransactionRecord.CashPoolTransactionRecordId
}
// 计算当前现金池中的未兑换现金
func (cashPoolTransactionRecord *CashPoolTransactionRecord) TransferUnExchangeCash(cash float64) error {
cashPoolTransactionRecord.CurrentCashPool.UnExchangeCash += cash
return nil
}