del_email.go 915 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. package del_email
  2. import (
  3. log "github.com/sirupsen/logrus"
  4. "pmail/consts"
  5. "pmail/db"
  6. "pmail/models"
  7. "pmail/utils/context"
  8. )
  9. import . "xorm.io/builder"
  10. func DelEmail(ctx *context.Context, ids []int) error {
  11. if len(ids) == 0 {
  12. return nil
  13. }
  14. where, params, err := ToSQL(Eq{"user_id": ctx.UserID}.And(Eq{"email_id": ids}))
  15. if err != nil {
  16. log.Errorf("del email err: %v", err)
  17. return err
  18. }
  19. _, err = db.Instance.Table(&models.UserEmail{}).Where(where, params...).Update(map[string]interface{}{"status": consts.EmailStatusDel})
  20. if err != nil {
  21. log.Errorf("del email err: %v", err)
  22. }
  23. return err
  24. }
  25. func DelEmailI64(ctx *context.Context, ids []int64) error {
  26. _, err := db.Instance.Table(&models.UserEmail{}).Where("user_id =? and id in ?", ctx.UserID, ids).Update(map[string]interface{}{"status": consts.EmailStatusDel})
  27. if err != nil {
  28. log.Errorf("del email err: %v", err)
  29. }
  30. return err
  31. }