paymentproviderinstance_update.go 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628
  1. // Code generated by ent, DO NOT EDIT.
  2. package ent
  3. import (
  4. "context"
  5. "errors"
  6. "fmt"
  7. "time"
  8. "entgo.io/ent/dialect/sql"
  9. "entgo.io/ent/dialect/sql/sqlgraph"
  10. "entgo.io/ent/schema/field"
  11. "github.com/Wei-Shaw/sub2api/ent/paymentproviderinstance"
  12. "github.com/Wei-Shaw/sub2api/ent/predicate"
  13. )
  14. // PaymentProviderInstanceUpdate is the builder for updating PaymentProviderInstance entities.
  15. type PaymentProviderInstanceUpdate struct {
  16. config
  17. hooks []Hook
  18. mutation *PaymentProviderInstanceMutation
  19. }
  20. // Where appends a list predicates to the PaymentProviderInstanceUpdate builder.
  21. func (_u *PaymentProviderInstanceUpdate) Where(ps ...predicate.PaymentProviderInstance) *PaymentProviderInstanceUpdate {
  22. _u.mutation.Where(ps...)
  23. return _u
  24. }
  25. // SetProviderKey sets the "provider_key" field.
  26. func (_u *PaymentProviderInstanceUpdate) SetProviderKey(v string) *PaymentProviderInstanceUpdate {
  27. _u.mutation.SetProviderKey(v)
  28. return _u
  29. }
  30. // SetNillableProviderKey sets the "provider_key" field if the given value is not nil.
  31. func (_u *PaymentProviderInstanceUpdate) SetNillableProviderKey(v *string) *PaymentProviderInstanceUpdate {
  32. if v != nil {
  33. _u.SetProviderKey(*v)
  34. }
  35. return _u
  36. }
  37. // SetName sets the "name" field.
  38. func (_u *PaymentProviderInstanceUpdate) SetName(v string) *PaymentProviderInstanceUpdate {
  39. _u.mutation.SetName(v)
  40. return _u
  41. }
  42. // SetNillableName sets the "name" field if the given value is not nil.
  43. func (_u *PaymentProviderInstanceUpdate) SetNillableName(v *string) *PaymentProviderInstanceUpdate {
  44. if v != nil {
  45. _u.SetName(*v)
  46. }
  47. return _u
  48. }
  49. // SetConfig sets the "config" field.
  50. func (_u *PaymentProviderInstanceUpdate) SetConfig(v string) *PaymentProviderInstanceUpdate {
  51. _u.mutation.SetConfig(v)
  52. return _u
  53. }
  54. // SetNillableConfig sets the "config" field if the given value is not nil.
  55. func (_u *PaymentProviderInstanceUpdate) SetNillableConfig(v *string) *PaymentProviderInstanceUpdate {
  56. if v != nil {
  57. _u.SetConfig(*v)
  58. }
  59. return _u
  60. }
  61. // SetSupportedTypes sets the "supported_types" field.
  62. func (_u *PaymentProviderInstanceUpdate) SetSupportedTypes(v string) *PaymentProviderInstanceUpdate {
  63. _u.mutation.SetSupportedTypes(v)
  64. return _u
  65. }
  66. // SetNillableSupportedTypes sets the "supported_types" field if the given value is not nil.
  67. func (_u *PaymentProviderInstanceUpdate) SetNillableSupportedTypes(v *string) *PaymentProviderInstanceUpdate {
  68. if v != nil {
  69. _u.SetSupportedTypes(*v)
  70. }
  71. return _u
  72. }
  73. // SetEnabled sets the "enabled" field.
  74. func (_u *PaymentProviderInstanceUpdate) SetEnabled(v bool) *PaymentProviderInstanceUpdate {
  75. _u.mutation.SetEnabled(v)
  76. return _u
  77. }
  78. // SetNillableEnabled sets the "enabled" field if the given value is not nil.
  79. func (_u *PaymentProviderInstanceUpdate) SetNillableEnabled(v *bool) *PaymentProviderInstanceUpdate {
  80. if v != nil {
  81. _u.SetEnabled(*v)
  82. }
  83. return _u
  84. }
  85. // SetPaymentMode sets the "payment_mode" field.
  86. func (_u *PaymentProviderInstanceUpdate) SetPaymentMode(v string) *PaymentProviderInstanceUpdate {
  87. _u.mutation.SetPaymentMode(v)
  88. return _u
  89. }
  90. // SetNillablePaymentMode sets the "payment_mode" field if the given value is not nil.
  91. func (_u *PaymentProviderInstanceUpdate) SetNillablePaymentMode(v *string) *PaymentProviderInstanceUpdate {
  92. if v != nil {
  93. _u.SetPaymentMode(*v)
  94. }
  95. return _u
  96. }
  97. // SetSortOrder sets the "sort_order" field.
  98. func (_u *PaymentProviderInstanceUpdate) SetSortOrder(v int) *PaymentProviderInstanceUpdate {
  99. _u.mutation.ResetSortOrder()
  100. _u.mutation.SetSortOrder(v)
  101. return _u
  102. }
  103. // SetNillableSortOrder sets the "sort_order" field if the given value is not nil.
  104. func (_u *PaymentProviderInstanceUpdate) SetNillableSortOrder(v *int) *PaymentProviderInstanceUpdate {
  105. if v != nil {
  106. _u.SetSortOrder(*v)
  107. }
  108. return _u
  109. }
  110. // AddSortOrder adds value to the "sort_order" field.
  111. func (_u *PaymentProviderInstanceUpdate) AddSortOrder(v int) *PaymentProviderInstanceUpdate {
  112. _u.mutation.AddSortOrder(v)
  113. return _u
  114. }
  115. // SetLimits sets the "limits" field.
  116. func (_u *PaymentProviderInstanceUpdate) SetLimits(v string) *PaymentProviderInstanceUpdate {
  117. _u.mutation.SetLimits(v)
  118. return _u
  119. }
  120. // SetNillableLimits sets the "limits" field if the given value is not nil.
  121. func (_u *PaymentProviderInstanceUpdate) SetNillableLimits(v *string) *PaymentProviderInstanceUpdate {
  122. if v != nil {
  123. _u.SetLimits(*v)
  124. }
  125. return _u
  126. }
  127. // SetRefundEnabled sets the "refund_enabled" field.
  128. func (_u *PaymentProviderInstanceUpdate) SetRefundEnabled(v bool) *PaymentProviderInstanceUpdate {
  129. _u.mutation.SetRefundEnabled(v)
  130. return _u
  131. }
  132. // SetNillableRefundEnabled sets the "refund_enabled" field if the given value is not nil.
  133. func (_u *PaymentProviderInstanceUpdate) SetNillableRefundEnabled(v *bool) *PaymentProviderInstanceUpdate {
  134. if v != nil {
  135. _u.SetRefundEnabled(*v)
  136. }
  137. return _u
  138. }
  139. // SetAllowUserRefund sets the "allow_user_refund" field.
  140. func (_u *PaymentProviderInstanceUpdate) SetAllowUserRefund(v bool) *PaymentProviderInstanceUpdate {
  141. _u.mutation.SetAllowUserRefund(v)
  142. return _u
  143. }
  144. // SetNillableAllowUserRefund sets the "allow_user_refund" field if the given value is not nil.
  145. func (_u *PaymentProviderInstanceUpdate) SetNillableAllowUserRefund(v *bool) *PaymentProviderInstanceUpdate {
  146. if v != nil {
  147. _u.SetAllowUserRefund(*v)
  148. }
  149. return _u
  150. }
  151. // SetUpdatedAt sets the "updated_at" field.
  152. func (_u *PaymentProviderInstanceUpdate) SetUpdatedAt(v time.Time) *PaymentProviderInstanceUpdate {
  153. _u.mutation.SetUpdatedAt(v)
  154. return _u
  155. }
  156. // Mutation returns the PaymentProviderInstanceMutation object of the builder.
  157. func (_u *PaymentProviderInstanceUpdate) Mutation() *PaymentProviderInstanceMutation {
  158. return _u.mutation
  159. }
  160. // Save executes the query and returns the number of nodes affected by the update operation.
  161. func (_u *PaymentProviderInstanceUpdate) Save(ctx context.Context) (int, error) {
  162. _u.defaults()
  163. return withHooks(ctx, _u.sqlSave, _u.mutation, _u.hooks)
  164. }
  165. // SaveX is like Save, but panics if an error occurs.
  166. func (_u *PaymentProviderInstanceUpdate) SaveX(ctx context.Context) int {
  167. affected, err := _u.Save(ctx)
  168. if err != nil {
  169. panic(err)
  170. }
  171. return affected
  172. }
  173. // Exec executes the query.
  174. func (_u *PaymentProviderInstanceUpdate) Exec(ctx context.Context) error {
  175. _, err := _u.Save(ctx)
  176. return err
  177. }
  178. // ExecX is like Exec, but panics if an error occurs.
  179. func (_u *PaymentProviderInstanceUpdate) ExecX(ctx context.Context) {
  180. if err := _u.Exec(ctx); err != nil {
  181. panic(err)
  182. }
  183. }
  184. // defaults sets the default values of the builder before save.
  185. func (_u *PaymentProviderInstanceUpdate) defaults() {
  186. if _, ok := _u.mutation.UpdatedAt(); !ok {
  187. v := paymentproviderinstance.UpdateDefaultUpdatedAt()
  188. _u.mutation.SetUpdatedAt(v)
  189. }
  190. }
  191. // check runs all checks and user-defined validators on the builder.
  192. func (_u *PaymentProviderInstanceUpdate) check() error {
  193. if v, ok := _u.mutation.ProviderKey(); ok {
  194. if err := paymentproviderinstance.ProviderKeyValidator(v); err != nil {
  195. return &ValidationError{Name: "provider_key", err: fmt.Errorf(`ent: validator failed for field "PaymentProviderInstance.provider_key": %w`, err)}
  196. }
  197. }
  198. if v, ok := _u.mutation.Name(); ok {
  199. if err := paymentproviderinstance.NameValidator(v); err != nil {
  200. return &ValidationError{Name: "name", err: fmt.Errorf(`ent: validator failed for field "PaymentProviderInstance.name": %w`, err)}
  201. }
  202. }
  203. if v, ok := _u.mutation.SupportedTypes(); ok {
  204. if err := paymentproviderinstance.SupportedTypesValidator(v); err != nil {
  205. return &ValidationError{Name: "supported_types", err: fmt.Errorf(`ent: validator failed for field "PaymentProviderInstance.supported_types": %w`, err)}
  206. }
  207. }
  208. if v, ok := _u.mutation.PaymentMode(); ok {
  209. if err := paymentproviderinstance.PaymentModeValidator(v); err != nil {
  210. return &ValidationError{Name: "payment_mode", err: fmt.Errorf(`ent: validator failed for field "PaymentProviderInstance.payment_mode": %w`, err)}
  211. }
  212. }
  213. return nil
  214. }
  215. func (_u *PaymentProviderInstanceUpdate) sqlSave(ctx context.Context) (_node int, err error) {
  216. if err := _u.check(); err != nil {
  217. return _node, err
  218. }
  219. _spec := sqlgraph.NewUpdateSpec(paymentproviderinstance.Table, paymentproviderinstance.Columns, sqlgraph.NewFieldSpec(paymentproviderinstance.FieldID, field.TypeInt64))
  220. if ps := _u.mutation.predicates; len(ps) > 0 {
  221. _spec.Predicate = func(selector *sql.Selector) {
  222. for i := range ps {
  223. ps[i](selector)
  224. }
  225. }
  226. }
  227. if value, ok := _u.mutation.ProviderKey(); ok {
  228. _spec.SetField(paymentproviderinstance.FieldProviderKey, field.TypeString, value)
  229. }
  230. if value, ok := _u.mutation.Name(); ok {
  231. _spec.SetField(paymentproviderinstance.FieldName, field.TypeString, value)
  232. }
  233. if value, ok := _u.mutation.Config(); ok {
  234. _spec.SetField(paymentproviderinstance.FieldConfig, field.TypeString, value)
  235. }
  236. if value, ok := _u.mutation.SupportedTypes(); ok {
  237. _spec.SetField(paymentproviderinstance.FieldSupportedTypes, field.TypeString, value)
  238. }
  239. if value, ok := _u.mutation.Enabled(); ok {
  240. _spec.SetField(paymentproviderinstance.FieldEnabled, field.TypeBool, value)
  241. }
  242. if value, ok := _u.mutation.PaymentMode(); ok {
  243. _spec.SetField(paymentproviderinstance.FieldPaymentMode, field.TypeString, value)
  244. }
  245. if value, ok := _u.mutation.SortOrder(); ok {
  246. _spec.SetField(paymentproviderinstance.FieldSortOrder, field.TypeInt, value)
  247. }
  248. if value, ok := _u.mutation.AddedSortOrder(); ok {
  249. _spec.AddField(paymentproviderinstance.FieldSortOrder, field.TypeInt, value)
  250. }
  251. if value, ok := _u.mutation.Limits(); ok {
  252. _spec.SetField(paymentproviderinstance.FieldLimits, field.TypeString, value)
  253. }
  254. if value, ok := _u.mutation.RefundEnabled(); ok {
  255. _spec.SetField(paymentproviderinstance.FieldRefundEnabled, field.TypeBool, value)
  256. }
  257. if value, ok := _u.mutation.AllowUserRefund(); ok {
  258. _spec.SetField(paymentproviderinstance.FieldAllowUserRefund, field.TypeBool, value)
  259. }
  260. if value, ok := _u.mutation.UpdatedAt(); ok {
  261. _spec.SetField(paymentproviderinstance.FieldUpdatedAt, field.TypeTime, value)
  262. }
  263. if _node, err = sqlgraph.UpdateNodes(ctx, _u.driver, _spec); err != nil {
  264. if _, ok := err.(*sqlgraph.NotFoundError); ok {
  265. err = &NotFoundError{paymentproviderinstance.Label}
  266. } else if sqlgraph.IsConstraintError(err) {
  267. err = &ConstraintError{msg: err.Error(), wrap: err}
  268. }
  269. return 0, err
  270. }
  271. _u.mutation.done = true
  272. return _node, nil
  273. }
  274. // PaymentProviderInstanceUpdateOne is the builder for updating a single PaymentProviderInstance entity.
  275. type PaymentProviderInstanceUpdateOne struct {
  276. config
  277. fields []string
  278. hooks []Hook
  279. mutation *PaymentProviderInstanceMutation
  280. }
  281. // SetProviderKey sets the "provider_key" field.
  282. func (_u *PaymentProviderInstanceUpdateOne) SetProviderKey(v string) *PaymentProviderInstanceUpdateOne {
  283. _u.mutation.SetProviderKey(v)
  284. return _u
  285. }
  286. // SetNillableProviderKey sets the "provider_key" field if the given value is not nil.
  287. func (_u *PaymentProviderInstanceUpdateOne) SetNillableProviderKey(v *string) *PaymentProviderInstanceUpdateOne {
  288. if v != nil {
  289. _u.SetProviderKey(*v)
  290. }
  291. return _u
  292. }
  293. // SetName sets the "name" field.
  294. func (_u *PaymentProviderInstanceUpdateOne) SetName(v string) *PaymentProviderInstanceUpdateOne {
  295. _u.mutation.SetName(v)
  296. return _u
  297. }
  298. // SetNillableName sets the "name" field if the given value is not nil.
  299. func (_u *PaymentProviderInstanceUpdateOne) SetNillableName(v *string) *PaymentProviderInstanceUpdateOne {
  300. if v != nil {
  301. _u.SetName(*v)
  302. }
  303. return _u
  304. }
  305. // SetConfig sets the "config" field.
  306. func (_u *PaymentProviderInstanceUpdateOne) SetConfig(v string) *PaymentProviderInstanceUpdateOne {
  307. _u.mutation.SetConfig(v)
  308. return _u
  309. }
  310. // SetNillableConfig sets the "config" field if the given value is not nil.
  311. func (_u *PaymentProviderInstanceUpdateOne) SetNillableConfig(v *string) *PaymentProviderInstanceUpdateOne {
  312. if v != nil {
  313. _u.SetConfig(*v)
  314. }
  315. return _u
  316. }
  317. // SetSupportedTypes sets the "supported_types" field.
  318. func (_u *PaymentProviderInstanceUpdateOne) SetSupportedTypes(v string) *PaymentProviderInstanceUpdateOne {
  319. _u.mutation.SetSupportedTypes(v)
  320. return _u
  321. }
  322. // SetNillableSupportedTypes sets the "supported_types" field if the given value is not nil.
  323. func (_u *PaymentProviderInstanceUpdateOne) SetNillableSupportedTypes(v *string) *PaymentProviderInstanceUpdateOne {
  324. if v != nil {
  325. _u.SetSupportedTypes(*v)
  326. }
  327. return _u
  328. }
  329. // SetEnabled sets the "enabled" field.
  330. func (_u *PaymentProviderInstanceUpdateOne) SetEnabled(v bool) *PaymentProviderInstanceUpdateOne {
  331. _u.mutation.SetEnabled(v)
  332. return _u
  333. }
  334. // SetNillableEnabled sets the "enabled" field if the given value is not nil.
  335. func (_u *PaymentProviderInstanceUpdateOne) SetNillableEnabled(v *bool) *PaymentProviderInstanceUpdateOne {
  336. if v != nil {
  337. _u.SetEnabled(*v)
  338. }
  339. return _u
  340. }
  341. // SetPaymentMode sets the "payment_mode" field.
  342. func (_u *PaymentProviderInstanceUpdateOne) SetPaymentMode(v string) *PaymentProviderInstanceUpdateOne {
  343. _u.mutation.SetPaymentMode(v)
  344. return _u
  345. }
  346. // SetNillablePaymentMode sets the "payment_mode" field if the given value is not nil.
  347. func (_u *PaymentProviderInstanceUpdateOne) SetNillablePaymentMode(v *string) *PaymentProviderInstanceUpdateOne {
  348. if v != nil {
  349. _u.SetPaymentMode(*v)
  350. }
  351. return _u
  352. }
  353. // SetSortOrder sets the "sort_order" field.
  354. func (_u *PaymentProviderInstanceUpdateOne) SetSortOrder(v int) *PaymentProviderInstanceUpdateOne {
  355. _u.mutation.ResetSortOrder()
  356. _u.mutation.SetSortOrder(v)
  357. return _u
  358. }
  359. // SetNillableSortOrder sets the "sort_order" field if the given value is not nil.
  360. func (_u *PaymentProviderInstanceUpdateOne) SetNillableSortOrder(v *int) *PaymentProviderInstanceUpdateOne {
  361. if v != nil {
  362. _u.SetSortOrder(*v)
  363. }
  364. return _u
  365. }
  366. // AddSortOrder adds value to the "sort_order" field.
  367. func (_u *PaymentProviderInstanceUpdateOne) AddSortOrder(v int) *PaymentProviderInstanceUpdateOne {
  368. _u.mutation.AddSortOrder(v)
  369. return _u
  370. }
  371. // SetLimits sets the "limits" field.
  372. func (_u *PaymentProviderInstanceUpdateOne) SetLimits(v string) *PaymentProviderInstanceUpdateOne {
  373. _u.mutation.SetLimits(v)
  374. return _u
  375. }
  376. // SetNillableLimits sets the "limits" field if the given value is not nil.
  377. func (_u *PaymentProviderInstanceUpdateOne) SetNillableLimits(v *string) *PaymentProviderInstanceUpdateOne {
  378. if v != nil {
  379. _u.SetLimits(*v)
  380. }
  381. return _u
  382. }
  383. // SetRefundEnabled sets the "refund_enabled" field.
  384. func (_u *PaymentProviderInstanceUpdateOne) SetRefundEnabled(v bool) *PaymentProviderInstanceUpdateOne {
  385. _u.mutation.SetRefundEnabled(v)
  386. return _u
  387. }
  388. // SetNillableRefundEnabled sets the "refund_enabled" field if the given value is not nil.
  389. func (_u *PaymentProviderInstanceUpdateOne) SetNillableRefundEnabled(v *bool) *PaymentProviderInstanceUpdateOne {
  390. if v != nil {
  391. _u.SetRefundEnabled(*v)
  392. }
  393. return _u
  394. }
  395. // SetAllowUserRefund sets the "allow_user_refund" field.
  396. func (_u *PaymentProviderInstanceUpdateOne) SetAllowUserRefund(v bool) *PaymentProviderInstanceUpdateOne {
  397. _u.mutation.SetAllowUserRefund(v)
  398. return _u
  399. }
  400. // SetNillableAllowUserRefund sets the "allow_user_refund" field if the given value is not nil.
  401. func (_u *PaymentProviderInstanceUpdateOne) SetNillableAllowUserRefund(v *bool) *PaymentProviderInstanceUpdateOne {
  402. if v != nil {
  403. _u.SetAllowUserRefund(*v)
  404. }
  405. return _u
  406. }
  407. // SetUpdatedAt sets the "updated_at" field.
  408. func (_u *PaymentProviderInstanceUpdateOne) SetUpdatedAt(v time.Time) *PaymentProviderInstanceUpdateOne {
  409. _u.mutation.SetUpdatedAt(v)
  410. return _u
  411. }
  412. // Mutation returns the PaymentProviderInstanceMutation object of the builder.
  413. func (_u *PaymentProviderInstanceUpdateOne) Mutation() *PaymentProviderInstanceMutation {
  414. return _u.mutation
  415. }
  416. // Where appends a list predicates to the PaymentProviderInstanceUpdate builder.
  417. func (_u *PaymentProviderInstanceUpdateOne) Where(ps ...predicate.PaymentProviderInstance) *PaymentProviderInstanceUpdateOne {
  418. _u.mutation.Where(ps...)
  419. return _u
  420. }
  421. // Select allows selecting one or more fields (columns) of the returned entity.
  422. // The default is selecting all fields defined in the entity schema.
  423. func (_u *PaymentProviderInstanceUpdateOne) Select(field string, fields ...string) *PaymentProviderInstanceUpdateOne {
  424. _u.fields = append([]string{field}, fields...)
  425. return _u
  426. }
  427. // Save executes the query and returns the updated PaymentProviderInstance entity.
  428. func (_u *PaymentProviderInstanceUpdateOne) Save(ctx context.Context) (*PaymentProviderInstance, error) {
  429. _u.defaults()
  430. return withHooks(ctx, _u.sqlSave, _u.mutation, _u.hooks)
  431. }
  432. // SaveX is like Save, but panics if an error occurs.
  433. func (_u *PaymentProviderInstanceUpdateOne) SaveX(ctx context.Context) *PaymentProviderInstance {
  434. node, err := _u.Save(ctx)
  435. if err != nil {
  436. panic(err)
  437. }
  438. return node
  439. }
  440. // Exec executes the query on the entity.
  441. func (_u *PaymentProviderInstanceUpdateOne) Exec(ctx context.Context) error {
  442. _, err := _u.Save(ctx)
  443. return err
  444. }
  445. // ExecX is like Exec, but panics if an error occurs.
  446. func (_u *PaymentProviderInstanceUpdateOne) ExecX(ctx context.Context) {
  447. if err := _u.Exec(ctx); err != nil {
  448. panic(err)
  449. }
  450. }
  451. // defaults sets the default values of the builder before save.
  452. func (_u *PaymentProviderInstanceUpdateOne) defaults() {
  453. if _, ok := _u.mutation.UpdatedAt(); !ok {
  454. v := paymentproviderinstance.UpdateDefaultUpdatedAt()
  455. _u.mutation.SetUpdatedAt(v)
  456. }
  457. }
  458. // check runs all checks and user-defined validators on the builder.
  459. func (_u *PaymentProviderInstanceUpdateOne) check() error {
  460. if v, ok := _u.mutation.ProviderKey(); ok {
  461. if err := paymentproviderinstance.ProviderKeyValidator(v); err != nil {
  462. return &ValidationError{Name: "provider_key", err: fmt.Errorf(`ent: validator failed for field "PaymentProviderInstance.provider_key": %w`, err)}
  463. }
  464. }
  465. if v, ok := _u.mutation.Name(); ok {
  466. if err := paymentproviderinstance.NameValidator(v); err != nil {
  467. return &ValidationError{Name: "name", err: fmt.Errorf(`ent: validator failed for field "PaymentProviderInstance.name": %w`, err)}
  468. }
  469. }
  470. if v, ok := _u.mutation.SupportedTypes(); ok {
  471. if err := paymentproviderinstance.SupportedTypesValidator(v); err != nil {
  472. return &ValidationError{Name: "supported_types", err: fmt.Errorf(`ent: validator failed for field "PaymentProviderInstance.supported_types": %w`, err)}
  473. }
  474. }
  475. if v, ok := _u.mutation.PaymentMode(); ok {
  476. if err := paymentproviderinstance.PaymentModeValidator(v); err != nil {
  477. return &ValidationError{Name: "payment_mode", err: fmt.Errorf(`ent: validator failed for field "PaymentProviderInstance.payment_mode": %w`, err)}
  478. }
  479. }
  480. return nil
  481. }
  482. func (_u *PaymentProviderInstanceUpdateOne) sqlSave(ctx context.Context) (_node *PaymentProviderInstance, err error) {
  483. if err := _u.check(); err != nil {
  484. return _node, err
  485. }
  486. _spec := sqlgraph.NewUpdateSpec(paymentproviderinstance.Table, paymentproviderinstance.Columns, sqlgraph.NewFieldSpec(paymentproviderinstance.FieldID, field.TypeInt64))
  487. id, ok := _u.mutation.ID()
  488. if !ok {
  489. return nil, &ValidationError{Name: "id", err: errors.New(`ent: missing "PaymentProviderInstance.id" for update`)}
  490. }
  491. _spec.Node.ID.Value = id
  492. if fields := _u.fields; len(fields) > 0 {
  493. _spec.Node.Columns = make([]string, 0, len(fields))
  494. _spec.Node.Columns = append(_spec.Node.Columns, paymentproviderinstance.FieldID)
  495. for _, f := range fields {
  496. if !paymentproviderinstance.ValidColumn(f) {
  497. return nil, &ValidationError{Name: f, err: fmt.Errorf("ent: invalid field %q for query", f)}
  498. }
  499. if f != paymentproviderinstance.FieldID {
  500. _spec.Node.Columns = append(_spec.Node.Columns, f)
  501. }
  502. }
  503. }
  504. if ps := _u.mutation.predicates; len(ps) > 0 {
  505. _spec.Predicate = func(selector *sql.Selector) {
  506. for i := range ps {
  507. ps[i](selector)
  508. }
  509. }
  510. }
  511. if value, ok := _u.mutation.ProviderKey(); ok {
  512. _spec.SetField(paymentproviderinstance.FieldProviderKey, field.TypeString, value)
  513. }
  514. if value, ok := _u.mutation.Name(); ok {
  515. _spec.SetField(paymentproviderinstance.FieldName, field.TypeString, value)
  516. }
  517. if value, ok := _u.mutation.Config(); ok {
  518. _spec.SetField(paymentproviderinstance.FieldConfig, field.TypeString, value)
  519. }
  520. if value, ok := _u.mutation.SupportedTypes(); ok {
  521. _spec.SetField(paymentproviderinstance.FieldSupportedTypes, field.TypeString, value)
  522. }
  523. if value, ok := _u.mutation.Enabled(); ok {
  524. _spec.SetField(paymentproviderinstance.FieldEnabled, field.TypeBool, value)
  525. }
  526. if value, ok := _u.mutation.PaymentMode(); ok {
  527. _spec.SetField(paymentproviderinstance.FieldPaymentMode, field.TypeString, value)
  528. }
  529. if value, ok := _u.mutation.SortOrder(); ok {
  530. _spec.SetField(paymentproviderinstance.FieldSortOrder, field.TypeInt, value)
  531. }
  532. if value, ok := _u.mutation.AddedSortOrder(); ok {
  533. _spec.AddField(paymentproviderinstance.FieldSortOrder, field.TypeInt, value)
  534. }
  535. if value, ok := _u.mutation.Limits(); ok {
  536. _spec.SetField(paymentproviderinstance.FieldLimits, field.TypeString, value)
  537. }
  538. if value, ok := _u.mutation.RefundEnabled(); ok {
  539. _spec.SetField(paymentproviderinstance.FieldRefundEnabled, field.TypeBool, value)
  540. }
  541. if value, ok := _u.mutation.AllowUserRefund(); ok {
  542. _spec.SetField(paymentproviderinstance.FieldAllowUserRefund, field.TypeBool, value)
  543. }
  544. if value, ok := _u.mutation.UpdatedAt(); ok {
  545. _spec.SetField(paymentproviderinstance.FieldUpdatedAt, field.TypeTime, value)
  546. }
  547. _node = &PaymentProviderInstance{config: _u.config}
  548. _spec.Assign = _node.assignValues
  549. _spec.ScanValues = _node.scanValues
  550. if err = sqlgraph.UpdateNode(ctx, _u.driver, _spec); err != nil {
  551. if _, ok := err.(*sqlgraph.NotFoundError); ok {
  552. err = &NotFoundError{paymentproviderinstance.Label}
  553. } else if sqlgraph.IsConstraintError(err) {
  554. err = &ConstraintError{msg: err.Error(), wrap: err}
  555. }
  556. return nil, err
  557. }
  558. _u.mutation.done = true
  559. return _node, nil
  560. }