+
Réception
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
+
+
+
+
@@ -30,38 +222,359 @@
diff --git a/frontend/composables/useWeighing.ts b/frontend/composables/useWeighing.ts
index 6552811..9aea037 100644
--- a/frontend/composables/useWeighing.ts
+++ b/frontend/composables/useWeighing.ts
@@ -1,6 +1,6 @@
import type {Ref} from 'vue'
import {computed, ref} from 'vue'
-import type {ReceptionData, WeightEntryData} from '~/services/dto/reception-data'
+import type {ReceptionData, ReceptionPayload, WeightEntryData} from '~/services/dto/reception-data'
import type {WeightData} from '~/services/dto/weight-data'
import {getWeight} from '~/services/reception'
import {createWeight, updateWeight} from '~/services/weight'
@@ -10,7 +10,7 @@ export type WeighingMode = 'gross' | 'tare'
type UseWeighingOptions = {
mode: WeighingMode
reception: Ref
- updateReception: (id: number, payload: Partial) => Promise
+ updateReception: (id: number, payload: ReceptionPayload) => Promise
loadReception?: (id: number) => Promise
}
diff --git a/frontend/constants/steps.ts b/frontend/constants/steps.ts
new file mode 100644
index 0000000..2e51937
--- /dev/null
+++ b/frontend/constants/steps.ts
@@ -0,0 +1,13 @@
+export enum StepLabel {
+ Reception = 'Réception',
+ GrossWeighing = 'Pesée à plein',
+ Selection = 'Sélection réceptionnées',
+ TareWeighing = 'Pesée à vide'
+}
+
+export const RECEPTION_STEP_LABELS = [
+ StepLabel.Reception,
+ StepLabel.GrossWeighing,
+ StepLabel.Selection,
+ StepLabel.TareWeighing
+]
diff --git a/frontend/i18n/locales/fr.json b/frontend/i18n/locales/fr.json
index fbe4573..e241aba 100644
--- a/frontend/i18n/locales/fr.json
+++ b/frontend/i18n/locales/fr.json
@@ -14,6 +14,24 @@
"update": "Impossible de mettre à jour la réception.",
"weigh": "Impossible de récupérer la pesée."
},
+ "receptionType": {
+ "list": "Impossible de récupérer la liste des types de réception."
+ },
+ "supplier": {
+ "list": "Impossible de récupérer la liste des fournisseurs."
+ },
+ "truck": {
+ "list": "Impossible de récupérer la liste des camions."
+ },
+ "carrier": {
+ "list": "Impossible de récupérer la liste des transporteurs."
+ },
+ "driver": {
+ "list": "Impossible de récupérer la liste des chauffeurs."
+ },
+ "vehicle": {
+ "list": "Impossible de récupérer la liste des immatriculations."
+ },
"auth": {
"login": "Identifiants invalides.",
"users": "Impossible de récupérer les utilisateurs.",
diff --git a/frontend/layouts/default.vue b/frontend/layouts/default.vue
index ab38e47..73ca923 100644
--- a/frontend/layouts/default.vue
+++ b/frontend/layouts/default.vue
@@ -38,7 +38,7 @@
-
+
diff --git a/frontend/nuxt.config.ts b/frontend/nuxt.config.ts
index fb70f39..7ed11e0 100644
--- a/frontend/nuxt.config.ts
+++ b/frontend/nuxt.config.ts
@@ -11,7 +11,7 @@ export default defineNuxtConfig({
'nuxt-toast',
'@nuxtjs/i18n'
],
- css: ['~/assets/css/toast.css'],
+ css: ['~/assets/css/main.css', '~/assets/css/toast.css'],
runtimeConfig: {
public: {
apiBase: process.env.NUXT_PUBLIC_API_BASE
diff --git a/frontend/pages/reception/[[id]].vue b/frontend/pages/reception/[[id]].vue
index 482f5e9..062217e 100644
--- a/frontend/pages/reception/[[id]].vue
+++ b/frontend/pages/reception/[[id]].vue
@@ -1,7 +1,13 @@