From abb6cc61fb2194a7dffb690c62c46f21d3b85ef0 Mon Sep 17 00:00:00 2001 From: liguanjie Date: Tue, 10 Jun 2025 10:16:15 +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=88=9D=E5=A7=8B=E5=8C=96=202=E3=80=81=E6=96=B0?= =?UTF-8?q?=E5=A2=9Efaq=E8=8E=B7=E5=8F=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- services/cs/client.go | 30 ++++++++++++++++++++++++ services/cs/client_test.go | 26 +++++++++++++++++++++ services/cs/faq.go | 48 ++++++++++++++++++++++++++++++++++++++ 3 files changed, 104 insertions(+) create mode 100644 services/cs/client.go create mode 100644 services/cs/client_test.go create mode 100644 services/cs/faq.go diff --git a/services/cs/client.go b/services/cs/client.go new file mode 100644 index 0000000..704c958 --- /dev/null +++ b/services/cs/client.go @@ -0,0 +1,30 @@ +package cs + +import ( + "golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk" + "golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/requests" +) + +const ( + VERSION = "2025-06-10" +) + +var HOST = requests.Host{ + Default: "cs", +} + +type Client struct { + sdk.Client +} + +func NewClient() (client *Client, err error) { + client = new(Client) + err = client.Init() + return +} + +func (client *Client) GetFaq(req *GetFaqRequest) (resp *GetFaqResponse, err error) { + resp = CreateGetFaqResponse() + err = client.DoAction(req, resp) + return +} diff --git a/services/cs/client_test.go b/services/cs/client_test.go new file mode 100644 index 0000000..765b81d --- /dev/null +++ b/services/cs/client_test.go @@ -0,0 +1,26 @@ +package cs + +import ( + "fmt" + "testing" +) + +/** + * 客服工单服务,单元测试 + */ + +func TestGetFaq(t *testing.T) { + client, newErr := NewClient() + if newErr != nil { + panic(newErr) + } + + req := CreateGetFaqRequest() + info, err := client.GetFaq(req) + if err != nil { + t.Error(err) + return + } + + fmt.Printf("%+v", info) +} diff --git a/services/cs/faq.go b/services/cs/faq.go new file mode 100644 index 0000000..104c94d --- /dev/null +++ b/services/cs/faq.go @@ -0,0 +1,48 @@ +package cs + +import ( + "golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/requests" + "golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/responses" +) + +// Faq 树状结构 +type Faq struct { + Id int64 `json:"id"` + ParentId int64 `json:"parent_id"` + Title string `json:"title"` + Answer string `json:"answer"` + Type int64 `json:"type"` + WorkOrderTemplateId int64 `json:"work_order_template_id"` + CreatedAt string `json:"created_at"` + UpdatedAt string `json:"updated_at"` + ProcessFlow string `json:"process_flow"` + Children []*Faq `json:"children"` +} + +type GetFaqRequest struct { + *requests.RpcRequest +} + +type GetFaqResponse struct { + *responses.BaseResponse + Code int `json:"code"` + Msg string `json:"msg"` + Data Faq `json:"data"` +} + +func CreateGetFaqRequest() (req *GetFaqRequest) { + req = &GetFaqRequest{ + RpcRequest: &requests.RpcRequest{}, + } + req.InitWithApiInfo(HOST, VERSION, "/v1/faq/list") + + req.Method = requests.POST + return +} + +func CreateGetFaqResponse() (response *GetFaqResponse) { + response = &GetFaqResponse{ + BaseResponse: &responses.BaseResponse{}, + } + return +}