diff --git a/Modules/Internal/Http/Controllers/Api/CorporateController.php b/Modules/Internal/Http/Controllers/Api/CorporateController.php
index 394d5d2b..42e09651 100644
--- a/Modules/Internal/Http/Controllers/Api/CorporateController.php
+++ b/Modules/Internal/Http/Controllers/Api/CorporateController.php
@@ -27,7 +27,8 @@ class CorporateController extends Controller
{
$corporates = Corporate::query()
->when($request->search, function ($query, $search) {
- return $query->where('name', 'LIKE', '%'.$search.'%');
+ return $query->where('name', 'LIKE', '%'.$search.'%')
+ ->orWhere('code', 'LIKE', '%'.$search.'%');
})
->with('currentPolicy')
->withCount([
@@ -35,7 +36,7 @@ class CorporateController extends Controller
'corporatePlans',
'corporateBenefits'
])
- ->paginate(2);
+ ->paginate(10);
return $corporates;
}
@@ -183,6 +184,24 @@ class CorporateController extends Controller
//
}
+ public function activation(Request $request, $corporate_id) {
+ $request->validate([
+ 'active' => 'required'
+ ]);
+
+ // abort(404);
+
+ $corporate = Corporate::findOrFail($corporate_id);
+ $corporate->active = $request->active == '1';
+
+ if ($corporate->save()) {
+ return response()->json([
+ 'corporate' => $corporate,
+ 'message' => 'Status Updated Successfully'
+ ]);
+ }
+ }
+
public function importPlanBenefit(Request $request, $corporate_id)
{
$request->validate([
diff --git a/Modules/Internal/Routes/api.php b/Modules/Internal/Routes/api.php
index d18f067c..6d3c1b46 100644
--- a/Modules/Internal/Routes/api.php
+++ b/Modules/Internal/Routes/api.php
@@ -43,6 +43,7 @@ Route::prefix('internal')->group(function () {
});
Route::resource('corporates', CorporateController::class);
+ Route::put('corporates/{corporate_id}/activation', [CorporateController::class, 'activation']);
Route::post('corporates/{corporate_id}/import-plan-benefit', [CorporateController::class, 'importPlanBenefit']);
Route::get('corporates/{corporate_id}/corporate-plans', [CorporatePlanController::class, 'index']);
diff --git a/frontend/dashboard/src/pages/Corporates/Formularium/List.tsx b/frontend/dashboard/src/pages/Corporates/Formularium/List.tsx
index 4785cf97..9f171f66 100644
--- a/frontend/dashboard/src/pages/Corporates/Formularium/List.tsx
+++ b/frontend/dashboard/src/pages/Corporates/Formularium/List.tsx
@@ -116,6 +116,7 @@ export default function PlanList() {
}
const handleInactiveAction = (formularium : any) => {
+ enqueueSnackbar('Fuck yuo'), { variant: 'error' });
axios
.put('/corporates/'+corporate_id+'/formulariums/'+formularium.id+'/activate')
.then(() => {
@@ -135,7 +136,8 @@ export default function PlanList() {
})
})
.catch((error) => {
- enqueueSnackbar(error.message ?? 'Failed Processing Request', { variant: 'error' });
+ console.log(error)
+ enqueueSnackbar(error.data?.message ?? (error.message ?? 'Failed Processing Request'), { variant: 'error' });
})
}
diff --git a/frontend/dashboard/src/pages/Corporates/Index.tsx b/frontend/dashboard/src/pages/Corporates/Index.tsx
index c9be9bae..4f13c419 100644
--- a/frontend/dashboard/src/pages/Corporates/Index.tsx
+++ b/frontend/dashboard/src/pages/Corporates/Index.tsx
@@ -18,6 +18,7 @@ import { LaravelPaginatedData } from '../../@types/paginated-data';
import HeaderBreadcrumbs from '../../components/HeaderBreadcrumbs';
import BasePagination from '../../components/BasePagination';
import { fCurrency } from '../../utils/formatNumber';
+import { enqueueSnackbar } from 'notistack';
export default function Corporates() {
const { themeStretch } = useSettings();
@@ -223,7 +224,7 @@ export default function Corporates() {
{/* */}
-
+
);
}
@@ -234,6 +235,29 @@ export default function Corporates() {
const { row } = props;
const [open, setOpen] = React.useState(false);
+ const handleActivate = (model: any, status: string) => {
+ axios.put(`/corporates/${row.id}/activation`, {
+ // service_code: service.service_code,
+ active: status == 'active'
+ })
+ .then((res) => {
+ setDataTableData({
+ ...dataTableData,
+ data: dataTableData.data.map((model) => {
+ let updatedModel = model
+ if (row.id == model.id) {
+ updatedModel.active = res.data.corporate.active
+ }
+ return updatedModel
+ })
+ })
+ })
+ .catch((error) => {
+ // console.log('asdasd', error.response.data.message)
+ enqueueSnackbar(error.response.data.message ?? error.message ?? 'Failed Processing Request', { variant: 'error' });
+ })
+ }
+
return (
*': { borderBottom: 'unset' } }}>
@@ -248,7 +272,10 @@ export default function Corporates() {
{row.code}
{row.name}
-
+
+ {( row.active == 1 && )}
+ {( row.active != 1 && )}
+
Link>
@@ -368,7 +395,7 @@ export default function Corporates() {