The Tryton UI is not optimal when working in a warehouse. When doing the task of packing the shipments, the UI has too much functionalities while the task does not need them. And also the current UI is not really designed for this task.
We could write a simple web application (like chronos) dedicated to the packing task. The web application should be a single page aka SPA.
The user configures the application by defining his Employee and the Warehouse where he works.
The user enters the shipment Number (or pick one if many matches). The available shipments are those in assigned state or in waiting if no assignation and that are not assigned to any other employee.
The user starts by creating a first pack where it is asked the Type.
The user selects from a list a shipped product. The quantity is asked. The list of product is updated according to the quantity packed.
The user can now:
- Add another product to the same pack.
- Add a new pack inside the current pack.
- Close the current pack.
The user should always be able to undo the last operation.
The application propose to the user to finish the packing when there is no remaining products.
The user can force to finish the packing, in this case the remaining will be removed from the shipment.
The user can leave the shipment without finish it. The current state will be stored and the user could come back via a list of assigned shipments.
We must create some API’s:
To retrieve the list of employees of the user
To retrieve the list of warehouses
To search shipments:
- by number and warehouse
- by warehouse and assigned to the employee
To retrieve the data of a shipment. It should contain everything needed for the application.
To send the modification done on the shipment:
- It should allow to assign it to the employee.
- It should allow to update/split moves and create/update packages.
- It should allow to pack the shipment.
The architecture should be flexible to allow easy customization like adding new field to display (modification of the template), hooks on major events etc.
The design should be very minimal but functional. It should be responsive and support mouse, touch screen and keyboard usage.
- Add feature to weight each product (change the quantity if the UoM is also weight).
- Add picking application.