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.
65 lines
1.9 KiB
65 lines
1.9 KiB
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 |
|
}
|
|
|