tests passing, needs some manual testing
This commit is contained in:
@@ -13,6 +13,7 @@ use Illuminate\Http\Request;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
use App\Http\Requests\ImageUploadRequest;
|
||||
use Illuminate\Support\Facades\Storage;
|
||||
use Illuminate\Support\MessageBag;
|
||||
|
||||
class CategoriesController extends Controller
|
||||
{
|
||||
@@ -213,18 +214,18 @@ class CategoriesController extends Controller
|
||||
*/
|
||||
public function destroy(Category $category): JsonResponse
|
||||
{
|
||||
$errors = new MessageBag();
|
||||
$this->authorize('delete', Category::class);
|
||||
try {
|
||||
DestroyCategoryAction::run(category: $category);
|
||||
} catch (ItemStillHasChildren $e) {
|
||||
return response()->json(
|
||||
Helper::formatStandardApiResponse('error', null, trans('admin/categories/message.assoc_items', ['asset_type' => $category->category_type]))
|
||||
);
|
||||
$errors->add('error', trans('admin/categories/message.delete.assoc_children', ['category_name' => $category->name]));
|
||||
} catch (\Exception $e) {
|
||||
report($e);
|
||||
return response()->json(
|
||||
Helper::formatStandardApiResponse('error', null, trans('general.something_went_wrong'))
|
||||
);
|
||||
$errors->add('error', trans('general.something_went_wrong'));
|
||||
}
|
||||
if (count($errors) > 0) {
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, $errors));
|
||||
}
|
||||
|
||||
return response()->json(Helper::formatStandardApiResponse('success', null, trans('admin/categories/message.delete.success')));
|
||||
|
||||
@@ -19,6 +19,7 @@ use Illuminate\Http\Request;
|
||||
use App\Http\Requests\ImageUploadRequest;
|
||||
use Illuminate\Support\Facades\Storage;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
use Illuminate\Support\MessageBag;
|
||||
|
||||
class ManufacturersController extends Controller
|
||||
{
|
||||
@@ -193,14 +194,18 @@ class ManufacturersController extends Controller
|
||||
*/
|
||||
public function destroy(Manufacturer $manufacturer): JsonResponse
|
||||
{
|
||||
$errors = new MessageBag();
|
||||
$this->authorize('delete', $manufacturer);
|
||||
try {
|
||||
DeleteManufacturerAction::run($manufacturer);
|
||||
} catch (ItemStillHasChildren $e) {
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, trans('admin/manufacturers/message.assoc_users')));
|
||||
$errors->add('error', trans('admin/manufacturers/message.delete.assoc_children', ['manufacturer_name' => $manufacturer->name]));
|
||||
} catch (\Exception $e) {
|
||||
report($e);
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, trans('general.something_went_wrong')));
|
||||
$errors->add('error', trans('general.something_went_wrong'));
|
||||
}
|
||||
if (count($errors) > 0) {
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, $errors->messages()));
|
||||
}
|
||||
|
||||
return response()->json(Helper::formatStandardApiResponse('success', null, trans('admin/manufacturers/message.delete.success')));
|
||||
|
||||
@@ -15,6 +15,7 @@ use Illuminate\Http\Request;
|
||||
use App\Http\Requests\ImageUploadRequest;
|
||||
use Illuminate\Support\Facades\Storage;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
use Illuminate\Support\MessageBag;
|
||||
|
||||
class SuppliersController extends Controller
|
||||
{
|
||||
@@ -197,18 +198,22 @@ class SuppliersController extends Controller
|
||||
*/
|
||||
public function destroy(Supplier $supplier): JsonResponse
|
||||
{
|
||||
$errors = new MessageBag();
|
||||
$this->authorize('delete', $supplier);
|
||||
try {
|
||||
DestroySupplierAction::run(supplier: $supplier);
|
||||
} catch (ItemStillHasAssets $e) {
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, trans('admin/suppliers/message.delete.assoc_assets', ['asset_count' => (int) $supplier->assets_count])));
|
||||
$errors->add('error', trans('admin/suppliers/message.delete.assoc_assets', ['supplier_name' => $supplier->name]));
|
||||
} catch (ItemStillHasMaintenances $e) {
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, trans('admin/suppliers/message.delete.assoc_maintenances', ['asset_maintenances_count' => $supplier->asset_maintenances_count])));
|
||||
$errors->add('error', trans('admin/suppliers/message.delete.assoc_maintenances', ['supplier_name' => $supplier->name]));
|
||||
} catch (ItemStillHasLicenses $e) {
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, trans('admin/suppliers/message.delete.assoc_licenses', ['licenses_count' => (int) $supplier->licenses_count])));
|
||||
$errors->add('error', trans('admin/suppliers/message.delete.assoc_licenses', ['supplier_name' => $supplier->name]));
|
||||
} catch (\Exception $e) {
|
||||
report($e);
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, trans('general.something_went_wrong')));
|
||||
$errors->add('error', trans('general.something_went_wrong'));
|
||||
}
|
||||
if (count($errors) > 0) {
|
||||
return response()->json(Helper::formatStandardApiResponse('error', null, $errors->messages()));
|
||||
}
|
||||
|
||||
return response()->json(Helper::formatStandardApiResponse('success', null, trans('admin/suppliers/message.delete.success')));
|
||||
|
||||
@@ -11,6 +11,7 @@ use App\Exceptions\ItemStillHasConsumables;
|
||||
use App\Exceptions\ItemStillHasLicenses;
|
||||
use App\Models\Category;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\MessageBag;
|
||||
|
||||
class BulkCategoriesController extends Controller
|
||||
{
|
||||
@@ -18,7 +19,7 @@ class BulkCategoriesController extends Controller
|
||||
{
|
||||
$this->authorize('delete', Category::class);
|
||||
|
||||
$errors = [];
|
||||
$errors = new MessageBag();
|
||||
foreach ($request->ids as $id) {
|
||||
$category = Category::find($id);
|
||||
if (is_null($category)) {
|
||||
@@ -28,20 +29,20 @@ class BulkCategoriesController extends Controller
|
||||
try {
|
||||
DestroyCategoryAction::run(category: $category);
|
||||
} catch (ItemStillHasAccessories $e) {
|
||||
$errors[] = trans('admin/categories/message.delete.bulk_assoc_accessories', ['category_name' => $category->name]);
|
||||
$errors->add('error', trans('admin/categories/message.delete.bulk_assoc_accessories', ['category_name' => $category->name]));
|
||||
} catch (ItemStillHasAssetModels) {
|
||||
$errors[] = trans('admin/categories/message.delete.bulk_assoc_models', ['category_name' => $category->name]);
|
||||
$errors->add('error', trans('admin/categories/message.delete.bulk_assoc_models', ['category_name' => $category->name]));
|
||||
} catch (ItemStillHasAssets) {
|
||||
$errors[] = trans('admin/categories/message.delete.bulk_assoc_assets', ['category_name' => $category->name]);
|
||||
$errors->add('error', trans('admin/categories/message.delete.bulk_assoc_assets', ['category_name' => $category->name]));
|
||||
} catch (ItemStillHasComponents) {
|
||||
$errors[] = trans('admin/categories/message.delete.bulk_assoc_components', ['category_name' => $category->name]);
|
||||
$errors->add('error', trans('admin/categories/message.delete.bulk_assoc_components', ['category_name' => $category->name]));
|
||||
} catch (ItemStillHasConsumables) {
|
||||
$errors[] = trans('admin/categories/message.delete.bulk_assoc_consumables', ['category_name' => $category->name]);
|
||||
$errors->add('error', trans('admin/categories/message.delete.bulk_assoc_consumables', ['category_name' => $category->name]));
|
||||
} catch (ItemStillHasLicenses) {
|
||||
$errors[] = trans('admin/categories/message.delete.bulk_assoc_licenses', ['category_name' => $category->name]);
|
||||
$errors->add('error', trans('admin/categories/message.delete.bulk_assoc_licenses', ['category_name' => $category->name]));
|
||||
} catch (\Exception $e) {
|
||||
report($e);
|
||||
$errors[] = trans('general.something_went_wrong');
|
||||
$errors->add('error', trans('general.something_went_wrong'));
|
||||
}
|
||||
}
|
||||
if (count($errors) > 0) {
|
||||
|
||||
@@ -12,6 +12,7 @@ use App\Exceptions\ItemStillHasConsumables;
|
||||
use App\Exceptions\ItemStillHasLicenses;
|
||||
use App\Models\Manufacturer;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\MessageBag;
|
||||
|
||||
class BulkManufacturersController extends Controller
|
||||
{
|
||||
@@ -19,7 +20,7 @@ class BulkManufacturersController extends Controller
|
||||
{
|
||||
$this->authorize('delete', Manufacturer::class);
|
||||
|
||||
$errors = [];
|
||||
$errors = new MessageBag();
|
||||
foreach ($request->ids as $id) {
|
||||
$manufacturer = Manufacturer::find($id);
|
||||
if (is_null($manufacturer)) {
|
||||
@@ -29,18 +30,18 @@ class BulkManufacturersController extends Controller
|
||||
try {
|
||||
DeleteManufacturerAction::run(manufacturer: $manufacturer);
|
||||
} catch (ItemStillHasAssets $e) {
|
||||
$errors[] = trans('admin/manufacturers/message.delete.bulk_assoc_assets', ['manufacturer_name' => $manufacturer->name]);
|
||||
$errors->add('error', trans('admin/manufacturers/message.delete.bulk_assoc_assets', ['manufacturer_name' => $manufacturer->name]));
|
||||
} catch (ItemStillHasAccessories $e) {
|
||||
$errors[] = trans('admin/manufacturers/message.delete.bulk_assoc_accessories', ['manufacturer_name' => $manufacturer->name]);
|
||||
$errors->add('error', trans('admin/manufacturers/message.delete.bulk_assoc_accessories', ['manufacturer_name' => $manufacturer->name]));
|
||||
} catch (ItemStillHasConsumables $e) {
|
||||
$errors[] = trans('admin/manufacturers/message.delete.bulk_assoc_consumables', ['manufacturer_name' => $manufacturer->name]);
|
||||
$errors->add('error', trans('admin/manufacturers/message.delete.bulk_assoc_consumables', ['manufacturer_name' => $manufacturer->name]));
|
||||
} catch (ItemStillHasComponents $e) {
|
||||
$errors[] = trans('admin/manufacturers/message.delete.bulk_assoc_components', ['manufacturer_name' => $manufacturer->name]);;
|
||||
$errors->add('error', trans('admin/manufacturers/message.delete.bulk_assoc_components', ['manufacturer_name' => $manufacturer->name]));
|
||||
} catch (ItemStillHasLicenses $e) {
|
||||
$errors[] = trans('admin/manufacturers/message.delete.bulk_assoc_licenses', ['manufacturer_name' => $manufacturer->name]);;
|
||||
$errors->add('error', trans('admin/manufacturers/message.delete.bulk_assoc_licenses', ['manufacturer_name' => $manufacturer->name]));
|
||||
} catch (\Exception $e) {
|
||||
report($e);
|
||||
$errors[] = trans('general.something_went_wrong');
|
||||
$errors->add('error', trans('general.something_went_wrong'));
|
||||
}
|
||||
}
|
||||
if (count($errors) > 0) {
|
||||
|
||||
@@ -8,6 +8,7 @@ use App\Exceptions\ItemStillHasAssets;
|
||||
use App\Exceptions\ItemStillHasLicenses;
|
||||
use App\Models\Supplier;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\MessageBag;
|
||||
|
||||
class BulkSuppliersController extends Controller
|
||||
{
|
||||
@@ -15,7 +16,7 @@ class BulkSuppliersController extends Controller
|
||||
{
|
||||
$this->authorize('delete', Supplier::class);
|
||||
|
||||
$errors = [];
|
||||
$errors = new MessageBag();
|
||||
foreach ($request->ids as $id) {
|
||||
$supplier = Supplier::find($id);
|
||||
if (is_null($supplier)) {
|
||||
@@ -25,14 +26,14 @@ class BulkSuppliersController extends Controller
|
||||
try {
|
||||
DestroySupplierAction::run(supplier: $supplier);
|
||||
} catch (ItemStillHasAssets $e) {
|
||||
$errors[] = trans('admin/suppliers/message.delete.bulk_assoc_assets', ['supplier_name' => $supplier->name]);
|
||||
$errors->add('error', trans('admin/suppliers/message.delete.bulk_assoc_assets', ['supplier_name' => $supplier->name]));
|
||||
} catch (ItemStillHasMaintenances $e) {
|
||||
$errors[] = trans('admin/suppliers/message.delete.bulk_assoc_maintenances', ['supplier_name' => $supplier->name]);;
|
||||
$errors->add('error', trans('admin/suppliers/message.delete.bulk_assoc_maintenances', ['supplier_name' => $supplier->name]));;
|
||||
} catch (ItemStillHasLicenses $e) {
|
||||
$errors[] = trans('admin/suppliers/message.delete.bulk_assoc_licenses', ['supplier_name' => $supplier->name]);
|
||||
$errors->add('error', trans('admin/suppliers/message.delete.bulk_assoc_licenses', ['supplier_name' => $supplier->name]));;
|
||||
} catch (\Exception $e) {
|
||||
report($e);
|
||||
$errors[] = trans('general.something_went_wrong');
|
||||
$errors->add('error', trans('general.something_went_wrong'));
|
||||
}
|
||||
}
|
||||
if (count($errors) > 0) {
|
||||
|
||||
@@ -17,6 +17,7 @@ use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\Storage;
|
||||
use Illuminate\Http\RedirectResponse;
|
||||
use \Illuminate\Contracts\View\View;
|
||||
use Illuminate\Support\MessageBag;
|
||||
|
||||
/**
|
||||
* This class controls all actions related to Categories for
|
||||
@@ -153,14 +154,19 @@ class CategoriesController extends Controller
|
||||
*/
|
||||
public function destroy(Category $category): RedirectResponse
|
||||
{
|
||||
$errors = new MessageBag();
|
||||
$this->authorize('delete', Category::class);
|
||||
try {
|
||||
DestroyCategoryAction::run($category);
|
||||
} catch (ItemStillHasChildren $e) {
|
||||
return redirect()->route('categories.index')->with('error', trans('admin/categories/message.assoc_items', ['asset_type' => $category->category_type]));
|
||||
$errors->add('error', trans('admin/categories/message.delete.assoc_children', ['category_name' => $category->name]));
|
||||
} catch (\Exception $e) {
|
||||
report($e);
|
||||
return redirect()->route('categories.index')->with('error', trans('admin/categories/message.delete.error'));
|
||||
$errors->add('error', trans('general.something_went_wrong'));
|
||||
}
|
||||
|
||||
if ($errors->count() > 0) {
|
||||
return redirect()->route('categories.index')->with('error', $errors->messages());
|
||||
}
|
||||
|
||||
return redirect()->route('categories.index')->with('success', trans('admin/categories/message.delete.success'));
|
||||
|
||||
@@ -20,6 +20,7 @@ use Illuminate\Support\Facades\Storage;
|
||||
use Illuminate\Support\Facades\Log;
|
||||
use Illuminate\Http\RedirectResponse;
|
||||
use \Illuminate\Contracts\View\View;
|
||||
use Illuminate\Support\MessageBag;
|
||||
|
||||
/**
|
||||
* This controller handles all actions related to Manufacturers for
|
||||
@@ -167,14 +168,18 @@ class ManufacturersController extends Controller
|
||||
*/
|
||||
public function destroy(Manufacturer $manufacturer): RedirectResponse
|
||||
{
|
||||
$errors = new MessageBag();
|
||||
$this->authorize('delete', $manufacturer);
|
||||
try {
|
||||
DeleteManufacturerAction::run($manufacturer);
|
||||
} catch (ItemStillHasChildren $e) {
|
||||
return redirect()->route('manufacturers.index')->with('error', trans('admin/manufacturers/message.assoc_users'));
|
||||
$errors->add('error', trans('admin/manufacturers/message.delete.assoc_children', ['manufacturer_name' => $manufacturer->name]));
|
||||
} catch (\Exception $e) {
|
||||
report($e);
|
||||
return redirect()->route('manufacturers.index')->with('error', trans('general.something_went_wrong'));
|
||||
$errors->add('error', trans('general.something_went_wrong'));
|
||||
}
|
||||
if (count($errors) > 0) {
|
||||
return redirect()->route('manufacturers.index')->with('error', $errors);
|
||||
}
|
||||
|
||||
return redirect()->route('manufacturers.index')->with('success', trans('admin/manufacturers/message.delete.success'));
|
||||
|
||||
@@ -141,7 +141,7 @@ class SuppliersController extends Controller
|
||||
}
|
||||
|
||||
if ($errors->count() > 0) {
|
||||
return redirect()->route('suppliers.index')->with('multi_errors', $errors);
|
||||
return redirect()->route('suppliers.index')->with('error', $errors);
|
||||
}
|
||||
|
||||
return redirect()->route('suppliers.index')->with('success', trans('admin/suppliers/message.delete.success'));
|
||||
|
||||
@@ -39,6 +39,7 @@ class DeleteCategoriesTest extends TestCase
|
||||
|
||||
$this->actingAs(User::factory()->deleteCategories()->create())
|
||||
->delete(route('categories.destroy', $category))
|
||||
->dumpSession()
|
||||
->assertRedirectToRoute('categories.index')
|
||||
->assertSessionHas('error');
|
||||
$this->assertNotSoftDeleted($category);
|
||||
|
||||
Reference in New Issue
Block a user