From 58b5061bdfdde4dec7bd6b8005c09553e517cc22 Mon Sep 17 00:00:00 2001 From: renzhiyuan <465386466@qq.com> Date: Tue, 21 Jul 2026 14:47:09 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=96=87=E4=BB=B6:=20ymt=5Fv?= =?UTF-8?q?3=5Fapi/api=5Fkey.go?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ymt_v3_api/api_key.go | 53 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 ymt_v3_api/api_key.go diff --git a/ymt_v3_api/api_key.go b/ymt_v3_api/api_key.go new file mode 100644 index 0000000..b28eb36 --- /dev/null +++ b/ymt_v3_api/api_key.go @@ -0,0 +1,53 @@ +package ymt_v3_api + +import "context" + +// OrderKey 获取券码 +// 请求路由:POST /openapi/v1/key/order +func (c *Client) OrderKey(ctx context.Context, req *OrderKeyRequest) (*OrderKeyResponse, error) { + var resp OrderKeyResponse + if err := c.doRequest(ctx, "/openapi/v1/key/order", req, &resp); err != nil { + return nil, err + } + return &resp, nil +} + +// QueryKey 券码查询 +// 请求路由:POST /openapi/v1/key/query +func (c *Client) QueryKey(ctx context.Context, req *QueryKeyRequest) (*QueryKeyResponse, error) { + var resp QueryKeyResponse + if err := c.doRequest(ctx, "/openapi/v1/key/query", req, &resp); err != nil { + return nil, err + } + return &resp, nil +} + +// DiscardKey 券码作废 +// 请求路由:POST /openapi/v1/key/discard +func (c *Client) DiscardKey(ctx context.Context, req *DiscardKeyRequest) (*DiscardKeyResponse, error) { + var resp DiscardKeyResponse + if err := c.doRequest(ctx, "/openapi/v1/key/discard", req, &resp); err != nil { + return nil, err + } + return &resp, nil +} + +// BatchOrderKey 批量发卡 +// 请求路由:POST /openapi/v1/key/batch_order +func (c *Client) BatchOrderKey(ctx context.Context, req *BatchOrderRequest) (*BatchOrderResponse, error) { + var resp BatchOrderResponse + if err := c.doRequest(ctx, "/openapi/v1/key/batch_order", req, &resp); err != nil { + return nil, err + } + return &resp, nil +} + +// BatchQueryKey 批量查询 +// 请求路由:POST /openapi/v1/key/batch_query +func (c *Client) BatchQueryKey(ctx context.Context, req *BatchQueryRequest) (*BatchQueryResponse, error) { + var resp BatchQueryResponse + if err := c.doRequest(ctx, "/openapi/v1/key/batch_query", req, &resp); err != nil { + return nil, err + } + return &resp, nil +} \ No newline at end of file