care_month: 1. There have to be 16 measurement days. (is_cellular). 2. At the 16th measurement day: BOTH the MCP and the RME/RMM are prompted to sign off. --> we have to somehow make sure MCP time billed >= 30. --> we have to somehow make sure EXTRA time >= 20. 3. THE EASIEST WAY to do this is going to be by enabling a stamp feature on measurements. // stamp all within safe range on UI class MeasurementStamp // have to be done within that month... Measurement measurement; Pro pro; String memo; // auto-suggest Boolean communicatedToPatient; // // NOT OKAY!!!!! FIRST TIME REQUIRED - after first time, no forcing - in order to click this checkbox, you first have to fire off an email or text message to the patient - autosuggested message: "Hi {name}! Your weight looks normal, keep it up!". // THIS REQUIRES A PHONE-CALL ATTESTATION BY NON-HCP. ALTER TABLE measurement ADD COLUMN has_been_stamped_by_mcp BOOLEAN DEFAULT FALSE; ALTER TABLE measurement ADD COLUMN has_been_stamped_by_non_hcp BOOLEAN DEFAULT FALSE; ** For curiosity sake... ALTER TABLE measurement ADD COLUMN has_been_stamped_by_rme BOOLEAN DEFAULT FALSE; ALTER TABLE measurement ADD COLUMN has_been_stamped_by_rmm BOOLEAN DEFAULT FALSE; 4. DISABLE THE CONVENTIONAL CRUD UI for 'care_month_entry' for anyone. We literally ONLY want the time they can bill each month to = 30 / 20 and it only becomes relevant if 16 measurement days. * From now on, we will only submit RM30_HCP or RM30_HCP_PLUS_20EXTRA. We don't want to bill anything else. Remember - it is not possible for a care_month to be billed unless 16 days anyway, so no sense in care_month_entries that are accruing time that won't be paid anyway. So once you reach day 16, auto care-month-entry to reach MCP to 30 mins. *** BAD IDEA *** If there is also a MeasurementStamp by a non-HCP, then there is another prompt for any non-MCP to bill their 20 mins. *** WE DON'T WANT THEM TO RMM to think in 'minutes', just measurement days and at least one stamp needs to be communicatedToPatient = true. *** So literally, for non-HCP it's just a scoreboard - hit 16 and get paid!!! There are two possibilities: MCP can bill 30 mins. but the non-MCP can or can't bill 20 mins. properly - because they did not have communicatedToPatient=true. ONCE WE HAVE REACHED THE APPROPRIATE #16 measurement days and generated approp. MINUTES (30 HCP, and possibly 20 non-HCP extra IF there is a communicatedToPatient=true record), we auto-generate RM30_HCP_PLUS_EXTRA20 if possible OR... at the stroke of midnight EST on the next month start 1st of month (**or some weird logic for Feb. maybe), we generate RM30_HCP and digitize warning to the RMM. *** so offline, what may happen in a bad case is: "Hey NA/RMM, did you guys not do anything? Oh - okay. Guess we will bill RM30_HCP, but next month please focus and let's do RM30_HCP_PLUS_EXTRA20 aka, you need to stamp and contact patient at least once on a month they measured 16 times!" For MCP: MCP sees a pending bill for them to sign, and they sign it. The UI should not say "RM30_HCP" it should say simply "Billable time: 30 minutes, {{RM30_HCP rate}}" For RMM: RMM sees a pending bill for them to sign, and they sign it. The UI should not say "RM30_HCP_PLUS_EXTRA20" it should say simply "Congrats! 16 days achieved. {{RM30_HCP rate for RMM}}" 5. TO PROCESS THESE CARE-MONTHS: - understand that what we need flows like this: - ENCOURAGE VIGILENCE to make sure everyone reaches 16. - Pt. list with measurement days column, green row if >= 16. - red row if 15... - orange if 14... - gray if dead... can't achieve 16 even if they want. FOR BILLERS: no work. Auto-generate claim as per billable code. There needs to be a simple UI similar to Note Resolver where you see the CareMonth including stamps and the ultra-important ONE or TWO care-month-entries that correlate to what bill to process. With one click - generate claim with lines as per spec. That's it. FOR ICD::: - ClientCmRmReason // ... limit to 4 per cm/rm - CareMonthCmRmReason // ... TODO @Josh... make sure... // NEEDED IN SYSTEM: explicit crud on ClientCmRmReason && CareMonthCmRmReason // Josh dev endpoint to generate... ------------------------------------------------------------------------------------- Ongoing: reminders to push ppl to reach 16.