batchimagejob.go 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609
  1. // Code generated by ent, DO NOT EDIT.
  2. package ent
  3. import (
  4. "fmt"
  5. "strings"
  6. "time"
  7. "entgo.io/ent"
  8. "entgo.io/ent/dialect/sql"
  9. "github.com/Wei-Shaw/sub2api/ent/batchimagejob"
  10. )
  11. // BatchImageJob is the model entity for the BatchImageJob schema.
  12. type BatchImageJob struct {
  13. config `json:"-"`
  14. // ID of the ent.
  15. ID int64 `json:"id,omitempty"`
  16. // BatchID holds the value of the "batch_id" field.
  17. BatchID string `json:"batch_id,omitempty"`
  18. // UserID holds the value of the "user_id" field.
  19. UserID int64 `json:"user_id,omitempty"`
  20. // APIKeyID holds the value of the "api_key_id" field.
  21. APIKeyID *int64 `json:"api_key_id,omitempty"`
  22. // AccountID holds the value of the "account_id" field.
  23. AccountID *int64 `json:"account_id,omitempty"`
  24. // Provider holds the value of the "provider" field.
  25. Provider string `json:"provider,omitempty"`
  26. // Model holds the value of the "model" field.
  27. Model string `json:"model,omitempty"`
  28. // TaskName holds the value of the "task_name" field.
  29. TaskName string `json:"task_name,omitempty"`
  30. // Status holds the value of the "status" field.
  31. Status string `json:"status,omitempty"`
  32. // ProviderJobName holds the value of the "provider_job_name" field.
  33. ProviderJobName *string `json:"provider_job_name,omitempty"`
  34. // ProviderInputRef holds the value of the "provider_input_ref" field.
  35. ProviderInputRef *string `json:"provider_input_ref,omitempty"`
  36. // ProviderOutputRef holds the value of the "provider_output_ref" field.
  37. ProviderOutputRef *string `json:"provider_output_ref,omitempty"`
  38. // GcsInputURI holds the value of the "gcs_input_uri" field.
  39. GcsInputURI *string `json:"gcs_input_uri,omitempty"`
  40. // GcsOutputURI holds the value of the "gcs_output_uri" field.
  41. GcsOutputURI *string `json:"gcs_output_uri,omitempty"`
  42. // ItemCount holds the value of the "item_count" field.
  43. ItemCount int `json:"item_count,omitempty"`
  44. // SuccessCount holds the value of the "success_count" field.
  45. SuccessCount int `json:"success_count,omitempty"`
  46. // FailCount holds the value of the "fail_count" field.
  47. FailCount int `json:"fail_count,omitempty"`
  48. // CancelledCount holds the value of the "cancelled_count" field.
  49. CancelledCount int `json:"cancelled_count,omitempty"`
  50. // EstimatedCost holds the value of the "estimated_cost" field.
  51. EstimatedCost float64 `json:"estimated_cost,omitempty"`
  52. // HoldAmount holds the value of the "hold_amount" field.
  53. HoldAmount *float64 `json:"hold_amount,omitempty"`
  54. // ActualCost holds the value of the "actual_cost" field.
  55. ActualCost *float64 `json:"actual_cost,omitempty"`
  56. // Currency holds the value of the "currency" field.
  57. Currency string `json:"currency,omitempty"`
  58. // HoldID holds the value of the "hold_id" field.
  59. HoldID *string `json:"hold_id,omitempty"`
  60. // IdempotencyKey holds the value of the "idempotency_key" field.
  61. IdempotencyKey *string `json:"idempotency_key,omitempty"`
  62. // RequestHash holds the value of the "request_hash" field.
  63. RequestHash *string `json:"request_hash,omitempty"`
  64. // ManifestHash holds the value of the "manifest_hash" field.
  65. ManifestHash *string `json:"manifest_hash,omitempty"`
  66. // RetryCount holds the value of the "retry_count" field.
  67. RetryCount int `json:"retry_count,omitempty"`
  68. // Version holds the value of the "version" field.
  69. Version int `json:"version,omitempty"`
  70. // OutputExpiresAt holds the value of the "output_expires_at" field.
  71. OutputExpiresAt *time.Time `json:"output_expires_at,omitempty"`
  72. // InputDeletedAt holds the value of the "input_deleted_at" field.
  73. InputDeletedAt *time.Time `json:"input_deleted_at,omitempty"`
  74. // OutputDeletedAt holds the value of the "output_deleted_at" field.
  75. OutputDeletedAt *time.Time `json:"output_deleted_at,omitempty"`
  76. // DownloadedAt holds the value of the "downloaded_at" field.
  77. DownloadedAt *time.Time `json:"downloaded_at,omitempty"`
  78. // UserDeletedAt holds the value of the "user_deleted_at" field.
  79. UserDeletedAt *time.Time `json:"user_deleted_at,omitempty"`
  80. // LastErrorCode holds the value of the "last_error_code" field.
  81. LastErrorCode *string `json:"last_error_code,omitempty"`
  82. // LastErrorMessage holds the value of the "last_error_message" field.
  83. LastErrorMessage *string `json:"last_error_message,omitempty"`
  84. // CreatedAt holds the value of the "created_at" field.
  85. CreatedAt time.Time `json:"created_at,omitempty"`
  86. // UpdatedAt holds the value of the "updated_at" field.
  87. UpdatedAt time.Time `json:"updated_at,omitempty"`
  88. // SubmittedAt holds the value of the "submitted_at" field.
  89. SubmittedAt *time.Time `json:"submitted_at,omitempty"`
  90. // StartedAt holds the value of the "started_at" field.
  91. StartedAt *time.Time `json:"started_at,omitempty"`
  92. // FinishedAt holds the value of the "finished_at" field.
  93. FinishedAt *time.Time `json:"finished_at,omitempty"`
  94. // SettledAt holds the value of the "settled_at" field.
  95. SettledAt *time.Time `json:"settled_at,omitempty"`
  96. selectValues sql.SelectValues
  97. }
  98. // scanValues returns the types for scanning values from sql.Rows.
  99. func (*BatchImageJob) scanValues(columns []string) ([]any, error) {
  100. values := make([]any, len(columns))
  101. for i := range columns {
  102. switch columns[i] {
  103. case batchimagejob.FieldEstimatedCost, batchimagejob.FieldHoldAmount, batchimagejob.FieldActualCost:
  104. values[i] = new(sql.NullFloat64)
  105. case batchimagejob.FieldID, batchimagejob.FieldUserID, batchimagejob.FieldAPIKeyID, batchimagejob.FieldAccountID, batchimagejob.FieldItemCount, batchimagejob.FieldSuccessCount, batchimagejob.FieldFailCount, batchimagejob.FieldCancelledCount, batchimagejob.FieldRetryCount, batchimagejob.FieldVersion:
  106. values[i] = new(sql.NullInt64)
  107. case batchimagejob.FieldBatchID, batchimagejob.FieldProvider, batchimagejob.FieldModel, batchimagejob.FieldTaskName, batchimagejob.FieldStatus, batchimagejob.FieldProviderJobName, batchimagejob.FieldProviderInputRef, batchimagejob.FieldProviderOutputRef, batchimagejob.FieldGcsInputURI, batchimagejob.FieldGcsOutputURI, batchimagejob.FieldCurrency, batchimagejob.FieldHoldID, batchimagejob.FieldIdempotencyKey, batchimagejob.FieldRequestHash, batchimagejob.FieldManifestHash, batchimagejob.FieldLastErrorCode, batchimagejob.FieldLastErrorMessage:
  108. values[i] = new(sql.NullString)
  109. case batchimagejob.FieldOutputExpiresAt, batchimagejob.FieldInputDeletedAt, batchimagejob.FieldOutputDeletedAt, batchimagejob.FieldDownloadedAt, batchimagejob.FieldUserDeletedAt, batchimagejob.FieldCreatedAt, batchimagejob.FieldUpdatedAt, batchimagejob.FieldSubmittedAt, batchimagejob.FieldStartedAt, batchimagejob.FieldFinishedAt, batchimagejob.FieldSettledAt:
  110. values[i] = new(sql.NullTime)
  111. default:
  112. values[i] = new(sql.UnknownType)
  113. }
  114. }
  115. return values, nil
  116. }
  117. // assignValues assigns the values that were returned from sql.Rows (after scanning)
  118. // to the BatchImageJob fields.
  119. func (_m *BatchImageJob) assignValues(columns []string, values []any) error {
  120. if m, n := len(values), len(columns); m < n {
  121. return fmt.Errorf("mismatch number of scan values: %d != %d", m, n)
  122. }
  123. for i := range columns {
  124. switch columns[i] {
  125. case batchimagejob.FieldID:
  126. value, ok := values[i].(*sql.NullInt64)
  127. if !ok {
  128. return fmt.Errorf("unexpected type %T for field id", value)
  129. }
  130. _m.ID = int64(value.Int64)
  131. case batchimagejob.FieldBatchID:
  132. if value, ok := values[i].(*sql.NullString); !ok {
  133. return fmt.Errorf("unexpected type %T for field batch_id", values[i])
  134. } else if value.Valid {
  135. _m.BatchID = value.String
  136. }
  137. case batchimagejob.FieldUserID:
  138. if value, ok := values[i].(*sql.NullInt64); !ok {
  139. return fmt.Errorf("unexpected type %T for field user_id", values[i])
  140. } else if value.Valid {
  141. _m.UserID = value.Int64
  142. }
  143. case batchimagejob.FieldAPIKeyID:
  144. if value, ok := values[i].(*sql.NullInt64); !ok {
  145. return fmt.Errorf("unexpected type %T for field api_key_id", values[i])
  146. } else if value.Valid {
  147. _m.APIKeyID = new(int64)
  148. *_m.APIKeyID = value.Int64
  149. }
  150. case batchimagejob.FieldAccountID:
  151. if value, ok := values[i].(*sql.NullInt64); !ok {
  152. return fmt.Errorf("unexpected type %T for field account_id", values[i])
  153. } else if value.Valid {
  154. _m.AccountID = new(int64)
  155. *_m.AccountID = value.Int64
  156. }
  157. case batchimagejob.FieldProvider:
  158. if value, ok := values[i].(*sql.NullString); !ok {
  159. return fmt.Errorf("unexpected type %T for field provider", values[i])
  160. } else if value.Valid {
  161. _m.Provider = value.String
  162. }
  163. case batchimagejob.FieldModel:
  164. if value, ok := values[i].(*sql.NullString); !ok {
  165. return fmt.Errorf("unexpected type %T for field model", values[i])
  166. } else if value.Valid {
  167. _m.Model = value.String
  168. }
  169. case batchimagejob.FieldTaskName:
  170. if value, ok := values[i].(*sql.NullString); !ok {
  171. return fmt.Errorf("unexpected type %T for field task_name", values[i])
  172. } else if value.Valid {
  173. _m.TaskName = value.String
  174. }
  175. case batchimagejob.FieldStatus:
  176. if value, ok := values[i].(*sql.NullString); !ok {
  177. return fmt.Errorf("unexpected type %T for field status", values[i])
  178. } else if value.Valid {
  179. _m.Status = value.String
  180. }
  181. case batchimagejob.FieldProviderJobName:
  182. if value, ok := values[i].(*sql.NullString); !ok {
  183. return fmt.Errorf("unexpected type %T for field provider_job_name", values[i])
  184. } else if value.Valid {
  185. _m.ProviderJobName = new(string)
  186. *_m.ProviderJobName = value.String
  187. }
  188. case batchimagejob.FieldProviderInputRef:
  189. if value, ok := values[i].(*sql.NullString); !ok {
  190. return fmt.Errorf("unexpected type %T for field provider_input_ref", values[i])
  191. } else if value.Valid {
  192. _m.ProviderInputRef = new(string)
  193. *_m.ProviderInputRef = value.String
  194. }
  195. case batchimagejob.FieldProviderOutputRef:
  196. if value, ok := values[i].(*sql.NullString); !ok {
  197. return fmt.Errorf("unexpected type %T for field provider_output_ref", values[i])
  198. } else if value.Valid {
  199. _m.ProviderOutputRef = new(string)
  200. *_m.ProviderOutputRef = value.String
  201. }
  202. case batchimagejob.FieldGcsInputURI:
  203. if value, ok := values[i].(*sql.NullString); !ok {
  204. return fmt.Errorf("unexpected type %T for field gcs_input_uri", values[i])
  205. } else if value.Valid {
  206. _m.GcsInputURI = new(string)
  207. *_m.GcsInputURI = value.String
  208. }
  209. case batchimagejob.FieldGcsOutputURI:
  210. if value, ok := values[i].(*sql.NullString); !ok {
  211. return fmt.Errorf("unexpected type %T for field gcs_output_uri", values[i])
  212. } else if value.Valid {
  213. _m.GcsOutputURI = new(string)
  214. *_m.GcsOutputURI = value.String
  215. }
  216. case batchimagejob.FieldItemCount:
  217. if value, ok := values[i].(*sql.NullInt64); !ok {
  218. return fmt.Errorf("unexpected type %T for field item_count", values[i])
  219. } else if value.Valid {
  220. _m.ItemCount = int(value.Int64)
  221. }
  222. case batchimagejob.FieldSuccessCount:
  223. if value, ok := values[i].(*sql.NullInt64); !ok {
  224. return fmt.Errorf("unexpected type %T for field success_count", values[i])
  225. } else if value.Valid {
  226. _m.SuccessCount = int(value.Int64)
  227. }
  228. case batchimagejob.FieldFailCount:
  229. if value, ok := values[i].(*sql.NullInt64); !ok {
  230. return fmt.Errorf("unexpected type %T for field fail_count", values[i])
  231. } else if value.Valid {
  232. _m.FailCount = int(value.Int64)
  233. }
  234. case batchimagejob.FieldCancelledCount:
  235. if value, ok := values[i].(*sql.NullInt64); !ok {
  236. return fmt.Errorf("unexpected type %T for field cancelled_count", values[i])
  237. } else if value.Valid {
  238. _m.CancelledCount = int(value.Int64)
  239. }
  240. case batchimagejob.FieldEstimatedCost:
  241. if value, ok := values[i].(*sql.NullFloat64); !ok {
  242. return fmt.Errorf("unexpected type %T for field estimated_cost", values[i])
  243. } else if value.Valid {
  244. _m.EstimatedCost = value.Float64
  245. }
  246. case batchimagejob.FieldHoldAmount:
  247. if value, ok := values[i].(*sql.NullFloat64); !ok {
  248. return fmt.Errorf("unexpected type %T for field hold_amount", values[i])
  249. } else if value.Valid {
  250. _m.HoldAmount = new(float64)
  251. *_m.HoldAmount = value.Float64
  252. }
  253. case batchimagejob.FieldActualCost:
  254. if value, ok := values[i].(*sql.NullFloat64); !ok {
  255. return fmt.Errorf("unexpected type %T for field actual_cost", values[i])
  256. } else if value.Valid {
  257. _m.ActualCost = new(float64)
  258. *_m.ActualCost = value.Float64
  259. }
  260. case batchimagejob.FieldCurrency:
  261. if value, ok := values[i].(*sql.NullString); !ok {
  262. return fmt.Errorf("unexpected type %T for field currency", values[i])
  263. } else if value.Valid {
  264. _m.Currency = value.String
  265. }
  266. case batchimagejob.FieldHoldID:
  267. if value, ok := values[i].(*sql.NullString); !ok {
  268. return fmt.Errorf("unexpected type %T for field hold_id", values[i])
  269. } else if value.Valid {
  270. _m.HoldID = new(string)
  271. *_m.HoldID = value.String
  272. }
  273. case batchimagejob.FieldIdempotencyKey:
  274. if value, ok := values[i].(*sql.NullString); !ok {
  275. return fmt.Errorf("unexpected type %T for field idempotency_key", values[i])
  276. } else if value.Valid {
  277. _m.IdempotencyKey = new(string)
  278. *_m.IdempotencyKey = value.String
  279. }
  280. case batchimagejob.FieldRequestHash:
  281. if value, ok := values[i].(*sql.NullString); !ok {
  282. return fmt.Errorf("unexpected type %T for field request_hash", values[i])
  283. } else if value.Valid {
  284. _m.RequestHash = new(string)
  285. *_m.RequestHash = value.String
  286. }
  287. case batchimagejob.FieldManifestHash:
  288. if value, ok := values[i].(*sql.NullString); !ok {
  289. return fmt.Errorf("unexpected type %T for field manifest_hash", values[i])
  290. } else if value.Valid {
  291. _m.ManifestHash = new(string)
  292. *_m.ManifestHash = value.String
  293. }
  294. case batchimagejob.FieldRetryCount:
  295. if value, ok := values[i].(*sql.NullInt64); !ok {
  296. return fmt.Errorf("unexpected type %T for field retry_count", values[i])
  297. } else if value.Valid {
  298. _m.RetryCount = int(value.Int64)
  299. }
  300. case batchimagejob.FieldVersion:
  301. if value, ok := values[i].(*sql.NullInt64); !ok {
  302. return fmt.Errorf("unexpected type %T for field version", values[i])
  303. } else if value.Valid {
  304. _m.Version = int(value.Int64)
  305. }
  306. case batchimagejob.FieldOutputExpiresAt:
  307. if value, ok := values[i].(*sql.NullTime); !ok {
  308. return fmt.Errorf("unexpected type %T for field output_expires_at", values[i])
  309. } else if value.Valid {
  310. _m.OutputExpiresAt = new(time.Time)
  311. *_m.OutputExpiresAt = value.Time
  312. }
  313. case batchimagejob.FieldInputDeletedAt:
  314. if value, ok := values[i].(*sql.NullTime); !ok {
  315. return fmt.Errorf("unexpected type %T for field input_deleted_at", values[i])
  316. } else if value.Valid {
  317. _m.InputDeletedAt = new(time.Time)
  318. *_m.InputDeletedAt = value.Time
  319. }
  320. case batchimagejob.FieldOutputDeletedAt:
  321. if value, ok := values[i].(*sql.NullTime); !ok {
  322. return fmt.Errorf("unexpected type %T for field output_deleted_at", values[i])
  323. } else if value.Valid {
  324. _m.OutputDeletedAt = new(time.Time)
  325. *_m.OutputDeletedAt = value.Time
  326. }
  327. case batchimagejob.FieldDownloadedAt:
  328. if value, ok := values[i].(*sql.NullTime); !ok {
  329. return fmt.Errorf("unexpected type %T for field downloaded_at", values[i])
  330. } else if value.Valid {
  331. _m.DownloadedAt = new(time.Time)
  332. *_m.DownloadedAt = value.Time
  333. }
  334. case batchimagejob.FieldUserDeletedAt:
  335. if value, ok := values[i].(*sql.NullTime); !ok {
  336. return fmt.Errorf("unexpected type %T for field user_deleted_at", values[i])
  337. } else if value.Valid {
  338. _m.UserDeletedAt = new(time.Time)
  339. *_m.UserDeletedAt = value.Time
  340. }
  341. case batchimagejob.FieldLastErrorCode:
  342. if value, ok := values[i].(*sql.NullString); !ok {
  343. return fmt.Errorf("unexpected type %T for field last_error_code", values[i])
  344. } else if value.Valid {
  345. _m.LastErrorCode = new(string)
  346. *_m.LastErrorCode = value.String
  347. }
  348. case batchimagejob.FieldLastErrorMessage:
  349. if value, ok := values[i].(*sql.NullString); !ok {
  350. return fmt.Errorf("unexpected type %T for field last_error_message", values[i])
  351. } else if value.Valid {
  352. _m.LastErrorMessage = new(string)
  353. *_m.LastErrorMessage = value.String
  354. }
  355. case batchimagejob.FieldCreatedAt:
  356. if value, ok := values[i].(*sql.NullTime); !ok {
  357. return fmt.Errorf("unexpected type %T for field created_at", values[i])
  358. } else if value.Valid {
  359. _m.CreatedAt = value.Time
  360. }
  361. case batchimagejob.FieldUpdatedAt:
  362. if value, ok := values[i].(*sql.NullTime); !ok {
  363. return fmt.Errorf("unexpected type %T for field updated_at", values[i])
  364. } else if value.Valid {
  365. _m.UpdatedAt = value.Time
  366. }
  367. case batchimagejob.FieldSubmittedAt:
  368. if value, ok := values[i].(*sql.NullTime); !ok {
  369. return fmt.Errorf("unexpected type %T for field submitted_at", values[i])
  370. } else if value.Valid {
  371. _m.SubmittedAt = new(time.Time)
  372. *_m.SubmittedAt = value.Time
  373. }
  374. case batchimagejob.FieldStartedAt:
  375. if value, ok := values[i].(*sql.NullTime); !ok {
  376. return fmt.Errorf("unexpected type %T for field started_at", values[i])
  377. } else if value.Valid {
  378. _m.StartedAt = new(time.Time)
  379. *_m.StartedAt = value.Time
  380. }
  381. case batchimagejob.FieldFinishedAt:
  382. if value, ok := values[i].(*sql.NullTime); !ok {
  383. return fmt.Errorf("unexpected type %T for field finished_at", values[i])
  384. } else if value.Valid {
  385. _m.FinishedAt = new(time.Time)
  386. *_m.FinishedAt = value.Time
  387. }
  388. case batchimagejob.FieldSettledAt:
  389. if value, ok := values[i].(*sql.NullTime); !ok {
  390. return fmt.Errorf("unexpected type %T for field settled_at", values[i])
  391. } else if value.Valid {
  392. _m.SettledAt = new(time.Time)
  393. *_m.SettledAt = value.Time
  394. }
  395. default:
  396. _m.selectValues.Set(columns[i], values[i])
  397. }
  398. }
  399. return nil
  400. }
  401. // Value returns the ent.Value that was dynamically selected and assigned to the BatchImageJob.
  402. // This includes values selected through modifiers, order, etc.
  403. func (_m *BatchImageJob) Value(name string) (ent.Value, error) {
  404. return _m.selectValues.Get(name)
  405. }
  406. // Update returns a builder for updating this BatchImageJob.
  407. // Note that you need to call BatchImageJob.Unwrap() before calling this method if this BatchImageJob
  408. // was returned from a transaction, and the transaction was committed or rolled back.
  409. func (_m *BatchImageJob) Update() *BatchImageJobUpdateOne {
  410. return NewBatchImageJobClient(_m.config).UpdateOne(_m)
  411. }
  412. // Unwrap unwraps the BatchImageJob entity that was returned from a transaction after it was closed,
  413. // so that all future queries will be executed through the driver which created the transaction.
  414. func (_m *BatchImageJob) Unwrap() *BatchImageJob {
  415. _tx, ok := _m.config.driver.(*txDriver)
  416. if !ok {
  417. panic("ent: BatchImageJob is not a transactional entity")
  418. }
  419. _m.config.driver = _tx.drv
  420. return _m
  421. }
  422. // String implements the fmt.Stringer.
  423. func (_m *BatchImageJob) String() string {
  424. var builder strings.Builder
  425. builder.WriteString("BatchImageJob(")
  426. builder.WriteString(fmt.Sprintf("id=%v, ", _m.ID))
  427. builder.WriteString("batch_id=")
  428. builder.WriteString(_m.BatchID)
  429. builder.WriteString(", ")
  430. builder.WriteString("user_id=")
  431. builder.WriteString(fmt.Sprintf("%v", _m.UserID))
  432. builder.WriteString(", ")
  433. if v := _m.APIKeyID; v != nil {
  434. builder.WriteString("api_key_id=")
  435. builder.WriteString(fmt.Sprintf("%v", *v))
  436. }
  437. builder.WriteString(", ")
  438. if v := _m.AccountID; v != nil {
  439. builder.WriteString("account_id=")
  440. builder.WriteString(fmt.Sprintf("%v", *v))
  441. }
  442. builder.WriteString(", ")
  443. builder.WriteString("provider=")
  444. builder.WriteString(_m.Provider)
  445. builder.WriteString(", ")
  446. builder.WriteString("model=")
  447. builder.WriteString(_m.Model)
  448. builder.WriteString(", ")
  449. builder.WriteString("task_name=")
  450. builder.WriteString(_m.TaskName)
  451. builder.WriteString(", ")
  452. builder.WriteString("status=")
  453. builder.WriteString(_m.Status)
  454. builder.WriteString(", ")
  455. if v := _m.ProviderJobName; v != nil {
  456. builder.WriteString("provider_job_name=")
  457. builder.WriteString(*v)
  458. }
  459. builder.WriteString(", ")
  460. if v := _m.ProviderInputRef; v != nil {
  461. builder.WriteString("provider_input_ref=")
  462. builder.WriteString(*v)
  463. }
  464. builder.WriteString(", ")
  465. if v := _m.ProviderOutputRef; v != nil {
  466. builder.WriteString("provider_output_ref=")
  467. builder.WriteString(*v)
  468. }
  469. builder.WriteString(", ")
  470. if v := _m.GcsInputURI; v != nil {
  471. builder.WriteString("gcs_input_uri=")
  472. builder.WriteString(*v)
  473. }
  474. builder.WriteString(", ")
  475. if v := _m.GcsOutputURI; v != nil {
  476. builder.WriteString("gcs_output_uri=")
  477. builder.WriteString(*v)
  478. }
  479. builder.WriteString(", ")
  480. builder.WriteString("item_count=")
  481. builder.WriteString(fmt.Sprintf("%v", _m.ItemCount))
  482. builder.WriteString(", ")
  483. builder.WriteString("success_count=")
  484. builder.WriteString(fmt.Sprintf("%v", _m.SuccessCount))
  485. builder.WriteString(", ")
  486. builder.WriteString("fail_count=")
  487. builder.WriteString(fmt.Sprintf("%v", _m.FailCount))
  488. builder.WriteString(", ")
  489. builder.WriteString("cancelled_count=")
  490. builder.WriteString(fmt.Sprintf("%v", _m.CancelledCount))
  491. builder.WriteString(", ")
  492. builder.WriteString("estimated_cost=")
  493. builder.WriteString(fmt.Sprintf("%v", _m.EstimatedCost))
  494. builder.WriteString(", ")
  495. if v := _m.HoldAmount; v != nil {
  496. builder.WriteString("hold_amount=")
  497. builder.WriteString(fmt.Sprintf("%v", *v))
  498. }
  499. builder.WriteString(", ")
  500. if v := _m.ActualCost; v != nil {
  501. builder.WriteString("actual_cost=")
  502. builder.WriteString(fmt.Sprintf("%v", *v))
  503. }
  504. builder.WriteString(", ")
  505. builder.WriteString("currency=")
  506. builder.WriteString(_m.Currency)
  507. builder.WriteString(", ")
  508. if v := _m.HoldID; v != nil {
  509. builder.WriteString("hold_id=")
  510. builder.WriteString(*v)
  511. }
  512. builder.WriteString(", ")
  513. if v := _m.IdempotencyKey; v != nil {
  514. builder.WriteString("idempotency_key=")
  515. builder.WriteString(*v)
  516. }
  517. builder.WriteString(", ")
  518. if v := _m.RequestHash; v != nil {
  519. builder.WriteString("request_hash=")
  520. builder.WriteString(*v)
  521. }
  522. builder.WriteString(", ")
  523. if v := _m.ManifestHash; v != nil {
  524. builder.WriteString("manifest_hash=")
  525. builder.WriteString(*v)
  526. }
  527. builder.WriteString(", ")
  528. builder.WriteString("retry_count=")
  529. builder.WriteString(fmt.Sprintf("%v", _m.RetryCount))
  530. builder.WriteString(", ")
  531. builder.WriteString("version=")
  532. builder.WriteString(fmt.Sprintf("%v", _m.Version))
  533. builder.WriteString(", ")
  534. if v := _m.OutputExpiresAt; v != nil {
  535. builder.WriteString("output_expires_at=")
  536. builder.WriteString(v.Format(time.ANSIC))
  537. }
  538. builder.WriteString(", ")
  539. if v := _m.InputDeletedAt; v != nil {
  540. builder.WriteString("input_deleted_at=")
  541. builder.WriteString(v.Format(time.ANSIC))
  542. }
  543. builder.WriteString(", ")
  544. if v := _m.OutputDeletedAt; v != nil {
  545. builder.WriteString("output_deleted_at=")
  546. builder.WriteString(v.Format(time.ANSIC))
  547. }
  548. builder.WriteString(", ")
  549. if v := _m.DownloadedAt; v != nil {
  550. builder.WriteString("downloaded_at=")
  551. builder.WriteString(v.Format(time.ANSIC))
  552. }
  553. builder.WriteString(", ")
  554. if v := _m.UserDeletedAt; v != nil {
  555. builder.WriteString("user_deleted_at=")
  556. builder.WriteString(v.Format(time.ANSIC))
  557. }
  558. builder.WriteString(", ")
  559. if v := _m.LastErrorCode; v != nil {
  560. builder.WriteString("last_error_code=")
  561. builder.WriteString(*v)
  562. }
  563. builder.WriteString(", ")
  564. if v := _m.LastErrorMessage; v != nil {
  565. builder.WriteString("last_error_message=")
  566. builder.WriteString(*v)
  567. }
  568. builder.WriteString(", ")
  569. builder.WriteString("created_at=")
  570. builder.WriteString(_m.CreatedAt.Format(time.ANSIC))
  571. builder.WriteString(", ")
  572. builder.WriteString("updated_at=")
  573. builder.WriteString(_m.UpdatedAt.Format(time.ANSIC))
  574. builder.WriteString(", ")
  575. if v := _m.SubmittedAt; v != nil {
  576. builder.WriteString("submitted_at=")
  577. builder.WriteString(v.Format(time.ANSIC))
  578. }
  579. builder.WriteString(", ")
  580. if v := _m.StartedAt; v != nil {
  581. builder.WriteString("started_at=")
  582. builder.WriteString(v.Format(time.ANSIC))
  583. }
  584. builder.WriteString(", ")
  585. if v := _m.FinishedAt; v != nil {
  586. builder.WriteString("finished_at=")
  587. builder.WriteString(v.Format(time.ANSIC))
  588. }
  589. builder.WriteString(", ")
  590. if v := _m.SettledAt; v != nil {
  591. builder.WriteString("settled_at=")
  592. builder.WriteString(v.Format(time.ANSIC))
  593. }
  594. builder.WriteByte(')')
  595. return builder.String()
  596. }
  597. // BatchImageJobs is a parsable slice of BatchImageJob.
  598. type BatchImageJobs []*BatchImageJob