# 04_business_flow/labor_management/04_02_02_labor_menu.md ## 1. 概要 労務管理メニューのトップページ。 管理側の「計算・管理・確定処理」を集約する。 給与明細・報酬明細・年末調整書類の出力(閲覧・ダウンロード)は各個人のマイページで行うため、本メニューには含めない。 ## 2. 画面構成 - ファイルパス: `master/labor/index.html` - 遷移元: TOPページ(`index.html`)の「労務関係」ボックス - ヘッダー: - 「← SPS BACK OFFICEへ」リンク - タイトル「労務管理メニュー」 - ユーザー名表示(`id="userDisplay"`) - コンテナ: `.card-grid` によるボックス表示(3列グリッド、モバイル時は1列) - 各ボックスは `.menu-card` クラスで構成し、見出し(`h3`)・説明(`p`)・ボタン(`.menu-button`)を持つ ## 3. 表示ボックスと遷移先 | ボックス | リンク先(backoffice以降) | 表示に必要な権限 | |---|---|---| | 給与・報酬計算 | master/labor/payroll.html | labor_payroll_calculate | | 勤怠管理 | master/labor/attendance.html | labor_attendance_manage | | 社会保険CSV出力 | master/labor/social_insurance_export.html | labor_social_insurance_export | | 年末調整(管理) | master/labor/year_end_adjustment.html | labor_year_end_adjustment | ## 4. 重要な方針 - 給与明細・報酬明細・年末調整書類の**出力(閲覧・DL)は各個人のマイページ(`/mypage.html`)**から行う。 - 本メニューには「計算・確定・管理」の機能のみを配置する。 - 各ボックスは表示権限を満たす場合のみ描画し、権限がない場合はDOMから削除する(非表示ではなく削除とすることで、URL直叩き以外の導線を絶つ)。 ## 5. 権限制御 - 各ボックスは `window.hasPermission('<必要な権限>')` が `true` の場合のみ描画する。 - 権限がない場合はボックス自体を非表示にする(`display: none;` またはDOMから削除)。 - `master_access` を持つユーザーはすべてのボックスが表示される。 - 権限チェックは `spsSessionReady` イベント発火後に行う。 ## 6. スクリプト構成(例) ```javascript window.addEventListener('spsSessionReady', function () { const boxes = [ { id: 'box-payroll', perm: 'labor_payroll_calculate' }, { id: 'box-attendance', perm: 'labor_attendance_manage' }, { id: 'box-social', perm: 'labor_social_insurance_export' }, { id: 'box-year-end', perm: 'labor_year_end_adjustment' } ]; boxes.forEach(function (b) { if (window.hasPermission(b.perm)) { document.getElementById(b.id).style.display = 'block'; } else { const el = document.getElementById(b.id); if (el) el.remove(); } }); }); ``` ## 7. 制約 - localStorage / sessionStorage 使用禁止。 - confirm() / alert() / prompt() 使用禁止。インラインのメッセージ表示で代替する。 - 権限チェックは `common/js/session.js` の `window.hasPermission()` を経由すること(画面ごとの個別実装は禁止)。 ## 8. 改訂履歴 | 日付 | 版 | 担当 | 内容 | |------|----|------|------| | 2026-10-26 | 1.0 | Deepseek | 初版作成 |