Ir ao conteúdo

Posts recomendados

Postado

Galera estou obtendo resultados de uma query em uma tabela na view mas está ficando dois valores diferentes para o mesmo funcionário. Preciso que cada valor se atribua a um funcnionário.

 

Meu código da query no controller:

 

	$jobposition = table::companydata()
	->where('company', $comp)
	->join('people', 'people.id', '=', 'company_data.reference')
	->get('jobposition');

 

Esta query retorna dois valores.

Estou retornando os valores para a view "admin.attendance-pdf-teste":

 

$pdf = PDF::loadView('admin.attendance-pdf-teste', compact('attendance', 'comp', 'companyaddress', 'jobposition', 'startdate'));

 

 

A tabela nessa view:

 

@foreach ($attendance as $employee => $data)
<div style="page-break-after: always;">
	<table align="center" style="font-size:7pt; text-align:center">
		<thead>
			<tr>
			<th style="border:0px">Funcionário</th>
			<th>Local Trabalho</th>
			<th>Endereço</th>
			<th>Cargo</th>
			<th>Admissão</th>
			<th>Matricula</th>
			<th>Escala</th>
			</tr>
		<thead>
		<tbody>
			<tr>
			<td>{{ $employee }}</td>
			<td>{{ $comp }}</td>
			<td>{{ $companyaddress }}</td>
			<td>{{ $jobposition }}</td>
			<td>@php echo e(date('d-m-Y', strtotime($startdate))) @endphp</td>
			<td></td>
			<td></td>
			</tr>
		</tbody>
	</table>

 

 

Os valores obtidos são divididos por página no pdf ficando as informações de cada funcionário em uma única página.

A tabela na primeira página me trás o seguinte:

1.jpg.5d52d69adb732b3ad72af39e7001f476.jpg

 

A tabela na segunda página:

2.thumb.jpg.a7d69bd15c2831e1a2d26f1918a1e7e8.jpg

 

 

Ou seja, parece que preciso distribuir os valores de cargo de acordo com a variável $employee que é o nome do funcionário mas não estou conseguindo fazer isso. Podem me dar uma ajuda?

 

 

O nome do funcionário na variável $employee é obtido através de uma outra outra query:

	$attendance = table::companydata()
	->where('company', $comp)
	->join('people_attendance', 'people_attendance.reference', '=', 'company_data.reference')
	->whereBetween('date', ["$start", "$end"])
	->orderBy('date', 'asc')
	->get()
	->groupBy('employee');

 

 

 

 

 

Postado

@tiagopraz Cara, acho que só mudando o que você vai replicar no seu foreach deve resolver.

 

Tenta algo assim:

<div style="page-break-after: always;">
	<table align="center" style="font-size:7pt; text-align:center">
		<thead>
            <tr>
                <th style="border:0px">Funcionário</th>
                <th>Local Trabalho</th>
                <th>Endereço</th>
                <th>Cargo</th>
                <th>Admissão</th>
                <th>Matricula</th>
                <th>Escala</th>
			</tr>
        <thead>
        <tbody>
            @foreach ($attendance as $employee => $data)
		<tr>
                <td>{{ $employee }}</td>
                <td>{{ $comp }}</td>
                <td>{{ $companyaddress }}</td>
                <td>{{ $jobposition }}</td>
                <td>@php echo e(date('d-m-Y', strtotime($startdate))) @endphp</td>
                <td></td>
                <td></td>
		</tr>
            @endforeach
		</tbody>
    </table>
</div>

 

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...