package protocol

//RequestRoleAdd 添加角色信息
type RequestRoleAdd struct {
	CompanyID int64  `json:"company_id"`
	Pid       int64  `json:"pid"`
	Name      string `json:"name"`
	Types     int8   `json:"types"`
	// Descript  string `json:"descript"`
}

//RequestRoleDelete 删除一个角色数据
type RequestRoleDelete struct {
	CompanyID int64 `json:"company_id"`
	RoleID    int64 `json:"id"`
}

//RequestRoleEdit 编辑角色信息入参
type RequestRoleEdit struct {
	ID int64 `json:"id"`
	RequestRoleAdd
}

//RequestRoleOne 获取一个角色数据
// type RequestRoleOne struct {
// 	CompanyID int `json:"company_id"`
// 	RoleID    int `json:"role_id"`
// }

//ResponseRoleInfo 响应数据
type ResponseRoleInfo struct {
	ID    int64  `json:"id"`
	Name  string `json:"name"`
	Types int8   `json:"type"`
}

//RequestRoleList 分页获取角色列表
type RequestRoleList struct {
	RequestPageInfo
	CompanyId int    `json:"company_id"`
	Keyword   string `json:"keyword"` // 搜索关键字
}

type RoleInfo struct {
	Id        int64  `json:"id"`
	Name      string `json:"name"`
	IsDefault int8   `json:"is_default"`
}

type RoleGroup struct {
	RoleInfo
	Roles []RoleInfo `json:"roles"`
}

type RequestRolePermission struct {
	CompanyID    int   `json:"company_id"`
	RoleID       int   `json:"role_id"`
	PermissionID []int `json:"permission_id"`
}

type PermissionItem struct {
	Id           int64  `json:"id"`
	Name         string `json:"name"`
	Icon         string `json:"icon"`
	ParentId     int64  `json:"parent_id"`
	SeniorStatus int8   `json:"senior_status"`
	Sort         int    `json:"sort"`
	Code         string `json:"code"`
}

type ResponsePermissionList struct {
	Lists []PermissionItem `json:"lists"`
}

//
type ResponseRoleMenus struct {
	RoleId   int64   `json:"role_id"`
	RoleName string  `json:"role_name"`
	MenuId   []int64 `json:"menu_ids"`
}

type ResponseRolePermission struct {
}