1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- package dao
- import (
- "go-common/app/admin/ep/marthe/model"
- "go-common/library/ecode"
- pkgerr "github.com/pkg/errors"
- )
- // InsertBuglyBatchRuns Insert Bugly Batch Runs.
- func (d *Dao) InsertBuglyBatchRuns(buglyBatchRuns []*model.BuglyBatchRun) (err error) {
- tx := d.db.Begin()
- defer func() {
- if err != nil {
- if err == ecode.NothingFound {
- err = nil
- } else {
- err = pkgerr.WithStack(err)
- }
- }
- }()
- if err = tx.Error; err != nil {
- return
- }
- for _, buglyBatchRun := range buglyBatchRuns {
- if err = d.db.Create(buglyBatchRun).Error; err != nil {
- tx.Rollback()
- return
- }
- }
- if err = tx.Commit().Error; err != nil {
- tx.Rollback()
- }
- return
- }
- // InsertBuglyBatchRun Insert Bugly Batch Run.
- func (d *Dao) InsertBuglyBatchRun(buglyBatchRun *model.BuglyBatchRun) error {
- return pkgerr.WithStack(d.db.Create(buglyBatchRun).Error)
- }
- // UpdateBuglyBatchRun Update Bugly Batch Run.
- func (d *Dao) UpdateBuglyBatchRun(buglyBatchRun *model.BuglyBatchRun) error {
- return pkgerr.WithStack(d.db.Model(&model.BuglyBatchRun{}).Where("id=?", buglyBatchRun.ID).Updates(buglyBatchRun).Error)
- }
- // FindBuglyBatchRuns Find Bugly Batch Runs.
- func (d *Dao) FindBuglyBatchRuns(req *model.QueryBuglyBatchRunsRequest) (total int64, buglyBatchRuns []*model.BuglyBatchRun, err error) {
- gDB := d.db.Model(&model.BuglyBatchRun{})
- if req.Version != "" {
- gDB = gDB.Where("version=?", req.Version)
- }
- if req.Status != 0 {
- gDB = gDB.Where("status=?", req.Status)
- }
- if req.BatchID != "" {
- gDB = gDB.Where("batch_id=?", req.BatchID)
- }
- if err = pkgerr.WithStack(gDB.Count(&total).Error); err != nil {
- return
- }
- err = pkgerr.WithStack(gDB.Order("ctime desc").Offset((req.PageNum - 1) * req.PageSize).Limit(req.PageSize).Find(&buglyBatchRuns).Error)
- return
- }
- // QueryBuglyBatchRunsByStatus Find Bugly Batch Runs By Status.
- func (d *Dao) QueryBuglyBatchRunsByStatus(status int) (buglyBatchRuns []*model.BuglyBatchRun, err error) {
- err = pkgerr.WithStack(d.db.Where("status = ?", status).Find(&buglyBatchRuns).Error)
- return
- }
- // QueryLastSuccessBatchRunByVersion Find Last Success Batch Run By Version.
- func (d *Dao) QueryLastSuccessBatchRunByVersion(version string) (buglyBatchRun *model.BuglyBatchRun, err error) {
- buglyBatchRun = &model.BuglyBatchRun{}
- if err = d.db.Where("version = ? and status = ?", version, model.BuglyBatchRunStatusDone).Order("id desc").First(&buglyBatchRun).Error; err != nil {
- if err == ecode.NothingFound {
- err = nil
- } else {
- err = pkgerr.WithStack(err)
- }
- }
- return
- }
|