123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119 |
- package income
- import (
- "context"
- "fmt"
- model "go-common/app/admin/main/growup/model/income"
- "go-common/library/log"
- )
- var (
- _video = 0
- _column = 2
- _bgm = 3
- _lottery = 5
- )
- const (
- // select
- _avIncomeStatisTableSQL = "SELECT avs,money_section,money_tips,income,category_id,cdate FROM %s WHERE %s LIMIT ?,?"
- _avIncomeSQL = "SELECT id,av_id,mid,tag_id,is_original,upload_time,total_income,income,tax_money,date FROM av_income WHERE id > ? AND %s date >= ? AND date <= ? ORDER BY id LIMIT ?"
- _columnIncomeSQL = "SELECT id,aid,mid,tag_id,upload_time,total_income,income,tax_money,date FROM column_income WHERE id > ? AND date >= ? AND date <= ? AND %s is_deleted = 0 ORDER BY id LIMIT ?"
- )
- // GetArchiveStatis get av/column income statis from table and query
- func (d *Dao) GetArchiveStatis(c context.Context, table, query string, from, limit int) (avs []*model.ArchiveStatis, err error) {
- avs = make([]*model.ArchiveStatis, 0)
- if table == "" || query == "" {
- return nil, fmt.Errorf("error args table(%s), query(%s)", table, query)
- }
- rows, err := d.db.Query(c, fmt.Sprintf(_avIncomeStatisTableSQL, table, query), from, limit)
- if err != nil {
- log.Error("GetArchiveStatis d.db.Query error(%v)", err)
- return
- }
- defer rows.Close()
- for rows.Next() {
- list := &model.ArchiveStatis{}
- err = rows.Scan(&list.Avs, &list.MoneySection, &list.MoneyTips, &list.Income, &list.CategroyID, &list.CDate)
- if err != nil {
- log.Error("GetArchiveStatis rows scan error(%v)", err)
- return
- }
- avs = append(avs, list)
- }
- err = rows.Err()
- return
- }
- // GetArchiveIncome get archive income by query
- func (d *Dao) GetArchiveIncome(c context.Context, id int64, query string, from, to string, limit int, typ int) (archs []*model.ArchiveIncome, err error) {
- switch typ {
- case _video:
- return d.GetAvIncome(c, id, query, from, to, limit, typ)
- case _column:
- return d.GetColumnIncome(c, id, query, from, to, limit, typ)
- case _bgm:
- return d.GetBgmIncome(c, id, query, from, to, limit, typ)
- case _lottery:
- return d.GetLotteryIncome(c, id, query, from, to, limit, typ)
- }
- err = fmt.Errorf("get archive type error(%d)", typ)
- return
- }
- // GetAvIncome get av income by query
- func (d *Dao) GetAvIncome(c context.Context, id int64, query string, from, to string, limit int, typ int) (avs []*model.ArchiveIncome, err error) {
- avs = make([]*model.ArchiveIncome, 0)
- if query != "" {
- query += " AND"
- }
- rows, err := d.db.Query(c, fmt.Sprintf(_avIncomeSQL, query), id, from, to, limit)
- if err != nil {
- log.Error("GetAvIncome d.db.Query error(%v)", err)
- return
- }
- defer rows.Close()
- for rows.Next() {
- list := &model.ArchiveIncome{}
- err = rows.Scan(&list.ID, &list.AvID, &list.MID, &list.TagID, &list.IsOriginal, &list.UploadTime, &list.TotalIncome, &list.Income, &list.TaxMoney, &list.Date)
- if err != nil {
- log.Error("GetAvIncome rows scan error(%v)", err)
- return
- }
- list.Type = typ
- avs = append(avs, list)
- }
- err = rows.Err()
- return
- }
- // GetColumnIncome get column income by query
- func (d *Dao) GetColumnIncome(c context.Context, id int64, query string, from, to string, limit int, typ int) (columns []*model.ArchiveIncome, err error) {
- columns = make([]*model.ArchiveIncome, 0)
- if query != "" {
- query += " AND"
- }
- rows, err := d.db.Query(c, fmt.Sprintf(_columnIncomeSQL, query), id, from, to, limit)
- if err != nil {
- log.Error("GetColumnIncome d.db.Query error(%v)", err)
- return
- }
- defer rows.Close()
- for rows.Next() {
- list := &model.ArchiveIncome{}
- err = rows.Scan(&list.ID, &list.AvID, &list.MID, &list.TagID, &list.UploadTime, &list.TotalIncome, &list.Income, &list.TaxMoney, &list.Date)
- if err != nil {
- log.Error("GetColumnIncome rows scan error(%v)", err)
- return
- }
- list.Type = typ
- columns = append(columns, list)
- }
- err = rows.Err()
- return
- }
|