|
|
|
@ -14,13 +14,19 @@ func metricViewGets(c *gin.Context) {
|
|
|
|
|
ginx.NewRender(c).Data(lst, err)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// body: name, configs
|
|
|
|
|
// body: name, configs, cate
|
|
|
|
|
func metricViewAdd(c *gin.Context) {
|
|
|
|
|
var f models.MetricView
|
|
|
|
|
ginx.BindJSON(c, &f)
|
|
|
|
|
|
|
|
|
|
me := c.MustGet("user").(*models.User)
|
|
|
|
|
if !me.IsAdmin() {
|
|
|
|
|
// 管理员可以选择当前这个视图是公开呢,还是私有,普通用户的话就只能是私有的
|
|
|
|
|
f.Cate = 1
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
f.Id = 0
|
|
|
|
|
f.CreateBy = c.MustGet("userid").(int64)
|
|
|
|
|
f.CreateBy = me.Id
|
|
|
|
|
|
|
|
|
|
ginx.Dangerous(f.Add())
|
|
|
|
|
|
|
|
|
@ -32,10 +38,15 @@ func metricViewDel(c *gin.Context) {
|
|
|
|
|
var f idsForm
|
|
|
|
|
ginx.BindJSON(c, &f)
|
|
|
|
|
|
|
|
|
|
ginx.NewRender(c).Message(models.MetricViewDel(f.Ids, c.MustGet("userid")))
|
|
|
|
|
me := c.MustGet("user").(*models.User)
|
|
|
|
|
if me.IsAdmin() {
|
|
|
|
|
ginx.NewRender(c).Message(models.MetricViewDel(f.Ids))
|
|
|
|
|
} else {
|
|
|
|
|
ginx.NewRender(c).Message(models.MetricViewDel(f.Ids, me.Id))
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// body: id, name, configs
|
|
|
|
|
// body: id, name, configs, cate
|
|
|
|
|
func metricViewPut(c *gin.Context) {
|
|
|
|
|
var f models.MetricView
|
|
|
|
|
ginx.BindJSON(c, &f)
|
|
|
|
@ -48,11 +59,16 @@ func metricViewPut(c *gin.Context) {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
userid := c.MustGet("userid").(int64)
|
|
|
|
|
if view.CreateBy != userid {
|
|
|
|
|
ginx.NewRender(c, http.StatusForbidden).Message("forbidden")
|
|
|
|
|
return
|
|
|
|
|
me := c.MustGet("user").(*models.User)
|
|
|
|
|
if !me.IsAdmin() {
|
|
|
|
|
f.Cate = 1
|
|
|
|
|
|
|
|
|
|
// 如果是普通用户,只能修改自己的
|
|
|
|
|
if view.CreateBy != me.Id {
|
|
|
|
|
ginx.NewRender(c, http.StatusForbidden).Message("forbidden")
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ginx.NewRender(c).Message(view.Update(f.Name, f.Configs))
|
|
|
|
|
ginx.NewRender(c).Message(view.Update(f.Name, f.Configs, f.Cate))
|
|
|
|
|
}
|
|
|
|
|