revised generate report
This commit is contained in:
@@ -16,11 +16,11 @@ use App\Models\Cabang;
|
||||
|
||||
class ReportController extends Controller
|
||||
{
|
||||
public function index()
|
||||
public function upcountry()
|
||||
{
|
||||
$role = auth()->user()->getRoleNames()[0];
|
||||
$cabangs = [];
|
||||
$forms = [];
|
||||
$forms = null;
|
||||
|
||||
if ($role == 'Admin Region' || $role == 'Marketing Operational Manager Region') {
|
||||
$region_id = auth()->user()->getMyCabangAndRegionId()['region'];
|
||||
@@ -33,13 +33,7 @@ class ReportController extends Controller
|
||||
$userIds = $users->pluck('user_id')->toArray();
|
||||
|
||||
$cabangs = Cabang::where('region_id', $region_id)->get();
|
||||
$forms = [
|
||||
'form_up_country' => FormUpCountry::whereIn('user_id', $userIds)->get(),
|
||||
'form_entertainment_presentation' => FormEntertaimentPresentation::whereIn('user_id', $userIds)->get(),
|
||||
'form_vehicle_running_cost' => FormVehicleRunningCost::whereIn('user_id', $userIds)->get(),
|
||||
'form_others' => FormOthers::whereIn('user_id', $userIds)->get(),
|
||||
'form_meeting_seminar' => FormMeetingSeminar::whereIn('user_id', $userIds)->get(),
|
||||
];
|
||||
$forms = FormUpCountry::whereIn('user_id', $userIds)->get();
|
||||
}
|
||||
} else if ($role == 'Area Manager Cabang') {
|
||||
$cabang_id = auth()->user()->getMyCabangAndRegionId()['cabang'];
|
||||
@@ -49,34 +43,16 @@ class ReportController extends Controller
|
||||
$userIds = $users->pluck('user_id')->toArray();
|
||||
|
||||
$cabangs = Cabang::where('id', $cabang_id)->get();
|
||||
$forms = [
|
||||
'form_up_country' => FormUpCountry::whereIn('user_id', $userIds)->get(),
|
||||
'form_entertainment_presentation' => FormEntertaimentPresentation::whereIn('user_id', $userIds)->get(),
|
||||
'form_vehicle_running_cost' => FormVehicleRunningCost::whereIn('user_id', $userIds)->get(),
|
||||
'form_others' => FormOthers::whereIn('user_id', $userIds)->get(),
|
||||
'form_meeting_seminar' => FormMeetingSeminar::whereIn('user_id', $userIds)->get(),
|
||||
];
|
||||
$forms = FormUpCountry::whereIn('user_id', $userIds)->get();
|
||||
}
|
||||
} else if ($role == 'Medical Representatif') {
|
||||
$userId = auth()->user()->id;
|
||||
|
||||
$cabangs = null;
|
||||
$forms = [
|
||||
'form_up_country' => FormUpCountry::where('user_id', $userId)->get(),
|
||||
'form_entertainment_presentation' => FormEntertaimentPresentation::where('user_id', $userId)->get(),
|
||||
'form_vehicle_running_cost' => FormVehicleRunningCost::where('user_id', $userId)->get(),
|
||||
'form_others' => FormOthers::where('user_id', $userId)->get(),
|
||||
'form_meeting_seminar' => FormMeetingSeminar::where('user_id', $userId)->get(),
|
||||
];
|
||||
$forms = FormUpCountry::where('user_id', $userId)->get();
|
||||
} else {
|
||||
$cabangs = Cabang::all();
|
||||
$forms = [
|
||||
'form_up_country' => FormUpCountry::all(),
|
||||
'form_entertainment_presentation' => FormEntertaimentPresentation::all(),
|
||||
'form_vehicle_running_cost' => FormVehicleRunningCost::all(),
|
||||
'form_others' => FormOthers::all(),
|
||||
'form_meeting_seminar' => FormMeetingSeminar::all(),
|
||||
];
|
||||
$forms = FormUpCountry::all();
|
||||
}
|
||||
|
||||
// get all params in url
|
||||
@@ -88,59 +64,337 @@ class ReportController extends Controller
|
||||
$users = UserHasCabang::where('cabang_id', $cabang->id)->get();
|
||||
$userIds = $users->pluck('user_id')->toArray();
|
||||
|
||||
$forms = [
|
||||
'form_up_country' => FormUpCountry::whereIn('user_id', $userIds)->get(),
|
||||
'form_entertainment_presentation' => FormEntertaimentPresentation::whereIn('user_id', $userIds)->get(),
|
||||
'form_vehicle_running_cost' => FormVehicleRunningCost::whereIn('user_id', $userIds)->get(),
|
||||
'form_others' => FormOthers::whereIn('user_id', $userIds)->get(),
|
||||
'form_meeting_seminar' => FormMeetingSeminar::whereIn('user_id', $userIds)->get(),
|
||||
];
|
||||
$forms = $forms->whereIn('user_id', $userIds);
|
||||
}
|
||||
|
||||
if($params['start_date'] && $params['end_date']) {
|
||||
$forms = [
|
||||
'form_up_country' => FormUpCountry::whereBetween('tanggal', [$params['start_date'], $params['end_date']])->get(),
|
||||
'form_entertainment_presentation' => FormEntertaimentPresentation::whereBetween('tanggal', [$params['start_date'], $params['end_date']])->get(),
|
||||
'form_vehicle_running_cost' => FormVehicleRunningCost::whereBetween('tanggal', [$params['start_date'], $params['end_date']])->get(),
|
||||
'form_others' => FormOthers::whereBetween('tanggal', [$params['start_date'], $params['end_date']])->get(),
|
||||
'form_meeting_seminar' => FormMeetingSeminar::whereBetween('created_at', [$params['start_date'], $params['end_date']])->get(),
|
||||
];
|
||||
$forms = $forms->whereBetween('tanggal', [$params['start_date'], $params['end_date']]);
|
||||
}
|
||||
|
||||
if($params['start_date'] && !$params['end_date']) {
|
||||
$forms = [
|
||||
'form_up_country' => FormUpCountry::where('tanggal', $params['start_date'])->get(),
|
||||
'form_entertainment_presentation' => FormEntertaimentPresentation::where('tanggal', $params['start_date'])->get(),
|
||||
'form_vehicle_running_cost' => FormVehicleRunningCost::where('tanggal', $params['start_date'])->get(),
|
||||
'form_others' => FormOthers::where('tanggal', $params['start_date'])->get(),
|
||||
'form_meeting_seminar' => FormMeetingSeminar::where('created_at', $params['start_date'])->get(),
|
||||
];
|
||||
$forms = $forms->where('tanggal', $params['start_date']);
|
||||
}
|
||||
|
||||
if(!$params['start_date'] && $params['end_date']) {
|
||||
$forms = [
|
||||
'form_up_country' => FormUpCountry::where('tanggal', $params['end_date'])->get(),
|
||||
'form_entertainment_presentation' => FormEntertaimentPresentation::where('tanggal', $params['end_date'])->get(),
|
||||
'form_vehicle_running_cost' => FormVehicleRunningCost::where('tanggal', $params['end_date'])->get(),
|
||||
'form_others' => FormOthers::where('tanggal', $params['end_date'])->get(),
|
||||
'form_meeting_seminar' => FormMeetingSeminar::where('created_at', $params['end_date'])->get(),
|
||||
];
|
||||
$forms = $forms->where('tanggal', $params['end_date']);
|
||||
}
|
||||
|
||||
if($params['status']) {
|
||||
$forms = [
|
||||
'form_up_country' => FormUpCountry::where('status', $params['status'])->get(),
|
||||
'form_entertainment_presentation' => FormEntertaimentPresentation::where('status', $params['status'])->get(),
|
||||
'form_vehicle_running_cost' => FormVehicleRunningCost::where('status', $params['status'])->get(),
|
||||
'form_others' => FormOthers::where('status', $params['status'])->get(),
|
||||
'form_meeting_seminar' => FormMeetingSeminar::where('status', $params['status'])->get(),
|
||||
];
|
||||
$forms = $forms->where('status', $params['status']);
|
||||
}
|
||||
}
|
||||
|
||||
return view('backend.pages.report.index', [
|
||||
return view('backend.pages.report.upcountry', [
|
||||
'pageInfo' => [
|
||||
'title' => 'Generate Reports',
|
||||
'title' => 'Generate Reports For Form Up Country',
|
||||
],
|
||||
'forms' => $forms,
|
||||
'cabang' => $cabangs
|
||||
]);
|
||||
}
|
||||
|
||||
public function vehicle()
|
||||
{
|
||||
$role = auth()->user()->getRoleNames()[0];
|
||||
$cabangs = [];
|
||||
$forms = null;
|
||||
|
||||
if ($role == 'Admin Region' || $role == 'Marketing Operational Manager Region') {
|
||||
$region_id = auth()->user()->getMyCabangAndRegionId()['region'];
|
||||
|
||||
if ($region_id) {
|
||||
$users = UserHasCabang::whereHas('cabang', function ($query) use ($region_id) {
|
||||
$query->where('region_id', $region_id);
|
||||
})->get();
|
||||
|
||||
$userIds = $users->pluck('user_id')->toArray();
|
||||
|
||||
$cabangs = Cabang::where('region_id', $region_id)->get();
|
||||
$forms = FormVehicleRunningCost::whereIn('user_id', $userIds)->get();
|
||||
}
|
||||
} else if ($role == 'Area Manager Cabang') {
|
||||
$cabang_id = auth()->user()->getMyCabangAndRegionId()['cabang'];
|
||||
|
||||
if ($cabang_id) {
|
||||
$users = UserHasCabang::where('cabang_id', $cabang_id)->get();
|
||||
$userIds = $users->pluck('user_id')->toArray();
|
||||
|
||||
$cabangs = Cabang::where('id', $cabang_id)->get();
|
||||
$forms = FormVehicleRunningCost::whereIn('user_id', $userIds)->get();
|
||||
}
|
||||
} else if ($role == 'Medical Representatif') {
|
||||
$userId = auth()->user()->id;
|
||||
|
||||
$cabangs = null;
|
||||
$forms = FormVehicleRunningCost::where('user_id', $userId)->get();
|
||||
} else {
|
||||
$cabangs = Cabang::all();
|
||||
$forms = FormVehicleRunningCost::all();
|
||||
}
|
||||
|
||||
// get all params in url
|
||||
$params = request()->all();
|
||||
|
||||
if($params) {
|
||||
if ($params['cabang']) {
|
||||
$cabang = Cabang::where('code', $params['cabang'])->first();
|
||||
$users = UserHasCabang::where('cabang_id', $cabang->id)->get();
|
||||
$userIds = $users->pluck('user_id')->toArray();
|
||||
|
||||
$forms = $forms->whereIn('user_id', $userIds);
|
||||
}
|
||||
|
||||
if($params['start_date'] && $params['end_date']) {
|
||||
$forms = $forms->whereBetween('tanggal', [$params['start_date'], $params['end_date']]);
|
||||
}
|
||||
|
||||
if($params['start_date'] && !$params['end_date']) {
|
||||
$forms = $forms->where('tanggal', $params['start_date']);
|
||||
}
|
||||
|
||||
if(!$params['start_date'] && $params['end_date']) {
|
||||
$forms = $forms->where('tanggal', $params['end_date']);
|
||||
}
|
||||
|
||||
if($params['status']) {
|
||||
$forms = $forms->where('status', $params['status']);
|
||||
}
|
||||
}
|
||||
|
||||
return view('backend.pages.report.vehicle', [
|
||||
'pageInfo' => [
|
||||
'title' => 'Generate Reports For Form Vehicle Running Cost',
|
||||
],
|
||||
'forms' => $forms,
|
||||
'cabang' => $cabangs
|
||||
]);
|
||||
}
|
||||
|
||||
public function entertainment()
|
||||
{
|
||||
$role = auth()->user()->getRoleNames()[0];
|
||||
$cabangs = [];
|
||||
$forms = null;
|
||||
|
||||
if ($role == 'Admin Region' || $role == 'Marketing Operational Manager Region') {
|
||||
$region_id = auth()->user()->getMyCabangAndRegionId()['region'];
|
||||
|
||||
if ($region_id) {
|
||||
$users = UserHasCabang::whereHas('cabang', function ($query) use ($region_id) {
|
||||
$query->where('region_id', $region_id);
|
||||
})->get();
|
||||
|
||||
$userIds = $users->pluck('user_id')->toArray();
|
||||
|
||||
$cabangs = Cabang::where('region_id', $region_id)->get();
|
||||
$forms = FormEntertaimentPresentation::whereIn('user_id', $userIds)->get();
|
||||
}
|
||||
} else if ($role == 'Area Manager Cabang') {
|
||||
$cabang_id = auth()->user()->getMyCabangAndRegionId()['cabang'];
|
||||
|
||||
if ($cabang_id) {
|
||||
$users = UserHasCabang::where('cabang_id', $cabang_id)->get();
|
||||
$userIds = $users->pluck('user_id')->toArray();
|
||||
|
||||
$cabangs = Cabang::where('id', $cabang_id)->get();
|
||||
$forms = FormEntertaimentPresentation::whereIn('user_id', $userIds)->get();
|
||||
}
|
||||
} else if ($role == 'Medical Representatif') {
|
||||
$userId = auth()->user()->id;
|
||||
|
||||
$cabangs = null;
|
||||
$forms = FormEntertaimentPresentation::where('user_id', $userId)->get();
|
||||
} else {
|
||||
$cabangs = Cabang::all();
|
||||
$forms = FormEntertaimentPresentation::all();
|
||||
}
|
||||
|
||||
// get all params in url
|
||||
$params = request()->all();
|
||||
|
||||
if($params) {
|
||||
if ($params['cabang']) {
|
||||
$cabang = Cabang::where('code', $params['cabang'])->first();
|
||||
$users = UserHasCabang::where('cabang_id', $cabang->id)->get();
|
||||
$userIds = $users->pluck('user_id')->toArray();
|
||||
|
||||
$forms = $forms->whereIn('user_id', $userIds);
|
||||
}
|
||||
|
||||
if($params['start_date'] && $params['end_date']) {
|
||||
$forms = $forms->whereBetween('tanggal', [$params['start_date'], $params['end_date']]);
|
||||
}
|
||||
|
||||
if($params['start_date'] && !$params['end_date']) {
|
||||
$forms = $forms->where('tanggal', $params['start_date']);
|
||||
}
|
||||
|
||||
if(!$params['start_date'] && $params['end_date']) {
|
||||
$forms = $forms->where('tanggal', $params['end_date']);
|
||||
}
|
||||
|
||||
if($params['status']) {
|
||||
$forms = $forms->where('status', $params['status']);
|
||||
}
|
||||
}
|
||||
|
||||
return view('backend.pages.report.entertainment', [
|
||||
'pageInfo' => [
|
||||
'title' => 'Generate Reports For Form Entertainment & Presentation',
|
||||
],
|
||||
'forms' => $forms,
|
||||
'cabang' => $cabangs
|
||||
]);
|
||||
}
|
||||
|
||||
public function meeting()
|
||||
{
|
||||
$role = auth()->user()->getRoleNames()[0];
|
||||
$cabangs = [];
|
||||
$forms = null;
|
||||
|
||||
if ($role == 'Admin Region' || $role == 'Marketing Operational Manager Region') {
|
||||
$region_id = auth()->user()->getMyCabangAndRegionId()['region'];
|
||||
|
||||
if ($region_id) {
|
||||
$users = UserHasCabang::whereHas('cabang', function ($query) use ($region_id) {
|
||||
$query->where('region_id', $region_id);
|
||||
})->get();
|
||||
|
||||
$userIds = $users->pluck('user_id')->toArray();
|
||||
|
||||
$cabangs = Cabang::where('region_id', $region_id)->get();
|
||||
$forms = FormMeetingSeminar::whereIn('user_id', $userIds)->get();
|
||||
}
|
||||
} else if ($role == 'Area Manager Cabang') {
|
||||
$cabang_id = auth()->user()->getMyCabangAndRegionId()['cabang'];
|
||||
|
||||
if ($cabang_id) {
|
||||
$users = UserHasCabang::where('cabang_id', $cabang_id)->get();
|
||||
$userIds = $users->pluck('user_id')->toArray();
|
||||
|
||||
$cabangs = Cabang::where('id', $cabang_id)->get();
|
||||
$forms = FormMeetingSeminar::whereIn('user_id', $userIds)->get();
|
||||
}
|
||||
} else if ($role == 'Medical Representatif') {
|
||||
$userId = auth()->user()->id;
|
||||
|
||||
$cabangs = null;
|
||||
$forms = FormMeetingSeminar::where('user_id', $userId)->get();
|
||||
} else {
|
||||
$cabangs = Cabang::all();
|
||||
$forms = FormMeetingSeminar::all();
|
||||
}
|
||||
|
||||
// get all params in url
|
||||
$params = request()->all();
|
||||
|
||||
if($params) {
|
||||
if ($params['cabang']) {
|
||||
$cabang = Cabang::where('code', $params['cabang'])->first();
|
||||
$users = UserHasCabang::where('cabang_id', $cabang->id)->get();
|
||||
$userIds = $users->pluck('user_id')->toArray();
|
||||
|
||||
$forms = $forms->whereIn('user_id', $userIds);
|
||||
}
|
||||
|
||||
if($params['start_date'] && $params['end_date']) {
|
||||
$forms = $forms->whereBetween('tanggal', [$params['start_date'], $params['end_date']]);
|
||||
}
|
||||
|
||||
if($params['start_date'] && !$params['end_date']) {
|
||||
$forms = $forms->where('tanggal', $params['start_date']);
|
||||
}
|
||||
|
||||
if(!$params['start_date'] && $params['end_date']) {
|
||||
$forms = $forms->where('tanggal', $params['end_date']);
|
||||
}
|
||||
|
||||
if($params['status']) {
|
||||
$forms = $forms->where('status', $params['status']);
|
||||
}
|
||||
}
|
||||
|
||||
return view('backend.pages.report.meeting', [
|
||||
'pageInfo' => [
|
||||
'title' => 'Generate Reports For Form Meeting & Seminar',
|
||||
],
|
||||
'forms' => $forms,
|
||||
'cabang' => $cabangs
|
||||
]);
|
||||
}
|
||||
|
||||
public function others()
|
||||
{
|
||||
$role = auth()->user()->getRoleNames()[0];
|
||||
$cabangs = [];
|
||||
$forms = null;
|
||||
|
||||
if ($role == 'Admin Region' || $role == 'Marketing Operational Manager Region') {
|
||||
$region_id = auth()->user()->getMyCabangAndRegionId()['region'];
|
||||
|
||||
if ($region_id) {
|
||||
$users = UserHasCabang::whereHas('cabang', function ($query) use ($region_id) {
|
||||
$query->where('region_id', $region_id);
|
||||
})->get();
|
||||
|
||||
$userIds = $users->pluck('user_id')->toArray();
|
||||
|
||||
$cabangs = Cabang::where('region_id', $region_id)->get();
|
||||
$forms = FormOthers::whereIn('user_id', $userIds)->get();
|
||||
}
|
||||
} else if ($role == 'Area Manager Cabang') {
|
||||
$cabang_id = auth()->user()->getMyCabangAndRegionId()['cabang'];
|
||||
|
||||
if ($cabang_id) {
|
||||
$users = UserHasCabang::where('cabang_id', $cabang_id)->get();
|
||||
$userIds = $users->pluck('user_id')->toArray();
|
||||
|
||||
$cabangs = Cabang::where('id', $cabang_id)->get();
|
||||
$forms = FormOthers::whereIn('user_id', $userIds)->get();
|
||||
}
|
||||
} else if ($role == 'Medical Representatif') {
|
||||
$userId = auth()->user()->id;
|
||||
|
||||
$cabangs = null;
|
||||
$forms = FormOthers::where('user_id', $userId)->get();
|
||||
} else {
|
||||
$cabangs = Cabang::all();
|
||||
$forms = FormOthers::all();
|
||||
}
|
||||
|
||||
// get all params in url
|
||||
$params = request()->all();
|
||||
|
||||
if($params) {
|
||||
if ($params['cabang']) {
|
||||
$cabang = Cabang::where('code', $params['cabang'])->first();
|
||||
$users = UserHasCabang::where('cabang_id', $cabang->id)->get();
|
||||
$userIds = $users->pluck('user_id')->toArray();
|
||||
|
||||
$forms = $forms->whereIn('user_id', $userIds);
|
||||
}
|
||||
|
||||
if($params['start_date'] && $params['end_date']) {
|
||||
$forms = $forms->whereBetween('tanggal', [$params['start_date'], $params['end_date']]);
|
||||
}
|
||||
|
||||
if($params['start_date'] && !$params['end_date']) {
|
||||
$forms = $forms->where('tanggal', $params['start_date']);
|
||||
}
|
||||
|
||||
if(!$params['start_date'] && $params['end_date']) {
|
||||
$forms = $forms->where('tanggal', $params['end_date']);
|
||||
}
|
||||
|
||||
if($params['status']) {
|
||||
$forms = $forms->where('status', $params['status']);
|
||||
}
|
||||
}
|
||||
|
||||
return view('backend.pages.report.others', [
|
||||
'pageInfo' => [
|
||||
'title' => 'Generate Reports For Form Others',
|
||||
],
|
||||
'forms' => $forms,
|
||||
'cabang' => $cabangs
|
||||
|
||||
Reference in New Issue
Block a user