我建立一個新的時鐘進度系統爲我公司和我有一些麻煩搞清楚如何在某一特定日期添加所有的時間戳之間的時間差......時差陣列時間戳之間
這裏是我的看法....
<% @punches_days.sort.each do |day, punches|%>
<h3><%= day.strftime('%A %D') %></h3>
<table>
<tr>
<th>Status</th>
<th>Comment</th>
<th>Time</th>
<th></th>
<th></th>
</tr>
<% for punch in punches %>
<tr>
<td><%= punch.status %></td>
<td><%= punch.comment %></td>
<td><%= punch.created_at.in_time_zone(punch.user.time_zone)%></td>
<td><%= link_to 'Show', punch %></td>
<td><%= link_to 'Edit', edit_punch_path(punch) %></td>
<td><%= link_to 'Destroy', punch, :confirm => 'Are you sure?', :method => :delete %></td>
</tr>
<% end %>
</table>
<% end %>
產生這個...
Sunday 11/06/11
Status Comment Time
In 2011-11-06 08:00:00 -0500 Show Edit Destroy
Lunch 2011-11-06 12:00:00 -0500 Show Edit Destroy
In 2011-11-06 13:00:00 -0500 Show Edit Destroy
Out 2011-11-06 16:00:00 -0500 Show Edit Destroy
Tuesday 11/08/11
Status Comment Time
In 2011-11-08 08:00:00 -0500 Show Edit Destroy
Lunch 2011-11-08 12:15:00 -0500 Show Edit Destroy
In 2011-11-08 13:00:00 -0500 Show Edit Destroy
Out 2011-11-08 16:41:00 -0500 Show Edit Destroy
我,我想什麼是能夠吻合的時間每一天,然後一個總所有。我知道如何獲得兩次之間的時間差,但我無法繞過我的頭,得到一整天的時間差異......
我已經找到了一個什麼樣的網絡我試圖完成,並已拿出空...任何想法,將不勝感激....
謝謝...
EDIT)
這是我用的一部分控制器代碼解決方案的實施,這確實給了我一個,但是,我不能每天都這樣做,因爲我如何使用有序散列。 ..
def timecard
@punches = Punch.timecard(params[:user])
@punches_days = @punches.group_by { |t| t.created_at.beginning_of_day}
@in_out_lengths = @punches.each_slice(2).map { |a| a[1].created_at - a[0].created_at }
@total = ((@in_out_lengths.inject(:+))/1.hour).round
respond_to do |format|
format.html # timecard.html.erb
format.json { render :json => @punches }
end
end
我對你的數據有點困惑。看起來好像有人在週日的12:15衝刺,直到週二11:10纔打出拳頭。這是一個很長的轉變。 –
我想這將是大聲笑,但這只是樣本數據,我還沒有寫驗證,以趕上這樣的事情呢...只是試圖把現在的堅果和螺栓...... –
所以真正的數據應該總是看起來像'[衝入,衝出,衝入,衝出......]「呢? –