Операции с отходами
Создано с AI-агентом
Бэкэнд управления отходами

Бэкэнд CRM для маршрутов доставки и сбора
Маршрутизация сбора и контроль контейнеров

Готовый к производству бэкэнд управления отходами на Back4app с `Оператор`, `Маршрут`, `Контейнер`, `ГрафикСбора` и `ЖурналСоблюдения`. Управляйте доставкой, инвентаризацией контейнеров, статусом сбора и записями инспекций из одного контракта бэкэнда.

Выводы по операциям с отходами

Этот шаблон предоставляет вам бэкенд управления отходами с `Operator`, `Route`, `Container`, `PickupSchedule` и `ComplianceLog`, чтобы координаторы могли держать маршруты, контейнеры, заборы и аудиторские следы в одном месте.

  1. Контроль маршрута и диспетчераМоделируйте записи `Route` с `routeCode`, `serviceArea`, `routeStatus` и указателем `dispatcher` на `Operator` для повседневного планирования.
  2. Отслеживание инвентаря контейнеровХраните записи о `Container` для `containerTag`, `containerType`, `capacityLiters`, `conditionStatus`, `lastInspectionAt` и `assignedRoute`, вместо того чтобы juggling таблицы.
  3. Координация графика заборовХраните элементы `PickupSchedule` с `pickupCode`, `pickupDate`, `pickupStatus`, `route`, `container`, `assignedCrewLead` и `notes` для каждой остановки.
  4. Логи соответствияХраните элементы `ComplianceLog` для `inspectionType`, `logStatus`, `relatedPickup`, `relatedContainer`, `recordedBy`, и `evidenceUrl`, связанные с правильным вывозом или контейнером.

Что такое шаблон клиентского приложения для управления отходами?

Лучше всего для:

Операции по сбору отходов

Дашборды планирования вывозаСистемы учета контейнеровContainer inventory systemsЖурнал соблюдения и проверкиКоординация муниципального или частного автопаркаКоманды выбирают BaaS для операционных приложений

Обзор шаблона управления отходами

Управление отходами — это не только скорость; это о защите, когда кто-то спрашивает: «покажите, как вы узнали, что это правда.»

Каждая карта технологии здесь соответствует одной и той же модели управления графиком уборки, отслеживания запасов контейнеров, ведения журнала соблюдения — выберите стек, не renegotiating ваш контракт на бэкенд.

Основные функции управления отходами

Каждая технологическая карточка в этом хабе использует одну и ту же схему бэкэнда управления отходами с `Operator`, `Route`, `Container`, `PickupSchedule` и `ComplianceLog`.

Управление графикомPickup

`PickupSchedule` хранит `pickupCode`, `pickupDate`, `pickupStatus`, `route`, `container`, `assignedCrewLead` и `notes`.

Отслеживание инвентаризации контейнеров

`Container` хранит `containerTag`, `containerType`, `capacityLiters`, `conditionStatus`, `assignedRoute` и `lastInspectionAt`.

Логирование соответствия

`ComplianceLog` регистрирует `logCode`, `inspectionType`, `logStatus`, `relatedPickup`, `relatedContainer`, `recordedBy` и `evidenceUrl`.

Доступ и роли оператора

`Operator` хранит `username`, `email`, `password`, `role` и `fullName`.

Почему стоит создать бэкенд для распределения отходов с Back4app?

Back4app предоставляет командам по управлению отходами необходимые им примитивы данных — маршруты, сборы, контейнеры и записи о соблюдении — не заставляя их управлять своей собственной базой данных и слоем API.

  • Маршруты, расписания и моделирование контейнеров: Класс `Route` для планирования, класс `PickupSchedule` для назначений и класс `Container` для контейнеров, емкости и состояния делают операции читаемыми.
  • Отслеживаемость журнала соответствия: Свяжите строки `ComplianceLog` с `PickupSchedule`, `Container` и `Operator`, чтобы инспекции и корректирующие действия оставались подотчетными.
  • Обновления в режиме реального времени для диспетчеризации и инвентаризации: Используйте Live Queries на `Route`, `PickupSchedule` и `Container`, чтобы отразить изменения статуса сразу после их возникновения.

