liuxiaolong
2020-06-29 167f00c02df35f19d689e60db3d30ebf035ab629
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
package controllers
 
import (
    "car-service/extend/code"
    "car-service/models"
    "car-service/service"
    "github.com/astaxie/beego"
    "net/http"
)
 
// Operations about Users
type UserController struct {
    beego.Controller
}
 
 
// @Title Update
// @Description update the user
// @Param    uid        path     string    true        "The uid you want to update"
// @Param    body        body     models.User    true        "body for user content"
// @Success 200 {object} models.User
// @Failure 403 {string} json ":uid is not int"
// @router /:uid [put]
func (u *UserController) Put() {
    uid := u.GetString(":uid")
    if uid != "" {
        var user models.User
        u.Data["json"] = user
 
    }
    u.ServeJSON()
}
 
// @Title Delete
// @Description delete the user
// @Param    uid        path     string    true        "The uid you want to delete"
// @Success 200 {string} delete success!
// @Failure 403 {string} json  "uid is empty"
// @router /:uid [delete]
func (u *UserController) Delete() {
    uid := u.GetString(":uid")
    var user = models.User{
        Id: uid,
    }
 
    i, err := user.DeleteById()
    if err ==nil && i >0 {
        u.Data["json"] = "delete success!"
    }
    u.ServeJSON()
}
 
// @Title Login
// @Description Logs user into the system
// @Param    username        query     string    true        "The username for login"
// @Param    password        query     string    true        "The password for login"
// @Success 200 {string} login success
// @Failure 403 {string} json  "user not exist"
// @router /login [get]
func (u *UserController) Login() {
    phoneNum := u.GetString("phoneNum")
    cod := u.GetString("code")
    var sv service.UserService
    b, info, e := sv.Login(phoneNum, cod)
    resp := code.Code{}
    if b {
        resp.Success= true
        resp.Status= http.StatusOK
        resp.Data= *info
    } else {
        resp.Success= false
        resp.Status= http.StatusBadRequest
        resp.Data= e.Error()
    }
    u.Data["json"] = resp
    u.ServeJSON()
}
 
// @Title logout
// @Description Logs out current logged in user session
// @Success 200 {string} logout success
// @router /logout [get]
func (u *UserController) Logout() {
    resp := code.Code{}
    resp.Success = true
    resp.Status = http.StatusOK
    resp.Data = "退出成功"
    u.Data["json"] = resp
    u.ServeJSON()
}