messagerecords.go 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286
  1. // Code generated by ent, DO NOT EDIT.
  2. package ent
  3. import (
  4. "encoding/json"
  5. "fmt"
  6. "strings"
  7. "time"
  8. "entgo.io/ent"
  9. "entgo.io/ent/dialect/sql"
  10. "github.com/suyuan32/simple-admin-job/ent/custom_types"
  11. "github.com/suyuan32/simple-admin-job/ent/messagerecords"
  12. )
  13. // MessageRecords is the model entity for the MessageRecords schema.
  14. type MessageRecords struct {
  15. config `json:"-"`
  16. // ID of the ent.
  17. ID uint64 `json:"id,omitempty"`
  18. // Create Time | 创建日期
  19. CreatedAt time.Time `json:"created_at,omitempty"`
  20. // Update Time | 修改日期
  21. UpdatedAt time.Time `json:"updated_at,omitempty"`
  22. // Status 1: normal 2: ban | 状态 1 正常 2 禁用
  23. Status uint8 `json:"status,omitempty"`
  24. // 机器人微信 id
  25. BotWxid string `json:"bot_wxid,omitempty"`
  26. // 联系人 id
  27. ContactID uint64 `json:"contact_id,omitempty"`
  28. // 类型:1好友,2群组,3企业微信联系人
  29. ContactType int `json:"contact_type,omitempty"`
  30. // 接收方微信 id
  31. ContactWxid string `json:"contact_wxid,omitempty"`
  32. // 内容类型 1 文本 2 文件
  33. ContentType int `json:"content_type,omitempty"`
  34. // 发送内容
  35. Content string `json:"content,omitempty"`
  36. // 元数据
  37. Meta custom_types.Meta `json:"meta,omitempty"`
  38. // 异常原因
  39. ErrorDetail string `json:"error_detail,omitempty"`
  40. // 发送时间
  41. SendTime time.Time `json:"send_time,omitempty"`
  42. // 源类型 1 点发 2 群发 3 SOP
  43. SourceType int `json:"source_type,omitempty"`
  44. // 源 ID
  45. SourceID uint64 `json:"source_id,omitempty"`
  46. // 次源 ID
  47. SubSourceID uint64 `json:"sub_source_id,omitempty"`
  48. sop_node_node_messages *uint64
  49. sop_stage_stage_messages *uint64
  50. selectValues sql.SelectValues
  51. }
  52. // scanValues returns the types for scanning values from sql.Rows.
  53. func (*MessageRecords) scanValues(columns []string) ([]any, error) {
  54. values := make([]any, len(columns))
  55. for i := range columns {
  56. switch columns[i] {
  57. case messagerecords.FieldMeta:
  58. values[i] = new([]byte)
  59. case messagerecords.FieldID, messagerecords.FieldStatus, messagerecords.FieldContactID, messagerecords.FieldContactType, messagerecords.FieldContentType, messagerecords.FieldSourceType, messagerecords.FieldSourceID, messagerecords.FieldSubSourceID:
  60. values[i] = new(sql.NullInt64)
  61. case messagerecords.FieldBotWxid, messagerecords.FieldContactWxid, messagerecords.FieldContent, messagerecords.FieldErrorDetail:
  62. values[i] = new(sql.NullString)
  63. case messagerecords.FieldCreatedAt, messagerecords.FieldUpdatedAt, messagerecords.FieldSendTime:
  64. values[i] = new(sql.NullTime)
  65. case messagerecords.ForeignKeys[0]: // sop_node_node_messages
  66. values[i] = new(sql.NullInt64)
  67. case messagerecords.ForeignKeys[1]: // sop_stage_stage_messages
  68. values[i] = new(sql.NullInt64)
  69. default:
  70. values[i] = new(sql.UnknownType)
  71. }
  72. }
  73. return values, nil
  74. }
  75. // assignValues assigns the values that were returned from sql.Rows (after scanning)
  76. // to the MessageRecords fields.
  77. func (mr *MessageRecords) assignValues(columns []string, values []any) error {
  78. if m, n := len(values), len(columns); m < n {
  79. return fmt.Errorf("mismatch number of scan values: %d != %d", m, n)
  80. }
  81. for i := range columns {
  82. switch columns[i] {
  83. case messagerecords.FieldID:
  84. value, ok := values[i].(*sql.NullInt64)
  85. if !ok {
  86. return fmt.Errorf("unexpected type %T for field id", value)
  87. }
  88. mr.ID = uint64(value.Int64)
  89. case messagerecords.FieldCreatedAt:
  90. if value, ok := values[i].(*sql.NullTime); !ok {
  91. return fmt.Errorf("unexpected type %T for field created_at", values[i])
  92. } else if value.Valid {
  93. mr.CreatedAt = value.Time
  94. }
  95. case messagerecords.FieldUpdatedAt:
  96. if value, ok := values[i].(*sql.NullTime); !ok {
  97. return fmt.Errorf("unexpected type %T for field updated_at", values[i])
  98. } else if value.Valid {
  99. mr.UpdatedAt = value.Time
  100. }
  101. case messagerecords.FieldStatus:
  102. if value, ok := values[i].(*sql.NullInt64); !ok {
  103. return fmt.Errorf("unexpected type %T for field status", values[i])
  104. } else if value.Valid {
  105. mr.Status = uint8(value.Int64)
  106. }
  107. case messagerecords.FieldBotWxid:
  108. if value, ok := values[i].(*sql.NullString); !ok {
  109. return fmt.Errorf("unexpected type %T for field bot_wxid", values[i])
  110. } else if value.Valid {
  111. mr.BotWxid = value.String
  112. }
  113. case messagerecords.FieldContactID:
  114. if value, ok := values[i].(*sql.NullInt64); !ok {
  115. return fmt.Errorf("unexpected type %T for field contact_id", values[i])
  116. } else if value.Valid {
  117. mr.ContactID = uint64(value.Int64)
  118. }
  119. case messagerecords.FieldContactType:
  120. if value, ok := values[i].(*sql.NullInt64); !ok {
  121. return fmt.Errorf("unexpected type %T for field contact_type", values[i])
  122. } else if value.Valid {
  123. mr.ContactType = int(value.Int64)
  124. }
  125. case messagerecords.FieldContactWxid:
  126. if value, ok := values[i].(*sql.NullString); !ok {
  127. return fmt.Errorf("unexpected type %T for field contact_wxid", values[i])
  128. } else if value.Valid {
  129. mr.ContactWxid = value.String
  130. }
  131. case messagerecords.FieldContentType:
  132. if value, ok := values[i].(*sql.NullInt64); !ok {
  133. return fmt.Errorf("unexpected type %T for field content_type", values[i])
  134. } else if value.Valid {
  135. mr.ContentType = int(value.Int64)
  136. }
  137. case messagerecords.FieldContent:
  138. if value, ok := values[i].(*sql.NullString); !ok {
  139. return fmt.Errorf("unexpected type %T for field content", values[i])
  140. } else if value.Valid {
  141. mr.Content = value.String
  142. }
  143. case messagerecords.FieldMeta:
  144. if value, ok := values[i].(*[]byte); !ok {
  145. return fmt.Errorf("unexpected type %T for field meta", values[i])
  146. } else if value != nil && len(*value) > 0 {
  147. if err := json.Unmarshal(*value, &mr.Meta); err != nil {
  148. return fmt.Errorf("unmarshal field meta: %w", err)
  149. }
  150. }
  151. case messagerecords.FieldErrorDetail:
  152. if value, ok := values[i].(*sql.NullString); !ok {
  153. return fmt.Errorf("unexpected type %T for field error_detail", values[i])
  154. } else if value.Valid {
  155. mr.ErrorDetail = value.String
  156. }
  157. case messagerecords.FieldSendTime:
  158. if value, ok := values[i].(*sql.NullTime); !ok {
  159. return fmt.Errorf("unexpected type %T for field send_time", values[i])
  160. } else if value.Valid {
  161. mr.SendTime = value.Time
  162. }
  163. case messagerecords.FieldSourceType:
  164. if value, ok := values[i].(*sql.NullInt64); !ok {
  165. return fmt.Errorf("unexpected type %T for field source_type", values[i])
  166. } else if value.Valid {
  167. mr.SourceType = int(value.Int64)
  168. }
  169. case messagerecords.FieldSourceID:
  170. if value, ok := values[i].(*sql.NullInt64); !ok {
  171. return fmt.Errorf("unexpected type %T for field source_id", values[i])
  172. } else if value.Valid {
  173. mr.SourceID = uint64(value.Int64)
  174. }
  175. case messagerecords.FieldSubSourceID:
  176. if value, ok := values[i].(*sql.NullInt64); !ok {
  177. return fmt.Errorf("unexpected type %T for field sub_source_id", values[i])
  178. } else if value.Valid {
  179. mr.SubSourceID = uint64(value.Int64)
  180. }
  181. case messagerecords.ForeignKeys[0]:
  182. if value, ok := values[i].(*sql.NullInt64); !ok {
  183. return fmt.Errorf("unexpected type %T for edge-field sop_node_node_messages", value)
  184. } else if value.Valid {
  185. mr.sop_node_node_messages = new(uint64)
  186. *mr.sop_node_node_messages = uint64(value.Int64)
  187. }
  188. case messagerecords.ForeignKeys[1]:
  189. if value, ok := values[i].(*sql.NullInt64); !ok {
  190. return fmt.Errorf("unexpected type %T for edge-field sop_stage_stage_messages", value)
  191. } else if value.Valid {
  192. mr.sop_stage_stage_messages = new(uint64)
  193. *mr.sop_stage_stage_messages = uint64(value.Int64)
  194. }
  195. default:
  196. mr.selectValues.Set(columns[i], values[i])
  197. }
  198. }
  199. return nil
  200. }
  201. // Value returns the ent.Value that was dynamically selected and assigned to the MessageRecords.
  202. // This includes values selected through modifiers, order, etc.
  203. func (mr *MessageRecords) Value(name string) (ent.Value, error) {
  204. return mr.selectValues.Get(name)
  205. }
  206. // Update returns a builder for updating this MessageRecords.
  207. // Note that you need to call MessageRecords.Unwrap() before calling this method if this MessageRecords
  208. // was returned from a transaction, and the transaction was committed or rolled back.
  209. func (mr *MessageRecords) Update() *MessageRecordsUpdateOne {
  210. return NewMessageRecordsClient(mr.config).UpdateOne(mr)
  211. }
  212. // Unwrap unwraps the MessageRecords entity that was returned from a transaction after it was closed,
  213. // so that all future queries will be executed through the driver which created the transaction.
  214. func (mr *MessageRecords) Unwrap() *MessageRecords {
  215. _tx, ok := mr.config.driver.(*txDriver)
  216. if !ok {
  217. panic("ent: MessageRecords is not a transactional entity")
  218. }
  219. mr.config.driver = _tx.drv
  220. return mr
  221. }
  222. // String implements the fmt.Stringer.
  223. func (mr *MessageRecords) String() string {
  224. var builder strings.Builder
  225. builder.WriteString("MessageRecords(")
  226. builder.WriteString(fmt.Sprintf("id=%v, ", mr.ID))
  227. builder.WriteString("created_at=")
  228. builder.WriteString(mr.CreatedAt.Format(time.ANSIC))
  229. builder.WriteString(", ")
  230. builder.WriteString("updated_at=")
  231. builder.WriteString(mr.UpdatedAt.Format(time.ANSIC))
  232. builder.WriteString(", ")
  233. builder.WriteString("status=")
  234. builder.WriteString(fmt.Sprintf("%v", mr.Status))
  235. builder.WriteString(", ")
  236. builder.WriteString("bot_wxid=")
  237. builder.WriteString(mr.BotWxid)
  238. builder.WriteString(", ")
  239. builder.WriteString("contact_id=")
  240. builder.WriteString(fmt.Sprintf("%v", mr.ContactID))
  241. builder.WriteString(", ")
  242. builder.WriteString("contact_type=")
  243. builder.WriteString(fmt.Sprintf("%v", mr.ContactType))
  244. builder.WriteString(", ")
  245. builder.WriteString("contact_wxid=")
  246. builder.WriteString(mr.ContactWxid)
  247. builder.WriteString(", ")
  248. builder.WriteString("content_type=")
  249. builder.WriteString(fmt.Sprintf("%v", mr.ContentType))
  250. builder.WriteString(", ")
  251. builder.WriteString("content=")
  252. builder.WriteString(mr.Content)
  253. builder.WriteString(", ")
  254. builder.WriteString("meta=")
  255. builder.WriteString(fmt.Sprintf("%v", mr.Meta))
  256. builder.WriteString(", ")
  257. builder.WriteString("error_detail=")
  258. builder.WriteString(mr.ErrorDetail)
  259. builder.WriteString(", ")
  260. builder.WriteString("send_time=")
  261. builder.WriteString(mr.SendTime.Format(time.ANSIC))
  262. builder.WriteString(", ")
  263. builder.WriteString("source_type=")
  264. builder.WriteString(fmt.Sprintf("%v", mr.SourceType))
  265. builder.WriteString(", ")
  266. builder.WriteString("source_id=")
  267. builder.WriteString(fmt.Sprintf("%v", mr.SourceID))
  268. builder.WriteString(", ")
  269. builder.WriteString("sub_source_id=")
  270. builder.WriteString(fmt.Sprintf("%v", mr.SubSourceID))
  271. builder.WriteByte(')')
  272. return builder.String()
  273. }
  274. // MessageRecordsSlice is a parsable slice of MessageRecords.
  275. type MessageRecordsSlice []*MessageRecords