https://github.com/iliatrofimov/documents-frontend
Система управления документацией информационных систем
https://github.com/iliatrofimov/documents-frontend
angular13 typescript
Last synced: about 1 month ago
JSON representation
Система управления документацией информационных систем
- Host: GitHub
- URL: https://github.com/iliatrofimov/documents-frontend
- Owner: IliaTrofimov
- Created: 2022-01-06T10:26:10.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2022-07-20T08:58:10.000Z (over 3 years ago)
- Last Synced: 2025-04-01T07:22:08.730Z (10 months ago)
- Topics: angular13, typescript
- Language: TypeScript
- Homepage:
- Size: 712 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Documents-frontend
Система управления документацией информационных систем (клиентская часть).
Приложение позволяет создавать шаблоны для документов (набор полей с ограничениями на заполняемые данные), создавать документы и печатать их в PDF с помощью
добавленных html печатных форм. Аутентификации нет т.к. предполагалось использовать встроенную аутентификацию компании (но информации по ней я не получил).
Серверная часть приложения [здесь](https://github.com/IliaTrofimov/Documents-backend).
---
## Структура проекта
* **src/** - main.ts, index.html глобальные стили и настройки
* app/**configurations/** - отдельный сервис для загрузки настроек из файла и выдачи информации приложению;
* app/**components/** - все контроллеры и модули для работы с ними;
* **dictionaries/** - вспомогательные таблицы (списки пользователей, должности и т.д.);
* **documents/** - documents-list и document-view;
* **shared-items/** - мелкие контроллеры, которые обычно встраиваются в другие;
* **templates/** - templates-list и template-view;
* app/**interceptors/** - HTTP перехватчики (перехватчик критических ошибок и перехватчик для установки заголовков запросов);
* app/**models/** - сущности;
* app/**pipes/** - pipe'ы;
* app/**services/** - все сервисы;
* *alert.service* - вывод окон с уведомлениями (а-ля Snackbar);
* *documents.service* -
* *templates.service* -
* *signatories.service* -
* *template-types.service* -
* *users.service* -
* *positions.service* - все сервисы для работы с сущностями;
* *validation.service* - сервис для валидации полей в документе;
* *errors.service* - сервис для хранения последних ошибок, нужен для правильной работы страницы с информацией об ошибках.
## Маршрутизация
* **frontend/** - корень
* documents/{id} - список документов/просмотр документа
* templates/{id} - список шаблонов/просмотр шаблона
* **dictionaries/** - выбор вспомогательный таблицы
* users/ - список пользователей
* positions/ - список должностей
* templatetypes/ - список типов шаблонов
* homepage/ - домашняя страница текущего пользователя
* error/ - страница для вывода информации об ошибках
## Настройки
**src/config.json** - файл с настройками. Здесь всё очевидно, есть только дополнительное поле с адресом локального сревера, чтобы можно было быстро его находить.
**src/web.config** - настройки для IIS для правильной маршрутизации. В поле ` ` значение *frontend* должно соотвествовать названию приложения фронтенда в IIS и должно совпадать с `` в dist/index.html в собранном приложении.
**shared-items/debug.components.ts** - контроллер для выдачи информации о сборке, текущем пользователе, url бекенда. Можно удалить.
## Сборка
`ng build --base-href /frontend/` - для сборки. Здесь `base-href` задаст тот адрес, о котором говорилось выше в **web.config**.