Создайте операционный бэкэнд один раз, а затем повторно используйте тот же контракт на экранах диспетчеризации, на поле и в управлении.

Операционные преимущества

Бэкэнд управления отходами, который сохраняет данные о диспетчировании структурированными и доступными.

Быстрая координация маршрутов

Начните с `Route` и `PickupSchedule`, вместо того чтобы строить таблицы диспетчеризации с нуля.

Лучшая видимость инвентаря

Используйте поля `Container`, такие как `containerTag`, `containerType`, `capacityLiters`, `conditionStatus` и `lastInspectionAt`, чтобы увидеть, что требует внимания.

История соблюдения стандартов, готовая к аудиту

Храните каждую запись `ComplianceLog` с `inspectionType`, `evidenceUrl`, `relatedPickup` и `recordedBy`, чтобы последующие действия были отслеживаемыми.

Операции, учитывающие роли

Используйте ACL и CLP, чтобы только уполномоченные операторы могли редактировать маршруты, заборы, контейнеры или заметки по соблюдению стандартов.

Один API для диспетчерских и полевых приложений

Предоставьте те же данные маршрута, забора, контейнера и журнала через REST и GraphQL каждому клиенту.

Помощь ИИ в начальной настройке

Сгенерируйте схему, разрешения и руководство по интеграции из одной подсказки до окончания первого спринта.

Готовы запустить ваше приложение для управления отходами?

Позвольте агенту ИИ Back4app создать бэкэнд для управления отходами и сгенерировать маршруты, заборы, контейнеры и потоки соответствия из одной команды.

Бесплатно для начала — 50 команд для агента ИИ в месяц, кредитная карта не требуется

Технологический стек для операций с отходами

Все включено в этот шаблон бэкэнда для управления отходами.

Фронтенд
13+ технологий
Бэкенд
Back4app
База данных
MongoDB
Аутентификация
Встроенная аутентификация + сессии
API
REST и GraphQL
В реальном времени
Live Queries

Диаграмма маршрута ER

Модель взаимосвязей сущностей для схемы бэкенда управления отходами.

