Hexagonal Architecture 기반의 WebPos 전체 시스템입니다.
cd backend
# 환경 설정
cp .env.example .env
# .env 파일 수정 필요
# 의존성이 있는 서비스들 실행 (Docker Compose)
docker-compose up -d
# 애플리케이션 실행
./gradlew bootRun
cd frontend
# 의존성 설치
npm install
# 개발 서버 실행
npm run dev
슈퍼어드민 시스템
영업정보시스템
POS 시스템
| 역할 | 설명 | 기본 권한 | 
|---|---|---|
| SUPER_ADMIN | 최고 관리자 | 모든 시스템 접근 | 
| SYSTEM_ADMIN | 시스템 관리자 | 영업정보, POS 시스템 | 
| HQ_MANAGER | 본사 관리자 | 영업정보시스템 | 
| STORE_MANAGER | 매장 관리자 | POS 시스템 | 
| AREA_MANAGER | 지역 관리자 | 담당 지역 매장들 | 
| USER | 일반 사용자 | POS 판매 기능만 | 
주요 테이블:
users - 사용자 정보 (V2 - 향상된 보안 기능)menus - 메뉴 구조permissions - 권한 매핑stores - 매장 정보 (체인점/개인매장 지원)pos_systems - POS 시스템headquarters - 본사 정보user_login_history - 로그인 이력audit_logs - 감사 로그POST /api/v1/auth/login - 로그인POST /api/v1/auth/register - 회원가입GET /api/v1/auth/me - 사용자 정보 조회GET /api/v1/admin/users - 사용자 목록POST /api/v1/admin/users - 사용자 생성PUT /api/v1/admin/users/{id} - 사용자 수정DELETE /api/v1/admin/users/{id} - 사용자 삭제GET /api/v1/permissions/my-menus - 사용자 메뉴 권한GET /api/v1/admin/permissions/menus - 메뉴 목록POST /api/v1/admin/permissions/grant - 권한 부여DELETE /api/v1/admin/permissions/revoke - 권한 회수GET /api/v1/business/stores - 매장 목록POST /api/v1/business/stores - 매장 생성PUT /api/v1/business/stores/{id} - 매장 수정DELETE /api/v1/business/stores/{id} - 매장 삭제GET /api/v1/business/stores/regions - 지역 목록GET /api/v1/business/stores/headquarters - 본사 목록GET /api/v1/business/pos - POS 목록POST /api/v1/business/pos - POS 생성PUT /api/v1/business/pos/{id} - POS 수정DELETE /api/v1/business/pos/{id} - POS 삭제POST /api/v1/business/pos/{id}/maintenance - POS 점검 시작POST /api/v1/business/pos/{id}/complete-maintenance - POS 점검 완료# 전체 시스템 실행
docker-compose up -d
# 백엔드만 실행
cd backend
docker build -t webpos-backend .
docker run -p 8080:8080 --env-file .env webpos-backend
# 프론트엔드 빌드
cd frontend
npm run build
SPRING_PROFILES_ACTIVE=localSPRING_PROFILES_ACTIVE=devSPRING_PROFILES_ACTIVE=prodMIT License
git checkout -b feature/AmazingFeature)git commit -m 'Add some AmazingFeature')git push origin feature/AmazingFeature)질문이나 문제가 있으시면 이슈를 생성해주세요.
아이디: admin
비밀번호: admin123
역할: SUPER_ADMIN