チケット

勤怠管理システムの自作-チケット予約画面

概要

当システムでは遅刻や早退などの実績を「チケット」という単位で管理しますが、その「チケット」への時刻入力を予約する機能です。

例えば
「遅刻するのは確実だが、実際に出社できる時刻は分からない。」という状況で使用します。

チケット予約画面で「遅刻」の予約データを登録します。
出社してから打刻すると、通常の打刻処理と同時に、遅刻チケットの終了時刻にも自動的に打刻が行われます。

仕組み

チケットデータを保持するテーブルと、打刻予約データを保持するテーブルの2テーブルで実現しています。

予約段階にあるチケットは通常のチケットとは別のテーブルで管理します(テーブルの構造は同じ)。

予約チケットの利用時間From、利用時間To両方に値が入った場合、正式なチケットとして登録を行います。具体的にはチケット予約テーブルから、チケットテーブルへデータを移動するだけです。

打刻予約データは以下のような構造です。

ユーザーIDチケットID予約タイプ
111(開始打刻)
112(終了打刻)

打刻処理時に予約されたチケットへの打刻も行います。
ユーザーID、チケットIDでグループ化して、
各グループから予約タイプの数値が最も小さい1件のデータを抽出。
抽出結果のチケットIDを対象に、予約タイプで指定された通りの打刻を行います。

タイトルとURLをコピーしました