Memperbaiki Conflict Staging dan Tender

This commit is contained in:
2024-09-25 17:35:59 +07:00
45 changed files with 4082 additions and 31 deletions

View File

@@ -0,0 +1,46 @@
<?php
namespace Modules\Lpj\Exports;
use Maatwebsite\Excel\Concerns\FromCollection;
use Maatwebsite\Excel\Concerns\WithColumnFormatting;
use Maatwebsite\Excel\Concerns\WithHeadings;
use Maatwebsite\Excel\Concerns\WithMapping;
use Modules\Lpj\Models\JenisPenilaian;
use PhpOffice\PhpSpreadsheet\Style\NumberFormat;
class JenisPenilaianExport implements WithColumnFormatting, WithHeadings, FromCollection, withMapping
{
public function collection()
{
return JenisPenilaian::all();
}
public function map($row): array
{
return [
$row->id,
$row->code,
$row->name,
$row->created_at
];
}
public function headings(): array
{
return [
'ID',
'Code',
'Jenis Penilaian',
'Created At'
];
}
public function columnFormats(): array
{
return [
'A' => NumberFormat::FORMAT_NUMBER,
'D' => NumberFormat::FORMAT_DATE_DATETIME
];
}
}

View File

@@ -0,0 +1,49 @@
<?php
namespace Modules\Lpj\Exports;
use Maatwebsite\Excel\Concerns\FromCollection;
use Maatwebsite\Excel\Concerns\WithColumnFormatting;
use Maatwebsite\Excel\Concerns\WithHeadings;
use Maatwebsite\Excel\Concerns\WithMapping;
use Modules\Lpj\Models\Regions;
use PhpOffice\PhpSpreadsheet\Style\NumberFormat;
class RegionExport implements WithColumnFormatting, WithHeadings, FromCollection, withMapping
{
public function collection()
{
return Regions::all();
}
public function map($row)
: array
{
return [
$row->id,
$row->code,
$row->name,
$row->created_at
];
}
public function headings()
: array
{
return [
'ID',
'Code',
'Name',
'Created At'
];
}
public function columnFormats()
: array
{
return [
'A' => NumberFormat::FORMAT_NUMBER,
'D' => NumberFormat::FORMAT_DATE_DATETIME
];
}
}

View File

@@ -0,0 +1,57 @@
<?php
namespace Modules\Lpj\Exports;
use Maatwebsite\Excel\Concerns\FromCollection;
use Maatwebsite\Excel\Concerns\WithColumnFormatting;
use Maatwebsite\Excel\Concerns\WithHeadings;
use Maatwebsite\Excel\Concerns\WithMapping;
use Modules\Lpj\Models\JenisPenilaian;
use PhpOffice\PhpSpreadsheet\Style\NumberFormat;
use Illuminate\Support\Facades\DB;
use Modules\Lpj\Models\Teams;
class TeamPenilaianExport implements WithColumnFormatting, WithHeadings, FromCollection, withMapping
{
public function collection()
{
return Teams::select(
'teams.id as id',
'teams.name as team_name',
'regions.name as region_name',
DB::raw('STRING_AGG(users.name, \', \') as team_group')
)
->join('regions', 'teams.regions_id', '=', 'regions.id')
->leftJoin('teams_users', 'teams.id', '=', 'teams_users.teams_id')
->leftJoin('users', 'teams_users.user_id', '=', 'users.id')
->groupBy('teams.id', 'teams.name', 'regions.name')
->get();
}
public function map($row): array
{
return [
$row->team_name,
$row->region_name,
$row->team_group,
];
}
public function headings(): array
{
return [
'Name',
'Region',
'Anggota Team',
];
}
public function columnFormats(): array
{
return [
'A' => NumberFormat::FORMAT_TEXT,
'B' => NumberFormat::FORMAT_TEXT,
'C' => NumberFormat::FORMAT_TEXT,
];
}
}