entity.go 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. package main
  2. import "time"
  3. type IDField struct {
  4. ID string
  5. }
  6. type TimeFields struct {
  7. CreatedTime *time.Time
  8. LastUpdatedTime time.Time
  9. }
  10. type IgnoreStruct struct {
  11. IgnoreField *string `sqlmapping:"-" sqlresult:"-"` // 这里如果结构字段上忽略了,结构中的字段可以不加忽略
  12. }
  13. type Class struct {
  14. IDField
  15. Name string `sqlmapping:"updateClear;aes:@MKU^AHYCN$:j76J<TAHCVD#$XZSWQ@L;"`
  16. StudentNum int `sqlmapping:"column:student_num;notUpdate;updateClear;"`
  17. GraduatedTime *time.Time
  18. StudentIDs []string `sqlmapping:"column:student_ids;joinWith:'\n'"`
  19. TimeFields
  20. Ignored string `sqlmapping:"-"`
  21. *IgnoreStruct `sqlmapping:"-"` // 会忽略结构下的所有字段
  22. }
  23. type GraduatedTimeInfoStruct struct {
  24. GraduatedTime *string `sqlresult:"column:graduated_time;parseTime:2006-01-02 15:04:05"`
  25. }
  26. type ClassInfo struct {
  27. IDField
  28. Name string `sqlresult:"aes:@MKU^AHYCN$:j76J<TAHCVD#$XZSWQ@L;"`
  29. StudentNum int `sqlresult:"column:student_num_alias"`
  30. GraduatedTime *time.Time
  31. StudentIDs []string `sqlresult:"column:student_ids;splitWith:'\n'"`
  32. TimeFields
  33. Ignored string `sqlresult:"-"`
  34. *IgnoreStruct `sqlresult:"-"` // 会忽略结构下的所有字段
  35. GraduatedTimeTest *string `sqlresult:"column:graduated_time;parseTime:2006-01-02 15:04:05"`
  36. *GraduatedTimeInfoStruct
  37. }