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

2015-09-07 Redmine

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

ScreenShot 2015-09-07 00.21.24

 

由於業務需求,希望客制加上 月/日 的每一天來方便觀看,並且 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

ScreenShot 2015-09-07 00.40.40

 



 

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

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

  1. Josh表示:

    dear 沙先生您好!
    您的文章非常的實戰,實用!對成是開發者可以說長得有幫助!
    有一個小問題想跟您請教!
    最近在改redmine的程式!怎麼改都改不上去!
    已經在本機Redmine 的 developement mode 下確認我改的程式是work的了!

    但是換上正式機(production mode)後Redmine卻好完全不更新程式依樣!
    完全不鳥我! 即使重啟阿帕契後也一樣照跑舊Code!彷彿沒修改過一樣!
    我也試過bundle exec rake tmp:cache:clear tmp:sessions:clear RAILS_ENV=production  清掉cache也沒用 想請教您一下
    sincerely Josh

    • shazi7804表示:

      Dear Josh

      我想你的問題看起來像是沒有生效修改後的 source code,想請您嘗試以下幾種方式
      1. kill掉所有 rails & thin 的服務進程,重新啟動 rails 使用 production
      ruby script/rails server webrick -e production

      2. 確認你 apache 連的 thin socket 不是舊有的 socket
      3. 如果以上方式都無效,請查看 redmine 的 log 啟動時的參數是否正確 %redmine_root%/log/production.log

給 Mr. 沙先生一點建議

彙整

分類

展開全部 | 收合全部

License

訂閱 Mr. 沙先生 的文章

輸入你的 email 用於訂閱