59 lines
1.8 KiB
Go
59 lines
1.8 KiB
Go
package income
|
|
|
|
import (
|
|
"context"
|
|
"fmt"
|
|
|
|
model "go-common/app/job/main/growup/model/income"
|
|
|
|
"go-common/library/log"
|
|
)
|
|
|
|
const (
|
|
_getArchiveByDateSQL = "SELECT id, %s, mid, tag_id, income, date FROM %s WHERE id > ? AND date = ? ORDER BY id LIMIT ?"
|
|
_getBgmIncomeByDateSQL = "SELECT id, sid, mid, income, date FROM bgm_income WHERE id > ? AND date = ? ORDER BY id LIMIT ?"
|
|
)
|
|
|
|
// GetArchiveByDate get archive by date
|
|
func (d *Dao) GetArchiveByDate(c context.Context, aid, table, date string, id int64, limit int) (archives []*model.ArchiveIncome, err error) {
|
|
archives = make([]*model.ArchiveIncome, 0)
|
|
rows, err := d.db.Query(c, fmt.Sprintf(_getArchiveByDateSQL, aid, table), id, date, limit)
|
|
if err != nil {
|
|
log.Error("GetArchiveByDate d.db.Query error(%v)", err)
|
|
return
|
|
}
|
|
defer rows.Close()
|
|
for rows.Next() {
|
|
archive := &model.ArchiveIncome{}
|
|
err = rows.Scan(&archive.ID, &archive.AID, &archive.MID, &archive.TagID, &archive.Income, &archive.Date)
|
|
if err != nil {
|
|
log.Error("GetArchiveByDate rows.Scan error(%v)", err)
|
|
return
|
|
}
|
|
archives = append(archives, archive)
|
|
}
|
|
return
|
|
}
|
|
|
|
// GetBgmIncomeByDate get bgm income by date
|
|
func (d *Dao) GetBgmIncomeByDate(c context.Context, date string, id int64, limit int) (archives []*model.ArchiveIncome, err error) {
|
|
archives = make([]*model.ArchiveIncome, 0)
|
|
rows, err := d.db.Query(c, _getBgmIncomeByDateSQL, id, date, limit)
|
|
if err != nil {
|
|
log.Error("GetArchiveByDate d.db.Query error(%v)", err)
|
|
return
|
|
}
|
|
defer rows.Close()
|
|
for rows.Next() {
|
|
archive := &model.ArchiveIncome{}
|
|
err = rows.Scan(&archive.ID, &archive.AID, &archive.MID, &archive.Income, &archive.Date)
|
|
if err != nil {
|
|
log.Error("GetArchiveByDate rows.Scan error(%v)", err)
|
|
return
|
|
}
|
|
archives = append(archives, archive)
|
|
}
|
|
return
|
|
|
|
}
|