Skip to content

Commit 62b77e2

Browse files
liangfujianwangzuo
andauthored
fix date in query (#59)
* 修复date类型数据查询与实际结果不符错误 * improve testing * add ts testing for date in query --------- Co-authored-by: Wang Zuo <wzuoadjusted@gmail.com>
1 parent 30da020 commit 62b77e2

File tree

3 files changed

+12
-5
lines changed

3 files changed

+12
-5
lines changed

generator/client/golang/templates/queryx/date_column.gotmpl

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ func (c *DateColumn) EQ(v string) *Clause {
2727
}
2828
return &Clause{
2929
fragment: fmt.Sprintf("%s.%s = ?", c.Table.Name, c.Name),
30-
args: []interface{}{d.UTC()},
30+
args: []interface{}{d},
3131
err: err,
3232
}
3333
}
@@ -41,7 +41,7 @@ func (c *DateColumn) LE(v string) *Clause {
4141
}
4242
return &Clause{
4343
fragment: fmt.Sprintf("%s.%s <= ?", c.Table.Name, c.Name),
44-
args: []interface{}{d.UTC()},
44+
args: []interface{}{d},
4545
err: err,
4646
}
4747
}
@@ -55,7 +55,7 @@ func (c *DateColumn) LT(v string) *Clause {
5555
}
5656
return &Clause{
5757
fragment: fmt.Sprintf("%s.%s <=?", c.Table.Name, c.Name),
58-
args: []interface{}{d.UTC()},
58+
args: []interface{}{d},
5959
err: err,
6060
}
6161
}
@@ -69,7 +69,7 @@ func (c *DateColumn) GE(v string) *Clause {
6969
}
7070
return &Clause{
7171
fragment: fmt.Sprintf("%s.%s >= ?", c.Table.Name, c.Name),
72-
args: []interface{}{d.UTC()},
72+
args: []interface{}{d},
7373
err: err,
7474
}
7575
}
@@ -83,7 +83,7 @@ func (c *DateColumn) GT(v string) *Clause {
8383
}
8484
return &Clause{
8585
fragment: fmt.Sprintf("%s.%s > ?", c.Table.Name, c.Name),
86-
args: []interface{}{d.UTC()},
86+
args: []interface{}{d},
8787
err: err,
8888
}
8989
}

internal/integration/client.test.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,9 @@ test("time", async () => {
106106
test("date", async () => {
107107
let user = await c.queryUser().create({ date: "2012-11-10" });
108108
expect(format(user.date!, "yyyy-MM-dd")).toEqual("2012-11-10");
109+
110+
user = await c.queryUser().where(c.userDate.eq("2012-11-10")).first();
111+
expect(format(user.date!, "yyyy-MM-dd")).toEqual("2012-11-10");
109112
});
110113

111114
test("datetime", async () => {

internal/integration/client_test.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,10 @@ func TestDate(t *testing.T) {
157157
user, err := c.QueryUser().Create(c.ChangeUser().SetDate("2012-11-10"))
158158
require.NoError(t, err)
159159
require.Equal(t, "2012-11-10", user.Date.Val.Format("2006-01-02"))
160+
161+
user, err = c.QueryUser().Where(c.UserDate.EQ("2012-11-10")).First()
162+
require.NoError(t, err)
163+
require.Equal(t, "2012-11-10", user.Date.Val.Format("2006-01-02"))
160164
}
161165

162166
func TestDatetime(t *testing.T) {

0 commit comments

Comments
 (0)