Optimise the queries used to display packet contents and show DBID if msgid is not available
This commit is contained in:
parent
b3dfca5b89
commit
19338edcb6
@ -44,8 +44,7 @@ class HomeController extends Controller
|
|||||||
|
|
||||||
public function packet_contents(System $o,string $packet)
|
public function packet_contents(System $o,string $packet)
|
||||||
{
|
{
|
||||||
$nm = Netmail::select('netmails.*')
|
$nm = Netmail::select(['netmails.id','fftn_id','tftn_id','netmails.datetime'])
|
||||||
->distinct()
|
|
||||||
->leftJoin('netmail_path',['netmail_path.netmail_id'=>'netmails.id'])
|
->leftJoin('netmail_path',['netmail_path.netmail_id'=>'netmails.id'])
|
||||||
->where(function($query) use ($o,$packet) {
|
->where(function($query) use ($o,$packet) {
|
||||||
return $query
|
return $query
|
||||||
@ -54,21 +53,23 @@ class HomeController extends Controller
|
|||||||
})
|
})
|
||||||
->get();
|
->get();
|
||||||
|
|
||||||
$em = Echomail::select('echomails.*')
|
$em = Echomail::select(['echomails.id','fftn_id','echoarea_id','msgid','datetime'])
|
||||||
->distinct()
|
|
||||||
->leftJoin('echomail_seenby',['echomail_seenby.echomail_id'=>'echomails.id'])
|
->leftJoin('echomail_seenby',['echomail_seenby.echomail_id'=>'echomails.id'])
|
||||||
->leftJoin('echomail_path',['echomail_path.echomail_id'=>'echomails.id'])
|
|
||||||
->where(function($query) use ($o,$packet) {
|
->where(function($query) use ($o,$packet) {
|
||||||
return $query
|
return $query
|
||||||
->where('sent_pkt',$packet)
|
->where('sent_pkt',$packet)
|
||||||
->whereIn('echomail_seenby.address_id',$o->addresses->pluck('id'));
|
->whereIn('echomail_seenby.address_id',$o->addresses->pluck('id'));
|
||||||
})
|
})
|
||||||
->orWhere(function($query) use ($o,$packet) {
|
->union(
|
||||||
return $query
|
Echomail::select(['echomails.id','fftn_id','echoarea_id','msgid','datetime'])
|
||||||
->where('recv_pkt',$packet)
|
->leftJoin('echomail_path',['echomail_path.echomail_id'=>'echomails.id'])
|
||||||
->whereIn('echomail_path.address_id',$o->addresses->pluck('id'));
|
->where(function($query) use ($o,$packet) {
|
||||||
})
|
return $query
|
||||||
->with('echoarea')
|
->where('recv_pkt',$packet)
|
||||||
|
->whereIn('echomail_path.address_id',$o->addresses->pluck('id'));
|
||||||
|
})
|
||||||
|
)
|
||||||
|
->with(['echoarea'])
|
||||||
->get();
|
->get();
|
||||||
|
|
||||||
return view('packet')
|
return view('packet')
|
||||||
|
@ -154,7 +154,8 @@ final class Netmail extends Model implements Packet
|
|||||||
public function tftn()
|
public function tftn()
|
||||||
{
|
{
|
||||||
return $this
|
return $this
|
||||||
->belongsTo(Address::class);
|
->belongsTo(Address::class)
|
||||||
|
->withTrashed();
|
||||||
}
|
}
|
||||||
|
|
||||||
/* METHODS */
|
/* METHODS */
|
||||||
|
@ -17,7 +17,13 @@
|
|||||||
<tr>
|
<tr>
|
||||||
<td>{{ $oo->fftn->ftn }}</td>
|
<td>{{ $oo->fftn->ftn }}</td>
|
||||||
<td>{{ $oo->tftn->ftn }}</td>
|
<td>{{ $oo->tftn->ftn }}</td>
|
||||||
<td>{{ $oo->msgid }}</td>
|
<td>
|
||||||
|
@if ($oo->msgid)
|
||||||
|
{{ $oo->msgid }}
|
||||||
|
@else
|
||||||
|
<small>[{{ $oo->id }}]</small>
|
||||||
|
@endif
|
||||||
|
</td>
|
||||||
<td>{{ $oo->datetime }}</td>
|
<td>{{ $oo->datetime }}</td>
|
||||||
</tr>
|
</tr>
|
||||||
@endforeach
|
@endforeach
|
||||||
|
@ -64,7 +64,7 @@ use App\Classes\FTN\Message;
|
|||||||
<div class="col-8">
|
<div class="col-8">
|
||||||
PATH: <br><strong class="highlight">{!! optimize_path($msg->pathorder())->join('</strong> -> <strong class="highlight">') !!}</strong>
|
PATH: <br><strong class="highlight">{!! optimize_path($msg->pathorder())->join('</strong> -> <strong class="highlight">') !!}</strong>
|
||||||
|
|
||||||
@if ($msg->rogue_path->count())
|
@if (($msg instanceof \App\Models\Echomail) && $msg->rogue_path->count())
|
||||||
<br><small>[<strong>NOTE</strong>: Some path values couldnt be identified - ({{ $msg->rogue_path->join(',') }})]</small>
|
<br><small>[<strong>NOTE</strong>: Some path values couldnt be identified - ({{ $msg->rogue_path->join(',') }})]</small>
|
||||||
@endif
|
@endif
|
||||||
</div>
|
</div>
|
||||||
|
Loading…
Reference in New Issue
Block a user