in internal/dal/workflow.go [235:261]
func (w *workflowDALImpl) delete(tx *gorm.DB, workflowID string) error {
var handlers []func() error
handlers = append(handlers, func() error {
record := model.Workflow{Status: constants.InvalidStatus, UpdateTime: time.Now()}
return tx.Where("workflow_id = ?", workflowID).Updates(&record).Error
}, func() error {
record := model.WorkflowTask{Status: constants.InvalidStatus, UpdateTime: time.Now()}
return tx.Where("workflow_id = ?", workflowID).Updates(&record).Error
}, func() error {
record := model.WorkflowTaskRelation{Status: constants.InvalidStatus,
UpdateTime: time.Now()}
return tx.Where("workflow_id = ?", workflowID).Updates(&record).Error
}, func() error {
record := model.WorkflowTaskAction{Status: constants.InvalidStatus,
UpdateTime: time.Now()}
return tx.Where("workflow_id = ?", workflowID).Updates(&record).Error
}, func() error {
record := model.WorkflowInstance{WorkflowStatus: constants.InvalidStatus,
UpdateTime: time.Now()}
return tx.Where("workflow_id = ?", workflowID).Updates(&record).Error
}, func() error {
record := model.WorkflowTaskInstance{Status: constants.InvalidStatus,
UpdateTime: time.Now()}
return tx.Where("workflow_id = ?", workflowID).Updates(&record).Error
})
return util.GoAndWait(handlers...)
}