userDocService.go 995 B

123456789101112131415161718192021222324252627282930313233
  1. package userlib
  2. import (
  3. "app.yhyue.com/moapp/jydocs/services/model"
  4. docRpcUtil "app.yhyue.com/moapp/jydocs/services/util"
  5. "gorm.io/gorm"
  6. "log"
  7. )
  8. func UserDocCollect(userDoc *model.UserDoc, cost int) bool {
  9. log.Println("UserDocCollect exec ......")
  10. err := docRpcUtil.GetJyDocsDB().Transaction(func(tx *gorm.DB) error {
  11. //用户文库表添加记录(需要检查是否重复)
  12. err := docRpcUtil.GetJyDocsDB().Create(userDoc).Error
  13. if err != nil {
  14. log.Println("userDocCollect error:", err)
  15. tx.Rollback()
  16. return err
  17. }
  18. //用户收藏、转存记录表添加记录
  19. err = docRpcUtil.GetJyDocsDB().Exec("insert into download_collection_record (docId,userId,sourceUserId,category,cost) values (?,?,?,?,?)", userDoc.DocId, userDoc.UserId, userDoc.DocSourceUserId, userDoc.DocCategory, cost).Error
  20. if err != nil {
  21. log.Println("userDocCollect record insert error:", err)
  22. tx.Rollback()
  23. return err
  24. }
  25. return nil
  26. })
  27. if err != nil {
  28. return false
  29. }
  30. return true
  31. }