diff --git a/server/db/mysql/tenant_adapter.go b/server/db/mysql/tenant_adapter.go index 98610bc..c4b10a1 100644 --- a/server/db/mysql/tenant_adapter.go +++ b/server/db/mysql/tenant_adapter.go @@ -4259,10 +4259,27 @@ func (a *adapter) attendanceShifts(ctx context.Context, ruleID string) ([]t.Atte defer rows.Close() shifts := make([]t.AttendanceShift, 0, 2) for rows.Next() { - var shift t.AttendanceShift - if err = rows.StructScan(&shift); err != nil { + row := struct { + ID int64 + ShiftID string `db:"shift_id"` + RuleID string `db:"rule_id"` + Name string `db:"name"` + WorkStart string `db:"work_start"` + WorkEnd string `db:"work_end"` + CheckinStart string `db:"checkin_start"` + CheckoutEnd string `db:"checkout_end"` + SortOrder int `db:"sort_order"` + CreatedAt time.Time `db:"created_at"` + UpdatedAt time.Time `db:"updated_at"` + }{} + if err = rows.StructScan(&row); err != nil { return nil, err } + shift := t.AttendanceShift{ + ID: row.ID, ShiftID: row.ShiftID, RuleID: row.RuleID, Name: row.Name, WorkStart: row.WorkStart, + WorkEnd: row.WorkEnd, CheckinStart: row.CheckinStart, CheckoutEnd: row.CheckoutEnd, SortOrder: row.SortOrder, + CreatedAt: row.CreatedAt, UpdatedAt: row.UpdatedAt, + } shifts = append(shifts, shift) } if err = rows.Err(); err != nil {