Optimisations to uncollected Items, which fix mail:send, which was only being triggered for mail unsent from yesterday

This commit is contained in:
2023-12-08 15:16:49 +11:00
parent e56ecaa999
commit 5a74386f5a
3 changed files with 33 additions and 28 deletions

View File

@@ -27,12 +27,12 @@ class MailSend #implements ShouldQueue
{
$u = Address::select([
'a.id',
'addresses.system_id',
'addresses.zone_id',
'a.system_id',
'a.zone_id',
'addresses.region_id',
'addresses.host_id',
'addresses.node_id',
'addresses.point_id',
'a.host_id',
'a.node_id',
'a.point_id',
'addresses.hub_id',
'addresses.role',
DB::raw('sum(a.uncollected_echomail) as uncollected_echomail'),
@@ -45,8 +45,8 @@ class MailSend #implements ShouldQueue
->where('zones.active',TRUE)
->where('domains.active',TRUE)
->join('addresses',['addresses.id'=>'a.id'])
->join('systems',['systems.id'=>'addresses.system_id'])
->join('zones',['zones.id'=>'addresses.zone_id'])
->join('systems',['systems.id'=>'a.system_id'])
->join('zones',['zones.id'=>'a.zone_id'])
->join('domains',['domains.id'=>'zones.domain_id'])
->where(function($query) {
return $query->whereNull('autohold')
@@ -63,7 +63,7 @@ class MailSend #implements ShouldQueue
}
);
})
->groupBy('addresses.system_id','a.id','addresses.zone_id','addresses.region_id','addresses.host_id','addresses.node_id','addresses.point_id','addresses.hub_id','addresses.role')
->groupBy('a.system_id','a.id','a.zone_id','addresses.region_id','a.host_id','a.node_id','a.point_id','addresses.hub_id','addresses.role')
->with(['system','zone.domain'])
->get();