audio.go 905 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. package service
  2. import (
  3. "errors"
  4. "gorm.io/gorm"
  5. "speechAnalysis/models"
  6. "speechAnalysis/pkg/logx"
  7. )
  8. func DeleteAudio(audioId uint) (err error) {
  9. err = models.WithTransaction(func(db *gorm.DB) error {
  10. if err := models.NewAudioSearch().SetID(audioId).Delete(); err != nil {
  11. return err
  12. }
  13. return models.NewAudioTextSearch().SetAudioID(audioId).Delete()
  14. })
  15. if err != nil {
  16. logx.Errorf("delete audio err: %v", err)
  17. return errors.New("DB错误")
  18. }
  19. return nil
  20. }
  21. func BatchDeleteAudio(audioIds []uint) (err error) {
  22. if len(audioIds) == 0 {
  23. return nil
  24. }
  25. err = models.WithTransaction(func(db *gorm.DB) error {
  26. if err := models.NewAudioSearch().SetIDs(audioIds).Delete(); err != nil {
  27. return err
  28. }
  29. return models.NewAudioTextSearch().SetAudioIDs(audioIds).Delete()
  30. })
  31. if err != nil {
  32. logx.Errorf("delete audio err: %v", err)
  33. return errors.New("DB错误")
  34. }
  35. return nil
  36. }