Skip to content

meggsila/EmployeeCheckin

Repository files navigation

EmployeeCheckin

EmployeeCheckin is an iOS application built using the MVVM architecture with interoperability between Swift and Objective-C. The storage used is Core Data.
This app allows employees to check in their time using a date picker.
When the user has not checked in yet, the date picker is initialized with 06:30 of the current day, retrieved from a mocked API call. After the user checks in, the date picker will display their latest check-in time.

FUNCTIONALITIES

  • 📆 Datetime Picker
    Users can select their desired check-in time. The selected time is validated to ensure it's not in the future limited by a range till the current date.

  • 🌐 API Integration
    The date picker is initialized with with 06:30 of the current day, retrieved from a mocked API call. The mock API response is in JSON format: {"dateTime": "yyyy-MM-dd HH:mm"}.

  • 💽 Persistence
    The app has a CoreData database with a table named Employee containing a single attribute called check_in_date_time.
    I have performed a minor CoreData migration to add a new attribute called name with a default value

  • 🏛️ Architecture
    EmployeeCheckin follows the MVVM architecture pattern.
    CheckinViewModel manages Core Data operations while NetworkingViewModel takes care of networking.

USAGE

  • Launch the EmployeeCheckin app.
  • Press the "Start" button to access the check-in screen.
  • Use the date picker to select your desired check-in time.
  • Press the "Submit" button to save your check-in time.
  • Your check-in time is now saved in the database and displayed in first screen.


banner

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published