employee.gen.go 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477
  1. // Code generated by gorm.io/gen. DO NOT EDIT.
  2. // Code generated by gorm.io/gen. DO NOT EDIT.
  3. // Code generated by gorm.io/gen. DO NOT EDIT.
  4. package query
  5. import (
  6. "context"
  7. "gorm.io/gorm"
  8. "gorm.io/gorm/clause"
  9. "gorm.io/gorm/schema"
  10. "gorm.io/gen"
  11. "gorm.io/gen/field"
  12. "gorm.io/plugin/dbresolver"
  13. "wechat-api/database/dao/wechat/model"
  14. )
  15. func newEmployee(db *gorm.DB, opts ...gen.DOOption) employee {
  16. _employee := employee{}
  17. _employee.employeeDo.UseDB(db, opts...)
  18. _employee.employeeDo.UseModel(&model.Employee{})
  19. tableName := _employee.employeeDo.TableName()
  20. _employee.ALL = field.NewAsterisk(tableName)
  21. _employee.ID = field.NewInt64(tableName, "id")
  22. _employee.CreatedAt = field.NewTime(tableName, "created_at")
  23. _employee.UpdatedAt = field.NewTime(tableName, "updated_at")
  24. _employee.DeletedAt = field.NewField(tableName, "deleted_at")
  25. _employee.Title = field.NewString(tableName, "title")
  26. _employee.Avatar = field.NewString(tableName, "avatar")
  27. _employee.Tags = field.NewString(tableName, "tags")
  28. _employee.HireCount = field.NewInt64(tableName, "hire_count")
  29. _employee.ServiceCount = field.NewInt64(tableName, "service_count")
  30. _employee.AchievementCount = field.NewInt64(tableName, "achievement_count")
  31. _employee.Intro = field.NewString(tableName, "intro")
  32. _employee.Estimate = field.NewString(tableName, "estimate")
  33. _employee.Skill = field.NewString(tableName, "skill")
  34. _employee.AbilityType = field.NewString(tableName, "ability_type")
  35. _employee.Scene = field.NewString(tableName, "scene")
  36. _employee.SwitchIn = field.NewString(tableName, "switch_in")
  37. _employee.Tutorial = field.NewString(tableName, "tutorial")
  38. _employee.VideoURL = field.NewString(tableName, "video_url")
  39. _employee.OrganizationID = field.NewInt64(tableName, "organization_id")
  40. _employee.CategoryID = field.NewInt64(tableName, "category_id")
  41. _employee.APIBase = field.NewString(tableName, "api_base")
  42. _employee.APIKey = field.NewString(tableName, "api_key")
  43. _employee.IsVip = field.NewInt64(tableName, "is_vip")
  44. _employee.AiInfo = field.NewString(tableName, "ai_info")
  45. _employee.ChatURL = field.NewString(tableName, "chat_url")
  46. _employee.fillFieldMap()
  47. return _employee
  48. }
  49. // employee 数字员工表
  50. type employee struct {
  51. employeeDo
  52. ALL field.Asterisk
  53. ID field.Int64 // ID
  54. CreatedAt field.Time // 创建时间
  55. UpdatedAt field.Time // 修改时间
  56. DeletedAt field.Field // 删除时间
  57. Title field.String // 标题
  58. Avatar field.String // 头像URL
  59. Tags field.String // Tag列表 用,连接多个
  60. HireCount field.Int64 // 被雇佣次数
  61. ServiceCount field.Int64 // 服务次数
  62. AchievementCount field.Int64 // 业绩单数
  63. Intro field.String // 个人介绍
  64. Estimate field.String // 自我评价
  65. Skill field.String // 技能卡
  66. AbilityType field.String // 能力类型 用,连接
  67. Scene field.String // 使用场景 用,连接
  68. SwitchIn field.String // 支持接入 用,连接
  69. Tutorial field.String // 使用教程
  70. VideoURL field.String // 视频
  71. OrganizationID field.Int64 // 机构ID
  72. CategoryID field.Int64 // 分类ID
  73. APIBase field.String
  74. APIKey field.String
  75. IsVip field.Int64 // 是否VIP:0-否 1-是
  76. AiInfo field.String // AI信息
  77. ChatURL field.String // 聊天URL
  78. fieldMap map[string]field.Expr
  79. }
  80. func (e employee) Table(newTableName string) *employee {
  81. e.employeeDo.UseTable(newTableName)
  82. return e.updateTableName(newTableName)
  83. }
  84. func (e employee) As(alias string) *employee {
  85. e.employeeDo.DO = *(e.employeeDo.As(alias).(*gen.DO))
  86. return e.updateTableName(alias)
  87. }
  88. func (e *employee) updateTableName(table string) *employee {
  89. e.ALL = field.NewAsterisk(table)
  90. e.ID = field.NewInt64(table, "id")
  91. e.CreatedAt = field.NewTime(table, "created_at")
  92. e.UpdatedAt = field.NewTime(table, "updated_at")
  93. e.DeletedAt = field.NewField(table, "deleted_at")
  94. e.Title = field.NewString(table, "title")
  95. e.Avatar = field.NewString(table, "avatar")
  96. e.Tags = field.NewString(table, "tags")
  97. e.HireCount = field.NewInt64(table, "hire_count")
  98. e.ServiceCount = field.NewInt64(table, "service_count")
  99. e.AchievementCount = field.NewInt64(table, "achievement_count")
  100. e.Intro = field.NewString(table, "intro")
  101. e.Estimate = field.NewString(table, "estimate")
  102. e.Skill = field.NewString(table, "skill")
  103. e.AbilityType = field.NewString(table, "ability_type")
  104. e.Scene = field.NewString(table, "scene")
  105. e.SwitchIn = field.NewString(table, "switch_in")
  106. e.Tutorial = field.NewString(table, "tutorial")
  107. e.VideoURL = field.NewString(table, "video_url")
  108. e.OrganizationID = field.NewInt64(table, "organization_id")
  109. e.CategoryID = field.NewInt64(table, "category_id")
  110. e.APIBase = field.NewString(table, "api_base")
  111. e.APIKey = field.NewString(table, "api_key")
  112. e.IsVip = field.NewInt64(table, "is_vip")
  113. e.AiInfo = field.NewString(table, "ai_info")
  114. e.ChatURL = field.NewString(table, "chat_url")
  115. e.fillFieldMap()
  116. return e
  117. }
  118. func (e *employee) GetFieldByName(fieldName string) (field.OrderExpr, bool) {
  119. _f, ok := e.fieldMap[fieldName]
  120. if !ok || _f == nil {
  121. return nil, false
  122. }
  123. _oe, ok := _f.(field.OrderExpr)
  124. return _oe, ok
  125. }
  126. func (e *employee) fillFieldMap() {
  127. e.fieldMap = make(map[string]field.Expr, 25)
  128. e.fieldMap["id"] = e.ID
  129. e.fieldMap["created_at"] = e.CreatedAt
  130. e.fieldMap["updated_at"] = e.UpdatedAt
  131. e.fieldMap["deleted_at"] = e.DeletedAt
  132. e.fieldMap["title"] = e.Title
  133. e.fieldMap["avatar"] = e.Avatar
  134. e.fieldMap["tags"] = e.Tags
  135. e.fieldMap["hire_count"] = e.HireCount
  136. e.fieldMap["service_count"] = e.ServiceCount
  137. e.fieldMap["achievement_count"] = e.AchievementCount
  138. e.fieldMap["intro"] = e.Intro
  139. e.fieldMap["estimate"] = e.Estimate
  140. e.fieldMap["skill"] = e.Skill
  141. e.fieldMap["ability_type"] = e.AbilityType
  142. e.fieldMap["scene"] = e.Scene
  143. e.fieldMap["switch_in"] = e.SwitchIn
  144. e.fieldMap["tutorial"] = e.Tutorial
  145. e.fieldMap["video_url"] = e.VideoURL
  146. e.fieldMap["organization_id"] = e.OrganizationID
  147. e.fieldMap["category_id"] = e.CategoryID
  148. e.fieldMap["api_base"] = e.APIBase
  149. e.fieldMap["api_key"] = e.APIKey
  150. e.fieldMap["is_vip"] = e.IsVip
  151. e.fieldMap["ai_info"] = e.AiInfo
  152. e.fieldMap["chat_url"] = e.ChatURL
  153. }
  154. func (e employee) clone(db *gorm.DB) employee {
  155. e.employeeDo.ReplaceConnPool(db.Statement.ConnPool)
  156. return e
  157. }
  158. func (e employee) replaceDB(db *gorm.DB) employee {
  159. e.employeeDo.ReplaceDB(db)
  160. return e
  161. }
  162. type employeeDo struct{ gen.DO }
  163. type IEmployeeDo interface {
  164. gen.SubQuery
  165. Debug() IEmployeeDo
  166. WithContext(ctx context.Context) IEmployeeDo
  167. WithResult(fc func(tx gen.Dao)) gen.ResultInfo
  168. ReplaceDB(db *gorm.DB)
  169. ReadDB() IEmployeeDo
  170. WriteDB() IEmployeeDo
  171. As(alias string) gen.Dao
  172. Session(config *gorm.Session) IEmployeeDo
  173. Columns(cols ...field.Expr) gen.Columns
  174. Clauses(conds ...clause.Expression) IEmployeeDo
  175. Not(conds ...gen.Condition) IEmployeeDo
  176. Or(conds ...gen.Condition) IEmployeeDo
  177. Select(conds ...field.Expr) IEmployeeDo
  178. Where(conds ...gen.Condition) IEmployeeDo
  179. Order(conds ...field.Expr) IEmployeeDo
  180. Distinct(cols ...field.Expr) IEmployeeDo
  181. Omit(cols ...field.Expr) IEmployeeDo
  182. Join(table schema.Tabler, on ...field.Expr) IEmployeeDo
  183. LeftJoin(table schema.Tabler, on ...field.Expr) IEmployeeDo
  184. RightJoin(table schema.Tabler, on ...field.Expr) IEmployeeDo
  185. Group(cols ...field.Expr) IEmployeeDo
  186. Having(conds ...gen.Condition) IEmployeeDo
  187. Limit(limit int) IEmployeeDo
  188. Offset(offset int) IEmployeeDo
  189. Count() (count int64, err error)
  190. Scopes(funcs ...func(gen.Dao) gen.Dao) IEmployeeDo
  191. Unscoped() IEmployeeDo
  192. Create(values ...*model.Employee) error
  193. CreateInBatches(values []*model.Employee, batchSize int) error
  194. Save(values ...*model.Employee) error
  195. First() (*model.Employee, error)
  196. Take() (*model.Employee, error)
  197. Last() (*model.Employee, error)
  198. Find() ([]*model.Employee, error)
  199. FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.Employee, err error)
  200. FindInBatches(result *[]*model.Employee, batchSize int, fc func(tx gen.Dao, batch int) error) error
  201. Pluck(column field.Expr, dest interface{}) error
  202. Delete(...*model.Employee) (info gen.ResultInfo, err error)
  203. Update(column field.Expr, value interface{}) (info gen.ResultInfo, err error)
  204. UpdateSimple(columns ...field.AssignExpr) (info gen.ResultInfo, err error)
  205. Updates(value interface{}) (info gen.ResultInfo, err error)
  206. UpdateColumn(column field.Expr, value interface{}) (info gen.ResultInfo, err error)
  207. UpdateColumnSimple(columns ...field.AssignExpr) (info gen.ResultInfo, err error)
  208. UpdateColumns(value interface{}) (info gen.ResultInfo, err error)
  209. UpdateFrom(q gen.SubQuery) gen.Dao
  210. Attrs(attrs ...field.AssignExpr) IEmployeeDo
  211. Assign(attrs ...field.AssignExpr) IEmployeeDo
  212. Joins(fields ...field.RelationField) IEmployeeDo
  213. Preload(fields ...field.RelationField) IEmployeeDo
  214. FirstOrInit() (*model.Employee, error)
  215. FirstOrCreate() (*model.Employee, error)
  216. FindByPage(offset int, limit int) (result []*model.Employee, count int64, err error)
  217. ScanByPage(result interface{}, offset int, limit int) (count int64, err error)
  218. Scan(result interface{}) (err error)
  219. Returning(value interface{}, columns ...string) IEmployeeDo
  220. UnderlyingDB() *gorm.DB
  221. schema.Tabler
  222. }
  223. func (e employeeDo) Debug() IEmployeeDo {
  224. return e.withDO(e.DO.Debug())
  225. }
  226. func (e employeeDo) WithContext(ctx context.Context) IEmployeeDo {
  227. return e.withDO(e.DO.WithContext(ctx))
  228. }
  229. func (e employeeDo) ReadDB() IEmployeeDo {
  230. return e.Clauses(dbresolver.Read)
  231. }
  232. func (e employeeDo) WriteDB() IEmployeeDo {
  233. return e.Clauses(dbresolver.Write)
  234. }
  235. func (e employeeDo) Session(config *gorm.Session) IEmployeeDo {
  236. return e.withDO(e.DO.Session(config))
  237. }
  238. func (e employeeDo) Clauses(conds ...clause.Expression) IEmployeeDo {
  239. return e.withDO(e.DO.Clauses(conds...))
  240. }
  241. func (e employeeDo) Returning(value interface{}, columns ...string) IEmployeeDo {
  242. return e.withDO(e.DO.Returning(value, columns...))
  243. }
  244. func (e employeeDo) Not(conds ...gen.Condition) IEmployeeDo {
  245. return e.withDO(e.DO.Not(conds...))
  246. }
  247. func (e employeeDo) Or(conds ...gen.Condition) IEmployeeDo {
  248. return e.withDO(e.DO.Or(conds...))
  249. }
  250. func (e employeeDo) Select(conds ...field.Expr) IEmployeeDo {
  251. return e.withDO(e.DO.Select(conds...))
  252. }
  253. func (e employeeDo) Where(conds ...gen.Condition) IEmployeeDo {
  254. return e.withDO(e.DO.Where(conds...))
  255. }
  256. func (e employeeDo) Order(conds ...field.Expr) IEmployeeDo {
  257. return e.withDO(e.DO.Order(conds...))
  258. }
  259. func (e employeeDo) Distinct(cols ...field.Expr) IEmployeeDo {
  260. return e.withDO(e.DO.Distinct(cols...))
  261. }
  262. func (e employeeDo) Omit(cols ...field.Expr) IEmployeeDo {
  263. return e.withDO(e.DO.Omit(cols...))
  264. }
  265. func (e employeeDo) Join(table schema.Tabler, on ...field.Expr) IEmployeeDo {
  266. return e.withDO(e.DO.Join(table, on...))
  267. }
  268. func (e employeeDo) LeftJoin(table schema.Tabler, on ...field.Expr) IEmployeeDo {
  269. return e.withDO(e.DO.LeftJoin(table, on...))
  270. }
  271. func (e employeeDo) RightJoin(table schema.Tabler, on ...field.Expr) IEmployeeDo {
  272. return e.withDO(e.DO.RightJoin(table, on...))
  273. }
  274. func (e employeeDo) Group(cols ...field.Expr) IEmployeeDo {
  275. return e.withDO(e.DO.Group(cols...))
  276. }
  277. func (e employeeDo) Having(conds ...gen.Condition) IEmployeeDo {
  278. return e.withDO(e.DO.Having(conds...))
  279. }
  280. func (e employeeDo) Limit(limit int) IEmployeeDo {
  281. return e.withDO(e.DO.Limit(limit))
  282. }
  283. func (e employeeDo) Offset(offset int) IEmployeeDo {
  284. return e.withDO(e.DO.Offset(offset))
  285. }
  286. func (e employeeDo) Scopes(funcs ...func(gen.Dao) gen.Dao) IEmployeeDo {
  287. return e.withDO(e.DO.Scopes(funcs...))
  288. }
  289. func (e employeeDo) Unscoped() IEmployeeDo {
  290. return e.withDO(e.DO.Unscoped())
  291. }
  292. func (e employeeDo) Create(values ...*model.Employee) error {
  293. if len(values) == 0 {
  294. return nil
  295. }
  296. return e.DO.Create(values)
  297. }
  298. func (e employeeDo) CreateInBatches(values []*model.Employee, batchSize int) error {
  299. return e.DO.CreateInBatches(values, batchSize)
  300. }
  301. // Save : !!! underlying implementation is different with GORM
  302. // The method is equivalent to executing the statement: db.Clauses(clause.OnConflict{UpdateAll: true}).Create(values)
  303. func (e employeeDo) Save(values ...*model.Employee) error {
  304. if len(values) == 0 {
  305. return nil
  306. }
  307. return e.DO.Save(values)
  308. }
  309. func (e employeeDo) First() (*model.Employee, error) {
  310. if result, err := e.DO.First(); err != nil {
  311. return nil, err
  312. } else {
  313. return result.(*model.Employee), nil
  314. }
  315. }
  316. func (e employeeDo) Take() (*model.Employee, error) {
  317. if result, err := e.DO.Take(); err != nil {
  318. return nil, err
  319. } else {
  320. return result.(*model.Employee), nil
  321. }
  322. }
  323. func (e employeeDo) Last() (*model.Employee, error) {
  324. if result, err := e.DO.Last(); err != nil {
  325. return nil, err
  326. } else {
  327. return result.(*model.Employee), nil
  328. }
  329. }
  330. func (e employeeDo) Find() ([]*model.Employee, error) {
  331. result, err := e.DO.Find()
  332. return result.([]*model.Employee), err
  333. }
  334. func (e employeeDo) FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.Employee, err error) {
  335. buf := make([]*model.Employee, 0, batchSize)
  336. err = e.DO.FindInBatches(&buf, batchSize, func(tx gen.Dao, batch int) error {
  337. defer func() { results = append(results, buf...) }()
  338. return fc(tx, batch)
  339. })
  340. return results, err
  341. }
  342. func (e employeeDo) FindInBatches(result *[]*model.Employee, batchSize int, fc func(tx gen.Dao, batch int) error) error {
  343. return e.DO.FindInBatches(result, batchSize, fc)
  344. }
  345. func (e employeeDo) Attrs(attrs ...field.AssignExpr) IEmployeeDo {
  346. return e.withDO(e.DO.Attrs(attrs...))
  347. }
  348. func (e employeeDo) Assign(attrs ...field.AssignExpr) IEmployeeDo {
  349. return e.withDO(e.DO.Assign(attrs...))
  350. }
  351. func (e employeeDo) Joins(fields ...field.RelationField) IEmployeeDo {
  352. for _, _f := range fields {
  353. e = *e.withDO(e.DO.Joins(_f))
  354. }
  355. return &e
  356. }
  357. func (e employeeDo) Preload(fields ...field.RelationField) IEmployeeDo {
  358. for _, _f := range fields {
  359. e = *e.withDO(e.DO.Preload(_f))
  360. }
  361. return &e
  362. }
  363. func (e employeeDo) FirstOrInit() (*model.Employee, error) {
  364. if result, err := e.DO.FirstOrInit(); err != nil {
  365. return nil, err
  366. } else {
  367. return result.(*model.Employee), nil
  368. }
  369. }
  370. func (e employeeDo) FirstOrCreate() (*model.Employee, error) {
  371. if result, err := e.DO.FirstOrCreate(); err != nil {
  372. return nil, err
  373. } else {
  374. return result.(*model.Employee), nil
  375. }
  376. }
  377. func (e employeeDo) FindByPage(offset int, limit int) (result []*model.Employee, count int64, err error) {
  378. result, err = e.Offset(offset).Limit(limit).Find()
  379. if err != nil {
  380. return
  381. }
  382. if size := len(result); 0 < limit && 0 < size && size < limit {
  383. count = int64(size + offset)
  384. return
  385. }
  386. count, err = e.Offset(-1).Limit(-1).Count()
  387. return
  388. }
  389. func (e employeeDo) ScanByPage(result interface{}, offset int, limit int) (count int64, err error) {
  390. count, err = e.Count()
  391. if err != nil {
  392. return
  393. }
  394. err = e.Offset(offset).Limit(limit).Scan(result)
  395. return
  396. }
  397. func (e employeeDo) Scan(result interface{}) (err error) {
  398. return e.DO.Scan(result)
  399. }
  400. func (e employeeDo) Delete(models ...*model.Employee) (result gen.ResultInfo, err error) {
  401. return e.DO.Delete(models)
  402. }
  403. func (e *employeeDo) withDO(do gen.Dao) *employeeDo {
  404. e.DO = *do.(*gen.DO)
  405. return e
  406. }