Skip to content

Latest commit

 

History

History
70 lines (54 loc) · 2.92 KB

README.md

File metadata and controls

70 lines (54 loc) · 2.92 KB

CalcPartTimeJobsSalary

アルバイトの給料計算プログラム(GAS)

Googleカレンダーをベースに給料計算を行う。
指定したカレンダーに「バイト」or「バイト仮」の名称のイベントを作成することで、給料が自動的に計算される。

給料を計算後、プログラムは給料日に終日イベントを作成する。
そのイベントの説明欄に計算された給料が記される。

仕様

Input

  • シフトの管理はGoogleカレンダーで行う。
  • シフトのイベント名は「バイト」or「バイト仮」であること。

Output

  • 日給はイベントの説明欄に記載される。
    スクリーンショット 2024-06-30 234719
  • 月給は給料日に終日イベントが作成され、説明欄に記載される。
    スクリーンショット 2024-06-30 234725

給料計算

  • 時給は以下の4パターンが存在し、それぞれ時給が設定される
    • 平日 昼
    • 平日 夜
    • 休日(土日祝) 昼
    • 休日(土日祝) 夜
  • 夜間手当は、特定の時間以降の労働に対し支給される
  • 交通費は以下の2パターンが存在する
    • 日給
    • 月給
  • 給料日は毎月15日で、該当日が土日祝だった場合は繰り上げられ、前日の支給となる
    • この繰り上げは繰り返し行われるため、15日(日)の場合、給料日は13日(金)となる
  • 所得税等、税金関係は考慮しない

利用方法

1. GASの各定数を設定

// シフトを管理するカレンダーのID
const calendar = CalendarApp.getCalendarById('[email protected]');

// 祝日カレンダーのID(これは変更しない)
const jpHoliday = CalendarApp.getCalendarById("ja.japanese#[email protected]");

// 給料の定義
const salary = {
  "weekday": {"normal": 1030, "night": 1130},
  "weekend": {"normal": 1130, "night": 1130}
};

// 夜間手当支給開始時間の定義
const nightStartTime = 1700;

// 交通費(par 日)
const transpoEvery = 420;
// 交通費(par 月)
const transpoMonth = 0;

2. イベントトリガーを設定

お好みのタイミングでトリガーを設定してください。
私は1時間おきに設定しています。
image

トリガーに指定する関数はrunCalThisMonth(今月分給料)もしくは、runCalNextMonth(来月分給料)です。
お好みで選択してください。両方でも構いません。