base_distributor.go 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. package base
  2. import (
  3. "context"
  4. "fmt"
  5. "github.com/gogf/gf/errors/gerror"
  6. "github.com/gogf/gf/frame/g"
  7. "github.com/gogf/gf/util/gconv"
  8. "dashoo.cn/micro/app/dao/base"
  9. model "dashoo.cn/micro/app/model/base"
  10. "dashoo.cn/micro/app/service"
  11. )
  12. type distributorService struct {
  13. *service.ContextService
  14. Dao *base.BaseDistributorDao
  15. }
  16. func NewDistributorService(ctx context.Context) (svc *distributorService, err error) {
  17. svc = new(distributorService)
  18. if svc.ContextService, err = svc.Init(ctx); err != nil {
  19. return nil, err
  20. }
  21. svc.Dao = base.NewBaseDistributorDao(svc.Tenant)
  22. return svc, nil
  23. }
  24. //经销商信息列表
  25. func (d *distributorService) GetList(req *model.BaseDistributorSearchReq) (total int, distributorList []*model.DistributorRonp, err error) {
  26. distributorModel := d.Dao.M
  27. if req.DistCode != "" {
  28. distributorModel = distributorModel.Where(d.Dao.Columns.DistCode+"like ?", "%"+req.DistCode+"%")
  29. }
  30. if req.DistName != "" {
  31. distributorModel = distributorModel.Where(d.Dao.Columns.DistName+"like ?", "%"+req.DistName+"%")
  32. }
  33. if req.BelongSale != "" {
  34. distributorModel = distributorModel.Where(d.Dao.Columns.BelongSale+"like ?", "%"+req.BelongSale+"%")
  35. }
  36. if req.ProvinceId > 0 {
  37. distributorModel = distributorModel.Where(d.Dao.Columns.ProvinceId+" in (?)", req.ProvinceId)
  38. }
  39. g.Log().Info("搜索条件", req.ProvinceId)
  40. total, err = distributorModel.Count()
  41. if err != nil {
  42. g.Log().Error(err)
  43. err = gerror.New("获取总行数失败")
  44. return
  45. }
  46. if req.PageNum == 0 {
  47. req.PageNum = 1
  48. }
  49. err = distributorModel.Page(req.PageNum, req.PageSize).Order("id desc").Scan(&distributorList)
  50. g.Log().Info("返回列表", distributorList)
  51. return
  52. }
  53. //经销商创建
  54. func (d *distributorService) Create(req *model.AddDistributor) (err error) {
  55. DistributorData := new(model.BaseDistributor)
  56. if err = gconv.Struct(req, DistributorData); err != nil {
  57. return
  58. }
  59. service.SetCreatedInfo(DistributorData, d.GetCxtUserId(), d.GetCxtUserName())
  60. Model := d.Dao.M
  61. res, err := Model.Insert(DistributorData)
  62. if err != nil {
  63. return
  64. }
  65. InsertId, _ := res.LastInsertId()
  66. fmt.Println(InsertId)
  67. return
  68. }