現在luxonで日付の取得を行っています。
「育児休業期間」(ラジオボタン)
選択肢:1年/1年半/2年
↑の選択肢によって、以下のいずれかに日付を入れるようにしています。
「●育児休業期間終了日(子の1歳到達時までのケース)」(日付)
「●育児休業期間終了日(1歳半まで延長)」(日付)
「●育児休業期間終了日(2歳まで延長)」(日付)
//フィールドの取得
var 出産日 = record['出産日'].value;
//出産予定日の時刻を取得
var 出産日_2 = luxon.DateTime.fromISO(出産日);
//育児休業期間の終了予定日・確定日を計算
// 終了確定日は出産日の1年後の前日(誕生日の前日)まで、
var 育児休業期間_終了確定_12ヵ月後 = 出産日_2.plus({months: 12});
var 育児休業期間_終了確定 = 育児休業期間_終了確定_12ヵ月後.minus({days: 1});
//育児休業期間(1年半)の終了確定日を計算
var 育児休業期間_終了確定_12ヵ月半後 = 出産日_2.plus({months: 18});
var 育児休業期間_終了確定_2 = 育児休業期間_終了確定_12ヵ月半後.minus({days: 1});
//育児休業期間(2年)の終了確定日を計算
var 育児休業期間_終了確定_24ヵ月後 = 出産日_2.plus({months: 24});
var 育児休業期間_終了確定_3 = 育児休業期間_終了確定_24ヵ月後.minus({days: 1});
全ての「日」は同じになるようにしたいと思っておりますが、
↑のコードだと、出産日が31日の場合に全て同じ日になりません。
例えば、「2021-10-31」を入力した場合、以下のようになってしまいます。
「●育児休業期間終了日(子の1歳到達時までのケース)」(日付)→「2022-10-30」
「●育児休業期間終了日(1歳半まで延長)」(日付)→「2023-04-29」
「●育児休業期間終了日(2歳まで延長)」(日付)→「2023-10-30」
以下のように表示させるにはどのようにすれば良いでしょうか。
「●育児休業期間終了日(子の1歳到達時までのケース)」(日付)→「2022-10-30」
「●育児休業期間終了日(1歳半まで延長)」(日付)→「2023-04-30」
「●育児休業期間終了日(2歳まで延長)」(日付)→「2023-10-30」