Skip to content

Commit

Permalink
optimize get API
Browse files Browse the repository at this point in the history
  • Loading branch information
cherry-yl-sh committed Mar 7, 2024
1 parent 4991f0d commit 2e58ace
Show file tree
Hide file tree
Showing 11 changed files with 53 additions and 46 deletions.
14 changes: 0 additions & 14 deletions common/model/api_request.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,17 +22,3 @@ func (request *TryPayUserOpRequest) Validate() error {
}
return nil
}

type GetSupportEntrypointRequest struct {
}

func (request *GetSupportEntrypointRequest) Validate() error {
return nil
}

type GetSupportStrategyRequest struct {
}

func (request *GetSupportStrategyRequest) Validate() error {
return nil
}
14 changes: 14 additions & 0 deletions common/model/api_response.go
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,17 @@ type PayReceipt struct {
TransactionHash string `json:"transaction_hash"`
Sponsor string `json:"sponsor"`
}

type GetSupportEntryPointResponse struct {
EntrypointDomains []EntrypointDomain `json:"entrypoints"`
}
type EntrypointDomain struct {
Address string `json:"address"`
Desc string `json:"desc"`
NetWork types.NetWork `json:"network"`
StrategyId string `json:"strategy_id"`
}

type GetSupportStrategyResponse struct {
Strategies []Strategy `json:"strategies"`
}
8 changes: 8 additions & 0 deletions docs/docs.go
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,14 @@ const docTemplate = `{
"tags": [
"Sponsor"
],
"parameters": [
{
"type": "string",
"description": "network",
"name": "network",
"in": "query"
}
],
"responses": {
"200": {
"description": "OK"
Expand Down
8 changes: 8 additions & 0 deletions docs/swagger.json
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,14 @@
"tags": [
"Sponsor"
],
"parameters": [
{
"type": "string",
"description": "network",
"name": "network",
"in": "query"
}
],
"responses": {
"200": {
"description": "OK"
Expand Down
5 changes: 5 additions & 0 deletions docs/swagger.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,11 @@ paths:
consumes:
- application/json
description: get the support entrypoint
parameters:
- description: network
in: query
name: network
type: string
responses:
"200":
description: OK
Expand Down
14 changes: 5 additions & 9 deletions rpc_server/api/v1/get_support_entrypoint.go
Original file line number Diff line number Diff line change
Expand Up @@ -14,25 +14,21 @@ import (
// @Accept json
// @Product json
// @Router /api/v1/get-support-entrypoint [GET]
// @Param network query string false "network"
// @Success 200
// @Security JWT
func GetSupportEntrypoint(c *gin.Context) {
request := model.GetSupportEntrypointRequest{}
response := model.GetResponse()
//1. API validate
if err := c.ShouldBindJSON(&request); err != nil {
errStr := fmt.Sprintf("Request Error [%v]", err)
response.SetHttpCode(http.StatusBadRequest).FailCode(c, http.StatusBadRequest, errStr)
return
}
if err := request.Validate(); err != nil {
errStr := fmt.Sprintf("Request Error [%v]", err)
network := c.Query("network")
if network == "" {
errStr := fmt.Sprintf("Request Error [network is empty]")
response.SetHttpCode(http.StatusBadRequest).FailCode(c, http.StatusBadRequest, errStr)
return
}

//2. recall service
result, err := operator.GetSupportEntrypointExecute(&request)
result, err := operator.GetSupportEntrypointExecute(network)
if err != nil {
errStr := fmt.Sprintf("%v", err)
response.SetHttpCode(http.StatusInternalServerError).FailCode(c, http.StatusInternalServerError, errStr)
Expand Down
15 changes: 4 additions & 11 deletions rpc_server/api/v1/get_support_strategy.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,22 +17,15 @@ import (
// @Router /api/v1/get-support-strategy [GET]
// @Security JWT
func GetSupportStrategy(c *gin.Context) {
request := model.GetSupportStrategyRequest{}
response := model.GetResponse()

//1. API validate
if err := c.ShouldBindJSON(&request); err != nil {
errStr := fmt.Sprintf("Request Error [%v]", err)
response.SetHttpCode(http.StatusBadRequest).FailCode(c, http.StatusBadRequest, errStr)
return
}
if err := request.Validate(); err != nil {
errStr := fmt.Sprintf("Request Error [%v]", err)
network := c.Query("network")
if network == "" {
errStr := fmt.Sprintf("Request Error [network is empty]")
response.SetHttpCode(http.StatusBadRequest).FailCode(c, http.StatusBadRequest, errStr)
return
}

if result, err := operator.GetSupportStrategyExecute(&request); err != nil {
if result, err := operator.GetSupportStrategyExecute(network); err != nil {
errStr := fmt.Sprintf("%v", err)
response.SetHttpCode(http.StatusInternalServerError).FailCode(c, http.StatusInternalServerError, errStr)
return
Expand Down
2 changes: 1 addition & 1 deletion rpc_server/api/v1/try_pay_user_operation.go
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ func TryPayUserOperation(c *gin.Context) {
response.SetHttpCode(http.StatusInternalServerError).FailCode(c, http.StatusInternalServerError, errStr)
return
} else {
response.WithData(result).Success(c)
response.WithDataSuccess(c, result)
return
}
}
6 changes: 4 additions & 2 deletions service/operator/get_support_entry_point_execute.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@ package operator

import "AAStarCommunity/EthPaymaster_BackService/common/model"

func GetSupportEntrypointExecute(request *model.GetSupportEntrypointRequest) (*model.Result, error) {
return &model.Result{}, nil
func GetSupportEntrypointExecute(network string) (*model.GetSupportEntryPointResponse, error) {
return &model.GetSupportEntryPointResponse{
EntrypointDomains: make([]model.EntrypointDomain, 0),
}, nil
}
2 changes: 1 addition & 1 deletion service/operator/get_support_strategy_execute.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,6 @@ import (
"AAStarCommunity/EthPaymaster_BackService/common/model"
)

func GetSupportStrategyExecute(request *model.GetSupportStrategyRequest) (*model.Result, error) {
func GetSupportStrategyExecute(network string) (*model.Result, error) {
return &model.Result{}, nil
}
11 changes: 3 additions & 8 deletions service/operator/try_pay_user_op_execute.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ import (
"golang.org/x/xerrors"
)

func TryPayUserOpExecute(request *model.TryPayUserOpRequest) (*model.Result, error) {
func TryPayUserOpExecute(request *model.TryPayUserOpRequest) (*model.TryPayUserOpResponse, error) {
// validator
if err := businessParamValidate(request); err != nil {
return nil, err
Expand Down Expand Up @@ -46,7 +46,7 @@ func TryPayUserOpExecute(request *model.TryPayUserOpRequest) (*model.Result, err
return nil, payError
}
paymasterSignature := getPayMasterSignature(strategy, &userOp)
var result = model.TryPayUserOpResponse{
var result = &model.TryPayUserOpResponse{
StrategyId: strategy.Id,
EntryPointAddress: strategy.EntryPointAddress,
PayMasterAddress: strategy.PayMasterAddress,
Expand All @@ -55,12 +55,7 @@ func TryPayUserOpExecute(request *model.TryPayUserOpRequest) (*model.Result, err
GasInfo: gasResponse,
}

return &model.Result{
Code: 200,
Data: result,
Message: "message",
Cost: "cost",
}, nil
return result, nil
}

func businessParamValidate(request *model.TryPayUserOpRequest) error {
Expand Down

0 comments on commit 2e58ace

Please sign in to comment.