use salvo::prelude::*;
use genies::core::RespVO;
use crate::application::service::SyncAppService;
use crate::domain::entity::UserRoleMapping;
pub fn internal_routes() -> Router {
Router::new()
.push(Router::with_path("/sync/user-roles").get(list_user_roles))
}
#[endpoint(tags("sync"), summary = "导出用户-角色映射")]
pub async fn list_user_roles() -> Json<RespVO<Vec<UserRoleMapping>>> {
match SyncAppService::list_active_user_roles().await {
Ok(data) => Json(RespVO::from(&data)),
Err(msg) => Json(RespVO::<Vec<UserRoleMapping>>::from_error_info("-1", &msg)),
}
}