Supply Sergeant is a computer inventory and user request tracker.
Submitted by: Ben Altieri
Time spent: 60 hours spent in total
- GET /items Returns a list of all items in the database
- GET /item/< name > Returns a specific item by name
- POST /item/< name > Inserts an item into the database by item name with assignee and date assigned
- PUT /item/< name > Updates an item by item name and new assignee name keeping previous assignee record
- DEL /item/< name > Deletes an item by name
- POST /auth Generates a JWT authentication token
- POST /register For user registration
- GET /inventory/< name > Get an inventory by name
- POST /inventory/< name > Create an inventory by name
- DELETE /inventory/< name > Delete an inventory by name
- GET /inventories Retrieve a list of all inventories in the system
The following required functionality is yet to be completed:
- Design / Define REST API resource methods
- Define / separate out REST API resources from models
- REST API resources are external representations of application endpoints, i.e. what the client sees
- Models are internal representations of objects that are not externally exposed, i.e. the client has no reference to it
- technician can create, read, update, delete computer inventory.
- technician can add users to the database to and from PostgreSQL database called sargdb via sqlalchemy.
- a user object is created on date of hire.
- a technician can upload only one picture of computer serial number per computer object.
- a computer object can only have one mac address.
- cost of equipment purchase and any subsequent repairs / modifications will be tracked
- each user will have a profile that lists all issued hardware and software, date of purchase.
- Invoice .pdf files can be uploaded and related to any costs entered into the system.
The following additional features are to be implemented:
- Purchase request approval workflow [ i.e someone requests a new computer, that will trigger an email to the CAPEX committee]
Describe any challenges encountered while building the app.
- [1] Getting the original text to populate over to the edit Activity
- [2] Updating the item and positioning of the ArrayList when a particular item has been updated
- [3] Refactoring code and seeing what overlaps may be
Copyright [2017] [Ben Altieri]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.