-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathproject.go
128 lines (107 loc) · 3.54 KB
/
project.go
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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
package api
import (
"github.com/gin-gonic/gin"
"github.com/iot-master-contrib/scada/types"
"github.com/zgwit/iot-master/v3/pkg/curd"
)
// @Summary 查询工程数量
// @Schemes
// @Description 查询工程数量
// @Tags project
// @Param search body ParamSearch true "查询参数"
// @Accept json
// @Produce json
// @Success 200 {object} ReplyData[int64] 返回工程数量
// @Router /project/count [post]
func noopProjectCount() {}
// @Summary 查询工程
// @Schemes
// @Description 查询工程
// @Tags project
// @Param search body ParamSearch true "查询参数"
// @Accept json
// @Produce json
// @Success 200 {object} ReplyList[types.HmiProject] 返回工程信息
// @Router /project/search [post]
func noopProjectSearch() {}
// @Summary 查询工程
// @Schemes
// @Description 查询工程
// @Tags project
// @Param search query ParamList true "查询参数"
// @Accept json
// @Produce json
// @Success 200 {object} ReplyList[types.HmiProject] 返回工程信息
// @Router /project/list [get]
func noopProjectList() {}
// @Summary 创建工程
// @Schemes
// @Description 创建工程
// @Tags project
// @Param search body types.HmiProject true "工程信息"
// @Accept json
// @Produce json
// @Success 200 {object} ReplyData[types.HmiProject] 返回工程信息
// @Router /project/create [post]
func noopHmiProjectCreate() {}
// @Summary 获取工程
// @Schemes
// @Description 获取工程
// @Tags project
// @Param id path int true "工程ID"
// @Accept json
// @Produce json
// @Success 200 {object} ReplyData[types.HmiProject] 返回工程信息
// @Router /project/{id} [get]
func noopProjectGet() {}
// @Summary 修改工程
// @Schemes
// @Description 修改工程
// @Tags project
// @Param id path int true "工程ID"
// @Param project body types.HmiProject true "工程信息"
// @Accept json
// @Produce json
// @Success 200 {object} ReplyData[types.HmiProject] 返回工程信息
// @Router /project/{id} [post]
func noopProjectUpdate() {}
// @Summary 删除工程
// @Schemes
// @Description 删除工程
// @Tags project
// @Param id path int true "工程ID"
// @Accept json
// @Produce json
// @Success 200 {object} ReplyData[types.HmiProject] 返回工程信息
// @Router /project/{id}/delete [get]
func noopHmiProjectDelete() {}
// @Summary 导出工程
// @Schemes
// @Description 导出工程
// @Tags project
// @Accept json
// @Produce octet-stream
// @Router /project/export [get]
func noopHmiProjectExport() {}
// @Summary 导入工程
// @Schemes
// @Description 导入工程
// @Tags project
// @Param file formData file true "压缩包"
// @Accept mpfd
// @Produce json
// @Success 200 {object} ReplyData[int64] 返回工程数量
// @Router /project/import [post]
func noopHmiProjectImport() {}
func projectRouter(app *gin.RouterGroup) {
app.POST("/count", curd.ApiCount[types.HmiProject]())
app.POST("/search", curd.ApiSearch[types.HmiProject]("id", "name", "desc", "version", "updated", "created"))
app.GET("/list", curd.ApiList[types.HmiProject]("id", "name", "desc", "version", "updated", "created"))
app.POST("/create", curd.ApiCreateHook[types.HmiProject](curd.GenerateRandomId[types.HmiProject](12), nil))
app.GET("/:id", curd.ParseParamStringId, curd.ApiGet[types.HmiProject]())
app.POST("/:id", curd.ParseParamStringId, curd.ApiUpdateHook[types.HmiProject](nil, nil,
"id", "name", "desc", "width", "height", "pages"))
app.GET("/:id/delete", curd.ParseParamStringId, curd.ApiDelete[types.HmiProject]())
app.GET("/export", curd.ApiExport("hmi_project", "hmi_project"))
app.POST("/import", curd.ApiImport("hmi_project"))
}