This week was kind of short – I ended up not working on Monday because I was recovering from the past weekend’s Hackathon. I was a volunteer helping run the event, as well as a mentor for teams who needed assistance with their projects. I have to say it was much more rewarding than actually building something myself. Then on Friday there was a Career Fair on campus that I left early to attend – also a great use of time because I have a couple of phone interviews lined up as a result.
Damages Billing Tablet Endpoint Update
When I was working this week, I finished up updating the current endpoint that the tablet goes to to include some extra information. The tablet pulls a list of all items in a room in a given residence hall and then lets the user take pictures of that item in the room if it’s missing, add comments, etc. The extra information we want to include with this is a list of all people who have checked into this room in the past year. This is relevant because for each item we want to be able to select who is going to be billed for damages (not on a report basis, but on an item by item basis).
It was a relatively straightforward change. I made a new builder to generate a list of people with their check out times (the added information we want to return with this request). The big concern here was that the check out time on the model (representing the time they checked out the of the room in question if at all) was for the correct room in the case they’ve checked out of different room in the past year. I added a couple new methods to some repositories I needed to use to streamline things and correctly build the list. I then implemented a mapper to generate the complete object that will be returned as JSON.
I focused a lot on doing TDD for this card especially because all the tests were integration tests, which I’m actively trying to improve at. I was able to put the new test service we wrote last week to work, but still struggled to complete the tests for the better part of an afternoon. By the end of the week I had all this done and had submitted a pull request.
My boss was out on Thursday, so instead of completing the pull request immediately, I started researching the next card – displaying this new list of people in the Android app on each individual item.