Browse Source

Fixed postgresql ERROR: date/time field value out of range: "2016-6-31" issue.

Martin Edenhofer 8 years ago
parent
commit
2137250bae
2 changed files with 6 additions and 5 deletions
  1. 4 3
      app/controllers/reports_controller.rb
  2. 2 2
      lib/report/article_by_type_sender.rb

+ 4 - 3
app/controllers/reports_controller.rb

@@ -159,9 +159,10 @@ class ReportsController < ApplicationController
       stop = Date.parse(start).end_of_month
       range = 'day'
     else
-      start = "#{params[:year]}-01-01"
-      stop = "#{params[:year]}-12-31"
-      range = 'month'
+      start     = "#{params[:year]}-01-01"
+      stop_date = Date.parse(day_start).end_of_month
+      stop      = "#{stop_date.year}-#{stop_date.month}-#{stop_date.day}"
+      range     = 'month'
     end
     {
       profile: profile,

+ 2 - 2
lib/report/article_by_type_sender.rb

@@ -56,8 +56,8 @@ returns
         stop = start + 1.minute
       end
       query, bind_params, tables = Ticket.selector2sql(params[:selector])
-      sender = Ticket::Article::Sender.lookup( name: params[:params][:sender] )
-      type   = Ticket::Article::Type.lookup( name: params[:params][:type] )
+      sender = Ticket::Article::Sender.lookup(name: params[:params][:sender])
+      type   = Ticket::Article::Type.lookup(name: params[:params][:type])
       count = Ticket::Article.joins('INNER JOIN tickets ON tickets.id = ticket_articles.ticket_id')
                              .where(query, *bind_params).joins(tables)
                              .where(