use +columns instead of +select/+as
This commit is contained in:
@@ -132,11 +132,10 @@ __PACKAGE__->has_many( nodes => 'Netdisco::DB::Result::Node',
|
|||||||
|
|
||||||
my $search_attr = {
|
my $search_attr = {
|
||||||
order_by => {'-desc' => 'time_last'},
|
order_by => {'-desc' => 'time_last'},
|
||||||
'+select' => [
|
'+columns' => {
|
||||||
\"to_char(time_first, 'YYYY-MM-DD HH24:MI')",
|
time_first_stamp => \"to_char(time_first, 'YYYY-MM-DD HH24:MI')",
|
||||||
\"to_char(time_last, 'YYYY-MM-DD HH24:MI')",
|
time_last_stamp => \"to_char(time_last, 'YYYY-MM-DD HH24:MI')",
|
||||||
],
|
},
|
||||||
'+as' => [qw/ time_first_stamp time_last_stamp /],
|
|
||||||
};
|
};
|
||||||
|
|
||||||
=head2 ip_aliases( \%cond, \%attrs? )
|
=head2 ip_aliases( \%cond, \%attrs? )
|
||||||
|
|||||||
@@ -33,19 +33,13 @@ sub with_times {
|
|||||||
->search_rs($cond, $attrs)
|
->search_rs($cond, $attrs)
|
||||||
->search({},
|
->search({},
|
||||||
{
|
{
|
||||||
'+select' => [
|
'+columns' => {
|
||||||
\"replace(age(timestamp 'epoch' + uptime / 100 * interval '1 second',
|
uptime_age => \("replace(age(timestamp 'epoch' + uptime / 100 * interval '1 second' "
|
||||||
timestamp '1970-01-01 00:00:00-00')::text, 'mon', 'month')",
|
."timestamp '1970-01-01 00:00:00-00')::text, 'mon', 'month')"),
|
||||||
\"to_char(last_discover, 'YYYY-MM-DD HH24:MI')",
|
last_discover_stamp => \"to_char(last_discover, 'YYYY-MM-DD HH24:MI')",
|
||||||
\"to_char(last_macsuck, 'YYYY-MM-DD HH24:MI')",
|
last_macsuck_stamp => \"to_char(last_macsuck, 'YYYY-MM-DD HH24:MI')",
|
||||||
\"to_char(last_arpnip, 'YYYY-MM-DD HH24:MI')",
|
last_arpnip_stamp => \"to_char(last_arpnip, 'YYYY-MM-DD HH24:MI')",
|
||||||
],
|
},
|
||||||
'+as' => [qw/
|
|
||||||
uptime_age
|
|
||||||
last_discover_stamp
|
|
||||||
last_macsuck_stamp
|
|
||||||
last_arpnip_stamp
|
|
||||||
/],
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -26,11 +26,9 @@ sub with_times {
|
|||||||
->search_rs($cond, $attrs)
|
->search_rs($cond, $attrs)
|
||||||
->search({},
|
->search({},
|
||||||
{
|
{
|
||||||
'+select' => [
|
'+columns' => { lastchange_stamp =>
|
||||||
\"to_char(device.last_discover - (device.uptime - lastchange) / 100 * interval '1 second',
|
\("to_char(device.last_discover - (device.uptime - lastchange) / 100 * interval '1 second', "
|
||||||
'YYYY-MM-DD HH24:MI:SS')",
|
."'YYYY-MM-DD HH24:MI:SS')") },
|
||||||
],
|
|
||||||
'+as' => [qw/ lastchange_stamp /],
|
|
||||||
join => 'device',
|
join => 'device',
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -61,14 +59,12 @@ sub with_is_free {
|
|||||||
->search_rs($cond, $attrs)
|
->search_rs($cond, $attrs)
|
||||||
->search({},
|
->search({},
|
||||||
{
|
{
|
||||||
'+select' => [
|
'+columns' => { is_free =>
|
||||||
\["up != 'up' and "
|
\["up != 'up' and "
|
||||||
."age(to_timestamp(extract(epoch from device.last_discover) "
|
."age(to_timestamp(extract(epoch from device.last_discover) "
|
||||||
."- (device.uptime - lastchange)/100)) "
|
."- (device.uptime - lastchange)/100)) "
|
||||||
."> ?::interval",
|
."> ?::interval",
|
||||||
[{} => $interval]],
|
[{} => $interval]] },
|
||||||
],
|
|
||||||
'+as' => [qw/ is_free /],
|
|
||||||
join => 'device',
|
join => 'device',
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -49,12 +49,11 @@ sub search_by_mac {
|
|||||||
return $rs
|
return $rs
|
||||||
->search_rs({}, {
|
->search_rs({}, {
|
||||||
order_by => {'-desc' => 'time_last'},
|
order_by => {'-desc' => 'time_last'},
|
||||||
'+columns' => [qw/ device.dns /],
|
'+columns' => [
|
||||||
'+select' => [
|
'device.dns',
|
||||||
\"to_char(time_first, 'YYYY-MM-DD HH24:MI')",
|
{ time_first_stamp => \"to_char(time_first, 'YYYY-MM-DD HH24:MI')" },
|
||||||
\"to_char(time_last, 'YYYY-MM-DD HH24:MI')",
|
{ time_last_stamp => \"to_char(time_last, 'YYYY-MM-DD HH24:MI')" },
|
||||||
],
|
],
|
||||||
'+as' => [qw/ time_first_stamp time_last_stamp /],
|
|
||||||
join => 'device',
|
join => 'device',
|
||||||
})
|
})
|
||||||
->search($cond, $attrs);
|
->search($cond, $attrs);
|
||||||
|
|||||||
@@ -24,12 +24,11 @@ sub has_dns_col {
|
|||||||
|
|
||||||
my $search_attr = {
|
my $search_attr = {
|
||||||
order_by => {'-desc' => 'time_last'},
|
order_by => {'-desc' => 'time_last'},
|
||||||
'+columns' => [qw/ oui.company /],
|
'+columns' => [
|
||||||
'+select' => [
|
'oui.company',
|
||||||
\"to_char(time_first, 'YYYY-MM-DD HH24:MI')",
|
{ time_first_stamp => \"to_char(time_first, 'YYYY-MM-DD HH24:MI')" },
|
||||||
\"to_char(time_last, 'YYYY-MM-DD HH24:MI')",
|
{ time_last_stamp => \"to_char(time_last, 'YYYY-MM-DD HH24:MI')" },
|
||||||
],
|
],
|
||||||
'+as' => [qw/ time_first_stamp time_last_stamp /],
|
|
||||||
join => 'oui'
|
join => 'oui'
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user