12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- package model
- import (
- "encoding/json"
- "time"
- )
- // Stat all data statistics
- type Stat struct {
- Counts int `json:"counts"`
- }
- // Message canal binlog message.
- type Message struct {
- Action string `json:"action"`
- Table string `json:"table"`
- New json.RawMessage `json:"new"`
- Old json.RawMessage `json:"old"`
- }
- // DatabusPool poll from db.
- var DatabusPool = []string{"dm", "dmreport_new"}
- // JSONTime .
- type JSONTime time.Time
- // UnmarshalJSON .
- func (p *JSONTime) UnmarshalJSON(data []byte) error {
- local, err := time.ParseInLocation(`"2006-01-02 15:04:05"`, string(data), time.Local)
- *p = JSONTime(local)
- return err
- }
- // MarshalJSON .
- func (p JSONTime) MarshalJSON() ([]byte, error) {
- data := make([]byte, 0)
- data = append(data, '"')
- data = time.Time(p).AppendFormat(data, "2006-01-02 15:04:05")
- data = append(data, '"')
- return data, nil
- }
- // String .
- func (p JSONTime) String() string {
- return time.Time(p).Format("2006-01-02 15:04:05")
- }
|