Просмотр источника диаграммы
Mermaid
erDiagram
    Operator ||--o{ Route : "dispatcher"
    Operator ||--o{ PickupSchedule : "assignedCrewLead"
    Operator ||--o{ ComplianceLog : "recordedBy"
    Route ||--o{ Container : "assignedRoute"
    Route ||--o{ PickupSchedule : "route"
    Container ||--o{ PickupSchedule : "container"
    Container ||--o{ ComplianceLog : "relatedContainer"
    PickupSchedule ||--o{ ComplianceLog : "relatedPickup"

    Operator {
        String objectId PK
        String username
        String email
        String password
        String role
        String fullName
        Date createdAt
        Date updatedAt
    }

    Route {
        String objectId PK
        String routeCode
        String serviceArea
        String routeStatus
        String dispatcherId FK
        Date createdAt
        Date updatedAt
    }

    Container {
        String objectId PK
        String containerTag
        String containerType
        Number capacityLiters
        String conditionStatus
        String assignedRouteId FK
        Date lastInspectionAt
        Date createdAt
        Date updatedAt
    }

    PickupSchedule {
        String objectId PK
        String pickupCode
        Date pickupDate
        String pickupStatus
        String routeId FK
        String containerId FK
        String assignedCrewLeadId FK
        String notes
        Date createdAt
        Date updatedAt
    }

    ComplianceLog {
        String objectId PK
        String logCode
        String inspectionType
        String logStatus
        String relatedPickupId FK
        String relatedContainerId FK
        String recordedById FK
        String evidenceUrl
        Date createdAt
        Date updatedAt
    }

Поток интеграции диспетчеризации

Типичный сценарий выполнения для входа в систему, запросов расписания забора, обновлений инвентаризации контейнеров и ведения учета соответствия.

Посмотреть источник диаграммы
Mermaid
sequenceDiagram
  participant User
  participant App as Waste Management Client App
  participant Back4app as Back4app Cloud

  User->>App: Sign in as manager or coordinator
  App->>Back4app: POST /login
  Back4app-->>App: Session token

  User->>App: Open pickup schedules
  App->>Back4app: GET /classes/PickupSchedule?include=route,container,assignedCrewLead
  Back4app-->>App: PickupSchedule list

  User->>App: Review container inventory
  App->>Back4app: GET /classes/Container?include=assignedRoute
  Back4app-->>App: Container list

  User->>App: Add a compliance log for a pickup
  App->>Back4app: POST /classes/ComplianceLog
  Back4app-->>App: ComplianceLog objectId

  App->>Back4app: Subscribe to route and pickup updates
  Back4app-->>App: LiveQuery notifications

Словарь полей

Полная справка по полям для каждого класса в схеме управления отходами.

ПолеТипОписаниеОбязательно
objectIdStringAuto-generated unique identifierАвто
usernameStringOperator login name
emailStringOperator email address
passwordStringHashed password (write-only)
roleStringRole of the operator (e.g., manager, coordinator)
fullNameStringDisplay name used by the operations team
createdAtDateAuto-generated creation timestampАвто
updatedAtDateAuto-generated last-update timestampАвто

8 поля в Operator

Разрешения маршрутов и безопасность

Как стратегия ACL и CLP защищает операторов, маршруты, контейнеры, графики подбора и журналы соблюдения.

Доступ на основе ролей для операций

Менеджеры могут контролировать все маршруты, в то время как координаторы и руководители экипажей могут редактировать только записи `Route`, `PickupSchedule` и `Container`, назначенные им.

Целостность журнала соблюдения

Только авторизованные операторы могут создавать или вносить изменения в записи `ComplianceLog`; выполняйте валидацию записи в Cloud Code, когда примечание ссылается на закрытый инцидент.

Ограниченная видимость для полевых команд

Ограничьте чтение, чтобы полевой персонал видел строки `PickupSchedule` и `Container`, относящиеся к их маршруту или объекту.

Схема JSON

Готовое определение схемы JSON для копирования в Back4app или использования в качестве справочного материала по реализации.

JSON
{
  "classes": [
    {
      "className": "Operator",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "username": {
          "type": "String",
          "required": true
        },
        "email": {
          "type": "String",
          "required": true
        },
        "password": {
          "type": "String",
          "required": true
        },
        "role": {
          "type": "String",
          "required": true
        },
        "fullName": {
          "type": "String",
          "required": true
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "Route",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "routeCode": {
          "type": "String",
          "required": true
        },
        "serviceArea": {
          "type": "String",
          "required": true
        },
        "routeStatus": {
          "type": "String",
          "required": true
        },
        "dispatcher": {
          "type": "Pointer",
          "required": true,
          "targetClass": "Operator"
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "Container",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "containerTag": {
          "type": "String",
          "required": true
        },
        "containerType": {
          "type": "String",
          "required": true
        },
        "capacityLiters": {
          "type": "Number",
          "required": true
        },
        "conditionStatus": {
          "type": "String",
          "required": true
        },
        "assignedRoute": {
          "type": "Pointer",
          "required": true,
          "targetClass": "Route"
        },
        "lastInspectionAt": {
          "type": "Date",
          "required": false
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "PickupSchedule",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "pickupCode": {
          "type": "String",
          "required": true
        },
        "pickupDate": {
          "type": "Date",
          "required": true
        },
        "pickupStatus": {
          "type": "String",
          "required": true
        },
        "route": {
          "type": "Pointer",
          "required": true,
          "targetClass": "Route"
        },
        "container": {
          "type": "Pointer",
          "required": true,
          "targetClass": "Container"
        },
        "assignedCrewLead": {
          "type": "Pointer",
          "required": true,
          "targetClass": "Operator"
        },
        "notes": {
          "type": "String",
          "required": false
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "ComplianceLog",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "logCode": {
          "type": "String",
          "required": true
        },
        "inspectionType": {
          "type": "String",
          "required": true
        },
        "logStatus": {
          "type": "String",
          "required": true
        },
        "relatedPickup": {
          "type": "Pointer",
          "required": false,
          "targetClass": "PickupSchedule"
        },
        "relatedContainer": {
          "type": "Pointer",
          "required": true,
          "targetClass": "Container"
        },
        "recordedBy": {
          "type": "Pointer",
          "required": true,
          "targetClass": "Operator"
        },
        "evidenceUrl": {
          "type": "String",
          "required": false
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    }
  ]
}

Создать с помощью AI-агента

Используйте AI-агента Back4app, чтобы создать реальное приложение для управления отходами на основе этого шаблона, включая фронтенд, бэкенд, аутентификацию, а также маршруты, сбор, контейнеры и процессы соблюдения.

Back4app AI-агент
Готовы к созданию
Создайте безопасное клиентское приложение для управления отходами на Back4app с этой точной схемой и поведением.

Схема:
1. Оператор (используйте встроенные концепции аутентификации Back4app): имя пользователя, электронная почта, пароль, роль, полное имя; objectId, createdAt, updatedAt (система).
2. Маршрут: routeCode (Строка, обязательно), serviceArea (Строка, обязательно), routeStatus (Строка, обязательно), dispatcher (Указатель на Оператора, обязательно); objectId, createdAt, updatedAt (система).
3. Контейнер: containerTag (Строка, обязательно), containerType (Строка, обязательно), capacityLiters (Число, обязательно), conditionStatus (Строка, обязательно), assignedRoute (Указатель на Маршрут, обязательно), lastInspectionAt (Дата, необязательно); objectId, createdAt, updatedAt (система).
4. График сбора: pickupCode (Строка, обязательно), pickupDate (Дата, обязательно), pickupStatus (Строка, обязательно), route (Указатель на Маршрут, обязательно), container (Указатель на Контейнер, обязательно), assignedCrewLead (Указатель на Оператора, обязательно), notes (Строка, необязательно); objectId, createdAt, updatedAt (система).
5. Журнал соблюдения: logCode (Строка, обязательно), inspectionType (Строка, обязательно), logStatus (Строка, обязательно), relatedPickup (Указатель на График сбора, необязательно), relatedContainer (Указатель на Контейнер, обязательно), recordedBy (Указатель на Оператора, обязательно), evidenceUrl (Строка, необязательно); objectId, createdAt, updatedAt (система).

Безопасность:
- Менеджеры могут создавать и обновлять маршруты, контейнеры, графики сбора и журналы соблюдения.
- Координаторы могут обновлять статусы сбора и добавлять журналы соблюдения, связанные с их назначенными маршрутами.
- Только назначенные члены команды могут редактировать график сбора или журнал соблюдения после создания.
- Ограничьте доступ к операционным записям на основе ролей и назначения маршрутов.

Аутентификация:
- Регистрация, вход, выход.

Поведение:
- Список графиков сбора по маршруту и дате сбора.
- Создание и редактирование контейнеров и назначения маршрутов.
- Запись журналов соблюдения для проверки безопасности, аудита маршрутов и анализа разливов.

Доставка:
- Приложение Back4app с схемой, CLP, ACL и панелью управления для графиков, инвентаризации контейнеров и отслеживания соблюдения.

Нажмите кнопку ниже, чтобы открыть агента с уже заполненным этим шаблоном подсказки.

Это базовая подсказка без суффикса технологии. Вы можете адаптировать сгенерированный стек фронтенда позже.

Развернуть за минуты50 бесплатных подсказок / месяцНе требуется кредитная карта

API песочница

Попробуйте REST и GraphQL конечные точки против схемы управления отходами. Ответы используют моковые данные и не требуют учетной записи Back4app.

Загрузка песочницы…

Использует ту же схему, что и этот шаблон.

Выберите вашу технологию

Разверните каждую карточку, чтобы увидеть, как интегрировать Оператора, Имя и Маршрут с вашей выбранной технологией.

Flutter Бэкенд управления отходами

React Бэкенд управления отходами

React Native Бэкенд управления отходами

Next.js Бэкенд управления отходами

JavaScript Бэкенд управления отходами

Android Бэкенд управления отходами

iOS Бэкенд управления отходами

Vue Бэкенд управления отходами

Angular Бэкенд управления отходами

GraphQL Бэкенд управления отходами

REST API Бэкенд управления отходами

PHP Бэкенд управления отходами

.NET Бэкенд управления отходами

Что вы получаете с каждой технологией

Каждый стек использует одну и ту же схему бэкенда управления отходами и API-контракты.

Объединенная структура данных операций с отходами

Управляйте `Operator`, `Route`, `Container`, `PickupSchedule` и `ComplianceLog` с помощью одной согласованной схемы.

Видимость маршрутов и запасов

Сохраняйте изменения расписания и состояние контейнеров в синхронизации на операционных экранах.

Поддержка журнала соблюдения

Записывайте проверки, заметки и последующие действия с ясным аудитом.

Операции с учетом ролей

Определите доступ для менеджеров, координаторов и полевых сотрудников, не изменяя схему.

REST/GraphQL API для операционных приложений

Интегрируйте мобильные, веб- и внутренние инструменты, используя гибкие API.

Расширяемая архитектура для рабочих процессов с отходами

Добавьте сервисные заявки или уведомления позже, не переписывая основные классы.

Сравнение рамок операций с отходами

Сравните скорость настройки, стиль SDK и поддержку ИИ по всем поддерживаемым технологиям.

ФреймворкВремя настройкиПреимущество управления отходамиТип SDKПоддержка ИИ
Около 5 минутЕдиный код для маршрутов, контейнеров и представлений соответствия.Типизированный SDKПолный
Менее 5 минутБыстрая веб-панель для координаторов операций.Типизированный SDKПолный
~3–7 минКроссплатформенное мобильное приложение для полевых бригад.Типизированный SDKПолный
Быстрая (5 мин) настройкаСерверное веб-приложение для диспетчеризации и инвентаризации.Типизированный SDKПолный
~3–5 минЛегкая веб-интеграция для инструментов операций.Типизированный SDKПолный
Около 5 минНативное Android приложение для водителей и команд на объектах.Типизированный SDKПолный
Менее 5 минутНативное iOS приложение для руководителей и специалистов на местах.Типизированный SDKПолный
~3–7 минReact веб-интерфейс для управления маршрутами.Написанный SDKПолный
Быстрая настройка (5 мин)Корпоративное веб-приложение для операционных центров.Написанный SDKПолный
Менее 2 минГибкий GraphQL API для расписаний и инвентаризации.GraphQL APIПолный
Быстрая настройка (2 мин)Интеграция REST API для систем диспетчеризации.REST APIПолный
~3 минСерверный PHP бэкэнд для порталов операций.REST APIПолный
~3–7 минБэкэнд .NET для рабочего процесса управления флотом и соблюдения норм.Типизированный SDKПолный

Время настройки отражает ожидаемую продолжительность от инициализации проекта до первого расписания сборки или запроса контейнера с использованием этой схемы шаблона.

Операционные часто задаваемые вопросы

Распространенные вопросы о создании бэкенда для управления отходами с помощью этого шаблона.

Какие моменты взаимодействия с клиентами в управлении отходами требуют структурированной фиксации вместо неформальных записей?
Как выглядит доступ на основе ролей для команд управления отходами с разным уровнем старшинства?
Можем ли мы интегрировать электронную подпись или хранение документов, не фрагментируя записи управления отходами?
Как я могу выполнять запросы для расписанийpickup и контейнеров с Flutter?
Как я могу управлять доступом к управлению отходами с помощью Next.js Server Actions?
Может ли React Native кэшировать графики обслуживания офлайн?
Как мне предотвратить несанкционированные изменения в журналах соответствия?
Какой лучший способ показать инвентаризацию контейнеров на Android?
Как работает поток графика обслуживания от начала до конца?
Какие классы стоят за этим шаблоном управления отходами?

Доверяют разработчики по всему миру

Присоединяйтесь к командам, быстрее отправляющим продукты для операций с отходами с помощью шаблонов Back4app

G2 Users Love Us Badge

Готовы создать ваше приложение для управления отходами?

Начните ваш проект управления отходами за считанные минуты. Кредитная карта не требуется.

Выберите технологию