userattributedefinition_update.go 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846
  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/dialect/sql/sqljson"
  11. "entgo.io/ent/schema/field"
  12. "github.com/Wei-Shaw/sub2api/ent/predicate"
  13. "github.com/Wei-Shaw/sub2api/ent/userattributedefinition"
  14. "github.com/Wei-Shaw/sub2api/ent/userattributevalue"
  15. )
  16. // UserAttributeDefinitionUpdate is the builder for updating UserAttributeDefinition entities.
  17. type UserAttributeDefinitionUpdate struct {
  18. config
  19. hooks []Hook
  20. mutation *UserAttributeDefinitionMutation
  21. }
  22. // Where appends a list predicates to the UserAttributeDefinitionUpdate builder.
  23. func (_u *UserAttributeDefinitionUpdate) Where(ps ...predicate.UserAttributeDefinition) *UserAttributeDefinitionUpdate {
  24. _u.mutation.Where(ps...)
  25. return _u
  26. }
  27. // SetUpdatedAt sets the "updated_at" field.
  28. func (_u *UserAttributeDefinitionUpdate) SetUpdatedAt(v time.Time) *UserAttributeDefinitionUpdate {
  29. _u.mutation.SetUpdatedAt(v)
  30. return _u
  31. }
  32. // SetDeletedAt sets the "deleted_at" field.
  33. func (_u *UserAttributeDefinitionUpdate) SetDeletedAt(v time.Time) *UserAttributeDefinitionUpdate {
  34. _u.mutation.SetDeletedAt(v)
  35. return _u
  36. }
  37. // SetNillableDeletedAt sets the "deleted_at" field if the given value is not nil.
  38. func (_u *UserAttributeDefinitionUpdate) SetNillableDeletedAt(v *time.Time) *UserAttributeDefinitionUpdate {
  39. if v != nil {
  40. _u.SetDeletedAt(*v)
  41. }
  42. return _u
  43. }
  44. // ClearDeletedAt clears the value of the "deleted_at" field.
  45. func (_u *UserAttributeDefinitionUpdate) ClearDeletedAt() *UserAttributeDefinitionUpdate {
  46. _u.mutation.ClearDeletedAt()
  47. return _u
  48. }
  49. // SetKey sets the "key" field.
  50. func (_u *UserAttributeDefinitionUpdate) SetKey(v string) *UserAttributeDefinitionUpdate {
  51. _u.mutation.SetKey(v)
  52. return _u
  53. }
  54. // SetNillableKey sets the "key" field if the given value is not nil.
  55. func (_u *UserAttributeDefinitionUpdate) SetNillableKey(v *string) *UserAttributeDefinitionUpdate {
  56. if v != nil {
  57. _u.SetKey(*v)
  58. }
  59. return _u
  60. }
  61. // SetName sets the "name" field.
  62. func (_u *UserAttributeDefinitionUpdate) SetName(v string) *UserAttributeDefinitionUpdate {
  63. _u.mutation.SetName(v)
  64. return _u
  65. }
  66. // SetNillableName sets the "name" field if the given value is not nil.
  67. func (_u *UserAttributeDefinitionUpdate) SetNillableName(v *string) *UserAttributeDefinitionUpdate {
  68. if v != nil {
  69. _u.SetName(*v)
  70. }
  71. return _u
  72. }
  73. // SetDescription sets the "description" field.
  74. func (_u *UserAttributeDefinitionUpdate) SetDescription(v string) *UserAttributeDefinitionUpdate {
  75. _u.mutation.SetDescription(v)
  76. return _u
  77. }
  78. // SetNillableDescription sets the "description" field if the given value is not nil.
  79. func (_u *UserAttributeDefinitionUpdate) SetNillableDescription(v *string) *UserAttributeDefinitionUpdate {
  80. if v != nil {
  81. _u.SetDescription(*v)
  82. }
  83. return _u
  84. }
  85. // SetType sets the "type" field.
  86. func (_u *UserAttributeDefinitionUpdate) SetType(v string) *UserAttributeDefinitionUpdate {
  87. _u.mutation.SetType(v)
  88. return _u
  89. }
  90. // SetNillableType sets the "type" field if the given value is not nil.
  91. func (_u *UserAttributeDefinitionUpdate) SetNillableType(v *string) *UserAttributeDefinitionUpdate {
  92. if v != nil {
  93. _u.SetType(*v)
  94. }
  95. return _u
  96. }
  97. // SetOptions sets the "options" field.
  98. func (_u *UserAttributeDefinitionUpdate) SetOptions(v []map[string]interface{}) *UserAttributeDefinitionUpdate {
  99. _u.mutation.SetOptions(v)
  100. return _u
  101. }
  102. // AppendOptions appends value to the "options" field.
  103. func (_u *UserAttributeDefinitionUpdate) AppendOptions(v []map[string]interface{}) *UserAttributeDefinitionUpdate {
  104. _u.mutation.AppendOptions(v)
  105. return _u
  106. }
  107. // SetRequired sets the "required" field.
  108. func (_u *UserAttributeDefinitionUpdate) SetRequired(v bool) *UserAttributeDefinitionUpdate {
  109. _u.mutation.SetRequired(v)
  110. return _u
  111. }
  112. // SetNillableRequired sets the "required" field if the given value is not nil.
  113. func (_u *UserAttributeDefinitionUpdate) SetNillableRequired(v *bool) *UserAttributeDefinitionUpdate {
  114. if v != nil {
  115. _u.SetRequired(*v)
  116. }
  117. return _u
  118. }
  119. // SetValidation sets the "validation" field.
  120. func (_u *UserAttributeDefinitionUpdate) SetValidation(v map[string]interface{}) *UserAttributeDefinitionUpdate {
  121. _u.mutation.SetValidation(v)
  122. return _u
  123. }
  124. // SetPlaceholder sets the "placeholder" field.
  125. func (_u *UserAttributeDefinitionUpdate) SetPlaceholder(v string) *UserAttributeDefinitionUpdate {
  126. _u.mutation.SetPlaceholder(v)
  127. return _u
  128. }
  129. // SetNillablePlaceholder sets the "placeholder" field if the given value is not nil.
  130. func (_u *UserAttributeDefinitionUpdate) SetNillablePlaceholder(v *string) *UserAttributeDefinitionUpdate {
  131. if v != nil {
  132. _u.SetPlaceholder(*v)
  133. }
  134. return _u
  135. }
  136. // SetDisplayOrder sets the "display_order" field.
  137. func (_u *UserAttributeDefinitionUpdate) SetDisplayOrder(v int) *UserAttributeDefinitionUpdate {
  138. _u.mutation.ResetDisplayOrder()
  139. _u.mutation.SetDisplayOrder(v)
  140. return _u
  141. }
  142. // SetNillableDisplayOrder sets the "display_order" field if the given value is not nil.
  143. func (_u *UserAttributeDefinitionUpdate) SetNillableDisplayOrder(v *int) *UserAttributeDefinitionUpdate {
  144. if v != nil {
  145. _u.SetDisplayOrder(*v)
  146. }
  147. return _u
  148. }
  149. // AddDisplayOrder adds value to the "display_order" field.
  150. func (_u *UserAttributeDefinitionUpdate) AddDisplayOrder(v int) *UserAttributeDefinitionUpdate {
  151. _u.mutation.AddDisplayOrder(v)
  152. return _u
  153. }
  154. // SetEnabled sets the "enabled" field.
  155. func (_u *UserAttributeDefinitionUpdate) SetEnabled(v bool) *UserAttributeDefinitionUpdate {
  156. _u.mutation.SetEnabled(v)
  157. return _u
  158. }
  159. // SetNillableEnabled sets the "enabled" field if the given value is not nil.
  160. func (_u *UserAttributeDefinitionUpdate) SetNillableEnabled(v *bool) *UserAttributeDefinitionUpdate {
  161. if v != nil {
  162. _u.SetEnabled(*v)
  163. }
  164. return _u
  165. }
  166. // AddValueIDs adds the "values" edge to the UserAttributeValue entity by IDs.
  167. func (_u *UserAttributeDefinitionUpdate) AddValueIDs(ids ...int64) *UserAttributeDefinitionUpdate {
  168. _u.mutation.AddValueIDs(ids...)
  169. return _u
  170. }
  171. // AddValues adds the "values" edges to the UserAttributeValue entity.
  172. func (_u *UserAttributeDefinitionUpdate) AddValues(v ...*UserAttributeValue) *UserAttributeDefinitionUpdate {
  173. ids := make([]int64, len(v))
  174. for i := range v {
  175. ids[i] = v[i].ID
  176. }
  177. return _u.AddValueIDs(ids...)
  178. }
  179. // Mutation returns the UserAttributeDefinitionMutation object of the builder.
  180. func (_u *UserAttributeDefinitionUpdate) Mutation() *UserAttributeDefinitionMutation {
  181. return _u.mutation
  182. }
  183. // ClearValues clears all "values" edges to the UserAttributeValue entity.
  184. func (_u *UserAttributeDefinitionUpdate) ClearValues() *UserAttributeDefinitionUpdate {
  185. _u.mutation.ClearValues()
  186. return _u
  187. }
  188. // RemoveValueIDs removes the "values" edge to UserAttributeValue entities by IDs.
  189. func (_u *UserAttributeDefinitionUpdate) RemoveValueIDs(ids ...int64) *UserAttributeDefinitionUpdate {
  190. _u.mutation.RemoveValueIDs(ids...)
  191. return _u
  192. }
  193. // RemoveValues removes "values" edges to UserAttributeValue entities.
  194. func (_u *UserAttributeDefinitionUpdate) RemoveValues(v ...*UserAttributeValue) *UserAttributeDefinitionUpdate {
  195. ids := make([]int64, len(v))
  196. for i := range v {
  197. ids[i] = v[i].ID
  198. }
  199. return _u.RemoveValueIDs(ids...)
  200. }
  201. // Save executes the query and returns the number of nodes affected by the update operation.
  202. func (_u *UserAttributeDefinitionUpdate) Save(ctx context.Context) (int, error) {
  203. if err := _u.defaults(); err != nil {
  204. return 0, err
  205. }
  206. return withHooks(ctx, _u.sqlSave, _u.mutation, _u.hooks)
  207. }
  208. // SaveX is like Save, but panics if an error occurs.
  209. func (_u *UserAttributeDefinitionUpdate) SaveX(ctx context.Context) int {
  210. affected, err := _u.Save(ctx)
  211. if err != nil {
  212. panic(err)
  213. }
  214. return affected
  215. }
  216. // Exec executes the query.
  217. func (_u *UserAttributeDefinitionUpdate) Exec(ctx context.Context) error {
  218. _, err := _u.Save(ctx)
  219. return err
  220. }
  221. // ExecX is like Exec, but panics if an error occurs.
  222. func (_u *UserAttributeDefinitionUpdate) ExecX(ctx context.Context) {
  223. if err := _u.Exec(ctx); err != nil {
  224. panic(err)
  225. }
  226. }
  227. // defaults sets the default values of the builder before save.
  228. func (_u *UserAttributeDefinitionUpdate) defaults() error {
  229. if _, ok := _u.mutation.UpdatedAt(); !ok {
  230. if userattributedefinition.UpdateDefaultUpdatedAt == nil {
  231. return fmt.Errorf("ent: uninitialized userattributedefinition.UpdateDefaultUpdatedAt (forgotten import ent/runtime?)")
  232. }
  233. v := userattributedefinition.UpdateDefaultUpdatedAt()
  234. _u.mutation.SetUpdatedAt(v)
  235. }
  236. return nil
  237. }
  238. // check runs all checks and user-defined validators on the builder.
  239. func (_u *UserAttributeDefinitionUpdate) check() error {
  240. if v, ok := _u.mutation.Key(); ok {
  241. if err := userattributedefinition.KeyValidator(v); err != nil {
  242. return &ValidationError{Name: "key", err: fmt.Errorf(`ent: validator failed for field "UserAttributeDefinition.key": %w`, err)}
  243. }
  244. }
  245. if v, ok := _u.mutation.Name(); ok {
  246. if err := userattributedefinition.NameValidator(v); err != nil {
  247. return &ValidationError{Name: "name", err: fmt.Errorf(`ent: validator failed for field "UserAttributeDefinition.name": %w`, err)}
  248. }
  249. }
  250. if v, ok := _u.mutation.GetType(); ok {
  251. if err := userattributedefinition.TypeValidator(v); err != nil {
  252. return &ValidationError{Name: "type", err: fmt.Errorf(`ent: validator failed for field "UserAttributeDefinition.type": %w`, err)}
  253. }
  254. }
  255. if v, ok := _u.mutation.Placeholder(); ok {
  256. if err := userattributedefinition.PlaceholderValidator(v); err != nil {
  257. return &ValidationError{Name: "placeholder", err: fmt.Errorf(`ent: validator failed for field "UserAttributeDefinition.placeholder": %w`, err)}
  258. }
  259. }
  260. return nil
  261. }
  262. func (_u *UserAttributeDefinitionUpdate) sqlSave(ctx context.Context) (_node int, err error) {
  263. if err := _u.check(); err != nil {
  264. return _node, err
  265. }
  266. _spec := sqlgraph.NewUpdateSpec(userattributedefinition.Table, userattributedefinition.Columns, sqlgraph.NewFieldSpec(userattributedefinition.FieldID, field.TypeInt64))
  267. if ps := _u.mutation.predicates; len(ps) > 0 {
  268. _spec.Predicate = func(selector *sql.Selector) {
  269. for i := range ps {
  270. ps[i](selector)
  271. }
  272. }
  273. }
  274. if value, ok := _u.mutation.UpdatedAt(); ok {
  275. _spec.SetField(userattributedefinition.FieldUpdatedAt, field.TypeTime, value)
  276. }
  277. if value, ok := _u.mutation.DeletedAt(); ok {
  278. _spec.SetField(userattributedefinition.FieldDeletedAt, field.TypeTime, value)
  279. }
  280. if _u.mutation.DeletedAtCleared() {
  281. _spec.ClearField(userattributedefinition.FieldDeletedAt, field.TypeTime)
  282. }
  283. if value, ok := _u.mutation.Key(); ok {
  284. _spec.SetField(userattributedefinition.FieldKey, field.TypeString, value)
  285. }
  286. if value, ok := _u.mutation.Name(); ok {
  287. _spec.SetField(userattributedefinition.FieldName, field.TypeString, value)
  288. }
  289. if value, ok := _u.mutation.Description(); ok {
  290. _spec.SetField(userattributedefinition.FieldDescription, field.TypeString, value)
  291. }
  292. if value, ok := _u.mutation.GetType(); ok {
  293. _spec.SetField(userattributedefinition.FieldType, field.TypeString, value)
  294. }
  295. if value, ok := _u.mutation.Options(); ok {
  296. _spec.SetField(userattributedefinition.FieldOptions, field.TypeJSON, value)
  297. }
  298. if value, ok := _u.mutation.AppendedOptions(); ok {
  299. _spec.AddModifier(func(u *sql.UpdateBuilder) {
  300. sqljson.Append(u, userattributedefinition.FieldOptions, value)
  301. })
  302. }
  303. if value, ok := _u.mutation.Required(); ok {
  304. _spec.SetField(userattributedefinition.FieldRequired, field.TypeBool, value)
  305. }
  306. if value, ok := _u.mutation.Validation(); ok {
  307. _spec.SetField(userattributedefinition.FieldValidation, field.TypeJSON, value)
  308. }
  309. if value, ok := _u.mutation.Placeholder(); ok {
  310. _spec.SetField(userattributedefinition.FieldPlaceholder, field.TypeString, value)
  311. }
  312. if value, ok := _u.mutation.DisplayOrder(); ok {
  313. _spec.SetField(userattributedefinition.FieldDisplayOrder, field.TypeInt, value)
  314. }
  315. if value, ok := _u.mutation.AddedDisplayOrder(); ok {
  316. _spec.AddField(userattributedefinition.FieldDisplayOrder, field.TypeInt, value)
  317. }
  318. if value, ok := _u.mutation.Enabled(); ok {
  319. _spec.SetField(userattributedefinition.FieldEnabled, field.TypeBool, value)
  320. }
  321. if _u.mutation.ValuesCleared() {
  322. edge := &sqlgraph.EdgeSpec{
  323. Rel: sqlgraph.O2M,
  324. Inverse: false,
  325. Table: userattributedefinition.ValuesTable,
  326. Columns: []string{userattributedefinition.ValuesColumn},
  327. Bidi: false,
  328. Target: &sqlgraph.EdgeTarget{
  329. IDSpec: sqlgraph.NewFieldSpec(userattributevalue.FieldID, field.TypeInt64),
  330. },
  331. }
  332. _spec.Edges.Clear = append(_spec.Edges.Clear, edge)
  333. }
  334. if nodes := _u.mutation.RemovedValuesIDs(); len(nodes) > 0 && !_u.mutation.ValuesCleared() {
  335. edge := &sqlgraph.EdgeSpec{
  336. Rel: sqlgraph.O2M,
  337. Inverse: false,
  338. Table: userattributedefinition.ValuesTable,
  339. Columns: []string{userattributedefinition.ValuesColumn},
  340. Bidi: false,
  341. Target: &sqlgraph.EdgeTarget{
  342. IDSpec: sqlgraph.NewFieldSpec(userattributevalue.FieldID, field.TypeInt64),
  343. },
  344. }
  345. for _, k := range nodes {
  346. edge.Target.Nodes = append(edge.Target.Nodes, k)
  347. }
  348. _spec.Edges.Clear = append(_spec.Edges.Clear, edge)
  349. }
  350. if nodes := _u.mutation.ValuesIDs(); len(nodes) > 0 {
  351. edge := &sqlgraph.EdgeSpec{
  352. Rel: sqlgraph.O2M,
  353. Inverse: false,
  354. Table: userattributedefinition.ValuesTable,
  355. Columns: []string{userattributedefinition.ValuesColumn},
  356. Bidi: false,
  357. Target: &sqlgraph.EdgeTarget{
  358. IDSpec: sqlgraph.NewFieldSpec(userattributevalue.FieldID, field.TypeInt64),
  359. },
  360. }
  361. for _, k := range nodes {
  362. edge.Target.Nodes = append(edge.Target.Nodes, k)
  363. }
  364. _spec.Edges.Add = append(_spec.Edges.Add, edge)
  365. }
  366. if _node, err = sqlgraph.UpdateNodes(ctx, _u.driver, _spec); err != nil {
  367. if _, ok := err.(*sqlgraph.NotFoundError); ok {
  368. err = &NotFoundError{userattributedefinition.Label}
  369. } else if sqlgraph.IsConstraintError(err) {
  370. err = &ConstraintError{msg: err.Error(), wrap: err}
  371. }
  372. return 0, err
  373. }
  374. _u.mutation.done = true
  375. return _node, nil
  376. }
  377. // UserAttributeDefinitionUpdateOne is the builder for updating a single UserAttributeDefinition entity.
  378. type UserAttributeDefinitionUpdateOne struct {
  379. config
  380. fields []string
  381. hooks []Hook
  382. mutation *UserAttributeDefinitionMutation
  383. }
  384. // SetUpdatedAt sets the "updated_at" field.
  385. func (_u *UserAttributeDefinitionUpdateOne) SetUpdatedAt(v time.Time) *UserAttributeDefinitionUpdateOne {
  386. _u.mutation.SetUpdatedAt(v)
  387. return _u
  388. }
  389. // SetDeletedAt sets the "deleted_at" field.
  390. func (_u *UserAttributeDefinitionUpdateOne) SetDeletedAt(v time.Time) *UserAttributeDefinitionUpdateOne {
  391. _u.mutation.SetDeletedAt(v)
  392. return _u
  393. }
  394. // SetNillableDeletedAt sets the "deleted_at" field if the given value is not nil.
  395. func (_u *UserAttributeDefinitionUpdateOne) SetNillableDeletedAt(v *time.Time) *UserAttributeDefinitionUpdateOne {
  396. if v != nil {
  397. _u.SetDeletedAt(*v)
  398. }
  399. return _u
  400. }
  401. // ClearDeletedAt clears the value of the "deleted_at" field.
  402. func (_u *UserAttributeDefinitionUpdateOne) ClearDeletedAt() *UserAttributeDefinitionUpdateOne {
  403. _u.mutation.ClearDeletedAt()
  404. return _u
  405. }
  406. // SetKey sets the "key" field.
  407. func (_u *UserAttributeDefinitionUpdateOne) SetKey(v string) *UserAttributeDefinitionUpdateOne {
  408. _u.mutation.SetKey(v)
  409. return _u
  410. }
  411. // SetNillableKey sets the "key" field if the given value is not nil.
  412. func (_u *UserAttributeDefinitionUpdateOne) SetNillableKey(v *string) *UserAttributeDefinitionUpdateOne {
  413. if v != nil {
  414. _u.SetKey(*v)
  415. }
  416. return _u
  417. }
  418. // SetName sets the "name" field.
  419. func (_u *UserAttributeDefinitionUpdateOne) SetName(v string) *UserAttributeDefinitionUpdateOne {
  420. _u.mutation.SetName(v)
  421. return _u
  422. }
  423. // SetNillableName sets the "name" field if the given value is not nil.
  424. func (_u *UserAttributeDefinitionUpdateOne) SetNillableName(v *string) *UserAttributeDefinitionUpdateOne {
  425. if v != nil {
  426. _u.SetName(*v)
  427. }
  428. return _u
  429. }
  430. // SetDescription sets the "description" field.
  431. func (_u *UserAttributeDefinitionUpdateOne) SetDescription(v string) *UserAttributeDefinitionUpdateOne {
  432. _u.mutation.SetDescription(v)
  433. return _u
  434. }
  435. // SetNillableDescription sets the "description" field if the given value is not nil.
  436. func (_u *UserAttributeDefinitionUpdateOne) SetNillableDescription(v *string) *UserAttributeDefinitionUpdateOne {
  437. if v != nil {
  438. _u.SetDescription(*v)
  439. }
  440. return _u
  441. }
  442. // SetType sets the "type" field.
  443. func (_u *UserAttributeDefinitionUpdateOne) SetType(v string) *UserAttributeDefinitionUpdateOne {
  444. _u.mutation.SetType(v)
  445. return _u
  446. }
  447. // SetNillableType sets the "type" field if the given value is not nil.
  448. func (_u *UserAttributeDefinitionUpdateOne) SetNillableType(v *string) *UserAttributeDefinitionUpdateOne {
  449. if v != nil {
  450. _u.SetType(*v)
  451. }
  452. return _u
  453. }
  454. // SetOptions sets the "options" field.
  455. func (_u *UserAttributeDefinitionUpdateOne) SetOptions(v []map[string]interface{}) *UserAttributeDefinitionUpdateOne {
  456. _u.mutation.SetOptions(v)
  457. return _u
  458. }
  459. // AppendOptions appends value to the "options" field.
  460. func (_u *UserAttributeDefinitionUpdateOne) AppendOptions(v []map[string]interface{}) *UserAttributeDefinitionUpdateOne {
  461. _u.mutation.AppendOptions(v)
  462. return _u
  463. }
  464. // SetRequired sets the "required" field.
  465. func (_u *UserAttributeDefinitionUpdateOne) SetRequired(v bool) *UserAttributeDefinitionUpdateOne {
  466. _u.mutation.SetRequired(v)
  467. return _u
  468. }
  469. // SetNillableRequired sets the "required" field if the given value is not nil.
  470. func (_u *UserAttributeDefinitionUpdateOne) SetNillableRequired(v *bool) *UserAttributeDefinitionUpdateOne {
  471. if v != nil {
  472. _u.SetRequired(*v)
  473. }
  474. return _u
  475. }
  476. // SetValidation sets the "validation" field.
  477. func (_u *UserAttributeDefinitionUpdateOne) SetValidation(v map[string]interface{}) *UserAttributeDefinitionUpdateOne {
  478. _u.mutation.SetValidation(v)
  479. return _u
  480. }
  481. // SetPlaceholder sets the "placeholder" field.
  482. func (_u *UserAttributeDefinitionUpdateOne) SetPlaceholder(v string) *UserAttributeDefinitionUpdateOne {
  483. _u.mutation.SetPlaceholder(v)
  484. return _u
  485. }
  486. // SetNillablePlaceholder sets the "placeholder" field if the given value is not nil.
  487. func (_u *UserAttributeDefinitionUpdateOne) SetNillablePlaceholder(v *string) *UserAttributeDefinitionUpdateOne {
  488. if v != nil {
  489. _u.SetPlaceholder(*v)
  490. }
  491. return _u
  492. }
  493. // SetDisplayOrder sets the "display_order" field.
  494. func (_u *UserAttributeDefinitionUpdateOne) SetDisplayOrder(v int) *UserAttributeDefinitionUpdateOne {
  495. _u.mutation.ResetDisplayOrder()
  496. _u.mutation.SetDisplayOrder(v)
  497. return _u
  498. }
  499. // SetNillableDisplayOrder sets the "display_order" field if the given value is not nil.
  500. func (_u *UserAttributeDefinitionUpdateOne) SetNillableDisplayOrder(v *int) *UserAttributeDefinitionUpdateOne {
  501. if v != nil {
  502. _u.SetDisplayOrder(*v)
  503. }
  504. return _u
  505. }
  506. // AddDisplayOrder adds value to the "display_order" field.
  507. func (_u *UserAttributeDefinitionUpdateOne) AddDisplayOrder(v int) *UserAttributeDefinitionUpdateOne {
  508. _u.mutation.AddDisplayOrder(v)
  509. return _u
  510. }
  511. // SetEnabled sets the "enabled" field.
  512. func (_u *UserAttributeDefinitionUpdateOne) SetEnabled(v bool) *UserAttributeDefinitionUpdateOne {
  513. _u.mutation.SetEnabled(v)
  514. return _u
  515. }
  516. // SetNillableEnabled sets the "enabled" field if the given value is not nil.
  517. func (_u *UserAttributeDefinitionUpdateOne) SetNillableEnabled(v *bool) *UserAttributeDefinitionUpdateOne {
  518. if v != nil {
  519. _u.SetEnabled(*v)
  520. }
  521. return _u
  522. }
  523. // AddValueIDs adds the "values" edge to the UserAttributeValue entity by IDs.
  524. func (_u *UserAttributeDefinitionUpdateOne) AddValueIDs(ids ...int64) *UserAttributeDefinitionUpdateOne {
  525. _u.mutation.AddValueIDs(ids...)
  526. return _u
  527. }
  528. // AddValues adds the "values" edges to the UserAttributeValue entity.
  529. func (_u *UserAttributeDefinitionUpdateOne) AddValues(v ...*UserAttributeValue) *UserAttributeDefinitionUpdateOne {
  530. ids := make([]int64, len(v))
  531. for i := range v {
  532. ids[i] = v[i].ID
  533. }
  534. return _u.AddValueIDs(ids...)
  535. }
  536. // Mutation returns the UserAttributeDefinitionMutation object of the builder.
  537. func (_u *UserAttributeDefinitionUpdateOne) Mutation() *UserAttributeDefinitionMutation {
  538. return _u.mutation
  539. }
  540. // ClearValues clears all "values" edges to the UserAttributeValue entity.
  541. func (_u *UserAttributeDefinitionUpdateOne) ClearValues() *UserAttributeDefinitionUpdateOne {
  542. _u.mutation.ClearValues()
  543. return _u
  544. }
  545. // RemoveValueIDs removes the "values" edge to UserAttributeValue entities by IDs.
  546. func (_u *UserAttributeDefinitionUpdateOne) RemoveValueIDs(ids ...int64) *UserAttributeDefinitionUpdateOne {
  547. _u.mutation.RemoveValueIDs(ids...)
  548. return _u
  549. }
  550. // RemoveValues removes "values" edges to UserAttributeValue entities.
  551. func (_u *UserAttributeDefinitionUpdateOne) RemoveValues(v ...*UserAttributeValue) *UserAttributeDefinitionUpdateOne {
  552. ids := make([]int64, len(v))
  553. for i := range v {
  554. ids[i] = v[i].ID
  555. }
  556. return _u.RemoveValueIDs(ids...)
  557. }
  558. // Where appends a list predicates to the UserAttributeDefinitionUpdate builder.
  559. func (_u *UserAttributeDefinitionUpdateOne) Where(ps ...predicate.UserAttributeDefinition) *UserAttributeDefinitionUpdateOne {
  560. _u.mutation.Where(ps...)
  561. return _u
  562. }
  563. // Select allows selecting one or more fields (columns) of the returned entity.
  564. // The default is selecting all fields defined in the entity schema.
  565. func (_u *UserAttributeDefinitionUpdateOne) Select(field string, fields ...string) *UserAttributeDefinitionUpdateOne {
  566. _u.fields = append([]string{field}, fields...)
  567. return _u
  568. }
  569. // Save executes the query and returns the updated UserAttributeDefinition entity.
  570. func (_u *UserAttributeDefinitionUpdateOne) Save(ctx context.Context) (*UserAttributeDefinition, error) {
  571. if err := _u.defaults(); err != nil {
  572. return nil, err
  573. }
  574. return withHooks(ctx, _u.sqlSave, _u.mutation, _u.hooks)
  575. }
  576. // SaveX is like Save, but panics if an error occurs.
  577. func (_u *UserAttributeDefinitionUpdateOne) SaveX(ctx context.Context) *UserAttributeDefinition {
  578. node, err := _u.Save(ctx)
  579. if err != nil {
  580. panic(err)
  581. }
  582. return node
  583. }
  584. // Exec executes the query on the entity.
  585. func (_u *UserAttributeDefinitionUpdateOne) Exec(ctx context.Context) error {
  586. _, err := _u.Save(ctx)
  587. return err
  588. }
  589. // ExecX is like Exec, but panics if an error occurs.
  590. func (_u *UserAttributeDefinitionUpdateOne) ExecX(ctx context.Context) {
  591. if err := _u.Exec(ctx); err != nil {
  592. panic(err)
  593. }
  594. }
  595. // defaults sets the default values of the builder before save.
  596. func (_u *UserAttributeDefinitionUpdateOne) defaults() error {
  597. if _, ok := _u.mutation.UpdatedAt(); !ok {
  598. if userattributedefinition.UpdateDefaultUpdatedAt == nil {
  599. return fmt.Errorf("ent: uninitialized userattributedefinition.UpdateDefaultUpdatedAt (forgotten import ent/runtime?)")
  600. }
  601. v := userattributedefinition.UpdateDefaultUpdatedAt()
  602. _u.mutation.SetUpdatedAt(v)
  603. }
  604. return nil
  605. }
  606. // check runs all checks and user-defined validators on the builder.
  607. func (_u *UserAttributeDefinitionUpdateOne) check() error {
  608. if v, ok := _u.mutation.Key(); ok {
  609. if err := userattributedefinition.KeyValidator(v); err != nil {
  610. return &ValidationError{Name: "key", err: fmt.Errorf(`ent: validator failed for field "UserAttributeDefinition.key": %w`, err)}
  611. }
  612. }
  613. if v, ok := _u.mutation.Name(); ok {
  614. if err := userattributedefinition.NameValidator(v); err != nil {
  615. return &ValidationError{Name: "name", err: fmt.Errorf(`ent: validator failed for field "UserAttributeDefinition.name": %w`, err)}
  616. }
  617. }
  618. if v, ok := _u.mutation.GetType(); ok {
  619. if err := userattributedefinition.TypeValidator(v); err != nil {
  620. return &ValidationError{Name: "type", err: fmt.Errorf(`ent: validator failed for field "UserAttributeDefinition.type": %w`, err)}
  621. }
  622. }
  623. if v, ok := _u.mutation.Placeholder(); ok {
  624. if err := userattributedefinition.PlaceholderValidator(v); err != nil {
  625. return &ValidationError{Name: "placeholder", err: fmt.Errorf(`ent: validator failed for field "UserAttributeDefinition.placeholder": %w`, err)}
  626. }
  627. }
  628. return nil
  629. }
  630. func (_u *UserAttributeDefinitionUpdateOne) sqlSave(ctx context.Context) (_node *UserAttributeDefinition, err error) {
  631. if err := _u.check(); err != nil {
  632. return _node, err
  633. }
  634. _spec := sqlgraph.NewUpdateSpec(userattributedefinition.Table, userattributedefinition.Columns, sqlgraph.NewFieldSpec(userattributedefinition.FieldID, field.TypeInt64))
  635. id, ok := _u.mutation.ID()
  636. if !ok {
  637. return nil, &ValidationError{Name: "id", err: errors.New(`ent: missing "UserAttributeDefinition.id" for update`)}
  638. }
  639. _spec.Node.ID.Value = id
  640. if fields := _u.fields; len(fields) > 0 {
  641. _spec.Node.Columns = make([]string, 0, len(fields))
  642. _spec.Node.Columns = append(_spec.Node.Columns, userattributedefinition.FieldID)
  643. for _, f := range fields {
  644. if !userattributedefinition.ValidColumn(f) {
  645. return nil, &ValidationError{Name: f, err: fmt.Errorf("ent: invalid field %q for query", f)}
  646. }
  647. if f != userattributedefinition.FieldID {
  648. _spec.Node.Columns = append(_spec.Node.Columns, f)
  649. }
  650. }
  651. }
  652. if ps := _u.mutation.predicates; len(ps) > 0 {
  653. _spec.Predicate = func(selector *sql.Selector) {
  654. for i := range ps {
  655. ps[i](selector)
  656. }
  657. }
  658. }
  659. if value, ok := _u.mutation.UpdatedAt(); ok {
  660. _spec.SetField(userattributedefinition.FieldUpdatedAt, field.TypeTime, value)
  661. }
  662. if value, ok := _u.mutation.DeletedAt(); ok {
  663. _spec.SetField(userattributedefinition.FieldDeletedAt, field.TypeTime, value)
  664. }
  665. if _u.mutation.DeletedAtCleared() {
  666. _spec.ClearField(userattributedefinition.FieldDeletedAt, field.TypeTime)
  667. }
  668. if value, ok := _u.mutation.Key(); ok {
  669. _spec.SetField(userattributedefinition.FieldKey, field.TypeString, value)
  670. }
  671. if value, ok := _u.mutation.Name(); ok {
  672. _spec.SetField(userattributedefinition.FieldName, field.TypeString, value)
  673. }
  674. if value, ok := _u.mutation.Description(); ok {
  675. _spec.SetField(userattributedefinition.FieldDescription, field.TypeString, value)
  676. }
  677. if value, ok := _u.mutation.GetType(); ok {
  678. _spec.SetField(userattributedefinition.FieldType, field.TypeString, value)
  679. }
  680. if value, ok := _u.mutation.Options(); ok {
  681. _spec.SetField(userattributedefinition.FieldOptions, field.TypeJSON, value)
  682. }
  683. if value, ok := _u.mutation.AppendedOptions(); ok {
  684. _spec.AddModifier(func(u *sql.UpdateBuilder) {
  685. sqljson.Append(u, userattributedefinition.FieldOptions, value)
  686. })
  687. }
  688. if value, ok := _u.mutation.Required(); ok {
  689. _spec.SetField(userattributedefinition.FieldRequired, field.TypeBool, value)
  690. }
  691. if value, ok := _u.mutation.Validation(); ok {
  692. _spec.SetField(userattributedefinition.FieldValidation, field.TypeJSON, value)
  693. }
  694. if value, ok := _u.mutation.Placeholder(); ok {
  695. _spec.SetField(userattributedefinition.FieldPlaceholder, field.TypeString, value)
  696. }
  697. if value, ok := _u.mutation.DisplayOrder(); ok {
  698. _spec.SetField(userattributedefinition.FieldDisplayOrder, field.TypeInt, value)
  699. }
  700. if value, ok := _u.mutation.AddedDisplayOrder(); ok {
  701. _spec.AddField(userattributedefinition.FieldDisplayOrder, field.TypeInt, value)
  702. }
  703. if value, ok := _u.mutation.Enabled(); ok {
  704. _spec.SetField(userattributedefinition.FieldEnabled, field.TypeBool, value)
  705. }
  706. if _u.mutation.ValuesCleared() {
  707. edge := &sqlgraph.EdgeSpec{
  708. Rel: sqlgraph.O2M,
  709. Inverse: false,
  710. Table: userattributedefinition.ValuesTable,
  711. Columns: []string{userattributedefinition.ValuesColumn},
  712. Bidi: false,
  713. Target: &sqlgraph.EdgeTarget{
  714. IDSpec: sqlgraph.NewFieldSpec(userattributevalue.FieldID, field.TypeInt64),
  715. },
  716. }
  717. _spec.Edges.Clear = append(_spec.Edges.Clear, edge)
  718. }
  719. if nodes := _u.mutation.RemovedValuesIDs(); len(nodes) > 0 && !_u.mutation.ValuesCleared() {
  720. edge := &sqlgraph.EdgeSpec{
  721. Rel: sqlgraph.O2M,
  722. Inverse: false,
  723. Table: userattributedefinition.ValuesTable,
  724. Columns: []string{userattributedefinition.ValuesColumn},
  725. Bidi: false,
  726. Target: &sqlgraph.EdgeTarget{
  727. IDSpec: sqlgraph.NewFieldSpec(userattributevalue.FieldID, field.TypeInt64),
  728. },
  729. }
  730. for _, k := range nodes {
  731. edge.Target.Nodes = append(edge.Target.Nodes, k)
  732. }
  733. _spec.Edges.Clear = append(_spec.Edges.Clear, edge)
  734. }
  735. if nodes := _u.mutation.ValuesIDs(); len(nodes) > 0 {
  736. edge := &sqlgraph.EdgeSpec{
  737. Rel: sqlgraph.O2M,
  738. Inverse: false,
  739. Table: userattributedefinition.ValuesTable,
  740. Columns: []string{userattributedefinition.ValuesColumn},
  741. Bidi: false,
  742. Target: &sqlgraph.EdgeTarget{
  743. IDSpec: sqlgraph.NewFieldSpec(userattributevalue.FieldID, field.TypeInt64),
  744. },
  745. }
  746. for _, k := range nodes {
  747. edge.Target.Nodes = append(edge.Target.Nodes, k)
  748. }
  749. _spec.Edges.Add = append(_spec.Edges.Add, edge)
  750. }
  751. _node = &UserAttributeDefinition{config: _u.config}
  752. _spec.Assign = _node.assignValues
  753. _spec.ScanValues = _node.scanValues
  754. if err = sqlgraph.UpdateNode(ctx, _u.driver, _spec); err != nil {
  755. if _, ok := err.(*sqlgraph.NotFoundError); ok {
  756. err = &NotFoundError{userattributedefinition.Label}
  757. } else if sqlgraph.IsConstraintError(err) {
  758. err = &ConstraintError{msg: err.Error(), wrap: err}
  759. }
  760. return nil, err
  761. }
  762. _u.mutation.done = true
  763. return _node, nil
  764. }