You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
991 B
44 lines
991 B
package ugc |
|
|
|
import ( |
|
"context" |
|
"fmt" |
|
|
|
"go-common/app/job/main/tv/model/common" |
|
"go-common/library/database/sql" |
|
"go-common/library/log" |
|
"go-common/library/xstr" |
|
) |
|
|
|
const ( |
|
_passedArc = "SELECT aid, ctime FROM ugc_archive WHERE typeid IN (%s) AND result = 1 AND valid = 1 and deleted = 0" |
|
) |
|
|
|
// PassedArcs picks the passed Arc data for Idx Page |
|
func (d *Dao) PassedArcs(c context.Context, tids []int64) (res []*common.IdxRank, err error) { |
|
if len(tids) == 0 { |
|
return |
|
} |
|
|
|
var ( |
|
rows *sql.Rows |
|
tidsStr = xstr.JoinInts(tids) |
|
) |
|
if rows, err = d.DB.Query(c, fmt.Sprintf(_passedArc, tidsStr)); err != nil { |
|
log.Error("d.PassedArcs.Query error(%v)", err) |
|
return |
|
} |
|
defer rows.Close() |
|
for rows.Next() { |
|
var r = &common.IdxRank{} |
|
if err = rows.Scan(&r.ID, &r.Ctime); err != nil { |
|
log.Error("PassedArcs row.Scan() error(%v)", err) |
|
return |
|
} |
|
res = append(res, r) |
|
} |
|
if err = rows.Err(); err != nil { |
|
log.Error("d.PassedArcs.Query error(%v)", err) |
|
} |
|
return |
|
}
|
|
|