You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

106 lines
2.6 KiB

syntax = "v1"
// ========== 机构管理类型定义 ==========
type (
OrgInfo {
Id int64 `json:"id"`
ParentId int64 `json:"parentId"`
Name string `json:"name"`
Code string `json:"code"`
Leader string `json:"leader"`
Phone string `json:"phone"`
Email string `json:"email"`
SortOrder int `json:"sortOrder"`
Status int `json:"status"`
MemberCount int64 `json:"memberCount"`
Children []OrgInfo `json:"children"`
CreatedAt string `json:"createdAt"`
UpdatedAt string `json:"updatedAt"`
}
OrgListResponse {
List []OrgInfo `json:"list"`
}
CreateOrgRequest {
ParentId int64 `json:"parentId,optional"`
Name string `json:"name" validate:"required"`
Code string `json:"code" validate:"required"`
Leader string `json:"leader,optional"`
Phone string `json:"phone,optional"`
Email string `json:"email,optional"`
SortOrder int `json:"sortOrder,optional"`
}
UpdateOrgRequest {
Id int64 `path:"id"`
ParentId *int64 `json:"parentId,optional"`
Name string `json:"name,optional"`
Code string `json:"code,optional"`
Leader string `json:"leader,optional"`
Phone string `json:"phone,optional"`
Email string `json:"email,optional"`
SortOrder *int `json:"sortOrder,optional"`
Status *int `json:"status,optional"`
}
DeleteOrgRequest {
Id int64 `path:"id"`
}
OrgMember {
UserId int64 `json:"userId"`
Username string `json:"username"`
Email string `json:"email"`
Phone string `json:"phone"`
RoleId int64 `json:"roleId"`
RoleName string `json:"roleName"`
RoleCode string `json:"roleCode"`
CreatedAt string `json:"createdAt"`
}
GetOrgMembersRequest {
Id int64 `path:"id"`
}
OrgMembersResponse {
List []OrgMember `json:"list"`
}
AddOrgMemberRequest {
Id int64 `path:"id"`
UserId int64 `json:"userId" validate:"required"`
RoleId int64 `json:"roleId" validate:"required"`
}
UpdateOrgMemberRequest {
Id int64 `path:"id"`
UserId int64 `path:"userId"`
RoleId int64 `json:"roleId" validate:"required"`
}
RemoveOrgMemberRequest {
Id int64 `path:"id"`
UserId int64 `path:"userId"`
}
UserOrgInfo {
OrgId int64 `json:"orgId"`
OrgName string `json:"orgName"`
RoleId int64 `json:"roleId"`
RoleName string `json:"roleName"`
RoleCode string `json:"roleCode"`
}
UserOrgsResponse {
List []UserOrgInfo `json:"list"`
}
SwitchOrgRequest {
OrgId int64 `json:"orgId" validate:"required"`
}
SwitchOrgResponse {
Token string `json:"token"`
}
)