Userモデルのdesignation_work_end_time(指定勤務終了時間)と
attendanceモデルのovertime_finished_at(残業終了時間)を使用し、下記の計算式
overtime_work(時間外) = overtime_finished_at - designation_work_end_timeの計算で表示したいのですが、うまく表示されません。エラーも出ない状況ですのでつまづいてしまいました。。。。
お手数おかけしますが、解決策を教えていただけると幸いです。
*attendansces_helper*
rb
1# 時間外時間 2 def overtime_worked_on(overtime_finished_at, designation_work_end_time) 3 format("%.2f", (((overtime_finished_at - designation_work_end_time) / 60) / 60.0)) 4 end
*attendanceのモーダル*
erb
1<% attendance.each do |day| %> 2 <%= f.fields_for "attendance[]", day do |d| %> 3 4 <tbody class="line"> 5 <% css_class = 6 case $days_of_the_week[day.worked_on.wday] 7 when '土' 8 'text-primary' 9 when '日' 10 'text-danger' 11 end 12 %> 13 <td><%= l(day.worked_on, format: :short) %></td> 14 <td class="<%= css_class %>"><%= $days_of_the_week[day.worked_on.wday] %></td> 15 16 ↓ここに表示したい 17 <td>overtime_worked_on(day.overtime_finished_at, user.designation_work_end_time)</td> 18 19 </tbody> 20 21 <% end %> 22 <% end %>
*該当個所のスキーマ*
rb
1create_table "attendances", force: :cascade do |t| 2t.datetime "overtime_worked_on" 3 4create_table "users", force: :cascade do |t| 5t.datetime "designation_work_end_time", default: "2020-10-08 09:00:00"
*現在の表示*
宜しくお願い致します。
回答1件
あなたの回答
tips
プレビュー