dao.go.tmpl 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. package manage
  2. import (
  3. "demo/configs"
  4. "demo/data/domain"
  5. "demo/data/domain/vo"
  6. )
  7. {{range .gens}}
  8. func Get{{.table.name}}ById(id int64) (domain.{{.table.name}}, error) {
  9. var {{.table.routerName}} domain.{{.table.name}}
  10. _, err := configs.Engine.Table("{{.table.routerName}}").Where("id = ?", id).Get(&{{.table.routerName}})
  11. if err != nil {
  12. return {{.table.routerName}}, err
  13. }
  14. return {{.table.routerName}}, nil
  15. }
  16. func Get{{.table.name}}ListInId(ids []int64) ([]domain.{{.table.name}}, error) {
  17. rows, err := configs.Engine.Table("{{.table.routerName}}").In("id", ids).Rows(&domain.{{.table.name}}{})
  18. if err != nil {
  19. return make([]domain.{{.table.name}}, 0), err
  20. }
  21. defer rows.Close()
  22. var list []domain.{{.table.name}}
  23. for rows.Next() {
  24. var u domain.{{.table.name}}
  25. rows.Scan(&u)
  26. list = append(list, u)
  27. }
  28. return list, nil
  29. }
  30. func Get{{.table.name}}List({{.table.routerName}} domain.{{.table.name}}, pageNum, pageSize int) (vo.BaseListVo, error) {
  31. var arr []domain.{{.table.name}}
  32. Count, err := configs.Engine.Table("{{.table.routerName}}").Limit(pageSize, (pageNum-1)*pageSize).FindAndCount(&arr, &{{.table.routerName}})
  33. var vo vo.BaseListVo
  34. if err != nil {
  35. return vo, err
  36. }
  37. if err != nil {
  38. return vo, err
  39. }
  40. vo.PageNum = pageNum
  41. vo.PageSize = pageSize
  42. vo.List = make([]any, len(arr))
  43. for i, v := range arr {
  44. vo.List[i] = v
  45. }
  46. vo.Total = int(Count)
  47. return vo, nil
  48. }
  49. func Save{{.table.name}}({{.table.routerName}} *domain.{{.table.name}}) (domain.{{.table.name}}, error) {
  50. _, err := configs.Engine.Table("{{.table.routerName}}").Insert(&{{.table.routerName}})
  51. if err != nil {
  52. return *{{.table.routerName}}, err
  53. }
  54. return *{{.table.routerName}}, nil
  55. }
  56. func Set{{.table.name}}({{.table.routerName}}Map map[string]interface{}, id int64) (domain.{{.table.name}}, bool, error) {
  57. var {{.table.routerName}} domain.{{.table.name}}
  58. _, err := configs.Engine.Table("{{.table.routerName}}").Where("id = ?", id).Update({{.table.routerName}}Map)
  59. if err != nil {
  60. return {{.table.routerName}}, false, err
  61. }
  62. return {{.table.routerName}}, true, nil
  63. }
  64. func Delete{{.table.name}}(id int64) bool {
  65. var {{.table.routerName}} domain.{{.table.name}}
  66. i, err := configs.Engine.Table("{{.table.routerName}}").Where("id = ?", id).Delete(&{{.table.routerName}})
  67. if err != nil {
  68. return false
  69. }
  70. return i > 0
  71. }
  72. {{end}}