add more detail to api
This commit is contained in:
@@ -6,6 +6,8 @@ use App\Exports\V3\SafetyAndPrivacy\CountryActivityReport;
|
|||||||
use App\Exports\V3\SafetyAndPrivacy\ProvinceActivityReport;
|
use App\Exports\V3\SafetyAndPrivacy\ProvinceActivityReport;
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use App\Http\Traits\ApiResponse;
|
use App\Http\Traits\ApiResponse;
|
||||||
|
use App\Models\EdarateShahri;
|
||||||
|
use App\Models\Province;
|
||||||
use App\Services\Cartables\SafetyAndPrivacyTableService;
|
use App\Services\Cartables\SafetyAndPrivacyTableService;
|
||||||
use Illuminate\Http\JsonResponse;
|
use Illuminate\Http\JsonResponse;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
@@ -19,13 +21,19 @@ class SafetyAndPrivacyReportController extends Controller
|
|||||||
public function countryActivity(Request $request, SafetyAndPrivacyTableService $safetyAndPrivacyTableService): JsonResponse
|
public function countryActivity(Request $request, SafetyAndPrivacyTableService $safetyAndPrivacyTableService): JsonResponse
|
||||||
{
|
{
|
||||||
$data = $safetyAndPrivacyTableService->countryActivity($request);
|
$data = $safetyAndPrivacyTableService->countryActivity($request);
|
||||||
return $this->successResponse($data['activities']);
|
return $this->successResponse([
|
||||||
|
'activities' => $data['activities'],
|
||||||
|
'provinces' => Province::all(['id', 'name_fa'])
|
||||||
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function provinceActivity(Request $request, SafetyAndPrivacyTableService $safetyAndPrivacyTableService): JsonResponse
|
public function provinceActivity(Request $request, SafetyAndPrivacyTableService $safetyAndPrivacyTableService): JsonResponse
|
||||||
{
|
{
|
||||||
$data = $safetyAndPrivacyTableService->provinceActivity($request);
|
$data = $safetyAndPrivacyTableService->provinceActivity($request);
|
||||||
return $this->successResponse($data['activities']);
|
return $this->successResponse([
|
||||||
|
'activities' => $data['activities'],
|
||||||
|
'edarateShahri' => EdarateShahri::query()->where('province_id', '=', $request->province_id)->get(['id', 'name_fa']),
|
||||||
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function countryExcelActivity(Request $request, SafetyAndPrivacyTableService $safetyAndPrivacyTableService): BinaryFileResponse
|
public function countryExcelActivity(Request $request, SafetyAndPrivacyTableService $safetyAndPrivacyTableService): BinaryFileResponse
|
||||||
|
|||||||
@@ -165,7 +165,7 @@ class SafetyAndPrivacyController extends Controller
|
|||||||
|
|
||||||
public function deserialize(SafetyAndPrivacy $safetyAndPrivacy): JsonResponse
|
public function deserialize(SafetyAndPrivacy $safetyAndPrivacy): JsonResponse
|
||||||
{
|
{
|
||||||
$judiciaries = isset($safetyAndPrivacy->judiciary_document) ? unserialize($safetyAndPrivacy->judiciary_document) : [];
|
$judiciaries = $safetyAndPrivacy->judiciary_document ? unserialize($safetyAndPrivacy->judiciary_document) : [];
|
||||||
|
|
||||||
$result = [];
|
$result = [];
|
||||||
|
|
||||||
|
|||||||
@@ -61,25 +61,61 @@ class SafetyAndPrivacyTableService
|
|||||||
);
|
);
|
||||||
|
|
||||||
$countryTotalSum = 0;
|
$countryTotalSum = 0;
|
||||||
$activities[]["name_fa"] = 'کشوری';
|
$countryData = [
|
||||||
$activities[]["province_id"] = -1;
|
'name_fa' => 'کشوری',
|
||||||
|
'province_id' => -1,
|
||||||
|
'89' => [
|
||||||
|
'1' => 0,
|
||||||
|
'2' => 0,
|
||||||
|
'3' => 0,
|
||||||
|
],
|
||||||
|
'90' => [
|
||||||
|
'1' => 0,
|
||||||
|
'2' => 0,
|
||||||
|
'3' => 0,
|
||||||
|
],
|
||||||
|
'91' => [
|
||||||
|
'1' => 0,
|
||||||
|
'2' => 0,
|
||||||
|
'3' => 0,
|
||||||
|
],
|
||||||
|
];
|
||||||
foreach ($country as $key => $value) {
|
foreach ($country as $key => $value) {
|
||||||
$countryTotalSum += $value->qty;
|
$countryTotalSum += $value->qty;
|
||||||
$activities[][$value->info_id][$value->step] = $value->qty;
|
$countryData[$value->info_id][$value->step] = $value->qty;
|
||||||
$activities[]["sum"] = $countryTotalSum;
|
$countryData["sum"] = $countryTotalSum;
|
||||||
}
|
}
|
||||||
|
$activities[] = $countryData;
|
||||||
|
|
||||||
$provinces = DB::select(
|
$provinces = DB::select(
|
||||||
"SELECT province_id, province_fa, COUNT(*) as qty,info_id, step, step_fa, info_fa FROM safety_and_privacy where created_at BETWEEN '".$fromDate."' and '".$toDate."' GROUP BY info_id,step,province_id,province_fa"
|
"SELECT province_id, province_fa, COUNT(*) as qty,info_id, step, step_fa, info_fa FROM safety_and_privacy where created_at BETWEEN '".$fromDate."' and '".$toDate."' GROUP BY info_id,step,province_id,province_fa"
|
||||||
);
|
);
|
||||||
|
|
||||||
$provinceTotalSum = 0;
|
$provinceTotalSum = 0;
|
||||||
|
$provinceData = [
|
||||||
|
'89' => [
|
||||||
|
'1' => 0,
|
||||||
|
'2' => 0,
|
||||||
|
'3' => 0,
|
||||||
|
],
|
||||||
|
'90' => [
|
||||||
|
'1' => 0,
|
||||||
|
'2' => 0,
|
||||||
|
'3' => 0,
|
||||||
|
],
|
||||||
|
'91' => [
|
||||||
|
'1' => 0,
|
||||||
|
'2' => 0,
|
||||||
|
'3' => 0,
|
||||||
|
],
|
||||||
|
];
|
||||||
foreach ($provinces as $key => $value) {
|
foreach ($provinces as $key => $value) {
|
||||||
$provinceTotalSum += $value->qty;
|
$provinceTotalSum += $value->qty;
|
||||||
$activities[][$value->info_id][$value->step] = $value->qty;
|
$provinceData[$value->info_id][$value->step] = $value->qty;
|
||||||
$activities[]["sum"] = $provinceTotalSum;
|
$provinceData["sum"] = $provinceTotalSum;
|
||||||
$activities[]["province_fa"] = $value->province_fa;
|
$provinceData["province_fa"] = $value->province_fa;
|
||||||
$activities[]["province_id"] = $value->province_id;
|
$provinceData["province_id"] = $value->province_id;
|
||||||
|
$activities[] = $provinceData;
|
||||||
}
|
}
|
||||||
|
|
||||||
return [
|
return [
|
||||||
@@ -101,25 +137,61 @@ class SafetyAndPrivacyTableService
|
|||||||
');
|
');
|
||||||
|
|
||||||
$provinceTotalSum = 0;
|
$provinceTotalSum = 0;
|
||||||
$activities[]["name_fa"] = 'استانی';
|
$provinceData = [
|
||||||
$activities[]["edare_shahri_id"] = -1;
|
'name_fa' => 'استانی',
|
||||||
|
'edare_shahri_id' => -1,
|
||||||
|
'89' => [
|
||||||
|
'1' => 0,
|
||||||
|
'2' => 0,
|
||||||
|
'3' => 0,
|
||||||
|
],
|
||||||
|
'90' => [
|
||||||
|
'1' => 0,
|
||||||
|
'2' => 0,
|
||||||
|
'3' => 0,
|
||||||
|
],
|
||||||
|
'91' => [
|
||||||
|
'1' => 0,
|
||||||
|
'2' => 0,
|
||||||
|
'3' => 0,
|
||||||
|
],
|
||||||
|
];
|
||||||
foreach ($province as $key => $value) {
|
foreach ($province as $key => $value) {
|
||||||
$provinceTotalSum += $value->qty;
|
$provinceTotalSum += $value->qty;
|
||||||
$activities[]["info-".$value->info_id]["step-".$value->step] = $value->qty;
|
$provinceData["info-".$value->info_id]["step-".$value->step] = $value->qty;
|
||||||
$activities[]["sum"] = $provinceTotalSum;
|
$provinceData["sum"] = $provinceTotalSum;
|
||||||
}
|
}
|
||||||
|
$activities[] = $provinceData;
|
||||||
|
|
||||||
$cities = DB::select('
|
$cities = DB::select('
|
||||||
SELECT edare_shahri_id, COUNT(*) as qty,info_id, step,step_fa, info_fa FROM safety_and_privacy where province_id ='.$provinceId.' and created_at BETWEEN "'.$fromDate.'" and "'.$toDate.'" GROUP BY info_id,step,edare_shahri_id
|
SELECT edare_shahri_id, COUNT(*) as qty,info_id, step,step_fa, info_fa FROM safety_and_privacy where province_id ='.$provinceId.' and created_at BETWEEN "'.$fromDate.'" and "'.$toDate.'" GROUP BY info_id,step,edare_shahri_id
|
||||||
');
|
');
|
||||||
|
|
||||||
$cityTotalSum = 0;
|
$cityTotalSum = 0;
|
||||||
|
$cityData = [
|
||||||
|
'89' => [
|
||||||
|
'1' => 0,
|
||||||
|
'2' => 0,
|
||||||
|
'3' => 0,
|
||||||
|
],
|
||||||
|
'90' => [
|
||||||
|
'1' => 0,
|
||||||
|
'2' => 0,
|
||||||
|
'3' => 0,
|
||||||
|
],
|
||||||
|
'91' => [
|
||||||
|
'1' => 0,
|
||||||
|
'2' => 0,
|
||||||
|
'3' => 0,
|
||||||
|
],
|
||||||
|
];
|
||||||
foreach ($cities as $key => $value) {
|
foreach ($cities as $key => $value) {
|
||||||
$cityTotalSum += $value->qty;
|
$cityTotalSum += $value->qty;
|
||||||
$activities[][$value->info_id][$value->step] = $value->qty;
|
$cityData[$value->info_id][$value->step] = $value->qty;
|
||||||
$activities[]["name_fa"] = \App\Models\EdarateShahri::query()->find($value->edare_shahri_id)->name_fa;
|
$cityData["name_fa"] = \App\Models\EdarateShahri::query()->find($value->edare_shahri_id)->name_fa;
|
||||||
$activities[]["edare_shahri_id"] = $value->edare_shahri_id;
|
$cityData["edare_shahri_id"] = $value->edare_shahri_id;
|
||||||
$activities[]["sum"] = $cityTotalSum;
|
$cityData["sum"] = $cityTotalSum;
|
||||||
|
$activities[] = $cityData;
|
||||||
}
|
}
|
||||||
|
|
||||||
return [
|
return [
|
||||||
|
|||||||
Reference in New Issue
Block a user