ldap-1-backend/controller/group_controller.go

107 lines
2.7 KiB
Go

package controller
import (
"github.com/eryajf/go-ldap-admin/logic"
"github.com/eryajf/go-ldap-admin/model/request"
"github.com/gin-gonic/gin"
)
type GroupController struct{}
// List 记录列表
func (m *GroupController) List(c *gin.Context) {
req := new(request.GroupListReq)
Run(c, req, func() (interface{}, interface{}) {
return logic.Group.List(c, req)
})
}
// UserInGroup 在分组内的用户
func (m *GroupController) UserInGroup(c *gin.Context) {
req := new(request.UserInGroupReq)
Run(c, req, func() (interface{}, interface{}) {
return logic.Group.UserInGroup(c, req)
})
}
// UserNoInGroup 不在分组的用户
func (m *GroupController) UserNoInGroup(c *gin.Context) {
req := new(request.UserNoInGroupReq)
Run(c, req, func() (interface{}, interface{}) {
return logic.Group.UserNoInGroup(c, req)
})
}
// GetTree 接口树
func (m *GroupController) GetTree(c *gin.Context) {
req := new(request.GroupListReq)
Run(c, req, func() (interface{}, interface{}) {
return logic.Group.GetTree(c, req)
})
}
// Add 新建记录
func (m *GroupController) Add(c *gin.Context) {
req := new(request.GroupAddReq)
Run(c, req, func() (interface{}, interface{}) {
return logic.Group.Add(c, req)
})
}
// Update 更新记录
func (m *GroupController) Update(c *gin.Context) {
req := new(request.GroupUpdateReq)
Run(c, req, func() (interface{}, interface{}) {
return logic.Group.Update(c, req)
})
}
// Delete 删除记录
func (m *GroupController) Delete(c *gin.Context) {
req := new(request.GroupDeleteReq)
Run(c, req, func() (interface{}, interface{}) {
return logic.Group.Delete(c, req)
})
}
// AddUser 添加用户
func (m *GroupController) AddUser(c *gin.Context) {
req := new(request.GroupAddUserReq)
Run(c, req, func() (interface{}, interface{}) {
return logic.Group.AddUser(c, req)
})
}
// RemoveUser 移除用户
func (m *GroupController) RemoveUser(c *gin.Context) {
req := new(request.GroupRemoveUserReq)
Run(c, req, func() (interface{}, interface{}) {
return logic.Group.RemoveUser(c, req)
})
}
//同步钉钉部门信息
func (m *GroupController) SyncDingTalkDepts(c *gin.Context) {
req := new(request.SyncDingTalkDeptsReq)
Run(c, req, func() (interface{}, interface{}) {
return logic.DingTalk.SyncDingTalkDepts(c, req)
})
}
//同步企业微信部门信息
func (m *GroupController) SyncWeComDepts(c *gin.Context) {
req := new(request.SyncWeComDeptsReq)
Run(c, req, func() (interface{}, interface{}) {
return logic.WeCom.SyncWeComDepts(c, req)
})
}
//同步飞书部门信息
func (m *GroupController) SyncFeiShuDepts(c *gin.Context) {
req := new(request.SyncFeiShuDeptsReq)
Run(c, req, func() (interface{}, interface{}) {
return logic.FeiShu.SyncFeiShuDepts(c, req)
})
}