package userlib import ( "app.yhyue.com/moapp/jydocs/services/model" docRpcUtil "app.yhyue.com/moapp/jydocs/services/util" "gorm.io/gorm" "log" ) func UserDocCollect(userDoc *model.UserDoc, cost int) bool { log.Println("UserDocCollect exec ......") err := docRpcUtil.GetJyDocsDB().Transaction(func(tx *gorm.DB) error { //用户文库表添加记录(需要检查是否重复) err := docRpcUtil.GetJyDocsDB().Create(userDoc).Error if err != nil { log.Println("userDocCollect error:", err) tx.Rollback() return err } //用户收藏、转存记录表添加记录 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 if err != nil { log.Println("userDocCollect record insert error:", err) tx.Rollback() return err } return nil }) if err != nil { return false } return true }