sys_post.go 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. package service
  2. import (
  3. comModel "dashoo.cn/micro/app/common/model"
  4. "dashoo.cn/micro/app/dao"
  5. "dashoo.cn/micro/app/model"
  6. "github.com/gogf/gf/errors/gerror"
  7. "github.com/gogf/gf/frame/g"
  8. )
  9. type sysPost struct{}
  10. var SysPost = new(sysPost)
  11. func (s *sysPost) List(req *model.SysPostSearchParams) (total, page int, list []*model.SysPost, err error) {
  12. model := dao.SysPost.M
  13. if req != nil {
  14. if req.PostCode != "" {
  15. model.Where("post_code like ?", "%"+req.PostCode+"%")
  16. }
  17. if req.PostName != "" {
  18. model.Where("post_name like ?", "%"+req.PostName+"%")
  19. }
  20. if req.Status != "" {
  21. model.Where("status", req.Status)
  22. }
  23. }
  24. total, err = model.Count()
  25. if err != nil {
  26. g.Log().Error(err)
  27. err = gerror.New("获取总行数失败")
  28. }
  29. if req.PageNum == 0 {
  30. req.PageNum = 1
  31. }
  32. page = req.PageNum
  33. if req.PageSize == 0 {
  34. req.PageSize = comModel.PageSize
  35. }
  36. err = model.Page(page, req.PageSize).Order("post_sort asc,post_id asc").Scan(&list)
  37. if err != nil {
  38. g.Log().Error(err)
  39. err = gerror.New("获取数据失败")
  40. }
  41. return
  42. }
  43. func (s *sysPost) Add(params *model.SysPostAddParams) error {
  44. _, err := dao.SysPost.Insert(params)
  45. return err
  46. }
  47. func (s *sysPost) GetOneById(id int64) (post *model.SysPost, err error) {
  48. err = dao.SysPost.WherePri(id).Scan(&post)
  49. return
  50. }
  51. func (s *sysPost) Edit(params *model.SysPostEditParams) (err error) {
  52. _, err = dao.SysPost.FieldsEx(dao.SysPost.Columns.Id, dao.SysPost.Columns.CreatedBy).
  53. WherePri(params.PostId).Update(params)
  54. return err
  55. }
  56. func (s *sysPost) Delete(ids []int) error {
  57. _, err := dao.SysPost.Where(dao.SysPost.Columns.Id+" in(?)", ids).Delete()
  58. return err
  59. }