creditusage_update.go 32 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060
  1. // Code generated by ent, DO NOT EDIT.
  2. package ent
  3. import (
  4. "context"
  5. "errors"
  6. "fmt"
  7. "time"
  8. "wechat-api/ent/creditusage"
  9. "wechat-api/ent/predicate"
  10. "entgo.io/ent/dialect/sql"
  11. "entgo.io/ent/dialect/sql/sqlgraph"
  12. "entgo.io/ent/schema/field"
  13. )
  14. // CreditUsageUpdate is the builder for updating CreditUsage entities.
  15. type CreditUsageUpdate struct {
  16. config
  17. hooks []Hook
  18. mutation *CreditUsageMutation
  19. }
  20. // Where appends a list predicates to the CreditUsageUpdate builder.
  21. func (cuu *CreditUsageUpdate) Where(ps ...predicate.CreditUsage) *CreditUsageUpdate {
  22. cuu.mutation.Where(ps...)
  23. return cuu
  24. }
  25. // SetUpdatedAt sets the "updated_at" field.
  26. func (cuu *CreditUsageUpdate) SetUpdatedAt(t time.Time) *CreditUsageUpdate {
  27. cuu.mutation.SetUpdatedAt(t)
  28. return cuu
  29. }
  30. // SetDeletedAt sets the "deleted_at" field.
  31. func (cuu *CreditUsageUpdate) SetDeletedAt(t time.Time) *CreditUsageUpdate {
  32. cuu.mutation.SetDeletedAt(t)
  33. return cuu
  34. }
  35. // SetNillableDeletedAt sets the "deleted_at" field if the given value is not nil.
  36. func (cuu *CreditUsageUpdate) SetNillableDeletedAt(t *time.Time) *CreditUsageUpdate {
  37. if t != nil {
  38. cuu.SetDeletedAt(*t)
  39. }
  40. return cuu
  41. }
  42. // ClearDeletedAt clears the value of the "deleted_at" field.
  43. func (cuu *CreditUsageUpdate) ClearDeletedAt() *CreditUsageUpdate {
  44. cuu.mutation.ClearDeletedAt()
  45. return cuu
  46. }
  47. // SetUserID sets the "user_id" field.
  48. func (cuu *CreditUsageUpdate) SetUserID(s string) *CreditUsageUpdate {
  49. cuu.mutation.SetUserID(s)
  50. return cuu
  51. }
  52. // SetNillableUserID sets the "user_id" field if the given value is not nil.
  53. func (cuu *CreditUsageUpdate) SetNillableUserID(s *string) *CreditUsageUpdate {
  54. if s != nil {
  55. cuu.SetUserID(*s)
  56. }
  57. return cuu
  58. }
  59. // ClearUserID clears the value of the "user_id" field.
  60. func (cuu *CreditUsageUpdate) ClearUserID() *CreditUsageUpdate {
  61. cuu.mutation.ClearUserID()
  62. return cuu
  63. }
  64. // SetNumber sets the "number" field.
  65. func (cuu *CreditUsageUpdate) SetNumber(f float64) *CreditUsageUpdate {
  66. cuu.mutation.ResetNumber()
  67. cuu.mutation.SetNumber(f)
  68. return cuu
  69. }
  70. // SetNillableNumber sets the "number" field if the given value is not nil.
  71. func (cuu *CreditUsageUpdate) SetNillableNumber(f *float64) *CreditUsageUpdate {
  72. if f != nil {
  73. cuu.SetNumber(*f)
  74. }
  75. return cuu
  76. }
  77. // AddNumber adds f to the "number" field.
  78. func (cuu *CreditUsageUpdate) AddNumber(f float64) *CreditUsageUpdate {
  79. cuu.mutation.AddNumber(f)
  80. return cuu
  81. }
  82. // SetPayNumber sets the "pay_number" field.
  83. func (cuu *CreditUsageUpdate) SetPayNumber(f float64) *CreditUsageUpdate {
  84. cuu.mutation.ResetPayNumber()
  85. cuu.mutation.SetPayNumber(f)
  86. return cuu
  87. }
  88. // SetNillablePayNumber sets the "pay_number" field if the given value is not nil.
  89. func (cuu *CreditUsageUpdate) SetNillablePayNumber(f *float64) *CreditUsageUpdate {
  90. if f != nil {
  91. cuu.SetPayNumber(*f)
  92. }
  93. return cuu
  94. }
  95. // AddPayNumber adds f to the "pay_number" field.
  96. func (cuu *CreditUsageUpdate) AddPayNumber(f float64) *CreditUsageUpdate {
  97. cuu.mutation.AddPayNumber(f)
  98. return cuu
  99. }
  100. // ClearPayNumber clears the value of the "pay_number" field.
  101. func (cuu *CreditUsageUpdate) ClearPayNumber() *CreditUsageUpdate {
  102. cuu.mutation.ClearPayNumber()
  103. return cuu
  104. }
  105. // SetBeforeNumber sets the "before_number" field.
  106. func (cuu *CreditUsageUpdate) SetBeforeNumber(f float64) *CreditUsageUpdate {
  107. cuu.mutation.ResetBeforeNumber()
  108. cuu.mutation.SetBeforeNumber(f)
  109. return cuu
  110. }
  111. // SetNillableBeforeNumber sets the "before_number" field if the given value is not nil.
  112. func (cuu *CreditUsageUpdate) SetNillableBeforeNumber(f *float64) *CreditUsageUpdate {
  113. if f != nil {
  114. cuu.SetBeforeNumber(*f)
  115. }
  116. return cuu
  117. }
  118. // AddBeforeNumber adds f to the "before_number" field.
  119. func (cuu *CreditUsageUpdate) AddBeforeNumber(f float64) *CreditUsageUpdate {
  120. cuu.mutation.AddBeforeNumber(f)
  121. return cuu
  122. }
  123. // ClearBeforeNumber clears the value of the "before_number" field.
  124. func (cuu *CreditUsageUpdate) ClearBeforeNumber() *CreditUsageUpdate {
  125. cuu.mutation.ClearBeforeNumber()
  126. return cuu
  127. }
  128. // SetAfterNumber sets the "after_number" field.
  129. func (cuu *CreditUsageUpdate) SetAfterNumber(f float64) *CreditUsageUpdate {
  130. cuu.mutation.ResetAfterNumber()
  131. cuu.mutation.SetAfterNumber(f)
  132. return cuu
  133. }
  134. // SetNillableAfterNumber sets the "after_number" field if the given value is not nil.
  135. func (cuu *CreditUsageUpdate) SetNillableAfterNumber(f *float64) *CreditUsageUpdate {
  136. if f != nil {
  137. cuu.SetAfterNumber(*f)
  138. }
  139. return cuu
  140. }
  141. // AddAfterNumber adds f to the "after_number" field.
  142. func (cuu *CreditUsageUpdate) AddAfterNumber(f float64) *CreditUsageUpdate {
  143. cuu.mutation.AddAfterNumber(f)
  144. return cuu
  145. }
  146. // ClearAfterNumber clears the value of the "after_number" field.
  147. func (cuu *CreditUsageUpdate) ClearAfterNumber() *CreditUsageUpdate {
  148. cuu.mutation.ClearAfterNumber()
  149. return cuu
  150. }
  151. // SetPayMethod sets the "pay_method" field.
  152. func (cuu *CreditUsageUpdate) SetPayMethod(s string) *CreditUsageUpdate {
  153. cuu.mutation.SetPayMethod(s)
  154. return cuu
  155. }
  156. // SetNillablePayMethod sets the "pay_method" field if the given value is not nil.
  157. func (cuu *CreditUsageUpdate) SetNillablePayMethod(s *string) *CreditUsageUpdate {
  158. if s != nil {
  159. cuu.SetPayMethod(*s)
  160. }
  161. return cuu
  162. }
  163. // ClearPayMethod clears the value of the "pay_method" field.
  164. func (cuu *CreditUsageUpdate) ClearPayMethod() *CreditUsageUpdate {
  165. cuu.mutation.ClearPayMethod()
  166. return cuu
  167. }
  168. // SetStatus sets the "status" field.
  169. func (cuu *CreditUsageUpdate) SetStatus(i int) *CreditUsageUpdate {
  170. cuu.mutation.ResetStatus()
  171. cuu.mutation.SetStatus(i)
  172. return cuu
  173. }
  174. // SetNillableStatus sets the "status" field if the given value is not nil.
  175. func (cuu *CreditUsageUpdate) SetNillableStatus(i *int) *CreditUsageUpdate {
  176. if i != nil {
  177. cuu.SetStatus(*i)
  178. }
  179. return cuu
  180. }
  181. // AddStatus adds i to the "status" field.
  182. func (cuu *CreditUsageUpdate) AddStatus(i int) *CreditUsageUpdate {
  183. cuu.mutation.AddStatus(i)
  184. return cuu
  185. }
  186. // ClearStatus clears the value of the "status" field.
  187. func (cuu *CreditUsageUpdate) ClearStatus() *CreditUsageUpdate {
  188. cuu.mutation.ClearStatus()
  189. return cuu
  190. }
  191. // SetNtype sets the "ntype" field.
  192. func (cuu *CreditUsageUpdate) SetNtype(i int) *CreditUsageUpdate {
  193. cuu.mutation.ResetNtype()
  194. cuu.mutation.SetNtype(i)
  195. return cuu
  196. }
  197. // SetNillableNtype sets the "ntype" field if the given value is not nil.
  198. func (cuu *CreditUsageUpdate) SetNillableNtype(i *int) *CreditUsageUpdate {
  199. if i != nil {
  200. cuu.SetNtype(*i)
  201. }
  202. return cuu
  203. }
  204. // AddNtype adds i to the "ntype" field.
  205. func (cuu *CreditUsageUpdate) AddNtype(i int) *CreditUsageUpdate {
  206. cuu.mutation.AddNtype(i)
  207. return cuu
  208. }
  209. // SetTable sets the "table" field.
  210. func (cuu *CreditUsageUpdate) SetTable(s string) *CreditUsageUpdate {
  211. cuu.mutation.SetTable(s)
  212. return cuu
  213. }
  214. // SetNillableTable sets the "table" field if the given value is not nil.
  215. func (cuu *CreditUsageUpdate) SetNillableTable(s *string) *CreditUsageUpdate {
  216. if s != nil {
  217. cuu.SetTable(*s)
  218. }
  219. return cuu
  220. }
  221. // SetOrganizationID sets the "organization_id" field.
  222. func (cuu *CreditUsageUpdate) SetOrganizationID(u uint64) *CreditUsageUpdate {
  223. cuu.mutation.ResetOrganizationID()
  224. cuu.mutation.SetOrganizationID(u)
  225. return cuu
  226. }
  227. // SetNillableOrganizationID sets the "organization_id" field if the given value is not nil.
  228. func (cuu *CreditUsageUpdate) SetNillableOrganizationID(u *uint64) *CreditUsageUpdate {
  229. if u != nil {
  230. cuu.SetOrganizationID(*u)
  231. }
  232. return cuu
  233. }
  234. // AddOrganizationID adds u to the "organization_id" field.
  235. func (cuu *CreditUsageUpdate) AddOrganizationID(u int64) *CreditUsageUpdate {
  236. cuu.mutation.AddOrganizationID(u)
  237. return cuu
  238. }
  239. // ClearOrganizationID clears the value of the "organization_id" field.
  240. func (cuu *CreditUsageUpdate) ClearOrganizationID() *CreditUsageUpdate {
  241. cuu.mutation.ClearOrganizationID()
  242. return cuu
  243. }
  244. // SetNid sets the "nid" field.
  245. func (cuu *CreditUsageUpdate) SetNid(u uint64) *CreditUsageUpdate {
  246. cuu.mutation.ResetNid()
  247. cuu.mutation.SetNid(u)
  248. return cuu
  249. }
  250. // SetNillableNid sets the "nid" field if the given value is not nil.
  251. func (cuu *CreditUsageUpdate) SetNillableNid(u *uint64) *CreditUsageUpdate {
  252. if u != nil {
  253. cuu.SetNid(*u)
  254. }
  255. return cuu
  256. }
  257. // AddNid adds u to the "nid" field.
  258. func (cuu *CreditUsageUpdate) AddNid(u int64) *CreditUsageUpdate {
  259. cuu.mutation.AddNid(u)
  260. return cuu
  261. }
  262. // SetReason sets the "reason" field.
  263. func (cuu *CreditUsageUpdate) SetReason(s string) *CreditUsageUpdate {
  264. cuu.mutation.SetReason(s)
  265. return cuu
  266. }
  267. // SetNillableReason sets the "reason" field if the given value is not nil.
  268. func (cuu *CreditUsageUpdate) SetNillableReason(s *string) *CreditUsageUpdate {
  269. if s != nil {
  270. cuu.SetReason(*s)
  271. }
  272. return cuu
  273. }
  274. // SetOperator sets the "operator" field.
  275. func (cuu *CreditUsageUpdate) SetOperator(s string) *CreditUsageUpdate {
  276. cuu.mutation.SetOperator(s)
  277. return cuu
  278. }
  279. // SetNillableOperator sets the "operator" field if the given value is not nil.
  280. func (cuu *CreditUsageUpdate) SetNillableOperator(s *string) *CreditUsageUpdate {
  281. if s != nil {
  282. cuu.SetOperator(*s)
  283. }
  284. return cuu
  285. }
  286. // Mutation returns the CreditUsageMutation object of the builder.
  287. func (cuu *CreditUsageUpdate) Mutation() *CreditUsageMutation {
  288. return cuu.mutation
  289. }
  290. // Save executes the query and returns the number of nodes affected by the update operation.
  291. func (cuu *CreditUsageUpdate) Save(ctx context.Context) (int, error) {
  292. if err := cuu.defaults(); err != nil {
  293. return 0, err
  294. }
  295. return withHooks(ctx, cuu.sqlSave, cuu.mutation, cuu.hooks)
  296. }
  297. // SaveX is like Save, but panics if an error occurs.
  298. func (cuu *CreditUsageUpdate) SaveX(ctx context.Context) int {
  299. affected, err := cuu.Save(ctx)
  300. if err != nil {
  301. panic(err)
  302. }
  303. return affected
  304. }
  305. // Exec executes the query.
  306. func (cuu *CreditUsageUpdate) Exec(ctx context.Context) error {
  307. _, err := cuu.Save(ctx)
  308. return err
  309. }
  310. // ExecX is like Exec, but panics if an error occurs.
  311. func (cuu *CreditUsageUpdate) ExecX(ctx context.Context) {
  312. if err := cuu.Exec(ctx); err != nil {
  313. panic(err)
  314. }
  315. }
  316. // defaults sets the default values of the builder before save.
  317. func (cuu *CreditUsageUpdate) defaults() error {
  318. if _, ok := cuu.mutation.UpdatedAt(); !ok {
  319. if creditusage.UpdateDefaultUpdatedAt == nil {
  320. return fmt.Errorf("ent: uninitialized creditusage.UpdateDefaultUpdatedAt (forgotten import ent/runtime?)")
  321. }
  322. v := creditusage.UpdateDefaultUpdatedAt()
  323. cuu.mutation.SetUpdatedAt(v)
  324. }
  325. return nil
  326. }
  327. // check runs all checks and user-defined validators on the builder.
  328. func (cuu *CreditUsageUpdate) check() error {
  329. if v, ok := cuu.mutation.UserID(); ok {
  330. if err := creditusage.UserIDValidator(v); err != nil {
  331. return &ValidationError{Name: "user_id", err: fmt.Errorf(`ent: validator failed for field "CreditUsage.user_id": %w`, err)}
  332. }
  333. }
  334. if v, ok := cuu.mutation.Status(); ok {
  335. if err := creditusage.StatusValidator(v); err != nil {
  336. return &ValidationError{Name: "status", err: fmt.Errorf(`ent: validator failed for field "CreditUsage.status": %w`, err)}
  337. }
  338. }
  339. if v, ok := cuu.mutation.Reason(); ok {
  340. if err := creditusage.ReasonValidator(v); err != nil {
  341. return &ValidationError{Name: "reason", err: fmt.Errorf(`ent: validator failed for field "CreditUsage.reason": %w`, err)}
  342. }
  343. }
  344. if v, ok := cuu.mutation.Operator(); ok {
  345. if err := creditusage.OperatorValidator(v); err != nil {
  346. return &ValidationError{Name: "operator", err: fmt.Errorf(`ent: validator failed for field "CreditUsage.operator": %w`, err)}
  347. }
  348. }
  349. return nil
  350. }
  351. func (cuu *CreditUsageUpdate) sqlSave(ctx context.Context) (n int, err error) {
  352. if err := cuu.check(); err != nil {
  353. return n, err
  354. }
  355. _spec := sqlgraph.NewUpdateSpec(creditusage.Table, creditusage.Columns, sqlgraph.NewFieldSpec(creditusage.FieldID, field.TypeUint64))
  356. if ps := cuu.mutation.predicates; len(ps) > 0 {
  357. _spec.Predicate = func(selector *sql.Selector) {
  358. for i := range ps {
  359. ps[i](selector)
  360. }
  361. }
  362. }
  363. if value, ok := cuu.mutation.UpdatedAt(); ok {
  364. _spec.SetField(creditusage.FieldUpdatedAt, field.TypeTime, value)
  365. }
  366. if value, ok := cuu.mutation.DeletedAt(); ok {
  367. _spec.SetField(creditusage.FieldDeletedAt, field.TypeTime, value)
  368. }
  369. if cuu.mutation.DeletedAtCleared() {
  370. _spec.ClearField(creditusage.FieldDeletedAt, field.TypeTime)
  371. }
  372. if value, ok := cuu.mutation.UserID(); ok {
  373. _spec.SetField(creditusage.FieldUserID, field.TypeString, value)
  374. }
  375. if cuu.mutation.UserIDCleared() {
  376. _spec.ClearField(creditusage.FieldUserID, field.TypeString)
  377. }
  378. if value, ok := cuu.mutation.Number(); ok {
  379. _spec.SetField(creditusage.FieldNumber, field.TypeFloat64, value)
  380. }
  381. if value, ok := cuu.mutation.AddedNumber(); ok {
  382. _spec.AddField(creditusage.FieldNumber, field.TypeFloat64, value)
  383. }
  384. if value, ok := cuu.mutation.PayNumber(); ok {
  385. _spec.SetField(creditusage.FieldPayNumber, field.TypeFloat64, value)
  386. }
  387. if value, ok := cuu.mutation.AddedPayNumber(); ok {
  388. _spec.AddField(creditusage.FieldPayNumber, field.TypeFloat64, value)
  389. }
  390. if cuu.mutation.PayNumberCleared() {
  391. _spec.ClearField(creditusage.FieldPayNumber, field.TypeFloat64)
  392. }
  393. if value, ok := cuu.mutation.BeforeNumber(); ok {
  394. _spec.SetField(creditusage.FieldBeforeNumber, field.TypeFloat64, value)
  395. }
  396. if value, ok := cuu.mutation.AddedBeforeNumber(); ok {
  397. _spec.AddField(creditusage.FieldBeforeNumber, field.TypeFloat64, value)
  398. }
  399. if cuu.mutation.BeforeNumberCleared() {
  400. _spec.ClearField(creditusage.FieldBeforeNumber, field.TypeFloat64)
  401. }
  402. if value, ok := cuu.mutation.AfterNumber(); ok {
  403. _spec.SetField(creditusage.FieldAfterNumber, field.TypeFloat64, value)
  404. }
  405. if value, ok := cuu.mutation.AddedAfterNumber(); ok {
  406. _spec.AddField(creditusage.FieldAfterNumber, field.TypeFloat64, value)
  407. }
  408. if cuu.mutation.AfterNumberCleared() {
  409. _spec.ClearField(creditusage.FieldAfterNumber, field.TypeFloat64)
  410. }
  411. if value, ok := cuu.mutation.PayMethod(); ok {
  412. _spec.SetField(creditusage.FieldPayMethod, field.TypeString, value)
  413. }
  414. if cuu.mutation.PayMethodCleared() {
  415. _spec.ClearField(creditusage.FieldPayMethod, field.TypeString)
  416. }
  417. if value, ok := cuu.mutation.Status(); ok {
  418. _spec.SetField(creditusage.FieldStatus, field.TypeInt, value)
  419. }
  420. if value, ok := cuu.mutation.AddedStatus(); ok {
  421. _spec.AddField(creditusage.FieldStatus, field.TypeInt, value)
  422. }
  423. if cuu.mutation.StatusCleared() {
  424. _spec.ClearField(creditusage.FieldStatus, field.TypeInt)
  425. }
  426. if value, ok := cuu.mutation.Ntype(); ok {
  427. _spec.SetField(creditusage.FieldNtype, field.TypeInt, value)
  428. }
  429. if value, ok := cuu.mutation.AddedNtype(); ok {
  430. _spec.AddField(creditusage.FieldNtype, field.TypeInt, value)
  431. }
  432. if value, ok := cuu.mutation.Table(); ok {
  433. _spec.SetField(creditusage.FieldTable, field.TypeString, value)
  434. }
  435. if value, ok := cuu.mutation.OrganizationID(); ok {
  436. _spec.SetField(creditusage.FieldOrganizationID, field.TypeUint64, value)
  437. }
  438. if value, ok := cuu.mutation.AddedOrganizationID(); ok {
  439. _spec.AddField(creditusage.FieldOrganizationID, field.TypeUint64, value)
  440. }
  441. if cuu.mutation.OrganizationIDCleared() {
  442. _spec.ClearField(creditusage.FieldOrganizationID, field.TypeUint64)
  443. }
  444. if value, ok := cuu.mutation.Nid(); ok {
  445. _spec.SetField(creditusage.FieldNid, field.TypeUint64, value)
  446. }
  447. if value, ok := cuu.mutation.AddedNid(); ok {
  448. _spec.AddField(creditusage.FieldNid, field.TypeUint64, value)
  449. }
  450. if value, ok := cuu.mutation.Reason(); ok {
  451. _spec.SetField(creditusage.FieldReason, field.TypeString, value)
  452. }
  453. if value, ok := cuu.mutation.Operator(); ok {
  454. _spec.SetField(creditusage.FieldOperator, field.TypeString, value)
  455. }
  456. if n, err = sqlgraph.UpdateNodes(ctx, cuu.driver, _spec); err != nil {
  457. if _, ok := err.(*sqlgraph.NotFoundError); ok {
  458. err = &NotFoundError{creditusage.Label}
  459. } else if sqlgraph.IsConstraintError(err) {
  460. err = &ConstraintError{msg: err.Error(), wrap: err}
  461. }
  462. return 0, err
  463. }
  464. cuu.mutation.done = true
  465. return n, nil
  466. }
  467. // CreditUsageUpdateOne is the builder for updating a single CreditUsage entity.
  468. type CreditUsageUpdateOne struct {
  469. config
  470. fields []string
  471. hooks []Hook
  472. mutation *CreditUsageMutation
  473. }
  474. // SetUpdatedAt sets the "updated_at" field.
  475. func (cuuo *CreditUsageUpdateOne) SetUpdatedAt(t time.Time) *CreditUsageUpdateOne {
  476. cuuo.mutation.SetUpdatedAt(t)
  477. return cuuo
  478. }
  479. // SetDeletedAt sets the "deleted_at" field.
  480. func (cuuo *CreditUsageUpdateOne) SetDeletedAt(t time.Time) *CreditUsageUpdateOne {
  481. cuuo.mutation.SetDeletedAt(t)
  482. return cuuo
  483. }
  484. // SetNillableDeletedAt sets the "deleted_at" field if the given value is not nil.
  485. func (cuuo *CreditUsageUpdateOne) SetNillableDeletedAt(t *time.Time) *CreditUsageUpdateOne {
  486. if t != nil {
  487. cuuo.SetDeletedAt(*t)
  488. }
  489. return cuuo
  490. }
  491. // ClearDeletedAt clears the value of the "deleted_at" field.
  492. func (cuuo *CreditUsageUpdateOne) ClearDeletedAt() *CreditUsageUpdateOne {
  493. cuuo.mutation.ClearDeletedAt()
  494. return cuuo
  495. }
  496. // SetUserID sets the "user_id" field.
  497. func (cuuo *CreditUsageUpdateOne) SetUserID(s string) *CreditUsageUpdateOne {
  498. cuuo.mutation.SetUserID(s)
  499. return cuuo
  500. }
  501. // SetNillableUserID sets the "user_id" field if the given value is not nil.
  502. func (cuuo *CreditUsageUpdateOne) SetNillableUserID(s *string) *CreditUsageUpdateOne {
  503. if s != nil {
  504. cuuo.SetUserID(*s)
  505. }
  506. return cuuo
  507. }
  508. // ClearUserID clears the value of the "user_id" field.
  509. func (cuuo *CreditUsageUpdateOne) ClearUserID() *CreditUsageUpdateOne {
  510. cuuo.mutation.ClearUserID()
  511. return cuuo
  512. }
  513. // SetNumber sets the "number" field.
  514. func (cuuo *CreditUsageUpdateOne) SetNumber(f float64) *CreditUsageUpdateOne {
  515. cuuo.mutation.ResetNumber()
  516. cuuo.mutation.SetNumber(f)
  517. return cuuo
  518. }
  519. // SetNillableNumber sets the "number" field if the given value is not nil.
  520. func (cuuo *CreditUsageUpdateOne) SetNillableNumber(f *float64) *CreditUsageUpdateOne {
  521. if f != nil {
  522. cuuo.SetNumber(*f)
  523. }
  524. return cuuo
  525. }
  526. // AddNumber adds f to the "number" field.
  527. func (cuuo *CreditUsageUpdateOne) AddNumber(f float64) *CreditUsageUpdateOne {
  528. cuuo.mutation.AddNumber(f)
  529. return cuuo
  530. }
  531. // SetPayNumber sets the "pay_number" field.
  532. func (cuuo *CreditUsageUpdateOne) SetPayNumber(f float64) *CreditUsageUpdateOne {
  533. cuuo.mutation.ResetPayNumber()
  534. cuuo.mutation.SetPayNumber(f)
  535. return cuuo
  536. }
  537. // SetNillablePayNumber sets the "pay_number" field if the given value is not nil.
  538. func (cuuo *CreditUsageUpdateOne) SetNillablePayNumber(f *float64) *CreditUsageUpdateOne {
  539. if f != nil {
  540. cuuo.SetPayNumber(*f)
  541. }
  542. return cuuo
  543. }
  544. // AddPayNumber adds f to the "pay_number" field.
  545. func (cuuo *CreditUsageUpdateOne) AddPayNumber(f float64) *CreditUsageUpdateOne {
  546. cuuo.mutation.AddPayNumber(f)
  547. return cuuo
  548. }
  549. // ClearPayNumber clears the value of the "pay_number" field.
  550. func (cuuo *CreditUsageUpdateOne) ClearPayNumber() *CreditUsageUpdateOne {
  551. cuuo.mutation.ClearPayNumber()
  552. return cuuo
  553. }
  554. // SetBeforeNumber sets the "before_number" field.
  555. func (cuuo *CreditUsageUpdateOne) SetBeforeNumber(f float64) *CreditUsageUpdateOne {
  556. cuuo.mutation.ResetBeforeNumber()
  557. cuuo.mutation.SetBeforeNumber(f)
  558. return cuuo
  559. }
  560. // SetNillableBeforeNumber sets the "before_number" field if the given value is not nil.
  561. func (cuuo *CreditUsageUpdateOne) SetNillableBeforeNumber(f *float64) *CreditUsageUpdateOne {
  562. if f != nil {
  563. cuuo.SetBeforeNumber(*f)
  564. }
  565. return cuuo
  566. }
  567. // AddBeforeNumber adds f to the "before_number" field.
  568. func (cuuo *CreditUsageUpdateOne) AddBeforeNumber(f float64) *CreditUsageUpdateOne {
  569. cuuo.mutation.AddBeforeNumber(f)
  570. return cuuo
  571. }
  572. // ClearBeforeNumber clears the value of the "before_number" field.
  573. func (cuuo *CreditUsageUpdateOne) ClearBeforeNumber() *CreditUsageUpdateOne {
  574. cuuo.mutation.ClearBeforeNumber()
  575. return cuuo
  576. }
  577. // SetAfterNumber sets the "after_number" field.
  578. func (cuuo *CreditUsageUpdateOne) SetAfterNumber(f float64) *CreditUsageUpdateOne {
  579. cuuo.mutation.ResetAfterNumber()
  580. cuuo.mutation.SetAfterNumber(f)
  581. return cuuo
  582. }
  583. // SetNillableAfterNumber sets the "after_number" field if the given value is not nil.
  584. func (cuuo *CreditUsageUpdateOne) SetNillableAfterNumber(f *float64) *CreditUsageUpdateOne {
  585. if f != nil {
  586. cuuo.SetAfterNumber(*f)
  587. }
  588. return cuuo
  589. }
  590. // AddAfterNumber adds f to the "after_number" field.
  591. func (cuuo *CreditUsageUpdateOne) AddAfterNumber(f float64) *CreditUsageUpdateOne {
  592. cuuo.mutation.AddAfterNumber(f)
  593. return cuuo
  594. }
  595. // ClearAfterNumber clears the value of the "after_number" field.
  596. func (cuuo *CreditUsageUpdateOne) ClearAfterNumber() *CreditUsageUpdateOne {
  597. cuuo.mutation.ClearAfterNumber()
  598. return cuuo
  599. }
  600. // SetPayMethod sets the "pay_method" field.
  601. func (cuuo *CreditUsageUpdateOne) SetPayMethod(s string) *CreditUsageUpdateOne {
  602. cuuo.mutation.SetPayMethod(s)
  603. return cuuo
  604. }
  605. // SetNillablePayMethod sets the "pay_method" field if the given value is not nil.
  606. func (cuuo *CreditUsageUpdateOne) SetNillablePayMethod(s *string) *CreditUsageUpdateOne {
  607. if s != nil {
  608. cuuo.SetPayMethod(*s)
  609. }
  610. return cuuo
  611. }
  612. // ClearPayMethod clears the value of the "pay_method" field.
  613. func (cuuo *CreditUsageUpdateOne) ClearPayMethod() *CreditUsageUpdateOne {
  614. cuuo.mutation.ClearPayMethod()
  615. return cuuo
  616. }
  617. // SetStatus sets the "status" field.
  618. func (cuuo *CreditUsageUpdateOne) SetStatus(i int) *CreditUsageUpdateOne {
  619. cuuo.mutation.ResetStatus()
  620. cuuo.mutation.SetStatus(i)
  621. return cuuo
  622. }
  623. // SetNillableStatus sets the "status" field if the given value is not nil.
  624. func (cuuo *CreditUsageUpdateOne) SetNillableStatus(i *int) *CreditUsageUpdateOne {
  625. if i != nil {
  626. cuuo.SetStatus(*i)
  627. }
  628. return cuuo
  629. }
  630. // AddStatus adds i to the "status" field.
  631. func (cuuo *CreditUsageUpdateOne) AddStatus(i int) *CreditUsageUpdateOne {
  632. cuuo.mutation.AddStatus(i)
  633. return cuuo
  634. }
  635. // ClearStatus clears the value of the "status" field.
  636. func (cuuo *CreditUsageUpdateOne) ClearStatus() *CreditUsageUpdateOne {
  637. cuuo.mutation.ClearStatus()
  638. return cuuo
  639. }
  640. // SetNtype sets the "ntype" field.
  641. func (cuuo *CreditUsageUpdateOne) SetNtype(i int) *CreditUsageUpdateOne {
  642. cuuo.mutation.ResetNtype()
  643. cuuo.mutation.SetNtype(i)
  644. return cuuo
  645. }
  646. // SetNillableNtype sets the "ntype" field if the given value is not nil.
  647. func (cuuo *CreditUsageUpdateOne) SetNillableNtype(i *int) *CreditUsageUpdateOne {
  648. if i != nil {
  649. cuuo.SetNtype(*i)
  650. }
  651. return cuuo
  652. }
  653. // AddNtype adds i to the "ntype" field.
  654. func (cuuo *CreditUsageUpdateOne) AddNtype(i int) *CreditUsageUpdateOne {
  655. cuuo.mutation.AddNtype(i)
  656. return cuuo
  657. }
  658. // SetTable sets the "table" field.
  659. func (cuuo *CreditUsageUpdateOne) SetTable(s string) *CreditUsageUpdateOne {
  660. cuuo.mutation.SetTable(s)
  661. return cuuo
  662. }
  663. // SetNillableTable sets the "table" field if the given value is not nil.
  664. func (cuuo *CreditUsageUpdateOne) SetNillableTable(s *string) *CreditUsageUpdateOne {
  665. if s != nil {
  666. cuuo.SetTable(*s)
  667. }
  668. return cuuo
  669. }
  670. // SetOrganizationID sets the "organization_id" field.
  671. func (cuuo *CreditUsageUpdateOne) SetOrganizationID(u uint64) *CreditUsageUpdateOne {
  672. cuuo.mutation.ResetOrganizationID()
  673. cuuo.mutation.SetOrganizationID(u)
  674. return cuuo
  675. }
  676. // SetNillableOrganizationID sets the "organization_id" field if the given value is not nil.
  677. func (cuuo *CreditUsageUpdateOne) SetNillableOrganizationID(u *uint64) *CreditUsageUpdateOne {
  678. if u != nil {
  679. cuuo.SetOrganizationID(*u)
  680. }
  681. return cuuo
  682. }
  683. // AddOrganizationID adds u to the "organization_id" field.
  684. func (cuuo *CreditUsageUpdateOne) AddOrganizationID(u int64) *CreditUsageUpdateOne {
  685. cuuo.mutation.AddOrganizationID(u)
  686. return cuuo
  687. }
  688. // ClearOrganizationID clears the value of the "organization_id" field.
  689. func (cuuo *CreditUsageUpdateOne) ClearOrganizationID() *CreditUsageUpdateOne {
  690. cuuo.mutation.ClearOrganizationID()
  691. return cuuo
  692. }
  693. // SetNid sets the "nid" field.
  694. func (cuuo *CreditUsageUpdateOne) SetNid(u uint64) *CreditUsageUpdateOne {
  695. cuuo.mutation.ResetNid()
  696. cuuo.mutation.SetNid(u)
  697. return cuuo
  698. }
  699. // SetNillableNid sets the "nid" field if the given value is not nil.
  700. func (cuuo *CreditUsageUpdateOne) SetNillableNid(u *uint64) *CreditUsageUpdateOne {
  701. if u != nil {
  702. cuuo.SetNid(*u)
  703. }
  704. return cuuo
  705. }
  706. // AddNid adds u to the "nid" field.
  707. func (cuuo *CreditUsageUpdateOne) AddNid(u int64) *CreditUsageUpdateOne {
  708. cuuo.mutation.AddNid(u)
  709. return cuuo
  710. }
  711. // SetReason sets the "reason" field.
  712. func (cuuo *CreditUsageUpdateOne) SetReason(s string) *CreditUsageUpdateOne {
  713. cuuo.mutation.SetReason(s)
  714. return cuuo
  715. }
  716. // SetNillableReason sets the "reason" field if the given value is not nil.
  717. func (cuuo *CreditUsageUpdateOne) SetNillableReason(s *string) *CreditUsageUpdateOne {
  718. if s != nil {
  719. cuuo.SetReason(*s)
  720. }
  721. return cuuo
  722. }
  723. // SetOperator sets the "operator" field.
  724. func (cuuo *CreditUsageUpdateOne) SetOperator(s string) *CreditUsageUpdateOne {
  725. cuuo.mutation.SetOperator(s)
  726. return cuuo
  727. }
  728. // SetNillableOperator sets the "operator" field if the given value is not nil.
  729. func (cuuo *CreditUsageUpdateOne) SetNillableOperator(s *string) *CreditUsageUpdateOne {
  730. if s != nil {
  731. cuuo.SetOperator(*s)
  732. }
  733. return cuuo
  734. }
  735. // Mutation returns the CreditUsageMutation object of the builder.
  736. func (cuuo *CreditUsageUpdateOne) Mutation() *CreditUsageMutation {
  737. return cuuo.mutation
  738. }
  739. // Where appends a list predicates to the CreditUsageUpdate builder.
  740. func (cuuo *CreditUsageUpdateOne) Where(ps ...predicate.CreditUsage) *CreditUsageUpdateOne {
  741. cuuo.mutation.Where(ps...)
  742. return cuuo
  743. }
  744. // Select allows selecting one or more fields (columns) of the returned entity.
  745. // The default is selecting all fields defined in the entity schema.
  746. func (cuuo *CreditUsageUpdateOne) Select(field string, fields ...string) *CreditUsageUpdateOne {
  747. cuuo.fields = append([]string{field}, fields...)
  748. return cuuo
  749. }
  750. // Save executes the query and returns the updated CreditUsage entity.
  751. func (cuuo *CreditUsageUpdateOne) Save(ctx context.Context) (*CreditUsage, error) {
  752. if err := cuuo.defaults(); err != nil {
  753. return nil, err
  754. }
  755. return withHooks(ctx, cuuo.sqlSave, cuuo.mutation, cuuo.hooks)
  756. }
  757. // SaveX is like Save, but panics if an error occurs.
  758. func (cuuo *CreditUsageUpdateOne) SaveX(ctx context.Context) *CreditUsage {
  759. node, err := cuuo.Save(ctx)
  760. if err != nil {
  761. panic(err)
  762. }
  763. return node
  764. }
  765. // Exec executes the query on the entity.
  766. func (cuuo *CreditUsageUpdateOne) Exec(ctx context.Context) error {
  767. _, err := cuuo.Save(ctx)
  768. return err
  769. }
  770. // ExecX is like Exec, but panics if an error occurs.
  771. func (cuuo *CreditUsageUpdateOne) ExecX(ctx context.Context) {
  772. if err := cuuo.Exec(ctx); err != nil {
  773. panic(err)
  774. }
  775. }
  776. // defaults sets the default values of the builder before save.
  777. func (cuuo *CreditUsageUpdateOne) defaults() error {
  778. if _, ok := cuuo.mutation.UpdatedAt(); !ok {
  779. if creditusage.UpdateDefaultUpdatedAt == nil {
  780. return fmt.Errorf("ent: uninitialized creditusage.UpdateDefaultUpdatedAt (forgotten import ent/runtime?)")
  781. }
  782. v := creditusage.UpdateDefaultUpdatedAt()
  783. cuuo.mutation.SetUpdatedAt(v)
  784. }
  785. return nil
  786. }
  787. // check runs all checks and user-defined validators on the builder.
  788. func (cuuo *CreditUsageUpdateOne) check() error {
  789. if v, ok := cuuo.mutation.UserID(); ok {
  790. if err := creditusage.UserIDValidator(v); err != nil {
  791. return &ValidationError{Name: "user_id", err: fmt.Errorf(`ent: validator failed for field "CreditUsage.user_id": %w`, err)}
  792. }
  793. }
  794. if v, ok := cuuo.mutation.Status(); ok {
  795. if err := creditusage.StatusValidator(v); err != nil {
  796. return &ValidationError{Name: "status", err: fmt.Errorf(`ent: validator failed for field "CreditUsage.status": %w`, err)}
  797. }
  798. }
  799. if v, ok := cuuo.mutation.Reason(); ok {
  800. if err := creditusage.ReasonValidator(v); err != nil {
  801. return &ValidationError{Name: "reason", err: fmt.Errorf(`ent: validator failed for field "CreditUsage.reason": %w`, err)}
  802. }
  803. }
  804. if v, ok := cuuo.mutation.Operator(); ok {
  805. if err := creditusage.OperatorValidator(v); err != nil {
  806. return &ValidationError{Name: "operator", err: fmt.Errorf(`ent: validator failed for field "CreditUsage.operator": %w`, err)}
  807. }
  808. }
  809. return nil
  810. }
  811. func (cuuo *CreditUsageUpdateOne) sqlSave(ctx context.Context) (_node *CreditUsage, err error) {
  812. if err := cuuo.check(); err != nil {
  813. return _node, err
  814. }
  815. _spec := sqlgraph.NewUpdateSpec(creditusage.Table, creditusage.Columns, sqlgraph.NewFieldSpec(creditusage.FieldID, field.TypeUint64))
  816. id, ok := cuuo.mutation.ID()
  817. if !ok {
  818. return nil, &ValidationError{Name: "id", err: errors.New(`ent: missing "CreditUsage.id" for update`)}
  819. }
  820. _spec.Node.ID.Value = id
  821. if fields := cuuo.fields; len(fields) > 0 {
  822. _spec.Node.Columns = make([]string, 0, len(fields))
  823. _spec.Node.Columns = append(_spec.Node.Columns, creditusage.FieldID)
  824. for _, f := range fields {
  825. if !creditusage.ValidColumn(f) {
  826. return nil, &ValidationError{Name: f, err: fmt.Errorf("ent: invalid field %q for query", f)}
  827. }
  828. if f != creditusage.FieldID {
  829. _spec.Node.Columns = append(_spec.Node.Columns, f)
  830. }
  831. }
  832. }
  833. if ps := cuuo.mutation.predicates; len(ps) > 0 {
  834. _spec.Predicate = func(selector *sql.Selector) {
  835. for i := range ps {
  836. ps[i](selector)
  837. }
  838. }
  839. }
  840. if value, ok := cuuo.mutation.UpdatedAt(); ok {
  841. _spec.SetField(creditusage.FieldUpdatedAt, field.TypeTime, value)
  842. }
  843. if value, ok := cuuo.mutation.DeletedAt(); ok {
  844. _spec.SetField(creditusage.FieldDeletedAt, field.TypeTime, value)
  845. }
  846. if cuuo.mutation.DeletedAtCleared() {
  847. _spec.ClearField(creditusage.FieldDeletedAt, field.TypeTime)
  848. }
  849. if value, ok := cuuo.mutation.UserID(); ok {
  850. _spec.SetField(creditusage.FieldUserID, field.TypeString, value)
  851. }
  852. if cuuo.mutation.UserIDCleared() {
  853. _spec.ClearField(creditusage.FieldUserID, field.TypeString)
  854. }
  855. if value, ok := cuuo.mutation.Number(); ok {
  856. _spec.SetField(creditusage.FieldNumber, field.TypeFloat64, value)
  857. }
  858. if value, ok := cuuo.mutation.AddedNumber(); ok {
  859. _spec.AddField(creditusage.FieldNumber, field.TypeFloat64, value)
  860. }
  861. if value, ok := cuuo.mutation.PayNumber(); ok {
  862. _spec.SetField(creditusage.FieldPayNumber, field.TypeFloat64, value)
  863. }
  864. if value, ok := cuuo.mutation.AddedPayNumber(); ok {
  865. _spec.AddField(creditusage.FieldPayNumber, field.TypeFloat64, value)
  866. }
  867. if cuuo.mutation.PayNumberCleared() {
  868. _spec.ClearField(creditusage.FieldPayNumber, field.TypeFloat64)
  869. }
  870. if value, ok := cuuo.mutation.BeforeNumber(); ok {
  871. _spec.SetField(creditusage.FieldBeforeNumber, field.TypeFloat64, value)
  872. }
  873. if value, ok := cuuo.mutation.AddedBeforeNumber(); ok {
  874. _spec.AddField(creditusage.FieldBeforeNumber, field.TypeFloat64, value)
  875. }
  876. if cuuo.mutation.BeforeNumberCleared() {
  877. _spec.ClearField(creditusage.FieldBeforeNumber, field.TypeFloat64)
  878. }
  879. if value, ok := cuuo.mutation.AfterNumber(); ok {
  880. _spec.SetField(creditusage.FieldAfterNumber, field.TypeFloat64, value)
  881. }
  882. if value, ok := cuuo.mutation.AddedAfterNumber(); ok {
  883. _spec.AddField(creditusage.FieldAfterNumber, field.TypeFloat64, value)
  884. }
  885. if cuuo.mutation.AfterNumberCleared() {
  886. _spec.ClearField(creditusage.FieldAfterNumber, field.TypeFloat64)
  887. }
  888. if value, ok := cuuo.mutation.PayMethod(); ok {
  889. _spec.SetField(creditusage.FieldPayMethod, field.TypeString, value)
  890. }
  891. if cuuo.mutation.PayMethodCleared() {
  892. _spec.ClearField(creditusage.FieldPayMethod, field.TypeString)
  893. }
  894. if value, ok := cuuo.mutation.Status(); ok {
  895. _spec.SetField(creditusage.FieldStatus, field.TypeInt, value)
  896. }
  897. if value, ok := cuuo.mutation.AddedStatus(); ok {
  898. _spec.AddField(creditusage.FieldStatus, field.TypeInt, value)
  899. }
  900. if cuuo.mutation.StatusCleared() {
  901. _spec.ClearField(creditusage.FieldStatus, field.TypeInt)
  902. }
  903. if value, ok := cuuo.mutation.Ntype(); ok {
  904. _spec.SetField(creditusage.FieldNtype, field.TypeInt, value)
  905. }
  906. if value, ok := cuuo.mutation.AddedNtype(); ok {
  907. _spec.AddField(creditusage.FieldNtype, field.TypeInt, value)
  908. }
  909. if value, ok := cuuo.mutation.Table(); ok {
  910. _spec.SetField(creditusage.FieldTable, field.TypeString, value)
  911. }
  912. if value, ok := cuuo.mutation.OrganizationID(); ok {
  913. _spec.SetField(creditusage.FieldOrganizationID, field.TypeUint64, value)
  914. }
  915. if value, ok := cuuo.mutation.AddedOrganizationID(); ok {
  916. _spec.AddField(creditusage.FieldOrganizationID, field.TypeUint64, value)
  917. }
  918. if cuuo.mutation.OrganizationIDCleared() {
  919. _spec.ClearField(creditusage.FieldOrganizationID, field.TypeUint64)
  920. }
  921. if value, ok := cuuo.mutation.Nid(); ok {
  922. _spec.SetField(creditusage.FieldNid, field.TypeUint64, value)
  923. }
  924. if value, ok := cuuo.mutation.AddedNid(); ok {
  925. _spec.AddField(creditusage.FieldNid, field.TypeUint64, value)
  926. }
  927. if value, ok := cuuo.mutation.Reason(); ok {
  928. _spec.SetField(creditusage.FieldReason, field.TypeString, value)
  929. }
  930. if value, ok := cuuo.mutation.Operator(); ok {
  931. _spec.SetField(creditusage.FieldOperator, field.TypeString, value)
  932. }
  933. _node = &CreditUsage{config: cuuo.config}
  934. _spec.Assign = _node.assignValues
  935. _spec.ScanValues = _node.scanValues
  936. if err = sqlgraph.UpdateNode(ctx, cuuo.driver, _spec); err != nil {
  937. if _, ok := err.(*sqlgraph.NotFoundError); ok {
  938. err = &NotFoundError{creditusage.Label}
  939. } else if sqlgraph.IsConstraintError(err) {
  940. err = &ConstraintError{msg: err.Error(), wrap: err}
  941. }
  942. return nil, err
  943. }
  944. cuuo.mutation.done = true
  945. return _node, nil
  946. }