fix(camel_oil_api): update API endpoints and improve logging in order query
- Change query and recharge URLs from recharge3.bac365.com to app.bac365.com - Remove redundant glog info and debug logs to reduce log noise - Log full response string before unmarshalling JSON to aid debugging - Use request data directly when posting instead of marshalled body - Add new unit test for CronOrderPaymentCheckTask to improve coverage - Maintain detailed prefetch order logs for key steps and errors
This commit is contained in:
13
internal/logic/camel_oil/cron_tasks_test.go
Normal file
13
internal/logic/camel_oil/cron_tasks_test.go
Normal file
@@ -0,0 +1,13 @@
|
||||
package camel_oil
|
||||
|
||||
import (
|
||||
"github.com/gogf/gf/v2/os/gctx"
|
||||
"github.com/gogf/gf/v2/os/gtime"
|
||||
"kami/internal/service"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func Test_sCamelOil_CronOrderPaymentCheckTask(t *testing.T) {
|
||||
_ = service.ProxyPool().InitStrategy(gctx.GetInitCtx(), "http://api.dmdaili.com/dmgetip.asp?apikey=42bab0ac&pwd=1b567c2f286a08e391b5805565fa0882&getnum=1&httptype=1&geshi=1&fenge=3&fengefu=&operate=all", gtime.M)
|
||||
_ = (&sCamelOil{}).CronOrderPaymentCheckTask(t.Context())
|
||||
}
|
||||
@@ -459,7 +459,6 @@ func (c *Client) CreateCamelOilOrder(ctx context.Context, phone, token string, a
|
||||
// - result == nil && err == nil: 查询成功,但未找到订单
|
||||
// - result == nil && err != nil: 查询失败,有错误
|
||||
func (c *Client) QueryOrder(ctx context.Context, phone, token, orderId string) (result *QueryResult, err error) {
|
||||
glog.Infof(ctx, "开始查询订单 - 订单ID: %s", orderId)
|
||||
service.CamelOil().SavePrefetchOrderLog(ctx, fmt.Sprintf("查询订单开始 - 订单ID: %s", orderId))
|
||||
|
||||
c.Client.SetHeader("Authorization", "Bearer "+c.getAuth(ctx, token))
|
||||
@@ -468,7 +467,6 @@ func (c *Client) QueryOrder(ctx context.Context, phone, token, orderId string) (
|
||||
maxPages := 100
|
||||
pageNum := 1
|
||||
|
||||
glog.Infof(ctx, "开始分页查询订单 %s,每页50条记录", orderId)
|
||||
service.CamelOil().SavePrefetchOrderLog(ctx, fmt.Sprintf("开始分页查询 - 订单ID: %s, 每页大小: 50", orderId))
|
||||
|
||||
for pageNum <= maxPages {
|
||||
@@ -492,12 +490,7 @@ func (c *Client) QueryOrder(ctx context.Context, phone, token, orderId string) (
|
||||
|
||||
// 记录请求数据
|
||||
reqData, _ := json.Marshal(reqBody)
|
||||
glog.Debugf(ctx, "查询订单第%d页请求数据: %s", pageNum, string(reqData))
|
||||
if pageNum <= 3 { // 只记录前3页的详细日志
|
||||
service.CamelOil().SavePrefetchOrderLog(ctx, fmt.Sprintf("查询订单第%d页 - 订单ID: %s, 请求数据: %s", pageNum, orderId, string(reqData)))
|
||||
}
|
||||
|
||||
respData, err := c.Client.Post(ctx, "https://recharge3.bac365.com/camel_wechat_mini_oil_server/eCardMall/queryWechatUserECards", reqBody)
|
||||
respData, err := c.Client.Post(ctx, "https://app.bac365.com/camel_wechat_mini_oil_server/eCardMall/queryWechatUserECards", reqData)
|
||||
if err != nil {
|
||||
glog.Errorf(ctx, "查询卡券失败,第%d页,订单ID: %s,错误: %v", pageNum, orderId, err)
|
||||
service.CamelOil().SavePrefetchOrderLog(ctx, fmt.Sprintf("查询订单请求失败 - 订单ID: %s, 第%d页, 错误: %v", orderId, pageNum, err))
|
||||
@@ -518,22 +511,19 @@ func (c *Client) QueryOrder(ctx context.Context, phone, token, orderId string) (
|
||||
ECardCode string `json:"ecardCode"`
|
||||
} `json:"cards,omitempty"`
|
||||
}{}
|
||||
|
||||
err = json.Unmarshal(respData.ReadAll(), &respStruct)
|
||||
respDataResult := respData.ReadAllString()
|
||||
glog.Infof(ctx, "查询订单第%d页响应 - 订单ID: %s, 响应: %s", pageNum, orderId, respDataResult)
|
||||
err = json.Unmarshal([]byte(respDataResult), &respStruct)
|
||||
if err != nil {
|
||||
glog.Errorf(ctx, "解析查询响应失败,第%d页,订单ID: %s,错误: %v", pageNum, orderId, err)
|
||||
service.CamelOil().SavePrefetchOrderLog(ctx, fmt.Sprintf("解析查询响应失败 - 订单ID: %s, 第%d页, 错误: %v", orderId, pageNum, err))
|
||||
return nil, err
|
||||
}
|
||||
|
||||
glog.Debugf(ctx, "查询订单第%d页完成,找到%d条卡券记录", pageNum, len(respStruct.Cards))
|
||||
if pageNum <= 3 {
|
||||
service.CamelOil().SavePrefetchOrderLog(ctx, fmt.Sprintf("查询订单第%d页完成 - 订单ID: %s, 卡券数量: %d", pageNum, orderId, len(respStruct.Cards)))
|
||||
}
|
||||
service.CamelOil().SavePrefetchOrderLog(ctx, fmt.Sprintf("查询订单第%d页完成 - 订单ID: %s, 卡券数量: %d", pageNum, orderId, len(respStruct.Cards)))
|
||||
|
||||
// 如果当前页没有卡券数据,说明已查询所有数据
|
||||
if len(respStruct.Cards) == 0 {
|
||||
glog.Infof(ctx, "查询订单%s已完成,共查询%d页,未找到", orderId, pageNum-1)
|
||||
service.CamelOil().SavePrefetchOrderLog(ctx, fmt.Sprintf("查询订单完成未找到 - 订单ID: %s, 共查询%d页", orderId, pageNum-1))
|
||||
return nil, nil
|
||||
}
|
||||
@@ -555,7 +545,6 @@ func (c *Client) QueryOrder(ctx context.Context, phone, token, orderId string) (
|
||||
pageNum++
|
||||
}
|
||||
|
||||
glog.Warningf(ctx, "查询订单%s超过最大页数%d,未找到", orderId, maxPages)
|
||||
service.CamelOil().SavePrefetchOrderLog(ctx, fmt.Sprintf("查询订单超限 - 订单ID: %s, 超过最大页数: %d, 未找到", orderId, maxPages))
|
||||
return nil, nil
|
||||
}
|
||||
@@ -581,7 +570,7 @@ func (c *Client) RechargeCard(ctx context.Context, token, phone, eCardCode strin
|
||||
Channel: "app",
|
||||
}
|
||||
|
||||
resp, err := c.Client.ContentJson().Post(ctx, "https://recharge3.bac365.com/camel_wechat_mini_oil_server/eCardMall/eCardRecharge", req)
|
||||
resp, err := c.Client.ContentJson().Post(ctx, "https://app.bac365.com/camel_wechat_mini_oil_server/eCardMall/eCardRecharge", req)
|
||||
if err != nil {
|
||||
glog.Errorf(ctx, "绑卡请求失败,错误: %v", err)
|
||||
return RechargeCardErrorNetwork, err
|
||||
|
||||
Reference in New Issue
Block a user