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.
103 lines
3.8 KiB
103 lines
3.8 KiB
package dao |
|
|
|
import ( |
|
"fmt" |
|
|
|
"go-common/app/service/ep/footman/model" |
|
"go-common/library/ecode" |
|
"go-common/library/log" |
|
|
|
pkgerr "github.com/pkg/errors" |
|
) |
|
|
|
const ( |
|
_issueRecords = "issue_records" |
|
_issueLastTimes = "issue_last_times" |
|
) |
|
|
|
// UpdateIssueRecord Update Issue Record. |
|
func (d *Dao) UpdateIssueRecord(issueRecord *model.IssueRecord) (err error) { |
|
err = d.db.Table(_issueRecords).Where("issue_no = ? and version = ?", issueRecord.IssueNo, issueRecord.Version).UpdateColumn(map[string]interface{}{ |
|
"last_time": issueRecord.LastTime, |
|
"happen_times": issueRecord.HappenTimes, |
|
"user_times": issueRecord.UserTimes, |
|
}).Error |
|
log.Info("update issue record: %s", issueRecord.IssueNo) |
|
fmt.Print("update issue record: " + issueRecord.IssueNo) |
|
return |
|
} |
|
|
|
// InsertIssueRecord Insert Issue Record. |
|
func (d *Dao) InsertIssueRecord(issueRecord *model.IssueRecord) (err error) { |
|
err = d.db.Table(_issueRecords).Create(issueRecord).Error |
|
log.Info("insert issue record: %s", issueRecord.IssueNo) |
|
fmt.Println("insert issue record: " + issueRecord.IssueNo) |
|
return |
|
} |
|
|
|
// GetIssueLastTime Get Issue LastTime. |
|
func (d *Dao) GetIssueLastTime(version string) (issueLastTime *model.IssueLastTime, err error) { |
|
issueLastTime = &model.IssueLastTime{} |
|
if err = d.db.Where("version = ?", version).First(issueLastTime).Error; err == ecode.NothingFound { |
|
err = nil |
|
} |
|
return |
|
} |
|
|
|
// UpdateTaskStatus Update Task Status. |
|
func (d *Dao) UpdateTaskStatus(issueLastTime *model.IssueLastTime) (err error) { |
|
err = pkgerr.WithStack(d.db.Table(_issueLastTimes).Where("version=?", issueLastTime.Version).Update("task_status", issueLastTime.TaskStatus).Error) |
|
return |
|
} |
|
|
|
// GetIssueRecord Get Issue Record. |
|
func (d *Dao) GetIssueRecord(issueNo, version string) (issueRecord *model.IssueRecord, err error) { |
|
issueRecord = &model.IssueRecord{} |
|
if err = d.db.Where("issue_no = ? and version = ?", issueNo, version).First(issueRecord).Error; err == ecode.NothingFound { |
|
err = nil |
|
} |
|
return |
|
} |
|
|
|
// GetIssueRecordNotInTapd Get Issue Record Not in tapd. |
|
func (d *Dao) GetIssueRecordNotInTapd(issueFilterSQL string) (issueRecords []*model.IssueRecord, err error) { |
|
if err = d.db.Raw(issueFilterSQL).Order("id asc").Find(&issueRecords).Error; err == ecode.NothingFound { |
|
err = nil |
|
} |
|
return |
|
} |
|
|
|
// GetIssueRecordHasInTapd Get Issue Record in tapd. |
|
func (d *Dao) GetIssueRecordHasInTapd(projectID string) (issueRecords []*model.IssueRecord, err error) { |
|
if err = d.db.Table(_issueRecords).Where("project_id = ? and tapd_bug_id<>''", projectID).Find(&issueRecords).Error; err == ecode.NothingFound { |
|
err = nil |
|
} |
|
return |
|
} |
|
|
|
// UpdateIssueRecordTapdBugID Update Issue Record Tapd Bug ID. |
|
func (d *Dao) UpdateIssueRecordTapdBugID(id int64, tapdBugID string) (err error) { |
|
return d.db.Table(_issueRecords).Where("id=?", id).Update("tapd_bug_id", tapdBugID).Error |
|
} |
|
|
|
// UpdateLastIssueTime Update Last Issue Time. |
|
func (d *Dao) UpdateLastIssueTime(issueLastTime *model.IssueLastTime) (err error) { |
|
return d.db.Table(_issueLastTimes).Where("version=?", issueLastTime.Version).Update("last_time", issueLastTime.LastTime).Error |
|
} |
|
|
|
// InsertIssueLastTime Insert Issue Last Time. |
|
func (d *Dao) InsertIssueLastTime(issueLastTime *model.IssueLastTime) (err error) { |
|
return d.db.Table(_issueLastTimes).Create(issueLastTime).Error |
|
} |
|
|
|
// UpdateLastIssue Update Last Issue. |
|
func (d *Dao) UpdateLastIssue(issueLastTime *model.IssueLastTime) (err error) { |
|
err = pkgerr.WithStack(d.db.Table(_issueLastTimes).Where("version=?", issueLastTime.Version).Update("last_issue", issueLastTime.LastIssue).Error) |
|
return |
|
} |
|
|
|
// UpdateVersionRecord Update Version Record. |
|
func (d *Dao) UpdateVersionRecord(issueLastTime *model.IssueLastTime) (err error) { |
|
err = pkgerr.WithStack(d.db.Table(_issueLastTimes).Where("version=?", issueLastTime.Version).Updates(issueLastTime).Error) |
|
return |
|
}
|
|
|