@echo off
REM Crear estructura de directorios principal
mkdir document_manager
cd document_manager

REM Archivos principales
type nul > app.py
type nul > config.py
type nul > requirements.txt
type nul > README.md

REM Estructura de módulos
mkdir services
mkdir utils
mkdir middleware
mkdir routes
mkdir static\css
mkdir static\js\lib
mkdir static\img\icons
mkdir static\img\file-types
mkdir templates\auth
mkdir templates\projects
mkdir templates\documents
mkdir templates\schemas
mkdir templates\users
mkdir templates\admin
mkdir tests
mkdir storage\logs
mkdir storage\schemas
mkdir storage\users
mkdir storage\filetypes
mkdir storage\projects

REM Archivos vacíos para iniciar los módulos
type nul > services\__init__.py
type nul > services\auth_service.py
type nul > services\user_service.py
type nul > services\project_service.py
type nul > services\document_service.py
type nul > services\schema_service.py
type nul > services\export_service.py
type nul > services\index_service.py

type nul > utils\__init__.py
type nul > utils\file_utils.py
type nul > utils\security.py
type nul > utils\validators.py
type nul > utils\logger.py

type nul > middleware\__init__.py
type nul > middleware\auth_middleware.py
type nul > middleware\permission_check.py

type nul > routes\__init__.py
type nul > routes\auth_routes.py
type nul > routes\user_routes.py
type nul > routes\project_routes.py
type nul > routes\document_routes.py
type nul > routes\schema_routes.py
type nul > routes\admin_routes.py

REM Crear archivos estáticos básicos
type nul > static\css\bootstrap.min.css
type nul > static\css\main.css
type nul > static\css\login.css
type nul > static\css\projects.css
type nul > static\css\documents.css

type nul > static\js\auth.js
type nul > static\js\projects.js
type nul > static\js\documents.js
type nul > static\js\schemas.js
type nul > static\js\users.js
type nul > static\js\admin.js

REM Crear plantillas HTML básicas
type nul > templates\base.html
type nul > templates\error.html

type nul > templates\auth\login.html
type nul > templates\auth\reset_password.html

type nul > templates\projects\list.html
type nul > templates\projects\create.html
type nul > templates\projects\edit.html
type nul > templates\projects\view.html

type nul > templates\documents\list.html
type nul > templates\documents\upload.html
type nul > templates\documents\versions.html
type nul > templates\documents\download.html

type nul > templates\schemas\list.html
type nul > templates\schemas\create.html
type nul > templates\schemas\edit.html

type nul > templates\users\list.html
type nul > templates\users\create.html
type nul > templates\users\edit.html

type nul > templates\admin\dashboard.html
type nul > templates\admin\filetypes.html
type nul > templates\admin\system.html

REM Crear archivos de prueba
type nul > tests\__init__.py
type nul > tests\conftest.py
type nul > tests\test_auth.py
type nul > tests\test_projects.py
type nul > tests\test_documents.py
type nul > tests\test_schemas.py
type nul > tests\json_reporter.py

REM Crear archivos de almacenamiento
type nul > storage\indices.json
type nul > storage\logs\access.log
type nul > storage\logs\error.log
type nul > storage\logs\system.log
type nul > storage\schemas\schema.json
type nul > storage\users\users.json
type nul > storage\filetypes\filetypes.json

echo Estructura de directorios y archivos creada con éxito.
pause
