User Tools

Site Tools


android:track:trackmanagerstories

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
android:track:trackmanagerstories [2016/12/14 19:05]
mikeclapp [Story 8]
android:track:trackmanagerstories [2018/07/16 19:57] (current)
mikeclapp [Changing Future Tracker Settings Remotely]
Line 1: Line 1:
 +====== Story 8 Editing & Reassignment - Current Story  ======
 +
 +Handing off trackers to the UK is highlighting issues with the handoff and the ability to move trackers to other projects, merge tracks, and otherwise edit historical tracks & machines as well as set trackers to new settings. Some of the ability exists now but is spread across projects and/or is not available without a developer mode turned on. 
 +
 +
 +
 +===== Changing Future Tracker Settings Remotely =====
 +
 +With Eggman we currently have an additional set of controls available to change values on a tracker going forward to future tracks. These controls currently include:
 +
 +  * Project
 +  * Upload Frequency
 +  * Motion Timeout
 +  * Motion Monitor
 +  * Send Event Log
 +  * Send event log email
 +
 +Of these probably only Project is appropriate for general users to edit. The remainder are debugging controls probably still only appropriate to us. The question is are there any other settings we should expose or if this is the only one should we just move it to the machine page with the other machine characteristics. It should also be noted that the current page does not show the current state but simply shows the options that will be set.
 +
 +==== Proposed Machine Page setting for changing Projects ====
 +
 +My proposal is to change the existing Machine page to allow changing of the project assigned similar to what we do for reassigning a tracker to a vehicle.
 +
 +When the Machine is pressed it displays the machine settings (name, type, color, etc.). I propose to add one more option at the bottom with some white space between it and the rest to change the project it's assigned to. 
 +
 +
 +
 +
 +
 +
 + 
 +
 +
 +
 +===== Editing Existing Tracks =====
 +
 +
 +
 +=== Moving Tracks between Projects ===
 +
 +
 +=== Merging Tracks ===
 +
 +There are a couple of reason to merge tracks
 +
 +
 +===== Editing Machine Names =====
 +
 +
 +
 +
 +
 +===== Cleaning up the Machines List =====
 +
 +Our Sale Loaners a perfect example of 
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 ====== Story 1 ====== ====== Story 1 ======
  
Line 525: Line 597:
  
  
-====== Story ======+====== Story ======
  
