---
title: "Manufacturing"
description: "Zestawienia materiałowe. Każda aplikacja jest modułem na jednym modelu danych."
canonical: "https://obop-platform.sliplane.app/pl/apps/manufacturing/"
lang: "pl"
---

# Manufacturing

## Do czego służy

Define what a product is made of and plan manufacturing orders through draft, confirmed, in progress and done. Component stock is not consumed automatically.

## Co pakiet robi, a czego nie robi

Bills of materials and manufacturing orders with a draft, confirmed, in progress and done flow. Component stock is not consumed automatically.

## Modele

### `manufacturing_bom`

A recipe: the components needed to make a product

Grupa odczytu: `manufacturing.user`. Grupa zapisu: `manufacturing.manager`.

| Pole | Rodzaj | Klasa danych | Dane osobowe | Grupa | Agenci widzą | Opis |
|---|---|---|---|---|---|---|
| `product_id` | ref → product | `none` | nie | `manufacturing.user` | jawnie | The finished product the recipe makes |
| `name` | text | `none` | nie | `manufacturing.user` | jawnie | Name of the recipe, for example Standard assembly |
| `quantity` | number | `none` | nie | `manufacturing.user` | jawnie | Units of the finished product one run produces |
| `instructions` | longtext | `none` | nie | `manufacturing.user` | jawnie | Assembly notes for the shop floor |
| `active` | bool | `none` | nie | `manufacturing.user` | jawnie | Whether the recipe can be used for new orders |

### `manufacturing_bom_line`

One component of a bill of materials

Grupa odczytu: `manufacturing.user`. Grupa zapisu: `manufacturing.manager`.

| Pole | Rodzaj | Klasa danych | Dane osobowe | Grupa | Agenci widzą | Opis |
|---|---|---|---|---|---|---|
| `bom_id` | ref → manufacturing_bom | `none` | nie | `manufacturing.user` | jawnie | The recipe the component belongs to |
| `component_id` | ref → product | `none` | nie | `manufacturing.user` | jawnie | The product consumed |
| `quantity` | number | `none` | nie | `manufacturing.user` | jawnie | Units of the component used per run |

### `manufacturing_order`

An instruction to produce a quantity of a product

Grupa odczytu: `manufacturing.user`. Grupa zapisu: `manufacturing.user`.

| Pole | Rodzaj | Klasa danych | Dane osobowe | Grupa | Agenci widzą | Opis |
|---|---|---|---|---|---|---|
| `reference` | text | `none` | nie | `manufacturing.user` | jawnie | Order number, for example MO-0042 |
| `bom_id` | ref → manufacturing_bom | `none` | nie | `manufacturing.user` | jawnie | The recipe to follow |
| `quantity` | number | `none` | nie | `manufacturing.user` | jawnie | Units of the finished product to make |
| `planned_on` | date | `none` | nie | `manufacturing.user` | jawnie | Date production should start (YYYY-MM-DD) |
| `deadline` | date | `none` | nie | `manufacturing.user` | jawnie | Date the goods are needed (YYYY-MM-DD) |
| `responsible` | text | `internal` | tak | `manufacturing.user` | zamaskowane | Name of the person in charge of the run |
| `state` | select (draft, confirmed, in_progress, done, cancelled) | `none` | nie | `manufacturing.user` | jawnie | Order status: draft, confirmed, in_progress, done, cancelled |

## Przepływy pracy

### `manufacturing_order`

| Akcja | Przenosi | Kto może uruchomić | Zatwierdzenie |
|---|---|---|---|
| `manufacturing_order.confirm` | state: draft → confirmed | `manufacturing.manager` | nie |
| `manufacturing_order.start` | state: confirmed → in_progress | `manufacturing.user` | nie |
| `manufacturing_order.finish` | state: in_progress → done | `manufacturing.user` | nie |
| `manufacturing_order.cancel` | state: draft → cancelled | `manufacturing.user` | nie |

## Grupy uprawnień

Grupy używane przez tę aplikację:

- `manufacturing.manager`
- `manufacturing.user`

## Kroki zatwierdzania

Żaden krok w tej aplikacji nie wymaga zatwierdzenia, poza usuwaniem rekordów.

## Co agenci mogą, a czego nie mogą

Agent może odczytywać, wyszukiwać, tworzyć i aktualizować rekordy tej aplikacji oraz uruchamiać akcje niewymagające zatwierdzenia, w ramach grup uprawnień swojego tokenu.

Te kroki może tylko zaproponować, a człowiek musi je zatwierdzić: `manufacturing_bom.delete`, `manufacturing_bom_line.delete`, `manufacturing_order.delete`.

Dane osobowe są maskowane jako tokeny zastępcze: `manufacturing_order.responsible`.

## Zależności

- `product`

## Instalacja

Zainstaluj ją w aplikacji Customize (Marketplace) lub z wiersza poleceń:

```bash
obop modules install-from manufacturing
```

Wymaga bazy danych i uprawnień administratora.

## Zbuduj własną

[Przewodnik po modułach pokazuje, jak pisze się takie aplikacje](/pl/docs/reference/module-manifest/)
