// Copyright 2021 Tencent Inc. All rights reserved. // // 微信支付分停车服务 // // 微信支付分停车服务 扣费API // // API version: 1.2.1 // Code generated by WechatPay APIv3 Generator based on [OpenAPI Generator](https://openapi-generator.tech); DO NOT EDIT. package wexinpayscoreparking import ( "context" "fmt" nethttp "net/http" neturl "net/url" "git.nanodreamtech.com/sg/wechatpay-go/core" "git.nanodreamtech.com/sg/wechatpay-go/core/consts" "git.nanodreamtech.com/sg/wechatpay-go/services" ) type ServicesApiService services.Service // QueryPlateService 查询车牌服务开通信息 // // 该接口仅支持停车场景,商户首先请求查询车牌服务开通信息接口,确认该车牌,是否被该用户开通车主服务,以及车牌具体服务开通状态,包括正常服务,和暂停服务,以及未开通三个状态。 func (a *ServicesApiService) QueryPlateService(ctx context.Context, req QueryPlateServiceRequest) (resp *PlateService, result *core.APIResult, err error) { var ( localVarHTTPMethod = nethttp.MethodGet localVarPostBody interface{} localVarQueryParams neturl.Values localVarHeaderParams = nethttp.Header{} ) localVarPath := consts.WechatPayAPIServer + "/v3/vehicle/parking/services/find" // Make sure All Required Params are properly set if req.Appid == nil { return nil, nil, fmt.Errorf("field `Appid` is required and must be specified in QueryPlateServiceRequest") } if req.PlateNumber == nil { return nil, nil, fmt.Errorf("field `PlateNumber` is required and must be specified in QueryPlateServiceRequest") } if req.Openid == nil { return nil, nil, fmt.Errorf("field `Openid` is required and must be specified in QueryPlateServiceRequest") } if req.PlateColor == nil { return nil, nil, fmt.Errorf("field `PlateColor` is required and must be specified in QueryPlateServiceRequest") } // Setup Query Params localVarQueryParams = neturl.Values{} localVarQueryParams.Add("appid", core.ParameterToString(*req.Appid, "")) if req.SubMchid != nil { localVarQueryParams.Add("sub_mchid", core.ParameterToString(*req.SubMchid, "")) } localVarQueryParams.Add("plate_number", core.ParameterToString(*req.PlateNumber, "")) localVarQueryParams.Add("openid", core.ParameterToString(*req.Openid, "")) localVarQueryParams.Add("plate_color", core.ParameterToString(*req.PlateColor, "")) // Determine the Content-Type Header localVarHTTPContentTypes := []string{} // Setup Content-Type localVarHTTPContentType := core.SelectHeaderContentType(localVarHTTPContentTypes) // Perform Http Request result, err = a.Client.Request(ctx, localVarHTTPMethod, localVarPath, localVarHeaderParams, localVarQueryParams, localVarPostBody, localVarHTTPContentType) if err != nil { return nil, result, err } // Extract PlateService from Http Response resp = new(PlateService) err = core.UnMarshalResponse(result.Response, resp) if err != nil { return nil, result, err } return resp, result, nil }