123456789101112131415161718192021222324252627282930313233343536373839404142
  1. package card
  2. import (
  3. "errors"
  4. "spaceofcheng/services/models/model"
  5. )
  6. // GetCardTargetByCardID 根据卡id获取体验卡对应的目标信息
  7. func (m *CardDAO) GetCardTargetByCardID(cardid string) ([]model.TaCouponCardTarget, error) {
  8. var targets []model.TaCouponCardTarget
  9. err := m.db.Where("card_id=?", cardid).Find(&targets)
  10. return targets, err
  11. }
  12. // UpdateTarget 更新关联内容 -- 插入或者更新
  13. func (m *CardDAO) UpdateTarget(targets []model.TaCouponCardTarget, cardID string) error {
  14. if targets == nil || len(targets) == 0 {
  15. return nil
  16. }
  17. for i := range targets {
  18. if targets[i].TargetId == "" {
  19. return errors.New("关联内容不能为空")
  20. }
  21. // TODO
  22. // 校验关联内容是否有效
  23. targets[i].CardId = cardID
  24. }
  25. // var delTargets []model.TaCouponTarget
  26. sql := `delete from ta_coupon_card_target where card_id='` + cardID + `'`
  27. if _, err := m.db.Exec(sql); err != nil {
  28. return err
  29. }
  30. if _, err := m.db.Insert(targets); err != nil {
  31. return err
  32. }
  33. return nil
  34. }