package routers import ( "main/models" "main/utils" "net/http" "github.com/gorilla/mux" ) func ServersGet(w http.ResponseWriter, r *http.Request) { var listview models.ListView listview.Page = utils.ParamInt(r.URL.Query().Get("page"), 1) listview.PageSize = utils.ParamInt(r.URL.Query().Get("pageSize"), 10) listview.List = models.QueryServers(listview.Page, listview.PageSize) listview.Total = models.CountServers() listview.Next = listview.Page*listview.PageSize < listview.Total listview.WriteJSON(w) } func ServersPost(w http.ResponseWriter, r *http.Request) { var server models.Server server.Create() w.Header().Set("Content-Type", "application/json; charset=utf-8") w.Write(utils.ToJSON(server)) } func ServersItemGet(w http.ResponseWriter, r *http.Request) { server := models.Server{ID: utils.ParamInt(mux.Vars(r)["id"], 0)} server.Get() w.Header().Set("Content-Type", "application/json; charset=utf-8") w.Write(utils.ToJSON(server)) } func ServersItemPatch(w http.ResponseWriter, r *http.Request) { server := models.Server{ID: utils.ParamInt(mux.Vars(r)["id"], 0)} server.Get() server.Update() w.Header().Set("Content-Type", "application/json; charset=utf-8") w.Write(utils.ToJSON(server)) } func ServersItemDelete(w http.ResponseWriter, r *http.Request) { server := models.Server{ID: utils.ParamInt(mux.Vars(r)["id"], 0)} server.Get() server.Delete() w.Header().Set("Content-Type", "application/json; charset=utf-8") w.Write(utils.ToJSON(server)) }