sysUserPermModel_gen.go 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467
  1. // Code generated by goctl. DO NOT EDIT.
  2. // versions:
  3. // goctl version: 1.10.0
  4. package userperm
  5. import (
  6. "context"
  7. "database/sql"
  8. "fmt"
  9. "strings"
  10. "github.com/zeromicro/go-zero/core/stores/builder"
  11. "github.com/zeromicro/go-zero/core/stores/cache"
  12. "github.com/zeromicro/go-zero/core/stores/sqlc"
  13. "github.com/zeromicro/go-zero/core/stores/sqlx"
  14. "github.com/zeromicro/go-zero/core/stringx"
  15. )
  16. var (
  17. sysUserPermFieldNames = builder.RawFieldNames(&SysUserPerm{})
  18. sysUserPermRows = strings.Join(sysUserPermFieldNames, ",")
  19. sysUserPermRowsExpectAutoSet = strings.Join(stringx.Remove(sysUserPermFieldNames, "`id`", "`create_at`", "`create_time`", "`created_at`", "`update_at`", "`update_time`", "`updated_at`"), ",")
  20. sysUserPermRowsWithPlaceHolder = strings.Join(stringx.Remove(sysUserPermFieldNames, "`id`", "`create_at`", "`create_time`", "`created_at`", "`update_at`", "`update_time`", "`updated_at`"), "=?,") + "=?"
  21. cacheSysUserPermIdPrefix = "cache:sysUserPerm:id:"
  22. cacheSysUserPermUserIdPermIdPrefix = "cache:sysUserPerm:userId:permId:"
  23. )
  24. type (
  25. sysUserPermModel interface {
  26. Insert(ctx context.Context, data *SysUserPerm) (sql.Result, error)
  27. InsertWithTx(ctx context.Context, session sqlx.Session, data *SysUserPerm) (sql.Result, error)
  28. BatchInsert(ctx context.Context, dataList []*SysUserPerm) error
  29. BatchInsertWithTx(ctx context.Context, session sqlx.Session, dataList []*SysUserPerm) error
  30. TransactCtx(ctx context.Context, fn func(context.Context, sqlx.Session) error) error
  31. FindOne(ctx context.Context, id int64) (*SysUserPerm, error)
  32. FindOneWithTx(ctx context.Context, session sqlx.Session, id int64) (*SysUserPerm, error)
  33. FindOneByUserIdPermId(ctx context.Context, userId int64, permId int64) (*SysUserPerm, error)
  34. FindOneByUserIdPermIdWithTx(ctx context.Context, session sqlx.Session, userId int64, permId int64) (*SysUserPerm, error)
  35. Update(ctx context.Context, data *SysUserPerm) error
  36. UpdateWithTx(ctx context.Context, session sqlx.Session, data *SysUserPerm) error
  37. BatchUpdate(ctx context.Context, dataList []*SysUserPerm) error
  38. BatchUpdateWithTx(ctx context.Context, session sqlx.Session, dataList []*SysUserPerm) error
  39. Delete(ctx context.Context, id int64) error
  40. DeleteWithTx(ctx context.Context, session sqlx.Session, id int64) error
  41. BatchDelete(ctx context.Context, ids []int64) error
  42. BatchDeleteWithTx(ctx context.Context, session sqlx.Session, ids []int64) error
  43. TableName() string
  44. }
  45. defaultSysUserPermModel struct {
  46. sqlc.CachedConn
  47. table string
  48. }
  49. SysUserPerm struct {
  50. Id int64 `db:"id"` // ID
  51. UserId int64 `db:"userId"` // 用户ID
  52. PermId int64 `db:"permId"` // 权限ID
  53. Effect string `db:"effect"` // 权限控制策略 ALLOW允许 DENY拒绝
  54. CreateTime int64 `db:"createTime"` // 创建时间
  55. UpdateTime int64 `db:"updateTime"` // 修改时间
  56. }
  57. )
  58. func newSysUserPermModel(conn sqlx.SqlConn, c cache.CacheConf, cachePrefix string, opts ...cache.Option) *defaultSysUserPermModel {
  59. if cachePrefix != "" {
  60. cacheSysUserPermIdPrefix = cachePrefix + ":" + "cache:sysUserPerm:id:"
  61. cacheSysUserPermUserIdPermIdPrefix = cachePrefix + ":" + "cache:sysUserPerm:userId:permId:"
  62. }
  63. return &defaultSysUserPermModel{
  64. CachedConn: sqlc.NewConn(conn, c, opts...),
  65. table: "`sys_user_perm`",
  66. }
  67. }
  68. func (m *defaultSysUserPermModel) Delete(ctx context.Context, id int64) error {
  69. data, err := m.FindOne(ctx, id)
  70. if err != nil {
  71. return err
  72. }
  73. sysUserPermIdKey := fmt.Sprintf("%s%v", cacheSysUserPermIdPrefix, id)
  74. sysUserPermUserIdPermIdKey := fmt.Sprintf("%s%v:%v", cacheSysUserPermUserIdPermIdPrefix, data.UserId, data.PermId)
  75. _, err = m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) {
  76. query := fmt.Sprintf("DELETE FROM %s WHERE `id` = ?", m.table)
  77. return conn.ExecCtx(ctx, query, id)
  78. }, sysUserPermIdKey, sysUserPermUserIdPermIdKey)
  79. return err
  80. }
  81. func (m *defaultSysUserPermModel) DeleteWithTx(ctx context.Context, session sqlx.Session, id int64) error {
  82. data, err := m.FindOne(ctx, id)
  83. if err != nil {
  84. return err
  85. }
  86. sysUserPermIdKey := fmt.Sprintf("%s%v", cacheSysUserPermIdPrefix, id)
  87. sysUserPermUserIdPermIdKey := fmt.Sprintf("%s%v:%v", cacheSysUserPermUserIdPermIdPrefix, data.UserId, data.PermId)
  88. _, err = m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) {
  89. query := fmt.Sprintf("DELETE FROM %s WHERE `id` = ?", m.table)
  90. return session.ExecCtx(ctx, query, id)
  91. }, sysUserPermIdKey, sysUserPermUserIdPermIdKey)
  92. return err
  93. }
  94. func (m *defaultSysUserPermModel) BatchDelete(ctx context.Context, ids []int64) error {
  95. if len(ids) == 0 {
  96. return nil
  97. }
  98. primaryKeys := make([]interface{}, 0, len(ids))
  99. for _, key := range ids {
  100. primaryKeys = append(primaryKeys, key)
  101. }
  102. oldDataList, err := m.findListByPrimaryKeys(ctx, primaryKeys)
  103. if err != nil {
  104. return err
  105. }
  106. keys := make([]string, 0)
  107. for _, data := range oldDataList {
  108. id := m.getPrimaryKeyValue(data)
  109. sysUserPermIdKey := fmt.Sprintf("%s%v", cacheSysUserPermIdPrefix, id)
  110. sysUserPermUserIdPermIdKey := fmt.Sprintf("%s%v:%v", cacheSysUserPermUserIdPermIdPrefix, data.UserId, data.PermId)
  111. keys = append(keys, sysUserPermIdKey, sysUserPermUserIdPermIdKey)
  112. }
  113. placeholders := make([]string, 0, len(ids))
  114. args := make([]interface{}, 0, len(ids))
  115. for _, id := range ids {
  116. placeholders = append(placeholders, "?")
  117. args = append(args, id)
  118. }
  119. _, err = m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) {
  120. query := fmt.Sprintf("DELETE FROM %s WHERE `id` IN (%s)", m.table, strings.Join(placeholders, ","))
  121. return conn.ExecCtx(ctx, query, args...)
  122. }, keys...)
  123. return err
  124. }
  125. func (m *defaultSysUserPermModel) BatchDeleteWithTx(ctx context.Context, session sqlx.Session, ids []int64) error {
  126. if len(ids) == 0 {
  127. return nil
  128. }
  129. primaryKeys := make([]interface{}, 0, len(ids))
  130. for _, key := range ids {
  131. primaryKeys = append(primaryKeys, key)
  132. }
  133. oldDataList, err := m.findListByPrimaryKeys(ctx, primaryKeys)
  134. if err != nil {
  135. return err
  136. }
  137. keys := make([]string, 0)
  138. for _, data := range oldDataList {
  139. id := m.getPrimaryKeyValue(data)
  140. sysUserPermIdKey := fmt.Sprintf("%s%v", cacheSysUserPermIdPrefix, id)
  141. sysUserPermUserIdPermIdKey := fmt.Sprintf("%s%v:%v", cacheSysUserPermUserIdPermIdPrefix, data.UserId, data.PermId)
  142. keys = append(keys, sysUserPermIdKey, sysUserPermUserIdPermIdKey)
  143. }
  144. placeholders := make([]string, 0, len(ids))
  145. args := make([]interface{}, 0, len(ids))
  146. for _, id := range ids {
  147. placeholders = append(placeholders, "?")
  148. args = append(args, id)
  149. }
  150. query := fmt.Sprintf("DELETE FROM %s WHERE `id` IN (%s)", m.table, strings.Join(placeholders, ","))
  151. _, err = m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) {
  152. return session.ExecCtx(ctx, query, args...)
  153. }, keys...)
  154. return err
  155. }
  156. func (m *defaultSysUserPermModel) FindOne(ctx context.Context, id int64) (*SysUserPerm, error) {
  157. sysUserPermIdKey := fmt.Sprintf("%s%v", cacheSysUserPermIdPrefix, id)
  158. var resp SysUserPerm
  159. err := m.QueryRowCtx(ctx, &resp, sysUserPermIdKey, func(ctx context.Context, conn sqlx.SqlConn, v any) error {
  160. query := fmt.Sprintf("SELECT %s FROM %s WHERE `id` = ? LIMIT 1", sysUserPermRows, m.table)
  161. return conn.QueryRowCtx(ctx, v, query, id)
  162. })
  163. switch err {
  164. case nil:
  165. return &resp, nil
  166. case sqlc.ErrNotFound:
  167. return nil, ErrNotFound
  168. default:
  169. return nil, err
  170. }
  171. }
  172. func (m *defaultSysUserPermModel) FindOneWithTx(ctx context.Context, session sqlx.Session, id int64) (*SysUserPerm, error) {
  173. var resp SysUserPerm
  174. query := fmt.Sprintf("SELECT %s FROM %s WHERE `id` = ? LIMIT 1", sysUserPermRows, m.table)
  175. err := session.QueryRowCtx(ctx, &resp, query, id)
  176. switch err {
  177. case nil:
  178. return &resp, nil
  179. case sqlx.ErrNotFound:
  180. return nil, ErrNotFound
  181. default:
  182. return nil, err
  183. }
  184. }
  185. func (m *defaultSysUserPermModel) FindOneByUserIdPermId(ctx context.Context, userId int64, permId int64) (*SysUserPerm, error) {
  186. sysUserPermUserIdPermIdKey := fmt.Sprintf("%s%v:%v", cacheSysUserPermUserIdPermIdPrefix, userId, permId)
  187. var resp SysUserPerm
  188. err := m.QueryRowIndexCtx(ctx, &resp, sysUserPermUserIdPermIdKey, m.formatPrimary, func(ctx context.Context, conn sqlx.SqlConn, v any) (i any, e error) {
  189. query := fmt.Sprintf("SELECT %s FROM %s WHERE `userId` = ? and `permId` = ? LIMIT 1", sysUserPermRows, m.table)
  190. if err := conn.QueryRowCtx(ctx, &resp, query, userId, permId); err != nil {
  191. return nil, err
  192. }
  193. return resp.Id, nil
  194. }, m.queryPrimary)
  195. switch err {
  196. case nil:
  197. return &resp, nil
  198. case sqlc.ErrNotFound:
  199. return nil, ErrNotFound
  200. default:
  201. return nil, err
  202. }
  203. }
  204. func (m *defaultSysUserPermModel) FindOneByUserIdPermIdWithTx(ctx context.Context, session sqlx.Session, userId int64, permId int64) (*SysUserPerm, error) {
  205. var resp SysUserPerm
  206. query := fmt.Sprintf("SELECT %s FROM %s WHERE `userId` = ? and `permId` = ? LIMIT 1", sysUserPermRows, m.table)
  207. err := session.QueryRowCtx(ctx, &resp, query, userId, permId)
  208. switch err {
  209. case nil:
  210. return &resp, nil
  211. case sqlx.ErrNotFound:
  212. return nil, ErrNotFound
  213. default:
  214. return nil, err
  215. }
  216. }
  217. func (m *defaultSysUserPermModel) Insert(ctx context.Context, data *SysUserPerm) (sql.Result, error) {
  218. sysUserPermIdKey := fmt.Sprintf("%s%v", cacheSysUserPermIdPrefix, data.Id)
  219. sysUserPermUserIdPermIdKey := fmt.Sprintf("%s%v:%v", cacheSysUserPermUserIdPermIdPrefix, data.UserId, data.PermId)
  220. ret, err := m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) {
  221. query := fmt.Sprintf("INSERT INTO %s (%s) VALUES (?, ?, ?, ?, ?)", m.table, sysUserPermRowsExpectAutoSet)
  222. return conn.ExecCtx(ctx, query, data.UserId, data.PermId, data.Effect, data.CreateTime, data.UpdateTime)
  223. }, sysUserPermIdKey, sysUserPermUserIdPermIdKey)
  224. return ret, err
  225. }
  226. func (m *defaultSysUserPermModel) InsertWithTx(ctx context.Context, session sqlx.Session, data *SysUserPerm) (sql.Result, error) {
  227. sysUserPermIdKey := fmt.Sprintf("%s%v", cacheSysUserPermIdPrefix, data.Id)
  228. sysUserPermUserIdPermIdKey := fmt.Sprintf("%s%v:%v", cacheSysUserPermUserIdPermIdPrefix, data.UserId, data.PermId)
  229. ret, err := m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) {
  230. query := fmt.Sprintf("INSERT INTO %s (%s) VALUES (?, ?, ?, ?, ?)", m.table, sysUserPermRowsExpectAutoSet)
  231. return session.ExecCtx(ctx, query, data.UserId, data.PermId, data.Effect, data.CreateTime, data.UpdateTime)
  232. }, sysUserPermIdKey, sysUserPermUserIdPermIdKey)
  233. return ret, err
  234. }
  235. func (m *defaultSysUserPermModel) BatchInsert(ctx context.Context, dataList []*SysUserPerm) error {
  236. if len(dataList) == 0 {
  237. return nil
  238. }
  239. keys := make([]string, 0, len(dataList))
  240. valueSets := make([]string, 0, len(dataList))
  241. args := make([]interface{}, 0)
  242. for _, data := range dataList {
  243. valueSets = append(valueSets, "(?, ?, ?, ?, ?)")
  244. args = append(args, data.UserId, data.PermId, data.Effect, data.CreateTime, data.UpdateTime)
  245. sysUserPermIdKey := fmt.Sprintf("%s%v", cacheSysUserPermIdPrefix, data.Id)
  246. sysUserPermUserIdPermIdKey := fmt.Sprintf("%s%v:%v", cacheSysUserPermUserIdPermIdPrefix, data.UserId, data.PermId)
  247. keys = append(keys, sysUserPermIdKey, sysUserPermUserIdPermIdKey)
  248. }
  249. query := fmt.Sprintf("INSERT INTO %s (%s) VALUES %s", m.table, sysUserPermRowsExpectAutoSet, strings.Join(valueSets, ","))
  250. _, err := m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) {
  251. return conn.ExecCtx(ctx, query, args...)
  252. }, keys...)
  253. return err
  254. }
  255. func (m *defaultSysUserPermModel) BatchInsertWithTx(ctx context.Context, session sqlx.Session, dataList []*SysUserPerm) error {
  256. if len(dataList) == 0 {
  257. return nil
  258. }
  259. keys := make([]string, 0, len(dataList))
  260. valueSets := make([]string, 0, len(dataList))
  261. args := make([]interface{}, 0)
  262. for _, data := range dataList {
  263. valueSets = append(valueSets, "(?, ?, ?, ?, ?)")
  264. args = append(args, data.UserId, data.PermId, data.Effect, data.CreateTime, data.UpdateTime)
  265. sysUserPermIdKey := fmt.Sprintf("%s%v", cacheSysUserPermIdPrefix, data.Id)
  266. sysUserPermUserIdPermIdKey := fmt.Sprintf("%s%v:%v", cacheSysUserPermUserIdPermIdPrefix, data.UserId, data.PermId)
  267. keys = append(keys, sysUserPermIdKey, sysUserPermUserIdPermIdKey)
  268. }
  269. query := fmt.Sprintf("INSERT INTO %s (%s) VALUES %s", m.table, sysUserPermRowsExpectAutoSet, strings.Join(valueSets, ","))
  270. _, err := m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) {
  271. return session.ExecCtx(ctx, query, args...)
  272. }, keys...)
  273. return err
  274. }
  275. func (m *defaultSysUserPermModel) Update(ctx context.Context, newData *SysUserPerm) error {
  276. data, err := m.FindOne(ctx, newData.Id)
  277. if err != nil {
  278. return err
  279. }
  280. sysUserPermIdKey := fmt.Sprintf("%s%v", cacheSysUserPermIdPrefix, data.Id)
  281. sysUserPermUserIdPermIdKey := fmt.Sprintf("%s%v:%v", cacheSysUserPermUserIdPermIdPrefix, data.UserId, data.PermId)
  282. _, err = m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) {
  283. query := fmt.Sprintf("UPDATE %s SET %s WHERE `id` = ?", m.table, sysUserPermRowsWithPlaceHolder)
  284. return conn.ExecCtx(ctx, query, newData.UserId, newData.PermId, newData.Effect, newData.CreateTime, newData.UpdateTime, newData.Id)
  285. }, sysUserPermIdKey, sysUserPermUserIdPermIdKey)
  286. return err
  287. }
  288. func (m *defaultSysUserPermModel) UpdateWithTx(ctx context.Context, session sqlx.Session, newData *SysUserPerm) error {
  289. data, err := m.FindOne(ctx, newData.Id)
  290. if err != nil {
  291. return err
  292. }
  293. sysUserPermIdKey := fmt.Sprintf("%s%v", cacheSysUserPermIdPrefix, data.Id)
  294. sysUserPermUserIdPermIdKey := fmt.Sprintf("%s%v:%v", cacheSysUserPermUserIdPermIdPrefix, data.UserId, data.PermId)
  295. _, err = m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) {
  296. query := fmt.Sprintf("UPDATE %s SET %s WHERE `id` = ?", m.table, sysUserPermRowsWithPlaceHolder)
  297. return session.ExecCtx(ctx, query, newData.UserId, newData.PermId, newData.Effect, newData.CreateTime, newData.UpdateTime, newData.Id)
  298. }, sysUserPermIdKey, sysUserPermUserIdPermIdKey)
  299. return err
  300. }
  301. func (m *defaultSysUserPermModel) BatchUpdate(ctx context.Context, dataList []*SysUserPerm) error {
  302. if len(dataList) == 0 {
  303. return nil
  304. }
  305. keys := make([]string, 0)
  306. primaryKeys := make([]interface{}, 0, len(dataList))
  307. for _, item := range dataList {
  308. primaryKeys = append(primaryKeys, item.Id)
  309. }
  310. oldList, err := m.findListByPrimaryKeys(ctx, primaryKeys)
  311. if err != nil {
  312. return err
  313. }
  314. for _, data := range oldList {
  315. sysUserPermIdKey := fmt.Sprintf("%s%v", cacheSysUserPermIdPrefix, data.Id)
  316. sysUserPermUserIdPermIdKey := fmt.Sprintf("%s%v:%v", cacheSysUserPermUserIdPermIdPrefix, data.UserId, data.PermId)
  317. keys = append(keys, sysUserPermIdKey, sysUserPermUserIdPermIdKey)
  318. }
  319. query, vals := m.buildBatchUpdateQuery(dataList)
  320. _, err = m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) {
  321. return conn.ExecCtx(ctx, query, vals...)
  322. }, keys...)
  323. return err
  324. }
  325. func (m *defaultSysUserPermModel) BatchUpdateWithTx(ctx context.Context, session sqlx.Session, dataList []*SysUserPerm) error {
  326. if len(dataList) == 0 {
  327. return nil
  328. }
  329. keys := make([]string, 0)
  330. primaryKeys := make([]interface{}, 0, len(dataList))
  331. for _, item := range dataList {
  332. primaryKeys = append(primaryKeys, item.Id)
  333. }
  334. oldList, err := m.findListByPrimaryKeys(ctx, primaryKeys)
  335. if err != nil {
  336. return err
  337. }
  338. for _, data := range oldList {
  339. sysUserPermIdKey := fmt.Sprintf("%s%v", cacheSysUserPermIdPrefix, data.Id)
  340. sysUserPermUserIdPermIdKey := fmt.Sprintf("%s%v:%v", cacheSysUserPermUserIdPermIdPrefix, data.UserId, data.PermId)
  341. keys = append(keys, sysUserPermIdKey, sysUserPermUserIdPermIdKey)
  342. }
  343. query, vals := m.buildBatchUpdateQuery(dataList)
  344. _, err = m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) {
  345. return session.ExecCtx(ctx, query, vals...)
  346. }, keys...)
  347. return err
  348. }
  349. func (m *defaultSysUserPermModel) buildBatchUpdateQuery(dataList []*SysUserPerm) (string, []interface{}) {
  350. fields := strings.Split(strings.ReplaceAll(sysUserPermRowsWithPlaceHolder, "=?", ""), ",")
  351. listValues := make([][]interface{}, 0, len(dataList))
  352. for _, newData := range dataList {
  353. values := make([]interface{}, 0, len(fields)+1)
  354. values = append(values, newData.UserId, newData.PermId, newData.Effect, newData.CreateTime, newData.UpdateTime, newData.Id)
  355. listValues = append(listValues, values)
  356. }
  357. vals := make([]interface{}, 0, len(dataList)*(len(fields)*2+1))
  358. setClauses := make([]string, len(fields))
  359. for i, field := range fields {
  360. caseClauses := make([]string, len(dataList))
  361. for j, item := range dataList {
  362. caseClauses[j] = "WHEN `id` = ? THEN ?"
  363. vals = append(vals, item.Id, listValues[j][i])
  364. }
  365. setClauses[i] = fmt.Sprintf("%s = CASE %s ELSE %s END", field, strings.Join(caseClauses, " "), field)
  366. }
  367. wherePlaceholders := make([]string, len(dataList))
  368. for i, item := range dataList {
  369. wherePlaceholders[i] = "?"
  370. vals = append(vals, item.Id)
  371. }
  372. query := fmt.Sprintf("UPDATE %s SET %s WHERE `id` IN (%s)", m.table, strings.Join(setClauses, ", "), strings.Join(wherePlaceholders, ","))
  373. return query, vals
  374. }
  375. func (m *defaultSysUserPermModel) formatPrimary(primary any) string {
  376. return fmt.Sprintf("%s%v", cacheSysUserPermIdPrefix, primary)
  377. }
  378. func (m *defaultSysUserPermModel) queryPrimary(ctx context.Context, conn sqlx.SqlConn, v, primary any) error {
  379. query := fmt.Sprintf("SELECT %s FROM %s WHERE `id` = ? LIMIT 1", sysUserPermRows, m.table)
  380. return conn.QueryRowCtx(ctx, v, query, primary)
  381. }
  382. func (m *defaultSysUserPermModel) TableName() string {
  383. return m.table
  384. }
  385. func (m *defaultSysUserPermModel) findListByPrimaryKeys(ctx context.Context, ids []interface{}) ([]*SysUserPerm, error) {
  386. if len(ids) == 0 {
  387. return []*SysUserPerm{}, nil
  388. }
  389. placeholders := make([]string, len(ids))
  390. args := make([]interface{}, len(ids))
  391. for i, id := range ids {
  392. placeholders[i] = "?"
  393. args[i] = id
  394. }
  395. var resp []*SysUserPerm
  396. query := fmt.Sprintf("SELECT %s FROM %s WHERE `id` IN (%s)", sysUserPermRows, m.table, strings.Join(placeholders, ","))
  397. err := m.QueryRowsNoCacheCtx(ctx, &resp, query, args...)
  398. if err != nil {
  399. return nil, err
  400. }
  401. return resp, nil
  402. }
  403. func (m *defaultSysUserPermModel) getPrimaryKeyValue(data *SysUserPerm) interface{} {
  404. return data.Id
  405. }