|
1 | 1 | package index_management
|
2 | 2 |
|
3 | 3 | import (
|
4 |
| - "infini.sh/console/core" |
5 |
| - "infini.sh/framework/core/elastic" |
6 |
| - "infini.sh/framework/core/global" |
7 |
| - "net/http" |
8 |
| - "strconv" |
9 |
| - "strings" |
10 |
| - "time" |
11 |
| - |
12 | 4 | "infini.sh/console/config"
|
13 |
| - model2 "infini.sh/console/model" |
14 |
| - httprouter "infini.sh/framework/core/api/router" |
15 |
| - "infini.sh/framework/core/orm" |
16 |
| - "infini.sh/framework/core/util" |
| 5 | + "infini.sh/console/core" |
17 | 6 | )
|
18 | 7 |
|
19 | 8 | type APIHandler struct {
|
20 | 9 | Config *config.AppConfig
|
21 | 10 | core.Handler
|
22 | 11 | }
|
23 | 12 |
|
24 |
| -func (handler APIHandler) GetDictListAction(w http.ResponseWriter, req *http.Request, ps httprouter.Params) { |
25 |
| - var ( |
26 |
| - fromStr = handler.GetParameterOrDefault(req, "from", "0") |
27 |
| - sizeStr = handler.GetParameterOrDefault(req, "size", "6") |
28 |
| - tag = handler.GetParameterOrDefault(req, "tags", "") |
29 |
| - name = handler.GetParameterOrDefault(req, "name", "") |
30 |
| - from, _ = strconv.Atoi(fromStr) |
31 |
| - size, _ = strconv.Atoi(sizeStr) |
32 |
| - tags = strings.Split(tag, ",") |
33 |
| - resp = newResponseBody() |
34 |
| - ) |
35 |
| - if len(tags) > 3 { |
36 |
| - tags = tags[0:3] |
37 |
| - } |
38 |
| - rel, err := model2.GetDictList(from, size, name, tags, global.MustLookupString(elastic.GlobalSystemElasticsearchID)) |
39 |
| - if err != nil { |
40 |
| - resp["error"] = err |
41 |
| - resp["status"] = false |
42 |
| - handler.WriteJSON(w, resp, http.StatusOK) |
43 |
| - return |
44 |
| - } |
45 |
| - resp["payload"] = rel |
46 |
| - handler.WriteJSON(w, resp, http.StatusOK) |
47 |
| -} |
48 |
| - |
49 |
| -func (handler APIHandler) CreateDictItemAction(w http.ResponseWriter, req *http.Request, ps httprouter.Params) { |
50 |
| - id := ps.ByName("id") |
51 |
| - if strings.Trim(id, "/") == "" { |
52 |
| - id = util.GetUUID() |
53 |
| - } |
54 |
| - createdAt := time.Now() |
55 |
| - |
56 |
| - resp := newResponseBody() |
57 |
| - dict := model2.Dict{ |
58 |
| - ID: id, |
59 |
| - CreatedAt: createdAt, |
60 |
| - UpdatedAt: createdAt, |
61 |
| - } |
62 |
| - err := handler.DecodeJSON(req, &dict) |
63 |
| - if err != nil { |
64 |
| - resp["status"] = false |
65 |
| - resp["error"] = err |
66 |
| - handler.WriteJSON(w, resp, http.StatusOK) |
67 |
| - return |
68 |
| - } |
69 |
| - |
70 |
| - err = orm.Create(nil, &dict) |
71 |
| - if err != nil { |
72 |
| - resp["status"] = false |
73 |
| - resp["error"] = err |
74 |
| - handler.WriteJSON(w, resp, http.StatusOK) |
75 |
| - return |
76 |
| - } |
77 |
| - resp["payload"] = dict |
78 |
| - handler.WriteJSON(w, resp, http.StatusOK) |
79 |
| -} |
80 |
| - |
81 |
| -func (handler APIHandler) DeleteDictItemAction(w http.ResponseWriter, req *http.Request, ps httprouter.Params) { |
82 |
| - id := ps.ByName("id") |
83 |
| - dict := model2.Dict{} |
84 |
| - dict.ID = id |
85 |
| - resp := newResponseBody() |
86 |
| - |
87 |
| - err := orm.Delete(nil, dict) |
88 |
| - if err != nil { |
89 |
| - resp["status"] = false |
90 |
| - resp["error"] = err |
91 |
| - handler.WriteJSON(w, resp, http.StatusOK) |
92 |
| - return |
93 |
| - } |
94 |
| - handler.WriteJSON(w, resp, http.StatusOK) |
95 |
| -} |
96 |
| - |
97 |
| -func (handler APIHandler) UpdateDictItemAction(w http.ResponseWriter, req *http.Request, ps httprouter.Params) { |
98 |
| - dict := model2.Dict{} |
99 |
| - err := handler.DecodeJSON(req, &dict) |
100 |
| - resp := newResponseBody() |
101 |
| - if err != nil { |
102 |
| - resp["status"] = false |
103 |
| - resp["error"] = err |
104 |
| - handler.WriteJSON(w, resp, http.StatusOK) |
105 |
| - return |
106 |
| - |
107 |
| - } |
108 |
| - dict.UpdatedAt = time.Now() |
109 |
| - |
110 |
| - err = orm.Update(nil, dict) |
111 |
| - if err != nil { |
112 |
| - resp["status"] = false |
113 |
| - resp["error"] = err |
114 |
| - handler.WriteJSON(w, resp, http.StatusOK) |
115 |
| - return |
116 |
| - } |
117 |
| - resp["payload"] = dict |
118 |
| - handler.WriteJSON(w, resp, http.StatusOK) |
119 |
| - |
| 13 | +func newResponseBody() map[string]interface{} { |
| 14 | + return map[string]interface{}{} |
120 | 15 | }
|
0 commit comments