Anonymous

Project:Box identification: Difference between revisions

From London Hackspace Wiki
Line 30: Line 30:
* Shelf locations will have the format /s\d\db\d\d/ e.g. s01b10. With the first segment (/s\d\d/), e.g. s01, representing the shelving unit and the second segment (/b\d\d\/), e.g. b10, representing the bay on that particular unit.
* Shelf locations will have the format /s\d\db\d\d/ e.g. s01b10. With the first segment (/s\d\d/), e.g. s01, representing the shelving unit and the second segment (/b\d\d\/), e.g. b10, representing the bay on that particular unit.
* Shelf bays will have to be labelled sequentially left to right, bottom to top to account for when people double stack the top bays.
* Shelf bays will have to be labelled sequentially left to right, bottom to top to account for when people double stack the top bays.
* Boxes shouldn't be deleted from the database, nor should the owner_id column be set to NULL, as this could result in the loss of useful information such as who owned the box last. Instead, boxes can be marked as inactive or unowned.
=== Database ===
* Box
** creator_id (Reference ID) - As anyone will be able to create a new box record this would be handy for identifying one people aren't being excellent i.e. someone spams the create button.
** owner_id (Reference ID) - Who owns the box/contents. The idea is that this will only get updated on claiming the box so it will be possible to identify old owners if they left something in the box after disowning it.
** owned (BOOLEAN) - If the assign owner still wishes to own the box.
** active (BOOLEAN) - Overengineering at its finest, this serves no real purpose but is intended to take a particular box out of service. (Admin use only)
** location (Reference ID) - Where the box is located. Could be NULL, as in there's no valid place for it on the shelves.
* Storage Locations - A method for storing all valid storage locations. shelf and bay combine to create a UNIQUE key.
** shelf (Reference ID) - refers to a shelf unit
** bay (Reference ID) - refers to a shelf bay
* Storage Unit
** key (CHAR(2)) - Unique string representing unit
** x (INTEGER) - x-coord in pixels for positioning shelf unit marker on box location image.
** y (INTEGER) - y-coord in pixels for positioning shelf unit marker on box location image.
** orientation (INTEGER) - Orientation of the shelf unit for box location image. (N = 0, E = 1, S = 2, W = 3)
* Storage Bay
** key (CHAR(2)) - Unique string representing bay
** x (INTEGER) - x-coord in pixels for positioning shelf bay marker on box location image.
** y (INTEGER) - y-coord in pixels for positioning shelf bay marker on box location image.
=== Image Generation ===
* A location indicator can be generated by visiting /members/storage_image.php and attaching a box location with '?loc=' e.g.
* A location indicator can be generated by visiting /members/storage_image.php and attaching a box location with '?loc=' e.g.
  /members/storage_image.php?loc=s16b03
  /members/storage_image.php?loc=s16b03
Line 44: Line 67:


* Two of each ID are produced for the QR code sheet in order to label both short sides of the box.
* Two of each ID are produced for the QR code sheet in order to label both short sides of the box.
* Started creating the member maintenance interface.
* Rather than deleting a box it will be marked as disabled to prevent loss of possibly useful information in the event someone has belongings in the box still.
* Rather than the disown function setting the owner field to NULL it will set an Owned field to False in order to prevent loss of possibly useful information in the event someone has belongings in the box still.


== To Do ==
== To Do ==