[couchdb] Widok dodawania nowej karty

This commit is contained in:
pawlaczyk 2019-01-09 07:26:21 +01:00
parent 2f58eb4542
commit 23166284d2
7 changed files with 85 additions and 16 deletions

View File

@ -1,3 +1,4 @@
########################## Testowanie manualne postmanem ########################
127.0.0.1:3000/api/addNewUserView
{
@ -6,6 +7,14 @@
}
#"[addNewUserView] Dodano uzytkownika do bazy"
{
"login": "C5",
"password": "C",
"test": "test",
"userDescription" : "jakis opis"
}
#"[addNewUserView] Dodano uzytkownika do bazy"
{
"login": "B2",
"password": "B",
@ -31,8 +40,8 @@
"login": "A"
}
#"[addNewUserView][Error] Nie podano hasła"
################################################################
################################################################
127.0.0.1:3000/api/updateUserPointsView
{
"login": "B2"
@ -70,3 +79,39 @@
"test": "test"
}
#false
################################################################
127.0.0.1:3000/api/addNewCardView
{
"id" : 1,
"text": "ALA MA KOTA"
}
#"[addNewCardView] Dodano nową kartę"
{
"id" : 1,
"IsQuestion" : true ,
"text": "ALA MA KOTA"
}
#"[addNewCardView] Dodano nową kartę"
{
"id" : 1,
"IsQuestion" : true ,
"Blank" :1 ,
"text": "ALA MA KOTA"
}
#"[addNewCardView] Dodano nową kartę"
{
"id" : 1,
"IsQuestion" : true ,
"Blank" :1 ,
"texst": "ALA MA KOTA"
}
"[updateUserPointsView][Error] Nie podano 'text'"

View File

@ -37,9 +37,8 @@ func connectCouchdb() couchdb.DatabaseService {
return db
}
func addNewCard(_isQuestion bool, _blank int, _text string) {
if !_isQuestion {
fmt.Printf("NIE")
func addNewCard(_isQuestion bool, _blank int, _text string) error {
if !_isQuestion { //jezeli nie jest karta pytanie to zero pol pustych
_blank = 0
}
@ -59,12 +58,15 @@ func addNewCard(_isQuestion bool, _blank int, _text string) {
result, err := db.Post(doc)
if err != nil {
panic(err)
return err
}
fmt.Println(reflect.TypeOf(result))
if err := db.Get(doc, result.ID); err != nil { // get id and current revision.
panic(err)
return err //nie matakiego dodane pliku - cos sie nie powiodlo
}
fmt.Printf(result.ID)
return nil
}

View File

@ -58,13 +58,7 @@ func addUser(_login string, _password string, _userDescription string) error {
func getAllUsers() []User {
//pobiera wszystkich uzytkownikow - do wysiwetlenie na front
/* --------------------- users -----------------------
userId int `json:"id"` // do pobierania z GET
login string `json:"login"`
password string `json:"password"`
userDescription string `json:"userDescription"`
points int `json:points`
*/
allUsers := []User{}
db, err := connectMysql()

Binary file not shown.

View File

@ -28,6 +28,7 @@ func main() {
api.POST("/addNewUserView", addNewUserView) // json z danymi nowego uzytkownika
api.POST("/loginUserView", loginUserView) //logowanie
api.POST("/updateUserPointsView", updateUserPointsView) // inkrementacja punktow
api.POST("/addNewCardView", addNewCardView) // [couchdb] dodawanie nowej karty
// Start and run the server
router.Run(":3000")

View File

@ -27,8 +27,8 @@ type User struct {
*/
type Card struct {
couchdb.Document
id int `json:"id" binding:"required"`
isQuestion bool `json:"typ"` //0 karta pytanie, 1 karta odpowiedź
blank int `json:"puste" binding:"required"` //ile kart odpowiedzi na pytanie
text string `json:"tekst" binding:"required"` // podłoga to luka
Id int `json:"id" binding:"required"`
IsQuestion bool `json:"isQuestion"` //0 karta pytanie, 1 karta odpowiedź
Blank int `json:"blank" binding:"required"` //ile kart odpowiedzi na pytanie
Text string `json:"text" binding:"required"` // podłoga to luka
}

View File

@ -141,3 +141,30 @@ func updateUserPointsView(c *gin.Context) {
c.JSON(http.StatusOK, "[updateUserPointsView] Dodano punkt")
}
func addNewCardView(c *gin.Context) {
//dodawanie karty na backendzie, odczytywanie wszystkich na froncie bo to nie sa zadne dane wrazliwe
//ale dodawanei tutaj bo i tak mozna to zrobic w tej samem domenie co couchdb
//PATRZ: documentation/couchdb/local.ini; documentation/couchdb/corsy_ustawienie.txt
c.Header("Content-Type", "application/json")
var newCard Card
c.Bind(&newCard)
_isQuestion := newCard.IsQuestion
_blank := newCard.Blank
_text := newCard.Text
if _text == "" {
c.JSON(http.StatusOK, "[updateUserPointsView][Error] Nie podano 'text'")
return
}
err := addNewCard(_isQuestion, _blank, _text)
if err != nil {
c.JSON(http.StatusOK, "[addNewCardView][Error] Nie można oddac nowej karty do [couchdb]")
return
}
c.JSON(http.StatusOK, "[addNewCardView] Dodano nową kartę")
}