value_object.go 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. package sql_executor
  2. import (
  3. "git.sxidc.com/go-framework/baize/framework/core/domain"
  4. "git.sxidc.com/go-framework/baize/framework/core/domain/value_object"
  5. "git.sxidc.com/go-framework/baize/framework/core/tag/check"
  6. "time"
  7. )
  8. const (
  9. FieldSql = "Sql"
  10. FieldExecutorID = "ExecutorID"
  11. FieldExecutorName = "ExecutorName"
  12. FieldExecutedTime = "ExecutedTime"
  13. )
  14. var (
  15. ColumnSql = domain.ColumnName(FieldSql)
  16. ColumnExecutorID = domain.ColumnName(FieldExecutorID)
  17. ColumnExecutorName = domain.ColumnName(FieldExecutorName)
  18. ColumnExecutedTime = domain.ColumnName(FieldExecutedTime)
  19. )
  20. var fieldMap = map[string]string{
  21. FieldSql: "SQL语句",
  22. FieldExecutorID: "执行者ID",
  23. FieldExecutorName: "执行者姓名",
  24. FieldExecutedTime: "执行时间",
  25. }
  26. type SqlExecuteLog struct {
  27. value_object.Base
  28. Sql string `sqlmapping:"column:sql;" sqlresult:"column:sql;" check:"required"`
  29. ExecutorID string `sqlmapping:"column:executor_id;" sqlresult:"column:executor_id;" check:"required,len=32"`
  30. ExecutorName string `sqlmapping:"column:executor_name;" sqlresult:"column:executor_name;" check:"required,lte=256"`
  31. ExecutedTime time.Time `sqlmapping:"column:executed_time;" sqlresult:"column:executed_time;"`
  32. }
  33. func (sqlExecuteLog *SqlExecuteLog) DomainCNName() string {
  34. return "SQL日志"
  35. }
  36. func (sqlExecuteLog *SqlExecuteLog) DomainCamelName() string {
  37. return "SqlExecuteLog"
  38. }
  39. func (sqlExecuteLog *SqlExecuteLog) ForCreate() error {
  40. checkResult := check.Struct(sqlExecuteLog, fieldMap)
  41. err := domain.CheckField(checkResult, sqlExecuteLog.DomainCNName(), FieldSql)
  42. if err != nil {
  43. return err
  44. }
  45. err = domain.CheckField(checkResult, sqlExecuteLog.DomainCNName(), FieldExecutorID)
  46. if err != nil {
  47. return err
  48. }
  49. err = domain.CheckField(checkResult, sqlExecuteLog.DomainCNName(), FieldExecutorName)
  50. if err != nil {
  51. return err
  52. }
  53. sqlExecuteLog.ExecutedTime = time.Now().Local()
  54. return nil
  55. }