Site icon Mr. 沙先生

Redmine 2.6 替甘特圖(gatt chart)的每週加上每月的每一天,並修改預設顯示視角

在 Redmine 的甘特圖(gatt chart)預設是 年 / 年週 來顯示

 

由於業務需求,希望客制加上 月/日 的每一天來方便觀看,並且 Redmine 預設的甘特圖視角太大了,希望每次預設顯示為 “一個月”

 

一樣此篇適用於 Redmine 2.6 版本

 

Redmine 替甘特圖加入每月的每一天

修改 show.html.erb,這是甘特圖顯示的 code。

$ vim /usr/share/nginx/html/redmine/app/views/gantts/show.html.erb

 

調整以下 Source code

@@ -237,6 +237,9 @@
     left = 0
     height = g_height + header_height - 1
     wday = @gantt.date_from.cwday
+
+    month_f = @gantt.date_from
+    mday = month_f.day
   %>
   <% (@gantt.date_to - @gantt.date_from + 1).to_i.times do %>
     <%
@@ -251,12 +254,18 @@
       clss << " nwday" if @gantt.non_working_week_days.include?(wday)
     %>
     <%= content_tag(:div, :style => style, :class => clss) do %>
-      <%= day_letter(wday) %>
+      <%= mday %> <!--%= day_letter(wday) % modified by tattoo-->
     <% end %>
     <%
       left = left + width + 1
       wday = wday + 1
       wday = 1 if wday > 7
+      
+      mday += 1
+      if mday > Date.new(month_f.year, month_f.month, -1).day
+        mday = 1 
+        month_f = month_f >> 1
+      end
     %>
   <% end %>
 <% end %>

 

– 代表移除此行 code

+ 代表加入的 code,其餘參考位置

 

重啟服務

$ service thin restart

 

 

Redmine 修改甘特圖視角

由 Redmine 預設的 Zoom in / out 視角為參考,找到喜歡的視角為 zoom 4。註1

$ vim /usr/share/nginx/html/redmine/app/views/gantts/show.html.erb

 

修改 show.html.erb :71

      <%= link_to_function l(:button_apply), '$("#query_form").submit()',
             :class => 'icon icon-checked' %>
-     <%= link_to l(:button_clear), { :project_id => @project, :set_filter => 1 },
+     <%= link_to l(:button_clear), { :project_id => @project, :set_filter => 4 },
             :class => 'icon icon-reload' %>

將預設 set_filter 改為 4,視角就會改變囉

 

重啟服務

$ service thin restart

 

 

 

 

 

註1:甘特圖視角,在放大 / 縮小的過程中,你可以從網址找到 zoom in / out 的數值

http://……./issues/gantt?month=9&months=6&year=2015&zoom=4

 

 

 

 

參考資料:

Change the week days to month days in Gantt view

Exit mobile version