Compare commits
3 Commits
e9c62209d4
...
main
Author | SHA1 | Date | |
---|---|---|---|
4a396e6f98 | |||
442822e472 | |||
d1851922ec |
67
Modules/Admin/app/Http/Controllers/CalendarController.php
Normal file
67
Modules/Admin/app/Http/Controllers/CalendarController.php
Normal file
@ -0,0 +1,67 @@
|
||||
<?php
|
||||
|
||||
namespace Modules\Admin\Http\Controllers;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Http\RedirectResponse;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Response;
|
||||
|
||||
class CalendarController extends Controller
|
||||
{
|
||||
/**
|
||||
* Display a listing of the resource.
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
return view('admin::index');
|
||||
}
|
||||
|
||||
/**
|
||||
* Show the form for creating a new resource.
|
||||
*/
|
||||
public function create()
|
||||
{
|
||||
return view('admin::create');
|
||||
}
|
||||
|
||||
/**
|
||||
* Store a newly created resource in storage.
|
||||
*/
|
||||
public function store(Request $request): RedirectResponse
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
* Show the specified resource.
|
||||
*/
|
||||
public function show($id)
|
||||
{
|
||||
return view('admin::show');
|
||||
}
|
||||
|
||||
/**
|
||||
* Show the form for editing the specified resource.
|
||||
*/
|
||||
public function edit($id)
|
||||
{
|
||||
return view('admin::edit');
|
||||
}
|
||||
|
||||
/**
|
||||
* Update the specified resource in storage.
|
||||
*/
|
||||
public function update(Request $request, $id): RedirectResponse
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the specified resource from storage.
|
||||
*/
|
||||
public function destroy($id)
|
||||
{
|
||||
//
|
||||
}
|
||||
}
|
@ -34,7 +34,7 @@ class CompanyController extends Controller
|
||||
*/
|
||||
public function create()
|
||||
{
|
||||
$data['title'] = 'Create Companys';
|
||||
$data['title'] = 'Create Company';
|
||||
$data['editable'] = false;
|
||||
$data['companyTypeLists'] = $this->adminService->pluckCompanyTypes();
|
||||
return view('admin::companies.create', $data);
|
||||
|
@ -31,7 +31,7 @@ class ComplaintController extends Controller
|
||||
*/
|
||||
public function create()
|
||||
{
|
||||
$data['title'] = 'Create Complaints';
|
||||
$data['title'] = 'Create Complaint';
|
||||
$data['editable'] = false;
|
||||
return view('admin::complaints.create', $data);
|
||||
}
|
||||
@ -65,7 +65,7 @@ class ComplaintController extends Controller
|
||||
public function edit($id)
|
||||
{
|
||||
try {
|
||||
$data['title'] = 'Edit Complaints';
|
||||
$data['title'] = 'Edit Complaint';
|
||||
$data['editable'] = true;
|
||||
$data['complaint'] = $this->complaintRepository->getComplaintById($id);
|
||||
|
||||
|
109
Modules/Admin/app/Http/Controllers/EventController.php
Normal file
109
Modules/Admin/app/Http/Controllers/EventController.php
Normal file
@ -0,0 +1,109 @@
|
||||
<?php
|
||||
|
||||
namespace Modules\Admin\Http\Controllers;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Http\RedirectResponse;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Response;
|
||||
use Modules\Admin\Repositories\EventRepository;
|
||||
|
||||
class EventController extends Controller
|
||||
{
|
||||
private $eventRepository;
|
||||
|
||||
public function __construct(EventRepository $eventRepository)
|
||||
{
|
||||
$this->eventRepository = $eventRepository;
|
||||
}
|
||||
/**
|
||||
* Display a listing of the resource.
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
$data['title'] = 'Event Lists';
|
||||
$data['eventLists'] = $this->eventRepository->findAll();
|
||||
return view('admin::events.index', $data);
|
||||
}
|
||||
|
||||
/**
|
||||
* Show the form for creating a new resource.
|
||||
*/
|
||||
public function create()
|
||||
{
|
||||
$data['title'] = 'Create Event';
|
||||
$data['editable'] = false;
|
||||
return view('admin::events.create', $data);
|
||||
}
|
||||
|
||||
/**
|
||||
* Store a newly created resource in storage.
|
||||
*/
|
||||
public function store(Request $request): RedirectResponse
|
||||
{
|
||||
try {
|
||||
$this->eventRepository->create($request->all());
|
||||
toastr()->success('Event Created Successfully');
|
||||
|
||||
} catch (\Throwable $th) {
|
||||
toastr()->error($th->getMessage());
|
||||
}
|
||||
return redirect()->route('event.index');
|
||||
}
|
||||
|
||||
/**
|
||||
* Show the specified resource.
|
||||
*/
|
||||
public function show($id)
|
||||
{
|
||||
return view('admin::events.show');
|
||||
}
|
||||
|
||||
/**
|
||||
* Show the form for editing the specified resource.
|
||||
*/
|
||||
public function edit($id)
|
||||
{
|
||||
try {
|
||||
$data['title'] = 'Edit Event';
|
||||
$data['editable'] = true;
|
||||
$data['event'] = $this->eventRepository->getEventById($id);
|
||||
|
||||
} catch (\Throwable $th) {
|
||||
toastr()->error($th->getMessage());
|
||||
}
|
||||
|
||||
return view('admin::events.edit', $data);
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Update the specified resource in storage.
|
||||
*/
|
||||
public function update(Request $request, $id): RedirectResponse
|
||||
{
|
||||
try {
|
||||
|
||||
$this->eventRepository->update($id, $request->all());
|
||||
toastr()->success('Event Updated Successfully');
|
||||
|
||||
} catch (\Throwable $th) {
|
||||
toastr()->error($th->getMessage());
|
||||
}
|
||||
return redirect()->route('event.index');
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the specified resource from storage.
|
||||
*/
|
||||
public function destroy($id)
|
||||
{
|
||||
try {
|
||||
$this->eventRepository->delete($id);
|
||||
toastr()->success('Event Deleted Successfully');
|
||||
} catch (\Throwable $th) {
|
||||
toastr()->error($th->getMessage());
|
||||
}
|
||||
return redirect()->route('event.index');
|
||||
}
|
||||
}
|
109
Modules/Admin/app/Http/Controllers/HolidayController.php
Normal file
109
Modules/Admin/app/Http/Controllers/HolidayController.php
Normal file
@ -0,0 +1,109 @@
|
||||
<?php
|
||||
|
||||
namespace Modules\Admin\Http\Controllers;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Http\RedirectResponse;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Response;
|
||||
use Modules\Admin\Repositories\HolidayRepository;
|
||||
|
||||
class HolidayController extends Controller
|
||||
{
|
||||
private $holidayRepository;
|
||||
|
||||
public function __construct(HolidayRepository $holidayRepository)
|
||||
{
|
||||
$this->holidayRepository = $holidayRepository;
|
||||
}
|
||||
/**
|
||||
* Display a listing of the resource.
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
$data['title'] = 'Holiday Lists';
|
||||
$data['holidayLists'] = $this->holidayRepository->findAll();
|
||||
return view('admin::holidays.index', $data);
|
||||
}
|
||||
|
||||
/**
|
||||
* Show the form for creating a new resource.
|
||||
*/
|
||||
public function create()
|
||||
{
|
||||
$data['title'] = 'Create Holiday';
|
||||
$data['editable'] = false;
|
||||
return view('admin::holidays.create', $data);
|
||||
}
|
||||
|
||||
/**
|
||||
* Store a newly created resource in storage.
|
||||
*/
|
||||
public function store(Request $request): RedirectResponse
|
||||
{
|
||||
try {
|
||||
$this->holidayRepository->create($request->all());
|
||||
toastr()->success('Holiday Created Successfully');
|
||||
|
||||
} catch (\Throwable $th) {
|
||||
toastr()->error($th->getMessage());
|
||||
}
|
||||
return redirect()->route('holiday.index');
|
||||
}
|
||||
|
||||
/**
|
||||
* Show the specified resource.
|
||||
*/
|
||||
public function show($id)
|
||||
{
|
||||
return view('admin::holidays.show');
|
||||
}
|
||||
|
||||
/**
|
||||
* Show the form for editing the specified resource.
|
||||
*/
|
||||
public function edit($id)
|
||||
{
|
||||
try {
|
||||
$data['title'] = 'Edit Holiday';
|
||||
$data['editable'] = true;
|
||||
$data['holiday'] = $this->holidayRepository->getHolidayById($id);
|
||||
|
||||
} catch (\Throwable $th) {
|
||||
toastr()->error($th->getMessage());
|
||||
}
|
||||
|
||||
return view('admin::holidays.edit', $data);
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Update the specified resource in storage.
|
||||
*/
|
||||
public function update(Request $request, $id): RedirectResponse
|
||||
{
|
||||
try {
|
||||
|
||||
$this->holidayRepository->update($id, $request->all());
|
||||
toastr()->success('Holiday Updated Successfully');
|
||||
|
||||
} catch (\Throwable $th) {
|
||||
toastr()->error($th->getMessage());
|
||||
}
|
||||
return redirect()->route('holiday.index');
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the specified resource from storage.
|
||||
*/
|
||||
public function destroy($id)
|
||||
{
|
||||
try {
|
||||
$this->holidayRepository->delete($id);
|
||||
toastr()->success('Holiday Deleted Successfully');
|
||||
} catch (\Throwable $th) {
|
||||
toastr()->error($th->getMessage());
|
||||
}
|
||||
return redirect()->route('holiday.index');
|
||||
}
|
||||
}
|
@ -31,7 +31,7 @@ class TransferController extends Controller
|
||||
*/
|
||||
public function create()
|
||||
{
|
||||
$data['title'] = 'Create Transfers';
|
||||
$data['title'] = 'Create Transfer';
|
||||
$data['editable'] = false;
|
||||
return view('admin::transfers.create', $data);
|
||||
}
|
||||
@ -65,7 +65,7 @@ class TransferController extends Controller
|
||||
public function edit($id)
|
||||
{
|
||||
try {
|
||||
$data['title'] = 'Edit Transfers';
|
||||
$data['title'] = 'Edit Transfer';
|
||||
$data['editable'] = true;
|
||||
$data['transfer'] = $this->transferRepository->getTransferById($id);
|
||||
|
||||
|
@ -31,7 +31,7 @@ class WarningController extends Controller
|
||||
*/
|
||||
public function create()
|
||||
{
|
||||
$data['title'] = 'Create Warnings';
|
||||
$data['title'] = 'Create Warning';
|
||||
$data['editable'] = false;
|
||||
return view('admin::warnings.create', $data);
|
||||
}
|
||||
@ -65,7 +65,7 @@ class WarningController extends Controller
|
||||
public function edit($id)
|
||||
{
|
||||
try {
|
||||
$data['title'] = 'Edit Warnings';
|
||||
$data['title'] = 'Edit Warning';
|
||||
$data['editable'] = true;
|
||||
$data['warning'] = $this->warningRepository->getWarningById($id);
|
||||
|
||||
|
@ -19,6 +19,10 @@ class Company extends Model
|
||||
'title',
|
||||
'alias',
|
||||
'company_type_id',
|
||||
'address',
|
||||
'bank_name',
|
||||
'bank_acc_no',
|
||||
'bank_acc_branch',
|
||||
'status',
|
||||
'description',
|
||||
'remarks',
|
||||
|
33
Modules/Admin/app/Models/Event.php
Normal file
33
Modules/Admin/app/Models/Event.php
Normal file
@ -0,0 +1,33 @@
|
||||
<?php
|
||||
|
||||
namespace Modules\Admin\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Modules\Admin\Database\factories\EventFactory;
|
||||
|
||||
class Event extends Model
|
||||
{
|
||||
use HasFactory;
|
||||
|
||||
protected $table = 'tbl_events';
|
||||
protected $primaryKey = "event_id";
|
||||
|
||||
/**
|
||||
* The attributes that are mass assignable.
|
||||
*/
|
||||
protected $fillable = [
|
||||
'title',
|
||||
'alias',
|
||||
'type',
|
||||
'date',
|
||||
'start_time',
|
||||
'end_time',
|
||||
'location',
|
||||
'status',
|
||||
'description',
|
||||
'remarks',
|
||||
'createdBy',
|
||||
'updatedBy',
|
||||
];
|
||||
}
|
30
Modules/Admin/app/Models/Holiday.php
Normal file
30
Modules/Admin/app/Models/Holiday.php
Normal file
@ -0,0 +1,30 @@
|
||||
<?php
|
||||
|
||||
namespace Modules\Admin\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Modules\Admin\Database\factories\HolidayFactory;
|
||||
|
||||
class Holiday extends Model
|
||||
{
|
||||
use HasFactory;
|
||||
|
||||
protected $table = 'tbl_holidays';
|
||||
|
||||
protected $primaryKey = "holiday_id";
|
||||
|
||||
/**
|
||||
* The attributes that are mass assignable.
|
||||
*/
|
||||
protected $fillable = [
|
||||
'title',
|
||||
'alias',
|
||||
'date',
|
||||
'status',
|
||||
'description',
|
||||
'remarks',
|
||||
'createdBy',
|
||||
'updatedBy'
|
||||
];
|
||||
}
|
12
Modules/Admin/app/Repositories/EventInterface.php
Normal file
12
Modules/Admin/app/Repositories/EventInterface.php
Normal file
@ -0,0 +1,12 @@
|
||||
<?php
|
||||
|
||||
namespace Modules\Admin\Repositories;
|
||||
|
||||
interface EventInterface
|
||||
{
|
||||
public function findAll();
|
||||
public function getEventById($eventId);
|
||||
public function delete($eventId);
|
||||
public function create(array $eventDetails);
|
||||
public function update($eventId, array $newDetails);
|
||||
}
|
35
Modules/Admin/app/Repositories/EventRepository.php
Normal file
35
Modules/Admin/app/Repositories/EventRepository.php
Normal file
@ -0,0 +1,35 @@
|
||||
<?php
|
||||
|
||||
namespace Modules\Admin\Repositories;
|
||||
|
||||
use Modules\Admin\Models\Event;
|
||||
|
||||
|
||||
class EventRepository implements EventInterface
|
||||
{
|
||||
public function findAll()
|
||||
{
|
||||
return Event::get();
|
||||
}
|
||||
|
||||
public function getEventById($eventId)
|
||||
{
|
||||
return Event::findOrFail($eventId);
|
||||
}
|
||||
|
||||
public function delete($eventId)
|
||||
{
|
||||
Event::destroy($eventId);
|
||||
}
|
||||
|
||||
public function create(array $eventDetails)
|
||||
{
|
||||
return Event::create($eventDetails);
|
||||
}
|
||||
|
||||
public function update($eventId, array $newDetails)
|
||||
{
|
||||
return Event::where('event_id', $eventId)->update($newDetails);
|
||||
}
|
||||
|
||||
}
|
12
Modules/Admin/app/Repositories/HolidayInterface.php
Normal file
12
Modules/Admin/app/Repositories/HolidayInterface.php
Normal file
@ -0,0 +1,12 @@
|
||||
<?php
|
||||
|
||||
namespace Modules\Admin\Repositories;
|
||||
|
||||
interface HolidayInterface
|
||||
{
|
||||
public function findAll();
|
||||
public function getHolidayById($holidayId);
|
||||
public function delete($holidayId);
|
||||
public function create(array $holidayDetails);
|
||||
public function update($holidayId, array $newDetails);
|
||||
}
|
35
Modules/Admin/app/Repositories/HolidayRepository.php
Normal file
35
Modules/Admin/app/Repositories/HolidayRepository.php
Normal file
@ -0,0 +1,35 @@
|
||||
<?php
|
||||
|
||||
namespace Modules\Admin\Repositories;
|
||||
|
||||
use Modules\Admin\Models\Holiday;
|
||||
|
||||
|
||||
class HolidayRepository implements HolidayInterface
|
||||
{
|
||||
public function findAll()
|
||||
{
|
||||
return Holiday::get();
|
||||
}
|
||||
|
||||
public function getHolidayById($holidayId)
|
||||
{
|
||||
return Holiday::findOrFail($holidayId);
|
||||
}
|
||||
|
||||
public function delete($holidayId)
|
||||
{
|
||||
Holiday::destroy($holidayId);
|
||||
}
|
||||
|
||||
public function create(array $holidayDetails)
|
||||
{
|
||||
return Holiday::create($holidayDetails);
|
||||
}
|
||||
|
||||
public function update($holidayId, array $newDetails)
|
||||
{
|
||||
return Holiday::where('holiday_id', $holidayId)->update($newDetails);
|
||||
}
|
||||
|
||||
}
|
@ -18,6 +18,9 @@ return new class extends Migration {
|
||||
$table->integer('status')->nullable();
|
||||
$table->mediumText('description')->nullable();
|
||||
$table->mediumText('remarks')->nullable();
|
||||
$table->string('bank_name')->nullable();
|
||||
$table->string('bank_acc_no')->nullable();
|
||||
$table->string('bank_acc_branch')->nullable();
|
||||
$table->unsignedBigInteger('createdBy')->nullable();
|
||||
$table->unsignedBigInteger('updatedBy')->nullable();
|
||||
$table->timestamps();
|
||||
|
@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
return new class extends Migration {
|
||||
/**
|
||||
* Run the migrations.
|
||||
*/
|
||||
public function up(): void
|
||||
{
|
||||
Schema::create('tbl_events', function (Blueprint $table) {
|
||||
$table->unsignedTinyInteger('event_id')->autoIncrement();
|
||||
$table->string('title')->nullable();
|
||||
$table->string('alias')->nullable();
|
||||
$table->string('type')->nullable();
|
||||
$table->string('date')->nullable();
|
||||
$table->time('start_time')->nullable();
|
||||
$table->time('end_time')->nullable();
|
||||
$table->integer('status')->nullable();
|
||||
$table->mediumText('description')->nullable();
|
||||
$table->string('location')->nullable();
|
||||
$table->mediumText('remarks')->nullable();
|
||||
$table->unsignedBigInteger('createdBy')->nullable();
|
||||
$table->unsignedBigInteger('updatedBy')->nullable();
|
||||
$table->timestamps();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*/
|
||||
public function down(): void
|
||||
{
|
||||
Schema::dropIfExists('tbl_events');
|
||||
}
|
||||
};
|
@ -0,0 +1,34 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
return new class extends Migration {
|
||||
/**
|
||||
* Run the migrations.
|
||||
*/
|
||||
public function up(): void
|
||||
{
|
||||
Schema::create('tbl_holidays', function (Blueprint $table) {
|
||||
$table->unsignedTinyInteger('holiday_id')->autoIncrement();
|
||||
$table->string('title')->nullable();
|
||||
$table->string('alias')->nullable();
|
||||
$table->string('date')->nullable();
|
||||
$table->integer('status')->nullable();
|
||||
$table->mediumText('description')->nullable();
|
||||
$table->mediumText('remarks')->nullable();
|
||||
$table->unsignedBigInteger('createdBy')->nullable();
|
||||
$table->unsignedBigInteger('updatedBy')->nullable();
|
||||
$table->timestamps();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*/
|
||||
public function down(): void
|
||||
{
|
||||
Schema::dropIfExists('tbl_holidays');
|
||||
}
|
||||
};
|
1305
Modules/Admin/resources/views/calendars/index.blade.php
Normal file
1305
Modules/Admin/resources/views/calendars/index.blade.php
Normal file
File diff suppressed because it is too large
Load Diff
23
Modules/Admin/resources/views/events/create.blade.php
Normal file
23
Modules/Admin/resources/views/events/create.blade.php
Normal file
@ -0,0 +1,23 @@
|
||||
@extends('layouts.app')
|
||||
@section('content')
|
||||
<div class="page-content">
|
||||
<div class="container-fluid">
|
||||
|
||||
<!-- start page title -->
|
||||
@include('layouts.partials.breadcrumb', ['title' => $title])
|
||||
|
||||
<!-- end page title -->
|
||||
|
||||
<div class='card'>
|
||||
<div class='card-body'>
|
||||
|
||||
{{ html()->form('POST')->route('event.store')->class(['needs-validation'])->attributes(['novalidate'])->open() }}
|
||||
|
||||
@include('admin::partials.events.action')
|
||||
|
||||
{{ html()->form()->close() }}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
23
Modules/Admin/resources/views/events/edit.blade.php
Normal file
23
Modules/Admin/resources/views/events/edit.blade.php
Normal file
@ -0,0 +1,23 @@
|
||||
@extends('layouts.app')
|
||||
@section('content')
|
||||
<div class="page-content">
|
||||
<div class="container-fluid">
|
||||
|
||||
<!-- start page title -->
|
||||
@include('layouts.partials.breadcrumb', ['title' => $title])
|
||||
|
||||
<!-- end page title -->
|
||||
|
||||
<div class='card'>
|
||||
<div class='card-body'>
|
||||
|
||||
{{ html()->modelForm($event, 'PUT')->route('event.update', $event->event_id)->class(['needs-validation'])->attributes(['novalidate'])->open() }}
|
||||
|
||||
@include('admin::partials.events.action')
|
||||
|
||||
{{ html()->form()->close() }}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
76
Modules/Admin/resources/views/events/index.blade.php
Normal file
76
Modules/Admin/resources/views/events/index.blade.php
Normal file
@ -0,0 +1,76 @@
|
||||
@extends('layouts.app')
|
||||
@section('content')
|
||||
<div class="page-content">
|
||||
<div class="container-fluid">
|
||||
|
||||
<!-- start page title -->
|
||||
@include('layouts.partials.breadcrumb', ['title' => $title])
|
||||
|
||||
<!-- end page title -->
|
||||
|
||||
<div class="card">
|
||||
<div class="card-header align-items-center d-flex">
|
||||
<h5 class="card-title flex-grow-1 mb-0">{{ $title }}</h5>
|
||||
<div class="flex-shrink-0">
|
||||
<a href="{{ route('event.create') }}" class="btn btn-success waves-effect waves-light"><i
|
||||
class="ri-add-fill me-1 align-bottom"></i> Create Event</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<table id="buttons-datatables" class="display table-sm table-bordered table">
|
||||
<thead class="table-light">
|
||||
<tr>
|
||||
<th class="tb-col"><span class="overline-title">S.N</span></th>
|
||||
<th class="tb-col"><span class="overline-title">Type</span></th>
|
||||
<th class="tb-col"><span class="overline-title">Title</span></th>
|
||||
<th class="tb-col"><span class="overline-title">Date</span></th>
|
||||
<th class="tb-col"><span class="overline-title">Start Time</span></th>
|
||||
<th class="tb-col"><span class="overline-title">Location</span></th>
|
||||
<th class="tb-col" data-sortable="false"><span class="overline-title">Action</span>
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
@foreach ($eventLists as $index => $item)
|
||||
<tr>
|
||||
<td class="tb-col">{{ $index + 1 }}</td>
|
||||
<td class="tb-col">{{ $item->type }}</td>
|
||||
<td class="tb-col">{{ $item->title }}</td>
|
||||
<td class="tb-col">{{ $item->date }}</td>
|
||||
<td class="tb-col">{{ $item->start_time }}</td>
|
||||
<td class="tb-col">{{ $item->location }}</td>
|
||||
<td class="tb-col">
|
||||
<div class="dropdown d-inline-block">
|
||||
<button class="btn btn-soft-secondary btn-sm dropdown" type="button" data-bs-toggle="dropdown"
|
||||
aria-expanded="false">
|
||||
<i class="ri-more-fill align-middle"></i>
|
||||
</button>
|
||||
<ul class="dropdown-menu dropdown-menu-end">
|
||||
<li><a href="{{ route('event.show', [$item->event_id]) }}" class="dropdown-item"><i
|
||||
class="ri-eye-fill text-muted me-2 align-bottom"></i> View</a>
|
||||
</li>
|
||||
|
||||
<li><a href="{{ route('event.edit', [$item->event_id]) }}" class="dropdown-item edit-item-btn"><i
|
||||
class="ri-pencil-fill text-muted me-2 align-bottom"></i>
|
||||
Edit</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a href="{{ route('event.destroy', [$item->event_id]) }}" class="dropdown-item remove-item-btn"
|
||||
onclick="confirmDelete(this.href)">
|
||||
<i class="ri-delete-bin-fill text-muted me-2 align-bottom"></i> Delete
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
48
Modules/Admin/resources/views/events/show.blade.php
Normal file
48
Modules/Admin/resources/views/events/show.blade.php
Normal file
@ -0,0 +1,48 @@
|
||||
@extends('layouts.app')
|
||||
@section('content')
|
||||
<div class="page-content">
|
||||
<div class="container-fluid">
|
||||
|
||||
<!-- start page title -->
|
||||
@include('layouts.partials.breadcrumb', ['title' => $title])
|
||||
|
||||
<!-- end page title -->
|
||||
|
||||
<div class='card'>
|
||||
<div class="card-header align-items-center d-flex">
|
||||
<h5 class="card-title flex-grow-1 mb-0">View Detail</h5>
|
||||
<div class="flex-shrink-0">
|
||||
<a href="{{ route('designations.index') }}" class="btn btn-success waves-effect waves-light"><i
|
||||
class="ri-add-fill me-1 align-bottom"></i> Back to List</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class='card-body'>
|
||||
<p><b>Title : </b> <span>{{ $data->title }}</span></p>
|
||||
<p><b>Alias : </b> <span>{{ $data->alias }}</span></p>
|
||||
<p><b>Status : </b> <span
|
||||
class="{{ $data->status == 1 ? 'text-success' : 'text-danger' }}">{{ $data->status == 1 ? 'Active' : 'Inactive' }}</span>
|
||||
</p>
|
||||
<p><b>Remarks : </b> <span>{{ $data->remarks }}</span></p>
|
||||
<p><b>Display Order : </b> <span>{{ $data->display_order }}</span></p>
|
||||
<p><b>Createdby : </b> <span>{{ $data->createdby }}</span></p>
|
||||
<p><b>Updatedby : </b> <span>{{ $data->updatedby }}</span></p>
|
||||
<p><b>Job Description : </b> <span>{{ $data->job_description }}</span></p>
|
||||
<p><b>Departments Id : </b> <span>{{ $data->departments_id }}</span></p>
|
||||
<div class="d-flex justify-content-between">
|
||||
<div>
|
||||
<p><b>Created On :</b> <span>{{ $data->created_at }}</span></p>
|
||||
<p><b>Created By :</b> <span>{{ $data->createdBy }}</span></p>
|
||||
</div>
|
||||
<div>
|
||||
<p><b>Updated On :</b> <span>{{ $data->updated_at }}</span></p>
|
||||
<p><b>Updated By :</b> <span>{{ $data->updatedBy }}</span></p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endSection
|
23
Modules/Admin/resources/views/holidays/create.blade.php
Normal file
23
Modules/Admin/resources/views/holidays/create.blade.php
Normal file
@ -0,0 +1,23 @@
|
||||
@extends('layouts.app')
|
||||
@section('content')
|
||||
<div class="page-content">
|
||||
<div class="container-fluid">
|
||||
|
||||
<!-- start page title -->
|
||||
@include('layouts.partials.breadcrumb', ['title' => $title])
|
||||
|
||||
<!-- end page title -->
|
||||
|
||||
<div class='card'>
|
||||
<div class='card-body'>
|
||||
|
||||
{{ html()->form('POST')->route('holiday.store')->class(['needs-validation'])->attributes(['novalidate'])->open() }}
|
||||
|
||||
@include('admin::partials.holidays.action')
|
||||
|
||||
{{ html()->form()->close() }}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
23
Modules/Admin/resources/views/holidays/edit.blade.php
Normal file
23
Modules/Admin/resources/views/holidays/edit.blade.php
Normal file
@ -0,0 +1,23 @@
|
||||
@extends('layouts.app')
|
||||
@section('content')
|
||||
<div class="page-content">
|
||||
<div class="container-fluid">
|
||||
|
||||
<!-- start page title -->
|
||||
@include('layouts.partials.breadcrumb', ['title' => $title])
|
||||
|
||||
<!-- end page title -->
|
||||
|
||||
<div class='card'>
|
||||
<div class='card-body'>
|
||||
|
||||
{{ html()->modelForm($holiday, 'PUT')->route('holiday.update', $holiday->holiday_id)->class(['needs-validation'])->attributes(['novalidate'])->open() }}
|
||||
|
||||
@include('admin::partials.holidays.action')
|
||||
|
||||
{{ html()->form()->close() }}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
71
Modules/Admin/resources/views/holidays/index.blade.php
Normal file
71
Modules/Admin/resources/views/holidays/index.blade.php
Normal file
@ -0,0 +1,71 @@
|
||||
@extends('layouts.app')
|
||||
@section('content')
|
||||
<div class="page-content">
|
||||
<div class="container-fluid">
|
||||
|
||||
<!-- start page title -->
|
||||
@include('layouts.partials.breadcrumb', ['title' => $title])
|
||||
|
||||
<!-- end page title -->
|
||||
|
||||
<div class="card">
|
||||
<div class="card-header align-items-center d-flex">
|
||||
<h5 class="card-title flex-grow-1 mb-0">{{ $title }}</h5>
|
||||
<div class="flex-shrink-0">
|
||||
<a href="{{ route('holiday.create') }}" class="btn btn-success waves-effect waves-light"><i
|
||||
class="ri-add-fill me-1 align-bottom"></i> Create Holiday</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<table id="buttons-datatables" class="display table-sm table-bordered table">
|
||||
<thead class="table-light">
|
||||
<tr>
|
||||
<th class="tb-col"><span class="overline-title">S.N</span></th>
|
||||
<th class="tb-col"><span class="overline-title">Type</span></th>
|
||||
<th class="tb-col"><span class="overline-title">Title</span></th>
|
||||
<th class="tb-col"><span class="overline-title">Date</span></th>
|
||||
<th class="tb-col" data-sortable="false"><span class="overline-title">Action</span>
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
@foreach ($holidayLists as $index => $item)
|
||||
<tr>
|
||||
<td class="tb-col">{{ $index + 1 }}</td>
|
||||
<td class="tb-col">{{ $item->title }}</td>
|
||||
<td class="tb-col">{{ $item->date }}</td>
|
||||
<td class="tb-col">
|
||||
<div class="dropdown d-inline-block">
|
||||
<button class="btn btn-soft-secondary btn-sm dropdown" type="button" data-bs-toggle="dropdown"
|
||||
aria-expanded="false">
|
||||
<i class="ri-more-fill align-middle"></i>
|
||||
</button>
|
||||
<ul class="dropdown-menu dropdown-menu-end">
|
||||
<li><a href="{{ route('holiday.show', [$item->holiday_id]) }}" class="dropdown-item"><i
|
||||
class="ri-eye-fill text-muted me-2 align-bottom"></i> View</a>
|
||||
</li>
|
||||
|
||||
<li><a href="{{ route('holiday.edit', [$item->holiday_id]) }}" class="dropdown-item edit-item-btn"><i
|
||||
class="ri-pencil-fill text-muted me-2 align-bottom"></i>
|
||||
Edit</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a href="{{ route('holiday.destroy', [$item->holiday_id]) }}" class="dropdown-item remove-item-btn"
|
||||
onclick="confirmDelete(this.href)">
|
||||
<i class="ri-delete-bin-fill text-muted me-2 align-bottom"></i> Delete
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
48
Modules/Admin/resources/views/holidays/show.blade.php
Normal file
48
Modules/Admin/resources/views/holidays/show.blade.php
Normal file
@ -0,0 +1,48 @@
|
||||
@extends('layouts.app')
|
||||
@section('content')
|
||||
<div class="page-content">
|
||||
<div class="container-fluid">
|
||||
|
||||
<!-- start page title -->
|
||||
@include('layouts.partials.breadcrumb', ['title' => $title])
|
||||
|
||||
<!-- end page title -->
|
||||
|
||||
<div class='card'>
|
||||
<div class="card-header align-items-center d-flex">
|
||||
<h5 class="card-title flex-grow-1 mb-0">View Detail</h5>
|
||||
<div class="flex-shrink-0">
|
||||
<a href="{{ route('designations.index') }}" class="btn btn-success waves-effect waves-light"><i
|
||||
class="ri-add-fill me-1 align-bottom"></i> Back to List</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class='card-body'>
|
||||
<p><b>Title : </b> <span>{{ $data->title }}</span></p>
|
||||
<p><b>Alias : </b> <span>{{ $data->alias }}</span></p>
|
||||
<p><b>Status : </b> <span
|
||||
class="{{ $data->status == 1 ? 'text-success' : 'text-danger' }}">{{ $data->status == 1 ? 'Active' : 'Inactive' }}</span>
|
||||
</p>
|
||||
<p><b>Remarks : </b> <span>{{ $data->remarks }}</span></p>
|
||||
<p><b>Display Order : </b> <span>{{ $data->display_order }}</span></p>
|
||||
<p><b>Createdby : </b> <span>{{ $data->createdby }}</span></p>
|
||||
<p><b>Updatedby : </b> <span>{{ $data->updatedby }}</span></p>
|
||||
<p><b>Job Description : </b> <span>{{ $data->job_description }}</span></p>
|
||||
<p><b>Departments Id : </b> <span>{{ $data->departments_id }}</span></p>
|
||||
<div class="d-flex justify-content-between">
|
||||
<div>
|
||||
<p><b>Created On :</b> <span>{{ $data->created_at }}</span></p>
|
||||
<p><b>Created By :</b> <span>{{ $data->createdBy }}</span></p>
|
||||
</div>
|
||||
<div>
|
||||
<p><b>Updated On :</b> <span>{{ $data->updated_at }}</span></p>
|
||||
<p><b>Updated By :</b> <span>{{ $data->updatedBy }}</span></p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endSection
|
@ -1,8 +1,8 @@
|
||||
<div class="row gy-3">
|
||||
|
||||
<div class="col-lg-4 col-md-6">
|
||||
{{ html()->label('Title')->class('form-label') }}
|
||||
{{ html()->text('title')->class('form-control')->placeholder('Enter Title') }}
|
||||
{{ html()->label('Name')->class('form-label') }}
|
||||
{{ html()->text('title')->class('form-control')->placeholder('Company Name') }}
|
||||
</div>
|
||||
|
||||
<div class="col-lg-4 col-md-6">
|
||||
@ -10,17 +10,38 @@
|
||||
{{ html()->select('company_type_id', $companyTypeLists)->class('form-select')->placeholder('Select Company Type') }}
|
||||
</div>
|
||||
|
||||
<div class="col-lg-4 col-md-6">
|
||||
{{ html()->label('Address')->class('form-label') }}
|
||||
{{ html()->text('address')->class('form-control')->placeholder('Company Full Address') }}
|
||||
</div>
|
||||
|
||||
<div class="col-lg-12 col-md-12">
|
||||
{{ html()->label('Description')->class('form-label') }}
|
||||
{{ html()->textarea('description')->class('form-control')->attributes(['rows' => 5]) }}
|
||||
{{ html()->textarea('description')->class('form-control')->placeholder('Company Description')->attributes(['rows' => 3]) }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-12 py-4">
|
||||
<h5 class="text-center">Bank Details</h5>
|
||||
<div class="border-dash border"></div>
|
||||
</div>
|
||||
<div class="col-lg-4 col-md-6">
|
||||
{{ html()->label('Name')->class('form-label') }}
|
||||
{{ html()->text('bank_name')->class('form-control')->placeholder('Bank Name') }}
|
||||
</div>
|
||||
|
||||
<div class="col-lg-12 col-md-12">
|
||||
{{ html()->label('Remarks')->class('form-label') }}
|
||||
{{ html()->textarea('remarks')->class('form-control')->attributes(['rows' => 5]) }}
|
||||
<div class="col-lg-4 col-md-6">
|
||||
{{ html()->label('Account Number')->class('form-label') }}
|
||||
{{ html()->text('bank_acc_no')->class('form-control')->placeholder('Bank Account Number') }}
|
||||
</div>
|
||||
|
||||
<div class="text-end">
|
||||
<div class="col-lg-4 col-md-6">
|
||||
{{ html()->label('Branch')->class('form-label') }}
|
||||
{{ html()->text('bank_acc_branch')->class('form-control')->placeholder('Branch Name') }}
|
||||
</div>
|
||||
|
||||
<div class="text-end mt-4">
|
||||
{{ html()->button($editable ? 'Update' : 'Add Company', 'submit')->class('btn btn-success') }}
|
||||
</div>
|
||||
</div>
|
||||
|
@ -0,0 +1,50 @@
|
||||
<div class="row gy-3">
|
||||
|
||||
<div class="col-lg-4 col-md-6">
|
||||
{{ html()->label('Event Type')->class('form-label') }}
|
||||
{{ html()->select('type')->class('form-select')->placeholder('Select Event Type') }}
|
||||
</div>
|
||||
|
||||
|
||||
<div class="col-lg-4 col-md-6">
|
||||
{{ html()->label('Title')->class('form-label') }}
|
||||
{{ html()->text('title')->class('form-control')->placeholder('Event Title') }}
|
||||
</div>
|
||||
|
||||
<div class="col-lg-4 col-md-6">
|
||||
{{ html()->label('Date')->class('form-label') }}
|
||||
<div class="input-group">
|
||||
{{ html()->text('date')->class('form-control flatpickr flatpickr-input')->id('event-start-date')->placeholder('Select Event Date') }}
|
||||
<span class="input-group-text"><i class="ri-calendar-event-line"></i></span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-4 col-md-6">
|
||||
{{ html()->label('Start Time')->class('form-label') }}
|
||||
{{ html()->time('start_time')->class('form-control')->placeholder('Event Start Time') }}
|
||||
</div>
|
||||
|
||||
<div class="col-lg-4 col-md-6">
|
||||
{{ html()->label('End Time')->class('form-label') }}
|
||||
{{ html()->time('end_time')->class('form-control')->placeholder('Event End Time') }}
|
||||
</div>
|
||||
|
||||
<div class="col-lg-4 col-md-6">
|
||||
{{ html()->label('Location')->class('form-label') }}
|
||||
{{ html()->text('location')->class('form-control')->placeholder('Event Location') }}
|
||||
</div>
|
||||
|
||||
<div class="col-lg-12 col-md-12">
|
||||
{{ html()->label('Description')->class('form-label') }}
|
||||
{{ html()->textarea('description')->class('form-control')->placeholder('Event Description')->attributes(['rows' => 3]) }}
|
||||
</div>
|
||||
|
||||
<div class="col-lg-12 col-md-12">
|
||||
{{ html()->label('Remarks')->class('form-label') }}
|
||||
{{ html()->textarea('remarks')->class('form-control')->attributes(['rows' => 3]) }}
|
||||
</div>
|
||||
|
||||
<div class="text-end">
|
||||
{{ html()->button($editable ? 'Update' : 'Add Event', 'submit')->class('btn btn-success') }}
|
||||
</div>
|
||||
</div>
|
@ -0,0 +1,29 @@
|
||||
<div class="row gy-3">
|
||||
|
||||
<div class="col-lg-4 col-md-6">
|
||||
{{ html()->label('Title')->class('form-label') }}
|
||||
{{ html()->text('title')->class('form-control')->placeholder('Holiday Title') }}
|
||||
</div>
|
||||
|
||||
<div class="col-lg-4 col-md-6">
|
||||
{{ html()->label('Date')->class('form-label') }}
|
||||
<div class="input-group">
|
||||
{{ html()->text('date')->class('form-control flatpickr flatpickr-input')->id('event-start-date')->placeholder('Select Holiday Date') }}
|
||||
<span class="input-group-text"><i class="ri-calendar-event-line"></i></span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-12 col-md-12">
|
||||
{{ html()->label('Description')->class('form-label') }}
|
||||
{{ html()->textarea('description')->class('form-control')->placeholder('Holiday Description')->attributes(['rows' => 3]) }}
|
||||
</div>
|
||||
|
||||
<div class="col-lg-12 col-md-12">
|
||||
{{ html()->label('Remarks')->class('form-label') }}
|
||||
{{ html()->textarea('remarks')->class('form-control')->attributes(['rows' => 3]) }}
|
||||
</div>
|
||||
|
||||
<div class="text-end">
|
||||
{{ html()->button($editable ? 'Update' : 'Add Holiday', 'submit')->class('btn btn-success') }}
|
||||
</div>
|
||||
</div>
|
@ -3,9 +3,12 @@
|
||||
use Illuminate\Support\Facades\Route;
|
||||
use Modules\Admin\Http\Controllers\AdminController;
|
||||
use Modules\Admin\Http\Controllers\AppreciationController;
|
||||
use Modules\Admin\Http\Controllers\CalendarController;
|
||||
use Modules\Admin\Http\Controllers\CompanyController;
|
||||
use Modules\Admin\Http\Controllers\CompanyTypeController;
|
||||
use Modules\Admin\Http\Controllers\ComplaintController;
|
||||
use Modules\Admin\Http\Controllers\EventController;
|
||||
use Modules\Admin\Http\Controllers\HolidayController;
|
||||
use Modules\Admin\Http\Controllers\PromotionDemotionController;
|
||||
use Modules\Admin\Http\Controllers\ResignationController;
|
||||
use Modules\Admin\Http\Controllers\TransferController;
|
||||
@ -32,6 +35,9 @@ Route::group([], function () {
|
||||
Route::resource('warning', WarningController::class)->names('warning');
|
||||
Route::resource('company', CompanyController::class)->names('company');
|
||||
Route::resource('company-type', CompanyTypeController::class)->names('companyType');
|
||||
Route::resource('event', EventController::class)->names('event');
|
||||
Route::resource('holiday', HolidayController::class)->names('holiday');
|
||||
Route::resource('calendar', CalendarController::class)->names('calendar');
|
||||
});
|
||||
|
||||
require __DIR__ . '/route.countries.php';
|
||||
|
@ -10,7 +10,7 @@ class Employee extends Model
|
||||
protected $table = 'tbl_employees';
|
||||
protected $primaryKey = 'id';
|
||||
protected $guarded = [];
|
||||
protected $appends = (['full_name']);
|
||||
protected $appends = ['full_name'];
|
||||
|
||||
protected function getFullNameAttribute()
|
||||
{
|
||||
|
@ -2,6 +2,7 @@
|
||||
|
||||
namespace Modules\Employee\Repositories;
|
||||
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Modules\Employee\Models\Employee;
|
||||
|
||||
class EmployeeRepository implements EmployeeInterface
|
||||
@ -38,7 +39,7 @@ class EmployeeRepository implements EmployeeInterface
|
||||
|
||||
public function pluck()
|
||||
{
|
||||
return Employee::pluck('first_name', 'id');
|
||||
return Employee::pluck(DB::raw('CONCAT(first_name," ", middle_name , " ",last_name) AS full_name'), 'id');
|
||||
}
|
||||
|
||||
// public function uploadImage($file)
|
||||
|
91
Modules/Taxation/app/Http/Controllers/InvoiceController.php
Normal file
91
Modules/Taxation/app/Http/Controllers/InvoiceController.php
Normal file
@ -0,0 +1,91 @@
|
||||
<?php
|
||||
|
||||
namespace Modules\Taxation\Http\Controllers;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Companies;
|
||||
use Illuminate\Http\RedirectResponse;
|
||||
use Illuminate\Http\Request;
|
||||
use Modules\Employee\Repositories\EmployeeInterface;
|
||||
|
||||
class InvoiceController extends Controller
|
||||
{
|
||||
|
||||
private $employeeRepository;
|
||||
|
||||
public function __construct(EmployeeInterface $employeeRepository)
|
||||
{
|
||||
$this->employeeRepository = $employeeRepository;
|
||||
}
|
||||
/**
|
||||
* Display a listing of the resource.
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
$data['title'] = 'Invoice List';
|
||||
$data['invoices'] = [];
|
||||
return view('taxation::invoice.index', $data);
|
||||
}
|
||||
|
||||
/**
|
||||
* Show the form for creating a new resource.
|
||||
*/
|
||||
public function create()
|
||||
{
|
||||
$data['title'] = 'Create Invoice';
|
||||
$data['companyList'] = Companies::pluck('title', 'company_id');
|
||||
$data['employeeList'] = $this->employeeRepository->pluck();
|
||||
|
||||
return view('taxation::invoice.create', $data);
|
||||
}
|
||||
|
||||
/**
|
||||
* Store a newly created resource in storage.
|
||||
*/
|
||||
public function store(Request $request): RedirectResponse
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
* Show the specified resource.
|
||||
*/
|
||||
public function show($id)
|
||||
{
|
||||
return view('taxation::invoice.show');
|
||||
}
|
||||
|
||||
/**
|
||||
* Show the form for editing the specified resource.
|
||||
*/
|
||||
public function edit($id)
|
||||
{
|
||||
return view('taxation::invoice.edit');
|
||||
}
|
||||
|
||||
/**
|
||||
* Update the specified resource in storage.
|
||||
*/
|
||||
public function update(Request $request, $id): RedirectResponse
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the specified resource from storage.
|
||||
*/
|
||||
public function destroy($id)
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
public function cloneProduct(Request $request)
|
||||
{
|
||||
$data = [];
|
||||
$numInc = $request->numberInc;
|
||||
$script = true;
|
||||
return response()->json([
|
||||
'view' => view('taxation::invoice.clone-product', compact('data', 'numInc', 'script'))->render(),
|
||||
]);
|
||||
}
|
||||
}
|
@ -0,0 +1,39 @@
|
||||
<div class="card card-body product-card card-border-secondary mb-2 border">
|
||||
<div class="row gy-2 mb-2">
|
||||
<div class="col-md-4">
|
||||
{{ html()->label('Product')->class('form-label') }}
|
||||
{{ html()->text('product_id')->class('form-control')->placeholder('Enter Product Name')->required() }}
|
||||
</div>
|
||||
|
||||
<div class="col-md-2">
|
||||
{{ html()->label('Unit')->class('form-label') }}
|
||||
{{ html()->text('unit')->class('form-control')->placeholder('Enter Unit')->required() }}
|
||||
</div>
|
||||
|
||||
<div class="col-md-2">
|
||||
{{ html()->label('Rate')->class('form-label') }}
|
||||
{{ html()->text('rate')->class('form-control product-price cleave-numeral')->placeholder('Enter Rate')->attributes(['id' => 'cleave-numeral']) }}
|
||||
</div>
|
||||
|
||||
<div class="col-md-2">
|
||||
{{ html()->label('Quantity')->class('form-label') }}
|
||||
{{ html()->text('qty')->class('form-control product-quantity cleave-numeral')->placeholder('Enter QTY')->attributes(['id' => 'cleave-numeral']) }}
|
||||
</div>
|
||||
|
||||
<div class="col-md-2">
|
||||
{{ html()->label('Amount')->class('form-label') }}
|
||||
{{ html()->text('amt')->class('form-control product-line-price bg-light')->placeholder('Enter Amount')->isReadOnly() }}
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
{{ html()->label('Description')->class('form-label') }}
|
||||
{{ html()->text('desc')->class('form-control')->placeholder('Enter Description') }}
|
||||
</div>
|
||||
|
||||
<div class="col-md-6 d-flex justify-content-end align-items-end">
|
||||
<button type="button" class="btn btn-danger btn-icon waves-effect btn-remove waves-light"><i
|
||||
class="ri-delete-bin-5-line"></i></button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
@ -6,19 +6,16 @@
|
||||
<!-- start page title -->
|
||||
@include('layouts.partials.breadcrumb', ['title' => $title])
|
||||
<!-- end page title -->
|
||||
<div class="row">
|
||||
<div class="col-lg-8">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<form action="{{ route('leaveType.store') }}" class="needs-validation" novalidate method="post">
|
||||
@csrf
|
||||
@include('leave::leave.partials.action')
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<form action="{{ route('invoice.store') }}" class="needs-validation" novalidate method="post">
|
||||
@csrf
|
||||
@include('taxation::invoice.partials.action')
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<!--end row-->
|
||||
|
||||
|
||||
</div>
|
||||
<!-- container-fluid -->
|
@ -9,9 +9,9 @@
|
||||
<div class="col-lg-12">
|
||||
<div class="card">
|
||||
<div class="card-header align-items-center d-flex">
|
||||
<h5 class="card-title flex-grow-1 mb-0">Leave Lists</h5>
|
||||
<h5 class="card-title flex-grow-1 mb-0">{{ $title }}</h5>
|
||||
<div class="flex-shrink-0">
|
||||
<a href="{{ route('leaveType.create') }}" class="btn btn-success waves-effect waves-light"><i
|
||||
<a href="{{ route('invoice.create') }}" class="btn btn-success waves-effect waves-light"><i
|
||||
class="ri-add-fill me-1 align-bottom"></i> Add</a>
|
||||
</div>
|
||||
</div>
|
||||
@ -22,14 +22,14 @@
|
||||
<thead>
|
||||
<tr>
|
||||
<th>S.N</th>
|
||||
<th>Leave Type</th>
|
||||
<th>Id</th>
|
||||
<th>Created By</th>
|
||||
<th>Status</th>
|
||||
<th>Action</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@forelse ($leaveTypes as $key => $leaveType)
|
||||
@forelse ($invoices as $key => $leaveType)
|
||||
<tr>
|
||||
<td>{{ $key + 1 }}</td>
|
||||
<td>{{ $leaveType->employee_id }}</td>
|
@ -0,0 +1,207 @@
|
||||
<div class="row gy-1">
|
||||
<h5 class="text-primary text-center">Invoice Details</h5>
|
||||
<div class="border border-dashed"></div>
|
||||
<div class="col-md-4">
|
||||
{{ html()->label('Company')->class('form-label') }}
|
||||
{{ html()->select('company_id', $companyList)->class('form-control')->placeholder('Select Company')->required() }}
|
||||
{{ html()->div('Please select company')->class('invalid-feedback') }}
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{{ html()->label('Invoice No.')->class('form-label') }}
|
||||
{{ html()->text('invoice_no')->class('form-control')->placeholder('Enter Invoice No')->attributes(['id' => 'cleave-prefix']) }}
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{{ html()->label('VAT No.')->class('form-label') }}
|
||||
{{ html()->text('vat_no')->class('form-control')->placeholder('Enter VAT No') }}
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{{ html()->label('Sales Date')->class('form-label') }}
|
||||
{{ html()->date('sale_date')->class('form-control')->placeholder('Choose Sales Date')->required() }}
|
||||
{{ html()->div('Please choose invoice date')->class('invalid-feedback') }}
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{{ html()->label('Bill Issue Date')->class('form-label') }}
|
||||
{{ html()->date('isse_date')->class('form-control')->placeholder('Choose Bill Issue Date')->required() }}
|
||||
{{ html()->div('Please choose invoice date')->class('invalid-feedback') }}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="row gy-1 my-2">
|
||||
<h5 class="text-primary text-center">Buyer Details</h5>
|
||||
<div class="border border-dashed"></div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{{ html()->label('Buyer')->class('form-label') }}
|
||||
{{ html()->select('buyer_id', $employeeList)->class('form-control')->placeholder('Select Buyer') }}
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{{ html()->label('Address No.')->class('form-label') }}
|
||||
{{ html()->text('buyer_address')->class('form-control')->placeholder('Enter Address') }}
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{{ html()->label('VAT No.')->class('form-label') }}
|
||||
{{ html()->text('vat_no')->class('form-control')->placeholder('Enter Buyer VAT No') }}
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{{ html()->label('Contact No')->class('form-label') }}
|
||||
{{ html()->date('sale_date')->class('form-control')->placeholder('Enter Contact No') }}
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{{ html()->label('Mode of Payment')->class('form-label') }}
|
||||
{{ html()->select('buyer_id', [1 => 'Cash', 2 => 'Bank', 3 => 'Credit'])->class('form-control')->placeholder('Select Payment Mode') }}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
{{-- <div class="row mt-2">
|
||||
<p class="text-primary">Shipping Details</p>
|
||||
<div class="border border-dashed"></div>
|
||||
<div class="col-md-4">
|
||||
{{ html()->label('Address')->class('form-label') }}
|
||||
{{ html()->text('address')->class('form-control')->placeholder('Enter Address') }}
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{{ html()->label('Shipping Date')->class('form-label') }}
|
||||
{{ html()->date('shiiping_date')->class('form-control')->placeholder('Enter Temporary Address') }}
|
||||
</div>
|
||||
</div> --}}
|
||||
|
||||
<div class="row gy-1 gx-2 mt-1">
|
||||
<div class="d-flex justify-content-end">
|
||||
<button type="button" class="btn btn-info btn-icon add-btn text-end"><i class="ri-add-line"></i></button>
|
||||
</div>
|
||||
@include('taxation::invoice.clone-product')
|
||||
<div class="appendProductCard"></div>
|
||||
</div>
|
||||
|
||||
<div class="d-flex justify-content-end w-30 mb-2">
|
||||
<table class="table-borderless align-middle">
|
||||
<tbody>
|
||||
<tr>
|
||||
<th scope="row">Sub Total</th>
|
||||
<td style="width:150px;">
|
||||
<input type="text" class="form-control bg-light border-0" id="subtotal" placeholder="$0.00"
|
||||
readonly="">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">Estimated Tax (11%)</th>
|
||||
<td>
|
||||
<input type="text" class="form-control bg-light border-0" id="tax" placeholder="$0.00"
|
||||
readonly="">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">Discount</th>
|
||||
<td>
|
||||
<input type="text" class="form-control bg-light border-0" id="discount" placeholder="$0.00"
|
||||
readonly="">
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="border-top border-top-dashed">
|
||||
<th scope="row">Total Amount</th>
|
||||
<td>
|
||||
<input type="text" class="form-control bg-light border-0" id="total" placeholder="$0.00"
|
||||
readonly="">
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="mb-4 text-end">
|
||||
<button type="submit" class="btn btn-success w-sm">Save</button>
|
||||
</div>
|
||||
|
||||
|
||||
@push('js')
|
||||
<script src="{{ asset('assets/libs/cleave.js/cleave.min.js') }}"></script>
|
||||
<script src="{{ asset('assets/js/pages/form-masks.init.js') }}"></script>
|
||||
|
||||
<script>
|
||||
$("body").on('click', '.add-btn', function(e) {
|
||||
e.preventDefault();
|
||||
numberInc = $('.product-card').length
|
||||
$.ajax({
|
||||
type: 'get',
|
||||
url: '{{ route('cloneProduct') }}',
|
||||
data: {
|
||||
numberInc: numberInc
|
||||
},
|
||||
success: function(response) {
|
||||
$('.appendProductCard').append(response.view)
|
||||
// $('#invoice-container').html(response.view).fadeIn()
|
||||
},
|
||||
error: function(xhr) {
|
||||
|
||||
},
|
||||
});
|
||||
});
|
||||
|
||||
$("body").on('click', '.btn-remove', function() {
|
||||
if ($('.product-card').length > 1) {
|
||||
$(this).parents(".product-card").remove();
|
||||
}
|
||||
recalculate();
|
||||
});
|
||||
|
||||
|
||||
function amountKeyup() {
|
||||
$("body").on('keyup', '.product-price', function() {
|
||||
var priceInput = $(this);
|
||||
var qtyInput = priceInput.closest(".row").find(".product-quantity");
|
||||
var linePrice = priceInput.closest(".row").find(".product-line-price");
|
||||
updateQuantity(priceInput.val(), qtyInput.val(), linePrice);
|
||||
});
|
||||
|
||||
$("body").on('keyup', '.product-quantity', function() {
|
||||
var priceInput = $(this);
|
||||
var qtyInput = priceInput.closest(".row").find(".product-price");
|
||||
var linePrice = priceInput.closest(".row").find(".product-line-price");
|
||||
updateQuantity(priceInput.val(), qtyInput.val(), linePrice);
|
||||
});
|
||||
}
|
||||
|
||||
amountKeyup()
|
||||
|
||||
function updateQuantity(rate, qty, linePriceInput) {
|
||||
var amount = (rate * qty).toFixed(2);
|
||||
linePriceInput.val(amount);
|
||||
recalculate();
|
||||
}
|
||||
|
||||
function recalculate() {
|
||||
var subtotal = 0;
|
||||
$(".product-line-price").each(function() {
|
||||
if ($(this).val()) {
|
||||
subtotal += parseFloat($(this).val());
|
||||
}
|
||||
});
|
||||
|
||||
var tax = subtotal * 0.125;
|
||||
var discount = subtotal * 0.15;
|
||||
var shipping = subtotal > 0 ? 65 : 0;
|
||||
var total = subtotal + tax + shipping - discount;
|
||||
|
||||
$("#subtotal").val(subtotal.toFixed(2));
|
||||
$("#tax").val(tax.toFixed(2));
|
||||
$("#discount").val(discount.toFixed(2));
|
||||
$("#shipping").val(shipping.toFixed(2));
|
||||
$("#total").val(total.toFixed(2));
|
||||
// $("#totalamountInput").val(total.toFixed(2));
|
||||
// $("#amountTotalPay").val(total.toFixed(2));
|
||||
}
|
||||
</script>
|
||||
@endpush
|
@ -1,25 +0,0 @@
|
||||
<div class="mb-3">
|
||||
|
||||
<label for="employee_id" class="form-label">Employee Name</label>
|
||||
{{ html()->select('employee_id', $employeeList)->class('form-select')->placeholder('Select Employee') }}
|
||||
</div>
|
||||
|
||||
<div class="mb-3">
|
||||
<label for="start_date" class="form-label">Start Leave Date</label>
|
||||
<input type="date" class="form-control" id="start_date" name="start_date"
|
||||
value="{{ old('start_date', $leave->start_date ?? '') }}">
|
||||
</div>
|
||||
|
||||
<div class="mb-3">
|
||||
<label for="end_date" class="form-label">End Leave Date</label>
|
||||
<input type="date" class="form-control" id="end_date" name="end_date"
|
||||
value="{{ old('end_date', $leave->end_date ?? '') }}">
|
||||
</div>
|
||||
|
||||
<div class="text-end">
|
||||
<button type="submit" class="btn btn-primary">{{ isset($leave) ? 'Update' : 'Add Leave' }}</button>
|
||||
</div>
|
||||
|
||||
@push('js')
|
||||
<script src="{{ asset('assets/js/pages/form-validation.init.js') }}"></script>
|
||||
@endpush
|
@ -1,6 +1,7 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Support\Facades\Route;
|
||||
use Modules\Taxation\Http\Controllers\InvoiceController;
|
||||
use Modules\Taxation\Http\Controllers\TaxationController;
|
||||
|
||||
/*
|
||||
@ -12,8 +13,11 @@ use Modules\Taxation\Http\Controllers\TaxationController;
|
||||
| routes are loaded by the RouteServiceProvider within a group which
|
||||
| contains the "web" middleware group. Now create something great!
|
||||
|
|
||||
*/
|
||||
*/
|
||||
|
||||
Route::group([], function () {
|
||||
Route::resource('taxation', TaxationController::class)->names('taxation');
|
||||
Route::resource('invoice', InvoiceController::class)->names('invoice');
|
||||
Route::get('clone-product', [InvoiceController::class, 'cloneProduct'])->name('cloneProduct');
|
||||
|
||||
});
|
||||
|
@ -1,8 +1,8 @@
|
||||
|
||||
$('body').on('click', '.remove-item-btn', function (e) {
|
||||
e.preventDefault();
|
||||
let url = $(this).data('link');
|
||||
let id = $(this).data('id');
|
||||
e.preventDefault();
|
||||
let url = $(this).data('link');
|
||||
let id = $(this).data('id');
|
||||
|
||||
Swal.fire({
|
||||
title: 'Are you sure?',
|
||||
@ -24,7 +24,7 @@ $('body').on('click', '.remove-item-btn', function (e) {
|
||||
id: id
|
||||
},
|
||||
success: function (response) {
|
||||
if(response.status == true){
|
||||
if (response.status == true) {
|
||||
location.reload();
|
||||
}
|
||||
},
|
||||
@ -47,28 +47,6 @@ document.querySelectorAll('.ckeditor-classic').forEach(editor => {
|
||||
|
||||
});
|
||||
|
||||
$('.date-picker').nepaliDatePicker({
|
||||
// dateFormat: '%D, %M %d, %y',
|
||||
dateFormat: '%y-%m-%d',
|
||||
closeOnDateSelect: true,
|
||||
});
|
||||
|
||||
// initialize filepond
|
||||
const inputElement = document.querySelector('.filepond');
|
||||
console.log(inputElement);
|
||||
FilePond.registerPlugin(FilePondPluginImagePreview);
|
||||
const pond = FilePond.create(inputElement);
|
||||
FilePond.setOptions({
|
||||
server: {
|
||||
process: "/filepond/upload",
|
||||
revert: '/delete',
|
||||
headers: {
|
||||
'X-CSRF-TOKEN': document.querySelector('meta[name="csrf-token"]').getAttribute('content'),
|
||||
},
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
//ajax form submit
|
||||
document.addEventListener('DOMContentLoaded', function () {
|
||||
let form = document.getElementById('storeUpdateForm');
|
||||
|
@ -1 +1,74 @@
|
||||
var cleaveDate,cleaveDateFormat,cleaveTime,cleaveTimeFormat,cleaveNumeral,cleaveDelimiter,cleaveDelimiters,cleavePrefix,cleaveBlocks;document.querySelector("#cleave-date")&&(cleaveDate=new Cleave("#cleave-date",{date:!0,delimiter:"-",datePattern:["d","m","Y"]})),document.querySelector("#cleave-date-format")&&(cleaveDateFormat=new Cleave("#cleave-date-format",{date:!0,datePattern:["m","y"]})),document.querySelector("#cleave-time")&&(cleaveTime=new Cleave("#cleave-time",{time:!0,timePattern:["h","m","s"]})),document.querySelector("#cleave-time-format")&&(cleaveTimeFormat=new Cleave("#cleave-time-format",{time:!0,timePattern:["h","m"]})),document.querySelector("#cleave-numeral")&&(cleaveNumeral=new Cleave("#cleave-numeral",{numeral:!0,numeralThousandsGroupStyle:"thousand"})),document.querySelector("#cleave-ccard")&&(cleaveBlocks=new Cleave("#cleave-ccard",{blocks:[4,4,4,4],uppercase:!0})),document.querySelector("#cleave-delimiter")&&(cleaveDelimiter=new Cleave("#cleave-delimiter",{delimiter:"·",blocks:[3,3,3],uppercase:!0})),document.querySelector("#cleave-delimiters")&&(cleaveDelimiters=new Cleave("#cleave-delimiters",{delimiters:[".",".","-"],blocks:[3,3,3,2],uppercase:!0})),document.querySelector("#cleave-prefix")&&(cleavePrefix=new Cleave("#cleave-prefix",{prefix:"PREFIX",delimiter:"-",blocks:[6,4,4,4],uppercase:!0})),document.querySelector("#cleave-phone")&&(cleaveBlocks=new Cleave("#cleave-phone",{delimiters:["(",")","-"],blocks:[0,3,3,4]}));
|
||||
var cleaveDate,
|
||||
cleaveDateFormat,
|
||||
cleaveTime,
|
||||
cleaveTimeFormat,
|
||||
cleaveNumeral,
|
||||
cleaveDelimiter,
|
||||
cleaveDelimiters,
|
||||
cleavePrefix,
|
||||
cleaveBlocks;
|
||||
document.querySelector("#cleave-date") &&
|
||||
(cleaveDate = new Cleave("#cleave-date", {
|
||||
date: !0,
|
||||
delimiter: "-",
|
||||
datePattern: ["d", "m", "Y"],
|
||||
})),
|
||||
document.querySelector("#cleave-date-format") &&
|
||||
(cleaveDateFormat = new Cleave("#cleave-date-format", {
|
||||
date: !0,
|
||||
datePattern: ["m", "y"],
|
||||
})),
|
||||
document.querySelector("#cleave-time") &&
|
||||
(cleaveTime = new Cleave("#cleave-time", {
|
||||
time: !0,
|
||||
timePattern: ["h", "m", "s"],
|
||||
})),
|
||||
|
||||
|
||||
document.querySelector("#cleave-time-format") &&
|
||||
(cleaveTimeFormat = new Cleave("#cleave-time-format", {
|
||||
time: !0,
|
||||
timePattern: ["h", "m"],
|
||||
})),
|
||||
|
||||
document.querySelectorAll(".cleave-numeral").forEach(function (element) {
|
||||
new Cleave(element, {
|
||||
numeral: !0,
|
||||
numeralThousandsGroupStyle: "thousand",
|
||||
});
|
||||
});
|
||||
|
||||
// document.querySelector("cleave-numeral") &&
|
||||
// (cleaveNumeral = new Cleave(".cleave-numeral", {
|
||||
// numeral: !0,
|
||||
// numeralThousandsGroupStyle: "thousand",
|
||||
// })),
|
||||
document.querySelector("#cleave-ccard") &&
|
||||
(cleaveBlocks = new Cleave("#cleave-ccard", {
|
||||
blocks: [4, 4, 4, 4],
|
||||
uppercase: !0,
|
||||
})),
|
||||
document.querySelector("#cleave-delimiter") &&
|
||||
(cleaveDelimiter = new Cleave("#cleave-delimiter", {
|
||||
delimiter: "·",
|
||||
blocks: [3, 3, 3],
|
||||
uppercase: !0,
|
||||
})),
|
||||
document.querySelector("#cleave-delimiters") &&
|
||||
(cleaveDelimiters = new Cleave("#cleave-delimiters", {
|
||||
delimiters: [".", ".", "-"],
|
||||
blocks: [3, 3, 3, 2],
|
||||
uppercase: !0,
|
||||
})),
|
||||
document.querySelector("#cleave-prefix") &&
|
||||
(cleavePrefix = new Cleave("#cleave-prefix", {
|
||||
prefix: "INV",
|
||||
delimiter: "-",
|
||||
blocks: [3, 4, 4, 4],
|
||||
uppercase: !0,
|
||||
})),
|
||||
document.querySelector("#cleave-phone") &&
|
||||
(cleaveBlocks = new Cleave("#cleave-phone", {
|
||||
delimiters: ["(", ")", "-"],
|
||||
blocks: [0, 3, 3, 4],
|
||||
}));
|
File diff suppressed because one or more lines are too long
@ -9,32 +9,28 @@
|
||||
|
||||
<title>{{ config('app.name', 'Laravel') }}</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta content="Education Consultancy" name="description" />
|
||||
<meta content="Themesbrand" name="author" />
|
||||
<meta content="OMIS" name="description" />
|
||||
|
||||
<!-- App favicon -->
|
||||
<link rel="shortcut icon" href="{{ asset('assets/images/favicon.ico') }}">
|
||||
|
||||
<!--datatable css-->
|
||||
<link rel="stylesheet" href="https://cdn.datatables.net/1.11.5/css/dataTables.bootstrap5.min.css" />
|
||||
|
||||
<!--datatable responsive css-->
|
||||
<link rel="stylesheet" href="https://cdn.datatables.net/responsive/2.2.9/css/responsive.bootstrap.min.css" />
|
||||
|
||||
<link rel="stylesheet" href="https://cdn.datatables.net/buttons/2.2.2/css/buttons.dataTables.min.css">
|
||||
|
||||
<!-- Layout config Js -->
|
||||
<script src="{{ asset('assets/js/layout.js') }}"></script>
|
||||
|
||||
<!-- Bootstrap Css -->
|
||||
<link href="{{ asset('assets/css/bootstrap.min.css') }}" rel="stylesheet" type="text/css" />
|
||||
|
||||
<!-- Toastr Css -->
|
||||
<link href="{{ asset('assets/css/toastr.css') }}" rel="stylesheet" type="text/css" />
|
||||
|
||||
<!-- Nepali DatePicker Css -->
|
||||
<link href="{{ asset('assets/css/nepali.datepicker.v4.0.1.min.css') }}" rel="stylesheet" type="text/css" />
|
||||
|
||||
<!-- Filepond css -->
|
||||
<link href="https://unpkg.com/filepond/dist/filepond.css" rel="stylesheet" />
|
||||
<link href="https://unpkg.com/filepond-plugin-image-preview/dist/filepond-plugin-image-preview.css"
|
||||
rel="stylesheet" />
|
||||
|
||||
<!-- App Css-->
|
||||
<link href="{{ asset('assets/css/app.min.css') }}" rel="stylesheet" type="text/css" />
|
||||
|
||||
@ -58,10 +54,13 @@
|
||||
|
||||
<!-- removeNotificationModal -->
|
||||
@include('layouts.partials.notification-modal')
|
||||
<!-- /.modal -->
|
||||
|
||||
<!-- ========== App Menu ========== -->
|
||||
|
||||
@include('layouts.partials.sidebar')
|
||||
|
||||
<!-- Left Sidebar End -->
|
||||
|
||||
<!-- Vertical Overlay-->
|
||||
<div class="vertical-overlay"></div>
|
||||
|
||||
@ -109,20 +108,34 @@
|
||||
<script src="{{ asset('assets/libs/simplebar/simplebar.min.js') }}"></script>
|
||||
<script src="{{ asset('assets/libs/node-waves/waves.min.js') }}"></script>
|
||||
<script src="{{ asset('assets/libs/feather-icons/feather.min.js') }}"></script>
|
||||
|
||||
{{-- <script src="{{ asset('assets/js/pages/plugins/lord-icon-2.1.0.js') }}"></script> --}}
|
||||
{{-- <script src="{{ asset('assets/js/plugins.js') }}"></script> --}}
|
||||
|
||||
<script src="{{ asset('assets/js/plugins.js') }}"></script>
|
||||
|
||||
<script src="{{ asset('assets/libs/@ckeditor/ckeditor5-build-classic/build/ckeditor.js') }}"></script>
|
||||
|
||||
<script src="{{ asset('assets/libs/toastr/toastr.min.js') }}"></script>
|
||||
<script src="{{ asset('assets/libs/nepalidatepicker/nepali.datepicker.v4.0.1.min.js') }}"></script>
|
||||
|
||||
<script src="{{ asset('assets/libs/flatpickr/flatpickr.min.js') }}"></script>
|
||||
|
||||
<script src="https://cdn.datatables.net/1.11.5/js/jquery.dataTables.min.js"></script>
|
||||
|
||||
<script src="https://cdn.datatables.net/1.11.5/js/dataTables.bootstrap5.min.js"></script>
|
||||
|
||||
<script src="{{ asset('assets/libs/fullcalendar/index.global.min.j') }}s"></script>
|
||||
|
||||
<script src="{{ asset('assets/js/pages/calendar.init.js') }}"></script>
|
||||
|
||||
{{-- <script src="https://cdn.datatables.net/responsive/2.2.9/js/dataTables.responsive.min.js"></script>
|
||||
|
||||
<script src="https://cdn.datatables.net/buttons/2.2.2/js/dataTables.buttons.min.js"></script>
|
||||
<script src="https://cdn.datatables.net/buttons/2.2.2/js/buttons.print.min.js"></script>
|
||||
<script src="https://cdn.datatables.net/buttons/2.2.2/js/buttons.html5.min.js"></script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.53/vfs_fonts.js"></script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.53/pdfmake.min.js"></script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/3.1.3/jszip.min.js"></script> --}}
|
||||
|
||||
<script src="{{ asset('assets/js/pages/datatables.init.js') }}"></script>
|
||||
|
||||
<!--apexcharts-->
|
||||
@ -136,16 +149,14 @@
|
||||
<!-- projects js -->
|
||||
{{-- <script src="{{ asset('assets/js/pages/dashboard-projects.init.js') }}"></script> --}}
|
||||
|
||||
<!-- filepond js -->
|
||||
{{-- <script src="https://unpkg.com/filepond-plugin-image-preview/dist/filepond-plugin-image-preview.js"></script>
|
||||
<script src="https://unpkg.com/filepond/dist/filepond.js"></script> --}}
|
||||
|
||||
<!-- App js -->
|
||||
<script src="{{ asset('assets/js/app.js') }}"></script>
|
||||
|
||||
<!-- Custom js -->
|
||||
<script src="{{ asset('assets/js/custom.js') }}"></script>
|
||||
|
||||
@stack('js')
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
@ -9,7 +9,6 @@
|
||||
<li class="breadcrumb-item active">{{ $title }}</li>
|
||||
</ol>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -1,7 +1,7 @@
|
||||
<footer class="footer">
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-sm-6">@php echo date('Y') @endphp © Education Consultancy.
|
||||
<div class="col-sm-6">@php echo date('Y') @endphp © Bibhuti Solutions.
|
||||
</div>
|
||||
<div class="col-sm-6">
|
||||
<div class="text-sm-end d-none d-sm-block">
|
||||
|
@ -85,6 +85,13 @@
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li class="nav-item">
|
||||
<a class="nav-link menu-link @if (\Request::is('calendar') || \Request::is('calendar/*')) active @endif"
|
||||
href="{{ route('calendar.index') }}">
|
||||
<i class="ri-team-line"></i> <span data-key="t-widgets">Calendar</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li class="nav-item">
|
||||
<a class="nav-link menu-link" href="#leave" data-bs-toggle="collapse" role="button" aria-expanded="false"
|
||||
aria-controls="leave">
|
||||
@ -117,7 +124,7 @@
|
||||
|
||||
<li class="nav-item">
|
||||
<a href="{{ route('user.index') }}"
|
||||
class="nav-link @if (\Request::is('user') || \Request::is('user/*')) active @endif">Users</a>
|
||||
class="nav-link @if (\Request::is('user') || \Request::is('user/*')) active @endif">Create Invoice</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
@ -226,6 +233,16 @@
|
||||
class="nav-link @if (\Request::is('warning') || \Request::is('warning/*')) active @endif">Warnings</a>
|
||||
</li>
|
||||
|
||||
<li class="nav-item">
|
||||
<a href="{{ route('event.index') }}"
|
||||
class="nav-link @if (\Request::is('event') || \Request::is('event/*')) active @endif">Manage Events</a>
|
||||
</li>
|
||||
|
||||
<li class="nav-item">
|
||||
<a href="{{ route('holiday.index') }}"
|
||||
class="nav-link @if (\Request::is('holiday') || \Request::is('holiday/*')) active @endif">Manage Holidays</a>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</li>
|
||||
|
@ -19,7 +19,7 @@ Route::get('/', function () {
|
||||
return view('welcome');
|
||||
});
|
||||
|
||||
Route::get('/invoice', function () {
|
||||
Route::get('/invoice-test', function () {
|
||||
return view('invoice');
|
||||
});
|
||||
|
||||
|
Reference in New Issue
Block a user