Some More Events Moved

This commit is contained in:
Devansh 2022-01-10 20:51:59 +05:30
parent 62ddf53d16
commit 0bf0ab1f72
4 changed files with 97 additions and 60 deletions

View File

@ -3,20 +3,19 @@
namespace Webkul\Admin\Http\Controllers\Customer;
use Webkul\Admin\Http\Controllers\Controller;
use Illuminate\Support\Facades\Event;
use Webkul\Customer\Repositories\CustomerGroupRepository;
class CustomerGroupController extends Controller
{
/**
* Contains route related configuration
* Contains route related configuration.
*
* @var array
*/
protected $_config;
/**
* CustomerGroupRepository object
* Customer group repository instance.
*
* @var \Webkul\Customer\Repositories\CustomerGroupRepository
*/
@ -73,11 +72,7 @@ class CustomerGroupController extends Controller
$data['is_user_defined'] = 1;
Event::dispatch('customer.customer_group.create.before');
$customerGroup = $this->customerGroupRepository->create($data);
Event::dispatch('customer.customer_group.create.after', $customerGroup);
$this->customerGroupRepository->create($data);
session()->flash('success', trans('admin::app.response.create-success', ['name' => 'Customer Group']));
@ -110,11 +105,7 @@ class CustomerGroupController extends Controller
'name' => 'required',
]);
Event::dispatch('customer.customer_group.update.before', $id);
$customerGroup = $this->customerGroupRepository->update(request()->all(), $id);
Event::dispatch('customer.customer_group.update.after', $customerGroup);
$this->customerGroupRepository->update(request()->all(), $id);
session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Customer Group']));
@ -137,16 +128,12 @@ class CustomerGroupController extends Controller
session()->flash('warning', trans('admin::app.response.customer-associate', ['name' => 'Customer Group']));
} else {
try {
Event::dispatch('customer.customer_group.delete.before', $id);
$this->customerGroupRepository->delete($id);
Event::dispatch('customer.customer_group.delete.after', $id);
session()->flash('success', trans('admin::app.response.delete-success', ['name' => 'Customer Group']));
return response()->json(['message' => true], 200);
} catch(\Exception $e) {
} catch (\Exception $e) {
session()->flash('error', trans('admin::app.response.delete-failed', ['name' => 'Customer Group']));
}
}

View File

@ -2,47 +2,75 @@
namespace Webkul\Customer\Repositories;
use Illuminate\Support\Facades\Event;
use Webkul\Core\Eloquent\Repository;
class CustomerGroupRepository extends Repository
{
/**
* Specify Model class name
* Specify model class name.
*
* @return mixed
*/
function model()
public function model()
{
return 'Webkul\Customer\Contracts\CustomerGroup';
return \Webkul\Customer\Contracts\CustomerGroup::class;
}
/**
* Create.
*
* @param array $data
* @return \Webkul\Customer\Contracts\CustomerGroup
*/
public function create(array $data)
{
$customer = $this->model->create($data);
Event::dispatch('customer.customer_group.create.before');
return $customer;
$customerGroup = $this->model->create($data);
Event::dispatch('customer.customer_group.create.after', $customerGroup);
return $customerGroup;
}
/**
* Update.
*
* @param array $data
* @param int $id
* @param string $id
* @return \Webkul\Customer\Contracts\CustomerGroup
*/
public function update(array $data, $id, $attribute = "id")
public function update(array $data, $id, $attribute = 'id')
{
$customer = $this->find($id);
$customer = $this->findOrFail($id);
$customer->update($data);
Event::dispatch('customer.customer_group.update.before', $id);
$customerGroup = $customer->update($data);
Event::dispatch('customer.customer_group.update.after', $customerGroup);
return $customer;
}
/**
* Delete.
*
* @param $id
* @return int
*/
public function delete($id)
{
Event::dispatch('customer.customer_group.delete.before', $id);
parent::delete($id);
Event::dispatch('customer.customer_group.delete.after', $id);
}
/**
* Returns guest group.
*

View File

@ -8,14 +8,14 @@ use Webkul\Product\Repositories\ProductReviewRepository;
class ReviewController extends Controller
{
/**
* Contains route related configuration
* Contains route related configuration.
*
* @var array
*/
protected $_config;
/**
* ProductReviewRepository object
* Product review repository instance.
*
* @var \Webkul\Product\Repositories\ProductReviewRepository
*/
@ -65,12 +65,8 @@ class ReviewController extends Controller
*/
public function update($id)
{
Event::dispatch('customer.review.update.before', $id);
$this->productReviewRepository->update(request()->all(), $id);
Event::dispatch('customer.review.update.after', $id);
session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Review']));
return redirect()->route($this->_config['redirect']);
@ -84,20 +80,17 @@ class ReviewController extends Controller
*/
public function destroy($id)
{
$productReview = $this->productReviewRepository->findOrFail($id);
$this->productReviewRepository->findOrFail($id);
try {
Event::dispatch('customer.review.delete.before', $id);
$this->productReviewRepository->delete($id);
Event::dispatch('customer.review.delete.after', $id);
session()->flash('success', trans('admin::app.response.delete-success', ['name' => 'Review']));
return response()->json(['message' => true], 200);
} catch (\Exception $e) {
report($e);
session()->flash('success', trans('admin::app.response.delete-failed', ['name' => 'Review']));
}
@ -120,12 +113,8 @@ class ReviewController extends Controller
foreach ($indexes as $key => $value) {
try {
Event::dispatch('customer.review.delete.before', $value);
$this->productReviewRepository->delete($value);
Event::dispatch('customer.review.delete.after', $value);
} catch(\Exception $e) {
} catch (\Exception $e) {
$suppressFlash = true;
continue;
@ -180,7 +169,7 @@ class ReviewController extends Controller
continue;
}
}
} catch(\Exception $e) {
} catch (\Exception $e) {
$suppressFlash = true;
continue;

View File

@ -2,7 +2,7 @@
namespace Webkul\Product\Repositories;
use Illuminate\Container\Container as App;
use Illuminate\Support\Facades\Event;
use Webkul\Core\Eloquent\Repository;
class ProductReviewRepository extends Repository
@ -12,9 +12,42 @@ class ProductReviewRepository extends Repository
*
* @return mixed
*/
function model()
public function model()
{
return 'Webkul\Product\Contracts\ProductReview';
return \Webkul\Product\Contracts\ProductReview::class;
}
/**
* Update review.
*
* @param array $attributes
* @param $id
* @return mixed
*/
public function update(array $attributes, $id)
{
Event::dispatch('customer.review.update.before', $id);
$review = parent::update($attributes, $id);
Event::dispatch('customer.review.update.after', $review);
return $review;
}
/**
* Delete a entity in repository by id
*
* @param $id
* @return void
*/
public function delete($id)
{
Event::dispatch('customer.review.delete.before', $id);
parent::delete($id);
Event::dispatch('customer.review.delete.after', $id);
}
/**
@ -22,11 +55,11 @@ class ProductReviewRepository extends Repository
*
* @param int $customerId
*/
function getCustomerReview()
public function getCustomerReview()
{
$customerId = auth()->guard('customer')->user()->id;
$reviews = $this->model->where(['customer_id'=> $customerId])->with('product')->paginate(5);
$reviews = $this->model->where(['customer_id' => $customerId])->with('product')->paginate(5);
return $reviews;
}