We are doing something similar with catch basin inspections.
What we've done is to set up our geodatabase with a feature class to store catch basin locations and attributes and an inspections table that is related to the feature class with a geodb relationship class (1 to many, catch basins to inspections).
We then add both to Arcmap and use a definition expression to limit the catch basin feature class records to those that have not had a completed inspection within the last two years.
This is then published to our ArcGIS server as an editable feature service and we then include this service in a web map (we use Portal but I believe this would work with AGOL as well).
The inspector can then load the web map in Collector and as he completes a new inspection record (by creating a new related inspection record), the catch basin the inspection was completed on will be excluded by the definition expression as it now has a recent inspection record. Two years from the date the last inspection was completed, it will again be displayed on the map.
Its working pretty well for us. The only problem we've had is that creating a related inspection record does not automatically trigger a refresh of the catch basin layer so the item does not immediately disappear from the map. You need to sufficiently zoom in/out etc to trigger the catch basin layer to refresh.
Hope this helps!