Skip to content

Commit 5e8cf70

Browse files
committed
ChinaRange
1 parent 11e5e8d commit 5e8cf70

File tree

4 files changed

+20
-2
lines changed

4 files changed

+20
-2
lines changed

json.go

+5
Original file line numberDiff line numberDiff line change
@@ -19,3 +19,8 @@ func (t *ChinaTime) UnmarshalJSON(b []byte) error {
1919
t.Time = v
2020
return err
2121
}
22+
23+
type ChinaRange struct {
24+
Start ChinaTime `json:"start"`
25+
End ChinaTime `json:"end"`
26+
}

json_test.go

+13
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,19 @@ import (
77
"time"
88
)
99

10+
func TestChinaRange(t *testing.T) {
11+
{
12+
type Request struct {
13+
Range ChinaRange `json:"range"`
14+
}
15+
req := Request{}
16+
err := json.Unmarshal([]byte(`{"range":{"start":"2024-06-07 10:34:40","end":"2024-06-10 11:22:33"}}`), &req)
17+
assert.NoError(t, err)
18+
19+
assert.Equal(t, req.Range.Start.In(time.FixedZone("CST", 8*3600)).String(), `2024-06-07 10:34:40 +0800 CST`)
20+
assert.Equal(t, req.Range.End.In(time.FixedZone("CST", 8*3600)).String(), `2024-06-10 11:22:33 +0800 CST`)
21+
}
22+
}
1023
func TestChinaTime(t *testing.T) {
1124
String := func(v interface{}) string {
1225
data, err := json.Marshal(v)

readme.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ Format 也有相同的问题。
2828

2929
故此 goclub/time 提供了一些指定时区的 parse 和 format,目前主要是 China 时区 `time.FixedZone("CST", 8*3600)`
3030

31-
当 json 传递的时间格式不是 RFC3339 而是中国时区年月日时分秒 `2006-01-02 15:04:05`,可以使用 `xtime.ChinaTime` 解析和转换
31+
当 json 传递的时间格式不是 RFC3339 而是中国时区年月日时分秒 `2006-01-02 15:04:05`,可以使用 `xtime.ChinaTime` 或者 `xtime.ChinaRange` 解析和转换
3232

3333
## Date
3434

time_test.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -551,7 +551,7 @@ func TestDate_LastDateOfMonth(t *testing.T) {
551551
}
552552
{
553553
someDate := xtime.NewDate(2022, 11, 30)
554-
assert.Equal(t, someDate.FirstDateOfMonth(), xtime.NewDate(2022, 11, 30))
554+
assert.Equal(t, someDate.FirstDateOfMonth(), xtime.NewDate(2022, 11, 1))
555555
}
556556

557557
// -------------

0 commit comments

Comments
 (0)