prod_service.go 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. package services
  2. import (
  3. "context"
  4. "dy-test/dyrpc/services/prod"
  5. )
  6. type ProdService struct {
  7. prod.UnimplementedProdServiceServer
  8. }
  9. func (p *ProdService) GetProdStock(ctx context.Context, request *prod.ProdRequest) (*prod.ProdResponse, error) {
  10. var stock int32
  11. switch request.ProdArea {
  12. case prod.ProdArea_A:
  13. stock = 0
  14. case prod.ProdArea_B:
  15. stock = 10
  16. case prod.ProdArea_C:
  17. stock = 20
  18. }
  19. return &prod.ProdResponse{ProdStock: stock}, nil
  20. }
  21. func (p *ProdService) GetProdStocks(context.Context, *prod.QueryProdStocks) (*prod.ProdStockList, error) {
  22. prdRes := []*prod.ProdResponse{
  23. &prod.ProdResponse{ProdStock: 10},
  24. &prod.ProdResponse{ProdStock: 20},
  25. &prod.ProdResponse{ProdStock: 30},
  26. }
  27. return &prod.ProdStockList{ProdRes: prdRes}, nil
  28. }
  29. func (p *ProdService) GetProdInfo(ctx context.Context, request *prod.ProdRequest) (*prod.ProdModel, error) {
  30. return &prod.ProdModel{
  31. ProdId: request.ProdId,
  32. ProdName: "aaa",
  33. ProdPrice: 20.5,
  34. }, nil
  35. }
  36. func (p *ProdService) mustEmbedUnimplementedProdServiceServer() {
  37. }