github.com/insionng/yougam@v0.0.0-20170714101924-2bc18d833463/routers/root/RReadUser.go (about) 1 package root 2 3 import ( 4 "fmt" 5 "github.com/insionng/makross" 6 7 "strconv" 8 "github.com/insionng/yougam/helper" 9 "github.com/insionng/yougam/models" 10 ) 11 12 func GetRReadUserHandler(self *makross.Context) error { 13 14 15 TplNames := "" 16 self.Set("catpage", "RReadUserHandler") 17 keyword := self.Param("keyword").String() 18 if keyword == "" { 19 keyword = self.FormValue("keyword") 20 } 21 22 switch uid := self.Param("uid").MustInt64(); { 23 //单独模式 24 case uid > 0: 25 { 26 TplNames = "root/create_user" 27 28 if usr, err := models.GetUser(uid); usr != nil && err == nil { 29 self.Set("user", *usr) 30 31 } else { 32 self.Flash.Error(err.Error()) 33 return self.Render(TplNames) 34 35 } 36 } 37 //列表模式 38 case uid <= 0: 39 { 40 TplNames = "root/user_table" 41 offset := self.Args("offset").MustInt64() 42 limit := self.Args("limit").MustInt64() 43 field := self.FormValue("field") 44 45 if limit == 0 { 46 limit = 1000 //默认限制显示最近1000条,需要显示全部请在提交请求的时候设置limit字段为-1 47 } 48 49 if field == "" { 50 field = "id" 51 } 52 53 if keyword != "" { 54 if usrs, err := models.SearchUser(keyword, int(offset), int(limit), field); err == nil && usrs != nil { 55 self.Set("users", *usrs) 56 self.Set("keyword", keyword) 57 } 58 59 } else { 60 61 if usrs, err := models.GetUsersOnHotness(int(offset), int(limit), field); err == nil && usrs != nil { 62 self.Set("users", *usrs) 63 } 64 } 65 66 } 67 } 68 69 return self.Render(TplNames) 70 71 } 72 73 func PostRReadUserHandler(self *makross.Context) error { 74 75 76 delrowids := self.FormValue("delrowids") 77 78 //删除用户 79 if len(delrowids) > 0 { 80 81 uid := int64(0) 82 role := int64(-1000) 83 iserr := false 84 delids := helper.Split(delrowids, ",") 85 for _, delid := range delids { 86 userid, _ := strconv.ParseInt(delid, 10, 0) 87 88 if e := models.DelUser(userid, uid, role); e != nil { 89 iserr = true 90 self.Flash.Error("删除 User id:" + strconv.FormatInt(userid, 10) + "出现错误 " + fmt.Sprintf("%s", e) + "!") 91 92 } else { 93 self.Flash.Success("删除 User id:" + strconv.FormatInt(userid, 10) + "成功!") 94 95 } 96 97 } 98 if iserr == false { 99 self.Flash.Success("删除 User id:" + delrowids + "成功!") 100 101 } 102 } else { 103 self.Flash.Error("非法 User id!") 104 105 } 106 107 return self.Redirect("/root/read/user/") 108 109 }