base_sales_region_detail.go 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. package base
  2. import (
  3. "context"
  4. "github.com/gogf/gf/errors/gerror"
  5. "github.com/gogf/gf/frame/g"
  6. "github.com/gogf/gf/util/gconv"
  7. "dashoo.cn/micro/app/dao/base"
  8. model "dashoo.cn/micro/app/model/base"
  9. "dashoo.cn/micro/app/service"
  10. )
  11. type salesRegionService struct {
  12. *service.ContextService
  13. Dao *base.BaseSalesRegionDao
  14. Detail *base.BaseSalesRegionDetailDao
  15. }
  16. func NewSalesRegionService(ctx context.Context) (svc *salesRegionService, err error) {
  17. svc = new(salesRegionService)
  18. if svc.ContextService, err = svc.Init(ctx); err != nil {
  19. return nil, err
  20. }
  21. svc.Dao = base.NewBaseSalesRegionDao(svc.Tenant)
  22. svc.Detail = base.NewBaseSalesRegionDetailDao(svc.Tenant)
  23. return svc, nil
  24. }
  25. func (p *salesRegionService) GetList(req *model.RegionSeq) (total int, RegionList []*model.BaseSalesRegion, err error) {
  26. regionModel := p.Dao.M
  27. //if req.KeyWords != "" {
  28. // regionModel = regionModel.Where("prod_code", req.KeyWords)
  29. //
  30. //}
  31. total, err = regionModel.Count()
  32. if err != nil {
  33. g.Log().Error(err)
  34. err = gerror.New("获取总行数失败")
  35. return
  36. }
  37. if req.PageNum == 0 {
  38. req.PageNum = 1
  39. }
  40. err = regionModel.Page(req.PageNum, req.PageSize).Order("id asc").Scan(&RegionList)
  41. return
  42. }
  43. //创建区域
  44. func (p *salesRegionService) Create(req *model.AddBaseRegionReq) (err error) {
  45. Model := p.Detail.M
  46. detailData := new(model.BaseSalesRegionDetail)
  47. if err = gconv.Struct(req, detailData); err != nil {
  48. return
  49. }
  50. service.SetCreatedInfo(detailData, p.GetCxtUserId(), p.GetCxtUserName())
  51. detailData.RegionId = req.Id
  52. detailData.ProvinceCode = req.RegionCode
  53. service.SetCreatedInfo(detailData, p.GetCxtUserId(), p.GetCxtUserName())
  54. _, err = Model.Insert(detailData)
  55. if err != nil {
  56. return err
  57. }
  58. return nil
  59. }
  60. //获取区域列表
  61. func (p *salesRegionService) GetRegion() (RegionList []*model.RegionRep) {
  62. regionModel := p.Dao.M
  63. err := regionModel.Order("id asc").Scan(&RegionList)
  64. if err != nil {
  65. g.Log().Error(err)
  66. err = gerror.New("获取数据失败")
  67. return
  68. }
  69. return
  70. }