From 4f086f2626b1cec31100a37d822614969b2d6535 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=8E=E5=85=89=E6=98=A5?=
Date: Mon, 24 Jul 2023 14:41:39 +0800
Subject: [PATCH] - update service/kuaidi100
---
go.mod | 2 +-
go.sum | 4 +-
library.go | 2 +-
service/kuaidi100/client.go | 1 +
service/kuaidi100/request.go | 2 +-
vendor/modules.txt | 2 +-
vendor/xorm.io/builder/.drone.yml | 21 ---------
vendor/xorm.io/builder/as.go | 10 ++++
vendor/xorm.io/builder/builder.go | 26 ++++++----
vendor/xorm.io/builder/builder_join.go | 43 +++++++++++++++++
vendor/xorm.io/builder/builder_limit.go | 13 +++--
vendor/xorm.io/builder/builder_select.go | 47 +++++++++----------
.../xorm.io/builder/builder_set_operations.go | 2 +-
13 files changed, 107 insertions(+), 68 deletions(-)
delete mode 100644 vendor/xorm.io/builder/.drone.yml
create mode 100644 vendor/xorm.io/builder/as.go
diff --git a/go.mod b/go.mod
index 2c0a59ce..5eeb2622 100644
--- a/go.mod
+++ b/go.mod
@@ -40,7 +40,7 @@ require (
gorm.io/driver/postgres v1.5.2
gorm.io/gen v0.3.23
gorm.io/gorm v1.25.2
- xorm.io/builder v0.3.12
+ xorm.io/builder v0.3.13
xorm.io/xorm v1.3.2
)
diff --git a/go.sum b/go.sum
index 25f83f80..d8c339e2 100644
--- a/go.sum
+++ b/go.sum
@@ -953,7 +953,7 @@ rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4=
sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o=
sourcegraph.com/sourcegraph/appdash v0.0.0-20190731080439-ebfcffb1b5c0/go.mod h1:hI742Nqp5OhwiqlzhgfbWU4mW4yO10fP+LoT9WOswdU=
xorm.io/builder v0.3.11-0.20220531020008-1bd24a7dc978/go.mod h1:aUW0S9eb9VCaPohFCH3j7czOx1PMW3i1HrSzbLYGBSE=
-xorm.io/builder v0.3.12 h1:ASZYX7fQmy+o8UJdhlLHSW57JDOkM8DNhcAF5d0LiJM=
-xorm.io/builder v0.3.12/go.mod h1:aUW0S9eb9VCaPohFCH3j7czOx1PMW3i1HrSzbLYGBSE=
+xorm.io/builder v0.3.13 h1:a3jmiVVL19psGeXx8GIurTp7p0IIgqeDmwhcR6BAOAo=
+xorm.io/builder v0.3.13/go.mod h1:aUW0S9eb9VCaPohFCH3j7czOx1PMW3i1HrSzbLYGBSE=
xorm.io/xorm v1.3.2 h1:uTRRKF2jYzbZ5nsofXVUx6ncMaek+SHjWYtCXyZo1oM=
xorm.io/xorm v1.3.2/go.mod h1:9NbjqdnjX6eyjRRhh01GHm64r6N9shTb/8Ak3YRt8Nw=
diff --git a/library.go b/library.go
index cf011b22..ba879d83 100644
--- a/library.go
+++ b/library.go
@@ -1,5 +1,5 @@
package go_library
func Version() string {
- return "1.0.156"
+ return "1.0.157"
}
diff --git a/service/kuaidi100/client.go b/service/kuaidi100/client.go
index 622b3cb7..b7c3c7c4 100644
--- a/service/kuaidi100/client.go
+++ b/service/kuaidi100/client.go
@@ -30,6 +30,7 @@ func NewClient(config *ClientConfig) (*Client, error) {
c := &Client{}
c.config.customer = config.Customer
+ c.config.key = config.Key
c.requestClient = gorequest.NewHttp()
diff --git a/service/kuaidi100/request.go b/service/kuaidi100/request.go
index d2641dcd..87b3d34b 100644
--- a/service/kuaidi100/request.go
+++ b/service/kuaidi100/request.go
@@ -32,7 +32,7 @@ func (c *Client) request(ctx context.Context, url string, params map[string]inte
client.SetContentTypeForm()
// 设置参数
- client.SetParams(params)
+ client.SetParams(newParams)
// 发起请求
request, err := client.Request(ctx)
diff --git a/vendor/modules.txt b/vendor/modules.txt
index fba91d12..d2216e4a 100644
--- a/vendor/modules.txt
+++ b/vendor/modules.txt
@@ -639,7 +639,7 @@ gorm.io/hints
# gorm.io/plugin/dbresolver v1.4.1
## explicit; go 1.14
gorm.io/plugin/dbresolver
-# xorm.io/builder v0.3.12
+# xorm.io/builder v0.3.13
## explicit; go 1.11
xorm.io/builder
# xorm.io/xorm v1.3.2
diff --git a/vendor/xorm.io/builder/.drone.yml b/vendor/xorm.io/builder/.drone.yml
deleted file mode 100644
index be7f500c..00000000
--- a/vendor/xorm.io/builder/.drone.yml
+++ /dev/null
@@ -1,21 +0,0 @@
----
-kind: pipeline
-name: testing
-
-trigger:
- ref:
- - refs/heads/master
- - refs/pull/*/head
-
-steps:
-- name: test
- pull: default
- image: golang:1.11
- commands:
- - go get -u golang.org/x/lint/golint
- - golint ./...
- - go vet
- - go test -v -race -coverprofile=coverage.txt -covermode=atomic
- environment:
- GOPROXY: https://goproxy.io
- GO111MODULE: "on"
\ No newline at end of file
diff --git a/vendor/xorm.io/builder/as.go b/vendor/xorm.io/builder/as.go
new file mode 100644
index 00000000..23345f57
--- /dev/null
+++ b/vendor/xorm.io/builder/as.go
@@ -0,0 +1,10 @@
+package builder
+
+type Aliased struct {
+ table interface{}
+ alias string
+}
+
+func As(table interface{}, alias string) *Aliased {
+ return &Aliased{table, alias}
+}
diff --git a/vendor/xorm.io/builder/builder.go b/vendor/xorm.io/builder/builder.go
index 04de5b46..c6b77423 100644
--- a/vendor/xorm.io/builder/builder.go
+++ b/vendor/xorm.io/builder/builder.go
@@ -60,7 +60,7 @@ type Builder struct {
subQuery *Builder
cond Cond
selects []string
- joins []join
+ joins joins
setOps []setOp
limitation *limit
insertCols []string
@@ -68,7 +68,7 @@ type Builder struct {
updates []UpdateCond
orderBy interface{}
groupBy string
- having string
+ having interface{}
}
// Dialect sets the db dialect of Builder.
@@ -113,21 +113,31 @@ func (b *Builder) Where(cond Cond) *Builder {
}
// From sets from subject(can be a table name in string or a builder pointer) and its alias
-func (b *Builder) From(subject interface{}, alias ...string) *Builder {
- switch subject.(type) {
+func (b *Builder) From(subject interface{}, aliasMaybe ...string) *Builder {
+ alias := ""
+ if len(aliasMaybe) > 0 {
+ alias = aliasMaybe[0]
+ }
+
+ if aliased, ok := subject.(*Aliased); ok {
+ subject = aliased.table
+ alias = aliased.alias
+ }
+
+ switch t := subject.(type) {
case *Builder:
- b.subQuery = subject.(*Builder)
+ b.subQuery = t
if len(alias) > 0 {
- b.from = alias[0]
+ b.from = alias
} else {
b.isNested = true
}
case string:
- b.from = subject.(string)
+ b.from = t
if len(alias) > 0 {
- b.from = b.from + " " + alias[0]
+ b.from = b.from + " " + alias
}
}
diff --git a/vendor/xorm.io/builder/builder_join.go b/vendor/xorm.io/builder/builder_join.go
index a6604c5f..a8aef0a7 100644
--- a/vendor/xorm.io/builder/builder_join.go
+++ b/vendor/xorm.io/builder/builder_join.go
@@ -4,6 +4,10 @@
package builder
+import (
+ "fmt"
+)
+
// InnerJoin sets inner join
func (b *Builder) InnerJoin(joinTable, joinCond interface{}) *Builder {
return b.Join("INNER", joinTable, joinCond)
@@ -40,3 +44,42 @@ func (b *Builder) Join(joinType string, joinTable, joinCond interface{}) *Builde
return b
}
+
+type joins []join
+
+func (joins joins) WriteTo(w Writer) error {
+ for _, v := range joins {
+ var joinTable = v.joinTable
+ var alias string
+ if aliased, ok := v.joinTable.(*Aliased); ok {
+ joinTable = aliased.table
+ alias = aliased.alias + " "
+ }
+
+ switch tbl := joinTable.(type) {
+ case *Builder:
+ if _, err := fmt.Fprintf(w, " %s JOIN (", v.joinType); err != nil {
+ return err
+ }
+ if err := tbl.WriteTo(w); err != nil {
+ return err
+ }
+ if _, err := fmt.Fprintf(w, ") %s", alias); err != nil {
+ return err
+ }
+ case string:
+ if _, err := fmt.Fprintf(w, " %s JOIN %s %s", v.joinType, tbl, alias); err != nil {
+ return err
+ }
+ }
+ if _, err := fmt.Fprintf(w, "ON "); err != nil {
+ return err
+ }
+
+ if err := v.joinCond.WriteTo(w); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
diff --git a/vendor/xorm.io/builder/builder_limit.go b/vendor/xorm.io/builder/builder_limit.go
index 82e11793..793df377 100644
--- a/vendor/xorm.io/builder/builder_limit.go
+++ b/vendor/xorm.io/builder/builder_limit.go
@@ -19,12 +19,11 @@ func (b *Builder) limitWriteTo(w Writer) error {
if limit.offset < 0 || limit.limitN <= 0 {
return ErrInvalidLimitation
}
- // erase limit condition
+ // unset limit condition to prevent final.WriteTo from recursing forever
b.limitation = nil
defer func() {
b.limitation = limit
}()
- ow := w.(*BytesWriter)
switch strings.ToLower(strings.TrimSpace(b.dialect)) {
case ORACLE:
@@ -55,19 +54,19 @@ func (b *Builder) limitWriteTo(w Writer) error {
Where(Gt{"att.RN": limit.offset})
}
- return final.WriteTo(ow)
+ return final.WriteTo(w)
case SQLITE, MYSQL, POSTGRES:
// if type UNION, we need to write previous content back to current writer
if b.optype == setOpType {
- if err := b.WriteTo(ow); err != nil {
+ if err := b.WriteTo(w); err != nil {
return err
}
}
if limit.offset == 0 {
- fmt.Fprint(ow, " LIMIT ", limit.limitN)
+ fmt.Fprint(w, " LIMIT ", limit.limitN)
} else {
- fmt.Fprintf(ow, " LIMIT %v OFFSET %v", limit.limitN, limit.offset)
+ fmt.Fprintf(w, " LIMIT %v OFFSET %v", limit.limitN, limit.offset)
}
case MSSQL:
if len(b.selects) == 0 {
@@ -93,7 +92,7 @@ func (b *Builder) limitWriteTo(w Writer) error {
final = Dialect(b.dialect).Select(selects...).From(wb, "at").Where(Gt{"at.RN": limit.offset})
}
- return final.WriteTo(ow)
+ return final.WriteTo(w)
default:
return ErrNotSupportType
}
diff --git a/vendor/xorm.io/builder/builder_select.go b/vendor/xorm.io/builder/builder_select.go
index c457c643..a36d2a64 100644
--- a/vendor/xorm.io/builder/builder_select.go
+++ b/vendor/xorm.io/builder/builder_select.go
@@ -79,27 +79,8 @@ func (b *Builder) selectWriteTo(w Writer) error {
}
}
- for _, v := range b.joins {
- b, ok := v.joinTable.(*Builder)
- if ok {
- if _, err := fmt.Fprintf(w, " %s JOIN (", v.joinType); err != nil {
- return err
- }
- if err := b.WriteTo(w); err != nil {
- return err
- }
- if _, err := fmt.Fprintf(w, ") ON "); err != nil {
- return err
- }
- } else {
- if _, err := fmt.Fprintf(w, " %s JOIN %s ON ", v.joinType, v.joinTable); err != nil {
- return err
- }
- }
-
- if err := v.joinCond.WriteTo(w); err != nil {
- return err
- }
+ if err := b.joins.WriteTo(w); err != nil {
+ return err
}
if b.cond.IsValid() {
@@ -118,9 +99,25 @@ func (b *Builder) selectWriteTo(w Writer) error {
}
}
- if len(b.having) > 0 {
- if _, err := fmt.Fprint(w, " HAVING ", b.having); err != nil {
- return err
+ if b.having != nil {
+ switch c := b.having.(type) {
+ case string:
+ if len(c) > 0 {
+ if _, err := fmt.Fprint(w, " HAVING ", c); err != nil {
+ return err
+ }
+ }
+ case Cond:
+ if c.IsValid() {
+ if _, err := fmt.Fprint(w, " HAVING "); err != nil {
+ return err
+ }
+ if err := c.WriteTo(w); err != nil {
+ return err
+ }
+ }
+ default:
+ return fmt.Errorf("unknown having parameter: %#v", b.having)
}
}
@@ -166,7 +163,7 @@ func (b *Builder) GroupBy(groupby string) *Builder {
}
// Having having SQL
-func (b *Builder) Having(having string) *Builder {
+func (b *Builder) Having(having interface{}) *Builder {
b.having = having
return b
}
diff --git a/vendor/xorm.io/builder/builder_set_operations.go b/vendor/xorm.io/builder/builder_set_operations.go
index 05dc5abe..6ad16778 100644
--- a/vendor/xorm.io/builder/builder_set_operations.go
+++ b/vendor/xorm.io/builder/builder_set_operations.go
@@ -11,7 +11,7 @@ import (
func (b *Builder) setOpWriteTo(w Writer) error {
if b.limitation != nil || b.cond.IsValid() ||
- b.orderBy != nil || b.having != "" || b.groupBy != "" {
+ b.orderBy != nil || b.having != nil || b.groupBy != "" {
return ErrNotUnexpectedUnionConditions
}