add: entities and folders, post entity poorly described

This commit is contained in:
Maksaid 2023-12-20 18:18:07 +03:00
parent 6081a8cd64
commit b6839536b9
6 changed files with 132 additions and 0 deletions

View file

@ -0,0 +1,8 @@
package Comments
type Comments struct {
authorId string
text string
likes int
dislikes int
}

5
Forums/forum_contract.go Normal file
View file

@ -0,0 +1,5 @@
package Forums
type Forum struct {
threads []string
}

44
Models/categories.json Normal file
View file

@ -0,0 +1,44 @@
{
"categories": [
{
"id": 1,
"category": "travel"
},
{
"id": 2,
"category": "technology"
},
{
"id": 3,
"category": "business"
},
{
"id": 4,
"category": "lifestyle"
},
{
"id": 5,
"category": "personal development"
},
{
"id": 6,
"category": "entertainment"
},
{
"id": 7,
"category": "health and fitness"
},
{
"id": 8,
"category": "food and drink"
},
{
"id": 9,
"category": "art and culture"
},
{
"id": 10,
"category": "parenting"
}
]
}

67
Posts/post_contract.go Normal file
View file

@ -0,0 +1,67 @@
package Posts
import (
guuid "github.com/google/uuid"
"github.com/nspcc-dev/neo-go/pkg/interop/native/std"
"github.com/nspcc-dev/neo-go/pkg/interop/storage"
)
type Post struct {
threadId string
id string
header string
text string
authorId string
hashTags []string
category string
likes int
dislikes int
}
const storeURLKey = "storeURL"
func _deploy(data interface{}, isUpdate bool) {
if isUpdate {
return
}
ctx := storage.GetContext()
storeURL := "https://codeberg.org/NaMe2te/Blog/src/branch/master/Posts/posts_storage.json"
storage.Put(ctx, storeURLKey, storeURL)
}
func NewPost(authorId string, text string, hashTags []string, threadId string) {
ctx := storage.GetContext()
post := Post{
text: text,
hashTags: hashTags,
authorId: authorId,
dislikes: 0,
Likes: 0,
category: "none",
threadId: threadId,
id: guuid.New(),
}
storage.Put(ctx, post.id, std.Serialize(post))
}
func GetPost(postId string) Post {
ctx := storage.GetReadOnlyContext()
data := storage.Get(ctx, postId)
if data == nil {
panic("player not found")
}
return std.Deserialize(data.([]byte)).(Post)
}
func RatePost(isLike bool, postId string) {
post := GetPost(postId)
if isLike {
post.likes++
} else {
post.dislikes++
}
storage.Put(ctx, post.id, std.Serialize(post))
}

0
Posts/posts_storage.json Normal file
View file

8
Users/user_contract.go Normal file
View file

@ -0,0 +1,8 @@
package Users
type User struct {
name string
surname string
login string
password string
}