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.
51 lines
1.8 KiB
51 lines
1.8 KiB
package dao |
|
|
|
import ( |
|
"context" |
|
"fmt" |
|
"go-common/app/service/bbq/video/api/grpc/v1" |
|
"go-common/app/service/bbq/video/model" |
|
"go-common/library/ecode" |
|
"go-common/library/log" |
|
) |
|
|
|
const ( |
|
insertOrUpdateVUP = "insert into video_upload_process (`svid`,`title`,`mid`,`upload_status`,`retry_times`,`home_img_url`,`home_img_width`,`home_img_height`) values(?,?,?,?,?,?,?,?) on duplicate key update `title` = values(`title`),`mid` = values(`mid`),`upload_status` = values(`upload_status`),`retry_times`= values(`retry_times`)" |
|
selectPrepareVUP = "select `svid`,`title`,`upload_status`,`home_img_url`,`home_img_height`,`home_img_width` from video_upload_process where mid=%d and is_deleted=0 and upload_status != 1 order by ctime desc limit 20" |
|
) |
|
|
|
//InsertOrUpdateVUP .. |
|
func (d *Dao) InsertOrUpdateVUP(c context.Context, vup *model.VideoUploadProcess) (err error) { |
|
if vup == nil { |
|
err = ecode.BBQSystemErr |
|
log.Errorw(c, "event", "InsertVUP req nil") |
|
return |
|
} |
|
if _, err = d.db.Exec(c, insertOrUpdateVUP, vup.SVID, vup.Title, vup.Mid, vup.UploadStatus, vup.RetryTimes, vup.HomeImgURL, vup.HomeImgWidth, vup.HomeImgHeight); err != nil { |
|
log.Errorw(c, "event", "InsertVR err", "err", err, "param", vup) |
|
return |
|
} |
|
return |
|
} |
|
|
|
// GetPrepareVUP 获取数据 |
|
func (d *Dao) GetPrepareVUP(c context.Context, mid int64) (vups []*v1.UploadingVideo, err error) { |
|
querySQL := fmt.Sprintf(selectPrepareVUP, mid) |
|
rows, err := d.db.Query(c, querySQL) |
|
if err != nil { |
|
log.Errorw(c, "log", "get prepare vup fail", "mid", mid) |
|
return |
|
} |
|
defer rows.Close() |
|
|
|
for rows.Next() { |
|
vup := new(v1.UploadingVideo) |
|
if err = rows.Scan(&vup.Svid, &vup.Title, &vup.UploadStatus, &vup.HomeImgUrl, &vup.HomeImgHeight, &vup.HomeImgWidth); err != nil { |
|
log.Errorw(c, "log", "scan vup fail") |
|
return |
|
} |
|
vups = append(vups, vup) |
|
} |
|
|
|
return |
|
}
|
|
|