//当前位置 func (c *Ajax) Pos(menu *models.Menu) revel.Result { var id string = c.Params.Get("id") Id, err := strconv.ParseInt(id, 10, 64) if err != nil { revel.WARN.Println(err) } if UserID, ok := c.Session["UserID"]; ok { UserID, err := strconv.ParseInt(UserID, 10, 64) if err != nil { revel.WARN.Println(err) } //获取登陆用户信息 admin := new(models.Admin) admin_info := admin.GetById(UserID) menu_str := menu.GetPos(Id, admin_info) return c.RenderText(menu_str) } else { return c.RenderText("") } }
//左侧导航菜单 func (c *User) Left(menu *models.Menu) revel.Result { title := "左侧导航--GoCMS管理系统" var pid string = c.Params.Get("pid") if len(pid) > 0 { Pid, err := strconv.ParseInt(pid, 10, 64) if err != nil { revel.WARN.Println(err) } if UserID, ok := c.Session["UserID"]; ok { UserID, err := strconv.ParseInt(UserID, 10, 64) if err != nil { revel.WARN.Println(err) } admin := new(models.Admin) admin_info := admin.GetById(UserID) //获取左侧导航菜单 left_menu := menu.GetLeftMenuHtml(Pid, admin_info) c.Render(title, left_menu) } else { c.Render(title) } } else { //获取左侧导航菜单 //默认获取 首页 if UserID, ok := c.Session["UserID"]; ok { UserID, err := strconv.ParseInt(UserID, 10, 64) if err != nil { revel.WARN.Println(err) } admin := new(models.Admin) admin_info := admin.GetById(UserID) //获取左侧导航菜单 left_menu := menu.GetLeftMenuHtml(1, admin_info) c.Render(title, left_menu) } else { c.Render(title) } } return c.RenderTemplate("Public/left.html") }
//删除 func (c Menu) Delete(menu *models.Menu) revel.Result { var id string = c.Params.Get("id") data := make(map[string]string) if len(id) <= 0 { data["status"] = "0" data["message"] = "参数错误!" } Id, err := strconv.ParseInt(id, 10, 64) if err != nil { revel.WARN.Println(err) } if menu.DelByID(Id) { //****************************************** //管理员日志 if UserID, ok := c.Session["UserID"]; ok { UserID, err := strconv.ParseInt(UserID, 10, 64) if err != nil { revel.WARN.Println(err) } admin := new(models.Admin) admin_info := admin.GetById(UserID) logs := new(models.Logs) desc := "删除菜单|^|ID:" + id logs.Save(admin_info, c.Controller, desc) } //***************************************** data["status"] = "1" data["message"] = "删除成功!" } else { data["status"] = "0" data["message"] = "删除失败!" } return c.RenderJson(data) }
//首页 func (c Menu) Index(menu *models.Menu) revel.Result { title := "菜单管理--GoCMS管理系统" if UserID, ok := c.Session["UserID"]; ok { UserID, err := strconv.ParseInt(UserID, 10, 64) if err != nil { revel.WARN.Println(err) } admin := new(models.Admin) admin_info := admin.GetById(UserID) menus := menu.GetMenuHtml(admin_info) c.Render(title, menus) } else { c.Render(title) } return c.RenderTemplate("Setting/Menu/Index.html") }
//首页 func (c App) Index(admin *models.Admin) revel.Result { title := "首页--GoCMS管理系统" UserID := utils.GetSession("UserID", c.Session) if len(UserID) > 0 { UserID, err := strconv.ParseInt(UserID, 10, 64) if err != nil { revel.WARN.Println(err) } admin_info := admin.GetById(UserID) if admin_info.Id <= 0 { return c.Redirect("/User/Login") } //导航菜单 menu := new(models.Menu) c.RenderArgs["menus"] = menu.GetAdminMenu(0, admin_info) //登陆用户信息 c.RenderArgs["admin_info"] = admin_info //是否锁屏 if c.Session["lock_screen"] == "" || c.Session["lock_screen"] == "0" { c.RenderArgs["lock_screen"] = "0" } else { c.RenderArgs["lock_screen"] = "1" } } else { return c.Redirect("/User/Login/") } c.Render(title) return c.RenderTemplate("App/Index.html") }
//添加角色 func (c Role) Add(role *models.Role) revel.Result { if c.Request.Method == "GET" { title := "添加角色--GoCMS管理系统" if UserID, ok := c.Session["UserID"]; ok { UserID, err := strconv.ParseInt(UserID, 10, 64) if err != nil { revel.WARN.Println(err) } admin := new(models.Admin) admin_info := admin.GetById(UserID) menu := new(models.Menu) tree := menu.GetMenuTree("", admin_info) c.Render(title, tree) } else { c.Render(title) } return c.RenderTemplate("Setting/Role/Add.html") } else { var rolename string = c.Params.Get("rolename") if len(rolename) > 0 { role.Rolename = rolename } else { c.Flash.Error("请输入角色名称!") c.Flash.Out["url"] = "/Role/Add/" return c.Redirect("/Message/") } var desc string = c.Params.Get("desc") if len(desc) > 0 { role.Desc = desc } else { c.Flash.Error("请输入角色描述!") c.Flash.Out["url"] = "/Role/Add/" return c.Redirect("/Message/") } var data string = c.Params.Get("data") if len(data) > 0 { role.Data = data } else { c.Flash.Error("请选择所属权限!") c.Flash.Out["url"] = "/Role/Add/" return c.Redirect("/Message/") } var status string = c.Params.Get("status") if len(status) > 0 { Status, err := strconv.ParseInt(status, 10, 64) if err != nil { revel.WARN.Println(err) } role.Status = Status } else { c.Flash.Error("请选择是否启用!") c.Flash.Out["url"] = "/Role/Add/" return c.Redirect("/Message/") } if role.Save() { //****************************************** //管理员日志 if UserID, ok := c.Session["UserID"]; ok { UserID, err := strconv.ParseInt(UserID, 10, 64) if err != nil { revel.WARN.Println(err) } admin := new(models.Admin) admin_info := admin.GetById(UserID) logs := new(models.Logs) desc := "添加角色:" + rolename + "|^|角色管理" logs.Save(admin_info, c.Controller, desc) } //***************************************** c.Flash.Success("添加角色成功") c.Flash.Out["url"] = "/Role/" return c.Redirect("/Message/") } else { c.Flash.Error("添加角色失败") c.Flash.Out["url"] = "/Role/Add/" return c.Redirect("/Message/") } } }
//添加菜单 func (c Menu) Add(menu *models.Menu) revel.Result { if c.Request.Method == "GET" { title := "添加菜单--GoCMS管理系统" var id string = c.Params.Get("id") if len(id) > 0 { Id, err := strconv.ParseInt(id, 10, 64) if err != nil { revel.WARN.Println(err) } if UserID, ok := c.Session["UserID"]; ok { UserID, err := strconv.ParseInt(UserID, 10, 64) if err != nil { revel.WARN.Println(err) } admin := new(models.Admin) admin_info := admin.GetById(UserID) //返回菜单Option的HTML menus := menu.GetMenuOptionHtml(Id, admin_info) c.Render(title, menus, Id) } else { c.Render(title, Id) } } else { if UserID, ok := c.Session["UserID"]; ok { UserID, err := strconv.ParseInt(UserID, 10, 64) if err != nil { revel.WARN.Println(err) } admin := new(models.Admin) admin_info := admin.GetById(UserID) //返回菜单Option的HTML menus := menu.GetMenuOptionHtml(0, admin_info) c.Render(title, menus) } else { c.Render(title) } } return c.RenderTemplate("Setting/Menu/Add.html") } else { var pid string = c.Params.Get("pid") if len(pid) > 0 { Pid, err := strconv.ParseInt(pid, 10, 64) if err != nil { revel.WARN.Println(err) } menu.Pid = Pid } else { c.Flash.Error("请选择父菜单!") c.Flash.Out["url"] = "/Menu/Add/" return c.Redirect("/Message/") } var name string = c.Params.Get("name") if len(name) > 0 { menu.Name = name } else { c.Flash.Error("请输入中文语言名称!") c.Flash.Out["url"] = "/Menu/Add/" return c.Redirect("/Message/") } var enname string = c.Params.Get("enname") if len(enname) > 0 { menu.Enname = enname } else { c.Flash.Error("请输入英文语言名称!") c.Flash.Out["url"] = "/Menu/Add/" return c.Redirect("/Message/") } var url string = c.Params.Get("url") if len(url) > 0 { menu.Url = url } else { c.Flash.Error("请输入菜单地址!") c.Flash.Out["url"] = "/Menu/Add/" return c.Redirect("/Message/") } var order string = c.Params.Get("order") if len(order) > 0 { Order, err := strconv.ParseInt(order, 10, 64) if err != nil { revel.WARN.Println(err) } menu.Order = Order } else { c.Flash.Error("请输入排序!") c.Flash.Out["url"] = "/Menu/Add/" return c.Redirect("/Message/") } var data string = c.Params.Get("data") menu.Data = data var display string = c.Params.Get("display") if len(display) > 0 { Display, err := strconv.ParseInt(display, 10, 64) if err != nil { revel.WARN.Println(err) } menu.Display = Display } else { c.Flash.Error("请选择是否显示菜单!") c.Flash.Out["url"] = "/Menu/Add/" return c.Redirect("/Message/") } if menu.Save() { //****************************************** //管理员日志 if UserID, ok := c.Session["UserID"]; ok { UserID, err := strconv.ParseInt(UserID, 10, 64) if err != nil { revel.WARN.Println(err) } admin := new(models.Admin) admin_info := admin.GetById(UserID) logs := new(models.Logs) desc := "添加菜单:" + name + "|^|菜单管理" logs.Save(admin_info, c.Controller, desc) } //***************************************** c.Flash.Success("添加菜单成功") c.Flash.Out["url"] = "/Menu/" return c.Redirect("/Message/") } else { c.Flash.Error("添加菜单失败") c.Flash.Out["url"] = "/Menu/Add/" return c.Redirect("/Message/") } } }