mirror of
https://github.com/ElvishArtisan/rivendell.git
synced 2025-07-23 16:08:15 +02:00
Added date/time checks for MySQL v5.7+ date/time nulls
Shouldn't be necessary in the daypart SQL but can't verify validity so added checks there too.
This commit is contained in:
parent
d222ed9ca0
commit
e2eb07c615
@ -347,20 +347,19 @@ bool RDReport::generateReport(const QDate &startdate,const QDate &enddate,
|
|||||||
QDate date=startdate.addDays(i);
|
QDate date=startdate.addDays(i);
|
||||||
if(startTime()<endTime()) {
|
if(startTime()<endTime()) {
|
||||||
daypart_sql+=QString("((EVENT_DATETIME>=\"")+
|
daypart_sql+=QString("((EVENT_DATETIME>=\"")+
|
||||||
date.toString("yyyy-MM-dd")+
|
RDCheckDateTime(date,"yyyy-MM-dd")+
|
||||||
" "+startTime().toString("hh:mm:ss")+"\")&&"+
|
" "+RDCheckDateTime(startTime(),"hh:mm:ss")+"\")&&"+
|
||||||
"(EVENT_DATETIME<\""+date.toString("yyyy-MM-dd")+
|
"(EVENT_DATETIME<\""+RDCheckDateTime(date,"yyyy-MM-dd")+
|
||||||
" "+endTime().toString("hh:mm:ss")+"\"))||";
|
" "+RDCheckDateTime(endTime(),"hh:mm:ss")+"\"))||";
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
daypart_sql+=QString("((EVENT_DATETIME<=\"")+
|
daypart_sql+=QString("((EVENT_DATETIME<=\"")+
|
||||||
date.toString("yyyy-MM-dd")+
|
RDCheckDateTime(date,"yyyy-MM-dd")+
|
||||||
" "+endTime().toString("hh:mm:ss")+"\")&&"+
|
" "+RDCheckDateTime(endTime(),"hh:mm:ss")+"\")&&"+
|
||||||
"(EVENT_DATETIME>\""+date.toString("yyyy-MM-dd")+" 00:00:00))||"+
|
"(EVENT_DATETIME>\""+RDCheckDateTime(date,"yyyy-MM-dd")+" 00:00:00))||"+
|
||||||
"((EVENT_DATETIME>=\""+
|
"((EVENT_DATETIME>=\""+RDCheckDateTime(date,"yyyy-MM-dd")+
|
||||||
date.toString("yyyy-MM-dd")+
|
" "+RDCheckDateTime(startTime(),"hh:mm:ss")+"\")&&"+
|
||||||
" "+startTime().toString("hh:mm:ss")+"\")&&"+
|
"(EVENT_DATETIME<\""+RDCheckDateTime(date,"yyyy-MM-dd")+" 23:59:59))||";
|
||||||
"(EVENT_DATETIME<\""+date.toString("yyyy-MM-dd")+" 23:59:59))||";
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -534,9 +533,9 @@ bool RDReport::generateReport(const QDate &startdate,const QDate &enddate,
|
|||||||
// Daypart Filter
|
// Daypart Filter
|
||||||
//
|
//
|
||||||
if(daypart_sql.isEmpty()) {
|
if(daypart_sql.isEmpty()) {
|
||||||
sql+=QString("(EVENT_DATETIME>=\"")+startdate.toString("yyyy-MM-dd")+
|
sql+=QString("(EVENT_DATETIME>=\"")+RDCheckDateTime(startdate,"yyyy-MM-dd")+
|
||||||
" 00:00:00\")&&"+
|
" 00:00:00\")&&"+
|
||||||
"(EVENT_DATETIME<=\""+enddate.toString("yyyy-MM-dd")+
|
"(EVENT_DATETIME<=\""+RDCheckDateTime(enddate,"yyyy-MM-dd")+
|
||||||
" 23:59:59\")&&";
|
" 23:59:59\")&&";
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
@ -555,8 +554,8 @@ bool RDReport::generateReport(const QDate &startdate,const QDate &enddate,
|
|||||||
q1->value(1).toUInt(),
|
q1->value(1).toUInt(),
|
||||||
q1->value(2).toInt())+
|
q1->value(2).toInt())+
|
||||||
"STATION_NAME=\""+RDEscapeString(q1->value(3).toString())+"\","+
|
"STATION_NAME=\""+RDEscapeString(q1->value(3).toString())+"\","+
|
||||||
"EVENT_DATETIME=\""+RDEscapeString(q1->value(4).toDateTime().
|
"EVENT_DATETIME=\""+RDCheckDateTime(q1->value(4).toDateTime(),
|
||||||
toString("yyyy-MM-dd hh:mm:ss"))+"\","+
|
"yyyy-MM-dd hh:mm:ss")+"\","+
|
||||||
QString().sprintf("EVENT_TYPE=%d,",q1->value(5).toInt())+
|
QString().sprintf("EVENT_TYPE=%d,",q1->value(5).toInt())+
|
||||||
"EXT_START_TIME=\""+RDEscapeString(q1->value(6).toString())+"\","+
|
"EXT_START_TIME=\""+RDEscapeString(q1->value(6).toString())+"\","+
|
||||||
QString().sprintf("EXT_LENGTH=%d,",q1->value(7).toInt())+
|
QString().sprintf("EXT_LENGTH=%d,",q1->value(7).toInt())+
|
||||||
@ -572,7 +571,7 @@ bool RDReport::generateReport(const QDate &startdate,const QDate &enddate,
|
|||||||
"TITLE=\""+RDEscapeString(q1->value(16).toString())+"\","+
|
"TITLE=\""+RDEscapeString(q1->value(16).toString())+"\","+
|
||||||
"ARTIST=\""+RDEscapeString(q1->value(17).toString())+"\","+
|
"ARTIST=\""+RDEscapeString(q1->value(17).toString())+"\","+
|
||||||
"SCHEDULED_TIME=\""+
|
"SCHEDULED_TIME=\""+
|
||||||
q1->value(18).toDate().toString("yyyy-MM-dd hh:mm:ss")+"\","+
|
RDCheckDateTime(q1->value(18).toDate(),"yyyy-MM-dd hh:mm:ss")+"\","+
|
||||||
QString().sprintf("START_SOURCE=%d,",q1->value(19).toInt())+
|
QString().sprintf("START_SOURCE=%d,",q1->value(19).toInt())+
|
||||||
"PUBLISHER=\""+RDEscapeString(q1->value(20).toString())+"\","+
|
"PUBLISHER=\""+RDEscapeString(q1->value(20).toString())+"\","+
|
||||||
"COMPOSER=\""+RDEscapeString(q1->value(21).toString())+"\","+
|
"COMPOSER=\""+RDEscapeString(q1->value(21).toString())+"\","+
|
||||||
@ -923,7 +922,7 @@ void RDReport::SetRow(const QString ¶m,const QTime &value) const
|
|||||||
|
|
||||||
sql=QString().sprintf("UPDATE REPORTS SET %s=\"%s\" WHERE NAME=\"%s\"",
|
sql=QString().sprintf("UPDATE REPORTS SET %s=\"%s\" WHERE NAME=\"%s\"",
|
||||||
(const char *)param,
|
(const char *)param,
|
||||||
(const char *)value.toString("hh:mm:ss"),
|
(const char *)RDCheckDateTime(value, "hh:mm:ss"),
|
||||||
(const char *)report_name);
|
(const char *)report_name);
|
||||||
q=new RDSqlQuery(sql);
|
q=new RDSqlQuery(sql);
|
||||||
delete q;
|
delete q;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user