From e79d0819ad5cdd3668026a77b022f8eded63f3a0 Mon Sep 17 00:00:00 2001 From: liguanjie Date: Wed, 11 Jun 2025 17:44:00 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90cs=E6=9C=8D=E5=8A=A1=E3=80=91=201?= =?UTF-8?q?=E3=80=81=E5=B7=A5=E5=8D=95=E8=AE=B0=E5=BD=95=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- services/cs/client.go | 5 +++ services/cs/client_test.go | 24 +++++++++++ services/cs/orderrecord.go | 87 ++++++++++++++++++++++++++++++++++++++ 3 files changed, 116 insertions(+) create mode 100644 services/cs/orderrecord.go diff --git a/services/cs/client.go b/services/cs/client.go index c1e7fcb..0efe6bf 100644 --- a/services/cs/client.go +++ b/services/cs/client.go @@ -110,3 +110,8 @@ func (client *Client) OrderFurtherPart(req *OrderFurtherPartRequest) (resp *Orde err = client.DoAction(req, resp) return } +func (client *Client) OrderRecordList(req *GetWorkOrderRecordListRequest) (resp *GetWorkOrderRecordListResponse, err error) { + resp = CreateGetWorkOrderRecordListResponse() + err = client.DoAction(req, resp) + return +} diff --git a/services/cs/client_test.go b/services/cs/client_test.go index 547fad1..0ccc38e 100644 --- a/services/cs/client_test.go +++ b/services/cs/client_test.go @@ -322,3 +322,27 @@ func TestOrderFurtherPart(t *testing.T) { } fmt.Printf(fmt.Sprintf("%v", res)) } + +// 工单列表查询 +func TestGetWorkOrderRecordList(t *testing.T) { + client, newErr := NewClient() + if newErr != nil { + panic(newErr) + } + req := CreateGetWorkOrderRecordListRequest(GetWorkOrderRecordListParam{ + HandleStatus: "", + UserName: "ws45265737", + GameId: 7991, + Page: 1, + PageSize: 20, + }) + res, err := client.OrderRecordList(req) + if err != nil { + t.Error(err) + return + } + if res.Code != 0 { + t.Error("工单列表查询失败") + } + fmt.Printf(fmt.Sprintf("%v", res)) +} diff --git a/services/cs/orderrecord.go b/services/cs/orderrecord.go new file mode 100644 index 0000000..c5154b5 --- /dev/null +++ b/services/cs/orderrecord.go @@ -0,0 +1,87 @@ +package cs + +import ( + "golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/requests" + "golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/responses" +) + +// 获取客服工单列表 + +type GetWorkOrderRecordListParam struct { + OrderNum string `position:"Json" field:"order_num"` + Page int64 `position:"Json" field:"page"` + PageSize int64 `position:"Json" field:"page_size"` + UserName string `position:"Json" field:"user_name"` + GameId int64 `position:"Json" field:"game_id"` + HandleStatus string `position:"Json" field:"handle_status"` +} +type OrderRecord struct { + OrderNum string `json:"order_num"` + WorkOrderTemplateFirstLevelName string `json:"work_order_template_first_level_name"` + UserName string `json:"user_name"` + GameId int64 `json:"game_id"` + GameName string `json:"game_name"` + RoleId string `json:"role_id"` + RoleName string `json:"role_name"` + ServerName string `json:"server_name"` + Detail string `json:"detail"` + ApplyTime string `json:"apply_time"` + HandleStatus string `json:"handle_status"` + HandleStatusName string `json:"handle_status_name"` + IsUrgent int64 `json:"is_urgent"` + IsAppraise int64 `json:"is_appraise"` + FinishTime string `json:"finish_time"` + OrderParts []*OrderSubmitPart `json:"order_parts"` + Id int64 `json:"id"` + WorkOrderTemplateFirstLevelId int64 `json:"work_order_template_first_level_id"` +} + +// PageInfoResp 分页响应 +type PageInfoResp struct { + Page int `json:"page"` + PageSize int `json:"page_size"` + TotalNumber int `json:"total_number"` + TotalPage int `json:"total_page"` +} + +type GetWorkOrderRecordListResponse struct { + *responses.BaseResponse + Code int `json:"code"` + Data struct { + Data []*OrderRecord `json:"data"` + PageInfo *PageInfoResp `json:"page_info"` + } `json:"data"` + Msg string `json:"msg"` + TraceId string `json:"trace_id"` +} +type GetWorkOrderRecordListRequest struct { + *requests.JsonRequest + OrderNum string `position:"Json" field:"order_num"` + Page int64 `position:"Json" field:"page"` + PageSize int64 `position:"Json" field:"page_size"` + UserName string `position:"Json" field:"user_name"` + GameId int64 `position:"Json" field:"game_id"` + HandleStatus string `position:"Json" field:"handle_status"` +} + +func CreateGetWorkOrderRecordListRequest(param GetWorkOrderRecordListParam) (req *GetWorkOrderRecordListRequest) { + req = &GetWorkOrderRecordListRequest{ + JsonRequest: &requests.JsonRequest{}, + } + req.OrderNum = param.OrderNum + req.Page = param.Page + req.PageSize = param.PageSize + req.UserName = param.UserName + req.GameId = param.GameId + req.HandleStatus = param.HandleStatus + + req.InitWithApiInfo(HOST, VERSION, "/v1/work_order/order_record_list") + req.Method = requests.POST + return +} +func CreateGetWorkOrderRecordListResponse() (resp *GetWorkOrderRecordListResponse) { + resp = &GetWorkOrderRecordListResponse{ + BaseResponse: &responses.BaseResponse{}, + } + return +}