diff --git a/platformapi/jxprintapi/jxprintapi.go b/platformapi/jxprintapi/jxprintapi.go index a7c386b3..b8195f0d 100644 --- a/platformapi/jxprintapi/jxprintapi.go +++ b/platformapi/jxprintapi/jxprintapi.go @@ -185,7 +185,7 @@ func (a *API) DoPrint(printNo, content string, orderNo int) (msgID string, err e return msgID, err } -func (a *API) GetPrintList(printNo, printKey string, status, isOnline int, page, size int) ([]*PrintList, error) { +func (a *API) GetPrintList(printNo, printKey string, status, isOnline int, page, size int) ([]*PrintList, int64, error) { result, err := a.AccessAPI("QueryPrintList", map[string]interface{}{ "print_no": printNo, "print_key": printKey, @@ -195,13 +195,19 @@ func (a *API) GetPrintList(printNo, printKey string, status, isOnline int, page, "size": size, }) if err != nil { - return nil, err + return nil, 0, err } + list := result["data"].(map[string]interface{}) printList := make([]*PrintList, 0, 0) - if err = utils.Map2StructByJson(result["data"].([]interface{}), &printList, false); err != nil { - return nil, err + byteDate, err := json.Marshal(list["printList"].([]interface{})) + if err != nil { + return nil, 0, err } - return printList, nil + if err = json.Unmarshal(byteDate, &printList); err != nil { + return nil, 0, err + } + + return printList, utils.MustInterface2Int64(list["count"]), nil } type PrintList struct { diff --git a/platformapi/jxprintapi/jxprintapi_test.go b/platformapi/jxprintapi/jxprintapi_test.go index 9e2f0c5e..23ff70fe 100644 --- a/platformapi/jxprintapi/jxprintapi_test.go +++ b/platformapi/jxprintapi/jxprintapi_test.go @@ -1,6 +1,7 @@ package jxprintapi import ( + "fmt" "git.rosy.net.cn/baseapi" "go.uber.org/zap" "testing" @@ -109,5 +110,8 @@ func TestDoPrint(t *testing.T) { } func TestGetPrintList(t *testing.T) { - api.GetPrintList("", "", -9, -9, 0, 30) + list, count, err := api.GetPrintList("", "", -9, -9, 0, 10) + fmt.Println(list) + fmt.Println(count) + fmt.Println(err) }