|
@@ -384,6 +384,8 @@ class tools {
|
|
|
|
|
|
|
|
//数据转换前端需要的显示的格式
|
|
//数据转换前端需要的显示的格式
|
|
|
$rules["shipment_transport_mode"] = utils::converModeToDisplay($rules["shipment_transport_mode"]);
|
|
$rules["shipment_transport_mode"] = utils::converModeToDisplay($rules["shipment_transport_mode"]);
|
|
|
|
|
+ $rules["daily_time_zone"] = utils::comvertutcinfo($rules["daily_time_zone"]);
|
|
|
|
|
+ $rules["weekly_time_zone"] = utils::comvertutcinfo($rules["weekly_time_zone"]);
|
|
|
|
|
|
|
|
$monitoring_data[$rules_type] = $rules;
|
|
$monitoring_data[$rules_type] = $rules;
|
|
|
common::echo_json_encode(200,$monitoring_data);
|
|
common::echo_json_encode(200,$monitoring_data);
|
|
@@ -606,10 +608,11 @@ class tools {
|
|
|
timezone(ni.daily_time_zone,ni.insert_date)::date < timezone(ni.daily_time_zone, NOW())::date - '1 days'::INTERVAL
|
|
timezone(ni.daily_time_zone,ni.insert_date)::date < timezone(ni.daily_time_zone, NOW())::date - '1 days'::INTERVAL
|
|
|
end))
|
|
end))
|
|
|
or (ni.frequency_type = 'Weekly'
|
|
or (ni.frequency_type = 'Weekly'
|
|
|
- and (case when (timezone(ni.weekly_time_zone, NOW())::time > ni.weekly_time::time)
|
|
|
|
|
- then timezone(ni.weekly_time_zone,ni.insert_date)::date <= (timezone(ni.weekly_time_zone,ni.insert_date)::date + (((ni.weekly_week::integer - EXTRACT(dow FROM timezone(ni.weekly_time_zone,ni.insert_date)::date)::integer + 7) % 7)-1 + CASE WHEN EXTRACT(DOW FROM timezone(ni.weekly_time_zone,ni.insert_date)::date)::integer=ni.weekly_week::integer THEN 7 ELSE 0 END ||' days')::INTERVAL)::date
|
|
|
|
|
|
|
+ and (case when (timezone(ni.weekly_time_zone, NOW())::time < ni.weekly_time::time
|
|
|
|
|
+ and timezone(ni.weekly_time_zone,NOW())::date = (timezone(ni.weekly_time_zone,NOW())::date - (((EXTRACT(dow FROM timezone(ni.weekly_time_zone,NOW())::date)::integer - ni.weekly_week::integer + 7) % 7) ||' days')::INTERVAL)::date)
|
|
|
|
|
+ then timezone(ni.weekly_time_zone,ni.insert_date)::date < ((timezone(ni.weekly_time_zone,NOW())::date - (((EXTRACT(dow FROM timezone(ni.weekly_time_zone,NOW())::date)::integer - ni.weekly_week::integer + 7) % 7) ||' days')::INTERVAL)::date - '7 days'::INTERVAL)::date
|
|
|
else
|
|
else
|
|
|
- timezone(ni.weekly_time_zone,ni.insert_date)::date < (timezone(ni.weekly_time_zone,ni.insert_date)::date - (((EXTRACT(dow FROM timezone(ni.weekly_time_zone,ni.insert_date)::date)::integer - ni.weekly_week::integer + 7) % 7) ||' days')::INTERVAL)::date
|
|
|
|
|
|
|
+ timezone(ni.weekly_time_zone,ni.insert_date)::date < (timezone(ni.weekly_time_zone,NOW())::date - (((EXTRACT(dow FROM timezone(ni.weekly_time_zone,NOW())::date)::integer - ni.weekly_week::integer + 7) % 7) ||' days')::INTERVAL)::date
|
|
|
end)))
|
|
end)))
|
|
|
group by ni.notifiation_type,insert_date_format
|
|
group by ni.notifiation_type,insert_date_format
|
|
|
union all
|
|
union all
|
|
@@ -718,10 +721,11 @@ class tools {
|
|
|
timezone(ni.daily_time_zone,ni.insert_date)::date < timezone(ni.daily_time_zone, NOW())::date - '1 days'::INTERVAL
|
|
timezone(ni.daily_time_zone,ni.insert_date)::date < timezone(ni.daily_time_zone, NOW())::date - '1 days'::INTERVAL
|
|
|
end))
|
|
end))
|
|
|
or (ni.frequency_type = 'Weekly'
|
|
or (ni.frequency_type = 'Weekly'
|
|
|
- and (case when (timezone(ni.weekly_time_zone, NOW())::time > ni.weekly_time::time)
|
|
|
|
|
- then timezone(ni.weekly_time_zone,ni.insert_date)::date <= (timezone(ni.weekly_time_zone,ni.insert_date)::date + (((ni.weekly_week::integer - EXTRACT(dow FROM timezone(ni.weekly_time_zone,ni.insert_date)::date)::integer + 7) % 7)-1 + CASE WHEN EXTRACT(DOW FROM timezone(ni.weekly_time_zone,ni.insert_date)::date)::integer=ni.weekly_week::integer THEN 7 ELSE 0 END ||' days')::INTERVAL)::date
|
|
|
|
|
|
|
+ and (case when (timezone(ni.weekly_time_zone, NOW())::time < ni.weekly_time::time
|
|
|
|
|
+ and timezone(ni.weekly_time_zone,NOW())::date = (timezone(ni.weekly_time_zone,NOW())::date - (((EXTRACT(dow FROM timezone(ni.weekly_time_zone,NOW())::date)::integer - ni.weekly_week::integer + 7) % 7) ||' days')::INTERVAL)::date)
|
|
|
|
|
+ then timezone(ni.weekly_time_zone,ni.insert_date)::date < ((timezone(ni.weekly_time_zone,NOW())::date - (((EXTRACT(dow FROM timezone(ni.weekly_time_zone,NOW())::date)::integer - ni.weekly_week::integer + 7) % 7) ||' days')::INTERVAL)::date - '7 days'::INTERVAL)::date
|
|
|
else
|
|
else
|
|
|
- timezone(ni.weekly_time_zone,ni.insert_date)::date < (timezone(ni.weekly_time_zone,ni.insert_date)::date - (((EXTRACT(dow FROM timezone(ni.weekly_time_zone,ni.insert_date)::date)::integer - ni.weekly_week::integer + 7) % 7) ||' days')::INTERVAL)::date
|
|
|
|
|
|
|
+ timezone(ni.weekly_time_zone,ni.insert_date)::date < (timezone(ni.weekly_time_zone,NOW())::date - (((EXTRACT(dow FROM timezone(ni.weekly_time_zone,NOW())::date)::integer - ni.weekly_week::integer + 7) % 7) ||' days')::INTERVAL)::date
|
|
|
end)))
|
|
end)))
|
|
|
and ni.notifications_method = true and is_send_message is null limit 1";
|
|
and ni.notifications_method = true and is_send_message is null limit 1";
|
|
|
$unread = common::excuteObjectSql($checkUnread);
|
|
$unread = common::excuteObjectSql($checkUnread);
|
|
@@ -945,10 +949,12 @@ class tools {
|
|
|
if(strtolower($frequency_type) == "daily"){
|
|
if(strtolower($frequency_type) == "daily"){
|
|
|
$daily_time = "'".common::check_input($_POST['daily_time'])."'";
|
|
$daily_time = "'".common::check_input($_POST['daily_time'])."'";
|
|
|
$daily_time_zone = common::check_input($_POST['daily_time_zone']);
|
|
$daily_time_zone = common::check_input($_POST['daily_time_zone']);
|
|
|
|
|
+ $daily_time_zone = utils::comvertutcinfo($daily_time_zone);
|
|
|
} elseif (strtolower($frequency_type) == "weekly"){
|
|
} elseif (strtolower($frequency_type) == "weekly"){
|
|
|
$weekly_week = common::check_input($_POST['weekly_week']);
|
|
$weekly_week = common::check_input($_POST['weekly_week']);
|
|
|
$weekly_time = "'".common::check_input($_POST['weekly_time'])."'";
|
|
$weekly_time = "'".common::check_input($_POST['weekly_time'])."'";
|
|
|
$weekly_time_zone = common::check_input($_POST['weekly_time_zone']);
|
|
$weekly_time_zone = common::check_input($_POST['weekly_time_zone']);
|
|
|
|
|
+ $weekly_time_zone = utils::comvertutcinfo($weekly_time_zone);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@@ -1289,10 +1295,11 @@ class tools {
|
|
|
end))
|
|
end))
|
|
|
|
|
|
|
|
or (ni.frequency_type = 'Weekly'
|
|
or (ni.frequency_type = 'Weekly'
|
|
|
- and (case when (timezone(ni.weekly_time_zone, NOW())::time > ni.weekly_time::time)
|
|
|
|
|
- then timezone(ni.weekly_time_zone,ni.insert_date)::date <= (timezone(ni.weekly_time_zone,ni.insert_date)::date + (((ni.weekly_week::integer - EXTRACT(dow FROM timezone(ni.weekly_time_zone,ni.insert_date)::date)::integer + 7) % 7)-1 + CASE WHEN EXTRACT(DOW FROM timezone(ni.weekly_time_zone,ni.insert_date)::date)::integer=ni.weekly_week::integer THEN 7 ELSE 0 END ||' days')::INTERVAL)::date
|
|
|
|
|
|
|
+ and (case when (timezone(ni.weekly_time_zone, NOW())::time < ni.weekly_time::time
|
|
|
|
|
+ and timezone(ni.weekly_time_zone,NOW())::date = (timezone(ni.weekly_time_zone,NOW())::date - (((EXTRACT(dow FROM timezone(ni.weekly_time_zone,NOW())::date)::integer - ni.weekly_week::integer + 7) % 7) ||' days')::INTERVAL)::date)
|
|
|
|
|
+ then timezone(ni.weekly_time_zone,ni.insert_date)::date < ((timezone(ni.weekly_time_zone,NOW())::date - (((EXTRACT(dow FROM timezone(ni.weekly_time_zone,NOW())::date)::integer - ni.weekly_week::integer + 7) % 7) ||' days')::INTERVAL)::date - '7 days'::INTERVAL)::date
|
|
|
else
|
|
else
|
|
|
- timezone(ni.weekly_time_zone,ni.insert_date)::date < (timezone(ni.weekly_time_zone,ni.insert_date)::date - (((EXTRACT(dow FROM timezone(ni.weekly_time_zone,ni.insert_date)::date)::integer - ni.weekly_week::integer + 7) % 7) ||' days')::INTERVAL)::date
|
|
|
|
|
|
|
+ timezone(ni.weekly_time_zone,ni.insert_date)::date < (timezone(ni.weekly_time_zone,NOW())::date - (((EXTRACT(dow FROM timezone(ni.weekly_time_zone,NOW())::date)::integer - ni.weekly_week::integer + 7) % 7) ||' days')::INTERVAL)::date
|
|
|
end)))";
|
|
end)))";
|
|
|
} elseif($frequency_type == "Daily"){
|
|
} elseif($frequency_type == "Daily"){
|
|
|
$sql_where = " and (ni.frequency_type = 'Daily'
|
|
$sql_where = " and (ni.frequency_type = 'Daily'
|
|
@@ -1303,11 +1310,18 @@ class tools {
|
|
|
end))";
|
|
end))";
|
|
|
|
|
|
|
|
} elseif($frequency_type == "Weekly"){
|
|
} elseif($frequency_type == "Weekly"){
|
|
|
|
|
+ //当前now()的配置是周2。 如今天是4-17,最小边界值是4.15- 4.21
|
|
|
|
|
+ // 如今天是4-15(这个是周二),最小边界值是4.15- 4.21
|
|
|
|
|
+ // 如今天是4-14,最小边界值是4.8- 4.14
|
|
|
|
|
+ // 当 前时间是 4.15时,但没到规定的time,取4.8,但此时的边界值4.15- 4.21(这个是一个例外,除此之外,可以直接用当前now的最小边界值);
|
|
|
|
|
+ // 当 前时间是 4.15时,但到规定的time,取4.15
|
|
|
|
|
+
|
|
|
$sql_where = " and (ni.frequency_type = 'Weekly'
|
|
$sql_where = " and (ni.frequency_type = 'Weekly'
|
|
|
- and (case when (timezone(ni.weekly_time_zone, NOW())::time > ni.weekly_time::time)
|
|
|
|
|
- then timezone(ni.weekly_time_zone,ni.insert_date)::date <= (timezone(ni.weekly_time_zone,ni.insert_date)::date + (((ni.weekly_week::integer - EXTRACT(dow FROM timezone(ni.weekly_time_zone,ni.insert_date)::date)::integer + 7) % 7)-1 + CASE WHEN EXTRACT(DOW FROM timezone(ni.weekly_time_zone,ni.insert_date)::date)::integer=ni.weekly_week::integer THEN 7 ELSE 0 END ||' days')::INTERVAL)::date
|
|
|
|
|
|
|
+ and (case when (timezone(ni.weekly_time_zone, NOW())::time < ni.weekly_time::time
|
|
|
|
|
+ and timezone(ni.weekly_time_zone,NOW())::date = (timezone(ni.weekly_time_zone,NOW())::date - (((EXTRACT(dow FROM timezone(ni.weekly_time_zone,NOW())::date)::integer - ni.weekly_week::integer + 7) % 7) ||' days')::INTERVAL)::date)
|
|
|
|
|
+ then timezone(ni.weekly_time_zone,ni.insert_date)::date < ((timezone(ni.weekly_time_zone,NOW())::date - (((EXTRACT(dow FROM timezone(ni.weekly_time_zone,NOW())::date)::integer - ni.weekly_week::integer + 7) % 7) ||' days')::INTERVAL)::date - '7 days'::INTERVAL)::date
|
|
|
else
|
|
else
|
|
|
- timezone(ni.weekly_time_zone,ni.insert_date)::date < (timezone(ni.weekly_time_zone,ni.insert_date)::date - (((EXTRACT(dow FROM timezone(ni.weekly_time_zone,ni.insert_date)::date)::integer - ni.weekly_week::integer + 7) % 7) ||' days')::INTERVAL)::date
|
|
|
|
|
|
|
+ timezone(ni.weekly_time_zone,ni.insert_date)::date < (timezone(ni.weekly_time_zone,NOW())::date - (((EXTRACT(dow FROM timezone(ni.weekly_time_zone,NOW())::date)::integer - ni.weekly_week::integer + 7) % 7) ||' days')::INTERVAL)::date
|
|
|
end))";
|
|
end))";
|
|
|
}
|
|
}
|
|
|
if (!empty($_REQUEST['current_time'])){
|
|
if (!empty($_REQUEST['current_time'])){
|