sheltermanager / asm3

Animal Shelter Manager
GNU General Public License v3.0
109 stars 65 forks source link

Entry history #25

Closed bobintetley closed 1 year ago

bobintetley commented 7 years ago

Some shelters would like to record new intake history every time an animal comes in, while still retaining the existing history.

Add a new table animalentry

ID AnimalID ShelterCode ShortCode EntryDate AdoptionCoordinatorID BroughtInByOwnerID OriginalOwnerID EntryReasonID AsilomarIntakeCategory JurisdictionID IsTransfer AsilomarIsTransferExternal IsPickup PickupLocationID PickupAddress ReasonNO ReasonForEntry

The details toolbar should have a button to record new entry details "New Entry" (is this better on the Entry slider itself? Try both).

Clicking it saves the existing entry fields to the animalentry table and then clears the fields ready for entry. Copy the original owner from the owner on the latest returned movement, and copy the returning person to broughtinby and returned reason to entry category.

The "New Entry" button only appears if the animal is on shelter and has at least one movement with a return on file - this is important because that movement return date is going to be shown as the current date brought in and it won't be editable (MostRecentEntryDate).

The entry date field for the newly created record either needs to be datebroughtin or the return date from the previous movement (not the current one) if one exists.

A new slider for Entry History shows the historic entries from animalentry in a read only manner, which appears if there are any entries.

Historically, everything has treated DateBroughtIn as the first time the animal ever entered the shelter. It would break far too much existing functionality and reports to change this and there's no need.

In the UI, once there is at least one entry history record, show a read-only version of MostRecentEntryDate in place of the editable DateBroughtIn. This can be set by the latest movement return date and showing this read only will force things to stay in sync as it stops people entering entry dates that differ from movement dates.

We could also put this functionality behind an option as many people do not really want or need it. "Allow multiple intake histories to be stored".

bobintetley commented 3 years ago

other considerations are additional fields on the entry slider

bobintetley commented 2 years ago

too big for 45 now

bobintetley commented 2 years ago

Shelter codes are calculated from datebroughtin - this could be safely changed so that they calculate from MostRecentEntryDate instead. Clicking the New Intake button should generate a new code for the animal automatically using the entry date.

bobintetley commented 2 years ago

This will need its own section and explanation in the manual.

ibesky commented 2 years ago

Could datebroughtin still be used to create shelter code but give the user the option to link other (sometimes multiple) entries so that they can more easily see how many times the animal has been in? Might be easiest for post-intake adjustment (ie: we had this dog 7 times 3 years ago but nobody remembered until he was with us for 3 days)

I'd like to see the idea for this and assist with feasibility/ease of clicking (minor coding if in my limited ability). My shelter is using a workaround to link and it doesn't work very well as our data entry person is often sleep deprived and forgets.

bobintetley commented 2 years ago

yes, that's what this issue is describing - recording multiple entries! Shelter codes very frequently have some kind of date component so it would not make sense to continue to use datebroughtin for subsequent entries after the first. The older entries would record the previous sheltercodes used.