Admin Help & Guide

Welcome to the WJW Tiffins system manual. Here you can find details on how the application works, configuration keys, and daily workflows.

1. System Settings & Keys

The Settings tab allows you to configure dynamic keys used across the application. Below are the core keys you must configure, what they do, and sample values.

Setting NameDescriptionSample Value
UPI_IDThe primary UPI address shown to students during checkout.wjwtiffins@sbi
price_classic_fixedMonthly subscription price (in INR) for the Classic Fixed meal plan.2500
price_customMonthly subscription price (in INR) for the Custom meal plan.3000
locationAdd multiple rows with this exact name to define available delivery locations.Hostel A
ORDER_CUTOFF_HOURThe hour (0-23) when Next-Day deliveries are locked in. After this time, meals are generated for cooks.17 (5:00 PM)
API_LOGGING_ENABLEDEnables or disables automatic server log tracking and file rollovers.true / false

2. Subscriptions & Users

Student Onboarding

When a student signs up, they are directed to the Subscribe page. They must select a meal plan, enter their location, make a payment to the configured `UPI_ID`, and upload a screenshot of the receipt. Their subscription enters a Pending state.

Admin Approval

In the Users tab, Admins see users with Pending subscriptions highlighted. Clicking on a user reveals their uploaded payment receipt. Clicking "Approve" activates their plan for exactly 30 days and grants them full dashboard access.

3. Daily Deliveries & Riders

The system automatically coordinates between Students, Cooks, and Riders using background jobs.

  • 1
    Midnight Job: Every night at 12:01 AM, the backend automatically looks at all Active student subscriptions and generates Delivery records for the day (e.g. Lunch and Dinner).
  • 2
    Rider App: Riders log in and see a list of deliveries assigned to their location. As they drop off food, they upload a photo and mark it Delivered.
  • 3
    Student Visibility: The moment a Rider marks a meal as delivered, the student dashboard updates in real-time. Students can view the proof-of-delivery image for exactly 1 hour, after which the delivery card is hidden to keep the UI clean.

4. Storage Limits & Cleanup Jobs

To prevent the AWS server from running out of disk space, the following automated limitations and cleanup jobs are active 24/7:

  • 2MB Upload Limit: Any image uploaded by a Student (Payment Receipt) or a Rider (Delivery Proof) must be under 2 Megabytes.
  • Payment Receipt Cleanup: Automatically deletes subscription payment screenshots 20 days after they are uploaded.
  • Delivery Proof Cleanup: Automatically deletes rider delivery photos just 5 days after the delivery is completed.