S-03 スタッフ 勤怠打刻¶
業務の流れ:05 勤務・勤怠の記録 の 23A 出勤を打刻する
| 項目 | 内容 |
|---|---|
| 画面 ID | S-03 |
| URL | /shift/staff/attendance |
| 開ける人 | スタッフのみ |
| 画面の目的 | 今日の確定した勤務に、出勤と退勤を打刻する |
スタッフはスマートフォンで使う前提のため、画面は縦長の 1 列で作られています。
画面¶
通常(出勤前・打刻できる時間帯)¶

出勤の確認ダイアログ¶

画面に出るもの¶
| 場所 | 内容 | 補足 |
|---|---|---|
| 見出し | 勤怠打刻 |
|
| 現在時刻 | HH:mm:ss |
1 秒ごとに書き換わります。日本時間です |
| お仕事カード | お仕事の名前/事業所の名前/勤務時間/休憩/出勤打刻/退勤打刻 | 打刻していない時刻は — |
| 操作 | 「出勤する」または「退勤する」ボタン、もしくは 勤務終了 |
下の「ボタンと操作」を参照 |
「現在時刻」を大きく出しているのは、打刻した時刻を本人がその場で 確かめられるようにするためです。
入力項目¶
この画面に入力欄はありません。打刻はボタンだけで行います。 打刻時刻はサーバが受け取った時刻で記録され、本人は指定できません。 自己申告の時刻で記録できると、勤怠の信頼性が無くなるためです。
ボタンと操作¶
出勤する¶
| 項目 | 内容 |
|---|---|
| 出る条件 | 勤怠の状態が「出勤前」のとき |
| 押せる条件 | 出勤時刻がまだ空で、かつ打刻できる時間帯であること |
| 確認ダイアログ | あり。見出し 出勤を打刻しますか? / 本文 {お仕事の名前} に出勤します。 / 実行ボタン 出勤する |
| 成功したとき | 出勤を打刻しました(画面右上の通知)。画面を取り直して「退勤する」に変わります |
| 失敗したとき | サーバからの文言。無ければ 出勤打刻に失敗しました |
| 使う API | POST /api/shift/attendance/{id}/clock-in/(AttendanceLogViewSet.clock_in) |
退勤する¶
| 項目 | 内容 |
|---|---|
| 出る条件 | 勤怠の状態が「勤務中」または「休憩中」のとき |
| 押せる条件 | 退勤時刻がまだ空で、かつ打刻できる時間帯であること |
| 確認ダイアログ | あり。見出し 退勤を打刻しますか? / 本文 {お仕事の名前} を退勤します。 / 実行ボタン 退勤する |
| 成功したとき | 退勤を打刻しました。画面を取り直して 勤務終了 の表示に変わります |
| 失敗したとき | サーバからの文言。無ければ 退勤打刻に失敗しました |
| 使う API | POST /api/shift/attendance/{id}/clock-out/(AttendanceLogViewSet.clock_out) |
押せないときの案内¶
ボタンが押せないときは、理由がボタンの下に出ます。 押せない理由が分からないと、本人が事業所に問い合わせられないためです。
| 状況 | 出る文言 |
|---|---|
| 出勤時刻が既に入っている | 出勤時刻は入力済みです。修正は事業所にご依頼ください。 |
| 出勤の時間帯の外 | 出勤打刻は勤務開始の60分前から勤務終了までです。 |
| 退勤時刻が既に入っている | 退勤時刻は入力済みです。修正は事業所にご依頼ください。 |
| 退勤の時間帯の外 | 退勤打刻の受付は勤務終了の3時間後までです。事業所にご連絡ください。 |
時刻が入っているときにボタンを止めるのは、事業所が手で直した時刻を 打刻で上書きしないためです(サーバ側でも拒否しますが、 押せてしまうと何が起きたか分かりません)。
打刻できる時間帯¶
| 打刻 | 受け付ける範囲 |
|---|---|
| 出勤 | 予定の開始の 60 分前 〜 予定の終了まで |
| 退勤 | 予定の終了の 3 時間後 まで |
夜をまたぐ勤務(終了時刻が開始時刻以下のとき)は、終了を翌日として 数えます。同じ日として扱うと時間帯が成立せず、一切打刻できなくなるためです。
この判定は画面とサーバの両方で行い、同じ値を使います。 ずれると「押せるのに保存できない」状態になるためです。 詳しくは 04 業務ルール を見てください。
今日の勤務が複数あるとき¶
打刻できる時間帯に入っているものの中から、予定の開始がいまに一番近いもの を 1 つ選んで大きく表示します。同時に複数を出すと押し間違えるためです。
状態ごとの表示¶
| 状況 | 表示 |
|---|---|
| 読み込み中 | 画面中央に読み込み中の印 |
| 取得に失敗 | エラーの文言と「再試行」。押すと取り直します |
| 今日の確定した勤務が無い | 本日の勤務はありません / 補足 今日の確定済みのお仕事はありません。 |
| 今日の勤務はあるが時間帯の外 | 本日の勤務はありません / 補足 時間外のため打刻できません。勤務開始 1 時間前から打刻可能です。 / その下に今日のお仕事を参考として一覧表示 |
| 退勤済み・承認済み | 勤務終了(ボタンは出ません) |
時間帯の外でも今日のお仕事を出すのは、「自分の予定が消えた」と 誤解させないためです。
権限¶
| 利用者 | 開けるか |
|---|---|
| スタッフ | 開ける |
| 企業アカウント・事業所アカウント | 開けない(スタッフ用の画面のため) |
| Gipple 管理者 | 開けない |
一覧を取る API(GET /api/shift/staff/attendance/today/)は
スタッフ専用です。企業側は C-12 勤怠管理 を使います。
事業所が停止しているとき¶
スタッフの画面は「選択中の事業所」を使わないため、この画面は停止の影響を 受けません。ただし、所属そのものが止められている場合はログインできません。
遷移先と使う API¶
| 操作 | 遷移先 |
|---|---|
| 下のメニュー「さがす」 | /shift/staff/search |
| 下のメニュー「予定確認」 | /shift/staff/schedule |
| 下のメニュー「マイページ」 | /shift/staff/mypage |
| 使う API | いつ |
|---|---|
GET /api/shift/staff/attendance/today/ |
画面を開いたとき、打刻のあと |
POST /api/shift/attendance/{id}/clock-in/ |
出勤したとき |
POST /api/shift/attendance/{id}/clock-out/ |
退勤したとき |