|
@@ -6,6 +6,8 @@ import (
|
|
|
"git.qianqiusoft.com/qianqiusoft/light-apiengine/models"
|
|
"git.qianqiusoft.com/qianqiusoft/light-apiengine/models"
|
|
|
sysmodel "git.qianqiusoft.com/qianqiusoft/light-apiengine/models"
|
|
sysmodel "git.qianqiusoft.com/qianqiusoft/light-apiengine/models"
|
|
|
sysutils "git.qianqiusoft.com/qianqiusoft/light-apiengine/utils"
|
|
sysutils "git.qianqiusoft.com/qianqiusoft/light-apiengine/utils"
|
|
|
|
|
+ "strconv"
|
|
|
|
|
+ "time"
|
|
|
)
|
|
)
|
|
|
|
|
|
|
|
// _Sidebar
|
|
// _Sidebar
|
|
@@ -36,13 +38,13 @@ func System_Sidebar(c *entitys.CtrlContext) {
|
|
|
// @Success 200 {object} Account
|
|
// @Success 200 {object} Account
|
|
|
// @Failure 403 :id is empty
|
|
// @Failure 403 :id is empty
|
|
|
func System_GetMenuTree(c *entitys.CtrlContext) {
|
|
func System_GetMenuTree(c *entitys.CtrlContext) {
|
|
|
- user := c.Ctx.Query("user")
|
|
|
|
|
|
|
+ paramMap_i_t := map[string]interface{}{"sort": "name"}
|
|
|
|
|
+ result, err := sysutils.TreeSearch(c.Db, "system", "get_menu_tree", "sys_menu", paramMap_i_t)
|
|
|
|
|
|
|
|
- ret := __none_func_system__(user)
|
|
|
|
|
- if ret {
|
|
|
|
|
- c.Ctx.JSON(200, sysmodel.SysReturn{200, "", nil})
|
|
|
|
|
|
|
+ if err == nil {
|
|
|
|
|
+ c.Ctx.JSON(200, sysmodel.SysReturn{200, "", result})
|
|
|
} else {
|
|
} else {
|
|
|
- c.Ctx.JSON(500, sysmodel.SysReturn{500, "", nil})
|
|
|
|
|
|
|
+ c.Ctx.JSON(500, sysmodel.SysReturn{500, err.Error(), nil})
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -52,12 +54,38 @@ func System_GetMenuTree(c *entitys.CtrlContext) {
|
|
|
// @Success 200 {object} Account
|
|
// @Success 200 {object} Account
|
|
|
// @Failure 403 :id is empty
|
|
// @Failure 403 :id is empty
|
|
|
func System_FindUserPage(c *entitys.CtrlContext) {
|
|
func System_FindUserPage(c *entitys.CtrlContext) {
|
|
|
|
|
+ page, _ := strconv.Atoi(c.Ctx.DefaultQuery("page", "1"))
|
|
|
|
|
+ rows, _ := strconv.Atoi(c.Ctx.DefaultQuery("rows", "10"))
|
|
|
|
|
+ name := c.Ctx.DefaultQuery("name", "")
|
|
|
|
|
+ login_id := c.Ctx.DefaultQuery("login_id", "")
|
|
|
|
|
|
|
|
- var page int64 = c.Ctx.GetInt64("page")
|
|
|
|
|
- var rows int64 = c.Ctx.GetInt64("rows")
|
|
|
|
|
-
|
|
|
|
|
- paramMap_i_t := map[string]interface{}{"page": page, "rows": rows}
|
|
|
|
|
|
|
+ paramMap_i_t := map[string]interface{}{"page": page, "rows": rows, "name": name, "login_id": login_id}
|
|
|
result, err := sysutils.PageSearch(c.Db, "system", "find_user_page", "sys_user", paramMap_i_t)
|
|
result, err := sysutils.PageSearch(c.Db, "system", "find_user_page", "sys_user", paramMap_i_t)
|
|
|
|
|
+
|
|
|
|
|
+ if err != nil {
|
|
|
|
|
+ c.Ctx.JSON(200, sysmodel.SysReturn{200, "", result})
|
|
|
|
|
+ return
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ type Role struct {
|
|
|
|
|
+ RoleName string `json:"role_name"`
|
|
|
|
|
+ UserRole string `json:"user_role"`
|
|
|
|
|
+ }
|
|
|
|
|
+ //获取用户角色
|
|
|
|
|
+ users := result.Content.([]map[string]interface{})
|
|
|
|
|
+ for i, user := range users {
|
|
|
|
|
+ roles := []Role{}
|
|
|
|
|
+ err := c.Db.SqlMapClient("get_roles_by_user_id", user["id"]).Find(&roles)
|
|
|
|
|
+ if err != nil {
|
|
|
|
|
+ fmt.Println("----", err.Error())
|
|
|
|
|
+ continue
|
|
|
|
|
+ }
|
|
|
|
|
+ users[i]["user_role"] = roles[0].UserRole
|
|
|
|
|
+ users[i]["role_name"] = roles[0].RoleName
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ result.Content = users
|
|
|
|
|
+
|
|
|
if err == nil {
|
|
if err == nil {
|
|
|
c.Ctx.JSON(200, sysmodel.SysReturn{200, "", result})
|
|
c.Ctx.JSON(200, sysmodel.SysReturn{200, "", result})
|
|
|
} else {
|
|
} else {
|
|
@@ -84,6 +112,26 @@ func System_GetOrgTree(c *entitys.CtrlContext) {
|
|
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+// _FindOrgPage
|
|
|
|
|
+// @Title _FindOrgPage
|
|
|
|
|
+// @Description 获取组织架构分页数
|
|
|
|
|
+// @Success 200 {object} Account
|
|
|
|
|
+// @Failure 403 :id is empty
|
|
|
|
|
+func System_FindOrgPage(c *entitys.CtrlContext) {
|
|
|
|
|
+
|
|
|
|
|
+ page, _ := strconv.Atoi(c.Ctx.DefaultQuery("page", "1"))
|
|
|
|
|
+ rows, _ := strconv.Atoi(c.Ctx.DefaultQuery("rows", "10"))
|
|
|
|
|
+
|
|
|
|
|
+ paramMap_i_t := map[string]interface{}{"page": page, "rows": rows}
|
|
|
|
|
+ result, err := sysutils.PageSearch(c.Db, "system", "find_org_page", "sys_org", paramMap_i_t)
|
|
|
|
|
+ if err == nil {
|
|
|
|
|
+ c.Ctx.JSON(200, sysmodel.SysReturn{200, "", result})
|
|
|
|
|
+ } else {
|
|
|
|
|
+ c.Ctx.JSON(500, sysmodel.SysReturn{500, err.Error(), nil})
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
// _AddUser
|
|
// _AddUser
|
|
|
// @Title _AddUser
|
|
// @Title _AddUser
|
|
|
// @Description 添加用户
|
|
// @Description 添加用户
|
|
@@ -94,16 +142,40 @@ func System_GetOrgTree(c *entitys.CtrlContext) {
|
|
|
// @Success 200 {object} Account
|
|
// @Success 200 {object} Account
|
|
|
// @Failure 403 :id is empty
|
|
// @Failure 403 :id is empty
|
|
|
func System_AddUser(c *entitys.CtrlContext) {
|
|
func System_AddUser(c *entitys.CtrlContext) {
|
|
|
- login_id := c.Ctx.Query("login_id")
|
|
|
|
|
- password := c.Ctx.Query("password")
|
|
|
|
|
- org_id := c.Ctx.Query("org_id")
|
|
|
|
|
- email := c.Ctx.Query("email")
|
|
|
|
|
-
|
|
|
|
|
- ret := __none_func_system__(login_id, password, org_id, email)
|
|
|
|
|
- if ret {
|
|
|
|
|
|
|
+ var user sysmodel.SysUser
|
|
|
|
|
+ c.Ctx.BindJSON(&user)
|
|
|
|
|
+ fmt.Println(user.LoginId, "-----add user-----", user.Password, " --- ", user.OrgId)
|
|
|
|
|
+ //查找login_id是否存在
|
|
|
|
|
+ oldUser := new(sysmodel.SysUser)
|
|
|
|
|
+ count, _ := c.Db.SQL("select * from sys_user").Where("login_id = ?", user.LoginId).Count(&oldUser)
|
|
|
|
|
+ if count > 1 {
|
|
|
|
|
+ if oldUser.DelFlag == 1 {
|
|
|
|
|
+ oldUser.DelFlag = 0
|
|
|
|
|
+ _, err := c.Db.Id("id").Cols("del_flag").Update(&oldUser)
|
|
|
|
|
+ if err != nil {
|
|
|
|
|
+ c.Ctx.JSON(200, sysmodel.SysReturn{500, "login_id exit, update err: " + err.Error(), nil})
|
|
|
|
|
+ }
|
|
|
|
|
+ return
|
|
|
|
|
+ } else {
|
|
|
|
|
+ c.Ctx.JSON(200, sysmodel.SysReturn{500, "login_id exit", nil})
|
|
|
|
|
+ return
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ user_id := c.Ctx.GetString("user_id")
|
|
|
|
|
+ user.Id = sysutils.NewUUID()
|
|
|
|
|
+ user.Name = user.LoginId
|
|
|
|
|
+ user.CreateTime = time.Now()
|
|
|
|
|
+ user.LastUpdateDate = time.Now()
|
|
|
|
|
+ user.CreateBy = user_id
|
|
|
|
|
+ user.LastUpdateBy = user_id
|
|
|
|
|
+ user.DelFlag = 0
|
|
|
|
|
+ user.Password = sysutils.HashPassword(user.Password, "")
|
|
|
|
|
+ _, err := c.Db.Insert(&user)
|
|
|
|
|
+ ret := __none_func_system__(user.LoginId, user.Password, user.OrgId, user.Email)
|
|
|
|
|
+ if ret && err == nil {
|
|
|
c.Ctx.JSON(200, sysmodel.SysReturn{200, "", nil})
|
|
c.Ctx.JSON(200, sysmodel.SysReturn{200, "", nil})
|
|
|
} else {
|
|
} else {
|
|
|
- c.Ctx.JSON(500, sysmodel.SysReturn{500, "", nil})
|
|
|
|
|
|
|
+ c.Ctx.JSON(200, sysmodel.SysReturn{500, err.Error(), nil})
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -114,13 +186,35 @@ func System_AddUser(c *entitys.CtrlContext) {
|
|
|
// @Success 200 {object} Account
|
|
// @Success 200 {object} Account
|
|
|
// @Failure 403 :id is empty
|
|
// @Failure 403 :id is empty
|
|
|
func System_DelUser(c *entitys.CtrlContext) {
|
|
func System_DelUser(c *entitys.CtrlContext) {
|
|
|
- id := c.Ctx.Query("id")
|
|
|
|
|
-
|
|
|
|
|
- ret := __none_func_system__(id)
|
|
|
|
|
|
|
+ type Param struct {
|
|
|
|
|
+ Id string `json:"id"`
|
|
|
|
|
+ }
|
|
|
|
|
+ var params []Param
|
|
|
|
|
+ c.Ctx.BindJSON(¶ms)
|
|
|
|
|
+ ids := []string{}
|
|
|
|
|
+ for _, param := range params {
|
|
|
|
|
+ ids = append(ids, param.Id)
|
|
|
|
|
+ }
|
|
|
|
|
+ session := c.Db.NewSession()
|
|
|
|
|
+ defer session.Close()
|
|
|
|
|
+ _, err := c.Db.Table(new(models.SysUser)).In("id", ids).Update(map[string]interface{}{"del_flag": 1})
|
|
|
|
|
+ if err != nil {
|
|
|
|
|
+ session.Rollback()
|
|
|
|
|
+ c.Ctx.JSON(200, sysmodel.SysReturn{500, err.Error(), nil})
|
|
|
|
|
+ return
|
|
|
|
|
+ }
|
|
|
|
|
+ _, err = c.Db.Table(new(models.SysUserRole)).In("user_id", ids).Update(map[string]interface{}{"del_flag": 1})
|
|
|
|
|
+ if err != nil {
|
|
|
|
|
+ session.Rollback()
|
|
|
|
|
+ c.Ctx.JSON(200, sysmodel.SysReturn{500, err.Error(), nil})
|
|
|
|
|
+ return
|
|
|
|
|
+ }
|
|
|
|
|
+ session.Commit()
|
|
|
|
|
+ ret := __none_func_system__()
|
|
|
if ret {
|
|
if ret {
|
|
|
c.Ctx.JSON(200, sysmodel.SysReturn{200, "", nil})
|
|
c.Ctx.JSON(200, sysmodel.SysReturn{200, "", nil})
|
|
|
} else {
|
|
} else {
|
|
|
- c.Ctx.JSON(500, sysmodel.SysReturn{500, "", nil})
|
|
|
|
|
|
|
+ c.Ctx.JSON(200, sysmodel.SysReturn{500, "", nil})
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -211,16 +305,37 @@ func System_UpdateRole(c *entitys.CtrlContext) {
|
|
|
// @Success 200 {object} Account
|
|
// @Success 200 {object} Account
|
|
|
// @Failure 403 :id is empty
|
|
// @Failure 403 :id is empty
|
|
|
func System_FindRolePage(c *entitys.CtrlContext) {
|
|
func System_FindRolePage(c *entitys.CtrlContext) {
|
|
|
- var paramObj0 models.GetPageInfo
|
|
|
|
|
- c.Ctx.BindJSON(¶mObj0)
|
|
|
|
|
- ret := __none_func_system__(paramObj0)
|
|
|
|
|
- if ret {
|
|
|
|
|
- c.Ctx.JSON(200, sysmodel.SysReturn{200, "", nil})
|
|
|
|
|
|
|
+ page, _ := strconv.Atoi(c.Ctx.DefaultQuery("page", "1"))
|
|
|
|
|
+ rows, _ := strconv.Atoi(c.Ctx.DefaultQuery("rows", "10"))
|
|
|
|
|
+
|
|
|
|
|
+ paramMap_i_t := map[string]interface{}{"page": page, "rows": rows}
|
|
|
|
|
+ result, err := sysutils.PageSearch(c.Db, "system", "find_role_page", "sys_role", paramMap_i_t)
|
|
|
|
|
+ if err == nil {
|
|
|
|
|
+ c.Ctx.JSON(200, sysmodel.SysReturn{200, "", result})
|
|
|
} else {
|
|
} else {
|
|
|
- c.Ctx.JSON(500, sysmodel.SysReturn{500, "", nil})
|
|
|
|
|
|
|
+ c.Ctx.JSON(500, sysmodel.SysReturn{500, err.Error(), nil})
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+// _FindMenuPage
|
|
|
|
|
+// @Title _FindMenuPage
|
|
|
|
|
+// @Description 获取角色分页数
|
|
|
|
|
+// @Success 200 {object} Account
|
|
|
|
|
+// @Failure 403 :id is empty
|
|
|
|
|
+func System_FindMenuPage(c *entitys.CtrlContext) {
|
|
|
|
|
+ page, _ := strconv.Atoi(c.Ctx.DefaultQuery("page", "1"))
|
|
|
|
|
+ rows, _ := strconv.Atoi(c.Ctx.DefaultQuery("rows", "10"))
|
|
|
|
|
+
|
|
|
|
|
+ paramMap_i_t := map[string]interface{}{"page": page, "rows": rows}
|
|
|
|
|
+ result, err := sysutils.PageSearch(c.Db, "system", "find_menu_page", "sys_menu", paramMap_i_t)
|
|
|
|
|
+ if err == nil {
|
|
|
|
|
+ c.Ctx.JSON(200, sysmodel.SysReturn{200, "", result})
|
|
|
|
|
+ } else {
|
|
|
|
|
+ c.Ctx.JSON(500, sysmodel.SysReturn{500, err.Error(), nil})
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
// _FindRoleMenu
|
|
// _FindRoleMenu
|
|
|
// @Title _FindRoleMenu
|
|
// @Title _FindRoleMenu
|
|
|
// @Description 查找角色权限
|
|
// @Description 查找角色权限
|