base_distributor.go 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. package base
  2. import (
  3. "context"
  4. "github.com/gogf/gf/errors/gerror"
  5. "github.com/gogf/gf/frame/g"
  6. "dashoo.cn/micro/app/dao/base"
  7. model "dashoo.cn/micro/app/model/base"
  8. "dashoo.cn/micro/app/service"
  9. )
  10. type distributorService struct {
  11. *service.ContextService
  12. Dao *base.BaseDistributorDao
  13. }
  14. func NewDistributorService(ctx context.Context) (svc *distributorService, err error) {
  15. svc = new(distributorService)
  16. if svc.ContextService, err = svc.Init(ctx); err != nil {
  17. return nil, err
  18. }
  19. svc.Dao = base.NewBaseDistributorDao(svc.Tenant)
  20. return svc, nil
  21. }
  22. //经销商信息列表 distributorList []*model.BaseDistributorRonp
  23. func (d *distributorService) GetList(req *model.BaseDistributorSearchReq) (total int, distributorList []*model.DistributorRonp, err error) {
  24. distributorModel := d.Dao.M
  25. if req.DistCode != "" {
  26. distributorModel = distributorModel.Where("u.dist_code", req.DistCode)
  27. }
  28. if req.DistName != "" {
  29. distributorModel = distributorModel.Where("dist_name like ?", "%"+req.DistName+"%")
  30. }
  31. if req.BelongSale != "" {
  32. distributorModel = distributorModel.Where("belong_sale like ?", "%"+req.BelongSale+"%")
  33. }
  34. if req.ProvinceId != 0 {
  35. distributorModel = distributorModel.Where("province_id ", req.ProvinceId)
  36. }
  37. g.Log().Info("搜索条件", req.BelongSale)
  38. total, err = distributorModel.Count()
  39. if err != nil {
  40. g.Log().Error(err)
  41. err = gerror.New("获取总行数失败")
  42. return
  43. }
  44. if req.PageNum == 0 {
  45. req.PageNum = 1
  46. }
  47. err = distributorModel.Page(req.PageNum, req.PageSize).Order("id desc").Scan(&distributorList)
  48. g.Log().Info("返回列表", distributorList)
  49. return
  50. }