Files
Aislo/docs/wiki/pages/B01_Dashboard/B01_backend.md
T
2026-07-15 18:33:33 +09:00

5.2 KiB

type, status, page_id, related_pages, last_updated, source
type status page_id related_pages last_updated source
page-backend stable B01_Dashboard
B01_Dashboard/B01_frontend
B01_Dashboard/B01_api
B01_Dashboard/B01_db
B01_Dashboard/B01_dependencies
2026-07-12 상위 프로젝트 B01_Dashboard 실 코드 직접 확인 (2026-07-12)

B01_Dashboard — Backend

라우터 권한 헬퍼

항목 위치 역할
require_company_admin() B01_Dashboard_Router.py:60 ADMIN 또는 SYSTEM_ADMIN 의존성 검사
_require_company_id() B01_Dashboard_Router.py:68 세션 회사 ID 필수 검사
_same_company() B01_Dashboard_Router.py:75 요청자와 대상의 회사 일치 검사
_can_edit_project() B01_Dashboard_Router.py:79 역할·회사 기준 프로젝트 수정 검사
_can_manage_automation() B01_Dashboard_Router.py:87 자동화 관리 권한 검사
_can_edit_user() B01_Dashboard_Router.py:93 사용자 수정 범위 검사

상세 권한 규칙은 ../../concepts/auth_rbac에서 1차 정의한다.

저장소 함수

항목 위치 역할
get_dashboard_me() / update_user_profile() B01_Dashboard_Repository.py:47,65 내 정보 조회·수정
get_workflow_states_for_projects() B01_Dashboard_Repository.py:83 여러 프로젝트의 workflow 상태 배치 조회
list_user_projects() / list_company_projects() / list_all_projects() B01_Dashboard_Repository.py:144,165,188 역할 범위별 프로젝트 목록 조회
get_project() / update_project() / soft_delete_project() B01_Dashboard_Repository.py:210,222,253 프로젝트 조회·수정·소프트 삭제
get_user_company() / search_companies() B01_Dashboard_Repository.py:273,293 소속 회사와 회사 검색
create_company() / create_system_company() B01_Dashboard_Repository.py:307,347 사용자·시스템 관리자 회사 생성
join_company() B01_Dashboard_Repository.py:378 회사 가입 신청과 사용자 상태 전이
list_company_members() / add_company_member() / remove_company_member() B01_Dashboard_Repository.py:401,416,439 회사 팀원 관리
list_join_requests() / process_join_request() B01_Dashboard_Repository.py:453,471 가입 신청 조회·승인·거절
list_all_companies() / list_all_users() B01_Dashboard_Repository.py:507,522 시스템 관리자 전체 목록
change_user_role() / get_user_admin_target() / update_admin_user() B01_Dashboard_Repository.py:538,547,562 사용자 역할·관리정보 변경
count_company_admins() / assign_user_company() B01_Dashboard_Repository.py:584,596 마지막 관리자 보호와 회사 배정
list_audit_logs() / get_system_resources() B01_Dashboard_Repository.py:609,624 감사 로그와 리소스 통계 조회
list_project_automations() / create_project_automation() B01_Dashboard_Repository.py:682,696 자동화 목록·생성
get_project_automation() / update_project_automation() B01_Dashboard_Repository.py:722,735 자동화 단건 조회·수정
delete_project_automation() / mark_project_automation_executed() B01_Dashboard_Repository.py:758,779 자동화 삭제·실행시각 기록

요청 스키마

항목 위치 역할
UpdateUserRequest B01_Dashboard_Schema.py:6 내 정보 수정 검증
CreateCompanyRequest B01_Dashboard_Schema.py:13 회사 생성 검증
JoinCompanyRequest / AddMemberRequest B01_Dashboard_Schema.py:20,24 회사 가입·팀원 추가 검증
ProcessJoinRequest / ChangeUserRoleRequest B01_Dashboard_Schema.py:28,33 가입 처리·역할 변경 검증
AssignCompanyRequest / UpdateProjectRequest B01_Dashboard_Schema.py:37,41 회사 배정·프로젝트 수정 검증
AdminUpdateUserRequest / AutomationRequest B01_Dashboard_Schema.py:51,57 관리자 사용자 수정·자동화 검증

기술부채

항목 위치 역할
레거시 상태 추론 B01_Dashboard_Repository.py:20 _stage_from_status()project_workflow_stages 미조회 시 보조값 생성
700줄 초과 B01_Dashboard_Repository.py:1 790줄로 프로젝트 단일 파일 제한 초과; 도메인별 저장소 분할 검토 필요