mirror of
https://github.com/Bigherollc/wticreatorstudio.git
synced 2026-07-31 14:16:57 -04:00
110 lines
4.2 KiB
PHP
110 lines
4.2 KiB
PHP
<?php
|
|
namespace Modules\GST\Http\Controllers;
|
|
use Brian2694\Toastr\Facades\Toastr;
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Routing\Controller;
|
|
use Modules\GST\Http\Requests\GstgroupRequest;
|
|
use Modules\GST\Repositories\GstConfigureRepository;
|
|
use Modules\GST\Services\GSTService;
|
|
use Modules\UserActivityLog\Traits\LogActivity;
|
|
use \Modules\Product\Services\CategoryService;
|
|
|
|
class ConfigurationController extends Controller
|
|
{
|
|
protected $gstConfigureRepo;
|
|
protected $gstService;
|
|
protected $categoryService;
|
|
|
|
|
|
public function __construct(GstConfigureRepository $gsiConfigureRepository, GSTService $gstService,CategoryService $categoryService)
|
|
{
|
|
$this->gstConfigureRepo = $gsiConfigureRepository;
|
|
$this->gstService = $gstService;
|
|
$this->categoryService = $categoryService;
|
|
|
|
}
|
|
|
|
public function configuration()
|
|
{
|
|
$data['gst_lists'] = $this->gstService->getActiveList();
|
|
$data['gst_configs'] = json_decode(file_get_contents(base_path('Modules/GST/Resources/assets/config_files/config.json')), true);
|
|
$data['gst_groups'] = $this->gstConfigureRepo->getGroup();
|
|
$data['first_category'] =$this->categoryService->firstCategory();
|
|
return view('gst::configurations.index', $data);
|
|
}
|
|
public function configuration_update(Request $request)
|
|
{
|
|
try {
|
|
$this->gstConfigureRepo->updateConfiguration($request->except("_token"));
|
|
LogActivity::successLog('GST Configuration updated.');
|
|
Toastr::success(__('common.updated_successfully'), __('common.success'));
|
|
return back();
|
|
} catch (\Exception $e) {
|
|
LogActivity::errorLog($e);
|
|
Toastr::error(__('common.error_message'), __('common.error'));
|
|
return back();
|
|
}
|
|
}
|
|
|
|
public function get_outsite_state_gst(Request $request){
|
|
$lists = $request->lists;
|
|
return view('gst::configurations.components.outsite_state_gst', compact('lists'));
|
|
}
|
|
public function get_outsite_state_gst_edit(Request $request){
|
|
$lists = $request->lists;
|
|
$prev_list = json_decode($request->prev_val);
|
|
$prev_list = (array) $prev_list;
|
|
|
|
return view('gst::configurations.components.outsite_state_gst_edit', compact('lists','prev_list'));
|
|
}
|
|
|
|
public function get_same_state_gst(Request $request){
|
|
$lists = $request->lists;
|
|
return view('gst::configurations.components.same_state_gst', compact('lists'));
|
|
}
|
|
public function get_same_state_gst_edit(Request $request){
|
|
$lists = $request->lists;
|
|
$prev_list = json_decode($request->prev_val);
|
|
$prev_list = (array) $prev_list;
|
|
|
|
return view('gst::configurations.components.same_state_gst_edit', compact('lists','prev_list'));
|
|
}
|
|
|
|
public function storeGroup(GstgroupRequest $request){
|
|
$this->gstConfigureRepo->stoteGroup($request->except('_token'));
|
|
return $this->reloadWithGroup();
|
|
}
|
|
|
|
public function updateGroup(GstgroupRequest $request){
|
|
$this->gstConfigureRepo->updateGroup($request->except('_token'));
|
|
return $this->reloadWithGroup();
|
|
|
|
}
|
|
|
|
public function deleteGroup(Request $request){
|
|
$result = $this->gstConfigureRepo->deleteGroupById($request->id);
|
|
if($result == 'posible'){
|
|
return $this->reloadWithGroup();
|
|
}else{
|
|
return response()->json([
|
|
'parent_msg' => 'This Item Is not Deletable.'
|
|
]);
|
|
}
|
|
}
|
|
|
|
public function editGroup($id){
|
|
$group = $this->gstConfigureRepo->getGroupById($id);
|
|
$gst_lists = $this->gstService->getActiveList();
|
|
return view('gst::configurations.components.edit_group',compact('group', 'gst_lists'));
|
|
}
|
|
|
|
private function reloadWithGroup(){
|
|
$gst_groups = $this->gstConfigureRepo->getGroup();
|
|
$gst_lists = $this->gstService->getActiveList();
|
|
return response()->json([
|
|
'list' => (string)view("gst::configurations.components.group_list", compact('gst_groups')),
|
|
'createForm' => (string)view("gst::configurations.components.add_group", compact('gst_lists'))
|
|
]);
|
|
}
|
|
}
|