-  * Implementing Cost Code (Tag) Interface and Structure+  * Implementing Cost Code (Tag) Interface and supporting Server mechanism 
 +  * Add Journal menu option to show daily individual and project summaries 
 + 
 + 
 +===== Cost Code Usage ===== 
 +Construction has lots of steps and processes to get to the finished result. And those steps have associated expenses to go with them that are often characterized by using a cost code. These codes serve across the organization from accounting (expenses and billing) to 
  
 Equipment being tracked often has multiple processes they do during the day. And these processes are usually documented with a cost code. Cost codes vary from company to company and even project to project. It's also not unusual for states to have standardized codes for billing with job specific codes as well. Our goal is to add the ability to segregate track segments and time notes (measure and notes for other apps) by adding a cost code as well as the note.  Equipment being tracked often has multiple processes they do during the day. And these processes are usually documented with a cost code. Cost codes vary from company to company and even project to project. It's also not unusual for states to have standardized codes for billing with job specific codes as well. Our goal is to add the ability to segregate track segments and time notes (measure and notes for other apps) by adding a cost code as well as the note. 
 +
 +{{:​android:​track:​segment_with_cost_codes.png?​200|}}
 +
 +**Description of Segment screen changes**
 +
 +This is based on current segment screen design.
 +
 +  * Changed to use all of the screen. The keyhole that was left after bringing up the keyboard just didn't make sense. Also removed background transparency to make the contrast better outside.
 +  * Added the machine name for reference above the segment hours
 +  * Moved the statistics, segment time and arrow up to accommodate space for code list
 +  * Added code list selector above the note. A blank code is ok. The code list it pull from is pulled from AGTEK Access.
 +
 +
 +
 +{{:​android:​track:​projectcostcode.png?​200|}}
 +
 +
 +**Adding Cost List to Project Defaults Screen**
 +
 +Adding an option to set the default Cost list to the Project defaults is simple from a user interface perspective but more complicated underneath
 +
 +===== Journal Usage =====
 +
 +The Journal is an outgrowth of cost codes and the idea of collating project information from a variety of sources to Access. It may become a feature of all mobile apps that use cost codes. ​
 +
 +The idea is to give the user a summary of what's he's submitting. There'​s potentially a split view that shows his submittals and another that shows all submittals for that day. And since it's a summary I'd like to keep to a single line per entry but with the ability to expand or go-to the detail on a line item. 
 +
 +
 +== Scratchpad ==
 +
 +Elements and things to think about
 +
 +  * Project selection or current project. Does the user just see the project he has open or are their choices. The guy on one particular job has a different need than the area superintendent- higher management. How to finesse or do we just get arbitrarily simple. Since this is possibly an independent app masquerading as part of another app maybe we allow the app when chosen separately to first ask the project. (I'm leaning towards programs calling the app to auto choose the current project but when the app is opened separately give the user a choice of projects.)
 +  * Split choice screen like Local/​Access on the File list. This would be Journa/ Project Journal so a user could see just what they had done or could see the entire Project Log
 +  * Some items are single entries. Notes, Pictures, Measure Areas, but some are ongoing like machines. Do we allow hourly summaries for them? Is it a reporting log setting?
 +  * Sorting may need to be multi-level and allow filtering. Like just show all notes or only show machines for the last hour. The challenge will be to be mobile friendly. I may look at Zillow and Redfin apps for methods of filtering in apps since that's a major function for them.
 +  * Events are one line items with some useful info on that one line. They'​re expandable (like machine stats) or pickable (notes, pictures) that show the event in detail. ​
 +  * The single line event is customizable (how to keep simple) because different jobs have different focus. Some users care about cycle time (Barry Blanchard). Others care about move time, start time, cycles, etc. And I would be surprised if that even changed from job to job even within the same company.
 +  * All this means we'll need settings. Multilevel Sort
 +  * Set Equipment reminders/ Statistics events. For example a user could set a log entry to calculate statistics on a machine/​job?​ every hour or statistics as 10 AM. (Note, as I think about this I realize that this event structure is probably something that is both involved and may take a while to evolve.
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +===== Access.Agtek web interface =====
  
  
Line 564: Line 692:
 | 26620 | Install 6'​x6'​ Box | | 26620 | Install 6'​x6'​ Box |
  
 +===== Cost Code Server Data Model =====
 +Unification of cost codes across applications in important, and AGTEK Access is already
 +the focus for project related communication between user machines. Therefor it makes 
 +sense to implement cost codes in the server so mobile / desktop / web applications use
 +a unified cost code list. 
  
 +Cost codes must support the following behaviors:
 +  * A CostCodeList (ccl) is not limited to the number of entries.
 +  * Each entry consists of a code (alpha-numeric) and a description (alpha numeric)
 +  * Any project may use 1 more CCLs.
 +  * A project may share zero or more CCLs with other projects.
 +  * A project will always have a private CCL.
 +  * A CCL may have zero or more entries. CCLs with zero entries should be treated as non-existant.
 +  * Archiving a project will archive all associated CCLs
 +  * Restoring a project archive will restore CCLs such that; a list may be recreated or entries may be added to existing lists
  
  
 +Interface:
 +The CCLs must be available through the ACCESS api. The following methods are proposed to be added to the ProjectAPI.
  
 +   class CostCode
 +   {
 +      int handle;
 +      int projectHandle;​
 +      String code;
 +      String description;​
 +   }
 +   
 +   ​List<​CostCode>​ ProjectApi.getCostCodes( int projectHandle )
 +   ​void ​          ​ProjectApi.addCostCode( int projectListHandle )
 +   ​void ​          ​ProjectApi.deleteCostCode( CostCode cc )
 +   ​void ​          ​ProjectApi.updateCostCode( CostCode cc )
  
  
  
  
- +====== Story 10 TBD ======
- +
- +
- +
- +
-====== Story TBD ======+
  
 Moved from Story 7. TBD Moved from Story 7. TBD
Line 596: Line 747:
  
  
-====== Story Truck Versions ======+====== Story 11 Truck Versions ======
  
 We have a general idea of how Trucks operate on the job site but this will be our first pass at handling the slightly different needs. Some features/​statistics to consider are street map display instead of file backgrounds and stats like ETA and their display. Trucks are also used for different roles from dirt export/​import,​ materials import (like rock) to very  JIT things like paving. We have a general idea of how Trucks operate on the job site but this will be our first pass at handling the slightly different needs. Some features/​statistics to consider are street map display instead of file backgrounds and stats like ETA and their display. Trucks are also used for different roles from dirt export/​import,​ materials import (like rock) to very  JIT things like paving.
android/track/trackmanagerstories.1481742351.txt.gz · Last modified: 2016/12/14 19:05 by mikeclapp