diff --git a/api/feature.go b/api/feature.go index 619153b..bfa5308 100644 --- a/api/feature.go +++ b/api/feature.go @@ -8,7 +8,6 @@ import ( request2 "qnc-server/model/request" "qnc-server/model/response" "qnc-server/service" - "strings" ) type Feature struct { @@ -34,44 +33,48 @@ func (f *Feature) OcrName(c *gin.Context) { return } + response.Ok(c) + return + // 调用 OCRService - ocrResult, err := featureService.OCRService(request.Base64) - if err != nil { - log.Printf("【OCR校验】请求错误:%v", err) - response.FailWithMessage("系统错误,请稍后再试", c) - return - } - // 尝试解析为错误响应 - var ocrError response.OcrErrorResponse - json.Unmarshal([]byte(ocrResult), &ocrError) - if ocrError.ErrorCode != 0 { - // 如果解析成功,且存在 error_code,则返回错误信息 - response.FailWithMessage("检测签名错误,请重新签名", c) - return - } - - // 尝试解析为成功响应 - var ocrSuccess response.OcrSuccessResponse - err = json.Unmarshal([]byte(ocrResult), &ocrSuccess) - if err != nil { - // 如果解析失败,则返回解析错误 - response.FailWithMessage("系统错误错误,请稍后再试", c) - return - } - - // 判断 words_result_num 是否等于 1 - if ocrSuccess.WordsResultNum != 1 { - response.FailWithMessage("检测签名错误,请重新签名", c) - return - } - - // 判断 OCR 结果的第一个 words 是否与 name 匹配 - if len(ocrSuccess.WordsResult) > 0 && strings.Contains(ocrSuccess.WordsResult[0].Words, request.Name) { - response.Ok(c) - } else { - response.FailWithMessage("签名不匹配,请输入签入正确的姓名", c) - return - } + //ocrResult, err := featureService.OCRService(request.Base64) + //if err != nil { + // log.Printf("【OCR校验】请求错误:%v", err) + // response.FailWithMessage("系统错误,请稍后再试", c) + // return + //} + //log.Printf("OCR返回:%v", ocrResult) + //// 尝试解析为错误响应 + //var ocrError response.OcrErrorResponse + //json.Unmarshal([]byte(ocrResult), &ocrError) + //if ocrError.ErrorCode != 0 { + // // 如果解析成功,且存在 error_code,则返回错误信息 + // response.FailWithMessage("检测签名错误,请重新签名", c) + // return + //} + // + //// 尝试解析为成功响应 + //var ocrSuccess response.OcrSuccessResponse + //err = json.Unmarshal([]byte(ocrResult), &ocrSuccess) + //if err != nil { + // // 如果解析失败,则返回解析错误 + // response.FailWithMessage("系统错误错误,请稍后再试", c) + // return + //} + // + //// 判断 words_result_num 是否等于 1 + //if ocrSuccess.WordsResultNum != 1 { + // response.FailWithMessage("检测签名错误,请重新签名", c) + // return + //} + // + //// 判断 OCR 结果的第一个 words 是否与 name 匹配 + //if len(ocrSuccess.WordsResult) > 0 && strings.Contains(ocrSuccess.WordsResult[0].Words, request.Name) { + // response.Ok(c) + //} else { + // response.FailWithMessage("签名不匹配,签名要和查询人的名字一致", c) + // return + //} } func (f *Feature) VerifyElements(c *gin.Context) { diff --git a/api/lawsuitQuery.go b/api/lawsuitQuery.go index 3fe7b52..1c60ee1 100644 --- a/api/lawsuitQuery.go +++ b/api/lawsuitQuery.go @@ -7,6 +7,7 @@ import ( "github.com/gin-gonic/gin" "github.com/redis/go-redis/v9" "gorm.io/gorm" + "io/ioutil" "log" "net/http" "qnc-server/config" @@ -17,6 +18,7 @@ import ( "qnc-server/model/types" "qnc-server/service" "qnc-server/utils" + "time" ) type LawsuitQuery struct { @@ -97,6 +99,7 @@ func (l *LawsuitQuery) queryListV2(c *gin.Context) { return } } else { + // 二要素核验 twoElementsParams := map[string]any{ "name": reqBody.Name, @@ -128,12 +131,14 @@ func (l *LawsuitQuery) queryListV2(c *gin.Context) { } } else { + response.FailWithMessage("暂不支持企业涉诉查询", c) + return // 校验企业社会统一信用代码 - isCreditCode := utils.ValidateUnifiedSocialCreditCode(reqBody.CardNo) - if isCreditCode == false { - response.FailWithMessage("请输入企业社会统一信用代码", c) - return - } + //isCreditCode := utils.ValidateUnifiedSocialCreditCode(reqBody.CardNo) + //if isCreditCode == false { + // response.FailWithMessage("请输入企业社会统一信用代码", c) + // return + //} } // 校验验证码 @@ -160,8 +165,11 @@ func (l *LawsuitQuery) queryListV2(c *gin.Context) { return } } + //================================================西部============================================= var lawsuitReq map[string]interface{} var reqCode string + + authDate := GenerateDateString() if *reqBody.Type == types.Individual { encodeName, err := utils.WestDexEncrypt(reqBody.Name, "121a1e41fc1690dd6b90afbcacd80cf4") if err != nil { @@ -176,10 +184,11 @@ func (l *LawsuitQuery) queryListV2(c *gin.Context) { return } lawsuitReq = map[string]interface{}{ - "name": encodeName, - "id_card": encodeID, + "name": encodeName, + "idcard": encodeID, + "inquired_auth": authDate, } - reqCode = "G22BJ03" + reqCode = "G35SC01" } else { encodeID, err := utils.WestDexEncrypt(reqBody.CardNo, "121a1e41fc1690dd6b90afbcacd80cf4") if err != nil { @@ -187,10 +196,19 @@ func (l *LawsuitQuery) queryListV2(c *gin.Context) { response.FailWithMessage(err.Error(), c) return } - lawsuitReq = map[string]interface{}{ - "ent_name": encodeID, + encodeName, err := utils.WestDexEncrypt(reqBody.Name, "121a1e41fc1690dd6b90afbcacd80cf4") + if err != nil { + log.Printf("【司法涉诉】加密错误:%v", err) + response.FailWithMessage(err.Error(), c) + return } - reqCode = "Q03BJ03" + + lawsuitReq = map[string]interface{}{ + "org_name": encodeName, + "uscc": encodeID, + "inquired_auth": authDate, + } + reqCode = "Q23SC01" } // 发起请求并处理响应 @@ -200,35 +218,74 @@ func (l *LawsuitQuery) queryListV2(c *gin.Context) { return } - var resp model.LawsuitResponse + var resp model.LawsuitPersonResponse err = json.Unmarshal([]byte(plainText), &resp) if err != nil { handleErrorAndRefund(order, userid, "司法诉讼记录解析错误", c) return } - if resp.Data.ErrCode != "200" { - handleErrorAndRefund(order, userid, fmt.Sprintf("司法诉讼响应错误:%s", resp.Data.ErrMsg), c) + if resp.ResultCode != "200" { + handleErrorAndRefund(order, userid, fmt.Sprintf("司法诉讼响应错误:%s", resp.Message), c) return } - // 根据类型判断是个人信息还是公司信息 - - var respData json.RawMessage - - if *reqBody.Type == types.Individual { - if resp.Data.Data.PersonInfo == nil || resp.Data.Data.PersonInfo.Code == "-1000" { - handleErrorAndRefund(order, userid, fmt.Sprintf("司法诉讼查询失败:%s", resp.Data.Data.PersonInfo.Msg), c) - return - } - respData = resp.Data.Data.PersonInfo.Data - } else { - if resp.Data.Data.CompanyInfo == nil || resp.Data.Data.CompanyInfo.Code == "-1000" { - handleErrorAndRefund(order, userid, fmt.Sprintf("司法诉讼查询失败:%s", resp.Data.Data.CompanyInfo.Msg), c) - return - } - respData = resp.Data.Data.CompanyInfo.Data + var respData model.LawsuitPersonData + err = json.Unmarshal([]byte(resp.Data), &respData) + if err != nil { + handleErrorAndRefund(order, userid, "司法诉讼记录解析错误", c) + return } + var respDataData interface{} + err = json.Unmarshal([]byte(respData.Data), &respDataData) + if err != nil { + handleErrorAndRefund(order, userid, "司法诉讼记录解析错误", c) + return + } + + //if checkIfEmpty(respDataData) || respData.Msg == "没有找到" { + // handleErrorAndRefund(order, userid, "司法诉讼查询为空", c) + // return + //} + + //根据类型判断是个人信息还是公司信息 + + //var respData json.RawMessage + // + //if *reqBody.Type == types.Individual { + // if resp.Data.Data.PersonInfo == nil || resp.Data.Data.PersonInfo.Code == "-1000" { + // handleErrorAndRefund(order, userid, fmt.Sprintf("司法诉讼查询失败:%s", resp.Data.Data.PersonInfo.Msg), c) + // return + // } + // respData = resp.Data.Data.PersonInfo.Data + //} else { + // if resp.Data.Data.CompanyInfo == nil || resp.Data.Data.CompanyInfo.Code == "-1000" { + // handleErrorAndRefund(order, userid, fmt.Sprintf("司法诉讼查询失败:%s", resp.Data.Data.CompanyInfo.Msg), c) + // return + // } + // respData = resp.Data.Data.CompanyInfo.Data + //} + //=========================================================================================================================== + //reqData := map[string]interface{}{ + // "cardNo": reqBody.CardNo, + // "name": reqBody.Name, + //} + //plainText, err := carService.CarReqYuShan("JUD009", &reqData) + //log.Println(string(plainText)) + //if err != nil { + // log.Printf("YuShan request at %s error: %s", "JUD009", err.Error()) + // handleErrorAndRefund(order, userid, "接口系统错误,将自动退款", c) + // return + //} + //analysis, err := lawsuitQueryService.LawsuitDataAnalysis(string(plainText)) + //if err != nil { + // if errors.Is(err, utils.ErrNoRecord) { + // handleErrorAndRefund(order, userid, "综合涉诉查询为空,将自动退款", c) + // } else { + // handleErrorAndRefund(order, userid, "综合涉诉解析错误,将自动退款", c) + // } + // return + //} var query model.Query query.OrderID = order.ID @@ -236,7 +293,7 @@ func (l *LawsuitQuery) queryListV2(c *gin.Context) { query.Userid = userid query.ProductID = order.ProductID db.DB.Create(&query) - uniqueID := utils.SetCacheData(ctx, respData) + uniqueID := utils.SetCacheData(ctx, []interface{}{respDataData}) // 更新订单状态并返回成功响应 orderService.OrderConsumed(order) response.OkWithData(gin.H{ @@ -270,21 +327,6 @@ func (l *LawsuitQuery) GetRecord(c *gin.Context) { return } - //userid := utils.GetUserID(c) - //record, err := lawsuitQueryService.QueryLawsuitByOrder(req.ID, userid) - //if err != nil { - // log.Printf("【司法涉诉】获取司法涉诉记录错误:%v", err) - // notifyService.SendNotification("系统错误,获取司法涉诉记录错误,请及时处理", "司法涉诉", userid, record.OrderID) - // response.FailRefund(c) - // return - //} - //var resp any - //err = json.Unmarshal([]byte(record.Resp), &resp) - //if err != nil { - // log.Printf("【司法涉诉】获取司法涉诉解析错误:%v", err) - // notifyService.SendNotification("系统错误,获取司法涉诉解析错误,请及时处理", "司法涉诉", userid, record.OrderID) - // return - //} data, err := utils.GetCacheData(ctx, req.ID) if err != nil { if errors.Is(err, redis.Nil) { @@ -295,5 +337,61 @@ func (l *LawsuitQuery) GetRecord(c *gin.Context) { return } } + + if checkIfEmpty(data) { + // 判断data是否是string类型并且等于"查询成功无结果" + //if strData, ok := data.(string); ok && strData == "查询成功无结果" { + + // 读取empty.json文件 + emptyData, readErr := ioutil.ReadFile("empty.json") + if readErr != nil { + log.Printf("系统错误: 无法读取empty.json:%v", readErr) + response.FailWithMessage("系统错误", c) + return + } + + // 将empty.json的内容反序列化为map或者结构体 + var jsonData []map[string]interface{} + if jsonErr := json.Unmarshal(emptyData, &jsonData); jsonErr != nil { + log.Printf("系统错误: 无法解析empty.json:%v", readErr) + response.FailWithMessage("系统错误", c) + return + } + + // 返回反序列化后的JSON数据 + response.OkWithData(jsonData, c) + return + } response.OkWithData(data, c) } +func GenerateDateString() string { + // 获取当前时间 + now := time.Now() + // 格式化当前日期为YYYYMMDD + today := now.Format("20060102") + // 获取明天的日期 + tomorrow := now.AddDate(0, 0, 1).Format("20060102") + // 拼接成所需格式 + return today + "-" + tomorrow +} + +// 判断函数 +func checkIfEmpty(data interface{}) bool { + // 判断是否为 nil + if data == nil { + return true + } + + // 判断是否为空数组 + if arr, ok := data.([]interface{}); ok { + return len(arr) == 0 + } + + // 判断是否为空对象(空 map) + if obj, ok := data.(map[string]interface{}); ok { + return len(obj) == 0 + } + + // 如果不是上述情况,表示不为空 + return false +} diff --git a/api/middleware.go b/api/middleware.go index 6502bf8..ecc9496 100644 --- a/api/middleware.go +++ b/api/middleware.go @@ -81,10 +81,24 @@ func NotifyMiddleware() gin.HandlerFunc { return } - if utils.IsInTimeRange(startTime, endTime) { - response.FailNotify(c) - c.Abort() - return + currentTime := time.Now() + + // 检查是否跨午夜 + if endTime.Before(startTime) { + // 跨午夜,检查是否在开始时间到午夜,或者午夜到结束时间的范围内 + if utils.IsInTimeRange(startTime, time.Date(currentTime.Year(), currentTime.Month(), currentTime.Day(), 23, 59, 59, 0, currentTime.Location())) || + utils.IsInTimeRange(time.Date(currentTime.Year(), currentTime.Month(), currentTime.Day(), 0, 0, 0, 0, currentTime.Location()), endTime) { + response.FailNotify(c) + c.Abort() + return + } + } else { + // 不跨午夜,按普通情况处理 + if utils.IsInTimeRange(startTime, endTime) { + response.FailNotify(c) + c.Abort() + return + } } } c.Next() diff --git a/api/pay.go b/api/pay.go index 8862dbd..c1098ba 100644 --- a/api/pay.go +++ b/api/pay.go @@ -16,6 +16,7 @@ import ( wxutils "github.com/wechatpay-apiv3/wechatpay-go/utils" "gorm.io/gorm" "log" + "math" "net/http" "qnc-server/config" "qnc-server/db" @@ -44,16 +45,17 @@ func InitPay(group *gin.RouterGroup) { payPublicGroup.GET("refund_details/:id", p.RefundDetailsHTML) // 内部退款订单详情页面 payPublicGroup.POST("refund/:id", p.Refund) // 内部退款按钮 payPublicGroup.POST("refund_callback/:platform", p.RefundCallback) // 微信退款回调 - payPublicGroup.POST("ali_callback", p.AlipayCallback) // 阿里退款回调 + payPublicGroup.POST("ali_callback", p.AlipayCallback) // 阿里回调 payPublicGroup.POST("complaint_callback/:platform", p.WxPayComplaintCallback) } { payPrivateGroup := group.Group("pay") payPrivateGroup.Use(JWTAuth()) - payPrivateGroup.POST("prepay", p.Prepay) // 创建微信支付订单 - payPrivateGroup.GET("order_list", p.GetOrderList) // 获取订单列表 - payPrivateGroup.POST("ali_prepay", p.AliPrepay) // 创建支付宝支付订单 - payPrivateGroup.GET("get_query_cache", p.GetQueryCache) // 获取网页的查询缓存 + payPrivateGroup.POST("prepay", p.Prepay) // 创建微信支付订单 + payPrivateGroup.GET("order_list", p.GetOrderList) // 获取订单列表 + payPrivateGroup.GET("promotion_list", p.GetPromotionList) // 获取订单列表 + payPrivateGroup.POST("ali_prepay", p.AliPrepay) // 创建支付宝支付订单 + payPrivateGroup.GET("get_query_cache", p.GetQueryCache) // 获取网页的查询缓存 } } func (p *Pay) GetOrderList(c *gin.Context) { @@ -81,6 +83,55 @@ func (p *Pay) GetOrderList(c *gin.Context) { } response.OkWithData(list, c) } +func (p *Pay) GetPromotionList(c *gin.Context) { + userId := utils.GetUserID(c) + user, err := userService.GetUserByUserid(userId) + if err != nil { + log.Println("get user info error:", err) + response.FailWithMessage("系统开小差啦, 请稍后再试~", c) + return + } + if user.Promotion == "" { + response.FailWithMessage("您不是代理推广人哦", c) + return + } + // 从查询参数中获取分页参数 + pageSizeStr := c.DefaultQuery("page_size", "10") + pageNumStr := c.DefaultQuery("page_num", "1") + pageSize, err := strconv.Atoi(pageSizeStr) + if err != nil { + response.FailWithMessage(err.Error(), c) + return + } + + pageNum, err := strconv.Atoi(pageNumStr) + if err != nil { + response.FailWithMessage(err.Error(), c) + return + } + + list, err := orderService.GetListByPromotion(pageSize, pageNum, user.Promotion) + if err != nil { + log.Println("get order list error:", err) + response.FailWithMessage(err.Error(), c) + return + } + // 获取总单数和总金额 + totalCount, totalAmount, err := orderService.GetSummaryByPromotion(user.Promotion) + if err != nil { + log.Println("get order summary error:", err) + response.FailWithMessage(err.Error(), c) + return + } + // 计算总金额的 30%,并保留两位小数 + totalAmount30 := math.Round((totalAmount/30.0)*100) / 100 + response.OkWithData(gin.H{ + "list": list, + "points": 30, + "total_count": totalCount, + "total_amount": totalAmount30, // 总金额的30% + }, c) +} func (p *Pay) Prepay(c *gin.Context) { Claims, err := utils.GetClaims(c) if err != nil { @@ -102,6 +153,9 @@ func (p *Pay) Prepay(c *gin.Context) { appid string mchID string ) + log.Printf("Claims, %+v", Claims) + log.Printf("reqBody, %+v", reqBody) + // 获取用户ip clientIP := c.ClientIP() switch reqBody.Platform { @@ -116,6 +170,10 @@ func (p *Pay) Prepay(c *gin.Context) { case model.PlatformH5: appid = config.ConfigData.System.WxH5AppId mchID = config.ConfigData.WxPay.MchH5ID + case model.PlatformTYDATA: + openid = Claims.AuthIdentifiers.OpenID + appid = config.ConfigData.System.WxTyDataAppId + mchID = config.ConfigData.WxPay.MchH5ID default: response.FailWithMessage("ProductName Must be wx or mp-h5 or h5", c) return @@ -154,7 +212,14 @@ func (p *Pay) Prepay(c *gin.Context) { return } } else if reqBody.Platform == model.PlatformMPH5 { - resp, err = orderService.WechatJSAPIPrepay(appid, mchID, product, outTradeNo, amount, model.PlatformMPH5, openid, global.GlobalData.PayH5Client) + resp, err = orderService.WechatJSAPIPrepay(appid, mchID, product, outTradeNo, amount, openid, model.PlatformMPH5, global.GlobalData.PayH5Client) + if err != nil { + log.Printf("【创建微信支付订单】创建支付失败,系统错误: %v", err) + response.FailWithMessage("创建支付失败,系统错误", c) + return + } + } else if reqBody.Platform == model.PlatformTYDATA { + resp, err = orderService.WechatJSAPIPrepay(appid, mchID, product, outTradeNo, amount, openid, model.PlatformTYDATA, global.GlobalData.PayH5Client) if err != nil { log.Printf("【创建微信支付订单】创建支付失败,系统错误: %v", err) response.FailWithMessage("创建支付失败,系统错误", c) @@ -178,6 +243,7 @@ func (p *Pay) Prepay(c *gin.Context) { Product: &product, Platform: reqBody.Platform, PaymentMethod: model.PaymentMethod_WECHAT, + Promotion: reqBody.Promotion, } err = db.DB.Create(&payOrder).Error if err != nil { @@ -201,7 +267,7 @@ func (p *Pay) Callback(c *gin.Context) { mchCertificateSerialNumber = config.ConfigData.WxPay.MchCertificateSerialNumber mchAPIv3Key = config.ConfigData.WxPay.MchAPIv3Key privateKeyPath = "merchant/mp/apiclient_key.pem" - case model.PlatformH5, model.PlatformMPH5: + case model.PlatformH5, model.PlatformMPH5, model.PlatformTYDATA: mchID = config.ConfigData.WxPay.MchH5ID mchCertificateSerialNumber = config.ConfigData.WxPay.MchH5CertificateSerialNumber mchAPIv3Key = config.ConfigData.WxPay.MchH5APIv3Key @@ -327,7 +393,7 @@ func (p *Pay) Refund(c *gin.Context) { switch order.Platform { case model.PlatformMPWEIXIN: payClient = global.GlobalData.PayClient - case model.PlatformH5, model.PlatformMPH5: + case model.PlatformH5, model.PlatformMPH5, model.PlatformTYDATA: payClient = global.GlobalData.PayH5Client } outRefundNo := utils.GenerateOrderRefundNumber() @@ -373,7 +439,7 @@ func (p *Pay) RefundCallback(c *gin.Context) { mchCertificateSerialNumber = config.ConfigData.WxPay.MchCertificateSerialNumber mchAPIv3Key = config.ConfigData.WxPay.MchAPIv3Key privateKeyPath = "merchant/mp/apiclient_key.pem" - case model.PlatformH5, model.PlatformMPH5: + case model.PlatformH5, model.PlatformMPH5, model.PlatformTYDATA: mchID = config.ConfigData.WxPay.MchH5ID mchCertificateSerialNumber = config.ConfigData.WxPay.MchH5CertificateSerialNumber mchAPIv3Key = config.ConfigData.WxPay.MchH5APIv3Key @@ -485,7 +551,7 @@ func (p *Pay) AliPrepay(c *gin.Context) { pay.Subject = product.ProductName // 订单标题 pay.OutTradeNo = outTradeNo // 生成的唯一订单号 pay.TotalAmount = amount // 支付金额,单位元 - pay.ProductCode = "QUICK_WAP_PAY" // WAP支付的产品代码 + pay.ProductCode = "QUICK_WAP_PAY" // WAP支付的产品代码w payURL, err := global.GlobalData.AliPayClient.TradeWapPay(pay) if err != nil { @@ -592,7 +658,7 @@ func (p *Pay) WxPayComplaintCallback(c *gin.Context) { mchCertificateSerialNumber = config.ConfigData.WxPay.MchCertificateSerialNumber mchAPIv3Key = config.ConfigData.WxPay.MchAPIv3Key privateKeyPath = "merchant/mp/apiclient_key.pem" - case model.PlatformH5, model.PlatformMPH5: + case model.PlatformH5, model.PlatformMPH5, model.PlatformTYDATA: platformString = "公众号" mchID = config.ConfigData.WxPay.MchH5ID mchCertificateSerialNumber = config.ConfigData.WxPay.MchH5CertificateSerialNumber diff --git a/api/singleQuery.go b/api/singleQuery.go index 0e67e42..365bb54 100644 --- a/api/singleQuery.go +++ b/api/singleQuery.go @@ -4,6 +4,7 @@ import ( "encoding/json" "errors" "github.com/gin-gonic/gin" + "github.com/tidwall/gjson" "net/http" "qnc-server/config" @@ -38,6 +39,7 @@ func (s *SingleQuery) EvaluateMarriageQuery(c *gin.Context) { ctx := c.Request.Context() var reqBody request.EvaluateMarriageReq if err := c.ShouldBindJSON(&reqBody); err != nil { + log.Printf("请求参数错误%v\n", err) response.FailWithMessage("Failed to read request body", c) return } @@ -129,7 +131,6 @@ func (s *SingleQuery) EvaluateMarriageQuery(c *gin.Context) { response.FailWithMessage("系统错误,请稍后再试", c) return } - if twoElementsResp.Success == false { response.FailWithMessage("请输入有效的身份证号码", c) return @@ -172,10 +173,28 @@ func (s *SingleQuery) EvaluateMarriageQuery(c *gin.Context) { return } evaluateMarriageReq := map[string]interface{}{ - "name": encodeName, - "id": encodeID, + "nameMan": encodeName, + "certNumMan": encodeID, + } + + const maxRetryCount = 5 + retryCount := 0 + + var plainText string + + for retryCount < maxRetryCount { + plainText, err = requestService.WestDexRequest("G09SC02", evaluateMarriageReq) + if err != nil { + retryCount++ + continue + } + marriageResult := gjson.Get(plainText, "data.0.maritalStatus") + if marriageResult.Exists() { + break + } else { + retryCount++ + } } - plainText, err := requestService.WestDexRequest("G09GX01", evaluateMarriageReq) if err != nil { notifyService.SendNotification("接口系统错误,将自动退款", "婚姻查询", userid, order.ID) if order.PaymentMethod == model.PaymentMethod_ALIPAY { @@ -233,16 +252,33 @@ func (s *SingleQuery) EvaluateMarriageQuery(c *gin.Context) { } var code string - if result.Code == 201 { - code = "1" - } else if result.Code == 202 { - code = "2" - } else if result.Code == 203 { - code = "0" - } else { - response.FailRefund(c) - return + for _, entry := range result.Data { + if entry.MaritalStatus == "" { + notifyService.SendNotification("婚姻查询数据为空字段,自动退款", "婚姻查询", userid, order.ID) + if order.PaymentMethod == model.PaymentMethod_ALIPAY { + err := orderService.AliRefund(ctx, order) + if err != nil { + notifyService.SendNotification("【支付宝】婚姻查询数据为空,自动退款失败", "婚姻查询", userid, order.ID) + } else { + notifyService.SendNotification("【支付宝】自动退款成功", order.Product.ProductName, order.Userid, order.ID) + } + } else { + err := orderService.WeChatRefund(order) + if err != nil { + notifyService.SendNotification("婚姻查询数据为空,自动退款失败", "婚姻查询", userid, order.ID) + } + } + log.Printf("【婚姻查询】数据为空,自动退款") + response.FailRefund(c) + return + } + code = entry.MaritalStatus + if code == "3" { + code = "2" + } + } + orderService.OrderConsumed(order) var query model.Query query.OrderID = order.ID diff --git a/api/user.go b/api/user.go index 328cc27..78704e0 100644 --- a/api/user.go +++ b/api/user.go @@ -31,6 +31,7 @@ func InitUser(group *gin.RouterGroup) { userPublicGroup.GET("test", u.Test) userPublicGroup.POST("log", u.Log) userPublicGroup.POST("login", u.Login) + userPublicGroup.POST("tydata_login", u.TyDataLogin) userPublicGroup.POST("h5_login", u.H5Login) userPublicGroup.POST("phone_login", u.PhoneLogin) userPublicGroup.POST("verify", u.GetVerify) @@ -128,6 +129,79 @@ func (u *User) Login(c *gin.Context) { u.TokenNext(c, user, authIdentifier, model.AUTHTYPE_WECHAT_MP) } +// 天远数据登录 +func (u *User) TyDataLogin(c *gin.Context) { + var reqBody request.UserLoginReq + + // 尝试将请求的 JSON body 绑定到 reqBody 结构体 + if err := c.ShouldBindJSON(&reqBody); err != nil { + response.FailWithMessage(err.Error(), c) + return + } + + // 检查请求体中是否包含 code 字段 + if reqBody.Code == "" { + response.FailWithMessage("code is required", c) + return + } + + // Code获取用户信息 + wxResponse, err := userService.RequestWxTyData(reqBody.Code) + if err != nil { + response.FailWithMessage(fmt.Errorf("request weixin err:%w", err).Error(), c) + return + } + authIdentifier := model.AuthIdentifier{ + OpenID: wxResponse.OpenId, + UnionID: wxResponse.Unionid, + } + // 是否有匹配的校验信息 + authentications, err := userService.MatchingAuthentications(authIdentifier) + + if err != nil { + log.Printf("MatchingAuthentications Error:%v", err) + response.FailWithMessage("系统错误,请稍后再试", c) + return + } + var authentication model.Authentication + if len(authentications) == 0 { + authentication, err = userService.Register(model.User{}, model.AUTHTYPE_TYDATA, authIdentifier) + if err != nil { + log.Printf("注册用户错误:%v", err) + response.FailWithMessage("系统错误,请稍后再试", c) + return + } + //成功创建用户 + } else { + // 校验信息是否有该平台 + hasWechatMP := false + for _, auth := range authentications { + if auth.AuthType == model.AUTHTYPE_TYDATA { + hasWechatMP = true + authentication = auth + } + } + // 没有则创建该平台校验并关联用户 + if !hasWechatMP { + userid := authentication.UserID + authentication, err = userService.CreateAuthentications(userid, authIdentifier, model.AUTHTYPE_TYDATA) + if err != nil { + log.Printf("创建平台校验错误:%v", err) + response.FailWithMessage("系统错误,请稍后再试", c) + return + } + //成功校验该平台成功 + } + } + user, err := userService.GetUser(authentication.UserID) + if err != nil { + log.Printf("authentication获取关联用户失败:%v", err) + response.FailWithMessage("系统错误,请稍后再试", c) + return + } + u.TokenNext(c, user, authIdentifier, model.AUTHTYPE_TYDATA) +} + // 公众号h5登录 func (u *User) H5Login(c *gin.Context) { var reqBody request.H5UserLoginReq diff --git a/config.yaml b/config.yaml index f1d1b8a..ad9a1d4 100644 --- a/config.yaml +++ b/config.yaml @@ -23,6 +23,9 @@ system: wx-h5-userinfo-url: "https://api.weixin.qq.com/sns/userinfo" wx-h5-appid: "wxafa04cf8c4270ff9" wx-h5-secret: "6c8dce18e99ee058b49aeb1e1298e111" + wx-tydata-login-url: "https://api.weixin.qq.com/sns/jscode2session" + wx-tydata-appid: "wx2155053265970e43" + wx-tydata-secret: "cb8ed77670f015d18cc4318927ad994d" wx-pay: mch-id: "1682635136" mch-certificate-serial-number: "5369B8AEEBDCF7AF274510252E6A8C0659C30F61" @@ -57,6 +60,8 @@ verifycode: sign-name: "海南省学宇思网络科技" template-code: "SMS_302641455" Marriage-template-code: "SMS_302641455" + TyDataSignName: "天远数据" + TyDataTemplateCode: "SMS_474525324" expiration: 5m throttle-time: 1m lawsuitquery: diff --git a/config/config.go b/config/config.go index e51e906..230d38f 100644 --- a/config/config.go +++ b/config/config.go @@ -46,14 +46,17 @@ type DatabaseConfig struct { DBName string `mapstructure:"dbname"` } type System struct { - StartingUserId uint `mapstructure:"starting-user-id"` - WxLoginUrl string `mapstructure:"wx-login-url" json:"wx-login-url" yaml:"wx-login-url"` - WxAppId string `mapstructure:"wx-appid" json:"wx-appid" yaml:"wx-appid"` - WxSecret string `mapstructure:"wx-secret" json:"wx-secret" yaml:"wx-secret"` - WxH5LoginUrl string `mapstructure:"wx-h5-login-url" json:"wx-h5-login-url" yaml:"wx-h5-login-url"` - WxH5UserinfoUrl string `mapstructure:"wx-h5-userinfo-url" json:"wx-h5-userinfo-url" yaml:"wx-h5-userinfo-url"` - WxH5AppId string `mapstructure:"wx-h5-appid" json:"wx-h5-appid" yaml:"wx-h5-appid"` - WxH5Secret string `mapstructure:"wx-h5-secret" json:"wx-h5-secret" yaml:"wx-h5-secret"` + StartingUserId uint `mapstructure:"starting-user-id"` + WxLoginUrl string `mapstructure:"wx-login-url" json:"wx-login-url" yaml:"wx-login-url"` + WxAppId string `mapstructure:"wx-appid" json:"wx-appid" yaml:"wx-appid"` + WxSecret string `mapstructure:"wx-secret" json:"wx-secret" yaml:"wx-secret"` + WxH5LoginUrl string `mapstructure:"wx-h5-login-url" json:"wx-h5-login-url" yaml:"wx-h5-login-url"` + WxH5UserinfoUrl string `mapstructure:"wx-h5-userinfo-url" json:"wx-h5-userinfo-url" yaml:"wx-h5-userinfo-url"` + WxH5AppId string `mapstructure:"wx-h5-appid" json:"wx-h5-appid" yaml:"wx-h5-appid"` + WxH5Secret string `mapstructure:"wx-h5-secret" json:"wx-h5-secret" yaml:"wx-h5-secret"` + WxTyDataLoginUrl string `mapstructure:"wx-tydata-login-url" json:"wx-tydata-login-url" yaml:"wx-tydata-login-url"` + WxTyDataAppId string `mapstructure:"wx-tydata-appid" json:"wx-tydata-appid" yaml:"wx-tydata-appid"` + WxTyDataSecret string `mapstructure:"wx-tydata-secret" json:"wx-tydata-secret" yaml:"wx-tydata-secret"` } type AntifraudConfig struct { ApiKey string `mapstructure:"api-key"` @@ -80,6 +83,8 @@ type VerifyCodeConfig struct { MarriageTemplateCode string `mapstructure:"marriage-template-code"` Expiration time.Duration `mapstructure:"expiration"` ThrottleTime time.Duration `mapstructure:"throttle-time"` + TyDataSignName string + TyDataTemplateCode string } type Redis struct { Addr string `mapstructure:"addr" json:"addr" yaml:"addr"` // 服务器地址:端口 diff --git a/core/logger.go b/core/logger.go index cf7754d..7e362a1 100644 --- a/core/logger.go +++ b/core/logger.go @@ -23,7 +23,7 @@ func SetupLogger() *lumberjack.Logger { // 配置 lumberjack 日志轮转 logger := &lumberjack.Logger{ Filename: logFilePath, - MaxSize: 1, // 日志文件最大尺寸为100MB + MaxSize: 3, // 日志文件最大尺寸为100MB MaxBackups: 30, // 最多保留30个备份文件 MaxAge: 30, // 日志文件最多保留30天 Compress: false, // 启用压缩 @@ -42,7 +42,6 @@ func LoggingMiddleware(logger *lumberjack.Logger) gin.HandlerFunc { // 获取GET参数 getParams := c.Request.URL.Query() - // 获取其他请求方法的参数 var bodyBytes []byte if c.Request.Body != nil { @@ -51,8 +50,8 @@ func LoggingMiddleware(logger *lumberjack.Logger) gin.HandlerFunc { c.Request.Body = ioutil.NopCloser(bytes.NewBuffer(bodyBytes)) // 还原请求Body // 打印日志 - logEntry := fmt.Sprintf("Start: %s, Method: %s, URL: %s, GET params: %v, Body: %s", - startTime.Format(time.RFC3339), method, c.Request.URL, getParams, string(bodyBytes)) + logEntry := fmt.Sprintf("Start: %s, Method: %s, URL: %s, GET params: %v", + startTime.Format(time.RFC3339), method, c.Request.URL, getParams) log.SetOutput(logger) log.Println(logEntry) diff --git a/dist/qnc b/dist/qnc index 9576356..f68cddf 100644 Binary files a/dist/qnc and b/dist/qnc differ diff --git a/dist/templates/refund.html b/dist/templates/refund.html index 66a8ff9..07aebbd 100644 --- a/dist/templates/refund.html +++ b/dist/templates/refund.html @@ -126,7 +126,7 @@ loading.style.display = "block"; - fetch(`/apiv2/pay/refund/${orderID}`, { + fetch(`/api/pay/refund/${orderID}`, { method: "POST", headers: { "Content-Type": "application/json" diff --git a/empty.json b/empty.json new file mode 100644 index 0000000..86ea788 --- /dev/null +++ b/empty.json @@ -0,0 +1,91 @@ +[ + { + "sx": {}, + "id": "该查询并无涉诉相关记录:", + "detail": { + "jurisdict": { + "cases": [], + "count": { + "count_total": 0, + "count_wei_total": 0, + "count_jie_total": 0 + } + }, + "preservation": { + "cases": [], + "count": { + "count_total_cases": 0, + "count_total": 0, + "count_wei_total": 0, + "count_jie_total_cases": 0, + "count_wei_total_cases": 0, + "count_jie_total": 0 + } + }, + "cases_tree": { + "administrative": [], + "civil": [], + "implement": [], + "criminal": [] + }, + "administrative": { + "cases": [], + "count": { + "count_total_cases": 0, + "count_total": 0, + "count_wei_total": 0, + "count_jie_total_cases": 0, + "count_wei_total_cases": 0, + "count_jie_total": 0 + } + }, + "civil": { + "cases": [], + "count": { + "count_total_cases": 0, + "count_total": 0, + "count_wei_total": 0, + "count_jie_total_cases": 0, + "count_wei_total_cases": 0, + "count_jie_total": 0 + } + }, + "implement": { + "cases": [], + "count": { + "count_total": 0, + "count_wei_total": 0, + "count_jie_total": 0 + } + }, + "criminal": { + "cases": [], + "count": { + "count_total_cases": 0, + "count_total": 1, + "count_wei_total": 1, + "count_jie_total_cases": 0, + "count_wei_total_cases": 0, + "count_jie_total": 0 + } + }, + "bankrupt": { + "cases": [], + "count": { + "count_total": 0, + "count_wei_total": 0, + "count_jie_total": 0 + } + }, + "compensate": { + "cases": [], + "count": { + "count_total": 0, + "count_wei_total": 0, + "count_jie_total": 0 + } + } + }, + "xg": {} + } +] \ No newline at end of file diff --git a/go.mod b/go.mod index 01472bf..c7468bd 100644 --- a/go.mod +++ b/go.mod @@ -5,7 +5,6 @@ go 1.23 toolchain go1.23.0 require ( - github.com/alibabacloud-go/darabonba-openapi v0.2.1 github.com/alibabacloud-go/darabonba-openapi/v2 v2.0.2 github.com/alibabacloud-go/dysmsapi-20170525/v3 v3.0.6 github.com/alibabacloud-go/tea v1.1.19 @@ -13,9 +12,12 @@ require ( github.com/fsnotify/fsnotify v1.7.0 github.com/gin-gonic/gin v1.10.0 github.com/golang-jwt/jwt/v5 v5.2.1 - github.com/pkg/errors v0.9.1 + github.com/google/uuid v1.6.0 + github.com/jung-kurt/gofpdf v1.16.2 github.com/redis/go-redis/v9 v9.5.3 + github.com/smartwalle/alipay/v3 v3.2.22 github.com/spf13/viper v1.19.0 + github.com/unrolled/secure v1.15.0 github.com/wechatpay-apiv3/wechatpay-go v0.2.18 golang.org/x/sync v0.8.0 gopkg.in/natefinch/lumberjack.v2 v2.2.1 @@ -32,42 +34,27 @@ require ( github.com/alibabacloud-go/tea-utils v1.4.3 // indirect github.com/alibabacloud-go/tea-xml v1.1.2 // indirect github.com/aliyun/credentials-go v1.1.2 // indirect - github.com/andreburgaud/crypt2go v1.8.0 // indirect github.com/bytedance/sonic v1.11.8 // indirect github.com/bytedance/sonic/loader v0.1.1 // indirect github.com/cespare/xxhash/v2 v2.3.0 // indirect - github.com/chromedp/cdproto v0.0.0-20240801214329-3f85d328b335 // indirect - github.com/chromedp/chromedp v0.10.0 // indirect - github.com/chromedp/sysutil v1.0.0 // indirect github.com/clbanning/mxj/v2 v2.5.5 // indirect github.com/cloudwego/base64x v0.1.4 // indirect github.com/cloudwego/iasm v0.2.0 // indirect github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect - github.com/fogleman/gg v1.3.0 // indirect - github.com/forgoer/openssl v1.6.0 // indirect - github.com/fvbock/endless v0.0.0-20170109170031-447134032cb6 // indirect github.com/gabriel-vasile/mimetype v1.4.4 // indirect github.com/gin-contrib/sse v0.1.0 // indirect github.com/go-playground/locales v0.14.1 // indirect github.com/go-playground/universal-translator v0.18.1 // indirect github.com/go-playground/validator/v10 v10.22.0 // indirect github.com/go-sql-driver/mysql v1.8.1 // indirect - github.com/gobwas/httphead v0.1.0 // indirect - github.com/gobwas/pool v0.2.1 // indirect - github.com/gobwas/ws v1.4.0 // indirect github.com/goccy/go-json v0.10.3 // indirect - github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0 // indirect - github.com/google/uuid v1.6.0 // indirect github.com/hashicorp/hcl v1.0.0 // indirect github.com/jinzhu/inflection v1.0.0 // indirect github.com/jinzhu/now v1.1.5 // indirect - github.com/josharian/intern v1.0.0 // indirect github.com/json-iterator/go v1.1.12 // indirect - github.com/jung-kurt/gofpdf v1.16.2 // indirect github.com/klauspost/cpuid/v2 v2.2.8 // indirect github.com/leodido/go-urn v1.4.0 // indirect github.com/magiconair/properties v1.8.7 // indirect - github.com/mailru/easyjson v0.7.7 // indirect github.com/mattn/go-isatty v0.0.20 // indirect github.com/mitchellh/mapstructure v1.5.0 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect @@ -75,8 +62,6 @@ require ( github.com/pelletier/go-toml/v2 v2.2.2 // indirect github.com/sagikazarmark/locafero v0.6.0 // indirect github.com/sagikazarmark/slog-shim v0.1.0 // indirect - github.com/sirupsen/logrus v1.8.1 // indirect - github.com/smartwalle/alipay/v3 v3.2.22 // indirect github.com/smartwalle/ncrypto v1.0.4 // indirect github.com/smartwalle/ngx v1.0.9 // indirect github.com/smartwalle/nsign v1.0.9 // indirect @@ -85,16 +70,16 @@ require ( github.com/spf13/cast v1.6.0 // indirect github.com/spf13/pflag v1.0.5 // indirect github.com/subosito/gotenv v1.6.0 // indirect + github.com/tidwall/gjson v1.18.0 // indirect + github.com/tidwall/match v1.1.1 // indirect + github.com/tidwall/pretty v1.2.0 // indirect github.com/tjfoc/gmsm v1.3.2 // indirect github.com/twitchyliquid64/golang-asm v0.15.1 // indirect github.com/ugorji/go/codec v1.2.12 // indirect - github.com/unrolled/secure v1.15.0 // indirect - github.com/wumansgy/goEncrypt v1.1.0 // indirect go.uber.org/multierr v1.11.0 // indirect golang.org/x/arch v0.8.0 // indirect golang.org/x/crypto v0.26.0 // indirect golang.org/x/exp v0.0.0-20240613232115-7f521ea00fb8 // indirect - golang.org/x/image v0.20.0 // indirect golang.org/x/net v0.26.0 // indirect golang.org/x/sys v0.23.0 // indirect golang.org/x/text v0.18.0 // indirect diff --git a/go.sum b/go.sum index 2d8c785..5e66c39 100644 --- a/go.sum +++ b/go.sum @@ -1,13 +1,11 @@ filippo.io/edwards25519 v1.1.0 h1:FNf4tywRC1HmFuKW5xopWpigGjJKiJSV0Cqo0cJWDaA= filippo.io/edwards25519 v1.1.0/go.mod h1:BxyFTGdWcka3PhytdK4V28tE5sGfRvvvRV7EaN4VDT4= +github.com/agiledragon/gomonkey v2.0.2+incompatible h1:eXKi9/piiC3cjJD1658mEE2o3NjkJ5vDLgYjCQu0Xlw= github.com/agiledragon/gomonkey v2.0.2+incompatible/go.mod h1:2NGfXu1a80LLr2cmWXGBDaHEjb1idR6+FVlX5T3D9hw= github.com/alibabacloud-go/alibabacloud-gateway-spi v0.0.4 h1:iC9YFYKDGEy3n/FtqJnOkZsene9olVspKmkX5A2YBEo= github.com/alibabacloud-go/alibabacloud-gateway-spi v0.0.4/go.mod h1:sCavSAvdzOjul4cEqeVtvlSaSScfNsTQ+46HwlTL1hc= -github.com/alibabacloud-go/darabonba-openapi v0.2.1 h1:WyzxxKvhdVDlwpAMOHgAiCJ+NXa6g5ZWPFEzaK/ewwY= -github.com/alibabacloud-go/darabonba-openapi v0.2.1/go.mod h1:zXOqLbpIqq543oioL9IuuZYOQgHQ5B8/n5OPrnko8aY= github.com/alibabacloud-go/darabonba-openapi/v2 v2.0.2 h1:2kR1YkvQloHUstmPcG0Sjk24zTKbza7izzJfJNwBFSs= github.com/alibabacloud-go/darabonba-openapi/v2 v2.0.2/go.mod h1:5JHVmnHvGzR2wNdgaW1zDLQG8kOC4Uec8ubkMogW7OQ= -github.com/alibabacloud-go/darabonba-string v1.0.0/go.mod h1:93cTfV3vuPhhEwGGpKKqhVW4jLe7tDpo3LUM0i0g6mA= github.com/alibabacloud-go/debug v0.0.0-20190504072949-9472017b5c68 h1:NqugFkGxx1TXSh/pBcU00Y6bljgDPaFdh5MUSeJ7e50= github.com/alibabacloud-go/debug v0.0.0-20190504072949-9472017b5c68/go.mod h1:6pb/Qy8c+lqua8cFpEy7g39NRRqOWc3rOwAy8m5Y2BY= github.com/alibabacloud-go/dysmsapi-20170525/v3 v3.0.6 h1:UTl97mt2qfavxveqCkaVg4tKaZUPzA9RKbFIRaIdtdg= @@ -20,7 +18,6 @@ github.com/alibabacloud-go/openapi-util v0.1.0/go.mod h1:sQuElr4ywwFRlCCberQwKRF github.com/alibabacloud-go/tea v1.1.0/go.mod h1:IkGyUSX4Ba1V+k4pCtJUc6jDpZLFph9QMy2VUPTwukg= github.com/alibabacloud-go/tea v1.1.7/go.mod h1:/tmnEaQMyb4Ky1/5D+SE1BAsa5zj/KeGOFfwYm3N/p4= github.com/alibabacloud-go/tea v1.1.8/go.mod h1:/tmnEaQMyb4Ky1/5D+SE1BAsa5zj/KeGOFfwYm3N/p4= -github.com/alibabacloud-go/tea v1.1.11/go.mod h1:/tmnEaQMyb4Ky1/5D+SE1BAsa5zj/KeGOFfwYm3N/p4= github.com/alibabacloud-go/tea v1.1.17/go.mod h1:nXxjm6CIFkBhwW4FQkNrolwbfon8Svy6cujmKFUq98A= github.com/alibabacloud-go/tea v1.1.19 h1:Xroq0M+pr0mC834Djj3Fl4ZA8+GGoA0i7aWse1vmgf4= github.com/alibabacloud-go/tea v1.1.19/go.mod h1:nXxjm6CIFkBhwW4FQkNrolwbfon8Svy6cujmKFUq98A= @@ -34,21 +31,17 @@ github.com/alibabacloud-go/tea-xml v1.1.2 h1:oLxa7JUXm2EDFzMg+7oRsYc+kutgCVwm+bZ github.com/alibabacloud-go/tea-xml v1.1.2/go.mod h1:Rq08vgCcCAjHyRi/M7xlHKUykZCEtyBy9+DPF6GgEu8= github.com/aliyun/credentials-go v1.1.2 h1:qU1vwGIBb3UJ8BwunHDRFtAhS6jnQLnde/yk0+Ih2GY= github.com/aliyun/credentials-go v1.1.2/go.mod h1:ozcZaMR5kLM7pwtCMEpVmQ242suV6qTJya2bDq4X1Tw= -github.com/andreburgaud/crypt2go v1.8.0 h1:J73vGTb1P6XL69SSuumbKs0DWn3ulbl9L92ZXBjw6pc= -github.com/andreburgaud/crypt2go v1.8.0/go.mod h1:L5nfShQ91W78hOWhUH2tlGRPO+POAPJAF5fKOLB9SXg= github.com/boombuler/barcode v1.0.0/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8= +github.com/bsm/ginkgo/v2 v2.12.0 h1:Ny8MWAHyOepLGlLKYmXG4IEkioBysk6GpaRTLC8zwWs= +github.com/bsm/ginkgo/v2 v2.12.0/go.mod h1:SwYbGRRDovPVboqFv0tPTcG1sN61LM1Z4ARdbAV9g4c= +github.com/bsm/gomega v1.27.10 h1:yeMWxP2pV2fG3FgAODIY8EiRE3dy0aeFYt4l7wh6yKA= +github.com/bsm/gomega v1.27.10/go.mod h1:JyEr/xRbxbtgWNi8tIEVPUYZ5Dzef52k01W3YH0H+O0= github.com/bytedance/sonic v1.11.8 h1:Zw/j1KfiS+OYTi9lyB3bb0CFxPJVkM17k1wyDG32LRA= github.com/bytedance/sonic v1.11.8/go.mod h1:LysEHSvpvDySVdC2f87zGWf6CIKJcAvqab1ZaiQtds4= github.com/bytedance/sonic/loader v0.1.1 h1:c+e5Pt1k/cy5wMveRDyk2X4B9hF4g7an8N3zCYjJFNM= github.com/bytedance/sonic/loader v0.1.1/go.mod h1:ncP89zfokxS5LZrJxl5z0UJcsk4M4yY2JpfqGeCtNLU= github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= -github.com/chromedp/cdproto v0.0.0-20240801214329-3f85d328b335 h1:bATMoZLH2QGct1kzDxfmeBUQI/QhQvB0mBrOTct+YlQ= -github.com/chromedp/cdproto v0.0.0-20240801214329-3f85d328b335/go.mod h1:GKljq0VrfU4D5yc+2qA6OVr8pmO/MBbPEWqWQ/oqGEs= -github.com/chromedp/chromedp v0.10.0 h1:bRclRYVpMm/UVD76+1HcRW9eV3l58rFfy7AdBvKab1E= -github.com/chromedp/chromedp v0.10.0/go.mod h1:ei/1ncZIqXX1YnAYDkxhD4gzBgavMEUu7JCKvztdomE= -github.com/chromedp/sysutil v1.0.0 h1:+ZxhTpfpZlmchB58ih/LBHX52ky7w2VhQVKQMucy3Ic= -github.com/chromedp/sysutil v1.0.0/go.mod h1:kgWmDdq8fTzXYcKIBqIYvRRTnYb9aNS9moAV0xufSww= github.com/clbanning/mxj/v2 v2.5.5 h1:oT81vUeEiQQ/DcHbzSytRngP6Ky9O+L+0Bw0zSJag9E= github.com/clbanning/mxj/v2 v2.5.5/go.mod h1:hNiWqW14h+kc+MdF9C6/YoRfjEJoR3ou6tn/Qo+ve2s= github.com/cloudwego/base64x v0.1.4 h1:jwCgWpFanWmN8xoIUHa2rtzmkd5J2plF/dnLS6Xd/0Y= @@ -61,16 +54,10 @@ github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1 github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f h1:lO4WD4F/rVNCu3HqELle0jiPLLBs70cWOduZpkS1E78= github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f/go.mod h1:cuUVRXasLTGF7a8hSLbxyZXjz+1KgoB3wDUb6vlszIc= -github.com/fogleman/gg v1.3.0 h1:/7zJX8F6AaYQc57WQCyN9cAIz+4bCJGO9B+dyW29am8= -github.com/fogleman/gg v1.3.0/go.mod h1:R/bRT+9gY/C5z7JzPU0zXsXHKM4/ayA+zqcVNZzPa1k= -github.com/forgoer/openssl v1.6.0 h1:IueL+UfH0hKo99xFPojHLlO3QzRBQqFY+Cht0WwtOC0= -github.com/forgoer/openssl v1.6.0/go.mod h1:9DZ4yOsQmveP0aXC/BpQ++Y5TKaz5yR9+emcxmIZNZs= github.com/frankban/quicktest v1.14.6 h1:7Xjx+VpznH+oBnejlPUj8oUpdxnVs4f8XU8WnHkI4W8= github.com/frankban/quicktest v1.14.6/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0= github.com/fsnotify/fsnotify v1.7.0 h1:8JEhPFa5W2WU7YfeZzPNqzMP6Lwt7L2715Ggo0nosvA= github.com/fsnotify/fsnotify v1.7.0/go.mod h1:40Bi/Hjc2AVfZrqy+aj+yEI+/bRxZnMJyTJwOpGvigM= -github.com/fvbock/endless v0.0.0-20170109170031-447134032cb6 h1:6VSn3hB5U5GeA6kQw4TwWIWbOhtvR2hmbBJnTOtqTWc= -github.com/fvbock/endless v0.0.0-20170109170031-447134032cb6/go.mod h1:YxOVT5+yHzKvwhsiSIWmbAYM3Dr9AEEbER2dVayfBkg= github.com/gabriel-vasile/mimetype v1.4.4 h1:QjV6pZ7/XZ7ryI2KuyeEDE8wnh7fHP9YnQy+R0LnH8I= github.com/gabriel-vasile/mimetype v1.4.4/go.mod h1:JwLei5XPtWdGiMFB5Pjle1oEeoSeEuJfJE+TtfvdB/s= github.com/gin-contrib/sse v0.1.0 h1:Y/yl/+YNO8GZSjAhjMsSuLt29uWRFHdHYUb5lYOV9qE= @@ -88,18 +75,10 @@ github.com/go-playground/validator/v10 v10.22.0/go.mod h1:dbuPbCMFw/DrkbEynArYaC github.com/go-sql-driver/mysql v1.7.0/go.mod h1:OXbVy3sEdcQ2Doequ6Z5BW6fXNQTmx+9S1MCJN5yJMI= github.com/go-sql-driver/mysql v1.8.1 h1:LedoTUt/eveggdHS9qUFC1EFSa8bU2+1pZjSRpvNJ1Y= github.com/go-sql-driver/mysql v1.8.1/go.mod h1:wEBSXgmK//2ZFJyE+qWnIsVGmvmEKlqwuVSjsCm7DZg= -github.com/gobwas/httphead v0.1.0 h1:exrUm0f4YX0L7EBwZHuCF4GDp8aJfVeBrlLQrs6NqWU= -github.com/gobwas/httphead v0.1.0/go.mod h1:O/RXo79gxV8G+RqlR/otEwx4Q36zl9rqC5u12GKvMCM= -github.com/gobwas/pool v0.2.1 h1:xfeeEhW7pwmX8nuLVlqbzVc7udMDrwetjEv+TZIz1og= -github.com/gobwas/pool v0.2.1/go.mod h1:q8bcK0KcYlCgd9e7WYLm9LpyS+YeLd8JVDW6WezmKEw= -github.com/gobwas/ws v1.4.0 h1:CTaoG1tojrh4ucGPcoJFiAQUAsEWekEWvLy7GsVNqGs= -github.com/gobwas/ws v1.4.0/go.mod h1:G3gNqMNtPppf5XUz7O4shetPpcZ1VJ7zt18dlUeakrc= github.com/goccy/go-json v0.10.3 h1:KZ5WoDbxAIgm2HNbYckL0se1fHD6rz5j4ywS6ebzDqA= github.com/goccy/go-json v0.10.3/go.mod h1:oq7eo15ShAhp70Anwd5lgX2pLfOS3QCiwU/PULtXL6M= github.com/golang-jwt/jwt/v5 v5.2.1 h1:OuVbFODueb089Lh128TAcimifWaLhJwVflnrgM17wHk= github.com/golang-jwt/jwt/v5 v5.2.1/go.mod h1:pqrtFR0X4osieyHYxtmOUWsAWrfe1Q5UVIyoH402zdk= -github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0 h1:DACJavvAHhabrF08vX0COfcOBJRhZ8lUbR+ZWIs0Y5g= -github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0/go.mod h1:E/TSTwGwJL78qG/PmXZO1EjYhfJinVAhrmmHX6Z8B9k= github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= @@ -113,8 +92,6 @@ github.com/jinzhu/inflection v1.0.0 h1:K317FqzuhWc8YvSVlFMCCUb36O/S9MCKRDI7QkRKD github.com/jinzhu/inflection v1.0.0/go.mod h1:h+uFLlag+Qp1Va5pdKtLDYj+kHp5pxUVkryuEj+Srlc= github.com/jinzhu/now v1.1.5 h1:/o9tlHleP7gOFmsnYNz3RGnqzefHA47wQpKrrdTIwXQ= github.com/jinzhu/now v1.1.5/go.mod h1:d3SSVoowX0Lcu0IBviAWJpolVfI5UJVZZ7cO71lE/z8= -github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY= -github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= @@ -132,13 +109,10 @@ github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= -github.com/ledongthuc/pdf v0.0.0-20220302134840-0c2507a12d80/go.mod h1:imJHygn/1yfhB7XSJJKlFZKl/J+dCPAknuiaGOshXAs= github.com/leodido/go-urn v1.4.0 h1:WT9HwE9SGECu3lg4d/dIA+jxlljEa1/ffXKmRjqdmIQ= github.com/leodido/go-urn v1.4.0/go.mod h1:bvxc+MVxLKB4z00jd1z+Dvzr47oO32F/QSNjSBOlFxI= github.com/magiconair/properties v1.8.7 h1:IeQXZAiQcpL9mgcAe1Nu6cX9LLw6ExEHKjN0VQdvPDY= github.com/magiconair/properties v1.8.7/go.mod h1:Dhd985XPs7jluiymwWYZ0G4Z61jb3vdS329zhj2hYo0= -github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0= -github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY= @@ -152,13 +126,10 @@ github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9G github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e h1:fD57ERR4JtEqsWbfPhv4DMiApHyliiK5xCTNVSPiaAs= github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= -github.com/orisano/pixelmatch v0.0.0-20220722002657-fb0b55479cde/go.mod h1:nZgzbfBr3hhjoZnS66nKrHmduYNpc34ny7RK4z5/HM0= github.com/pelletier/go-toml/v2 v2.2.2 h1:aYUidT7k73Pcl9nb2gScu7NSrKCSHIDE89b3+6Wq+LM= github.com/pelletier/go-toml/v2 v2.2.2/go.mod h1:1t835xjRzz80PqgE6HHgN2JOsmgYu/h4qDAS4n929Rs= github.com/phpdave11/gofpdi v1.0.7/go.mod h1:vBmVV0Do6hSBHC8uKUQ71JGW+ZGQq74llk/7bXwjDoI= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= -github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= -github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= @@ -171,8 +142,6 @@ github.com/sagikazarmark/locafero v0.6.0 h1:ON7AQg37yzcRPU69mt7gwhFEBwxI6P9T4Qu3 github.com/sagikazarmark/locafero v0.6.0/go.mod h1:77OmuIc6VTraTXKXIs/uvUxKGUXjE1GbemJYHqdNjX0= github.com/sagikazarmark/slog-shim v0.1.0 h1:diDBnUNK9N/354PgrxMywXnAwEr1QZcOr6gto+ugjYE= github.com/sagikazarmark/slog-shim v0.1.0/go.mod h1:SrcSrq8aKtyuqEI1uvTDTK1arOWRIczQRv+GVI1AkeQ= -github.com/sirupsen/logrus v1.8.1 h1:dJKuHgqk1NNQlqoA6BTlM1Wf9DOH3NBjQyu0h9+AZZE= -github.com/sirupsen/logrus v1.8.1/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= github.com/smartwalle/alipay/v3 v3.2.22 h1:W3EQXOmQnFYnV2ZE0s52bO1T3J0nZZL5LRvtq0nVbd4= github.com/smartwalle/alipay/v3 v3.2.22/go.mod h1:lVqFiupPf8YsAXaq5JXcwqnOUC2MCF+2/5vub+RlagE= github.com/smartwalle/ncrypto v1.0.4 h1:P2rqQxDepJwgeO5ShoC+wGcK2wNJDmcdBOWAksuIgx8= @@ -201,7 +170,6 @@ github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpE github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= -github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= @@ -212,6 +180,12 @@ github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsT github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/subosito/gotenv v1.6.0 h1:9NlTDc1FTs4qu0DDq7AEtTPNw6SVm7uBMsUCUjABIf8= github.com/subosito/gotenv v1.6.0/go.mod h1:Dk4QP5c2W3ibzajGcXpNraDfq2IrhjMIvMSWPKKo0FU= +github.com/tidwall/gjson v1.18.0 h1:FIDeeyB800efLX89e5a8Y0BNH+LOngJyGrIWxG2FKQY= +github.com/tidwall/gjson v1.18.0/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= +github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA= +github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM= +github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= +github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= github.com/tjfoc/gmsm v1.3.2 h1:7JVkAn5bvUJ7HtU08iW6UiD+UTmJTIToHCfeFzkcCxM= github.com/tjfoc/gmsm v1.3.2/go.mod h1:HaUcFuY0auTiaHB9MHFGCPx5IaLhTUd2atbCFBQXn9w= github.com/twitchyliquid64/golang-asm v0.15.1 h1:SU5vSMR7hnwNxj24w34ZyCi/FmDZTkS4MhqMhdFk5YI= @@ -222,8 +196,6 @@ github.com/unrolled/secure v1.15.0 h1:q7x+pdp8jAHnbzxu6UheP8fRlG/rwYTb8TPuQ3rn9O github.com/unrolled/secure v1.15.0/go.mod h1:BmF5hyM6tXczk3MpQkFf1hpKSRqCyhqcbiQtiAF7+40= github.com/wechatpay-apiv3/wechatpay-go v0.2.18 h1:vj5tvSmnEIz3ZsnFNNUzg+3Z46xgNMJbrO4aD4wP15w= github.com/wechatpay-apiv3/wechatpay-go v0.2.18/go.mod h1:A254AUBVB6R+EqQFo3yTgeh7HtyqRRtN2w9hQSOrd4Q= -github.com/wumansgy/goEncrypt v1.1.0 h1:Krr2FJL4GEsMTBvLfsnoTmgWb7rkGnL4siJ9K2cxMs0= -github.com/wumansgy/goEncrypt v1.1.0/go.mod h1:dWgF7mi5Ujmt8V5EoyRqjH6XtZ8wmNQyT4u2uvH8Pyg= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.1.30/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= @@ -237,15 +209,11 @@ golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8U golang.org/x/crypto v0.0.0-20191219195013-becbf705a915/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200510223506-06a226fb4e37/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.24.0 h1:mnl8DM0o513X8fdIkmyFE/5hTYxbwYOjDS/+rK6qpRI= -golang.org/x/crypto v0.24.0/go.mod h1:Z1PMYSOR5nyMcyAVAIQSKCDwalqy85Aqn1x3Ws4L5DM= golang.org/x/crypto v0.26.0 h1:RrRspgV4mU+YwB4FYnuBoKsUapNIL5cohGAmSH3azsw= golang.org/x/crypto v0.26.0/go.mod h1:GY7jblb9wI+FOo5y8/S2oY4zWP07AkOJ4+jxCqdqn54= golang.org/x/exp v0.0.0-20240613232115-7f521ea00fb8 h1:yixxcjnhBmY0nkL253HFVIm0JsFHwrHdT3Yh6szTnfY= golang.org/x/exp v0.0.0-20240613232115-7f521ea00fb8/go.mod h1:jj3sYF3dwk5D+ghuXyeI3r5MFf+NT2An6/9dOA95KSI= golang.org/x/image v0.0.0-20190910094157-69e4b8554b2a/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= -golang.org/x/image v0.20.0 h1:7cVCUjQwfL18gyBJOmYvptfSHS8Fb3YUDtfLIZ7Nbpw= -golang.org/x/image v0.20.0/go.mod h1:0a88To4CYVBAHp5FXJm8o7QbUl37Vd85ply1vyD8auM= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= @@ -262,13 +230,10 @@ golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.7.0 h1:YsImfSBoP9QPYL0xyKJPq0gcaJdG3rInoqxTWbfQu9M= -golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ= golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200509044756-6aff5f38e54f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -277,9 +242,6 @@ golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.21.0 h1:rF+pYz3DAGSQAxAu1CbC7catZg4ebC4UIeIhKxBZvws= -golang.org/x/sys v0.21.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.22.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.23.0 h1:YfKFowiIMvtgl1UERQoTPPToxltDeZfbj4H7dVUCwmM= golang.org/x/sys v0.23.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= @@ -290,10 +252,6 @@ golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.16.0 h1:a94ExnEXNtEwYLGJSIUxnWoxoRz/ZcCsV63ROupILh4= -golang.org/x/text v0.16.0/go.mod h1:GhwF1Be+LQoKShO3cGOHzqOgRrGaYc9AvblQOmPVHnI= -golang.org/x/text v0.17.0 h1:XtiM5bkSOt+ewxlOE/aE/AKEHibwj/6gvWMl9Rsh0Qc= -golang.org/x/text v0.17.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= golang.org/x/text v0.18.0 h1:XvMDiNzPAl0jr17s6W9lcaIhGUfUORdGCNsuLmPG224= golang.org/x/text v0.18.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= diff --git a/logs/2024-09/2024-09-26 b/logs/2024-09/2024-09-26 new file mode 100644 index 0000000..29198e5 --- /dev/null +++ b/logs/2024-09/2024-09-26 @@ -0,0 +1,63 @@ +[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production. + - using env: export GIN_MODE=release + - using code: gin.SetMode(gin.ReleaseMode) + +[GIN-debug] Loaded HTML Templates (2): + - + - refund.html + +[GIN-debug] GET /api/user/test --> qnc-server/api.(*User).Test-fm (4 handlers) +[GIN-debug] POST /api/user/log --> qnc-server/api.(*User).Log-fm (4 handlers) +[GIN-debug] POST /api/user/login --> qnc-server/api.(*User).Login-fm (4 handlers) +[GIN-debug] POST /api/user/h5_login --> qnc-server/api.(*User).H5Login-fm (4 handlers) +[GIN-debug] POST /api/user/phone_login --> qnc-server/api.(*User).PhoneLogin-fm (4 handlers) +[GIN-debug] POST /api/user/verify --> qnc-server/api.(*User).GetVerify-fm (4 handlers) +[GIN-debug] GET /api/user/get_config --> qnc-server/api.(*User).GetSDKConfig-fm (4 handlers) +[GIN-debug] POST /api/single/bc_evaluate_marriage --> qnc-server/api.(*SingleQuery).EvaluateMarriageQuery-fm (6 handlers) +[GIN-debug] GET /api/single/get_merriage_record --> qnc-server/api.(*SingleQuery).GetMerriageRecord-fm (5 handlers) +[GIN-debug] POST /api/lawsuitQuery/query_v2 --> qnc-server/api.(*LawsuitQuery).queryListV2-fm (5 handlers) +[GIN-debug] GET /api/lawsuitQuery/get_record --> qnc-server/api.(*LawsuitQuery).GetRecord-fm (5 handlers) +[GIN-debug] GET /api/ent/search --> qnc-server/api.(*Ent).search-fm (5 handlers) +[GIN-debug] GET /api/ent/query_details --> qnc-server/api.(*Ent).queryDetails-fm (5 handlers) +[GIN-debug] GET /api/ent/query_feature/:feature --> qnc-server/api.(*Ent).queryFeature-fm (5 handlers) +[GIN-debug] GET /api/ent/query_list_feature/:feature --> qnc-server/api.(*Ent).queryListFeature-fm (5 handlers) +[GIN-debug] POST /api/pay/callback/:platform --> qnc-server/api.(*Pay).Callback-fm (4 handlers) +[GIN-debug] GET /api/pay/refund_details/:id --> qnc-server/api.(*Pay).RefundDetailsHTML-fm (4 handlers) +[GIN-debug] POST /api/pay/refund/:id --> qnc-server/api.(*Pay).Refund-fm (4 handlers) +[GIN-debug] POST /api/pay/refund_callback/:platform --> qnc-server/api.(*Pay).RefundCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/ali_callback --> qnc-server/api.(*Pay).AlipayCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/complaint_callback/:platform --> qnc-server/api.(*Pay).WxPayComplaintCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/prepay --> qnc-server/api.(*Pay).Prepay-fm (5 handlers) +[GIN-debug] GET /api/pay/order_list --> qnc-server/api.(*Pay).GetOrderList-fm (5 handlers) +[GIN-debug] POST /api/pay/ali_prepay --> qnc-server/api.(*Pay).AliPrepay-fm (5 handlers) +[GIN-debug] GET /api/pay/get_query_cache --> qnc-server/api.(*Pay).GetQueryCache-fm (5 handlers) +[GIN-debug] GET /api/product/product_notes --> qnc-server/api.(*Product).GetProductNotes-fm (5 handlers) +[GIN-debug] GET /api/product/product_info --> qnc-server/api.(*Product).GetProductInfo-fm (4 handlers) +[GIN-debug] GET /api/render/get_index --> qnc-server/api.(*Render).GetIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_car_index --> qnc-server/api.(*Render).GetCarIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_verify_index --> qnc-server/api.(*Render).GetVerifyIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_notification --> qnc-server/api.(*Render).GetNotification-fm (4 handlers) +[GIN-debug] GET /api/render/get_shadow --> qnc-server/api.(*Render).GetShade-fm (4 handlers) +[GIN-debug] GET /api/render/setting --> qnc-server/api.(*Render).GetSetting-fm (4 handlers) +[GIN-debug] POST /api/car/insurance --> qnc-server/api.(*Car).Insurance-fm (5 handlers) +[GIN-debug] POST /api/car/maintenance --> qnc-server/api.(*Car).Maintenance-fm (5 handlers) +[GIN-debug] GET /api/car/get_query --> qnc-server/api.(*Car).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/car/person_car_verify --> qnc-server/api.(*Car).PersonCarVerify-fm (5 handlers) +[GIN-debug] POST /api/car/under_name --> qnc-server/api.(*Car).UnderName-fm (5 handlers) +[GIN-debug] POST /api/car/insurance_info --> qnc-server/api.(*Car).InsuranceInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vin_check_info --> qnc-server/api.(*Car).VinCheckInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_transfer --> qnc-server/api.(*Car).VehicleTransfer-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_valuation --> qnc-server/api.(*Car).VehicleValuation-fm (5 handlers) +[GIN-debug] GET /api/car/get_maintenance_history --> qnc-server/api.(*Car).QueryHistoryList-fm (5 handlers) +[GIN-debug] POST /api/car/callback --> qnc-server/api.(*Car).CarCallback-fm (4 handlers) +[GIN-debug] POST /api/verify/phone --> qnc-server/api.(*Verify).VerifyNamePhone-fm (5 handlers) +[GIN-debug] GET /api/verify/get_query --> qnc-server/api.(*Verify).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/verify/card_no --> qnc-server/api.(*Verify).VerifyNameCard-fm (5 handlers) +[GIN-debug] POST /api/verify/bank_card --> qnc-server/api.(*Verify).VerifyBankCard-fm (5 handlers) +[GIN-debug] POST /api/verify/skill_cert --> qnc-server/api.(*Verify).VerifySkillCert-fm (5 handlers) +[GIN-debug] POST /api/feature/ocr_name --> qnc-server/api.(*Feature).OcrName-fm (5 handlers) +[GIN-debug] POST /api/feature/verify_elements --> qnc-server/api.(*Feature).VerifyElements-fm (5 handlers) +2024/09/26 16:16:49 HTTP server listening on http://127.0.0.1:14500 +[GIN-debug] [WARNING] You trusted all proxies, this is NOT safe. We recommend you to set a value. +Please check https://pkg.go.dev/github.com/gin-gonic/gin#readme-don-t-trust-all-proxies for details. +[GIN-debug] Listening and serving HTTP on :14500 diff --git a/logs/2024-10/2024-10-04 b/logs/2024-10/2024-10-04 new file mode 100644 index 0000000..79c398f --- /dev/null +++ b/logs/2024-10/2024-10-04 @@ -0,0 +1,63 @@ +[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production. + - using env: export GIN_MODE=release + - using code: gin.SetMode(gin.ReleaseMode) + +[GIN-debug] Loaded HTML Templates (2): + - + - refund.html + +[GIN-debug] GET /api/user/test --> qnc-server/api.(*User).Test-fm (4 handlers) +[GIN-debug] POST /api/user/log --> qnc-server/api.(*User).Log-fm (4 handlers) +[GIN-debug] POST /api/user/login --> qnc-server/api.(*User).Login-fm (4 handlers) +[GIN-debug] POST /api/user/h5_login --> qnc-server/api.(*User).H5Login-fm (4 handlers) +[GIN-debug] POST /api/user/phone_login --> qnc-server/api.(*User).PhoneLogin-fm (4 handlers) +[GIN-debug] POST /api/user/verify --> qnc-server/api.(*User).GetVerify-fm (4 handlers) +[GIN-debug] GET /api/user/get_config --> qnc-server/api.(*User).GetSDKConfig-fm (4 handlers) +[GIN-debug] POST /api/single/bc_evaluate_marriage --> qnc-server/api.(*SingleQuery).EvaluateMarriageQuery-fm (6 handlers) +[GIN-debug] GET /api/single/get_merriage_record --> qnc-server/api.(*SingleQuery).GetMerriageRecord-fm (5 handlers) +[GIN-debug] POST /api/lawsuitQuery/query_v2 --> qnc-server/api.(*LawsuitQuery).queryListV2-fm (5 handlers) +[GIN-debug] GET /api/lawsuitQuery/get_record --> qnc-server/api.(*LawsuitQuery).GetRecord-fm (5 handlers) +[GIN-debug] GET /api/ent/search --> qnc-server/api.(*Ent).search-fm (5 handlers) +[GIN-debug] GET /api/ent/query_details --> qnc-server/api.(*Ent).queryDetails-fm (5 handlers) +[GIN-debug] GET /api/ent/query_feature/:feature --> qnc-server/api.(*Ent).queryFeature-fm (5 handlers) +[GIN-debug] GET /api/ent/query_list_feature/:feature --> qnc-server/api.(*Ent).queryListFeature-fm (5 handlers) +[GIN-debug] POST /api/pay/callback/:platform --> qnc-server/api.(*Pay).Callback-fm (4 handlers) +[GIN-debug] GET /api/pay/refund_details/:id --> qnc-server/api.(*Pay).RefundDetailsHTML-fm (4 handlers) +[GIN-debug] POST /api/pay/refund/:id --> qnc-server/api.(*Pay).Refund-fm (4 handlers) +[GIN-debug] POST /api/pay/refund_callback/:platform --> qnc-server/api.(*Pay).RefundCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/ali_callback --> qnc-server/api.(*Pay).AlipayCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/complaint_callback/:platform --> qnc-server/api.(*Pay).WxPayComplaintCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/prepay --> qnc-server/api.(*Pay).Prepay-fm (5 handlers) +[GIN-debug] GET /api/pay/order_list --> qnc-server/api.(*Pay).GetOrderList-fm (5 handlers) +[GIN-debug] POST /api/pay/ali_prepay --> qnc-server/api.(*Pay).AliPrepay-fm (5 handlers) +[GIN-debug] GET /api/pay/get_query_cache --> qnc-server/api.(*Pay).GetQueryCache-fm (5 handlers) +[GIN-debug] GET /api/product/product_notes --> qnc-server/api.(*Product).GetProductNotes-fm (5 handlers) +[GIN-debug] GET /api/product/product_info --> qnc-server/api.(*Product).GetProductInfo-fm (4 handlers) +[GIN-debug] GET /api/render/get_index --> qnc-server/api.(*Render).GetIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_car_index --> qnc-server/api.(*Render).GetCarIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_verify_index --> qnc-server/api.(*Render).GetVerifyIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_notification --> qnc-server/api.(*Render).GetNotification-fm (4 handlers) +[GIN-debug] GET /api/render/get_shadow --> qnc-server/api.(*Render).GetShade-fm (4 handlers) +[GIN-debug] GET /api/render/setting --> qnc-server/api.(*Render).GetSetting-fm (4 handlers) +[GIN-debug] POST /api/car/insurance --> qnc-server/api.(*Car).Insurance-fm (5 handlers) +[GIN-debug] POST /api/car/maintenance --> qnc-server/api.(*Car).Maintenance-fm (5 handlers) +[GIN-debug] GET /api/car/get_query --> qnc-server/api.(*Car).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/car/person_car_verify --> qnc-server/api.(*Car).PersonCarVerify-fm (5 handlers) +[GIN-debug] POST /api/car/under_name --> qnc-server/api.(*Car).UnderName-fm (5 handlers) +[GIN-debug] POST /api/car/insurance_info --> qnc-server/api.(*Car).InsuranceInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vin_check_info --> qnc-server/api.(*Car).VinCheckInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_transfer --> qnc-server/api.(*Car).VehicleTransfer-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_valuation --> qnc-server/api.(*Car).VehicleValuation-fm (5 handlers) +[GIN-debug] GET /api/car/get_maintenance_history --> qnc-server/api.(*Car).QueryHistoryList-fm (5 handlers) +[GIN-debug] POST /api/car/callback --> qnc-server/api.(*Car).CarCallback-fm (4 handlers) +[GIN-debug] POST /api/verify/phone --> qnc-server/api.(*Verify).VerifyNamePhone-fm (5 handlers) +[GIN-debug] GET /api/verify/get_query --> qnc-server/api.(*Verify).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/verify/card_no --> qnc-server/api.(*Verify).VerifyNameCard-fm (5 handlers) +[GIN-debug] POST /api/verify/bank_card --> qnc-server/api.(*Verify).VerifyBankCard-fm (5 handlers) +[GIN-debug] POST /api/verify/skill_cert --> qnc-server/api.(*Verify).VerifySkillCert-fm (5 handlers) +[GIN-debug] POST /api/feature/ocr_name --> qnc-server/api.(*Feature).OcrName-fm (5 handlers) +[GIN-debug] POST /api/feature/verify_elements --> qnc-server/api.(*Feature).VerifyElements-fm (5 handlers) +2024/10/04 23:21:13 HTTP server listening on http://127.0.0.1:14500 +[GIN-debug] [WARNING] You trusted all proxies, this is NOT safe. We recommend you to set a value. +Please check https://pkg.go.dev/github.com/gin-gonic/gin#readme-don-t-trust-all-proxies for details. +[GIN-debug] Listening and serving HTTP on :14500 diff --git a/logs/2024-10/2024-10-08 b/logs/2024-10/2024-10-08 new file mode 100644 index 0000000..6efbe82 --- /dev/null +++ b/logs/2024-10/2024-10-08 @@ -0,0 +1,105 @@ +[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production. + - using env: export GIN_MODE=release + - using code: gin.SetMode(gin.ReleaseMode) + +[GIN-debug] Loaded HTML Templates (2): + - + - refund.html + +[GIN-debug] GET /api/user/test --> qnc-server/api.(*User).Test-fm (4 handlers) +[GIN-debug] POST /api/user/log --> qnc-server/api.(*User).Log-fm (4 handlers) +[GIN-debug] POST /api/user/login --> qnc-server/api.(*User).Login-fm (4 handlers) +[GIN-debug] POST /api/user/h5_login --> qnc-server/api.(*User).H5Login-fm (4 handlers) +[GIN-debug] POST /api/user/phone_login --> qnc-server/api.(*User).PhoneLogin-fm (4 handlers) +[GIN-debug] POST /api/user/verify --> qnc-server/api.(*User).GetVerify-fm (4 handlers) +[GIN-debug] GET /api/user/get_config --> qnc-server/api.(*User).GetSDKConfig-fm (4 handlers) +[GIN-debug] POST /api/single/bc_evaluate_marriage --> qnc-server/api.(*SingleQuery).EvaluateMarriageQuery-fm (6 handlers) +[GIN-debug] GET /api/single/get_merriage_record --> qnc-server/api.(*SingleQuery).GetMerriageRecord-fm (5 handlers) +[GIN-debug] POST /api/lawsuitQuery/query_v2 --> qnc-server/api.(*LawsuitQuery).queryListV2-fm (5 handlers) +[GIN-debug] GET /api/lawsuitQuery/get_record --> qnc-server/api.(*LawsuitQuery).GetRecord-fm (5 handlers) +[GIN-debug] GET /api/ent/search --> qnc-server/api.(*Ent).search-fm (5 handlers) +[GIN-debug] GET /api/ent/query_details --> qnc-server/api.(*Ent).queryDetails-fm (5 handlers) +[GIN-debug] GET /api/ent/query_feature/:feature --> qnc-server/api.(*Ent).queryFeature-fm (5 handlers) +[GIN-debug] GET /api/ent/query_list_feature/:feature --> qnc-server/api.(*Ent).queryListFeature-fm (5 handlers) +[GIN-debug] POST /api/pay/callback/:platform --> qnc-server/api.(*Pay).Callback-fm (4 handlers) +[GIN-debug] GET /api/pay/refund_details/:id --> qnc-server/api.(*Pay).RefundDetailsHTML-fm (4 handlers) +[GIN-debug] POST /api/pay/refund/:id --> qnc-server/api.(*Pay).Refund-fm (4 handlers) +[GIN-debug] POST /api/pay/refund_callback/:platform --> qnc-server/api.(*Pay).RefundCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/ali_callback --> qnc-server/api.(*Pay).AlipayCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/complaint_callback/:platform --> qnc-server/api.(*Pay).WxPayComplaintCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/prepay --> qnc-server/api.(*Pay).Prepay-fm (5 handlers) +[GIN-debug] GET /api/pay/order_list --> qnc-server/api.(*Pay).GetOrderList-fm (5 handlers) +[GIN-debug] POST /api/pay/ali_prepay --> qnc-server/api.(*Pay).AliPrepay-fm (5 handlers) +[GIN-debug] GET /api/pay/get_query_cache --> qnc-server/api.(*Pay).GetQueryCache-fm (5 handlers) +[GIN-debug] GET /api/product/product_notes --> qnc-server/api.(*Product).GetProductNotes-fm (5 handlers) +[GIN-debug] GET /api/product/product_info --> qnc-server/api.(*Product).GetProductInfo-fm (4 handlers) +[GIN-debug] GET /api/render/get_index --> qnc-server/api.(*Render).GetIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_car_index --> qnc-server/api.(*Render).GetCarIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_verify_index --> qnc-server/api.(*Render).GetVerifyIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_notification --> qnc-server/api.(*Render).GetNotification-fm (4 handlers) +[GIN-debug] GET /api/render/get_shadow --> qnc-server/api.(*Render).GetShade-fm (4 handlers) +[GIN-debug] GET /api/render/setting --> qnc-server/api.(*Render).GetSetting-fm (4 handlers) +[GIN-debug] POST /api/car/insurance --> qnc-server/api.(*Car).Insurance-fm (5 handlers) +[GIN-debug] POST /api/car/maintenance --> qnc-server/api.(*Car).Maintenance-fm (5 handlers) +[GIN-debug] GET /api/car/get_query --> qnc-server/api.(*Car).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/car/person_car_verify --> qnc-server/api.(*Car).PersonCarVerify-fm (5 handlers) +[GIN-debug] POST /api/car/under_name --> qnc-server/api.(*Car).UnderName-fm (5 handlers) +[GIN-debug] POST /api/car/insurance_info --> qnc-server/api.(*Car).InsuranceInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vin_check_info --> qnc-server/api.(*Car).VinCheckInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_transfer --> qnc-server/api.(*Car).VehicleTransfer-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_valuation --> qnc-server/api.(*Car).VehicleValuation-fm (5 handlers) +[GIN-debug] GET /api/car/get_maintenance_history --> qnc-server/api.(*Car).QueryHistoryList-fm (5 handlers) +[GIN-debug] POST /api/car/callback --> qnc-server/api.(*Car).CarCallback-fm (4 handlers) +[GIN-debug] POST /api/verify/phone --> qnc-server/api.(*Verify).VerifyNamePhone-fm (5 handlers) +[GIN-debug] GET /api/verify/get_query --> qnc-server/api.(*Verify).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/verify/card_no --> qnc-server/api.(*Verify).VerifyNameCard-fm (5 handlers) +[GIN-debug] POST /api/verify/bank_card --> qnc-server/api.(*Verify).VerifyBankCard-fm (5 handlers) +[GIN-debug] POST /api/verify/skill_cert --> qnc-server/api.(*Verify).VerifySkillCert-fm (5 handlers) +[GIN-debug] POST /api/feature/ocr_name --> qnc-server/api.(*Feature).OcrName-fm (5 handlers) +[GIN-debug] POST /api/feature/verify_elements --> qnc-server/api.(*Feature).VerifyElements-fm (5 handlers) +2024/10/08 23:52:32 HTTP server listening on http://127.0.0.1:14500 +[GIN-debug] [WARNING] You trusted all proxies, this is NOT safe. We recommend you to set a value. +Please check https://pkg.go.dev/github.com/gin-gonic/gin#readme-don-t-trust-all-proxies for details. +[GIN-debug] Listening and serving HTTP on :14500 +2024/10/08 23:52:52 Start: 2024-10-08T23:52:52+08:00, Method: GET, URL: /api/render/get_notification, GET params: map[] +2024/10/08 23:52:52 Start: 2024-10-08T23:52:52+08:00, Method: GET, URL: /api/render/setting, GET params: map[] +2024/10/08 23:52:52 End: 2024-10-08T23:52:52+08:00, Method: GET, URL: /api/render/setting, Status: 200, Latency: 524.7µs +2024/10/08 23:52:52 End: 2024-10-08T23:52:52+08:00, Method: GET, URL: /api/render/get_notification, Status: 200, Latency: 2.9267ms +[GIN] 2024/10/08 - 23:52:52 | 200 | 524.7µs | 127.0.0.1 | GET "/api/render/setting" +[GIN] 2024/10/08 - 23:52:52 | 200 | 2.9267ms | 127.0.0.1 | GET "/api/render/get_notification" +2024/10/08 23:52:53 Start: 2024-10-08T23:52:53+08:00, Method: GET, URL: /api/render/get_index, GET params: map[] +2024/10/08 23:52:53 End: 2024-10-08T23:52:53+08:00, Method: GET, URL: /api/render/get_index, Status: 200, Latency: 716.1µs +[GIN] 2024/10/08 - 23:52:53 | 200 | 716.1µs | 127.0.0.1 | GET "/api/render/get_index" +2024/10/08 23:52:54 Start: 2024-10-08T23:52:54+08:00, Method: GET, URL: /api/product/product_notes?product_name=evaluateMarriage, GET params: map[product_name:[evaluateMarriage]] +2024/10/08 23:52:54 End: 2024-10-08T23:52:54+08:00, Method: GET, URL: /api/product/product_notes?product_name=evaluateMarriage, Status: 401, Latency: 0s +[GIN] 2024/10/08 - 23:52:54 | 401 | 0s | 127.0.0.1 | GET "/api/product/product_notes?product_name=evaluateMarriage" +2024/10/08 23:52:56 Start: 2024-10-08T23:52:56+08:00, Method: GET, URL: /api/product/product_notes?product_name=evaluateMarriage, GET params: map[product_name:[evaluateMarriage]] +2024/10/08 23:52:56 End: 2024-10-08T23:52:56+08:00, Method: GET, URL: /api/product/product_notes?product_name=evaluateMarriage, Status: 401, Latency: 0s +[GIN] 2024/10/08 - 23:52:56 | 401 | 0s | 127.0.0.1 | GET "/api/product/product_notes?product_name=evaluateMarriage" +2024/10/08 23:53:00 Start: 2024-10-08T23:53:00+08:00, Method: POST, URL: /api/user/verify, GET params: map[] +2024/10/08 23:53:01 End: 2024-10-08T23:53:01+08:00, Method: POST, URL: /api/user/verify, Status: 200, Latency: 459.7671ms +[GIN] 2024/10/08 - 23:53:01 | 200 | 459.7671ms | 127.0.0.1 | POST "/api/user/verify" +2024/10/08 23:53:14 Start: 2024-10-08T23:53:14+08:00, Method: POST, URL: /api/user/phone_login, GET params: map[] +2024/10/08 23:53:14 End: 2024-10-08T23:53:14+08:00, Method: POST, URL: /api/user/phone_login, Status: 200, Latency: 5.9183ms +[GIN] 2024/10/08 - 23:53:14 | 200 | 5.9183ms | 127.0.0.1 | POST "/api/user/phone_login" +2024/10/08 23:53:17 Start: 2024-10-08T23:53:17+08:00, Method: GET, URL: /api/product/product_notes?product_name=evaluateMarriage, GET params: map[product_name:[evaluateMarriage]] +2024/10/08 23:53:17 End: 2024-10-08T23:53:17+08:00, Method: GET, URL: /api/product/product_notes?product_name=evaluateMarriage, Status: 200, Latency: 3.0311ms +[GIN] 2024/10/08 - 23:53:17 | 200 | 3.0311ms | 127.0.0.1 | GET "/api/product/product_notes?product_name=evaluateMarriage" +2024/10/08 23:53:46 Start: 2024-10-08T23:53:46+08:00, Method: POST, URL: /api/feature/ocr_name, GET params: map[] +2024/10/08 23:54:05 End: 2024-10-08T23:54:05+08:00, Method: POST, URL: /api/feature/ocr_name, Status: 200, Latency: 18.7497973s +[GIN] 2024/10/08 - 23:54:05 | 200 | 18.7497973s | 127.0.0.1 | POST "/api/feature/ocr_name" +2024/10/08 23:54:08 Start: 2024-10-08T23:54:08+08:00, Method: POST, URL: /api/feature/ocr_name, GET params: map[] +2024/10/09 11:28:37 End: 2024-10-09T11:28:37+08:00, Method: POST, URL: /api/feature/ocr_name, Status: 200, Latency: 11h34m28.5539883s +[GIN] 2024/10/09 - 11:28:37 | 200 | 11h34m28s | 127.0.0.1 | POST "/api/feature/ocr_name" +2024/10/09 11:28:37 Start: 2024-10-09T11:28:37+08:00, Method: GET, URL: /api/render/setting, GET params: map[] +2024/10/09 11:28:37 End: 2024-10-09T11:28:37+08:00, Method: GET, URL: /api/render/setting, Status: 200, Latency: 0s +[GIN] 2024/10/09 - 11:28:37 | 200 | 0s | 127.0.0.1 | GET "/api/render/setting" +2024/10/09 11:28:37 Start: 2024-10-09T11:28:37+08:00, Method: GET, URL: /api/render/get_notification, GET params: map[] +2024/10/09 11:28:37 Start: 2024-10-09T11:28:37+08:00, Method: GET, URL: /api/product/product_notes?product_name=evaluateMarriage, GET params: map[product_name:[evaluateMarriage]] +2024/10/09 11:28:37 End: 2024-10-09T11:28:37+08:00, Method: GET, URL: /api/render/get_notification, Status: 200, Latency: 1.8601ms +2024/10/09 11:28:37 Start: 2024-10-09T11:28:37+08:00, Method: POST, URL: /api/single/bc_evaluate_marriage, GET params: map[] +[GIN] 2024/10/09 - 11:28:37 | 200 | 1.8601ms | 127.0.0.1 | GET "/api/render/get_notification" +2024/10/09 11:28:37 End: 2024-10-09T11:28:37+08:00, Method: POST, URL: /api/single/bc_evaluate_marriage, Status: 200, Latency: 1.079ms +[GIN] 2024/10/09 - 11:28:37 | 200 | 1.079ms | 127.0.0.1 | POST "/api/single/bc_evaluate_marriage" +2024/10/09 11:28:37 End: 2024-10-09T11:28:37+08:00, Method: GET, URL: /api/product/product_notes?product_name=evaluateMarriage, Status: 200, Latency: 8.7459ms +[GIN] 2024/10/09 - 11:28:37 | 200 | 9.2756ms | 127.0.0.1 | GET "/api/product/product_notes?product_name=evaluateMarriage" diff --git a/logs/2024-10/2024-10-22 b/logs/2024-10/2024-10-22 new file mode 100644 index 0000000..0e37630 --- /dev/null +++ b/logs/2024-10/2024-10-22 @@ -0,0 +1,63 @@ +[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production. + - using env: export GIN_MODE=release + - using code: gin.SetMode(gin.ReleaseMode) + +[GIN-debug] Loaded HTML Templates (2): + - + - refund.html + +[GIN-debug] GET /api/user/test --> qnc-server/api.(*User).Test-fm (4 handlers) +[GIN-debug] POST /api/user/log --> qnc-server/api.(*User).Log-fm (4 handlers) +[GIN-debug] POST /api/user/login --> qnc-server/api.(*User).Login-fm (4 handlers) +[GIN-debug] POST /api/user/h5_login --> qnc-server/api.(*User).H5Login-fm (4 handlers) +[GIN-debug] POST /api/user/phone_login --> qnc-server/api.(*User).PhoneLogin-fm (4 handlers) +[GIN-debug] POST /api/user/verify --> qnc-server/api.(*User).GetVerify-fm (4 handlers) +[GIN-debug] GET /api/user/get_config --> qnc-server/api.(*User).GetSDKConfig-fm (4 handlers) +[GIN-debug] POST /api/single/bc_evaluate_marriage --> qnc-server/api.(*SingleQuery).EvaluateMarriageQuery-fm (6 handlers) +[GIN-debug] GET /api/single/get_merriage_record --> qnc-server/api.(*SingleQuery).GetMerriageRecord-fm (5 handlers) +[GIN-debug] POST /api/lawsuitQuery/query_v2 --> qnc-server/api.(*LawsuitQuery).queryListV2-fm (5 handlers) +[GIN-debug] GET /api/lawsuitQuery/get_record --> qnc-server/api.(*LawsuitQuery).GetRecord-fm (5 handlers) +[GIN-debug] GET /api/ent/search --> qnc-server/api.(*Ent).search-fm (5 handlers) +[GIN-debug] GET /api/ent/query_details --> qnc-server/api.(*Ent).queryDetails-fm (5 handlers) +[GIN-debug] GET /api/ent/query_feature/:feature --> qnc-server/api.(*Ent).queryFeature-fm (5 handlers) +[GIN-debug] GET /api/ent/query_list_feature/:feature --> qnc-server/api.(*Ent).queryListFeature-fm (5 handlers) +[GIN-debug] POST /api/pay/callback/:platform --> qnc-server/api.(*Pay).Callback-fm (4 handlers) +[GIN-debug] GET /api/pay/refund_details/:id --> qnc-server/api.(*Pay).RefundDetailsHTML-fm (4 handlers) +[GIN-debug] POST /api/pay/refund/:id --> qnc-server/api.(*Pay).Refund-fm (4 handlers) +[GIN-debug] POST /api/pay/refund_callback/:platform --> qnc-server/api.(*Pay).RefundCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/ali_callback --> qnc-server/api.(*Pay).AlipayCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/complaint_callback/:platform --> qnc-server/api.(*Pay).WxPayComplaintCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/prepay --> qnc-server/api.(*Pay).Prepay-fm (5 handlers) +[GIN-debug] GET /api/pay/order_list --> qnc-server/api.(*Pay).GetOrderList-fm (5 handlers) +[GIN-debug] POST /api/pay/ali_prepay --> qnc-server/api.(*Pay).AliPrepay-fm (5 handlers) +[GIN-debug] GET /api/pay/get_query_cache --> qnc-server/api.(*Pay).GetQueryCache-fm (5 handlers) +[GIN-debug] GET /api/product/product_notes --> qnc-server/api.(*Product).GetProductNotes-fm (5 handlers) +[GIN-debug] GET /api/product/product_info --> qnc-server/api.(*Product).GetProductInfo-fm (4 handlers) +[GIN-debug] GET /api/render/get_index --> qnc-server/api.(*Render).GetIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_car_index --> qnc-server/api.(*Render).GetCarIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_verify_index --> qnc-server/api.(*Render).GetVerifyIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_notification --> qnc-server/api.(*Render).GetNotification-fm (4 handlers) +[GIN-debug] GET /api/render/get_shadow --> qnc-server/api.(*Render).GetShade-fm (4 handlers) +[GIN-debug] GET /api/render/setting --> qnc-server/api.(*Render).GetSetting-fm (4 handlers) +[GIN-debug] POST /api/car/insurance --> qnc-server/api.(*Car).Insurance-fm (5 handlers) +[GIN-debug] POST /api/car/maintenance --> qnc-server/api.(*Car).Maintenance-fm (5 handlers) +[GIN-debug] GET /api/car/get_query --> qnc-server/api.(*Car).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/car/person_car_verify --> qnc-server/api.(*Car).PersonCarVerify-fm (5 handlers) +[GIN-debug] POST /api/car/under_name --> qnc-server/api.(*Car).UnderName-fm (5 handlers) +[GIN-debug] POST /api/car/insurance_info --> qnc-server/api.(*Car).InsuranceInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vin_check_info --> qnc-server/api.(*Car).VinCheckInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_transfer --> qnc-server/api.(*Car).VehicleTransfer-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_valuation --> qnc-server/api.(*Car).VehicleValuation-fm (5 handlers) +[GIN-debug] GET /api/car/get_maintenance_history --> qnc-server/api.(*Car).QueryHistoryList-fm (5 handlers) +[GIN-debug] POST /api/car/callback --> qnc-server/api.(*Car).CarCallback-fm (4 handlers) +[GIN-debug] POST /api/verify/phone --> qnc-server/api.(*Verify).VerifyNamePhone-fm (5 handlers) +[GIN-debug] GET /api/verify/get_query --> qnc-server/api.(*Verify).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/verify/card_no --> qnc-server/api.(*Verify).VerifyNameCard-fm (5 handlers) +[GIN-debug] POST /api/verify/bank_card --> qnc-server/api.(*Verify).VerifyBankCard-fm (5 handlers) +[GIN-debug] POST /api/verify/skill_cert --> qnc-server/api.(*Verify).VerifySkillCert-fm (5 handlers) +[GIN-debug] POST /api/feature/ocr_name --> qnc-server/api.(*Feature).OcrName-fm (5 handlers) +[GIN-debug] POST /api/feature/verify_elements --> qnc-server/api.(*Feature).VerifyElements-fm (5 handlers) +2024/10/22 20:13:29 HTTP server listening on http://127.0.0.1:14500 +[GIN-debug] [WARNING] You trusted all proxies, this is NOT safe. We recommend you to set a value. +Please check https://pkg.go.dev/github.com/gin-gonic/gin#readme-don-t-trust-all-proxies for details. +[GIN-debug] Listening and serving HTTP on :14500 diff --git a/logs/2024-10/2024-10-30 b/logs/2024-10/2024-10-30 new file mode 100644 index 0000000..4c35b6f --- /dev/null +++ b/logs/2024-10/2024-10-30 @@ -0,0 +1,552 @@ +[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production. + - using env: export GIN_MODE=release + - using code: gin.SetMode(gin.ReleaseMode) + +[GIN-debug] Loaded HTML Templates (2): + - + - refund.html + +[GIN-debug] GET /api/user/test --> qnc-server/api.(*User).Test-fm (4 handlers) +[GIN-debug] POST /api/user/log --> qnc-server/api.(*User).Log-fm (4 handlers) +[GIN-debug] POST /api/user/login --> qnc-server/api.(*User).Login-fm (4 handlers) +[GIN-debug] POST /api/user/h5_login --> qnc-server/api.(*User).H5Login-fm (4 handlers) +[GIN-debug] POST /api/user/phone_login --> qnc-server/api.(*User).PhoneLogin-fm (4 handlers) +[GIN-debug] POST /api/user/verify --> qnc-server/api.(*User).GetVerify-fm (4 handlers) +[GIN-debug] GET /api/user/get_config --> qnc-server/api.(*User).GetSDKConfig-fm (4 handlers) +[GIN-debug] POST /api/single/bc_evaluate_marriage --> qnc-server/api.(*SingleQuery).EvaluateMarriageQuery-fm (6 handlers) +[GIN-debug] GET /api/single/get_merriage_record --> qnc-server/api.(*SingleQuery).GetMerriageRecord-fm (5 handlers) +[GIN-debug] POST /api/lawsuitQuery/query_v2 --> qnc-server/api.(*LawsuitQuery).queryListV2-fm (5 handlers) +[GIN-debug] GET /api/lawsuitQuery/get_record --> qnc-server/api.(*LawsuitQuery).GetRecord-fm (5 handlers) +[GIN-debug] GET /api/ent/search --> qnc-server/api.(*Ent).search-fm (5 handlers) +[GIN-debug] GET /api/ent/query_details --> qnc-server/api.(*Ent).queryDetails-fm (5 handlers) +[GIN-debug] GET /api/ent/query_feature/:feature --> qnc-server/api.(*Ent).queryFeature-fm (5 handlers) +[GIN-debug] GET /api/ent/query_list_feature/:feature --> qnc-server/api.(*Ent).queryListFeature-fm (5 handlers) +[GIN-debug] POST /api/pay/callback/:platform --> qnc-server/api.(*Pay).Callback-fm (4 handlers) +[GIN-debug] GET /api/pay/refund_details/:id --> qnc-server/api.(*Pay).RefundDetailsHTML-fm (4 handlers) +[GIN-debug] POST /api/pay/refund/:id --> qnc-server/api.(*Pay).Refund-fm (4 handlers) +[GIN-debug] POST /api/pay/refund_callback/:platform --> qnc-server/api.(*Pay).RefundCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/ali_callback --> qnc-server/api.(*Pay).AlipayCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/complaint_callback/:platform --> qnc-server/api.(*Pay).WxPayComplaintCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/prepay --> qnc-server/api.(*Pay).Prepay-fm (5 handlers) +[GIN-debug] GET /api/pay/order_list --> qnc-server/api.(*Pay).GetOrderList-fm (5 handlers) +[GIN-debug] POST /api/pay/ali_prepay --> qnc-server/api.(*Pay).AliPrepay-fm (5 handlers) +[GIN-debug] GET /api/pay/get_query_cache --> qnc-server/api.(*Pay).GetQueryCache-fm (5 handlers) +[GIN-debug] GET /api/product/product_notes --> qnc-server/api.(*Product).GetProductNotes-fm (5 handlers) +[GIN-debug] GET /api/product/product_info --> qnc-server/api.(*Product).GetProductInfo-fm (4 handlers) +[GIN-debug] GET /api/render/get_index --> qnc-server/api.(*Render).GetIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_car_index --> qnc-server/api.(*Render).GetCarIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_verify_index --> qnc-server/api.(*Render).GetVerifyIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_notification --> qnc-server/api.(*Render).GetNotification-fm (4 handlers) +[GIN-debug] GET /api/render/get_shadow --> qnc-server/api.(*Render).GetShade-fm (4 handlers) +[GIN-debug] GET /api/render/setting --> qnc-server/api.(*Render).GetSetting-fm (4 handlers) +[GIN-debug] POST /api/car/insurance --> qnc-server/api.(*Car).Insurance-fm (5 handlers) +[GIN-debug] POST /api/car/maintenance --> qnc-server/api.(*Car).Maintenance-fm (5 handlers) +[GIN-debug] GET /api/car/get_query --> qnc-server/api.(*Car).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/car/person_car_verify --> qnc-server/api.(*Car).PersonCarVerify-fm (5 handlers) +[GIN-debug] POST /api/car/under_name --> qnc-server/api.(*Car).UnderName-fm (5 handlers) +[GIN-debug] POST /api/car/insurance_info --> qnc-server/api.(*Car).InsuranceInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vin_check_info --> qnc-server/api.(*Car).VinCheckInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_transfer --> qnc-server/api.(*Car).VehicleTransfer-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_valuation --> qnc-server/api.(*Car).VehicleValuation-fm (5 handlers) +[GIN-debug] GET /api/car/get_maintenance_history --> qnc-server/api.(*Car).QueryHistoryList-fm (5 handlers) +[GIN-debug] POST /api/car/callback --> qnc-server/api.(*Car).CarCallback-fm (4 handlers) +[GIN-debug] POST /api/verify/phone --> qnc-server/api.(*Verify).VerifyNamePhone-fm (5 handlers) +[GIN-debug] GET /api/verify/get_query --> qnc-server/api.(*Verify).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/verify/card_no --> qnc-server/api.(*Verify).VerifyNameCard-fm (5 handlers) +[GIN-debug] POST /api/verify/bank_card --> qnc-server/api.(*Verify).VerifyBankCard-fm (5 handlers) +[GIN-debug] POST /api/verify/skill_cert --> qnc-server/api.(*Verify).VerifySkillCert-fm (5 handlers) +[GIN-debug] POST /api/feature/ocr_name --> qnc-server/api.(*Feature).OcrName-fm (5 handlers) +[GIN-debug] POST /api/feature/verify_elements --> qnc-server/api.(*Feature).VerifyElements-fm (5 handlers) +2024/10/30 14:44:54 HTTP server listening on http://127.0.0.1:14500 +[GIN-debug] [WARNING] You trusted all proxies, this is NOT safe. We recommend you to set a value. +Please check https://pkg.go.dev/github.com/gin-gonic/gin#readme-don-t-trust-all-proxies for details. +[GIN-debug] Listening and serving HTTP on :14500 +2024/10/30 14:45:10 Start: 2024-10-30T14:45:10+08:00, Method: GET, URL: /api/render/get_notification, GET params: map[] +2024/10/30 14:45:10 Start: 2024-10-30T14:45:10+08:00, Method: GET, URL: /api/render/setting, GET params: map[] +2024/10/30 14:45:10 End: 2024-10-30T14:45:10+08:00, Method: GET, URL: /api/render/setting, Status: 200, Latency: 0s +[GIN] 2024/10/30 - 14:45:10 | 200 | 0s | 127.0.0.1 | GET "/api/render/setting" +2024/10/30 14:45:10 End: 2024-10-30T14:45:10+08:00, Method: GET, URL: /api/render/get_notification, Status: 200, Latency: 971.8µs +[GIN] 2024/10/30 - 14:45:10 | 200 | 971.8µs | 127.0.0.1 | GET "/api/render/get_notification" +2024/10/30 14:45:10 Start: 2024-10-30T14:45:10+08:00, Method: GET, URL: /api/render/get_index, GET params: map[] +2024/10/30 14:45:10 End: 2024-10-30T14:45:10+08:00, Method: GET, URL: /api/render/get_index, Status: 200, Latency: 1.0092ms +[GIN] 2024/10/30 - 14:45:10 | 200 | 1.0092ms | 127.0.0.1 | GET "/api/render/get_index" +2024/10/30 14:45:11 Start: 2024-10-30T14:45:11+08:00, Method: POST, URL: /api/user/login, GET params: map[] +2024/10/30 14:45:11 End: 2024-10-30T14:45:11+08:00, Method: POST, URL: /api/user/login, Status: 200, Latency: 291.6372ms +[GIN] 2024/10/30 - 14:45:11 | 200 | 291.6372ms | 127.0.0.1 | POST "/api/user/login" +2024/10/30 14:45:12 Start: 2024-10-30T14:45:12+08:00, Method: GET, URL: /api/product/product_notes?product_name=justiceLawsuit, GET params: map[product_name:[justiceLawsuit]] +2024/10/30 14:45:12 End: 2024-10-30T14:45:12+08:00, Method: GET, URL: /api/product/product_notes?product_name=justiceLawsuit, Status: 200, Latency: 2.5944ms +[GIN] 2024/10/30 - 14:45:12 | 200 | 2.5944ms | 127.0.0.1 | GET "/api/product/product_notes?product_name=justiceLawsuit" +2024/10/30 14:45:23 Start: 2024-10-30T14:45:23+08:00, Method: POST, URL: /api/lawsuitQuery/query_v2, GET params: map[] +2024/10/30 14:46:03 End: 2024-10-30T14:46:03+08:00, Method: POST, URL: /api/lawsuitQuery/query_v2, Status: 200, Latency: 40.2110302s +[GIN] 2024/10/30 - 14:46:03 | 200 | 40.2110302s | 127.0.0.1 | POST "/api/lawsuitQuery/query_v2" +2024/10/30 14:46:12 Start: 2024-10-30T14:46:12+08:00, Method: POST, URL: /api/lawsuitQuery/query_v2, GET params: map[] +2024/10/30 14:46:36 End: 2024-10-30T14:46:36+08:00, Method: POST, URL: /api/lawsuitQuery/query_v2, Status: 200, Latency: 24.1692152s +[GIN] 2024/10/30 - 14:46:36 | 200 | 24.1692152s | 127.0.0.1 | POST "/api/lawsuitQuery/query_v2" +[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production. + - using env: export GIN_MODE=release + - using code: gin.SetMode(gin.ReleaseMode) + +[GIN-debug] Loaded HTML Templates (2): + - + - refund.html + +[GIN-debug] GET /api/user/test --> qnc-server/api.(*User).Test-fm (4 handlers) +[GIN-debug] POST /api/user/log --> qnc-server/api.(*User).Log-fm (4 handlers) +[GIN-debug] POST /api/user/login --> qnc-server/api.(*User).Login-fm (4 handlers) +[GIN-debug] POST /api/user/h5_login --> qnc-server/api.(*User).H5Login-fm (4 handlers) +[GIN-debug] POST /api/user/phone_login --> qnc-server/api.(*User).PhoneLogin-fm (4 handlers) +[GIN-debug] POST /api/user/verify --> qnc-server/api.(*User).GetVerify-fm (4 handlers) +[GIN-debug] GET /api/user/get_config --> qnc-server/api.(*User).GetSDKConfig-fm (4 handlers) +[GIN-debug] POST /api/single/bc_evaluate_marriage --> qnc-server/api.(*SingleQuery).EvaluateMarriageQuery-fm (6 handlers) +[GIN-debug] GET /api/single/get_merriage_record --> qnc-server/api.(*SingleQuery).GetMerriageRecord-fm (5 handlers) +[GIN-debug] POST /api/lawsuitQuery/query_v2 --> qnc-server/api.(*LawsuitQuery).queryListV2-fm (5 handlers) +[GIN-debug] GET /api/lawsuitQuery/get_record --> qnc-server/api.(*LawsuitQuery).GetRecord-fm (5 handlers) +[GIN-debug] GET /api/ent/search --> qnc-server/api.(*Ent).search-fm (5 handlers) +[GIN-debug] GET /api/ent/query_details --> qnc-server/api.(*Ent).queryDetails-fm (5 handlers) +[GIN-debug] GET /api/ent/query_feature/:feature --> qnc-server/api.(*Ent).queryFeature-fm (5 handlers) +[GIN-debug] GET /api/ent/query_list_feature/:feature --> qnc-server/api.(*Ent).queryListFeature-fm (5 handlers) +[GIN-debug] POST /api/pay/callback/:platform --> qnc-server/api.(*Pay).Callback-fm (4 handlers) +[GIN-debug] GET /api/pay/refund_details/:id --> qnc-server/api.(*Pay).RefundDetailsHTML-fm (4 handlers) +[GIN-debug] POST /api/pay/refund/:id --> qnc-server/api.(*Pay).Refund-fm (4 handlers) +[GIN-debug] POST /api/pay/refund_callback/:platform --> qnc-server/api.(*Pay).RefundCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/ali_callback --> qnc-server/api.(*Pay).AlipayCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/complaint_callback/:platform --> qnc-server/api.(*Pay).WxPayComplaintCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/prepay --> qnc-server/api.(*Pay).Prepay-fm (5 handlers) +[GIN-debug] GET /api/pay/order_list --> qnc-server/api.(*Pay).GetOrderList-fm (5 handlers) +[GIN-debug] POST /api/pay/ali_prepay --> qnc-server/api.(*Pay).AliPrepay-fm (5 handlers) +[GIN-debug] GET /api/pay/get_query_cache --> qnc-server/api.(*Pay).GetQueryCache-fm (5 handlers) +[GIN-debug] GET /api/product/product_notes --> qnc-server/api.(*Product).GetProductNotes-fm (5 handlers) +[GIN-debug] GET /api/product/product_info --> qnc-server/api.(*Product).GetProductInfo-fm (4 handlers) +[GIN-debug] GET /api/render/get_index --> qnc-server/api.(*Render).GetIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_car_index --> qnc-server/api.(*Render).GetCarIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_verify_index --> qnc-server/api.(*Render).GetVerifyIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_notification --> qnc-server/api.(*Render).GetNotification-fm (4 handlers) +[GIN-debug] GET /api/render/get_shadow --> qnc-server/api.(*Render).GetShade-fm (4 handlers) +[GIN-debug] GET /api/render/setting --> qnc-server/api.(*Render).GetSetting-fm (4 handlers) +[GIN-debug] POST /api/car/insurance --> qnc-server/api.(*Car).Insurance-fm (5 handlers) +[GIN-debug] POST /api/car/maintenance --> qnc-server/api.(*Car).Maintenance-fm (5 handlers) +[GIN-debug] GET /api/car/get_query --> qnc-server/api.(*Car).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/car/person_car_verify --> qnc-server/api.(*Car).PersonCarVerify-fm (5 handlers) +[GIN-debug] POST /api/car/under_name --> qnc-server/api.(*Car).UnderName-fm (5 handlers) +[GIN-debug] POST /api/car/insurance_info --> qnc-server/api.(*Car).InsuranceInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vin_check_info --> qnc-server/api.(*Car).VinCheckInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_transfer --> qnc-server/api.(*Car).VehicleTransfer-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_valuation --> qnc-server/api.(*Car).VehicleValuation-fm (5 handlers) +[GIN-debug] GET /api/car/get_maintenance_history --> qnc-server/api.(*Car).QueryHistoryList-fm (5 handlers) +[GIN-debug] POST /api/car/callback --> qnc-server/api.(*Car).CarCallback-fm (4 handlers) +[GIN-debug] POST /api/verify/phone --> qnc-server/api.(*Verify).VerifyNamePhone-fm (5 handlers) +[GIN-debug] GET /api/verify/get_query --> qnc-server/api.(*Verify).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/verify/card_no --> qnc-server/api.(*Verify).VerifyNameCard-fm (5 handlers) +[GIN-debug] POST /api/verify/bank_card --> qnc-server/api.(*Verify).VerifyBankCard-fm (5 handlers) +[GIN-debug] POST /api/verify/skill_cert --> qnc-server/api.(*Verify).VerifySkillCert-fm (5 handlers) +[GIN-debug] POST /api/feature/ocr_name --> qnc-server/api.(*Feature).OcrName-fm (5 handlers) +[GIN-debug] POST /api/feature/verify_elements --> qnc-server/api.(*Feature).VerifyElements-fm (5 handlers) +2024/10/30 14:46:50 HTTP server listening on http://127.0.0.1:14500 +[GIN-debug] [WARNING] You trusted all proxies, this is NOT safe. We recommend you to set a value. +Please check https://pkg.go.dev/github.com/gin-gonic/gin#readme-don-t-trust-all-proxies for details. +[GIN-debug] Listening and serving HTTP on :14500 +2024/10/30 14:46:53 Start: 2024-10-30T14:46:53+08:00, Method: POST, URL: /api/lawsuitQuery/query_v2, GET params: map[] +2024/10/30 14:49:34 End: 2024-10-30T14:49:34+08:00, Method: POST, URL: /api/lawsuitQuery/query_v2, Status: 200, Latency: 2m40.8395382s +[GIN] 2024/10/30 - 14:49:34 | 200 | 2m40s | 127.0.0.1 | POST "/api/lawsuitQuery/query_v2" +[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production. + - using env: export GIN_MODE=release + - using code: gin.SetMode(gin.ReleaseMode) + +[GIN-debug] Loaded HTML Templates (2): + - + - refund.html + +[GIN-debug] GET /api/user/test --> qnc-server/api.(*User).Test-fm (4 handlers) +[GIN-debug] POST /api/user/log --> qnc-server/api.(*User).Log-fm (4 handlers) +[GIN-debug] POST /api/user/login --> qnc-server/api.(*User).Login-fm (4 handlers) +[GIN-debug] POST /api/user/h5_login --> qnc-server/api.(*User).H5Login-fm (4 handlers) +[GIN-debug] POST /api/user/phone_login --> qnc-server/api.(*User).PhoneLogin-fm (4 handlers) +[GIN-debug] POST /api/user/verify --> qnc-server/api.(*User).GetVerify-fm (4 handlers) +[GIN-debug] GET /api/user/get_config --> qnc-server/api.(*User).GetSDKConfig-fm (4 handlers) +[GIN-debug] POST /api/single/bc_evaluate_marriage --> qnc-server/api.(*SingleQuery).EvaluateMarriageQuery-fm (6 handlers) +[GIN-debug] GET /api/single/get_merriage_record --> qnc-server/api.(*SingleQuery).GetMerriageRecord-fm (5 handlers) +[GIN-debug] POST /api/lawsuitQuery/query_v2 --> qnc-server/api.(*LawsuitQuery).queryListV2-fm (5 handlers) +[GIN-debug] GET /api/lawsuitQuery/get_record --> qnc-server/api.(*LawsuitQuery).GetRecord-fm (5 handlers) +[GIN-debug] GET /api/ent/search --> qnc-server/api.(*Ent).search-fm (5 handlers) +[GIN-debug] GET /api/ent/query_details --> qnc-server/api.(*Ent).queryDetails-fm (5 handlers) +[GIN-debug] GET /api/ent/query_feature/:feature --> qnc-server/api.(*Ent).queryFeature-fm (5 handlers) +[GIN-debug] GET /api/ent/query_list_feature/:feature --> qnc-server/api.(*Ent).queryListFeature-fm (5 handlers) +[GIN-debug] POST /api/pay/callback/:platform --> qnc-server/api.(*Pay).Callback-fm (4 handlers) +[GIN-debug] GET /api/pay/refund_details/:id --> qnc-server/api.(*Pay).RefundDetailsHTML-fm (4 handlers) +[GIN-debug] POST /api/pay/refund/:id --> qnc-server/api.(*Pay).Refund-fm (4 handlers) +[GIN-debug] POST /api/pay/refund_callback/:platform --> qnc-server/api.(*Pay).RefundCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/ali_callback --> qnc-server/api.(*Pay).AlipayCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/complaint_callback/:platform --> qnc-server/api.(*Pay).WxPayComplaintCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/prepay --> qnc-server/api.(*Pay).Prepay-fm (5 handlers) +[GIN-debug] GET /api/pay/order_list --> qnc-server/api.(*Pay).GetOrderList-fm (5 handlers) +[GIN-debug] POST /api/pay/ali_prepay --> qnc-server/api.(*Pay).AliPrepay-fm (5 handlers) +[GIN-debug] GET /api/pay/get_query_cache --> qnc-server/api.(*Pay).GetQueryCache-fm (5 handlers) +[GIN-debug] GET /api/product/product_notes --> qnc-server/api.(*Product).GetProductNotes-fm (5 handlers) +[GIN-debug] GET /api/product/product_info --> qnc-server/api.(*Product).GetProductInfo-fm (4 handlers) +[GIN-debug] GET /api/render/get_index --> qnc-server/api.(*Render).GetIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_car_index --> qnc-server/api.(*Render).GetCarIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_verify_index --> qnc-server/api.(*Render).GetVerifyIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_notification --> qnc-server/api.(*Render).GetNotification-fm (4 handlers) +[GIN-debug] GET /api/render/get_shadow --> qnc-server/api.(*Render).GetShade-fm (4 handlers) +[GIN-debug] GET /api/render/setting --> qnc-server/api.(*Render).GetSetting-fm (4 handlers) +[GIN-debug] POST /api/car/insurance --> qnc-server/api.(*Car).Insurance-fm (5 handlers) +[GIN-debug] POST /api/car/maintenance --> qnc-server/api.(*Car).Maintenance-fm (5 handlers) +[GIN-debug] GET /api/car/get_query --> qnc-server/api.(*Car).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/car/person_car_verify --> qnc-server/api.(*Car).PersonCarVerify-fm (5 handlers) +[GIN-debug] POST /api/car/under_name --> qnc-server/api.(*Car).UnderName-fm (5 handlers) +[GIN-debug] POST /api/car/insurance_info --> qnc-server/api.(*Car).InsuranceInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vin_check_info --> qnc-server/api.(*Car).VinCheckInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_transfer --> qnc-server/api.(*Car).VehicleTransfer-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_valuation --> qnc-server/api.(*Car).VehicleValuation-fm (5 handlers) +[GIN-debug] GET /api/car/get_maintenance_history --> qnc-server/api.(*Car).QueryHistoryList-fm (5 handlers) +[GIN-debug] POST /api/car/callback --> qnc-server/api.(*Car).CarCallback-fm (4 handlers) +[GIN-debug] POST /api/verify/phone --> qnc-server/api.(*Verify).VerifyNamePhone-fm (5 handlers) +[GIN-debug] GET /api/verify/get_query --> qnc-server/api.(*Verify).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/verify/card_no --> qnc-server/api.(*Verify).VerifyNameCard-fm (5 handlers) +[GIN-debug] POST /api/verify/bank_card --> qnc-server/api.(*Verify).VerifyBankCard-fm (5 handlers) +[GIN-debug] POST /api/verify/skill_cert --> qnc-server/api.(*Verify).VerifySkillCert-fm (5 handlers) +[GIN-debug] POST /api/feature/ocr_name --> qnc-server/api.(*Feature).OcrName-fm (5 handlers) +[GIN-debug] POST /api/feature/verify_elements --> qnc-server/api.(*Feature).VerifyElements-fm (5 handlers) +2024/10/30 14:49:38 HTTP server listening on http://127.0.0.1:14500 +[GIN-debug] [WARNING] You trusted all proxies, this is NOT safe. We recommend you to set a value. +Please check https://pkg.go.dev/github.com/gin-gonic/gin#readme-don-t-trust-all-proxies for details. +[GIN-debug] Listening and serving HTTP on :14500 +2024/10/30 14:49:46 Start: 2024-10-30T14:49:46+08:00, Method: POST, URL: /api/lawsuitQuery/query_v2, GET params: map[] +2024/10/30 15:04:01 End: 2024-10-30T15:04:01+08:00, Method: POST, URL: /api/lawsuitQuery/query_v2, Status: 200, Latency: 14m15.2528775s +[GIN] 2024/10/30 - 15:04:01 | 200 | 14m15s | 127.0.0.1 | POST "/api/lawsuitQuery/query_v2" +[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production. + - using env: export GIN_MODE=release + - using code: gin.SetMode(gin.ReleaseMode) + +[GIN-debug] Loaded HTML Templates (2): + - + - refund.html + +[GIN-debug] GET /api/user/test --> qnc-server/api.(*User).Test-fm (4 handlers) +[GIN-debug] POST /api/user/log --> qnc-server/api.(*User).Log-fm (4 handlers) +[GIN-debug] POST /api/user/login --> qnc-server/api.(*User).Login-fm (4 handlers) +[GIN-debug] POST /api/user/h5_login --> qnc-server/api.(*User).H5Login-fm (4 handlers) +[GIN-debug] POST /api/user/phone_login --> qnc-server/api.(*User).PhoneLogin-fm (4 handlers) +[GIN-debug] POST /api/user/verify --> qnc-server/api.(*User).GetVerify-fm (4 handlers) +[GIN-debug] GET /api/user/get_config --> qnc-server/api.(*User).GetSDKConfig-fm (4 handlers) +[GIN-debug] POST /api/single/bc_evaluate_marriage --> qnc-server/api.(*SingleQuery).EvaluateMarriageQuery-fm (6 handlers) +[GIN-debug] GET /api/single/get_merriage_record --> qnc-server/api.(*SingleQuery).GetMerriageRecord-fm (5 handlers) +[GIN-debug] POST /api/lawsuitQuery/query_v2 --> qnc-server/api.(*LawsuitQuery).queryListV2-fm (5 handlers) +[GIN-debug] GET /api/lawsuitQuery/get_record --> qnc-server/api.(*LawsuitQuery).GetRecord-fm (5 handlers) +[GIN-debug] GET /api/ent/search --> qnc-server/api.(*Ent).search-fm (5 handlers) +[GIN-debug] GET /api/ent/query_details --> qnc-server/api.(*Ent).queryDetails-fm (5 handlers) +[GIN-debug] GET /api/ent/query_feature/:feature --> qnc-server/api.(*Ent).queryFeature-fm (5 handlers) +[GIN-debug] GET /api/ent/query_list_feature/:feature --> qnc-server/api.(*Ent).queryListFeature-fm (5 handlers) +[GIN-debug] POST /api/pay/callback/:platform --> qnc-server/api.(*Pay).Callback-fm (4 handlers) +[GIN-debug] GET /api/pay/refund_details/:id --> qnc-server/api.(*Pay).RefundDetailsHTML-fm (4 handlers) +[GIN-debug] POST /api/pay/refund/:id --> qnc-server/api.(*Pay).Refund-fm (4 handlers) +[GIN-debug] POST /api/pay/refund_callback/:platform --> qnc-server/api.(*Pay).RefundCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/ali_callback --> qnc-server/api.(*Pay).AlipayCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/complaint_callback/:platform --> qnc-server/api.(*Pay).WxPayComplaintCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/prepay --> qnc-server/api.(*Pay).Prepay-fm (5 handlers) +[GIN-debug] GET /api/pay/order_list --> qnc-server/api.(*Pay).GetOrderList-fm (5 handlers) +[GIN-debug] POST /api/pay/ali_prepay --> qnc-server/api.(*Pay).AliPrepay-fm (5 handlers) +[GIN-debug] GET /api/pay/get_query_cache --> qnc-server/api.(*Pay).GetQueryCache-fm (5 handlers) +[GIN-debug] GET /api/product/product_notes --> qnc-server/api.(*Product).GetProductNotes-fm (5 handlers) +[GIN-debug] GET /api/product/product_info --> qnc-server/api.(*Product).GetProductInfo-fm (4 handlers) +[GIN-debug] GET /api/render/get_index --> qnc-server/api.(*Render).GetIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_car_index --> qnc-server/api.(*Render).GetCarIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_verify_index --> qnc-server/api.(*Render).GetVerifyIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_notification --> qnc-server/api.(*Render).GetNotification-fm (4 handlers) +[GIN-debug] GET /api/render/get_shadow --> qnc-server/api.(*Render).GetShade-fm (4 handlers) +[GIN-debug] GET /api/render/setting --> qnc-server/api.(*Render).GetSetting-fm (4 handlers) +[GIN-debug] POST /api/car/insurance --> qnc-server/api.(*Car).Insurance-fm (5 handlers) +[GIN-debug] POST /api/car/maintenance --> qnc-server/api.(*Car).Maintenance-fm (5 handlers) +[GIN-debug] GET /api/car/get_query --> qnc-server/api.(*Car).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/car/person_car_verify --> qnc-server/api.(*Car).PersonCarVerify-fm (5 handlers) +[GIN-debug] POST /api/car/under_name --> qnc-server/api.(*Car).UnderName-fm (5 handlers) +[GIN-debug] POST /api/car/insurance_info --> qnc-server/api.(*Car).InsuranceInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vin_check_info --> qnc-server/api.(*Car).VinCheckInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_transfer --> qnc-server/api.(*Car).VehicleTransfer-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_valuation --> qnc-server/api.(*Car).VehicleValuation-fm (5 handlers) +[GIN-debug] GET /api/car/get_maintenance_history --> qnc-server/api.(*Car).QueryHistoryList-fm (5 handlers) +[GIN-debug] POST /api/car/callback --> qnc-server/api.(*Car).CarCallback-fm (4 handlers) +[GIN-debug] POST /api/verify/phone --> qnc-server/api.(*Verify).VerifyNamePhone-fm (5 handlers) +[GIN-debug] GET /api/verify/get_query --> qnc-server/api.(*Verify).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/verify/card_no --> qnc-server/api.(*Verify).VerifyNameCard-fm (5 handlers) +[GIN-debug] POST /api/verify/bank_card --> qnc-server/api.(*Verify).VerifyBankCard-fm (5 handlers) +[GIN-debug] POST /api/verify/skill_cert --> qnc-server/api.(*Verify).VerifySkillCert-fm (5 handlers) +[GIN-debug] POST /api/feature/ocr_name --> qnc-server/api.(*Feature).OcrName-fm (5 handlers) +[GIN-debug] POST /api/feature/verify_elements --> qnc-server/api.(*Feature).VerifyElements-fm (5 handlers) +2024/10/30 15:04:05 HTTP server listening on http://127.0.0.1:14500 +[GIN-debug] [WARNING] You trusted all proxies, this is NOT safe. We recommend you to set a value. +Please check https://pkg.go.dev/github.com/gin-gonic/gin#readme-don-t-trust-all-proxies for details. +[GIN-debug] Listening and serving HTTP on :14500 +2024/10/30 15:04:07 Start: 2024-10-30T15:04:07+08:00, Method: POST, URL: /api/lawsuitQuery/query_v2, GET params: map[] +2024/10/30 15:04:07 End: 2024-10-30T15:04:07+08:00, Method: POST, URL: /api/lawsuitQuery/query_v2, Status: 200, Latency: 3.754ms +[GIN] 2024/10/30 - 15:04:07 | 200 | 3.754ms | 127.0.0.1 | POST "/api/lawsuitQuery/query_v2" +2024/10/30 15:04:12 Start: 2024-10-30T15:04:12+08:00, Method: POST, URL: /api/lawsuitQuery/query_v2, GET params: map[] +2024/10/30 15:04:12 End: 2024-10-30T15:04:12+08:00, Method: POST, URL: /api/lawsuitQuery/query_v2, Status: 200, Latency: 2.6112ms +[GIN] 2024/10/30 - 15:04:12 | 200 | 2.6112ms | 127.0.0.1 | POST "/api/lawsuitQuery/query_v2" +[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production. + - using env: export GIN_MODE=release + - using code: gin.SetMode(gin.ReleaseMode) + +[GIN-debug] Loaded HTML Templates (2): + - + - refund.html + +[GIN-debug] GET /api/user/test --> qnc-server/api.(*User).Test-fm (4 handlers) +[GIN-debug] POST /api/user/log --> qnc-server/api.(*User).Log-fm (4 handlers) +[GIN-debug] POST /api/user/login --> qnc-server/api.(*User).Login-fm (4 handlers) +[GIN-debug] POST /api/user/h5_login --> qnc-server/api.(*User).H5Login-fm (4 handlers) +[GIN-debug] POST /api/user/phone_login --> qnc-server/api.(*User).PhoneLogin-fm (4 handlers) +[GIN-debug] POST /api/user/verify --> qnc-server/api.(*User).GetVerify-fm (4 handlers) +[GIN-debug] GET /api/user/get_config --> qnc-server/api.(*User).GetSDKConfig-fm (4 handlers) +[GIN-debug] POST /api/single/bc_evaluate_marriage --> qnc-server/api.(*SingleQuery).EvaluateMarriageQuery-fm (6 handlers) +[GIN-debug] GET /api/single/get_merriage_record --> qnc-server/api.(*SingleQuery).GetMerriageRecord-fm (5 handlers) +[GIN-debug] POST /api/lawsuitQuery/query_v2 --> qnc-server/api.(*LawsuitQuery).queryListV2-fm (5 handlers) +[GIN-debug] GET /api/lawsuitQuery/get_record --> qnc-server/api.(*LawsuitQuery).GetRecord-fm (5 handlers) +[GIN-debug] GET /api/ent/search --> qnc-server/api.(*Ent).search-fm (5 handlers) +[GIN-debug] GET /api/ent/query_details --> qnc-server/api.(*Ent).queryDetails-fm (5 handlers) +[GIN-debug] GET /api/ent/query_feature/:feature --> qnc-server/api.(*Ent).queryFeature-fm (5 handlers) +[GIN-debug] GET /api/ent/query_list_feature/:feature --> qnc-server/api.(*Ent).queryListFeature-fm (5 handlers) +[GIN-debug] POST /api/pay/callback/:platform --> qnc-server/api.(*Pay).Callback-fm (4 handlers) +[GIN-debug] GET /api/pay/refund_details/:id --> qnc-server/api.(*Pay).RefundDetailsHTML-fm (4 handlers) +[GIN-debug] POST /api/pay/refund/:id --> qnc-server/api.(*Pay).Refund-fm (4 handlers) +[GIN-debug] POST /api/pay/refund_callback/:platform --> qnc-server/api.(*Pay).RefundCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/ali_callback --> qnc-server/api.(*Pay).AlipayCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/complaint_callback/:platform --> qnc-server/api.(*Pay).WxPayComplaintCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/prepay --> qnc-server/api.(*Pay).Prepay-fm (5 handlers) +[GIN-debug] GET /api/pay/order_list --> qnc-server/api.(*Pay).GetOrderList-fm (5 handlers) +[GIN-debug] POST /api/pay/ali_prepay --> qnc-server/api.(*Pay).AliPrepay-fm (5 handlers) +[GIN-debug] GET /api/pay/get_query_cache --> qnc-server/api.(*Pay).GetQueryCache-fm (5 handlers) +[GIN-debug] GET /api/product/product_notes --> qnc-server/api.(*Product).GetProductNotes-fm (5 handlers) +[GIN-debug] GET /api/product/product_info --> qnc-server/api.(*Product).GetProductInfo-fm (4 handlers) +[GIN-debug] GET /api/render/get_index --> qnc-server/api.(*Render).GetIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_car_index --> qnc-server/api.(*Render).GetCarIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_verify_index --> qnc-server/api.(*Render).GetVerifyIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_notification --> qnc-server/api.(*Render).GetNotification-fm (4 handlers) +[GIN-debug] GET /api/render/get_shadow --> qnc-server/api.(*Render).GetShade-fm (4 handlers) +[GIN-debug] GET /api/render/setting --> qnc-server/api.(*Render).GetSetting-fm (4 handlers) +[GIN-debug] POST /api/car/insurance --> qnc-server/api.(*Car).Insurance-fm (5 handlers) +[GIN-debug] POST /api/car/maintenance --> qnc-server/api.(*Car).Maintenance-fm (5 handlers) +[GIN-debug] GET /api/car/get_query --> qnc-server/api.(*Car).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/car/person_car_verify --> qnc-server/api.(*Car).PersonCarVerify-fm (5 handlers) +[GIN-debug] POST /api/car/under_name --> qnc-server/api.(*Car).UnderName-fm (5 handlers) +[GIN-debug] POST /api/car/insurance_info --> qnc-server/api.(*Car).InsuranceInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vin_check_info --> qnc-server/api.(*Car).VinCheckInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_transfer --> qnc-server/api.(*Car).VehicleTransfer-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_valuation --> qnc-server/api.(*Car).VehicleValuation-fm (5 handlers) +[GIN-debug] GET /api/car/get_maintenance_history --> qnc-server/api.(*Car).QueryHistoryList-fm (5 handlers) +[GIN-debug] POST /api/car/callback --> qnc-server/api.(*Car).CarCallback-fm (4 handlers) +[GIN-debug] POST /api/verify/phone --> qnc-server/api.(*Verify).VerifyNamePhone-fm (5 handlers) +[GIN-debug] GET /api/verify/get_query --> qnc-server/api.(*Verify).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/verify/card_no --> qnc-server/api.(*Verify).VerifyNameCard-fm (5 handlers) +[GIN-debug] POST /api/verify/bank_card --> qnc-server/api.(*Verify).VerifyBankCard-fm (5 handlers) +[GIN-debug] POST /api/verify/skill_cert --> qnc-server/api.(*Verify).VerifySkillCert-fm (5 handlers) +[GIN-debug] POST /api/feature/ocr_name --> qnc-server/api.(*Feature).OcrName-fm (5 handlers) +[GIN-debug] POST /api/feature/verify_elements --> qnc-server/api.(*Feature).VerifyElements-fm (5 handlers) +2024/10/30 15:04:53 HTTP server listening on http://127.0.0.1:14500 +[GIN-debug] [WARNING] You trusted all proxies, this is NOT safe. We recommend you to set a value. +Please check https://pkg.go.dev/github.com/gin-gonic/gin#readme-don-t-trust-all-proxies for details. +[GIN-debug] Listening and serving HTTP on :14500 +2024/10/30 15:04:55 Start: 2024-10-30T15:04:55+08:00, Method: POST, URL: /api/lawsuitQuery/query_v2, GET params: map[] +2024/10/30 15:05:56 End: 2024-10-30T15:05:56+08:00, Method: POST, URL: /api/lawsuitQuery/query_v2, Status: 200, Latency: 1m1.3892489s +[GIN] 2024/10/30 - 15:05:56 | 200 | 1m1s | 127.0.0.1 | POST "/api/lawsuitQuery/query_v2" +[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production. + - using env: export GIN_MODE=release + - using code: gin.SetMode(gin.ReleaseMode) + +[GIN-debug] Loaded HTML Templates (2): + - refund.html + - + +[GIN-debug] GET /api/user/test --> qnc-server/api.(*User).Test-fm (4 handlers) +[GIN-debug] POST /api/user/log --> qnc-server/api.(*User).Log-fm (4 handlers) +[GIN-debug] POST /api/user/login --> qnc-server/api.(*User).Login-fm (4 handlers) +[GIN-debug] POST /api/user/h5_login --> qnc-server/api.(*User).H5Login-fm (4 handlers) +[GIN-debug] POST /api/user/phone_login --> qnc-server/api.(*User).PhoneLogin-fm (4 handlers) +[GIN-debug] POST /api/user/verify --> qnc-server/api.(*User).GetVerify-fm (4 handlers) +[GIN-debug] GET /api/user/get_config --> qnc-server/api.(*User).GetSDKConfig-fm (4 handlers) +[GIN-debug] POST /api/single/bc_evaluate_marriage --> qnc-server/api.(*SingleQuery).EvaluateMarriageQuery-fm (6 handlers) +[GIN-debug] GET /api/single/get_merriage_record --> qnc-server/api.(*SingleQuery).GetMerriageRecord-fm (5 handlers) +[GIN-debug] POST /api/lawsuitQuery/query_v2 --> qnc-server/api.(*LawsuitQuery).queryListV2-fm (5 handlers) +[GIN-debug] GET /api/lawsuitQuery/get_record --> qnc-server/api.(*LawsuitQuery).GetRecord-fm (5 handlers) +[GIN-debug] GET /api/ent/search --> qnc-server/api.(*Ent).search-fm (5 handlers) +[GIN-debug] GET /api/ent/query_details --> qnc-server/api.(*Ent).queryDetails-fm (5 handlers) +[GIN-debug] GET /api/ent/query_feature/:feature --> qnc-server/api.(*Ent).queryFeature-fm (5 handlers) +[GIN-debug] GET /api/ent/query_list_feature/:feature --> qnc-server/api.(*Ent).queryListFeature-fm (5 handlers) +[GIN-debug] POST /api/pay/callback/:platform --> qnc-server/api.(*Pay).Callback-fm (4 handlers) +[GIN-debug] GET /api/pay/refund_details/:id --> qnc-server/api.(*Pay).RefundDetailsHTML-fm (4 handlers) +[GIN-debug] POST /api/pay/refund/:id --> qnc-server/api.(*Pay).Refund-fm (4 handlers) +[GIN-debug] POST /api/pay/refund_callback/:platform --> qnc-server/api.(*Pay).RefundCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/ali_callback --> qnc-server/api.(*Pay).AlipayCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/complaint_callback/:platform --> qnc-server/api.(*Pay).WxPayComplaintCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/prepay --> qnc-server/api.(*Pay).Prepay-fm (5 handlers) +[GIN-debug] GET /api/pay/order_list --> qnc-server/api.(*Pay).GetOrderList-fm (5 handlers) +[GIN-debug] POST /api/pay/ali_prepay --> qnc-server/api.(*Pay).AliPrepay-fm (5 handlers) +[GIN-debug] GET /api/pay/get_query_cache --> qnc-server/api.(*Pay).GetQueryCache-fm (5 handlers) +[GIN-debug] GET /api/product/product_notes --> qnc-server/api.(*Product).GetProductNotes-fm (5 handlers) +[GIN-debug] GET /api/product/product_info --> qnc-server/api.(*Product).GetProductInfo-fm (4 handlers) +[GIN-debug] GET /api/render/get_index --> qnc-server/api.(*Render).GetIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_car_index --> qnc-server/api.(*Render).GetCarIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_verify_index --> qnc-server/api.(*Render).GetVerifyIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_notification --> qnc-server/api.(*Render).GetNotification-fm (4 handlers) +[GIN-debug] GET /api/render/get_shadow --> qnc-server/api.(*Render).GetShade-fm (4 handlers) +[GIN-debug] GET /api/render/setting --> qnc-server/api.(*Render).GetSetting-fm (4 handlers) +[GIN-debug] POST /api/car/insurance --> qnc-server/api.(*Car).Insurance-fm (5 handlers) +[GIN-debug] POST /api/car/maintenance --> qnc-server/api.(*Car).Maintenance-fm (5 handlers) +[GIN-debug] GET /api/car/get_query --> qnc-server/api.(*Car).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/car/person_car_verify --> qnc-server/api.(*Car).PersonCarVerify-fm (5 handlers) +[GIN-debug] POST /api/car/under_name --> qnc-server/api.(*Car).UnderName-fm (5 handlers) +[GIN-debug] POST /api/car/insurance_info --> qnc-server/api.(*Car).InsuranceInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vin_check_info --> qnc-server/api.(*Car).VinCheckInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_transfer --> qnc-server/api.(*Car).VehicleTransfer-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_valuation --> qnc-server/api.(*Car).VehicleValuation-fm (5 handlers) +[GIN-debug] GET /api/car/get_maintenance_history --> qnc-server/api.(*Car).QueryHistoryList-fm (5 handlers) +[GIN-debug] POST /api/car/callback --> qnc-server/api.(*Car).CarCallback-fm (4 handlers) +[GIN-debug] POST /api/verify/phone --> qnc-server/api.(*Verify).VerifyNamePhone-fm (5 handlers) +[GIN-debug] GET /api/verify/get_query --> qnc-server/api.(*Verify).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/verify/card_no --> qnc-server/api.(*Verify).VerifyNameCard-fm (5 handlers) +[GIN-debug] POST /api/verify/bank_card --> qnc-server/api.(*Verify).VerifyBankCard-fm (5 handlers) +[GIN-debug] POST /api/verify/skill_cert --> qnc-server/api.(*Verify).VerifySkillCert-fm (5 handlers) +[GIN-debug] POST /api/feature/ocr_name --> qnc-server/api.(*Feature).OcrName-fm (5 handlers) +[GIN-debug] POST /api/feature/verify_elements --> qnc-server/api.(*Feature).VerifyElements-fm (5 handlers) +2024/10/30 15:06:00 HTTP server listening on http://127.0.0.1:14500 +[GIN-debug] [WARNING] You trusted all proxies, this is NOT safe. We recommend you to set a value. +Please check https://pkg.go.dev/github.com/gin-gonic/gin#readme-don-t-trust-all-proxies for details. +[GIN-debug] Listening and serving HTTP on :14500 +2024/10/30 15:06:01 Start: 2024-10-30T15:06:01+08:00, Method: POST, URL: /api/lawsuitQuery/query_v2, GET params: map[] +2024/10/30 15:06:01 End: 2024-10-30T15:06:01+08:00, Method: POST, URL: /api/lawsuitQuery/query_v2, Status: 200, Latency: 503.7µs +[GIN] 2024/10/30 - 15:06:01 | 200 | 503.7µs | 127.0.0.1 | POST "/api/lawsuitQuery/query_v2" +2024/10/30 15:06:03 Start: 2024-10-30T15:06:03+08:00, Method: POST, URL: /api/lawsuitQuery/query_v2, GET params: map[] +2024/10/30 15:06:03 End: 2024-10-30T15:06:03+08:00, Method: POST, URL: /api/lawsuitQuery/query_v2, Status: 200, Latency: 0s +[GIN] 2024/10/30 - 15:06:03 | 200 | 0s | 127.0.0.1 | POST "/api/lawsuitQuery/query_v2" +2024/10/30 15:06:10 Start: 2024-10-30T15:06:10+08:00, Method: POST, URL: /api/lawsuitQuery/query_v2, GET params: map[] +2024/10/30 15:06:50 End: 2024-10-30T15:06:50+08:00, Method: POST, URL: /api/lawsuitQuery/query_v2, Status: 200, Latency: 40.3098463s +[GIN] 2024/10/30 - 15:06:50 | 200 | 40.3098463s | 127.0.0.1 | POST "/api/lawsuitQuery/query_v2" +[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production. + - using env: export GIN_MODE=release + - using code: gin.SetMode(gin.ReleaseMode) + +[GIN-debug] Loaded HTML Templates (2): + - + - refund.html + +[GIN-debug] GET /api/user/test --> qnc-server/api.(*User).Test-fm (4 handlers) +[GIN-debug] POST /api/user/log --> qnc-server/api.(*User).Log-fm (4 handlers) +[GIN-debug] POST /api/user/login --> qnc-server/api.(*User).Login-fm (4 handlers) +[GIN-debug] POST /api/user/h5_login --> qnc-server/api.(*User).H5Login-fm (4 handlers) +[GIN-debug] POST /api/user/phone_login --> qnc-server/api.(*User).PhoneLogin-fm (4 handlers) +[GIN-debug] POST /api/user/verify --> qnc-server/api.(*User).GetVerify-fm (4 handlers) +[GIN-debug] GET /api/user/get_config --> qnc-server/api.(*User).GetSDKConfig-fm (4 handlers) +[GIN-debug] POST /api/single/bc_evaluate_marriage --> qnc-server/api.(*SingleQuery).EvaluateMarriageQuery-fm (6 handlers) +[GIN-debug] GET /api/single/get_merriage_record --> qnc-server/api.(*SingleQuery).GetMerriageRecord-fm (5 handlers) +[GIN-debug] POST /api/lawsuitQuery/query_v2 --> qnc-server/api.(*LawsuitQuery).queryListV2-fm (5 handlers) +[GIN-debug] GET /api/lawsuitQuery/get_record --> qnc-server/api.(*LawsuitQuery).GetRecord-fm (5 handlers) +[GIN-debug] GET /api/ent/search --> qnc-server/api.(*Ent).search-fm (5 handlers) +[GIN-debug] GET /api/ent/query_details --> qnc-server/api.(*Ent).queryDetails-fm (5 handlers) +[GIN-debug] GET /api/ent/query_feature/:feature --> qnc-server/api.(*Ent).queryFeature-fm (5 handlers) +[GIN-debug] GET /api/ent/query_list_feature/:feature --> qnc-server/api.(*Ent).queryListFeature-fm (5 handlers) +[GIN-debug] POST /api/pay/callback/:platform --> qnc-server/api.(*Pay).Callback-fm (4 handlers) +[GIN-debug] GET /api/pay/refund_details/:id --> qnc-server/api.(*Pay).RefundDetailsHTML-fm (4 handlers) +[GIN-debug] POST /api/pay/refund/:id --> qnc-server/api.(*Pay).Refund-fm (4 handlers) +[GIN-debug] POST /api/pay/refund_callback/:platform --> qnc-server/api.(*Pay).RefundCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/ali_callback --> qnc-server/api.(*Pay).AlipayCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/complaint_callback/:platform --> qnc-server/api.(*Pay).WxPayComplaintCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/prepay --> qnc-server/api.(*Pay).Prepay-fm (5 handlers) +[GIN-debug] GET /api/pay/order_list --> qnc-server/api.(*Pay).GetOrderList-fm (5 handlers) +[GIN-debug] POST /api/pay/ali_prepay --> qnc-server/api.(*Pay).AliPrepay-fm (5 handlers) +[GIN-debug] GET /api/pay/get_query_cache --> qnc-server/api.(*Pay).GetQueryCache-fm (5 handlers) +[GIN-debug] GET /api/product/product_notes --> qnc-server/api.(*Product).GetProductNotes-fm (5 handlers) +[GIN-debug] GET /api/product/product_info --> qnc-server/api.(*Product).GetProductInfo-fm (4 handlers) +[GIN-debug] GET /api/render/get_index --> qnc-server/api.(*Render).GetIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_car_index --> qnc-server/api.(*Render).GetCarIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_verify_index --> qnc-server/api.(*Render).GetVerifyIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_notification --> qnc-server/api.(*Render).GetNotification-fm (4 handlers) +[GIN-debug] GET /api/render/get_shadow --> qnc-server/api.(*Render).GetShade-fm (4 handlers) +[GIN-debug] GET /api/render/setting --> qnc-server/api.(*Render).GetSetting-fm (4 handlers) +[GIN-debug] POST /api/car/insurance --> qnc-server/api.(*Car).Insurance-fm (5 handlers) +[GIN-debug] POST /api/car/maintenance --> qnc-server/api.(*Car).Maintenance-fm (5 handlers) +[GIN-debug] GET /api/car/get_query --> qnc-server/api.(*Car).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/car/person_car_verify --> qnc-server/api.(*Car).PersonCarVerify-fm (5 handlers) +[GIN-debug] POST /api/car/under_name --> qnc-server/api.(*Car).UnderName-fm (5 handlers) +[GIN-debug] POST /api/car/insurance_info --> qnc-server/api.(*Car).InsuranceInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vin_check_info --> qnc-server/api.(*Car).VinCheckInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_transfer --> qnc-server/api.(*Car).VehicleTransfer-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_valuation --> qnc-server/api.(*Car).VehicleValuation-fm (5 handlers) +[GIN-debug] GET /api/car/get_maintenance_history --> qnc-server/api.(*Car).QueryHistoryList-fm (5 handlers) +[GIN-debug] POST /api/car/callback --> qnc-server/api.(*Car).CarCallback-fm (4 handlers) +[GIN-debug] POST /api/verify/phone --> qnc-server/api.(*Verify).VerifyNamePhone-fm (5 handlers) +[GIN-debug] GET /api/verify/get_query --> qnc-server/api.(*Verify).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/verify/card_no --> qnc-server/api.(*Verify).VerifyNameCard-fm (5 handlers) +[GIN-debug] POST /api/verify/bank_card --> qnc-server/api.(*Verify).VerifyBankCard-fm (5 handlers) +[GIN-debug] POST /api/verify/skill_cert --> qnc-server/api.(*Verify).VerifySkillCert-fm (5 handlers) +[GIN-debug] POST /api/feature/ocr_name --> qnc-server/api.(*Feature).OcrName-fm (5 handlers) +[GIN-debug] POST /api/feature/verify_elements --> qnc-server/api.(*Feature).VerifyElements-fm (5 handlers) +2024/10/30 15:06:54 HTTP server listening on http://127.0.0.1:14500 +[GIN-debug] [WARNING] You trusted all proxies, this is NOT safe. We recommend you to set a value. +Please check https://pkg.go.dev/github.com/gin-gonic/gin#readme-don-t-trust-all-proxies for details. +[GIN-debug] Listening and serving HTTP on :14500 +2024/10/30 15:06:55 Start: 2024-10-30T15:06:55+08:00, Method: POST, URL: /api/lawsuitQuery/query_v2, GET params: map[] +2024/10/30 15:13:01 End: 2024-10-30T15:13:01+08:00, Method: POST, URL: /api/lawsuitQuery/query_v2, Status: 200, Latency: 6m6.6425855s +[GIN] 2024/10/30 - 15:13:01 | 200 | 6m6s | 127.0.0.1 | POST "/api/lawsuitQuery/query_v2" +[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production. + - using env: export GIN_MODE=release + - using code: gin.SetMode(gin.ReleaseMode) + +[GIN-debug] Loaded HTML Templates (2): + - + - refund.html + +[GIN-debug] GET /api/user/test --> qnc-server/api.(*User).Test-fm (4 handlers) +[GIN-debug] POST /api/user/log --> qnc-server/api.(*User).Log-fm (4 handlers) +[GIN-debug] POST /api/user/login --> qnc-server/api.(*User).Login-fm (4 handlers) +[GIN-debug] POST /api/user/h5_login --> qnc-server/api.(*User).H5Login-fm (4 handlers) +[GIN-debug] POST /api/user/phone_login --> qnc-server/api.(*User).PhoneLogin-fm (4 handlers) +[GIN-debug] POST /api/user/verify --> qnc-server/api.(*User).GetVerify-fm (4 handlers) +[GIN-debug] GET /api/user/get_config --> qnc-server/api.(*User).GetSDKConfig-fm (4 handlers) +[GIN-debug] POST /api/single/bc_evaluate_marriage --> qnc-server/api.(*SingleQuery).EvaluateMarriageQuery-fm (6 handlers) +[GIN-debug] GET /api/single/get_merriage_record --> qnc-server/api.(*SingleQuery).GetMerriageRecord-fm (5 handlers) +[GIN-debug] POST /api/lawsuitQuery/query_v2 --> qnc-server/api.(*LawsuitQuery).queryListV2-fm (5 handlers) +[GIN-debug] GET /api/lawsuitQuery/get_record --> qnc-server/api.(*LawsuitQuery).GetRecord-fm (5 handlers) +[GIN-debug] GET /api/ent/search --> qnc-server/api.(*Ent).search-fm (5 handlers) +[GIN-debug] GET /api/ent/query_details --> qnc-server/api.(*Ent).queryDetails-fm (5 handlers) +[GIN-debug] GET /api/ent/query_feature/:feature --> qnc-server/api.(*Ent).queryFeature-fm (5 handlers) +[GIN-debug] GET /api/ent/query_list_feature/:feature --> qnc-server/api.(*Ent).queryListFeature-fm (5 handlers) +[GIN-debug] POST /api/pay/callback/:platform --> qnc-server/api.(*Pay).Callback-fm (4 handlers) +[GIN-debug] GET /api/pay/refund_details/:id --> qnc-server/api.(*Pay).RefundDetailsHTML-fm (4 handlers) +[GIN-debug] POST /api/pay/refund/:id --> qnc-server/api.(*Pay).Refund-fm (4 handlers) +[GIN-debug] POST /api/pay/refund_callback/:platform --> qnc-server/api.(*Pay).RefundCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/ali_callback --> qnc-server/api.(*Pay).AlipayCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/complaint_callback/:platform --> qnc-server/api.(*Pay).WxPayComplaintCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/prepay --> qnc-server/api.(*Pay).Prepay-fm (5 handlers) +[GIN-debug] GET /api/pay/order_list --> qnc-server/api.(*Pay).GetOrderList-fm (5 handlers) +[GIN-debug] POST /api/pay/ali_prepay --> qnc-server/api.(*Pay).AliPrepay-fm (5 handlers) +[GIN-debug] GET /api/pay/get_query_cache --> qnc-server/api.(*Pay).GetQueryCache-fm (5 handlers) +[GIN-debug] GET /api/product/product_notes --> qnc-server/api.(*Product).GetProductNotes-fm (5 handlers) +[GIN-debug] GET /api/product/product_info --> qnc-server/api.(*Product).GetProductInfo-fm (4 handlers) +[GIN-debug] GET /api/render/get_index --> qnc-server/api.(*Render).GetIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_car_index --> qnc-server/api.(*Render).GetCarIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_verify_index --> qnc-server/api.(*Render).GetVerifyIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_notification --> qnc-server/api.(*Render).GetNotification-fm (4 handlers) +[GIN-debug] GET /api/render/get_shadow --> qnc-server/api.(*Render).GetShade-fm (4 handlers) +[GIN-debug] GET /api/render/setting --> qnc-server/api.(*Render).GetSetting-fm (4 handlers) +[GIN-debug] POST /api/car/insurance --> qnc-server/api.(*Car).Insurance-fm (5 handlers) +[GIN-debug] POST /api/car/maintenance --> qnc-server/api.(*Car).Maintenance-fm (5 handlers) +[GIN-debug] GET /api/car/get_query --> qnc-server/api.(*Car).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/car/person_car_verify --> qnc-server/api.(*Car).PersonCarVerify-fm (5 handlers) +[GIN-debug] POST /api/car/under_name --> qnc-server/api.(*Car).UnderName-fm (5 handlers) +[GIN-debug] POST /api/car/insurance_info --> qnc-server/api.(*Car).InsuranceInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vin_check_info --> qnc-server/api.(*Car).VinCheckInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_transfer --> qnc-server/api.(*Car).VehicleTransfer-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_valuation --> qnc-server/api.(*Car).VehicleValuation-fm (5 handlers) +[GIN-debug] GET /api/car/get_maintenance_history --> qnc-server/api.(*Car).QueryHistoryList-fm (5 handlers) +[GIN-debug] POST /api/car/callback --> qnc-server/api.(*Car).CarCallback-fm (4 handlers) +[GIN-debug] POST /api/verify/phone --> qnc-server/api.(*Verify).VerifyNamePhone-fm (5 handlers) +[GIN-debug] GET /api/verify/get_query --> qnc-server/api.(*Verify).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/verify/card_no --> qnc-server/api.(*Verify).VerifyNameCard-fm (5 handlers) +[GIN-debug] POST /api/verify/bank_card --> qnc-server/api.(*Verify).VerifyBankCard-fm (5 handlers) +[GIN-debug] POST /api/verify/skill_cert --> qnc-server/api.(*Verify).VerifySkillCert-fm (5 handlers) +[GIN-debug] POST /api/feature/ocr_name --> qnc-server/api.(*Feature).OcrName-fm (5 handlers) +[GIN-debug] POST /api/feature/verify_elements --> qnc-server/api.(*Feature).VerifyElements-fm (5 handlers) +2024/10/30 15:13:05 HTTP server listening on http://127.0.0.1:14500 +[GIN-debug] [WARNING] You trusted all proxies, this is NOT safe. We recommend you to set a value. +Please check https://pkg.go.dev/github.com/gin-gonic/gin#readme-don-t-trust-all-proxies for details. +[GIN-debug] Listening and serving HTTP on :14500 diff --git a/logs/2024-11/2024-11-19 b/logs/2024-11/2024-11-19 new file mode 100644 index 0000000..2c5fdc6 --- /dev/null +++ b/logs/2024-11/2024-11-19 @@ -0,0 +1,370 @@ +[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production. + - using env: export GIN_MODE=release + - using code: gin.SetMode(gin.ReleaseMode) + +[GIN-debug] Loaded HTML Templates (2): + - + - refund.html + +[GIN-debug] GET /api/user/test --> qnc-server/api.(*User).Test-fm (4 handlers) +[GIN-debug] POST /api/user/log --> qnc-server/api.(*User).Log-fm (4 handlers) +[GIN-debug] POST /api/user/login --> qnc-server/api.(*User).Login-fm (4 handlers) +[GIN-debug] POST /api/user/h5_login --> qnc-server/api.(*User).H5Login-fm (4 handlers) +[GIN-debug] POST /api/user/phone_login --> qnc-server/api.(*User).PhoneLogin-fm (4 handlers) +[GIN-debug] POST /api/user/verify --> qnc-server/api.(*User).GetVerify-fm (4 handlers) +[GIN-debug] GET /api/user/get_config --> qnc-server/api.(*User).GetSDKConfig-fm (4 handlers) +[GIN-debug] POST /api/single/bc_evaluate_marriage --> qnc-server/api.(*SingleQuery).EvaluateMarriageQuery-fm (6 handlers) +[GIN-debug] GET /api/single/get_merriage_record --> qnc-server/api.(*SingleQuery).GetMerriageRecord-fm (5 handlers) +[GIN-debug] POST /api/lawsuitQuery/query_v2 --> qnc-server/api.(*LawsuitQuery).queryListV2-fm (5 handlers) +[GIN-debug] GET /api/lawsuitQuery/get_record --> qnc-server/api.(*LawsuitQuery).GetRecord-fm (5 handlers) +[GIN-debug] GET /api/ent/search --> qnc-server/api.(*Ent).search-fm (5 handlers) +[GIN-debug] GET /api/ent/query_details --> qnc-server/api.(*Ent).queryDetails-fm (5 handlers) +[GIN-debug] GET /api/ent/query_feature/:feature --> qnc-server/api.(*Ent).queryFeature-fm (5 handlers) +[GIN-debug] GET /api/ent/query_list_feature/:feature --> qnc-server/api.(*Ent).queryListFeature-fm (5 handlers) +[GIN-debug] POST /api/pay/callback/:platform --> qnc-server/api.(*Pay).Callback-fm (4 handlers) +[GIN-debug] GET /api/pay/refund_details/:id --> qnc-server/api.(*Pay).RefundDetailsHTML-fm (4 handlers) +[GIN-debug] POST /api/pay/refund/:id --> qnc-server/api.(*Pay).Refund-fm (4 handlers) +[GIN-debug] POST /api/pay/refund_callback/:platform --> qnc-server/api.(*Pay).RefundCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/ali_callback --> qnc-server/api.(*Pay).AlipayCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/complaint_callback/:platform --> qnc-server/api.(*Pay).WxPayComplaintCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/prepay --> qnc-server/api.(*Pay).Prepay-fm (5 handlers) +[GIN-debug] GET /api/pay/order_list --> qnc-server/api.(*Pay).GetOrderList-fm (5 handlers) +[GIN-debug] POST /api/pay/ali_prepay --> qnc-server/api.(*Pay).AliPrepay-fm (5 handlers) +[GIN-debug] GET /api/pay/get_query_cache --> qnc-server/api.(*Pay).GetQueryCache-fm (5 handlers) +[GIN-debug] GET /api/product/product_notes --> qnc-server/api.(*Product).GetProductNotes-fm (5 handlers) +[GIN-debug] GET /api/product/product_info --> qnc-server/api.(*Product).GetProductInfo-fm (4 handlers) +[GIN-debug] GET /api/render/get_index --> qnc-server/api.(*Render).GetIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_car_index --> qnc-server/api.(*Render).GetCarIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_verify_index --> qnc-server/api.(*Render).GetVerifyIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_notification --> qnc-server/api.(*Render).GetNotification-fm (4 handlers) +[GIN-debug] GET /api/render/get_shadow --> qnc-server/api.(*Render).GetShade-fm (4 handlers) +[GIN-debug] GET /api/render/setting --> qnc-server/api.(*Render).GetSetting-fm (4 handlers) +[GIN-debug] POST /api/car/insurance --> qnc-server/api.(*Car).Insurance-fm (5 handlers) +[GIN-debug] POST /api/car/maintenance --> qnc-server/api.(*Car).Maintenance-fm (5 handlers) +[GIN-debug] GET /api/car/get_query --> qnc-server/api.(*Car).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/car/person_car_verify --> qnc-server/api.(*Car).PersonCarVerify-fm (5 handlers) +[GIN-debug] POST /api/car/under_name --> qnc-server/api.(*Car).UnderName-fm (5 handlers) +[GIN-debug] POST /api/car/insurance_info --> qnc-server/api.(*Car).InsuranceInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vin_check_info --> qnc-server/api.(*Car).VinCheckInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_transfer --> qnc-server/api.(*Car).VehicleTransfer-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_valuation --> qnc-server/api.(*Car).VehicleValuation-fm (5 handlers) +[GIN-debug] GET /api/car/get_maintenance_history --> qnc-server/api.(*Car).QueryHistoryList-fm (5 handlers) +[GIN-debug] POST /api/car/callback --> qnc-server/api.(*Car).CarCallback-fm (4 handlers) +[GIN-debug] POST /api/verify/phone --> qnc-server/api.(*Verify).VerifyNamePhone-fm (5 handlers) +[GIN-debug] GET /api/verify/get_query --> qnc-server/api.(*Verify).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/verify/card_no --> qnc-server/api.(*Verify).VerifyNameCard-fm (5 handlers) +[GIN-debug] POST /api/verify/bank_card --> qnc-server/api.(*Verify).VerifyBankCard-fm (5 handlers) +[GIN-debug] POST /api/verify/skill_cert --> qnc-server/api.(*Verify).VerifySkillCert-fm (5 handlers) +[GIN-debug] POST /api/feature/ocr_name --> qnc-server/api.(*Feature).OcrName-fm (5 handlers) +[GIN-debug] POST /api/feature/verify_elements --> qnc-server/api.(*Feature).VerifyElements-fm (5 handlers) +2024/11/19 12:16:10 HTTP server listening on http://127.0.0.1:14500 +[GIN-debug] [WARNING] You trusted all proxies, this is NOT safe. We recommend you to set a value. +Please check https://pkg.go.dev/github.com/gin-gonic/gin#readme-don-t-trust-all-proxies for details. +[GIN-debug] Listening and serving HTTP on :14500 +[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production. + - using env: export GIN_MODE=release + - using code: gin.SetMode(gin.ReleaseMode) + +[GIN-debug] Loaded HTML Templates (2): + - + - refund.html + +[GIN-debug] GET /api/user/test --> qnc-server/api.(*User).Test-fm (4 handlers) +[GIN-debug] POST /api/user/log --> qnc-server/api.(*User).Log-fm (4 handlers) +[GIN-debug] POST /api/user/login --> qnc-server/api.(*User).Login-fm (4 handlers) +[GIN-debug] POST /api/user/h5_login --> qnc-server/api.(*User).H5Login-fm (4 handlers) +[GIN-debug] POST /api/user/phone_login --> qnc-server/api.(*User).PhoneLogin-fm (4 handlers) +[GIN-debug] POST /api/user/verify --> qnc-server/api.(*User).GetVerify-fm (4 handlers) +[GIN-debug] GET /api/user/get_config --> qnc-server/api.(*User).GetSDKConfig-fm (4 handlers) +[GIN-debug] POST /api/single/bc_evaluate_marriage --> qnc-server/api.(*SingleQuery).EvaluateMarriageQuery-fm (6 handlers) +[GIN-debug] GET /api/single/get_merriage_record --> qnc-server/api.(*SingleQuery).GetMerriageRecord-fm (5 handlers) +[GIN-debug] POST /api/lawsuitQuery/query_v2 --> qnc-server/api.(*LawsuitQuery).queryListV2-fm (5 handlers) +[GIN-debug] GET /api/lawsuitQuery/get_record --> qnc-server/api.(*LawsuitQuery).GetRecord-fm (5 handlers) +[GIN-debug] GET /api/ent/search --> qnc-server/api.(*Ent).search-fm (5 handlers) +[GIN-debug] GET /api/ent/query_details --> qnc-server/api.(*Ent).queryDetails-fm (5 handlers) +[GIN-debug] GET /api/ent/query_feature/:feature --> qnc-server/api.(*Ent).queryFeature-fm (5 handlers) +[GIN-debug] GET /api/ent/query_list_feature/:feature --> qnc-server/api.(*Ent).queryListFeature-fm (5 handlers) +[GIN-debug] POST /api/pay/callback/:platform --> qnc-server/api.(*Pay).Callback-fm (4 handlers) +[GIN-debug] GET /api/pay/refund_details/:id --> qnc-server/api.(*Pay).RefundDetailsHTML-fm (4 handlers) +[GIN-debug] POST /api/pay/refund/:id --> qnc-server/api.(*Pay).Refund-fm (4 handlers) +[GIN-debug] POST /api/pay/refund_callback/:platform --> qnc-server/api.(*Pay).RefundCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/ali_callback --> qnc-server/api.(*Pay).AlipayCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/complaint_callback/:platform --> qnc-server/api.(*Pay).WxPayComplaintCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/prepay --> qnc-server/api.(*Pay).Prepay-fm (5 handlers) +[GIN-debug] GET /api/pay/order_list --> qnc-server/api.(*Pay).GetOrderList-fm (5 handlers) +[GIN-debug] POST /api/pay/ali_prepay --> qnc-server/api.(*Pay).AliPrepay-fm (5 handlers) +[GIN-debug] GET /api/pay/get_query_cache --> qnc-server/api.(*Pay).GetQueryCache-fm (5 handlers) +[GIN-debug] GET /api/product/product_notes --> qnc-server/api.(*Product).GetProductNotes-fm (5 handlers) +[GIN-debug] GET /api/product/product_info --> qnc-server/api.(*Product).GetProductInfo-fm (4 handlers) +[GIN-debug] GET /api/render/get_index --> qnc-server/api.(*Render).GetIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_car_index --> qnc-server/api.(*Render).GetCarIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_verify_index --> qnc-server/api.(*Render).GetVerifyIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_notification --> qnc-server/api.(*Render).GetNotification-fm (4 handlers) +[GIN-debug] GET /api/render/get_shadow --> qnc-server/api.(*Render).GetShade-fm (4 handlers) +[GIN-debug] GET /api/render/setting --> qnc-server/api.(*Render).GetSetting-fm (4 handlers) +[GIN-debug] POST /api/car/insurance --> qnc-server/api.(*Car).Insurance-fm (5 handlers) +[GIN-debug] POST /api/car/maintenance --> qnc-server/api.(*Car).Maintenance-fm (5 handlers) +[GIN-debug] GET /api/car/get_query --> qnc-server/api.(*Car).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/car/person_car_verify --> qnc-server/api.(*Car).PersonCarVerify-fm (5 handlers) +[GIN-debug] POST /api/car/under_name --> qnc-server/api.(*Car).UnderName-fm (5 handlers) +[GIN-debug] POST /api/car/insurance_info --> qnc-server/api.(*Car).InsuranceInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vin_check_info --> qnc-server/api.(*Car).VinCheckInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_transfer --> qnc-server/api.(*Car).VehicleTransfer-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_valuation --> qnc-server/api.(*Car).VehicleValuation-fm (5 handlers) +[GIN-debug] GET /api/car/get_maintenance_history --> qnc-server/api.(*Car).QueryHistoryList-fm (5 handlers) +[GIN-debug] POST /api/car/callback --> qnc-server/api.(*Car).CarCallback-fm (4 handlers) +[GIN-debug] POST /api/verify/phone --> qnc-server/api.(*Verify).VerifyNamePhone-fm (5 handlers) +[GIN-debug] GET /api/verify/get_query --> qnc-server/api.(*Verify).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/verify/card_no --> qnc-server/api.(*Verify).VerifyNameCard-fm (5 handlers) +[GIN-debug] POST /api/verify/bank_card --> qnc-server/api.(*Verify).VerifyBankCard-fm (5 handlers) +[GIN-debug] POST /api/verify/skill_cert --> qnc-server/api.(*Verify).VerifySkillCert-fm (5 handlers) +[GIN-debug] POST /api/feature/ocr_name --> qnc-server/api.(*Feature).OcrName-fm (5 handlers) +[GIN-debug] POST /api/feature/verify_elements --> qnc-server/api.(*Feature).VerifyElements-fm (5 handlers) +2024/11/19 12:23:31 HTTP server listening on http://127.0.0.1:14500 +[GIN-debug] [WARNING] You trusted all proxies, this is NOT safe. We recommend you to set a value. +Please check https://pkg.go.dev/github.com/gin-gonic/gin#readme-don-t-trust-all-proxies for details. +[GIN-debug] Listening and serving HTTP on :14500 +2024/11/19 12:25:01 Start: 2024-11-19T12:25:01+08:00, Method: GET, URL: /api/render/get_notification, GET params: map[] +2024/11/19 12:25:01 End: 2024-11-19T12:25:01+08:00, Method: GET, URL: /api/render/get_notification, Status: 200, Latency: 1.9348ms +[GIN] 2024/11/19 - 12:25:01 | 200 | 1.9348ms | 127.0.0.1 | GET "/api/render/get_notification" +2024/11/19 12:25:01 Start: 2024-11-19T12:25:01+08:00, Method: GET, URL: /api/render/setting, GET params: map[] +2024/11/19 12:25:01 End: 2024-11-19T12:25:01+08:00, Method: GET, URL: /api/render/setting, Status: 200, Latency: 0s +[GIN] 2024/11/19 - 12:25:01 | 200 | 0s | 127.0.0.1 | GET "/api/render/setting" +2024/11/19 12:25:01 Start: 2024-11-19T12:25:01+08:00, Method: GET, URL: /api/render/get_index, GET params: map[] +2024/11/19 12:25:01 End: 2024-11-19T12:25:01+08:00, Method: GET, URL: /api/render/get_index, Status: 200, Latency: 832.5µs +[GIN] 2024/11/19 - 12:25:01 | 200 | 832.5µs | 127.0.0.1 | GET "/api/render/get_index" +2024/11/19 12:25:02 Start: 2024-11-19T12:25:02+08:00, Method: POST, URL: /api/user/login, GET params: map[] +2024/11/19 12:25:02 End: 2024-11-19T12:25:02+08:00, Method: POST, URL: /api/user/login, Status: 200, Latency: 296.8048ms +[GIN] 2024/11/19 - 12:25:02 | 200 | 296.8048ms | 127.0.0.1 | POST "/api/user/login" +2024/11/19 12:25:03 Start: 2024-11-19T12:25:03+08:00, Method: GET, URL: /api/product/product_notes?product_name=evaluateMarriage, GET params: map[product_name:[evaluateMarriage]] +2024/11/19 12:25:03 End: 2024-11-19T12:25:03+08:00, Method: GET, URL: /api/product/product_notes?product_name=evaluateMarriage, Status: 200, Latency: 2.4651ms +[GIN] 2024/11/19 - 12:25:03 | 200 | 2.4651ms | 127.0.0.1 | GET "/api/product/product_notes?product_name=evaluateMarriage" +2024/11/19 12:25:24 Start: 2024-11-19T12:25:24+08:00, Method: POST, URL: /api/feature/ocr_name, GET params: map[] +2024/11/19 12:25:24 End: 2024-11-19T12:25:24+08:00, Method: POST, URL: /api/feature/ocr_name, Status: 200, Latency: 1.0801ms +[GIN] 2024/11/19 - 12:25:24 | 200 | 1.5833ms | 127.0.0.1 | POST "/api/feature/ocr_name" +2024/11/19 12:25:26 Start: 2024-11-19T12:25:26+08:00, Method: POST, URL: /api/single/bc_evaluate_marriage, GET params: map[] +2024/11/19 12:28:50 End: 2024-11-19T12:28:50+08:00, Method: POST, URL: /api/single/bc_evaluate_marriage, Status: 200, Latency: 3m23.9912737s +[GIN] 2024/11/19 - 12:28:50 | 200 | 3m23s | 127.0.0.1 | POST "/api/single/bc_evaluate_marriage" +2024/11/19 12:28:50 Start: 2024-11-19T12:28:50+08:00, Method: POST, URL: /api/user/verify, GET params: map[] +2024/11/19 12:28:51 End: 2024-11-19T12:28:51+08:00, Method: POST, URL: /api/user/verify, Status: 200, Latency: 437.8304ms +[GIN] 2024/11/19 - 12:28:51 | 200 | 437.8304ms | 127.0.0.1 | POST "/api/user/verify" +2024/11/19 12:29:05 Start: 2024-11-19T12:29:05+08:00, Method: POST, URL: /api/single/bc_evaluate_marriage, GET params: map[] +2024/11/19 12:29:31 End: 2024-11-19T12:29:31+08:00, Method: POST, URL: /api/single/bc_evaluate_marriage, Status: 200, Latency: 26.2765708s +[GIN] 2024/11/19 - 12:29:31 | 200 | 26.2765708s | 127.0.0.1 | POST "/api/single/bc_evaluate_marriage" +2024/11/19 12:29:31 Start: 2024-11-19T12:29:31+08:00, Method: POST, URL: /api/pay/prepay, GET params: map[] +2024/11/19 12:29:32 End: 2024-11-19T12:29:32+08:00, Method: POST, URL: /api/pay/prepay, Status: 200, Latency: 446.057ms +[GIN] 2024/11/19 - 12:29:32 | 200 | 446.057ms | 127.0.0.1 | POST "/api/pay/prepay" +2024/11/19 12:30:05 Start: 2024-11-19T12:30:05+08:00, Method: POST, URL: /api/single/bc_evaluate_marriage, GET params: map[] +2024/11/19 12:30:05 End: 2024-11-19T12:30:05+08:00, Method: POST, URL: /api/single/bc_evaluate_marriage, Status: 200, Latency: 77.1256ms +[GIN] 2024/11/19 - 12:30:05 | 200 | 77.1256ms | 127.0.0.1 | POST "/api/single/bc_evaluate_marriage" +2024/11/19 12:30:05 Start: 2024-11-19T12:30:05+08:00, Method: POST, URL: /api/pay/prepay, GET params: map[] +2024/11/19 12:30:06 End: 2024-11-19T12:30:06+08:00, Method: POST, URL: /api/pay/prepay, Status: 200, Latency: 430.4916ms +[GIN] 2024/11/19 - 12:30:06 | 200 | 430.4916ms | 127.0.0.1 | POST "/api/pay/prepay" +[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production. + - using env: export GIN_MODE=release + - using code: gin.SetMode(gin.ReleaseMode) + +[GIN-debug] Loaded HTML Templates (2): + - + - refund.html + +[GIN-debug] GET /api/user/test --> qnc-server/api.(*User).Test-fm (4 handlers) +[GIN-debug] POST /api/user/log --> qnc-server/api.(*User).Log-fm (4 handlers) +[GIN-debug] POST /api/user/login --> qnc-server/api.(*User).Login-fm (4 handlers) +[GIN-debug] POST /api/user/h5_login --> qnc-server/api.(*User).H5Login-fm (4 handlers) +[GIN-debug] POST /api/user/phone_login --> qnc-server/api.(*User).PhoneLogin-fm (4 handlers) +[GIN-debug] POST /api/user/verify --> qnc-server/api.(*User).GetVerify-fm (4 handlers) +[GIN-debug] GET /api/user/get_config --> qnc-server/api.(*User).GetSDKConfig-fm (4 handlers) +[GIN-debug] POST /api/single/bc_evaluate_marriage --> qnc-server/api.(*SingleQuery).EvaluateMarriageQuery-fm (6 handlers) +[GIN-debug] GET /api/single/get_merriage_record --> qnc-server/api.(*SingleQuery).GetMerriageRecord-fm (5 handlers) +[GIN-debug] POST /api/lawsuitQuery/query_v2 --> qnc-server/api.(*LawsuitQuery).queryListV2-fm (5 handlers) +[GIN-debug] GET /api/lawsuitQuery/get_record --> qnc-server/api.(*LawsuitQuery).GetRecord-fm (5 handlers) +[GIN-debug] GET /api/ent/search --> qnc-server/api.(*Ent).search-fm (5 handlers) +[GIN-debug] GET /api/ent/query_details --> qnc-server/api.(*Ent).queryDetails-fm (5 handlers) +[GIN-debug] GET /api/ent/query_feature/:feature --> qnc-server/api.(*Ent).queryFeature-fm (5 handlers) +[GIN-debug] GET /api/ent/query_list_feature/:feature --> qnc-server/api.(*Ent).queryListFeature-fm (5 handlers) +[GIN-debug] POST /api/pay/callback/:platform --> qnc-server/api.(*Pay).Callback-fm (4 handlers) +[GIN-debug] GET /api/pay/refund_details/:id --> qnc-server/api.(*Pay).RefundDetailsHTML-fm (4 handlers) +[GIN-debug] POST /api/pay/refund/:id --> qnc-server/api.(*Pay).Refund-fm (4 handlers) +[GIN-debug] POST /api/pay/refund_callback/:platform --> qnc-server/api.(*Pay).RefundCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/ali_callback --> qnc-server/api.(*Pay).AlipayCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/complaint_callback/:platform --> qnc-server/api.(*Pay).WxPayComplaintCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/prepay --> qnc-server/api.(*Pay).Prepay-fm (5 handlers) +[GIN-debug] GET /api/pay/order_list --> qnc-server/api.(*Pay).GetOrderList-fm (5 handlers) +[GIN-debug] POST /api/pay/ali_prepay --> qnc-server/api.(*Pay).AliPrepay-fm (5 handlers) +[GIN-debug] GET /api/pay/get_query_cache --> qnc-server/api.(*Pay).GetQueryCache-fm (5 handlers) +[GIN-debug] GET /api/product/product_notes --> qnc-server/api.(*Product).GetProductNotes-fm (5 handlers) +[GIN-debug] GET /api/product/product_info --> qnc-server/api.(*Product).GetProductInfo-fm (4 handlers) +[GIN-debug] GET /api/render/get_index --> qnc-server/api.(*Render).GetIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_car_index --> qnc-server/api.(*Render).GetCarIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_verify_index --> qnc-server/api.(*Render).GetVerifyIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_notification --> qnc-server/api.(*Render).GetNotification-fm (4 handlers) +[GIN-debug] GET /api/render/get_shadow --> qnc-server/api.(*Render).GetShade-fm (4 handlers) +[GIN-debug] GET /api/render/setting --> qnc-server/api.(*Render).GetSetting-fm (4 handlers) +[GIN-debug] POST /api/car/insurance --> qnc-server/api.(*Car).Insurance-fm (5 handlers) +[GIN-debug] POST /api/car/maintenance --> qnc-server/api.(*Car).Maintenance-fm (5 handlers) +[GIN-debug] GET /api/car/get_query --> qnc-server/api.(*Car).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/car/person_car_verify --> qnc-server/api.(*Car).PersonCarVerify-fm (5 handlers) +[GIN-debug] POST /api/car/under_name --> qnc-server/api.(*Car).UnderName-fm (5 handlers) +[GIN-debug] POST /api/car/insurance_info --> qnc-server/api.(*Car).InsuranceInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vin_check_info --> qnc-server/api.(*Car).VinCheckInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_transfer --> qnc-server/api.(*Car).VehicleTransfer-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_valuation --> qnc-server/api.(*Car).VehicleValuation-fm (5 handlers) +[GIN-debug] GET /api/car/get_maintenance_history --> qnc-server/api.(*Car).QueryHistoryList-fm (5 handlers) +[GIN-debug] POST /api/car/callback --> qnc-server/api.(*Car).CarCallback-fm (4 handlers) +[GIN-debug] POST /api/verify/phone --> qnc-server/api.(*Verify).VerifyNamePhone-fm (5 handlers) +[GIN-debug] GET /api/verify/get_query --> qnc-server/api.(*Verify).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/verify/card_no --> qnc-server/api.(*Verify).VerifyNameCard-fm (5 handlers) +[GIN-debug] POST /api/verify/bank_card --> qnc-server/api.(*Verify).VerifyBankCard-fm (5 handlers) +[GIN-debug] POST /api/verify/skill_cert --> qnc-server/api.(*Verify).VerifySkillCert-fm (5 handlers) +[GIN-debug] POST /api/feature/ocr_name --> qnc-server/api.(*Feature).OcrName-fm (5 handlers) +[GIN-debug] POST /api/feature/verify_elements --> qnc-server/api.(*Feature).VerifyElements-fm (5 handlers) +2024/11/19 12:30:42 HTTP server listening on http://127.0.0.1:14500 +[GIN-debug] [WARNING] You trusted all proxies, this is NOT safe. We recommend you to set a value. +Please check https://pkg.go.dev/github.com/gin-gonic/gin#readme-don-t-trust-all-proxies for details. +[GIN-debug] Listening and serving HTTP on :14500 +2024/11/19 12:30:46 Start: 2024-11-19T12:30:46+08:00, Method: POST, URL: /api/single/bc_evaluate_marriage, GET params: map[] +2024/11/19 12:30:47 【西部数据请求】响应数据:{Message:IP未授权 Code:10002 Data: ID: ErrorCode: Reason:} +2024/11/19 12:30:47 【西部数据请求】响应数据业务失败:{Message:IP未授权 Code:10002 Data: ID: ErrorCode: Reason:} +2024/11/19 12:30:47 【西部数据请求】响应数据:{Message:IP未授权 Code:10002 Data: ID: ErrorCode: Reason:} +2024/11/19 12:30:47 【西部数据请求】响应数据业务失败:{Message:IP未授权 Code:10002 Data: ID: ErrorCode: Reason:} +2024/11/19 12:30:47 【西部数据请求】响应数据:{Message:IP未授权 Code:10002 Data: ID: ErrorCode: Reason:} +2024/11/19 12:30:47 【西部数据请求】响应数据业务失败:{Message:IP未授权 Code:10002 Data: ID: ErrorCode: Reason:} +2024/11/19 12:30:47 【西部数据请求】响应数据:{Message:IP未授权 Code:10002 Data: ID: ErrorCode: Reason:} +2024/11/19 12:30:47 【西部数据请求】响应数据业务失败:{Message:IP未授权 Code:10002 Data: ID: ErrorCode: Reason:} +2024/11/19 12:30:47 【西部数据请求】响应数据:{Message:IP未授权 Code:10002 Data: ID: ErrorCode: Reason:} +2024/11/19 12:30:47 【西部数据请求】响应数据业务失败:{Message:IP未授权 Code:10002 Data: ID: ErrorCode: Reason:} + + +2024/11/19 12:30:47 [Recovery] 2024/11/19 - 12:30:47 panic recovered: +POST /api/single/bc_evaluate_marriage HTTP/1.1 +Host: 127.0.0.1:14500 +Accept: */* +Accept-Encoding: gzip, deflate, br +Accept-Language: zh-CN,zh;q=0.9 +Connection: keep-alive +Content-Length: 14813 +Content-Type: application/json +Referer: https://servicewechat.com/wx5b47fc78eaf12e22/devtools/page-frame.html +Sec-Fetch-Dest: empty +Sec-Fetch-Mode: cors +Sec-Fetch-Site: same-site +User-Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.0 Mobile/15E148 Safari/604.1 wechatdevtools/1.06.2402040 MicroMessenger/8.0.5 Language/zh_CN webview/ +X-Token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJVc2VyaWQiOjgyMDAxLCJEaXNhYmxlIjpmYWxzZSwiQXV0aElkZW50aWZpZXJzIjp7Im9wZW5pZCI6Im9SWTVyN2VkUklYNXZGaE16YUZMVWQ3anpsTm8iLCJ1bmlvbmlkIjoiIiwicGhvbmUiOiIifSwiUGxhdGZvcm0iOiJ3ZWNoYXRfbXAiLCJCdWZmZXJUaW1lIjo4NjQwMCwiaXNzIjoiZm0iLCJhdWQiOlsiRk0iXSwiZXhwIjoxNzMyNTk1MTAyLCJuYmYiOjE3MzE5OTAzMDJ9.33yOze3jZ9JJh8-H6qqPLcvrghZOu98JAHs2l3BIASw + + +runtime error: invalid memory address or nil pointer dereference +C:/Users/LiangZai/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.23.0.windows-amd64/src/runtime/panic.go:262 (0x53f81d) + panicmem: panic(memoryError) +C:/Users/LiangZai/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.23.0.windows-amd64/src/runtime/signal_windows.go:401 (0x55718b) + sigpanic: panicmem() +C:/Users/LiangZai/go/pkg/mod/github.com/wechatpay-apiv3/wechatpay-go@v0.2.18/core/client.go:222 (0xe31a9d) + (*Client).doRequest: if authorization, err = client.credential.GenerateAuthorizationHeader( +C:/Users/LiangZai/go/pkg/mod/github.com/wechatpay-apiv3/wechatpay-go@v0.2.18/core/client.go:289 (0xe324bc) + (*Client).Request: return client.doRequest(ctx, method, varURL.String(), headerParams, contentType, body, body.String()) +C:/Users/LiangZai/go/pkg/mod/github.com/wechatpay-apiv3/wechatpay-go@v0.2.18/services/refunddomestic/api_refunds.go:75 (0x1240391) + (*RefundsApiService).Create: result, err = a.Client.Request(ctx, localVarHTTPMethod, localVarPath, localVarHeaderParams, localVarQueryParams, localVarPostBody, localVarHTTPContentType) +D:/Code/Golang/qnc-server/service/order.go:128 (0x1341cfc) + (*OrderService).WeChatRefund: resp, result, err := svc.Create(ctx, +D:/Code/Golang/qnc-server/api/singleQuery.go:207 (0x139437e) + (*SingleQuery).EvaluateMarriageQuery: err := orderService.WeChatRefund(order) +C:/Users/LiangZai/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/context.go:185 (0xdef499) + (*Context).Next: c.handlers[c.index](c) +D:/Code/Golang/qnc-server/api/middleware.go:104 (0x139fe84) + NotifyMiddleware.func1: c.Next() +C:/Users/LiangZai/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/context.go:185 (0xdef499) + (*Context).Next: c.handlers[c.index](c) +D:/Code/Golang/qnc-server/api/middleware.go:55 (0x13a0516) + JWTAuth.func1: c.Next() +C:/Users/LiangZai/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/context.go:185 (0xdef499) + (*Context).Next: c.handlers[c.index](c) +D:/Code/Golang/qnc-server/core/logger.go:59 (0x143733d) + LoggingMiddleware.func1: c.Next() +C:/Users/LiangZai/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/context.go:185 (0xdef499) + (*Context).Next: c.handlers[c.index](c) +C:/Users/LiangZai/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/recovery.go:102 (0xe0319c) + CustomRecoveryWithWriter.func1: c.Next() +C:/Users/LiangZai/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/context.go:185 (0xdef499) + (*Context).Next: c.handlers[c.index](c) +C:/Users/LiangZai/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/logger.go:249 (0xe01a51) + LoggerWithConfig.func1: c.Next() +C:/Users/LiangZai/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/context.go:185 (0xdef499) + (*Context).Next: c.handlers[c.index](c) +C:/Users/LiangZai/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/gin.go:633 (0xdff7c9) + (*Engine).handleHTTPRequest: c.Next() +C:/Users/LiangZai/go/pkg/mod/github.com/gin-gonic/gin@v1.10.0/gin.go:589 (0xdff29b) + (*Engine).ServeHTTP: engine.handleHTTPRequest(c) +C:/Users/LiangZai/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.23.0.windows-amd64/src/net/http/server.go:3210 (0xa8fbf6) + serverHandler.ServeHTTP: handler.ServeHTTP(rw, req) +C:/Users/LiangZai/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.23.0.windows-amd64/src/net/http/server.go:2092 (0xa5e034) + (*conn).serve: serverHandler{c.server}.ServeHTTP(w, w.req) +C:/Users/LiangZai/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.23.0.windows-amd64/src/runtime/asm_amd64.s:1700 (0x57eca0) + goexit: BYTE $0x90 // NOP + +[GIN] 2024/11/19 - 12:30:47 | 500 | 953.019ms | 127.0.0.1 | POST "/api/single/bc_evaluate_marriage" +2024/11/19 12:30:55 Start: 2024-11-19T12:30:55+08:00, Method: POST, URL: /api/single/bc_evaluate_marriage, GET params: map[] +2024/11/19 12:31:08 【西部数据请求】响应数据:{Message:IP未授权 Code:10002 Data: ID: ErrorCode: Reason:} +2024/11/19 12:31:08 【西部数据请求】响应数据业务失败:{Message:IP未授权 Code:10002 Data: ID: ErrorCode: Reason:} +[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production. + - using env: export GIN_MODE=release + - using code: gin.SetMode(gin.ReleaseMode) + +[GIN-debug] Loaded HTML Templates (2): + - + - refund.html + +[GIN-debug] GET /api/user/test --> qnc-server/api.(*User).Test-fm (4 handlers) +[GIN-debug] POST /api/user/log --> qnc-server/api.(*User).Log-fm (4 handlers) +[GIN-debug] POST /api/user/login --> qnc-server/api.(*User).Login-fm (4 handlers) +[GIN-debug] POST /api/user/h5_login --> qnc-server/api.(*User).H5Login-fm (4 handlers) +[GIN-debug] POST /api/user/phone_login --> qnc-server/api.(*User).PhoneLogin-fm (4 handlers) +[GIN-debug] POST /api/user/verify --> qnc-server/api.(*User).GetVerify-fm (4 handlers) +[GIN-debug] GET /api/user/get_config --> qnc-server/api.(*User).GetSDKConfig-fm (4 handlers) +[GIN-debug] POST /api/single/bc_evaluate_marriage --> qnc-server/api.(*SingleQuery).EvaluateMarriageQuery-fm (6 handlers) +[GIN-debug] GET /api/single/get_merriage_record --> qnc-server/api.(*SingleQuery).GetMerriageRecord-fm (5 handlers) +[GIN-debug] POST /api/lawsuitQuery/query_v2 --> qnc-server/api.(*LawsuitQuery).queryListV2-fm (5 handlers) +[GIN-debug] GET /api/lawsuitQuery/get_record --> qnc-server/api.(*LawsuitQuery).GetRecord-fm (5 handlers) +[GIN-debug] GET /api/ent/search --> qnc-server/api.(*Ent).search-fm (5 handlers) +[GIN-debug] GET /api/ent/query_details --> qnc-server/api.(*Ent).queryDetails-fm (5 handlers) +[GIN-debug] GET /api/ent/query_feature/:feature --> qnc-server/api.(*Ent).queryFeature-fm (5 handlers) +[GIN-debug] GET /api/ent/query_list_feature/:feature --> qnc-server/api.(*Ent).queryListFeature-fm (5 handlers) +[GIN-debug] POST /api/pay/callback/:platform --> qnc-server/api.(*Pay).Callback-fm (4 handlers) +[GIN-debug] GET /api/pay/refund_details/:id --> qnc-server/api.(*Pay).RefundDetailsHTML-fm (4 handlers) +[GIN-debug] POST /api/pay/refund/:id --> qnc-server/api.(*Pay).Refund-fm (4 handlers) +[GIN-debug] POST /api/pay/refund_callback/:platform --> qnc-server/api.(*Pay).RefundCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/ali_callback --> qnc-server/api.(*Pay).AlipayCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/complaint_callback/:platform --> qnc-server/api.(*Pay).WxPayComplaintCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/prepay --> qnc-server/api.(*Pay).Prepay-fm (5 handlers) +[GIN-debug] GET /api/pay/order_list --> qnc-server/api.(*Pay).GetOrderList-fm (5 handlers) +[GIN-debug] POST /api/pay/ali_prepay --> qnc-server/api.(*Pay).AliPrepay-fm (5 handlers) +[GIN-debug] GET /api/pay/get_query_cache --> qnc-server/api.(*Pay).GetQueryCache-fm (5 handlers) +[GIN-debug] GET /api/product/product_notes --> qnc-server/api.(*Product).GetProductNotes-fm (5 handlers) +[GIN-debug] GET /api/product/product_info --> qnc-server/api.(*Product).GetProductInfo-fm (4 handlers) +[GIN-debug] GET /api/render/get_index --> qnc-server/api.(*Render).GetIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_car_index --> qnc-server/api.(*Render).GetCarIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_verify_index --> qnc-server/api.(*Render).GetVerifyIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_notification --> qnc-server/api.(*Render).GetNotification-fm (4 handlers) +[GIN-debug] GET /api/render/get_shadow --> qnc-server/api.(*Render).GetShade-fm (4 handlers) +[GIN-debug] GET /api/render/setting --> qnc-server/api.(*Render).GetSetting-fm (4 handlers) +[GIN-debug] POST /api/car/insurance --> qnc-server/api.(*Car).Insurance-fm (5 handlers) +[GIN-debug] POST /api/car/maintenance --> qnc-server/api.(*Car).Maintenance-fm (5 handlers) +[GIN-debug] GET /api/car/get_query --> qnc-server/api.(*Car).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/car/person_car_verify --> qnc-server/api.(*Car).PersonCarVerify-fm (5 handlers) +[GIN-debug] POST /api/car/under_name --> qnc-server/api.(*Car).UnderName-fm (5 handlers) +[GIN-debug] POST /api/car/insurance_info --> qnc-server/api.(*Car).InsuranceInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vin_check_info --> qnc-server/api.(*Car).VinCheckInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_transfer --> qnc-server/api.(*Car).VehicleTransfer-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_valuation --> qnc-server/api.(*Car).VehicleValuation-fm (5 handlers) +[GIN-debug] GET /api/car/get_maintenance_history --> qnc-server/api.(*Car).QueryHistoryList-fm (5 handlers) +[GIN-debug] POST /api/car/callback --> qnc-server/api.(*Car).CarCallback-fm (4 handlers) +[GIN-debug] POST /api/verify/phone --> qnc-server/api.(*Verify).VerifyNamePhone-fm (5 handlers) +[GIN-debug] GET /api/verify/get_query --> qnc-server/api.(*Verify).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/verify/card_no --> qnc-server/api.(*Verify).VerifyNameCard-fm (5 handlers) +[GIN-debug] POST /api/verify/bank_card --> qnc-server/api.(*Verify).VerifyBankCard-fm (5 handlers) +[GIN-debug] POST /api/verify/skill_cert --> qnc-server/api.(*Verify).VerifySkillCert-fm (5 handlers) +[GIN-debug] POST /api/feature/ocr_name --> qnc-server/api.(*Feature).OcrName-fm (5 handlers) +[GIN-debug] POST /api/feature/verify_elements --> qnc-server/api.(*Feature).VerifyElements-fm (5 handlers) +2024/11/19 12:31:42 HTTP server listening on http://127.0.0.1:14500 +[GIN-debug] [WARNING] You trusted all proxies, this is NOT safe. We recommend you to set a value. +Please check https://pkg.go.dev/github.com/gin-gonic/gin#readme-don-t-trust-all-proxies for details. +[GIN-debug] Listening and serving HTTP on :14500 diff --git a/logs/2024-11/2024-11-30 b/logs/2024-11/2024-11-30 new file mode 100644 index 0000000..e65318a --- /dev/null +++ b/logs/2024-11/2024-11-30 @@ -0,0 +1,242 @@ +[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production. + - using env: export GIN_MODE=release + - using code: gin.SetMode(gin.ReleaseMode) + +[GIN-debug] Loaded HTML Templates (2): + - refund.html + - + +[GIN-debug] GET /api/user/test --> qnc-server/api.(*User).Test-fm (4 handlers) +[GIN-debug] POST /api/user/log --> qnc-server/api.(*User).Log-fm (4 handlers) +[GIN-debug] POST /api/user/login --> qnc-server/api.(*User).Login-fm (4 handlers) +[GIN-debug] POST /api/user/tydata_login --> qnc-server/api.(*User).TyDataLogin-fm (4 handlers) +[GIN-debug] POST /api/user/h5_login --> qnc-server/api.(*User).H5Login-fm (4 handlers) +[GIN-debug] POST /api/user/phone_login --> qnc-server/api.(*User).PhoneLogin-fm (4 handlers) +[GIN-debug] POST /api/user/verify --> qnc-server/api.(*User).GetVerify-fm (4 handlers) +[GIN-debug] GET /api/user/get_config --> qnc-server/api.(*User).GetSDKConfig-fm (4 handlers) +[GIN-debug] POST /api/single/bc_evaluate_marriage --> qnc-server/api.(*SingleQuery).EvaluateMarriageQuery-fm (6 handlers) +[GIN-debug] GET /api/single/get_merriage_record --> qnc-server/api.(*SingleQuery).GetMerriageRecord-fm (5 handlers) +[GIN-debug] POST /api/lawsuitQuery/query_v2 --> qnc-server/api.(*LawsuitQuery).queryListV2-fm (5 handlers) +[GIN-debug] GET /api/lawsuitQuery/get_record --> qnc-server/api.(*LawsuitQuery).GetRecord-fm (5 handlers) +[GIN-debug] GET /api/ent/search --> qnc-server/api.(*Ent).search-fm (5 handlers) +[GIN-debug] GET /api/ent/query_details --> qnc-server/api.(*Ent).queryDetails-fm (5 handlers) +[GIN-debug] GET /api/ent/query_feature/:feature --> qnc-server/api.(*Ent).queryFeature-fm (5 handlers) +[GIN-debug] GET /api/ent/query_list_feature/:feature --> qnc-server/api.(*Ent).queryListFeature-fm (5 handlers) +[GIN-debug] POST /api/pay/callback/:platform --> qnc-server/api.(*Pay).Callback-fm (4 handlers) +[GIN-debug] GET /api/pay/refund_details/:id --> qnc-server/api.(*Pay).RefundDetailsHTML-fm (4 handlers) +[GIN-debug] POST /api/pay/refund/:id --> qnc-server/api.(*Pay).Refund-fm (4 handlers) +[GIN-debug] POST /api/pay/refund_callback/:platform --> qnc-server/api.(*Pay).RefundCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/ali_callback --> qnc-server/api.(*Pay).AlipayCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/complaint_callback/:platform --> qnc-server/api.(*Pay).WxPayComplaintCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/prepay --> qnc-server/api.(*Pay).Prepay-fm (5 handlers) +[GIN-debug] GET /api/pay/order_list --> qnc-server/api.(*Pay).GetOrderList-fm (5 handlers) +[GIN-debug] POST /api/pay/ali_prepay --> qnc-server/api.(*Pay).AliPrepay-fm (5 handlers) +[GIN-debug] GET /api/pay/get_query_cache --> qnc-server/api.(*Pay).GetQueryCache-fm (5 handlers) +[GIN-debug] GET /api/product/product_notes --> qnc-server/api.(*Product).GetProductNotes-fm (5 handlers) +[GIN-debug] GET /api/product/product_info --> qnc-server/api.(*Product).GetProductInfo-fm (4 handlers) +[GIN-debug] GET /api/render/get_index --> qnc-server/api.(*Render).GetIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_car_index --> qnc-server/api.(*Render).GetCarIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_verify_index --> qnc-server/api.(*Render).GetVerifyIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_notification --> qnc-server/api.(*Render).GetNotification-fm (4 handlers) +[GIN-debug] GET /api/render/get_shadow --> qnc-server/api.(*Render).GetShade-fm (4 handlers) +[GIN-debug] GET /api/render/setting --> qnc-server/api.(*Render).GetSetting-fm (4 handlers) +[GIN-debug] POST /api/car/insurance --> qnc-server/api.(*Car).Insurance-fm (5 handlers) +[GIN-debug] POST /api/car/maintenance --> qnc-server/api.(*Car).Maintenance-fm (5 handlers) +[GIN-debug] GET /api/car/get_query --> qnc-server/api.(*Car).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/car/person_car_verify --> qnc-server/api.(*Car).PersonCarVerify-fm (5 handlers) +[GIN-debug] POST /api/car/under_name --> qnc-server/api.(*Car).UnderName-fm (5 handlers) +[GIN-debug] POST /api/car/insurance_info --> qnc-server/api.(*Car).InsuranceInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vin_check_info --> qnc-server/api.(*Car).VinCheckInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_transfer --> qnc-server/api.(*Car).VehicleTransfer-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_valuation --> qnc-server/api.(*Car).VehicleValuation-fm (5 handlers) +[GIN-debug] GET /api/car/get_maintenance_history --> qnc-server/api.(*Car).QueryHistoryList-fm (5 handlers) +[GIN-debug] POST /api/car/callback --> qnc-server/api.(*Car).CarCallback-fm (4 handlers) +[GIN-debug] POST /api/verify/phone --> qnc-server/api.(*Verify).VerifyNamePhone-fm (5 handlers) +[GIN-debug] GET /api/verify/get_query --> qnc-server/api.(*Verify).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/verify/card_no --> qnc-server/api.(*Verify).VerifyNameCard-fm (5 handlers) +[GIN-debug] POST /api/verify/bank_card --> qnc-server/api.(*Verify).VerifyBankCard-fm (5 handlers) +[GIN-debug] POST /api/verify/skill_cert --> qnc-server/api.(*Verify).VerifySkillCert-fm (5 handlers) +[GIN-debug] POST /api/feature/ocr_name --> qnc-server/api.(*Feature).OcrName-fm (5 handlers) +[GIN-debug] POST /api/feature/verify_elements --> qnc-server/api.(*Feature).VerifyElements-fm (5 handlers) +2024/11/30 21:14:33 HTTP server listening on http://127.0.0.1:14500 +[GIN-debug] [WARNING] You trusted all proxies, this is NOT safe. We recommend you to set a value. +Please check https://pkg.go.dev/github.com/gin-gonic/gin#readme-don-t-trust-all-proxies for details. +[GIN-debug] Listening and serving HTTP on :14500 +2024/11/30 21:14:40 Start: 2024-11-30T21:14:40+08:00, Method: GET, URL: /api/render/get_notification, GET params: map[] +2024/11/30 21:14:40 End: 2024-11-30T21:14:40+08:00, Method: GET, URL: /api/render/get_notification, Status: 200, Latency: 2.0985ms +[GIN] 2024/11/30 - 21:14:40 | 200 | 2.0985ms | 127.0.0.1 | GET "/api/render/get_notification" +2024/11/30 21:14:40 Start: 2024-11-30T21:14:40+08:00, Method: GET, URL: /api/render/setting, GET params: map[] +2024/11/30 21:14:40 End: 2024-11-30T21:14:40+08:00, Method: GET, URL: /api/render/setting, Status: 200, Latency: 0s +[GIN] 2024/11/30 - 21:14:40 | 200 | 0s | 127.0.0.1 | GET "/api/render/setting" +2024/11/30 21:14:40 Start: 2024-11-30T21:14:40+08:00, Method: GET, URL: /api/render/get_index, GET params: map[] +2024/11/30 21:14:40 End: 2024-11-30T21:14:40+08:00, Method: GET, URL: /api/render/get_index, Status: 200, Latency: 1.177ms +[GIN] 2024/11/30 - 21:14:40 | 200 | 1.177ms | 127.0.0.1 | GET "/api/render/get_index" +2024/11/30 21:14:40 Start: 2024-11-30T21:14:40+08:00, Method: POST, URL: /api/user/tydata_login, GET params: map[] +2024/11/30 21:14:41 注册用户错误:Error 1265 (01000): Data truncated for column 'auth_type' at row 1 +2024/11/30 21:14:41 End: 2024-11-30T21:14:41+08:00, Method: POST, URL: /api/user/tydata_login, Status: 200, Latency: 409.7057ms +[GIN] 2024/11/30 - 21:14:41 | 200 | 409.7057ms | 127.0.0.1 | POST "/api/user/tydata_login" +2024/11/30 21:19:26 Start: 2024-11-30T21:19:26+08:00, Method: GET, URL: /api/render/get_notification, GET params: map[] +2024/11/30 21:19:26 End: 2024-11-30T21:19:26+08:00, Method: GET, URL: /api/render/get_notification, Status: 200, Latency: 676.6µs +[GIN] 2024/11/30 - 21:19:26 | 200 | 676.6µs | 127.0.0.1 | GET "/api/render/get_notification" +2024/11/30 21:19:26 Start: 2024-11-30T21:19:26+08:00, Method: GET, URL: /api/render/setting, GET params: map[] +2024/11/30 21:19:26 End: 2024-11-30T21:19:26+08:00, Method: GET, URL: /api/render/setting, Status: 200, Latency: 0s +[GIN] 2024/11/30 - 21:19:26 | 200 | 1.9994ms | 127.0.0.1 | GET "/api/render/setting" +2024/11/30 21:19:26 Start: 2024-11-30T21:19:26+08:00, Method: GET, URL: /api/render/get_index, GET params: map[] +2024/11/30 21:19:26 End: 2024-11-30T21:19:26+08:00, Method: GET, URL: /api/render/get_index, Status: 200, Latency: 1.104ms +[GIN] 2024/11/30 - 21:19:26 | 200 | 1.9452ms | 127.0.0.1 | GET "/api/render/get_index" +2024/11/30 21:19:27 Start: 2024-11-30T21:19:27+08:00, Method: POST, URL: /api/user/tydata_login, GET params: map[] +2024/11/30 21:19:27 End: 2024-11-30T21:19:27+08:00, Method: POST, URL: /api/user/tydata_login, Status: 200, Latency: 428.4002ms +[GIN] 2024/11/30 - 21:19:27 | 200 | 428.4002ms | 127.0.0.1 | POST "/api/user/tydata_login" +2024/11/30 21:19:39 Start: 2024-11-30T21:19:39+08:00, Method: GET, URL: /api/product/product_notes?product_name=evaluateMarriage, GET params: map[product_name:[evaluateMarriage]] +2024/11/30 21:19:39 End: 2024-11-30T21:19:39+08:00, Method: GET, URL: /api/product/product_notes?product_name=evaluateMarriage, Status: 200, Latency: 1.3296ms +[GIN] 2024/11/30 - 21:19:39 | 200 | 1.3296ms | 127.0.0.1 | GET "/api/product/product_notes?product_name=evaluateMarriage" +2024/11/30 21:20:25 Start: 2024-11-30T21:20:25+08:00, Method: GET, URL: /api/render/get_notification, GET params: map[] +2024/11/30 21:20:25 End: 2024-11-30T21:20:25+08:00, Method: GET, URL: /api/render/get_notification, Status: 200, Latency: 615.5µs +[GIN] 2024/11/30 - 21:20:25 | 200 | 615.5µs | 127.0.0.1 | GET "/api/render/get_notification" +2024/11/30 21:20:25 Start: 2024-11-30T21:20:25+08:00, Method: GET, URL: /api/render/setting, GET params: map[] +2024/11/30 21:20:25 End: 2024-11-30T21:20:25+08:00, Method: GET, URL: /api/render/setting, Status: 200, Latency: 0s +[GIN] 2024/11/30 - 21:20:25 | 200 | 0s | 127.0.0.1 | GET "/api/render/setting" +2024/11/30 21:20:26 Start: 2024-11-30T21:20:26+08:00, Method: GET, URL: /api/render/get_index, GET params: map[] +2024/11/30 21:20:26 End: 2024-11-30T21:20:26+08:00, Method: GET, URL: /api/render/get_index, Status: 200, Latency: 507.6µs +[GIN] 2024/11/30 - 21:20:26 | 200 | 507.6µs | 127.0.0.1 | GET "/api/render/get_index" +2024/11/30 21:20:26 Start: 2024-11-30T21:20:26+08:00, Method: POST, URL: /api/user/tydata_login, GET params: map[] +2024/11/30 21:20:26 End: 2024-11-30T21:20:26+08:00, Method: POST, URL: /api/user/tydata_login, Status: 200, Latency: 205.5591ms +[GIN] 2024/11/30 - 21:20:26 | 200 | 205.5591ms | 127.0.0.1 | POST "/api/user/tydata_login" +2024/11/30 21:21:12 Start: 2024-11-30T21:21:12+08:00, Method: GET, URL: /api/render/setting, GET params: map[] +2024/11/30 21:21:12 End: 2024-11-30T21:21:12+08:00, Method: GET, URL: /api/render/setting, Status: 200, Latency: 0s +[GIN] 2024/11/30 - 21:21:12 | 200 | 0s | 127.0.0.1 | GET "/api/render/setting" +2024/11/30 21:21:12 Start: 2024-11-30T21:21:12+08:00, Method: GET, URL: /api/render/get_notification, GET params: map[] +2024/11/30 21:21:13 Start: 2024-11-30T21:21:13+08:00, Method: GET, URL: /api/render/get_index, GET params: map[] +2024/11/30 21:21:13 End: 2024-11-30T21:21:13+08:00, Method: GET, URL: /api/render/get_notification, Status: 200, Latency: 157.0481ms +[GIN] 2024/11/30 - 21:21:13 | 200 | 157.0481ms | 127.0.0.1 | GET "/api/render/get_notification" +2024/11/30 21:21:13 End: 2024-11-30T21:21:13+08:00, Method: GET, URL: /api/render/get_index, Status: 200, Latency: 45.7819ms +[GIN] 2024/11/30 - 21:21:13 | 200 | 45.7819ms | 127.0.0.1 | GET "/api/render/get_index" +2024/11/30 21:21:13 Start: 2024-11-30T21:21:13+08:00, Method: POST, URL: /api/user/tydata_login, GET params: map[] +2024/11/30 21:21:13 End: 2024-11-30T21:21:13+08:00, Method: POST, URL: /api/user/tydata_login, Status: 200, Latency: 210.0637ms +[GIN] 2024/11/30 - 21:21:13 | 200 | 210.0637ms | 127.0.0.1 | POST "/api/user/tydata_login" +2024/11/30 21:21:17 Start: 2024-11-30T21:21:17+08:00, Method: GET, URL: /api/render/get_notification, GET params: map[] +2024/11/30 21:21:17 End: 2024-11-30T21:21:17+08:00, Method: GET, URL: /api/render/get_notification, Status: 200, Latency: 1.6215ms +[GIN] 2024/11/30 - 21:21:17 | 200 | 1.6215ms | 127.0.0.1 | GET "/api/render/get_notification" +2024/11/30 21:21:17 Start: 2024-11-30T21:21:17+08:00, Method: GET, URL: /api/render/setting, GET params: map[] +2024/11/30 21:21:17 End: 2024-11-30T21:21:17+08:00, Method: GET, URL: /api/render/setting, Status: 200, Latency: 510.1µs +[GIN] 2024/11/30 - 21:21:17 | 200 | 510.1µs | 127.0.0.1 | GET "/api/render/setting" +2024/11/30 21:21:17 Start: 2024-11-30T21:21:17+08:00, Method: GET, URL: /api/render/get_index, GET params: map[] +2024/11/30 21:21:17 End: 2024-11-30T21:21:17+08:00, Method: GET, URL: /api/render/get_index, Status: 200, Latency: 1.0613ms +[GIN] 2024/11/30 - 21:21:17 | 200 | 1.0613ms | 127.0.0.1 | GET "/api/render/get_index" +2024/11/30 21:21:17 Start: 2024-11-30T21:21:17+08:00, Method: POST, URL: /api/user/tydata_login, GET params: map[] +2024/11/30 21:21:18 End: 2024-11-30T21:21:18+08:00, Method: POST, URL: /api/user/tydata_login, Status: 200, Latency: 182.181ms +[GIN] 2024/11/30 - 21:21:18 | 200 | 182.181ms | 127.0.0.1 | POST "/api/user/tydata_login" +2024/11/30 21:21:35 Start: 2024-11-30T21:21:35+08:00, Method: GET, URL: /api/render/get_notification, GET params: map[] +2024/11/30 21:21:35 End: 2024-11-30T21:21:35+08:00, Method: GET, URL: /api/render/get_notification, Status: 200, Latency: 506.2µs +[GIN] 2024/11/30 - 21:21:35 | 200 | 506.2µs | 127.0.0.1 | GET "/api/render/get_notification" +2024/11/30 21:21:35 Start: 2024-11-30T21:21:35+08:00, Method: GET, URL: /api/render/setting, GET params: map[] +2024/11/30 21:21:35 End: 2024-11-30T21:21:35+08:00, Method: GET, URL: /api/render/setting, Status: 200, Latency: 0s +[GIN] 2024/11/30 - 21:21:35 | 200 | 0s | 127.0.0.1 | GET "/api/render/setting" +2024/11/30 21:21:35 Start: 2024-11-30T21:21:35+08:00, Method: GET, URL: /api/render/get_index, GET params: map[] +2024/11/30 21:21:35 End: 2024-11-30T21:21:35+08:00, Method: GET, URL: /api/render/get_index, Status: 200, Latency: 505.6µs +[GIN] 2024/11/30 - 21:21:35 | 200 | 505.6µs | 127.0.0.1 | GET "/api/render/get_index" +2024/11/30 21:21:35 Start: 2024-11-30T21:21:35+08:00, Method: POST, URL: /api/user/tydata_login, GET params: map[] +2024/11/30 21:21:36 End: 2024-11-30T21:21:36+08:00, Method: POST, URL: /api/user/tydata_login, Status: 200, Latency: 206.4999ms +[GIN] 2024/11/30 - 21:21:36 | 200 | 207.0041ms | 127.0.0.1 | POST "/api/user/tydata_login" +2024/11/30 21:21:49 Start: 2024-11-30T21:21:49+08:00, Method: GET, URL: /api/render/get_notification, GET params: map[] +2024/11/30 21:21:49 End: 2024-11-30T21:21:49+08:00, Method: GET, URL: /api/render/get_notification, Status: 200, Latency: 594.1µs +[GIN] 2024/11/30 - 21:21:49 | 200 | 594.1µs | 127.0.0.1 | GET "/api/render/get_notification" +2024/11/30 21:21:49 Start: 2024-11-30T21:21:49+08:00, Method: GET, URL: /api/render/setting, GET params: map[] +2024/11/30 21:21:49 End: 2024-11-30T21:21:49+08:00, Method: GET, URL: /api/render/setting, Status: 200, Latency: 0s +[GIN] 2024/11/30 - 21:21:49 | 200 | 0s | 127.0.0.1 | GET "/api/render/setting" +2024/11/30 21:21:49 Start: 2024-11-30T21:21:49+08:00, Method: GET, URL: /api/render/get_index, GET params: map[] +2024/11/30 21:21:49 End: 2024-11-30T21:21:49+08:00, Method: GET, URL: /api/render/get_index, Status: 200, Latency: 504.8µs +[GIN] 2024/11/30 - 21:21:49 | 200 | 504.8µs | 127.0.0.1 | GET "/api/render/get_index" +2024/11/30 21:21:50 Start: 2024-11-30T21:21:50+08:00, Method: POST, URL: /api/user/tydata_login, GET params: map[] +2024/11/30 21:21:50 End: 2024-11-30T21:21:50+08:00, Method: POST, URL: /api/user/tydata_login, Status: 200, Latency: 200.5446ms +[GIN] 2024/11/30 - 21:21:50 | 200 | 200.5446ms | 127.0.0.1 | POST "/api/user/tydata_login" +2024/11/30 21:22:43 Start: 2024-11-30T21:22:43+08:00, Method: GET, URL: /api/render/get_notification, GET params: map[] +2024/11/30 21:22:43 End: 2024-11-30T21:22:43+08:00, Method: GET, URL: /api/render/get_notification, Status: 200, Latency: 794.5µs +[GIN] 2024/11/30 - 21:22:43 | 200 | 794.5µs | 127.0.0.1 | GET "/api/render/get_notification" +2024/11/30 21:22:43 Start: 2024-11-30T21:22:43+08:00, Method: GET, URL: /api/render/setting, GET params: map[] +2024/11/30 21:22:43 End: 2024-11-30T21:22:43+08:00, Method: GET, URL: /api/render/setting, Status: 200, Latency: 0s +[GIN] 2024/11/30 - 21:22:43 | 200 | 0s | 127.0.0.1 | GET "/api/render/setting" +2024/11/30 21:22:43 Start: 2024-11-30T21:22:43+08:00, Method: GET, URL: /api/render/get_index, GET params: map[] +2024/11/30 21:22:43 End: 2024-11-30T21:22:43+08:00, Method: GET, URL: /api/render/get_index, Status: 200, Latency: 510µs +[GIN] 2024/11/30 - 21:22:43 | 200 | 510µs | 127.0.0.1 | GET "/api/render/get_index" +2024/11/30 21:22:44 Start: 2024-11-30T21:22:44+08:00, Method: POST, URL: /api/user/tydata_login, GET params: map[] +2024/11/30 21:22:44 End: 2024-11-30T21:22:44+08:00, Method: POST, URL: /api/user/tydata_login, Status: 200, Latency: 215.4208ms +[GIN] 2024/11/30 - 21:22:44 | 200 | 215.4208ms | 127.0.0.1 | POST "/api/user/tydata_login" +2024/11/30 21:22:51 Start: 2024-11-30T21:22:51+08:00, Method: GET, URL: /api/pay/order_list?page_num=1, GET params: map[page_num:[1]] +2024/11/30 21:22:51 End: 2024-11-30T21:22:51+08:00, Method: GET, URL: /api/pay/order_list?page_num=1, Status: 200, Latency: 1.3744ms +[GIN] 2024/11/30 - 21:22:51 | 200 | 1.3744ms | 127.0.0.1 | GET "/api/pay/order_list?page_num=1" +2024/11/30 21:22:57 Start: 2024-11-30T21:22:57+08:00, Method: GET, URL: /api/product/product_notes?product_name=evaluateMarriage, GET params: map[product_name:[evaluateMarriage]] +2024/11/30 21:22:57 End: 2024-11-30T21:22:57+08:00, Method: GET, URL: /api/product/product_notes?product_name=evaluateMarriage, Status: 200, Latency: 710.1µs +[GIN] 2024/11/30 - 21:22:57 | 200 | 710.1µs | 127.0.0.1 | GET "/api/product/product_notes?product_name=evaluateMarriage" +2024/11/30 21:23:16 Start: 2024-11-30T21:23:16+08:00, Method: GET, URL: /api/render/get_verify_index, GET params: map[] +2024/11/30 21:23:16 End: 2024-11-30T21:23:16+08:00, Method: GET, URL: /api/render/get_verify_index, Status: 200, Latency: 973.7µs +[GIN] 2024/11/30 - 21:23:16 | 200 | 973.7µs | 127.0.0.1 | GET "/api/render/get_verify_index" +2024/11/30 21:23:16 Start: 2024-11-30T21:23:16+08:00, Method: GET, URL: /api/product/product_notes?product_name=verify, GET params: map[product_name:[verify]] +2024/11/30 21:23:16 End: 2024-11-30T21:23:16+08:00, Method: GET, URL: /api/product/product_notes?product_name=verify, Status: 200, Latency: 1.1425ms +[GIN] 2024/11/30 - 21:23:16 | 200 | 1.1425ms | 127.0.0.1 | GET "/api/product/product_notes?product_name=verify" +2024/11/30 21:23:17 Start: 2024-11-30T21:23:17+08:00, Method: GET, URL: /api/product/product_notes?product_name=shoujiheyan, GET params: map[product_name:[shoujiheyan]] +2024/11/30 21:23:17 End: 2024-11-30T21:23:17+08:00, Method: GET, URL: /api/product/product_notes?product_name=shoujiheyan, Status: 200, Latency: 566.3µs +[GIN] 2024/11/30 - 21:23:17 | 200 | 566.3µs | 127.0.0.1 | GET "/api/product/product_notes?product_name=shoujiheyan" +2024/11/30 21:23:22 Start: 2024-11-30T21:23:22+08:00, Method: GET, URL: /api/pay/order_list?page_num=1, GET params: map[page_num:[1]] +2024/11/30 21:23:22 End: 2024-11-30T21:23:22+08:00, Method: GET, URL: /api/pay/order_list?page_num=1, Status: 200, Latency: 739.2µs +[GIN] 2024/11/30 - 21:23:22 | 200 | 739.2µs | 127.0.0.1 | GET "/api/pay/order_list?page_num=1" +2024/11/30 21:23:25 Start: 2024-11-30T21:23:25+08:00, Method: GET, URL: /api/product/product_notes?product_name=evaluateMarriage, GET params: map[product_name:[evaluateMarriage]] +2024/11/30 21:23:25 End: 2024-11-30T21:23:25+08:00, Method: GET, URL: /api/product/product_notes?product_name=evaluateMarriage, Status: 200, Latency: 1.0882ms +[GIN] 2024/11/30 - 21:23:25 | 200 | 1.0882ms | 127.0.0.1 | GET "/api/product/product_notes?product_name=evaluateMarriage" +2024/11/30 21:41:33 Start: 2024-11-30T21:41:33+08:00, Method: GET, URL: /api/render/get_notification, GET params: map[] +2024/11/30 21:41:33 End: 2024-11-30T21:41:33+08:00, Method: GET, URL: /api/render/get_notification, Status: 200, Latency: 893.8µs +[GIN] 2024/11/30 - 21:41:33 | 200 | 893.8µs | 127.0.0.1 | GET "/api/render/get_notification" +2024/11/30 21:41:33 Start: 2024-11-30T21:41:33+08:00, Method: GET, URL: /api/render/setting, GET params: map[] +2024/11/30 21:41:33 End: 2024-11-30T21:41:33+08:00, Method: GET, URL: /api/render/setting, Status: 200, Latency: 0s +[GIN] 2024/11/30 - 21:41:33 | 200 | 0s | 127.0.0.1 | GET "/api/render/setting" +2024/11/30 21:41:33 Start: 2024-11-30T21:41:33+08:00, Method: GET, URL: /api/render/get_index, GET params: map[] +2024/11/30 21:41:33 End: 2024-11-30T21:41:33+08:00, Method: GET, URL: /api/render/get_index, Status: 200, Latency: 503.7µs +[GIN] 2024/11/30 - 21:41:33 | 200 | 503.7µs | 127.0.0.1 | GET "/api/render/get_index" +2024/11/30 21:41:33 Start: 2024-11-30T21:41:33+08:00, Method: POST, URL: /api/user/tydata_login, GET params: map[] +2024/11/30 21:41:34 End: 2024-11-30T21:41:34+08:00, Method: POST, URL: /api/user/tydata_login, Status: 200, Latency: 341.4379ms +[GIN] 2024/11/30 - 21:41:34 | 200 | 341.4379ms | 127.0.0.1 | POST "/api/user/tydata_login" +2024/11/30 21:41:41 Start: 2024-11-30T21:41:41+08:00, Method: GET, URL: /api/render/get_notification, GET params: map[] +2024/11/30 21:41:41 End: 2024-11-30T21:41:41+08:00, Method: GET, URL: /api/render/get_notification, Status: 200, Latency: 522.7µs +[GIN] 2024/11/30 - 21:41:41 | 200 | 522.7µs | 127.0.0.1 | GET "/api/render/get_notification" +2024/11/30 21:41:41 Start: 2024-11-30T21:41:41+08:00, Method: GET, URL: /api/render/setting, GET params: map[] +2024/11/30 21:41:41 End: 2024-11-30T21:41:41+08:00, Method: GET, URL: /api/render/setting, Status: 200, Latency: 0s +[GIN] 2024/11/30 - 21:41:41 | 200 | 0s | 127.0.0.1 | GET "/api/render/setting" +2024/11/30 21:41:41 Start: 2024-11-30T21:41:41+08:00, Method: GET, URL: /api/render/get_index, GET params: map[] +2024/11/30 21:41:41 End: 2024-11-30T21:41:41+08:00, Method: GET, URL: /api/render/get_index, Status: 200, Latency: 786.8µs +[GIN] 2024/11/30 - 21:41:41 | 200 | 786.8µs | 127.0.0.1 | GET "/api/render/get_index" +2024/11/30 21:41:42 Start: 2024-11-30T21:41:42+08:00, Method: POST, URL: /api/user/tydata_login, GET params: map[] +2024/11/30 21:41:42 End: 2024-11-30T21:41:42+08:00, Method: POST, URL: /api/user/tydata_login, Status: 200, Latency: 208.6719ms +[GIN] 2024/11/30 - 21:41:42 | 200 | 208.6719ms | 127.0.0.1 | POST "/api/user/tydata_login" +2024/11/30 21:41:45 Start: 2024-11-30T21:41:45+08:00, Method: GET, URL: /api/render/get_notification, GET params: map[] +2024/11/30 21:41:45 End: 2024-11-30T21:41:45+08:00, Method: GET, URL: /api/render/get_notification, Status: 200, Latency: 1.0299ms +[GIN] 2024/11/30 - 21:41:45 | 200 | 1.0299ms | 127.0.0.1 | GET "/api/render/get_notification" +2024/11/30 21:41:45 Start: 2024-11-30T21:41:45+08:00, Method: GET, URL: /api/render/setting, GET params: map[] +2024/11/30 21:41:45 End: 2024-11-30T21:41:45+08:00, Method: GET, URL: /api/render/setting, Status: 200, Latency: 0s +[GIN] 2024/11/30 - 21:41:45 | 200 | 0s | 127.0.0.1 | GET "/api/render/setting" +2024/11/30 21:41:45 Start: 2024-11-30T21:41:45+08:00, Method: GET, URL: /api/render/get_index, GET params: map[] +2024/11/30 21:41:45 End: 2024-11-30T21:41:45+08:00, Method: GET, URL: /api/render/get_index, Status: 200, Latency: 643.6µs +[GIN] 2024/11/30 - 21:41:45 | 200 | 643.6µs | 127.0.0.1 | GET "/api/render/get_index" +2024/11/30 21:41:45 Start: 2024-11-30T21:41:45+08:00, Method: POST, URL: /api/user/tydata_login, GET params: map[] +2024/11/30 21:41:45 End: 2024-11-30T21:41:45+08:00, Method: POST, URL: /api/user/tydata_login, Status: 200, Latency: 226.0456ms +[GIN] 2024/11/30 - 21:41:45 | 200 | 226.0456ms | 127.0.0.1 | POST "/api/user/tydata_login" +2024/11/30 21:41:54 Start: 2024-11-30T21:41:54+08:00, Method: GET, URL: /api/product/product_notes?product_name=evaluateMarriage, GET params: map[product_name:[evaluateMarriage]] +2024/11/30 21:41:54 End: 2024-11-30T21:41:54+08:00, Method: GET, URL: /api/product/product_notes?product_name=evaluateMarriage, Status: 200, Latency: 637µs +[GIN] 2024/11/30 - 21:41:54 | 200 | 1.1429ms | 127.0.0.1 | GET "/api/product/product_notes?product_name=evaluateMarriage" +2024/11/30 21:41:56 Start: 2024-11-30T21:41:56+08:00, Method: GET, URL: /api/product/product_notes?product_name=justiceLawsuit, GET params: map[product_name:[justiceLawsuit]] +2024/11/30 21:41:56 End: 2024-11-30T21:41:56+08:00, Method: GET, URL: /api/product/product_notes?product_name=justiceLawsuit, Status: 200, Latency: 1.0984ms +[GIN] 2024/11/30 - 21:41:56 | 200 | 1.0984ms | 127.0.0.1 | GET "/api/product/product_notes?product_name=justiceLawsuit" +2024/11/30 21:41:58 Start: 2024-11-30T21:41:58+08:00, Method: GET, URL: /api/render/get_car_index, GET params: map[] +2024/11/30 21:41:58 Start: 2024-11-30T21:41:58+08:00, Method: GET, URL: /api/product/product_notes?product_name=car, GET params: map[product_name:[car]] +2024/11/30 21:41:58 End: 2024-11-30T21:41:58+08:00, Method: GET, URL: /api/product/product_notes?product_name=car, Status: 200, Latency: 755µs +[GIN] 2024/11/30 - 21:41:58 | 200 | 755µs | 127.0.0.1 | GET "/api/product/product_notes?product_name=car" +2024/11/30 21:41:58 End: 2024-11-30T21:41:58+08:00, Method: GET, URL: /api/render/get_car_index, Status: 200, Latency: 755µs +[GIN] 2024/11/30 - 21:41:58 | 200 | 755µs | 127.0.0.1 | GET "/api/render/get_car_index" +2024/11/30 21:42:01 Start: 2024-11-30T21:42:01+08:00, Method: GET, URL: /api/render/get_verify_index, GET params: map[] +2024/11/30 21:42:01 Start: 2024-11-30T21:42:01+08:00, Method: GET, URL: /api/product/product_notes?product_name=verify, GET params: map[product_name:[verify]] +2024/11/30 21:42:01 End: 2024-11-30T21:42:01+08:00, Method: GET, URL: /api/render/get_verify_index, Status: 200, Latency: 565.7µs +[GIN] 2024/11/30 - 21:42:01 | 200 | 565.7µs | 127.0.0.1 | GET "/api/render/get_verify_index" +2024/11/30 21:42:01 End: 2024-11-30T21:42:01+08:00, Method: GET, URL: /api/product/product_notes?product_name=verify, Status: 200, Latency: 1.0697ms +[GIN] 2024/11/30 - 21:42:01 | 200 | 1.0697ms | 127.0.0.1 | GET "/api/product/product_notes?product_name=verify" +2024/11/30 21:44:17 Start: 2024-11-30T21:44:17+08:00, Method: GET, URL: /api/render/get_index, GET params: map[] +2024/11/30 21:44:17 End: 2024-11-30T21:44:17+08:00, Method: GET, URL: /api/render/get_index, Status: 200, Latency: 5.2759ms +[GIN] 2024/11/30 - 21:44:17 | 200 | 5.2759ms | 127.0.0.1 | GET "/api/render/get_index" diff --git a/logs/2024-12/2024-12-01 b/logs/2024-12/2024-12-01 new file mode 100644 index 0000000..e354f21 --- /dev/null +++ b/logs/2024-12/2024-12-01 @@ -0,0 +1,193 @@ +[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production. + - using env: export GIN_MODE=release + - using code: gin.SetMode(gin.ReleaseMode) + +[GIN-debug] Loaded HTML Templates (2): + - + - refund.html + +[GIN-debug] GET /api/user/test --> qnc-server/api.(*User).Test-fm (4 handlers) +[GIN-debug] POST /api/user/log --> qnc-server/api.(*User).Log-fm (4 handlers) +[GIN-debug] POST /api/user/login --> qnc-server/api.(*User).Login-fm (4 handlers) +[GIN-debug] POST /api/user/tydata_login --> qnc-server/api.(*User).TyDataLogin-fm (4 handlers) +[GIN-debug] POST /api/user/h5_login --> qnc-server/api.(*User).H5Login-fm (4 handlers) +[GIN-debug] POST /api/user/phone_login --> qnc-server/api.(*User).PhoneLogin-fm (4 handlers) +[GIN-debug] POST /api/user/verify --> qnc-server/api.(*User).GetVerify-fm (4 handlers) +[GIN-debug] GET /api/user/get_config --> qnc-server/api.(*User).GetSDKConfig-fm (4 handlers) +[GIN-debug] POST /api/single/bc_evaluate_marriage --> qnc-server/api.(*SingleQuery).EvaluateMarriageQuery-fm (6 handlers) +[GIN-debug] GET /api/single/get_merriage_record --> qnc-server/api.(*SingleQuery).GetMerriageRecord-fm (5 handlers) +[GIN-debug] POST /api/lawsuitQuery/query_v2 --> qnc-server/api.(*LawsuitQuery).queryListV2-fm (5 handlers) +[GIN-debug] GET /api/lawsuitQuery/get_record --> qnc-server/api.(*LawsuitQuery).GetRecord-fm (5 handlers) +[GIN-debug] GET /api/ent/search --> qnc-server/api.(*Ent).search-fm (5 handlers) +[GIN-debug] GET /api/ent/query_details --> qnc-server/api.(*Ent).queryDetails-fm (5 handlers) +[GIN-debug] GET /api/ent/query_feature/:feature --> qnc-server/api.(*Ent).queryFeature-fm (5 handlers) +[GIN-debug] GET /api/ent/query_list_feature/:feature --> qnc-server/api.(*Ent).queryListFeature-fm (5 handlers) +[GIN-debug] POST /api/pay/callback/:platform --> qnc-server/api.(*Pay).Callback-fm (4 handlers) +[GIN-debug] GET /api/pay/refund_details/:id --> qnc-server/api.(*Pay).RefundDetailsHTML-fm (4 handlers) +[GIN-debug] POST /api/pay/refund/:id --> qnc-server/api.(*Pay).Refund-fm (4 handlers) +[GIN-debug] POST /api/pay/refund_callback/:platform --> qnc-server/api.(*Pay).RefundCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/ali_callback --> qnc-server/api.(*Pay).AlipayCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/complaint_callback/:platform --> qnc-server/api.(*Pay).WxPayComplaintCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/prepay --> qnc-server/api.(*Pay).Prepay-fm (5 handlers) +[GIN-debug] GET /api/pay/order_list --> qnc-server/api.(*Pay).GetOrderList-fm (5 handlers) +[GIN-debug] POST /api/pay/ali_prepay --> qnc-server/api.(*Pay).AliPrepay-fm (5 handlers) +[GIN-debug] GET /api/pay/get_query_cache --> qnc-server/api.(*Pay).GetQueryCache-fm (5 handlers) +[GIN-debug] GET /api/product/product_notes --> qnc-server/api.(*Product).GetProductNotes-fm (5 handlers) +[GIN-debug] GET /api/product/product_info --> qnc-server/api.(*Product).GetProductInfo-fm (4 handlers) +[GIN-debug] GET /api/render/get_index --> qnc-server/api.(*Render).GetIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_car_index --> qnc-server/api.(*Render).GetCarIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_verify_index --> qnc-server/api.(*Render).GetVerifyIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_notification --> qnc-server/api.(*Render).GetNotification-fm (4 handlers) +[GIN-debug] GET /api/render/get_shadow --> qnc-server/api.(*Render).GetShade-fm (4 handlers) +[GIN-debug] GET /api/render/setting --> qnc-server/api.(*Render).GetSetting-fm (4 handlers) +[GIN-debug] POST /api/car/insurance --> qnc-server/api.(*Car).Insurance-fm (5 handlers) +[GIN-debug] POST /api/car/maintenance --> qnc-server/api.(*Car).Maintenance-fm (5 handlers) +[GIN-debug] GET /api/car/get_query --> qnc-server/api.(*Car).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/car/person_car_verify --> qnc-server/api.(*Car).PersonCarVerify-fm (5 handlers) +[GIN-debug] POST /api/car/under_name --> qnc-server/api.(*Car).UnderName-fm (5 handlers) +[GIN-debug] POST /api/car/insurance_info --> qnc-server/api.(*Car).InsuranceInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vin_check_info --> qnc-server/api.(*Car).VinCheckInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_transfer --> qnc-server/api.(*Car).VehicleTransfer-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_valuation --> qnc-server/api.(*Car).VehicleValuation-fm (5 handlers) +[GIN-debug] GET /api/car/get_maintenance_history --> qnc-server/api.(*Car).QueryHistoryList-fm (5 handlers) +[GIN-debug] POST /api/car/callback --> qnc-server/api.(*Car).CarCallback-fm (4 handlers) +[GIN-debug] POST /api/verify/phone --> qnc-server/api.(*Verify).VerifyNamePhone-fm (5 handlers) +[GIN-debug] GET /api/verify/get_query --> qnc-server/api.(*Verify).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/verify/card_no --> qnc-server/api.(*Verify).VerifyNameCard-fm (5 handlers) +[GIN-debug] POST /api/verify/bank_card --> qnc-server/api.(*Verify).VerifyBankCard-fm (5 handlers) +[GIN-debug] POST /api/verify/skill_cert --> qnc-server/api.(*Verify).VerifySkillCert-fm (5 handlers) +[GIN-debug] POST /api/feature/ocr_name --> qnc-server/api.(*Feature).OcrName-fm (5 handlers) +[GIN-debug] POST /api/feature/verify_elements --> qnc-server/api.(*Feature).VerifyElements-fm (5 handlers) +2024/12/01 16:37:54 HTTP server listening on http://127.0.0.1:14500 +[GIN-debug] [WARNING] You trusted all proxies, this is NOT safe. We recommend you to set a value. +Please check https://pkg.go.dev/github.com/gin-gonic/gin#readme-don-t-trust-all-proxies for details. +[GIN-debug] Listening and serving HTTP on :14500 +[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production. + - using env: export GIN_MODE=release + - using code: gin.SetMode(gin.ReleaseMode) + +[GIN-debug] Loaded HTML Templates (2): + - + - refund.html + +[GIN-debug] GET /api/user/test --> qnc-server/api.(*User).Test-fm (4 handlers) +[GIN-debug] POST /api/user/log --> qnc-server/api.(*User).Log-fm (4 handlers) +[GIN-debug] POST /api/user/login --> qnc-server/api.(*User).Login-fm (4 handlers) +[GIN-debug] POST /api/user/tydata_login --> qnc-server/api.(*User).TyDataLogin-fm (4 handlers) +[GIN-debug] POST /api/user/h5_login --> qnc-server/api.(*User).H5Login-fm (4 handlers) +[GIN-debug] POST /api/user/phone_login --> qnc-server/api.(*User).PhoneLogin-fm (4 handlers) +[GIN-debug] POST /api/user/verify --> qnc-server/api.(*User).GetVerify-fm (4 handlers) +[GIN-debug] GET /api/user/get_config --> qnc-server/api.(*User).GetSDKConfig-fm (4 handlers) +[GIN-debug] POST /api/single/bc_evaluate_marriage --> qnc-server/api.(*SingleQuery).EvaluateMarriageQuery-fm (6 handlers) +[GIN-debug] GET /api/single/get_merriage_record --> qnc-server/api.(*SingleQuery).GetMerriageRecord-fm (5 handlers) +[GIN-debug] POST /api/lawsuitQuery/query_v2 --> qnc-server/api.(*LawsuitQuery).queryListV2-fm (5 handlers) +[GIN-debug] GET /api/lawsuitQuery/get_record --> qnc-server/api.(*LawsuitQuery).GetRecord-fm (5 handlers) +[GIN-debug] GET /api/ent/search --> qnc-server/api.(*Ent).search-fm (5 handlers) +[GIN-debug] GET /api/ent/query_details --> qnc-server/api.(*Ent).queryDetails-fm (5 handlers) +[GIN-debug] GET /api/ent/query_feature/:feature --> qnc-server/api.(*Ent).queryFeature-fm (5 handlers) +[GIN-debug] GET /api/ent/query_list_feature/:feature --> qnc-server/api.(*Ent).queryListFeature-fm (5 handlers) +[GIN-debug] POST /api/pay/callback/:platform --> qnc-server/api.(*Pay).Callback-fm (4 handlers) +[GIN-debug] GET /api/pay/refund_details/:id --> qnc-server/api.(*Pay).RefundDetailsHTML-fm (4 handlers) +[GIN-debug] POST /api/pay/refund/:id --> qnc-server/api.(*Pay).Refund-fm (4 handlers) +[GIN-debug] POST /api/pay/refund_callback/:platform --> qnc-server/api.(*Pay).RefundCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/ali_callback --> qnc-server/api.(*Pay).AlipayCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/complaint_callback/:platform --> qnc-server/api.(*Pay).WxPayComplaintCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/prepay --> qnc-server/api.(*Pay).Prepay-fm (5 handlers) +[GIN-debug] GET /api/pay/order_list --> qnc-server/api.(*Pay).GetOrderList-fm (5 handlers) +[GIN-debug] POST /api/pay/ali_prepay --> qnc-server/api.(*Pay).AliPrepay-fm (5 handlers) +[GIN-debug] GET /api/pay/get_query_cache --> qnc-server/api.(*Pay).GetQueryCache-fm (5 handlers) +[GIN-debug] GET /api/product/product_notes --> qnc-server/api.(*Product).GetProductNotes-fm (5 handlers) +[GIN-debug] GET /api/product/product_info --> qnc-server/api.(*Product).GetProductInfo-fm (4 handlers) +[GIN-debug] GET /api/render/get_index --> qnc-server/api.(*Render).GetIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_car_index --> qnc-server/api.(*Render).GetCarIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_verify_index --> qnc-server/api.(*Render).GetVerifyIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_notification --> qnc-server/api.(*Render).GetNotification-fm (4 handlers) +[GIN-debug] GET /api/render/get_shadow --> qnc-server/api.(*Render).GetShade-fm (4 handlers) +[GIN-debug] GET /api/render/setting --> qnc-server/api.(*Render).GetSetting-fm (4 handlers) +[GIN-debug] POST /api/car/insurance --> qnc-server/api.(*Car).Insurance-fm (5 handlers) +[GIN-debug] POST /api/car/maintenance --> qnc-server/api.(*Car).Maintenance-fm (5 handlers) +[GIN-debug] GET /api/car/get_query --> qnc-server/api.(*Car).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/car/person_car_verify --> qnc-server/api.(*Car).PersonCarVerify-fm (5 handlers) +[GIN-debug] POST /api/car/under_name --> qnc-server/api.(*Car).UnderName-fm (5 handlers) +[GIN-debug] POST /api/car/insurance_info --> qnc-server/api.(*Car).InsuranceInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vin_check_info --> qnc-server/api.(*Car).VinCheckInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_transfer --> qnc-server/api.(*Car).VehicleTransfer-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_valuation --> qnc-server/api.(*Car).VehicleValuation-fm (5 handlers) +[GIN-debug] GET /api/car/get_maintenance_history --> qnc-server/api.(*Car).QueryHistoryList-fm (5 handlers) +[GIN-debug] POST /api/car/callback --> qnc-server/api.(*Car).CarCallback-fm (4 handlers) +[GIN-debug] POST /api/verify/phone --> qnc-server/api.(*Verify).VerifyNamePhone-fm (5 handlers) +[GIN-debug] GET /api/verify/get_query --> qnc-server/api.(*Verify).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/verify/card_no --> qnc-server/api.(*Verify).VerifyNameCard-fm (5 handlers) +[GIN-debug] POST /api/verify/bank_card --> qnc-server/api.(*Verify).VerifyBankCard-fm (5 handlers) +[GIN-debug] POST /api/verify/skill_cert --> qnc-server/api.(*Verify).VerifySkillCert-fm (5 handlers) +[GIN-debug] POST /api/feature/ocr_name --> qnc-server/api.(*Feature).OcrName-fm (5 handlers) +[GIN-debug] POST /api/feature/verify_elements --> qnc-server/api.(*Feature).VerifyElements-fm (5 handlers) +2024/12/01 17:35:36 HTTP server listening on http://127.0.0.1:14500 +[GIN-debug] [WARNING] You trusted all proxies, this is NOT safe. We recommend you to set a value. +Please check https://pkg.go.dev/github.com/gin-gonic/gin#readme-don-t-trust-all-proxies for details. +[GIN-debug] Listening and serving HTTP on :14500 +[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production. + - using env: export GIN_MODE=release + - using code: gin.SetMode(gin.ReleaseMode) + +[GIN-debug] Loaded HTML Templates (2): + - + - refund.html + +[GIN-debug] GET /api/user/test --> qnc-server/api.(*User).Test-fm (4 handlers) +[GIN-debug] POST /api/user/log --> qnc-server/api.(*User).Log-fm (4 handlers) +[GIN-debug] POST /api/user/login --> qnc-server/api.(*User).Login-fm (4 handlers) +[GIN-debug] POST /api/user/tydata_login --> qnc-server/api.(*User).TyDataLogin-fm (4 handlers) +[GIN-debug] POST /api/user/h5_login --> qnc-server/api.(*User).H5Login-fm (4 handlers) +[GIN-debug] POST /api/user/phone_login --> qnc-server/api.(*User).PhoneLogin-fm (4 handlers) +[GIN-debug] POST /api/user/verify --> qnc-server/api.(*User).GetVerify-fm (4 handlers) +[GIN-debug] GET /api/user/get_config --> qnc-server/api.(*User).GetSDKConfig-fm (4 handlers) +[GIN-debug] POST /api/single/bc_evaluate_marriage --> qnc-server/api.(*SingleQuery).EvaluateMarriageQuery-fm (6 handlers) +[GIN-debug] GET /api/single/get_merriage_record --> qnc-server/api.(*SingleQuery).GetMerriageRecord-fm (5 handlers) +[GIN-debug] POST /api/lawsuitQuery/query_v2 --> qnc-server/api.(*LawsuitQuery).queryListV2-fm (5 handlers) +[GIN-debug] GET /api/lawsuitQuery/get_record --> qnc-server/api.(*LawsuitQuery).GetRecord-fm (5 handlers) +[GIN-debug] GET /api/ent/search --> qnc-server/api.(*Ent).search-fm (5 handlers) +[GIN-debug] GET /api/ent/query_details --> qnc-server/api.(*Ent).queryDetails-fm (5 handlers) +[GIN-debug] GET /api/ent/query_feature/:feature --> qnc-server/api.(*Ent).queryFeature-fm (5 handlers) +[GIN-debug] GET /api/ent/query_list_feature/:feature --> qnc-server/api.(*Ent).queryListFeature-fm (5 handlers) +[GIN-debug] POST /api/pay/callback/:platform --> qnc-server/api.(*Pay).Callback-fm (4 handlers) +[GIN-debug] GET /api/pay/refund_details/:id --> qnc-server/api.(*Pay).RefundDetailsHTML-fm (4 handlers) +[GIN-debug] POST /api/pay/refund/:id --> qnc-server/api.(*Pay).Refund-fm (4 handlers) +[GIN-debug] POST /api/pay/refund_callback/:platform --> qnc-server/api.(*Pay).RefundCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/ali_callback --> qnc-server/api.(*Pay).AlipayCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/complaint_callback/:platform --> qnc-server/api.(*Pay).WxPayComplaintCallback-fm (4 handlers) +[GIN-debug] POST /api/pay/prepay --> qnc-server/api.(*Pay).Prepay-fm (5 handlers) +[GIN-debug] GET /api/pay/order_list --> qnc-server/api.(*Pay).GetOrderList-fm (5 handlers) +[GIN-debug] GET /api/pay/promotion_list --> qnc-server/api.(*Pay).GetPromotionList-fm (5 handlers) +[GIN-debug] POST /api/pay/ali_prepay --> qnc-server/api.(*Pay).AliPrepay-fm (5 handlers) +[GIN-debug] GET /api/pay/get_query_cache --> qnc-server/api.(*Pay).GetQueryCache-fm (5 handlers) +[GIN-debug] GET /api/product/product_notes --> qnc-server/api.(*Product).GetProductNotes-fm (5 handlers) +[GIN-debug] GET /api/product/product_info --> qnc-server/api.(*Product).GetProductInfo-fm (4 handlers) +[GIN-debug] GET /api/render/get_index --> qnc-server/api.(*Render).GetIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_car_index --> qnc-server/api.(*Render).GetCarIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_verify_index --> qnc-server/api.(*Render).GetVerifyIndex-fm (4 handlers) +[GIN-debug] GET /api/render/get_notification --> qnc-server/api.(*Render).GetNotification-fm (4 handlers) +[GIN-debug] GET /api/render/get_shadow --> qnc-server/api.(*Render).GetShade-fm (4 handlers) +[GIN-debug] GET /api/render/setting --> qnc-server/api.(*Render).GetSetting-fm (4 handlers) +[GIN-debug] POST /api/car/insurance --> qnc-server/api.(*Car).Insurance-fm (5 handlers) +[GIN-debug] POST /api/car/maintenance --> qnc-server/api.(*Car).Maintenance-fm (5 handlers) +[GIN-debug] GET /api/car/get_query --> qnc-server/api.(*Car).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/car/person_car_verify --> qnc-server/api.(*Car).PersonCarVerify-fm (5 handlers) +[GIN-debug] POST /api/car/under_name --> qnc-server/api.(*Car).UnderName-fm (5 handlers) +[GIN-debug] POST /api/car/insurance_info --> qnc-server/api.(*Car).InsuranceInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vin_check_info --> qnc-server/api.(*Car).VinCheckInfo-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_transfer --> qnc-server/api.(*Car).VehicleTransfer-fm (5 handlers) +[GIN-debug] POST /api/car/vehicle_valuation --> qnc-server/api.(*Car).VehicleValuation-fm (5 handlers) +[GIN-debug] GET /api/car/get_maintenance_history --> qnc-server/api.(*Car).QueryHistoryList-fm (5 handlers) +[GIN-debug] POST /api/car/callback --> qnc-server/api.(*Car).CarCallback-fm (4 handlers) +[GIN-debug] POST /api/verify/phone --> qnc-server/api.(*Verify).VerifyNamePhone-fm (5 handlers) +[GIN-debug] GET /api/verify/get_query --> qnc-server/api.(*Verify).GetQueryRecord-fm (5 handlers) +[GIN-debug] POST /api/verify/card_no --> qnc-server/api.(*Verify).VerifyNameCard-fm (5 handlers) +[GIN-debug] POST /api/verify/bank_card --> qnc-server/api.(*Verify).VerifyBankCard-fm (5 handlers) +[GIN-debug] POST /api/verify/skill_cert --> qnc-server/api.(*Verify).VerifySkillCert-fm (5 handlers) +[GIN-debug] POST /api/feature/ocr_name --> qnc-server/api.(*Feature).OcrName-fm (5 handlers) +[GIN-debug] POST /api/feature/verify_elements --> qnc-server/api.(*Feature).VerifyElements-fm (5 handlers) +2024/12/01 17:54:24 HTTP server listening on http://127.0.0.1:14500 +[GIN-debug] [WARNING] You trusted all proxies, this is NOT safe. We recommend you to set a value. +Please check https://pkg.go.dev/github.com/gin-gonic/gin#readme-don-t-trust-all-proxies for details. +[GIN-debug] Listening and serving HTTP on :14500 diff --git a/model/model/lawsuit.go b/model/model/lawsuit.go index 68bc36a..c03ddc0 100644 --- a/model/model/lawsuit.go +++ b/model/model/lawsuit.go @@ -39,3 +39,14 @@ type LawsuitData struct { type LawsuitResponse struct { Data LawsuitData `json:"data"` } + +type LawsuitPersonResponse struct { + Success bool `json:"success"` + ResultCode string `json:"resultCode"` + Message string `json:"message"` + Data string `json:"data"` +} +type LawsuitPersonData struct { + Msg string `json:"msg"` + Data string `json:"data"` +} diff --git a/model/model/pay.go b/model/model/pay.go index eae0ed5..45b590a 100644 --- a/model/model/pay.go +++ b/model/model/pay.go @@ -14,6 +14,7 @@ type PayOrder struct { Product *Product `gorm:"foreignKey:ProductID"` // 关联的Product Platform string `gorm:"type:varchar(20)" json:"platform"` //支付时的平套 PaymentMethod PaymentMethod `gorm:"type:varchar(20)" json:"payment_method"` // 支付平台 + Promotion string `gorm:"type:varchar(20)" json:"promotion"` } // 支付订单 @@ -46,4 +47,5 @@ const ( PlatformMPWEIXIN = "mp-weixin" PlatformMPH5 = "mp-h5" PlatformH5 = "h5" + PlatformTYDATA = "tydata" ) diff --git a/model/model/singleQuery.go b/model/model/singleQuery.go index 975dbe5..63cd3f2 100644 --- a/model/model/singleQuery.go +++ b/model/model/singleQuery.go @@ -33,8 +33,11 @@ var SingleQueryProdIDs = map[string]string{ } type MerryResponse struct { - Msg string `json:"msg"` - Code int `json:"code"` - Data string `json:"data"` - Success bool `json:"success"` + Code string `json:"code"` + Data []DataEntry `json:"data"` + Message string `json:"message"` +} + +type DataEntry struct { + MaritalStatus string `json:"maritalStatus"` } diff --git a/model/model/user.go b/model/model/user.go index 9c36276..a06da24 100644 --- a/model/model/user.go +++ b/model/model/user.go @@ -9,10 +9,11 @@ import ( // 全能查用户 结构体 User type User struct { BaseModel - Userid uint `json:"userid" form:"userid" gorm:"column:userid;comment:" binding:"required"` //userid - Phone string `json:"phone" form:"phone" gorm:"column:phone;"` - Disable *bool `json:"disable" form:"disable" gorm:"default:false;column:disable;comment:;" binding:"required"` //禁用 - Inside bool `json:"inside" form:"inside" gorm:"column:inside;type:tinyint(1);comment:;default:0"` + Userid uint `json:"userid" form:"userid" gorm:"column:userid;comment:" binding:"required"` //userid + Phone string `json:"phone" form:"phone" gorm:"column:phone;"` + Disable *bool `json:"disable" form:"disable" gorm:"default:false;column:disable;comment:;" binding:"required"` //禁用 + Inside bool `json:"inside" form:"inside" gorm:"column:inside;type:tinyint(1);comment:;default:0"` + Promotion string `json:"promotion" form:"promotion" gorm:"type:varchar(20)"` } // TableName 全能查用户 User自定义表名 user @@ -26,6 +27,7 @@ const ( AUTHTYPE_WECHAT_H5 AuthType = "wechat_h5" AUTHTYPE_WECHAT_MP AuthType = "wechat_mp" AUTHTYPE_PHONE AuthType = "phone" + AUTHTYPE_TYDATA AuthType = "tydata" ) type AuthIdentifier struct { @@ -36,7 +38,7 @@ type AuthIdentifier struct { type Authentication struct { ID uint `gorm:"primaryKey"` UserID uint `gorm:"not null"` - AuthType AuthType `gorm:"type:ENUM('wechat_h5', 'wechat_mp', 'phone');not null"` + AuthType AuthType `gorm:"type:ENUM('wechat_h5', 'wechat_mp', 'phone','tydata');not null"` OpenID string `json:"openid"` UnionID string `json:"unionid"` Phone string `json:"phone"` diff --git a/model/request/pay.go b/model/request/pay.go index 503a165..b82403c 100644 --- a/model/request/pay.go +++ b/model/request/pay.go @@ -3,6 +3,7 @@ package request type PrepayReq struct { ProductName string `json:"product_name" binding:"required"` Platform string `json:"platform" binding:"required"` + Promotion string `json:"promotion"` } type RefundReq struct { ProductName string `json:"product_name" binding:"required"` diff --git a/service/lawsuitQuery.go b/service/lawsuitQuery.go index dd90c13..f96af7a 100644 --- a/service/lawsuitQuery.go +++ b/service/lawsuitQuery.go @@ -278,3 +278,21 @@ func (l *LawsuitQueryService) CheckPayment(userid uint) (payment bool, err error return true, nil } +func (a *LawsuitQueryService) LawsuitDataAnalysis(respString string) (data []map[string]interface{}, err error) { + var resp model.YuShanResponse[[]map[string]interface{}] + err = json.Unmarshal([]byte(respString), &resp) + if err != nil { + log.Printf("Lawsuit Unmarshal error:%v", err) + return nil, utils.ErrSystemError + } + if resp.Retcode == RetCodeSuccess { + data = resp.Retdata + return data, nil + } else if resp.Retcode == RetCodeEmpty { + log.Printf("Lawsuit resp empty:%s", resp.Retmsg) + return data, utils.ErrNoRecord + } else { + log.Printf("Lawsuit resp error:%s", resp.Retmsg) + return data, utils.ErrSystemError + } +} diff --git a/service/order.go b/service/order.go index 3d38a01..e3fbe91 100644 --- a/service/order.go +++ b/service/order.go @@ -52,6 +52,35 @@ func (a *OrderService) GetList(pageSize int, pageNum int, userId uint) (list []m } return list, nil } +func (a *OrderService) GetListByPromotion(pageSize int, pageNum int, promotion string) (list []model.PayOrder, err error) { + offset := (pageNum - 1) * pageSize + result := db.DB.Preload("Product").Where("promotion = ? AND pay_status IN ?", promotion, []string{model.PayStatusSuccess}).Order("id desc").Limit(pageSize).Offset(offset).Find(&list) + if result.Error != nil { + return list, result.Error + } + return list, nil +} +func (a *OrderService) GetSummaryByPromotion(promotion string) (totalCount int64, totalAmount float64, err error) { + var count int64 + var amount float64 + + // 查询总单数 + if err := db.DB.Model(&model.PayOrder{}). + Where("promotion = ? AND pay_status IN ?", promotion, []string{model.PayStatusSuccess}). + Count(&count).Error; err != nil { + return 0, 0, err + } + + // 查询总金额,使用 COALESCE 防止 NULL + if err := db.DB.Model(&model.PayOrder{}). + Where("promotion = ? AND pay_status IN ?", promotion, []string{model.PayStatusSuccess}). + Select("COALESCE(SUM(amount), 0)").Scan(&amount).Error; err != nil { + return 0, 0, err + } + + return count, amount, nil +} + func (a *OrderService) GetOrderByid(id uint) (order *model.PayOrder, err error) { order = &model.PayOrder{} err = db.DB.Preload("Product").Where("id = ?", id).First(order).Error @@ -120,7 +149,7 @@ func (a *OrderService) WeChatRefund(order model.PayOrder) (err error) { switch order.Platform { case model.PlatformMPWEIXIN: client = global.GlobalData.PayClient - case model.PlatformMPH5: + case model.PlatformMPH5, model.PlatformTYDATA: client = global.GlobalData.PayH5Client } outRefundNo := utils.GenerateOrderRefundNumber() diff --git a/service/request.go b/service/request.go index 7379995..3c29f5f 100644 --- a/service/request.go +++ b/service/request.go @@ -202,14 +202,14 @@ func (r *RequestService) WestDexRequest(code string, reqData map[string]interfac return "", err } key := "121a1e41fc1690dd6b90afbcacd80cf4" // 你的AES密钥 - + log.Printf("【西部数据请求】响应数据:%+v", westDexResp) if westDexResp.Code != "00000" { //decryptedData, err := utils.WestDexDecrypt(westDexResp.Data, key) if err != nil { log.Printf("【西部数据请求】响应数据解密错误: %v", err) return "", err } - log.Printf("【西部数据请求】响应数据业务失败:%v", westDexResp.Message) + log.Printf("【西部数据请求】响应数据业务失败:%+v", westDexResp) return "", errors.New("业务失败") } // 解密响应数据 @@ -218,8 +218,7 @@ func (r *RequestService) WestDexRequest(code string, reqData map[string]interfac log.Printf("【西部数据请求】响应数据解密错误: %v", err) return "", err } - // 输出解密后的数据 - log.Printf("【西部数据请求】解密后的响应数据: %s", decryptedData) + log.Printf("【西部数据请求】响应解密后数据:%v", decryptedData) return decryptedData, nil } log.Printf("【西部数据请求】请求失败,状态码: %s", resp.Status) diff --git a/service/singleQuery.go b/service/singleQuery.go index 1fa76c5..d182bcf 100644 --- a/service/singleQuery.go +++ b/service/singleQuery.go @@ -4,8 +4,6 @@ import ( "encoding/base64" "encoding/hex" "encoding/json" - "errors" - "fmt" "log" "qnc-server/config" "qnc-server/db" @@ -114,18 +112,10 @@ func (a *SingleQueryService) MarryDataAnalysis(respString string) (data []map[st func (a *SingleQueryService) MarryAnalysis(jsonStr string) (resp *model.MerryResponse, err error) { err = json.Unmarshal([]byte(jsonStr), &resp) if err != nil { - fmt.Printf("【婚姻结果解析错误】JSON解析错误: %v\n", err) + log.Printf("【婚姻结果解析错误】JSON解析错误: %v\n", err) return } - // 根据状态码分类处理 - switch resp.Code { - case 201, 202, 203: - return resp, nil - case 300: - return nil, utils.ErrNoRecord - default: - return nil, errors.New(resp.Msg) - } + return } func (a *SingleQueryService) QueryEvaluateMarriageOrder(orderID uint) (m model.EvaluateMarriage, err error) { err = db.DB.Where("order_id = ?", orderID).First(&m).Error diff --git a/service/user.go b/service/user.go index beefe31..bcf858d 100644 --- a/service/user.go +++ b/service/user.go @@ -63,6 +63,44 @@ func (UserService *UserService) RequestWx(code string) (wxResponse response.WxLo } return } +func (UserService *UserService) RequestWxTyData(code string) (wxResponse response.WxLoginResp, err error) { + + // 向微信发出登录请求 + baseURL := config.ConfigData.System.WxTyDataLoginUrl + // 创建查询参数 + params := url.Values{} + params.Add("appid", config.ConfigData.System.WxTyDataAppId) + params.Add("secret", config.ConfigData.System.WxTyDataSecret) + params.Add("js_code", code) + params.Add("grant_type", "authorization_code") + + // 构建完整的请求 URL + requestURL := fmt.Sprintf("%s?%s", baseURL, params.Encode()) + + // 发送 GET 请求 + resp, err := http.Get(requestURL) + if err != nil { + return + } + defer resp.Body.Close() + + // 读取响应体 + body, err := io.ReadAll(resp.Body) + if err != nil { + return + } + // 将响应体解析为结构体 + err = json.Unmarshal(body, &wxResponse) + if err != nil { + return + } + + if wxResponse.ErrCode != 0 { + err = errors.New(wxResponse.ErrMsg) + return + } + return +} // Login 全能查 公众号 获取access_token func (UserService *UserService) RequestWxH5(code string) (wxH5Response response.WxH5LoginResp, err error) { diff --git a/service/verify.go b/service/verify.go index 9be7b18..bc0ed2e 100644 --- a/service/verify.go +++ b/service/verify.go @@ -47,6 +47,7 @@ func (c *VerifyService) VerifReqYuShan(prodID string, data *map[string]interface if err != nil { return } + log.Printf("【羽山接口响应返回】 %s error: %s", prodID, err.Error()) //解密 sDec, err := base64.StdEncoding.DecodeString(respStr) if err != nil { diff --git a/test.go b/test.go deleted file mode 100644 index 9a85345..0000000 --- a/test.go +++ /dev/null @@ -1,18 +0,0 @@ -package main - -import ( - "encoding/json" - "fmt" - "qnc-server/model/response" -) - -func main() { - var threeElements = "{\"code\":\"1003\",\"data\":{\"msg\":\"姓名、证件号均与手机号实名信息不一致\",\"phoneType\":\"CTCC\",\"code\":1003,\"encryptType\":\"MD5\"}}" - var data response.Wrapper[response.ThreeElementsResponse] - err := json.Unmarshal([]byte(threeElements), &data) - if err != nil { - fmt.Printf("响应解析失败:%v", err) - return - } - fmt.Println(data) -} diff --git a/test/test.go b/test/test.go new file mode 100644 index 0000000..28a0817 --- /dev/null +++ b/test/test.go @@ -0,0 +1,23 @@ +package main + +import ( + "fmt" + "qnc-server/utils" +) + +func main() { + //var threeElements = "{\"code\":\"1003\",\"data\":{\"msg\":\"姓名、证件号均与手机号实名信息不一致\",\"phoneType\":\"CTCC\",\"code\":1003,\"encryptType\":\"MD5\"}}" + //var data response.Wrapper[response.ThreeElementsResponse] + //err := json.Unmarshal([]byte(threeElements), &data) + //if err != nil { + // fmt.Printf("响应解析失败:%v", err) + // return + //} + data := "HUKcu+0+7SGnnuhOBEfJXsjiQXSFUY6RzjqkF3R75S/Av0nfz5Y/yKm7ZhU6XxxpCCMx2BtjLgrRP1Hx0VQDzw==" + decrypt, err := utils.WestDexDecrypt(data, "121a1e41fc1690dd6b90afbcacd80cf4") + if err != nil { + return + } + fmt.Println(decrypt) + +}