findbalancelogic.go 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. package logic
  2. import (
  3. "app.yhyue.com/moapp/jyResourcesCenter/rpc/resourcesCenterclient"
  4. "context"
  5. "log"
  6. "app.yhyue.com/moapp/jyResourcesCenter/api/internal/svc"
  7. "app.yhyue.com/moapp/jyResourcesCenter/api/internal/types"
  8. "github.com/zeromicro/go-zero/core/logx"
  9. )
  10. type FindBalanceLogic struct {
  11. logx.Logger
  12. ctx context.Context
  13. svcCtx *svc.ServiceContext
  14. }
  15. func NewFindBalanceLogic(ctx context.Context, svcCtx *svc.ServiceContext) FindBalanceLogic {
  16. return FindBalanceLogic{
  17. Logger: logx.WithContext(ctx),
  18. ctx: ctx,
  19. svcCtx: svcCtx,
  20. }
  21. }
  22. func (l *FindBalanceLogic) FindBalance(req types.BalanceReq) (*types.BalanceRes, error) {
  23. // todo: add your logic here and delete this line
  24. log.Println(req)
  25. result := &types.BalanceRes{}
  26. lsi := l.svcCtx.ResourcesCenter
  27. resp, err := lsi.FindAccountBalance(l.ctx, &resourcesCenterclient.ResourcesReq{
  28. AccountId: req.AccountId,
  29. ResourceType: req.ResourceType,
  30. })
  31. log.Println(resp)
  32. if err != nil {
  33. return nil, err
  34. }
  35. data := make([]map[string]interface{}, 0)
  36. if len(resp.Data) > 0 {
  37. for _, v := range resp.Data {
  38. data = append(data, map[string]interface{}{
  39. "id": v.Id,
  40. "name": v.Name,
  41. "number": v.Number,
  42. "resourceType": v.ResourceType,
  43. "thirtyNum": v.ThirtyNum,
  44. "number1": v.Number1,
  45. "number2": v.Number2,
  46. "number3": v.Number3,
  47. })
  48. }
  49. }
  50. result.Code = resp.Code
  51. result.Message = resp.Message
  52. result.Data = data
  53. return result, nil
  54. }