go-common/app/admin/main/videoup-task/dao/oper.go
2019-04-22 18:49:16 +08:00

66 lines
1.9 KiB
Go

package dao
import (
"context"
"time"
"go-common/app/admin/main/videoup-task/model"
"go-common/library/database/sql"
"go-common/library/log"
)
const (
_inVideoOperSQL = "INSERT INTO archive_video_oper (aid,uid,vid,status,content,attribute,last_id,remark) VALUES (?,?,?,?,?,?,?,?)"
_videoOperSQL = "SELECT id,aid,uid,vid,status,content,attribute,last_id,remark,ctime FROM archive_video_oper WHERE vid = ? ORDER BY ctime DESC"
_upVideoOperSQL = "UPDATE archive_video_oper SET last_id=? WHERE id=?"
)
// AddVideoOper insert archive_video_oper.
func (d *Dao) AddVideoOper(c context.Context, aid, adminID, vid int64, attribute int32, status int16, lastID int64, content, remark string) (id int64, err error) {
res, err := d.arcDB.Exec(c, _inVideoOperSQL, aid, adminID, vid, status, content, attribute, lastID, remark)
if err != nil {
log.Error("d.inVideoOper.Exec error(%v)", err)
return
}
id, err = res.LastInsertId()
return
}
//VideoOpers get video oper history list
func (d *Dao) VideoOpers(c context.Context, vid int64) (op []*model.VOper, uids []int64, err error) {
var (
rows *sql.Rows
ctime time.Time
)
op = []*model.VOper{}
uids = []int64{}
if rows, err = d.arcReadDB.Query(c, _videoOperSQL, vid); err != nil {
log.Error("d.arcReadDB.Query error(%v)", err)
return
}
defer rows.Close()
for rows.Next() {
p := &model.VOper{}
if err = rows.Scan(&p.ID, &p.AID, &p.UID, &p.VID, &p.Status, &p.Content, &p.Attribute, &p.LastID, &p.Remark, &ctime); err != nil {
log.Error("rows.Scan error(%v)", err)
return
}
p.CTime = ctime.Format("2006-01-02 15:04:05")
op = append(op, p)
uids = append(uids, p.UID)
}
return
}
// UpVideoOper update archive_video_oper last_id by id.
func (d *Dao) UpVideoOper(c context.Context, lastID, id int64) (rows int64, err error) {
res, err := d.arcDB.Exec(c, _upVideoOperSQL, lastID, id)
if err != nil {
log.Error("d.upVideoOper.Exec error(%v)", err)
return
}
rows, err = res.RowsAffected()
return
}