diff --git a/Modules/Order/app/Http/Controllers/OrderController.php b/Modules/Order/app/Http/Controllers/OrderController.php
index 5aee5f5..8dc5a0e 100644
--- a/Modules/Order/app/Http/Controllers/OrderController.php
+++ b/Modules/Order/app/Http/Controllers/OrderController.php
@@ -96,7 +96,8 @@ class OrderController extends Controller
$data = [];
$numInc = $request->numberInc;
$script = true;
- $productList= $this->productRepository->pluck();
+ $productList= $this->productRepository->pluck('id');
+ dd($productList);
return response()->json([
'view' => view('order::order.clone-product', compact('data', 'numInc', 'script', 'productList'))->render(),
diff --git a/Modules/Order/app/Http/Controllers/PaymentModeController.php b/Modules/Order/app/Http/Controllers/PaymentModeController.php
new file mode 100644
index 0000000..27c955e
--- /dev/null
+++ b/Modules/Order/app/Http/Controllers/PaymentModeController.php
@@ -0,0 +1,84 @@
+paymentModeRepository = $paymentModeRepository;
+ }
+
+ public function index()
+ {
+ $data['title'] = 'Payment Modes';
+ $data['paymentModes'] = $this->paymentModeRepository->findAll();
+ return view('order::paymentMode.index', $data);
+ }
+
+ public function create()
+ {
+ $data['title'] = 'Create Payment Mode';
+ $data['status'] = PaymentMode::STATUS;
+
+ return view('order::paymentMode.create', $data);
+ }
+
+ public function store(Request $request): RedirectResponse
+ {
+ $request->request->add(['slug' => slugify($request->title)]);
+ $inputData = $request->all();
+ $this->paymentModeRepository->create($inputData);
+ toastr()->success('Payment Mode Created Successfully');
+
+ return redirect()->route('paymentMode.index');
+ }
+
+ public function show($id)
+ {
+ $data['title'] = 'Show Payment Mode';
+ $data['status'] = PaymentMode::STATUS;
+ $data['paymentMode'] = $this->paymentModeRepository->getPaymentModeById($id);
+
+ return view('order::paymentMode.show', $data);
+ }
+
+ public function edit($id)
+ {
+ $data['title'] = 'Edit Payment Mode';
+ $data['status'] = PaymentMode::STATUS;
+ $data['paymentMode'] = $this->paymentModeRepository->getPaymentModeById($id);
+
+ return view('order::paymentMode.edit', $data);
+ }
+
+ public function update(Request $request, $id): RedirectResponse
+ {
+ $inputData = $request->except(['_method', '_token']);
+ $this->paymentModeRepository->update($id, $inputData);
+
+ return redirect()->route('paymentMode.index');
+ }
+
+ public function destroy($id)
+ {
+ try {
+ $stock = $this->paymentModeRepository->getPaymentModeById($id);
+ $stock->delete();
+
+ toastr()->success('Payment Mode Deleted Successfully');
+ } catch (\Throwable $th) {
+ toastr()->error($th->getMessage());
+ }
+
+ return response()->json(['status' => true, 'message' => 'Payment Mode Deleted Successfully']);
+ }
+}
diff --git a/Modules/Stocks/app/Models/PaymentMode.php b/Modules/Order/app/Models/PaymentMode.php
similarity index 80%
rename from Modules/Stocks/app/Models/PaymentMode.php
rename to Modules/Order/app/Models/PaymentMode.php
index 7807968..4ffd235 100644
--- a/Modules/Stocks/app/Models/PaymentMode.php
+++ b/Modules/Order/app/Models/PaymentMode.php
@@ -1,15 +1,16 @@
paginate(20);
+ }
+
+ public function getPaymentModeById($PaymentModeId)
+ {
+ return PaymentMode::findOrFail($PaymentModeId);
+ }
+
+ public function getPaymentModeByEmail($email)
+ {
+ return PaymentMode::where('email', $email)->first();
+ }
+
+ public function delete($PaymentModeId)
+ {
+ PaymentMode::destroy($PaymentModeId);
+ }
+
+ public function create($PaymentModeDetails)
+ {
+ return PaymentMode::create($PaymentModeDetails);
+ }
+
+ public function update($PaymentModeId, array $newDetails)
+ {
+ return PaymentMode::whereId($PaymentModeId)->update($newDetails);
+ }
+
+ public function pluck()
+ {
+ return PaymentMode::pluck('name', 'id');
+ }
+
+}
diff --git a/Modules/Order/resources/views/order/clone-product.blade.php b/Modules/Order/resources/views/order/clone-product.blade.php
index 339e241..61d934d 100644
--- a/Modules/Order/resources/views/order/clone-product.blade.php
+++ b/Modules/Order/resources/views/order/clone-product.blade.php
@@ -2,7 +2,7 @@
{{ html()->label('Product')->class('form-label') }}
- {{ html()->select('product_id', $productList)->class('form-control')->placeholder('Enter Product Name')->required() }}
+ {{ html()->select('product_id[]', $productList)->class('form-control')->placeholder('Enter Product Name')->required() }}
diff --git a/Modules/Settings/app/Http/Controllers/.gitkeep b/Modules/Order/resources/views/paymentmode/create.blade.php
similarity index 100%
rename from Modules/Settings/app/Http/Controllers/.gitkeep
rename to Modules/Order/resources/views/paymentmode/create.blade.php
diff --git a/Modules/Settings/app/Http/Requests/.gitkeep b/Modules/Order/resources/views/paymentmode/edit.blade.php
similarity index 100%
rename from Modules/Settings/app/Http/Requests/.gitkeep
rename to Modules/Order/resources/views/paymentmode/edit.blade.php
diff --git a/Modules/Settings/app/Models/.gitkeep b/Modules/Order/resources/views/paymentmode/index.blade.php
similarity index 100%
rename from Modules/Settings/app/Models/.gitkeep
rename to Modules/Order/resources/views/paymentmode/index.blade.php
diff --git a/Modules/Settings/app/Observers/.gitkeep b/Modules/Order/resources/views/paymentmode/partials/action.blade.php
similarity index 100%
rename from Modules/Settings/app/Observers/.gitkeep
rename to Modules/Order/resources/views/paymentmode/partials/action.blade.php
diff --git a/Modules/Settings/app/Providers/.gitkeep b/Modules/Order/resources/views/paymentmode/show.blade.php
similarity index 100%
rename from Modules/Settings/app/Providers/.gitkeep
rename to Modules/Order/resources/views/paymentmode/show.blade.php
diff --git a/Modules/Product/app/Http/Controllers/FabricCategoryController.php b/Modules/Product/app/Http/Controllers/FabricCategoryController.php
new file mode 100644
index 0000000..18466d9
--- /dev/null
+++ b/Modules/Product/app/Http/Controllers/FabricCategoryController.php
@@ -0,0 +1,111 @@
+fabricCategoryRepository = $fabricCategoryRepository;
+ }
+
+ public function index()
+ {
+ $data['title'] = 'Fabric Categories List';
+ $data['fabric_categories'] = $this->fabricCategoryRepository->findAll();
+
+ return view('product::fabric_category.index', $data);
+ }
+
+ /**
+ * Show the form for creating a new resource.
+ */
+ public function create()
+ {
+ $data['title'] = 'Create Fabric Categories';
+ $data['status'] = FabricCategory::STATUS;
+
+ return view('product::fabric_category.create', $data);
+ }
+
+ /**
+ * Store a newly created resource in storage.
+ */
+ public function store(Request $request): RedirectResponse
+ {
+
+ $request->request->add(['slug' => slugify($request->title)]);
+ $inputData = $request->all();
+ $this->fabricCategoryRepository->create($inputData);
+ toastr()->success('Category Created Succesfully');
+
+ return redirect()->route('fabricCategory.index');
+ }
+
+ /**
+ * Show the specified resource.
+ */
+ public function show($id)
+ {
+ $data['title'] = 'Show Fabric Category';
+ $data['status'] = FabricCategory::STATUS;
+ $data['fabric_category'] = $this->fabricCategoryRepository->getFabricCategoryById($id);
+
+ return view('product::fabric_category.show', $data);
+ }
+
+ /**
+ * Show the form for editing the specified resource.
+ */
+ public function edit($id)
+ {
+ $data['title'] = 'Edit Fabric Category';
+ $data['status'] = FabricCategory::STATUS;
+ $data['fabric_category'] = $this->fabricCategoryRepository->getFabricCategoryById($id);
+
+ return view('product::fabric_category.edit', $data);
+ }
+
+ /**
+ * Update the specified resource in storage.
+ */
+ public function update(Request $request, $id): RedirectResponse
+ {
+ $inputData = $request->except(['_method', '_token']);
+ $this->fabricCategoryRepository->update($id, $inputData);
+
+ return redirect()->route('fabricCategory.index');
+ }
+
+ /**
+ * Remove the specified resource from storage.
+ */
+ public function destroy($id)
+ {
+ try {
+ $FabricCategoryModel = $this->fabricCategoryRepository->getFabricCategoryById($id);
+ $FabricCategoryModel->delete();
+
+ toastr()->success('Fabric Category Delete Succesfully');
+ } catch (\Throwable $th) {
+ toastr()->error($th->getMessage());
+ }
+
+ return response()->json(['status' => true, 'message' => 'Fabric Category Delete Succesfully']);
+ }
+
+}
+
+
diff --git a/Modules/Product/app/Http/Controllers/ProductController.php b/Modules/Product/app/Http/Controllers/ProductController.php
index 611f731..a82713d 100644
--- a/Modules/Product/app/Http/Controllers/ProductController.php
+++ b/Modules/Product/app/Http/Controllers/ProductController.php
@@ -5,8 +5,10 @@ namespace Modules\Product\Http\Controllers;
use App\Http\Controllers\Controller;
use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request;
+use Modules\Product\Models\FabricCategory;
use Modules\Product\Models\Product;
use Modules\Product\Repositories\CategoryRepository;
+use Modules\Product\Repositories\FabricCategoryRepository;
use Modules\Product\Repositories\ProductInterface;
use Modules\Product\Repositories\ProductRepository;
use Modules\Product\Repositories\SubCategoryRepository;
@@ -19,6 +21,7 @@ class ProductController extends Controller
private $productRepository;
private $categoryRepository;
private $subCategoryRepository;
+ private $fabricCategoryRepository;
private $warehouseRepository;
private $supplierRepository;
@@ -29,11 +32,13 @@ class ProductController extends Controller
CategoryRepository $categoryRepository,
SubCategoryRepository $subCategoryRepository,
SupplierRepository $supplierRepository,
+ FabricCategoryRepository $fabricCategoryRepository,
WarehouseRepository $warehouseRepository)
{
$this->productRepository = $productRepository;
$this->categoryRepository = $categoryRepository;
$this->subCategoryRepository = $subCategoryRepository;
+ $this->fabricCategoryRepository = $fabricCategoryRepository;
$this->supplierRepository = $supplierRepository;
$this->warehouseRepository = $warehouseRepository;
}
@@ -52,6 +57,7 @@ class ProductController extends Controller
{
$data['title'] = 'Create Product';
$data['category'] = $this->categoryRepository->pluck();
+ $data['fabricCategory'] = $this->fabricCategoryRepository->pluck();
$data['subCategory'] = $this->subCategoryRepository->pluck();
$data['supplier'] = $this->supplierRepository->pluck();
$data['warehouse'] = $this->warehouseRepository->pluck();
@@ -92,6 +98,7 @@ class ProductController extends Controller
$data['title'] = 'Show Product';
$data['category'] = $this->categoryRepository->pluck();
$data['subCategory'] = $this->subCategoryRepository->pluck();
+ $data['fabricCategory'] = $this->fabricCategoryRepository->pluck();
$data['supplier'] = $this->supplierRepository->pluck();
$data['warehouse'] = $this->warehouseRepository->pluck();
$data['product'] = $this->productRepository->getProductById($id);
@@ -127,4 +134,18 @@ class ProductController extends Controller
return response()->json(['status' => true, 'message' => 'Product Delete Succesfully']);
}
+
+ public function getProductDetail(Request $request)
+ {
+ try {
+ $productModel = $this->productRepository->getProductById($request->id);
+ } catch (\Throwable $th) {
+ toastr()->error($th->getMessage());
+
+ }
+ return response()->json([
+ 'status' => true,
+ 'data' => $productModel,
+ ]);
+ }
}
diff --git a/Modules/Product/app/Models/FabricCategory.php b/Modules/Product/app/Models/FabricCategory.php
new file mode 100644
index 0000000..2740e0b
--- /dev/null
+++ b/Modules/Product/app/Models/FabricCategory.php
@@ -0,0 +1,16 @@
+belongsTo(SubCategory::class, 'sub_category_id');
}
+ public function fabricCategory()
+ {
+ return $this->belongsTo(FabricCategory::class, 'fabriccategory_id');
+ }
+
public function warehouse()
{
return $this->belongsTo(Warehouse::class, 'warehouse_id');
}
+
public function supplier()
{
return $this->belongsTo(Supplier::class, 'supplier_id');
diff --git a/Modules/Product/app/Providers/ProductServiceProvider.php b/Modules/Product/app/Providers/ProductServiceProvider.php
index c9b33b0..b240d92 100644
--- a/Modules/Product/app/Providers/ProductServiceProvider.php
+++ b/Modules/Product/app/Providers/ProductServiceProvider.php
@@ -4,6 +4,10 @@ namespace Modules\Product\Providers;
use Illuminate\Support\Facades\Blade;
use Illuminate\Support\ServiceProvider;
+use Modules\Product\Repositories\CategoryInterface;
+use Modules\Product\Repositories\CategoryRepository;
+use Modules\Product\Repositories\FabricCategoryInterface;
+use Modules\Product\Repositories\FabricCategoryRepository;
use Modules\Product\Repositories\ProductInterface;
use Modules\Product\Repositories\ProductRepository;
@@ -33,6 +37,9 @@ class ProductServiceProvider extends ServiceProvider
{
$this->app->bind(ProductInterface::class,ProductRepository::class);
$this->app->register(RouteServiceProvider::class);
+ $this->app->bind(CategoryInterface::class,CategoryRepository::class);
+ $this->app->bind(FabricCategoryInterface::class,FabricCategoryRepository::class);
+
}
/**
diff --git a/Modules/Product/app/Repositories/FabricCategoryInterface.php b/Modules/Product/app/Repositories/FabricCategoryInterface.php
new file mode 100644
index 0000000..4a12aae
--- /dev/null
+++ b/Modules/Product/app/Repositories/FabricCategoryInterface.php
@@ -0,0 +1,15 @@
+paginate(20);
+ }
+
+ public function getFabricCategoryById($FabricCategoryId)
+ {
+ return FabricCategory::findOrFail($FabricCategoryId);
+ }
+
+ public function getFabricCategoryByEmail($email)
+ {
+ return FabricCategory::where('email', $email)->first();
+ }
+
+ public function delete($FabricCategoryId)
+ {
+ FabricCategory::destroy($FabricCategoryId);
+ }
+
+ public function create($FabricCategoryDetails)
+ {
+ return FabricCategory::create($FabricCategoryDetails);
+ }
+
+ public function update($FabricCategoryId, array $newDetails)
+ {
+ return FabricCategory::whereId($FabricCategoryId)->update($newDetails);
+ }
+
+ public function pluck()
+ {
+ return FabricCategory::pluck('title', 'id');
+ }
+
+}
diff --git a/Modules/Product/app/Repositories/ProductRepository.php b/Modules/Product/app/Repositories/ProductRepository.php
index 6c2b182..6639459 100644
--- a/Modules/Product/app/Repositories/ProductRepository.php
+++ b/Modules/Product/app/Repositories/ProductRepository.php
@@ -44,3 +44,4 @@ class ProductRepository implements ProductInterface
}
}
+
\ No newline at end of file
diff --git a/Modules/Product/database/migrations/2024_05_06_151439_create_products_table.php b/Modules/Product/database/migrations/2024_05_06_151439_create_products_table.php
index b009b6a..03e6f2d 100644
--- a/Modules/Product/database/migrations/2024_05_06_151439_create_products_table.php
+++ b/Modules/Product/database/migrations/2024_05_06_151439_create_products_table.php
@@ -14,9 +14,12 @@ return new class extends Migration
Schema::create('tbl_products', function (Blueprint $table) {
$table->id();
$table->string('name');
+ $table->string('code');
$table->longText('desc')->nullable();
- $table->decimal('price', 10, 2);
- $table->integer('qty');
+ $table->longText('remarks')->nullable();
+ $table->decimal('price', 10, 2)->nullable();
+ $table->integer('qty')->nullable();
+ $table->unsignedBigInteger('fabriccategory_id')->nullable();
$table->unsignedBigInteger('category_id')->nullable();
$table->unsignedBigInteger('sub_category_id')->nullable();
$table->unsignedBigInteger('supplier_id')->nullable();
diff --git a/database/migrations/2024_09_03_161854_create_tbl_fabriccategories_table.php b/Modules/Product/database/migrations/2024_09_03_161854_create_tbl_fabriccategories_table.php
similarity index 87%
rename from database/migrations/2024_09_03_161854_create_tbl_fabriccategories_table.php
rename to Modules/Product/database/migrations/2024_09_03_161854_create_tbl_fabriccategories_table.php
index c649a17..813925c 100644
--- a/database/migrations/2024_09_03_161854_create_tbl_fabriccategories_table.php
+++ b/Modules/Product/database/migrations/2024_09_03_161854_create_tbl_fabriccategories_table.php
@@ -14,14 +14,14 @@ class CreateTblFabriccategoriesTable extends Migration
public function up()
{
Schema::create('tbl_fabriccategories', function (Blueprint $table) {
- $table->id('febriccategory_id');
+ $table->id();
$table->string('title')->nullable();
- $table->string('alias')->nullable();
+ $table->string('slug')->nullable();
$table->text('description')->nullable();
$table->string('color')->nullable();
$table->integer('display_order')->nullable();
- $table->integer('status')->nullable();
$table->text('remarks')->nullable();
+ $table->integer('status')->default(11);
$table->dateTime('created_at')->nullable();
$table->integer('createdby')->nullable();
$table->dateTime('updated_at')->nullable();
diff --git a/database/migrations/2024_09_03_161929_create_tbl_masterunits_table.php b/Modules/Product/database/migrations/2024_09_03_161929_create_tbl_masterunits_table.php
similarity index 87%
rename from database/migrations/2024_09_03_161929_create_tbl_masterunits_table.php
rename to Modules/Product/database/migrations/2024_09_03_161929_create_tbl_masterunits_table.php
index 0dd6571..c496e49 100644
--- a/database/migrations/2024_09_03_161929_create_tbl_masterunits_table.php
+++ b/Modules/Product/database/migrations/2024_09_03_161929_create_tbl_masterunits_table.php
@@ -13,12 +13,12 @@ class CreateTblMasterunitsTable extends Migration
public function up()
{
Schema::create('tbl_masterunits', function (Blueprint $table) {
- $table->id('masterunit_id');
+ $table->id();
$table->string('title')->nullable();
- $table->string('alias')->nullable();
+ $table->string('slug')->nullable();
$table->text('description')->nullable();
$table->integer('display_order')->nullable();
- $table->integer('status')->nullable();
+ $table->integer('status')->default(11);
$table->text('remarks')->nullable();
$table->dateTime('created_at')->nullable();
$table->integer('createdby')->nullable();
diff --git a/database/migrations/2024_09_03_162203_create_tbl_stocks_table.php b/Modules/Product/database/migrations/2024_09_03_162203_create_tbl_stocks_table.php
similarity index 82%
rename from database/migrations/2024_09_03_162203_create_tbl_stocks_table.php
rename to Modules/Product/database/migrations/2024_09_03_162203_create_tbl_stocks_table.php
index b4596c9..5a86a53 100644
--- a/database/migrations/2024_09_03_162203_create_tbl_stocks_table.php
+++ b/Modules/Product/database/migrations/2024_09_03_162203_create_tbl_stocks_table.php
@@ -14,11 +14,11 @@ class CreateTblStocksTable extends Migration
public function up()
{
Schema::create('tbl_stocks', function (Blueprint $table) {
- $table->id('stock_id');
- $table->integer('stocklocations_id')->nullable();
+ $table->id();
+ $table->integer('stocklocation_id')->nullable();
$table->string('title')->nullable();
- $table->string('alias')->nullable();
- $table->integer('products_id')->nullable();
+ $table->string('slug')->nullable();
+ $table->integer('product_id')->nullable();
$table->string('s')->nullable();
$table->string('m')->nullable();
$table->string('l')->nullable();
@@ -27,7 +27,7 @@ class CreateTblStocksTable extends Migration
$table->string('xxxl')->nullable();
$table->string('fs')->nullable();
$table->integer('display_order')->nullable();
- $table->integer('status')->nullable();
+ $table->integer('status')->default(11);
$table->text('remarks')->nullable();
$table->dateTime('created_at')->nullable();
$table->integer('createdby')->nullable();
@@ -45,4 +45,5 @@ class CreateTblStocksTable extends Migration
{
Schema::dropIfExists('tbl_stocks');
}
-}
\ No newline at end of file
+}
+
diff --git a/database/migrations/2024_09_03_164741_create_tbl_paymentmodes_table.php b/Modules/Product/database/migrations/2024_09_03_164741_create_tbl_paymentmodes_table.php
similarity index 87%
rename from database/migrations/2024_09_03_164741_create_tbl_paymentmodes_table.php
rename to Modules/Product/database/migrations/2024_09_03_164741_create_tbl_paymentmodes_table.php
index ac149f1..98bc5d2 100644
--- a/database/migrations/2024_09_03_164741_create_tbl_paymentmodes_table.php
+++ b/Modules/Product/database/migrations/2024_09_03_164741_create_tbl_paymentmodes_table.php
@@ -14,12 +14,12 @@ class CreateTblPaymentmodesTable extends Migration
public function up()
{
Schema::create('tbl_paymentmodes', function (Blueprint $table) {
- $table->id('paymentmode_id');
+ $table->id();
$table->string('title')->nullable();
- $table->string('alias')->nullable();
+ $table->string('slug')->nullable();
$table->text('description')->nullable();
$table->integer('display_order')->nullable();
- $table->integer('status')->nullable();
+ $table->integer('status')->default(11);
$table->text('remarks')->nullable();
$table->dateTime('created_at')->nullable();
$table->integer('createdby')->nullable();
diff --git a/Modules/Product/database/migrations/2024_09_04_123611_create_tbl_stocklocations_table.php b/Modules/Product/database/migrations/2024_09_04_123611_create_tbl_stocklocations_table.php
new file mode 100644
index 0000000..ae9e0ae
--- /dev/null
+++ b/Modules/Product/database/migrations/2024_09_04_123611_create_tbl_stocklocations_table.php
@@ -0,0 +1,39 @@
+id();
+ $table->string('title')->nullable();
+ $table->string('slug')->nullable();
+ $table->text('description')->nullable();
+ $table->integer('display_order')->nullable();
+ $table->integer('status')->default(11);
+ $table->text('remarks')->nullable();
+ $table->timestamps();
+ $table->integer('createdby')->nullable();
+ $table->integer('updatedby')->nullable();
+ });
+ }
+
+ /**
+ * Reverse the migrations.
+ *
+ * @return void
+ */
+ public function down()
+ {
+ Schema::dropIfExists('tbl_stocklocations');
+ }
+}
diff --git a/Modules/Product/resources/views/fabric_category/create.blade.php b/Modules/Product/resources/views/fabric_category/create.blade.php
new file mode 100644
index 0000000..632aeae
--- /dev/null
+++ b/Modules/Product/resources/views/fabric_category/create.blade.php
@@ -0,0 +1,16 @@
+@extends('layouts.app')
+
+@section('content')
+
+
+ @include('layouts.partials.breadcrumb', ['title' => $title])
+ {{ html()->form('POST')->route('fabricCategory.store')->class(['needs-validation'])->attributes(['novalidate', 'enctype' => 'multipart/form-data'])->open() }}
+ @include('product::fabric_category.partials.action')
+ {{ html()->form()->close() }}
+
+
+@endsection
+
+@push('js')
+
+@endpush
diff --git a/Modules/Product/resources/views/fabric_category/edit.blade.php b/Modules/Product/resources/views/fabric_category/edit.blade.php
new file mode 100644
index 0000000..974ae53
--- /dev/null
+++ b/Modules/Product/resources/views/fabric_category/edit.blade.php
@@ -0,0 +1,23 @@
+@extends('layouts.app')
+
+@section('content')
+
+
+
+ @include('layouts.partials.breadcrumb', ['title' => $title])
+
+
+ {{ html()->modelForm($fabric_category, 'PUT')->route('fabricCategory.update', $fabric_category->id)->class(['needs-validation'])->attributes(['novalidate', 'enctype' => 'multipart/form-data'])->open() }}
+
+ @include('product::fabric_category.partials.action')
+
+ {{ html()->closeModelForm() }}
+
+
+
+
+@endsection
+
+@push('js')
+
+@endpush
diff --git a/Modules/Product/resources/views/fabric_category/index.blade.php b/Modules/Product/resources/views/fabric_category/index.blade.php
new file mode 100644
index 0000000..43b6bd9
--- /dev/null
+++ b/Modules/Product/resources/views/fabric_category/index.blade.php
@@ -0,0 +1,72 @@
+@extends('layouts.app')
+
+@section('content')
+
+
+ @include('layouts.partials.breadcrumb', ['title' => $title])
+
+
+
+ @can('fabricCategory.create')
+
Add
+ @endcan
+
+
+
+
+
+
+@endsection
diff --git a/Modules/Product/resources/views/fabric_category/partials/action.blade.php b/Modules/Product/resources/views/fabric_category/partials/action.blade.php
new file mode 100644
index 0000000..170a21b
--- /dev/null
+++ b/Modules/Product/resources/views/fabric_category/partials/action.blade.php
@@ -0,0 +1,60 @@
+
+
+
+
+
+
+
+ {{ html()->label('Title')->class('form-label') }}
+ {{ html()->text('title')->class('form-control')->placeholder('Enter Title')->required() }}
+
+
+
+ {{ html()->label('Color')->class('form-label') }}
+ {{ html()->text('color')->class('form-control')->placeholder('Enter Color')->required() }}
+
+
+
+
+ {{ html()->label('Description')->class('form-label') }}
+ {{ html()->text('description')->class('form-control')->placeholder('Enter Description') }}
+
+
+
+ {{ html()->label('Remarks')->class('form-label') }}
+ {{ html()->text('remarks')->class('form-control')->placeholder('Enter Remarks') }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ html()->label('Status')->class('form-label') }}
+ {{-- {{ html()->select('status', '11')->class('form-control')->placeholder('Select Status') }}
+ --}}
+ {{ html()->select('status', $status)->class('form-control')->placeholder('Select Status')->required() }}
+
+
+
+
+
+
+
+
+
diff --git a/Modules/Product/resources/views/fabric_category/show.blade.php b/Modules/Product/resources/views/fabric_category/show.blade.php
new file mode 100644
index 0000000..ed6826f
--- /dev/null
+++ b/Modules/Product/resources/views/fabric_category/show.blade.php
@@ -0,0 +1,45 @@
+@extends('layouts.app')
+
+@section('content')
+
+
+ @include('layouts.partials.breadcrumb', ['title' => $title])
+
+
+
+
+
+
+
+
+
+ Title
+ {{ $fabric_category->title }}
+
+
+ Description
+ {{ $fabric_category->description }}
+
+
+ Remarks
+ {{ $fabric_category->remarks }}
+
+
+
+
+
+
+
+
+
+
+
+
+@endsection
+
+@push('js')
+
+@endpush
diff --git a/Modules/Product/resources/views/product/index.blade.php b/Modules/Product/resources/views/product/index.blade.php
index a2e8605..8d9efba 100644
--- a/Modules/Product/resources/views/product/index.blade.php
+++ b/Modules/Product/resources/views/product/index.blade.php
@@ -22,28 +22,23 @@
S.N
- Name
- Price
- Quantity
- Category
- Sub Category
- Supplier
- Warehouse
+ Title
+ Fabric Category
+ Product Category
+ Product Code
Status
Action
@forelse ($products as $key => $product)
+ {{-- @dd($product->fabricCategory) --}}
{{ $key + 1 }}
{{ $product->name }}
- {{ $product->price }}
- {{ $product->qty }}
+ {{ optional($product->fabricCategory)->title }}
{{ optional($product->category)->title }}
- {{ optional($product->subCategory)->title }}
- {{ optional($product->supplier)->supplier_name }}
- {{ optional($product->warehouse)->title }}
+ {{ $product->code }}
{!! $product->status_name !!}
diff --git a/Modules/Product/resources/views/product/partials/action.blade.php b/Modules/Product/resources/views/product/partials/action.blade.php
index 815d1a1..99f017d 100644
--- a/Modules/Product/resources/views/product/partials/action.blade.php
+++ b/Modules/Product/resources/views/product/partials/action.blade.php
@@ -9,40 +9,30 @@
- {{ html()->label('Price')->class('form-label') }}
- {{ html()->text('price')->class('form-control')->placeholder('Enter Price')->required() }}
+ {{ html()->label('Product Code')->class('form-label') }}
+ {{ html()->text('code')->class('form-control')->placeholder('Enter Product Code')->required() }}
- {{ html()->label('Quantity')->class('form-label') }}
- {{ html()->text('qty')->class('form-control')->placeholder('Enter Quantity')->required() }}
+ {{ html()->label('Fabric Category')->class('form-label') }}
+ {{ html()->select('fabriccategory_id', $fabricCategory)->class('form-select select2')->placeholder('Select Fabric Category')->id('fabric_category_id') }}
-
+
{{ html()->label('Category')->class('form-label') }}
{{ html()->select('category_id', $category)->class('form-select select2')->placeholder('Select Category')->id('category_id') }}
-
- {{ html()->label('Sub Category')->class('form-label') }}
- {{ html()->select('sub_category_id', $subCategory)->class('form-select select2')->placeholder('Select Sub Category')->id('sub_category_id') }}
-
-
-
- {{ html()->label('Supplier')->class('form-label') }}
- {{ html()->select('supplier_id', $supplier)->class('form-select select2')->placeholder('Select Supplier') }}
-
-
-
- {{ html()->label('Warehouse')->class('form-label') }}
- {{ html()->select('warehouse_id', $warehouse)->class('form-select select2')->placeholder('Select Warehouse') }}
-
-
{{ html()->label('Description')->class('form-label') }}
{{ html()->textarea('desc')->class('form-control')->placeholder('Enter Description')->required() }}
+
+ {{ html()->label('Remarks')->class('form-label') }}
+ {{ html()->textarea('remarks')->class('form-control')->placeholder('Enter Remarks')->required() }}
+
+
@@ -73,14 +63,14 @@
@push('js')
-
+ --}}
@endpush
\ No newline at end of file
diff --git a/Modules/Product/resources/views/product/show.blade.php b/Modules/Product/resources/views/product/show.blade.php
index 5c5b52e..9a351c7 100644
--- a/Modules/Product/resources/views/product/show.blade.php
+++ b/Modules/Product/resources/views/product/show.blade.php
@@ -17,31 +17,23 @@
{{ $product->name }}
- Price
- {{ $product->price }}
-
-
- Quantity
- {{ $product->qty }}
+ Product Code
+ {{ $product->code }}
Category
{{ optional($product->category)->title }}
- Sub Category
- {{ optional($product->subCategory)->title }}
+ Fabric Category
+ {{ optional($product->fabricCategory)->title }}
- Supplier
- {{ optional($product->supplier)->supplier_name }}
+ Description
+ {{ optional($product->desc) }}
- Warehouse
- {{ optional($product->warehouse)->title }}
-
-
- Status
+ Status
{{ $product->status }}
diff --git a/Modules/Product/routes/web.php b/Modules/Product/routes/web.php
index 2f42951..12a76b0 100644
--- a/Modules/Product/routes/web.php
+++ b/Modules/Product/routes/web.php
@@ -2,6 +2,7 @@
use Illuminate\Support\Facades\Route;
use Modules\Product\Http\Controllers\CategoryController;
+use Modules\Product\Http\Controllers\FabricCategoryController;
use Modules\Product\Http\Controllers\ProductController;
use Modules\Product\Http\Controllers\SubCategoryController;
use Modules\Product\Http\Controllers\WarehouseController;
@@ -22,7 +23,9 @@ Route::group([], function () {
Route::resource('category', CategoryController::class)->names('category');
Route::resource('sub-category', SubCategoryController::class)->names('subCategory');
Route::resource('warehouse', WarehouseController::class)->names('warehouse');
+ Route::resource('fabricCategory', FabricCategoryController::class)->names('fabricCategory');
Route::get('get-sub-categories', [SubCategoryController::class, 'getSubCategories'])->name('getSubCategories');
+ Route::get('product-details', [ProductController::class, 'getProductDetail'])->name('get-product-detail');
});
diff --git a/Modules/Settings/app/Repositories/.gitkeep b/Modules/SalesEntry/app/Http/Controllers/.gitkeep
similarity index 100%
rename from Modules/Settings/app/Repositories/.gitkeep
rename to Modules/SalesEntry/app/Http/Controllers/.gitkeep
diff --git a/Modules/SalesEntry/app/Http/Controllers/SalesEntryController.php b/Modules/SalesEntry/app/Http/Controllers/SalesEntryController.php
new file mode 100644
index 0000000..c7f0f27
--- /dev/null
+++ b/Modules/SalesEntry/app/Http/Controllers/SalesEntryController.php
@@ -0,0 +1,135 @@
+productRepository = $productRepository;
+ $this->customerRepository = $customerRepository;
+ $this->salesEntryRepository = $salesEntryRepository;
+ $this->categoryRepository = $categoryRepository;
+ $this->stockRepository = $stockRepository;
+ $this->fieldRepository = $fieldRepository;
+
+
+ }
+ /**
+ * Display a listing of the resource.
+ */
+ public function index()
+ {
+ $data['title'] = 'Sales Entries';
+ $data['salesEntries'] = SalesEntry::all();
+ return view('salesEntry::salesEntry.index', $data);
+ }
+
+ /**
+ * Show the form for creating a new resource.
+ */
+ public function create()
+ {
+ $data['title'] = 'New Sales Entry';
+ $data['categoryList'] = $this->categoryRepository->pluck();
+ $data['stockList'] = $this->stockRepository->pluck();
+ $data['productList'] = $this->productRepository->pluck();
+ $data['customerList'] = $this->customerRepository->pluck();
+ $data['sizes'] = $this->fieldRepository->getDropdownByAlias('size');
+ $data['paymentModes'] = $this->fieldRepository->getDropdownByAlias('payment-mode');
+ $data['editable'] = false;
+
+ return view('salesEntry::salesEntry.create', $data);
+ }
+
+ /**
+ * Store a newly created resource in storage.
+ */
+ public function store(Request $request): RedirectResponse
+ {
+ $this->salesEntryRepository->create($request);
+
+ return redirect()->route('salesEntry.index');
+ }
+
+ /**
+ * Show the specified resource.
+ */
+ public function show($id)
+ {
+ return view('salesEntry::salesEntry.show');
+ }
+
+ /**
+ * Show the form for editing the specified resource.
+ */
+ public function edit($id)
+ {
+ $data['customerList'] = $this->customerRepository->pluck();
+ $data['categoryList'] = $this->categoryRepository->pluck();
+ $data['stockList'] = $this->stockRepository->pluck();
+ $data['productList'] = $this->productRepository->pluck();
+ $data['sizes'] = $this->fieldRepository->getDropdownByAlias('size');
+ $data['paymentModes'] = $this->fieldRepository->getDropdownByAlias('payment-mode');
+ $data['order'] = SalesEntry::with('orderDetails')->find($id);
+ $data['id'] = $id;
+ $data['editable'] = true;
+ $data['title'] = "Edit Sales Entry";
+ return view('salesEntry::salesEntry.edit');
+ }
+
+ /**
+ * Update the specified resource in storage.
+ */
+ public function update(Request $request, $id): RedirectResponse
+ {
+ $this->salesEntryRepository->update($id,$request);
+ return redirect()->route('salesEntry.index');
+ }
+
+ /**
+ * Remove the specified resource from storage.
+ */
+ public function destroy($id)
+ {
+ return $this->salesEntryRepository->delete($id);
+ }
+
+ public function cloneSalesProduct(Request $request)
+ {
+ $data = [];
+ $numInc = $request->numberInc;
+ $script = true;
+ $productList= $this->productRepository->pluck('id');
+ $stockList= $this->stockRepository->pluck('id');
+ $categoryList= $this->categoryRepository->pluck('id');
+
+ return response()->json([
+ 'view' => view('salesEntry::salesEntry.clone-product', compact('data', 'numInc', 'script', 'productList'))->render(),
+ ]);
+ }
+}
diff --git a/Modules/Settings/config/.gitkeep b/Modules/SalesEntry/app/Http/Requests/.gitkeep
similarity index 100%
rename from Modules/Settings/config/.gitkeep
rename to Modules/SalesEntry/app/Http/Requests/.gitkeep
diff --git a/Modules/Settings/database/factories/.gitkeep b/Modules/SalesEntry/app/Models/.gitkeep
similarity index 100%
rename from Modules/Settings/database/factories/.gitkeep
rename to Modules/SalesEntry/app/Models/.gitkeep
diff --git a/Modules/SalesEntry/app/Models/SalesEntry.php b/Modules/SalesEntry/app/Models/SalesEntry.php
new file mode 100644
index 0000000..51f88fa
--- /dev/null
+++ b/Modules/SalesEntry/app/Models/SalesEntry.php
@@ -0,0 +1,33 @@
+hasMany(SalesEntryDetail::class,'salesentry_id');
+ }
+
+ public function customer():BelongsTo{
+ return $this->belongsTo(Customer::class);
+ }
+
+ public static function getFillableField(){
+ return (new self())->fillable;
+ }
+}
diff --git a/Modules/SalesEntry/app/Models/SalesEntryDetail.php b/Modules/SalesEntry/app/Models/SalesEntryDetail.php
new file mode 100644
index 0000000..732a39c
--- /dev/null
+++ b/Modules/SalesEntry/app/Models/SalesEntryDetail.php
@@ -0,0 +1,25 @@
+belongsTo(SalesEntry::class);
+ }
+}
diff --git a/Modules/Settings/database/migrations/.gitkeep b/Modules/SalesEntry/app/Observers/.gitkeep
similarity index 100%
rename from Modules/Settings/database/migrations/.gitkeep
rename to Modules/SalesEntry/app/Observers/.gitkeep
diff --git a/Modules/Settings/database/seeders/.gitkeep b/Modules/SalesEntry/app/Providers/.gitkeep
similarity index 100%
rename from Modules/Settings/database/seeders/.gitkeep
rename to Modules/SalesEntry/app/Providers/.gitkeep
diff --git a/Modules/SalesEntry/app/Providers/EventServiceProvider.php b/Modules/SalesEntry/app/Providers/EventServiceProvider.php
new file mode 100644
index 0000000..9f6fadc
--- /dev/null
+++ b/Modules/SalesEntry/app/Providers/EventServiceProvider.php
@@ -0,0 +1,32 @@
+>
+ */
+ protected $listen = [];
+
+ /**
+ * Indicates if events should be discovered.
+ *
+ * @var bool
+ */
+ protected static $shouldDiscoverEvents = true;
+
+ /**
+ * Configure the proper event listeners for email verification.
+ *
+ * @return void
+ */
+ protected function configureEmailVerification(): void
+ {
+
+ }
+}
diff --git a/Modules/SalesEntry/app/Providers/RouteServiceProvider.php b/Modules/SalesEntry/app/Providers/RouteServiceProvider.php
new file mode 100644
index 0000000..075a842
--- /dev/null
+++ b/Modules/SalesEntry/app/Providers/RouteServiceProvider.php
@@ -0,0 +1,49 @@
+mapApiRoutes();
+
+ $this->mapWebRoutes();
+ }
+
+ /**
+ * Define the "web" routes for the application.
+ *
+ * These routes all receive session state, CSRF protection, etc.
+ */
+ protected function mapWebRoutes(): void
+ {
+ Route::middleware('web')->group(module_path('SalesEntry', '/routes/web.php'));
+ }
+
+ /**
+ * Define the "api" routes for the application.
+ *
+ * These routes are typically stateless.
+ */
+ protected function mapApiRoutes(): void
+ {
+ Route::middleware('api')->prefix('api')->name('api.')->group(module_path('SalesEntry', '/routes/api.php'));
+ }
+}
diff --git a/Modules/SalesEntry/app/Providers/SalesEntryServiceProvider.php b/Modules/SalesEntry/app/Providers/SalesEntryServiceProvider.php
new file mode 100644
index 0000000..a19b1ef
--- /dev/null
+++ b/Modules/SalesEntry/app/Providers/SalesEntryServiceProvider.php
@@ -0,0 +1,123 @@
+registerCommands();
+ $this->registerCommandSchedules();
+ $this->registerTranslations();
+ $this->registerConfig();
+ $this->registerViews();
+ $this->loadMigrationsFrom(module_path($this->moduleName, 'database/migrations'));
+ }
+
+ /**
+ * Register the service provider.
+ */
+ public function register(): void
+ {
+ $this->app->register(EventServiceProvider::class);
+ $this->app->register(RouteServiceProvider::class);
+ $this->app->bind(SalesEntryInterface::class, SalesEntryRepository::class);
+ }
+
+ /**
+ * Register commands in the format of Command::class
+ */
+ protected function registerCommands(): void
+ {
+ // $this->commands([]);
+ }
+
+ /**
+ * Register command Schedules.
+ */
+ protected function registerCommandSchedules(): void
+ {
+ // $this->app->booted(function () {
+ // $schedule = $this->app->make(Schedule::class);
+ // $schedule->command('inspire')->hourly();
+ // });
+ }
+
+ /**
+ * Register translations.
+ */
+ public function registerTranslations(): void
+ {
+ $langPath = resource_path('lang/modules/'.$this->moduleNameLower);
+
+ if (is_dir($langPath)) {
+ $this->loadTranslationsFrom($langPath, $this->moduleNameLower);
+ $this->loadJsonTranslationsFrom($langPath);
+ } else {
+ $this->loadTranslationsFrom(module_path($this->moduleName, 'lang'), $this->moduleNameLower);
+ $this->loadJsonTranslationsFrom(module_path($this->moduleName, 'lang'));
+ }
+ }
+
+ /**
+ * Register config.
+ */
+ protected function registerConfig(): void
+ {
+ $this->publishes([module_path($this->moduleName, 'config/config.php') => config_path($this->moduleNameLower.'.php')], 'config');
+ $this->mergeConfigFrom(module_path($this->moduleName, 'config/config.php'), $this->moduleNameLower);
+ }
+
+ /**
+ * Register views.
+ */
+ public function registerViews(): void
+ {
+ $viewPath = resource_path('views/modules/'.$this->moduleNameLower);
+ $sourcePath = module_path($this->moduleName, 'resources/views');
+
+ $this->publishes([$sourcePath => $viewPath], ['views', $this->moduleNameLower.'-module-views']);
+
+ $this->loadViewsFrom(array_merge($this->getPublishableViewPaths(), [$sourcePath]), $this->moduleNameLower);
+
+ $componentNamespace = str_replace('/', '\\', config('modules.namespace').'\\'.$this->moduleName.'\\'.ltrim(config('modules.paths.generator.component-class.path'), config('modules.paths.app_folder', '')));
+ Blade::componentNamespace($componentNamespace, $this->moduleNameLower);
+ }
+
+ /**
+ * Get the services provided by the provider.
+ *
+ * @return array
+ */
+ public function provides(): array
+ {
+ return [];
+ }
+
+ /**
+ * @return array
+ */
+ private function getPublishableViewPaths(): array
+ {
+ $paths = [];
+ foreach (config('view.paths') as $path) {
+ if (is_dir($path.'/modules/'.$this->moduleNameLower)) {
+ $paths[] = $path.'/modules/'.$this->moduleNameLower;
+ }
+ }
+
+ return $paths;
+ }
+}
diff --git a/Modules/Settings/resources/assets/.gitkeep b/Modules/SalesEntry/app/Repositories/.gitkeep
similarity index 100%
rename from Modules/Settings/resources/assets/.gitkeep
rename to Modules/SalesEntry/app/Repositories/.gitkeep
diff --git a/Modules/SalesEntry/app/Repositories/SalesEntryInterface.php b/Modules/SalesEntry/app/Repositories/SalesEntryInterface.php
new file mode 100644
index 0000000..e251dda
--- /dev/null
+++ b/Modules/SalesEntry/app/Repositories/SalesEntryInterface.php
@@ -0,0 +1,17 @@
+paginate(20);
+ }
+
+ public function getSalesEntryById($SalesEntryId)
+ {
+ return SalesEntry::findOrFail($SalesEntryId);
+ }
+
+ public function getSalesEntryByEmail($email)
+ {
+ return SalesEntry::where('email', $email)->first();
+ }
+
+ public function delete($SalesEntryId)
+ {
+ DB::transaction(function() use ($SalesEntryId) {
+ SalesEntryDetail::where('salesentry_id', $SalesEntryId)->delete();
+
+ SalesEntry::destroy($SalesEntryId);
+ });
+ }
+
+
+ public function create($request)
+ {
+ $salesEntryDetails = $request->except(SalesEntry::getFillableField());
+
+ $salesEntry = $request->only(SalesEntry::getFillableField());
+ $salesEntryData = SalesEntry::create($salesEntry);
+
+ $request->merge(['salesentry_id' => $salesEntryData->id]);
+
+ foreach ($salesEntryDetails['product_id'] as $key => $productId) {
+ $data = [
+ 'salesentry_id' => $request->input('salesentry_id'),
+ 'product_id' => $productId,
+ 'unit' => $salesEntryDetails['unit'][$key],
+ 'rate' => $salesEntryDetails['rate'][$key],
+ 'quantity' => $salesEntryDetails['qty'][$key],
+ 'amount' => $salesEntryDetails['amt'][$key],
+ 'desc' => $salesEntryDetails['desc'][$key],
+ ];
+ SalesEntryDetail::create($data);
+ }
+ }
+
+
+ public function update($SalesEntryId, $request)
+ {
+ $fillableFields = SalesEntry::getFillableField();
+ $salesEntryData = $request->only($fillableFields);
+
+ $salesEntry = SalesEntry::find($SalesEntryId);
+ $salesEntry->update($salesEntryData);
+
+
+ $additionalExcludes = ['_method', '_token'];
+ $excludeFields = array_merge($fillableFields, $additionalExcludes);
+
+ $data = $request->except($excludeFields);
+
+ $updatedCombinations = [];
+
+ if (isset($data['product_id'])) {
+ foreach ($data['product_id'] as $key => $productId) {
+ $obj = [
+ 'salesentry_id' => $SalesEntryId,
+ 'product_id' => $productId,
+ 'unit' => $data['unit'][$key],
+ 'rate' => $data['rate'][$key],
+ 'quantity' => $data['qty'][$key],
+ 'amount' => $data['amt'][$key],
+ 'desc' => $data['desc'][$key],
+ ];
+
+ $combinationKey = "{$SalesEntryId}_{$productId}_{$data['unit'][$key]}";
+
+ $salesEntryDetail = $salesEntry->salesEntryDetails()->where('product_id', $productId)->where('unit', $data['unit'][$key])->first();
+ if ($salesEntryDetail) {
+ $salesEntryDetail->update($obj);
+ } else {
+ SalesEntryDetail::create($obj);
+ }
+
+ $updatedCombinations[] = $combinationKey;
+ }
+ }
+
+ $salesEntry->salesEntryDetails()->each(function ($salesEntryDetail) use ($updatedCombinations) {
+ $combinationKey = "{$salesEntryDetail->salesEntry_id}_{$salesEntryDetail->product_id}_{$salesEntryDetail->unit}";
+ if (!in_array($combinationKey, $updatedCombinations)) {
+ $salesEntryDetail->delete();
+ }
+ });
+
+ return $salesEntry;
+ }
+
+
+
+ public function pluck()
+ {
+ return SalesEntry::pluck('name', 'id');
+ }
+}
diff --git a/Modules/SalesEntry/composer.json b/Modules/SalesEntry/composer.json
new file mode 100644
index 0000000..6f94efe
--- /dev/null
+++ b/Modules/SalesEntry/composer.json
@@ -0,0 +1,30 @@
+{
+ "name": "nwidart/salesentry",
+ "description": "",
+ "authors": [
+ {
+ "name": "Nicolas Widart",
+ "email": "n.widart@gmail.com"
+ }
+ ],
+ "extra": {
+ "laravel": {
+ "providers": [],
+ "aliases": {
+
+ }
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Modules\\SalesEntry\\": "app/",
+ "Modules\\SalesEntry\\Database\\Factories\\": "database/factories/",
+ "Modules\\SalesEntry\\Database\\Seeders\\": "database/seeders/"
+ }
+ },
+ "autoload-dev": {
+ "psr-4": {
+ "Modules\\SalesEntry\\Tests\\": "tests/"
+ }
+ }
+}
diff --git a/Modules/Settings/resources/views/.gitkeep b/Modules/SalesEntry/config/.gitkeep
similarity index 100%
rename from Modules/Settings/resources/views/.gitkeep
rename to Modules/SalesEntry/config/.gitkeep
diff --git a/Modules/SalesEntry/config/config.php b/Modules/SalesEntry/config/config.php
new file mode 100644
index 0000000..a699e2e
--- /dev/null
+++ b/Modules/SalesEntry/config/config.php
@@ -0,0 +1,5 @@
+ 'SalesEntry',
+];
diff --git a/Modules/Settings/routes/.gitkeep b/Modules/SalesEntry/database/factories/.gitkeep
similarity index 100%
rename from Modules/Settings/routes/.gitkeep
rename to Modules/SalesEntry/database/factories/.gitkeep
diff --git a/Modules/Stocks/app/Http/Controllers/.gitkeep b/Modules/SalesEntry/database/migrations/.gitkeep
similarity index 100%
rename from Modules/Stocks/app/Http/Controllers/.gitkeep
rename to Modules/SalesEntry/database/migrations/.gitkeep
diff --git a/Modules/SalesEntry/database/migrations/2024_09_09_130433_create_salesentries_table.php b/Modules/SalesEntry/database/migrations/2024_09_09_130433_create_salesentries_table.php
new file mode 100644
index 0000000..39fa000
--- /dev/null
+++ b/Modules/SalesEntry/database/migrations/2024_09_09_130433_create_salesentries_table.php
@@ -0,0 +1,47 @@
+id();
+ $table->string('title')->nullable();
+ $table->string('slug')->nullable();
+ $table->date('sales_date')->nullable();
+ $table->unsignedBigInteger('customer_id')->nullable();
+ $table->unsignedBigInteger('product_id')->nullable();
+ $table->unsignedBigInteger('category_id')->nullable();
+ $table->unsignedBigInteger('stock_id')->nullable();
+ $table->unsignedBigInteger('size_id')->nullable();
+ $table->string('payment')->nullable();
+ $table->unsignedBigInteger('paymentmode_id')->nullable();
+ $table->string('paymentref')->nullable();
+ $table->decimal('sub_total', 10, 2)->nullable();
+ $table->decimal('tax', 10, 2)->nullable();
+ $table->decimal('discount_amt', 10, 2)->nullable();
+ $table->decimal('total_amt', 10, 2)->nullable();
+ $table->timestamps();
+ });
+ }
+
+ /**
+ * Reverse the migrations.
+ *
+ * @return void
+ */
+ public function down()
+ {
+ Schema::dropIfExists('tbl_salesentries');
+ }
+};
+
diff --git a/Modules/SalesEntry/database/migrations/2024_09_10_130316_create_salesentrydetails_table.php b/Modules/SalesEntry/database/migrations/2024_09_10_130316_create_salesentrydetails_table.php
new file mode 100644
index 0000000..2cc039d
--- /dev/null
+++ b/Modules/SalesEntry/database/migrations/2024_09_10_130316_create_salesentrydetails_table.php
@@ -0,0 +1,44 @@
+id();
+ $table->unsignedBigInteger('salesentry_id')->nullable();
+ $table->unsignedBigInteger('product_id')->nullable();
+ $table->unsignedBigInteger('category_id')->nullable();
+ $table->unsignedBigInteger('stock_id')->nullable();
+ $table->unsignedBigInteger('size_id')->nullable();
+ $table->string('unit')->nullable();
+ $table->integer('rate')->nullable();
+ $table->integer('quantity')->nullable();
+ $table->decimal('amount', 6);
+ $table->text('desc')->nullable();
+ $table->integer('status')->nullable();
+ $table->text('remarks')->nullable();
+ $table->timestamps();
+ });
+ }
+
+ /**
+ * Reverse the migrations.
+ *
+ * @return void
+ */
+ public function down()
+ {
+ Schema::dropIfExists('tbl_salesentrydetails');
+ }
+};
+
diff --git a/Modules/Stocks/app/Http/Requests/.gitkeep b/Modules/SalesEntry/database/seeders/.gitkeep
similarity index 100%
rename from Modules/Stocks/app/Http/Requests/.gitkeep
rename to Modules/SalesEntry/database/seeders/.gitkeep
diff --git a/Modules/SalesEntry/database/seeders/SalesEntryDatabaseSeeder.php b/Modules/SalesEntry/database/seeders/SalesEntryDatabaseSeeder.php
new file mode 100644
index 0000000..cd745a7
--- /dev/null
+++ b/Modules/SalesEntry/database/seeders/SalesEntryDatabaseSeeder.php
@@ -0,0 +1,16 @@
+call([]);
+ }
+}
diff --git a/Modules/SalesEntry/module.json b/Modules/SalesEntry/module.json
new file mode 100644
index 0000000..c7ca2a9
--- /dev/null
+++ b/Modules/SalesEntry/module.json
@@ -0,0 +1,11 @@
+{
+ "name": "SalesEntry",
+ "alias": "salesentry",
+ "description": "",
+ "keywords": [],
+ "priority": 0,
+ "providers": [
+ "Modules\\SalesEntry\\Providers\\SalesEntryServiceProvider"
+ ],
+ "files": []
+}
diff --git a/Modules/Settings/package.json b/Modules/SalesEntry/package.json
similarity index 100%
rename from Modules/Settings/package.json
rename to Modules/SalesEntry/package.json
diff --git a/Modules/Stocks/app/Models/.gitkeep b/Modules/SalesEntry/resources/assets/.gitkeep
similarity index 100%
rename from Modules/Stocks/app/Models/.gitkeep
rename to Modules/SalesEntry/resources/assets/.gitkeep
diff --git a/Modules/Settings/resources/assets/js/app.js b/Modules/SalesEntry/resources/assets/js/app.js
similarity index 100%
rename from Modules/Settings/resources/assets/js/app.js
rename to Modules/SalesEntry/resources/assets/js/app.js
diff --git a/Modules/Settings/resources/assets/sass/app.scss b/Modules/SalesEntry/resources/assets/sass/app.scss
similarity index 100%
rename from Modules/Settings/resources/assets/sass/app.scss
rename to Modules/SalesEntry/resources/assets/sass/app.scss
diff --git a/Modules/Stocks/app/Observers/.gitkeep b/Modules/SalesEntry/resources/views/.gitkeep
similarity index 100%
rename from Modules/Stocks/app/Observers/.gitkeep
rename to Modules/SalesEntry/resources/views/.gitkeep
diff --git a/Modules/SalesEntry/resources/views/index.blade.php b/Modules/SalesEntry/resources/views/index.blade.php
new file mode 100644
index 0000000..17b0df2
--- /dev/null
+++ b/Modules/SalesEntry/resources/views/index.blade.php
@@ -0,0 +1,7 @@
+@extends('salesentry::layouts.master')
+
+@section('content')
+ Hello World
+
+ Module: {!! config('salesentry.name') !!}
+@endsection
diff --git a/Modules/SalesEntry/resources/views/layouts/master.blade.php b/Modules/SalesEntry/resources/views/layouts/master.blade.php
new file mode 100644
index 0000000..7368c25
--- /dev/null
+++ b/Modules/SalesEntry/resources/views/layouts/master.blade.php
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+
+ SalesEntry Module - {{ config('app.name', 'Laravel') }}
+
+
+
+
+
+
+
+
+
+ {{-- Vite CSS --}}
+ {{-- {{ module_vite('build-salesentry', 'resources/assets/sass/app.scss') }} --}}
+
+
+
+ @yield('content')
+
+ {{-- Vite JS --}}
+ {{-- {{ module_vite('build-salesentry', 'resources/assets/js/app.js') }} --}}
+
diff --git a/Modules/SalesEntry/resources/views/salesEntry/clone-product.blade.php b/Modules/SalesEntry/resources/views/salesEntry/clone-product.blade.php
new file mode 100644
index 0000000..735b87f
--- /dev/null
+++ b/Modules/SalesEntry/resources/views/salesEntry/clone-product.blade.php
@@ -0,0 +1,46 @@
+
+
+
+ {{ html()->label('Product')->class('form-label') }}
+ @if (isset($editable) && $editable)
+ {{ html()->select('product_id[]', $productList, $item->product_id)->class('form-select product_id')->attributes(['id' => 'product_id'])->placeholder('Enter Product Name')->required() }}
+ @else
+ @endif
+ {{ html()->select('product_id[]', $productList)->class('form-select product_id')->attributes(['id' => 'product_id'])->placeholder('Enter Product Name')->required() }}
+
+
+
+
+
+ {{ html()->label('Unit')->class('form-label') }}
+ {{ html()->text('unit[]', isset($editable) && $editable ? $item->unit : null)->class('form-control unit')->placeholder('Enter Unit')->required()->attributes(['id' => 'unit']) }}
+
+
+
+
+ {{ html()->label('Rate')->class('form-label') }}
+ {{ html()->text('rate[]', isset($editable) && $editable ? $item->rate : null)->class('form-control product-price cleave-numeral rate~~')->placeholder('Enter Rate')->attributes(['id' => 'rate']) }}
+
+
+
+ {{ html()->label('Quantity')->class('form-label') }}
+ {{ html()->text('qty[]', isset($editable) && $editable ? $item->quantity : null)->class('form-control product-quantity cleave-numeral qty')->placeholder('Enter QTY')->attributes(['id' => 'qty']) }}
+
+
+
+ {{ html()->label('Amount')->class('form-label') }}
+ {{ html()->text('amt[]', isset($editable) && $editable ? $item->amount : null)->class('form-control product-line-price bg-light')->placeholder('Enter Amount')->isReadOnly() }}
+
+
+
+ {{ html()->label('Description')->class('form-label') }}
+ {{ html()->text('desc[]', isset($editable) && $editable ? $item->desc : null)->class('form-control')->placeholder('Enter Description') }}
+
+
+
+
+
+
+
+
diff --git a/Modules/SalesEntry/resources/views/salesEntry/create.blade.php b/Modules/SalesEntry/resources/views/salesEntry/create.blade.php
new file mode 100644
index 0000000..29e79af
--- /dev/null
+++ b/Modules/SalesEntry/resources/views/salesEntry/create.blade.php
@@ -0,0 +1,27 @@
+@extends('layouts.app')
+
+@section('content')
+
+
+
+ @include('layouts.partials.breadcrumb', ['title' => $title])
+
+
+
+
+
+
+
+
+@endsection
+
+@push('js')
+
+@endpush
diff --git a/Modules/SalesEntry/resources/views/salesEntry/edit.blade.php b/Modules/SalesEntry/resources/views/salesEntry/edit.blade.php
new file mode 100644
index 0000000..63c621c
--- /dev/null
+++ b/Modules/SalesEntry/resources/views/salesEntry/edit.blade.php
@@ -0,0 +1,47 @@
+@extends('layouts.app')
+
+@section('content')
+
+
+
+
+
+
+
{{ $title }}
+
+
+
+ Dashboards
+ {{ $title }}
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ html()->modelForm($order, 'PUT')->route('order.update', $id)->class(['needs-validation'])->attributes(['novalidate'])->open() }}
+
+ @include('order::order.partials.action')
+
+ {{ html()->closeModelForm() }}
+
+
+
+
+
+
+
+
+
+
+@endsection
+
+@push('js')
+
+@endpush
diff --git a/Modules/SalesEntry/resources/views/salesEntry/index.blade.php b/Modules/SalesEntry/resources/views/salesEntry/index.blade.php
new file mode 100644
index 0000000..0ab2539
--- /dev/null
+++ b/Modules/SalesEntry/resources/views/salesEntry/index.blade.php
@@ -0,0 +1,68 @@
+@extends('layouts.app')
+
+@section('content')
+
+@endsection
diff --git a/Modules/SalesEntry/resources/views/salesEntry/partials/action.blade.php b/Modules/SalesEntry/resources/views/salesEntry/partials/action.blade.php
new file mode 100644
index 0000000..b00839a
--- /dev/null
+++ b/Modules/SalesEntry/resources/views/salesEntry/partials/action.blade.php
@@ -0,0 +1,219 @@
+
+
Order Details
+
+
+ {{ html()->label('Sales Date')->class('form-label') }}
+ {{ html()->date('sales_date')->class('form-control')->placeholder('Choose Sales Date')->required() }}
+ {{ html()->div('Please choose Sales date')->class('invalid-feedback') }}
+
+
+ {{ html()->label('Customer')->class('form-label') }}
+ {{ html()->select('customer_id', $customerList)->class('form-control')->placeholder('Select Customer')->required() }}
+ {{ html()->div('Please select customer')->class('invalid-feedback') }}
+
+
+
+
+
+
+{{--
+
Shipping Details
+
+
+ {{ html()->label('Address')->class('form-label') }}
+ {{ html()->text('address')->class('form-control')->placeholder('Enter Address') }}
+
+
+
+ {{ html()->label('Shipping Date')->class('form-label') }}
+ {{ html()->date('shiiping_date')->class('form-control')->placeholder('Enter Temporary Address') }}
+
+
--}}
+
+
+
+
+
+ @if ($editable && $salesEntry->salesEntryDetail->isNotEmpty())
+ @foreach ($salesEntry->salesEntryDetail as $item)
+ @include('salesEntry::salesEntry.clone-product')
+ @endforeach
+ @else
+ @include('salesEntry::salesEntry.clone-product')
+ @endif
+
+
+
+
+
+
+
Payment Details
+
+
+
+ {{ html()->label('Payment')->class('form-label') }}
+ {{ html()->text('payment')->class('form-control')->placeholder('Enter Payment') }}
+
+
+
+ {{ html()->label('Mode of Payment')->class('form-label') }}
+ {{ html()->select('paymentmode_id', $paymentModes)->class('form-select select2')->placeholder('Select Payment Mode') }}
+
+
+
+ {{ html()->label('Payment Reference')->class('form-label') }}
+ {{ html()->text('paymentref')->class('form-control')->placeholder('Enter Payment Reference') }}
+
+
+
+
+
+
+ Save
+
+
+
+@push('js')
+
+
+
+
+@endpush
diff --git a/Modules/SalesEntry/resources/views/salesEntry/partials/view.blade.php b/Modules/SalesEntry/resources/views/salesEntry/partials/view.blade.php
new file mode 100644
index 0000000..67a8c0e
--- /dev/null
+++ b/Modules/SalesEntry/resources/views/salesEntry/partials/view.blade.php
@@ -0,0 +1,16 @@
+
diff --git a/Modules/Stocks/app/Providers/.gitkeep b/Modules/SalesEntry/resources/views/salesEntry/show.blade.php
similarity index 100%
rename from Modules/Stocks/app/Providers/.gitkeep
rename to Modules/SalesEntry/resources/views/salesEntry/show.blade.php
diff --git a/Modules/Stocks/app/Repositories/.gitkeep b/Modules/SalesEntry/routes/.gitkeep
similarity index 100%
rename from Modules/Stocks/app/Repositories/.gitkeep
rename to Modules/SalesEntry/routes/.gitkeep
diff --git a/Modules/SalesEntry/routes/api.php b/Modules/SalesEntry/routes/api.php
new file mode 100644
index 0000000..5ec6ac1
--- /dev/null
+++ b/Modules/SalesEntry/routes/api.php
@@ -0,0 +1,19 @@
+prefix('v1')->group(function () {
+ Route::apiResource('salesentry', SalesEntryController::class)->names('salesentry');
+});
diff --git a/Modules/Settings/routes/web.php b/Modules/SalesEntry/routes/web.php
similarity index 62%
rename from Modules/Settings/routes/web.php
rename to Modules/SalesEntry/routes/web.php
index c4e878d..c414f5b 100644
--- a/Modules/Settings/routes/web.php
+++ b/Modules/SalesEntry/routes/web.php
@@ -1,7 +1,7 @@
names('settings');
+ Route::resource('salesEntry', SalesEntryController::class)->names('salesEntry');
+ Route::get('clone-sales-product', [SalesEntryController::class, 'cloneSalesProduct'])->name('salesEntry.cloneSalesProduct');
});
diff --git a/Modules/SalesEntry/vite.config.js b/Modules/SalesEntry/vite.config.js
new file mode 100644
index 0000000..6fba290
--- /dev/null
+++ b/Modules/SalesEntry/vite.config.js
@@ -0,0 +1,26 @@
+import { defineConfig } from 'vite';
+import laravel from 'laravel-vite-plugin';
+
+export default defineConfig({
+ build: {
+ outDir: '../../public/build-salesentry',
+ emptyOutDir: true,
+ manifest: true,
+ },
+ plugins: [
+ laravel({
+ publicDirectory: '../../public',
+ buildDirectory: 'build-salesentry',
+ input: [
+ __dirname + '/resources/assets/sass/app.scss',
+ __dirname + '/resources/assets/js/app.js'
+ ],
+ refresh: true,
+ }),
+ ],
+});
+
+//export const paths = [
+// 'Modules/SalesEntry/resources/assets/sass/app.scss',
+// 'Modules/SalesEntry/resources/assets/js/app.js',
+//];
\ No newline at end of file
diff --git a/Modules/Stocks/config/.gitkeep b/Modules/Setting/app/Http/Controllers/.gitkeep
similarity index 100%
rename from Modules/Stocks/config/.gitkeep
rename to Modules/Setting/app/Http/Controllers/.gitkeep
diff --git a/Modules/Setting/app/Http/Controllers/SettingController.php b/Modules/Setting/app/Http/Controllers/SettingController.php
new file mode 100644
index 0000000..b19725d
--- /dev/null
+++ b/Modules/Setting/app/Http/Controllers/SettingController.php
@@ -0,0 +1,106 @@
+settingRepository = $settingRepository;
+ }
+
+ public function index()
+ {
+ $data['title'] = 'Categories List';
+ $data['categories'] = $this->settingRepository->findAll();
+ return view('setting::setting.edit', $data);
+ }
+
+ /**
+ * Show the form for creating a new resource.
+ */
+ public function create()
+ {
+ $data['title'] = 'Create Setting';
+ $data['status'] = Setting::STATUS;
+
+ return view('setting::setting.edit', $data);
+ }
+
+ /**
+ * Store a newly created resource in storage.
+ */
+ public function store(Request $request): RedirectResponse
+ {
+ $inputData = $request->all();
+ $this->settingRepository->create($inputData);
+ toastr()->success('Setting Created Succesfully');
+ $data['setting'] = $this->settingRepository->getSettingById($request->id);
+
+ return redirect()->route('setting.edit');
+ }
+
+ /**
+ * Show the specified resource.
+ */
+ public function show($id)
+ {
+ $data['title'] = 'Show Setting';
+ $data['status'] = Setting::STATUS;
+ $data['setting'] = $this->settingRepository->getSettingById($id);
+
+ return view('setting::setting.edit', $data);
+ }
+
+ /**
+ * Show the form for editing the specified resource.
+ */
+ public function edit($id)
+ {
+ $data['title'] = 'Edit Setting';
+ $data['status'] = Setting::STATUS;
+
+ $data['setting'] = $this->settingRepository->getSettingById($id);
+
+ return view('setting::setting.edit', $data);
+ }
+
+ /**
+ * Update the specified resource in storage.
+ */
+ public function update(Request $request, $id): RedirectResponse
+ {
+ $inputData = $request->except(['_method', '_token']);
+ $this->settingRepository->update($id, $inputData);
+ $data['setting'] = $this->settingRepository->getSettingById($id);
+
+ return redirect()->route('setting.edit',$data);
+ }
+
+ /**
+ * Remove the specified resource from storage.
+ */
+ public function destroy($id)
+ {
+ try {
+ $SettingModel = $this->settingRepository->getSettingById($id);
+ $SettingModel->delete();
+
+ toastr()->success('Product Delete Succesfully');
+ } catch (\Throwable $th) {
+ toastr()->error($th->getMessage());
+ }
+
+ return response()->json(['status' => true, 'message' => 'Setting Delete Succesfully']);
+ }
+}
diff --git a/Modules/Stocks/database/factories/.gitkeep b/Modules/Setting/app/Http/Requests/.gitkeep
similarity index 100%
rename from Modules/Stocks/database/factories/.gitkeep
rename to Modules/Setting/app/Http/Requests/.gitkeep
diff --git a/Modules/Stocks/database/migrations/.gitkeep b/Modules/Setting/app/Models/.gitkeep
similarity index 100%
rename from Modules/Stocks/database/migrations/.gitkeep
rename to Modules/Setting/app/Models/.gitkeep
diff --git a/Modules/Settings/app/Models/Setting.php b/Modules/Setting/app/Models/Setting.php
similarity index 86%
rename from Modules/Settings/app/Models/Setting.php
rename to Modules/Setting/app/Models/Setting.php
index 1f4f1b5..8f810da 100644
--- a/Modules/Settings/app/Models/Setting.php
+++ b/Modules/Setting/app/Models/Setting.php
@@ -1,6 +1,6 @@
group(module_path('Settings', '/routes/web.php'));
+ Route::middleware('web')->group(module_path('Setting', '/routes/web.php'));
}
/**
@@ -44,6 +44,6 @@ class RouteServiceProvider extends ServiceProvider
*/
protected function mapApiRoutes(): void
{
- Route::middleware('api')->prefix('api')->name('api.')->group(module_path('Settings', '/routes/api.php'));
+ Route::middleware('api')->prefix('api')->name('api.')->group(module_path('Setting', '/routes/api.php'));
}
}
diff --git a/Modules/Stocks/app/Providers/StocksServiceProvider.php b/Modules/Setting/app/Providers/SettingServiceProvider.php
similarity index 94%
rename from Modules/Stocks/app/Providers/StocksServiceProvider.php
rename to Modules/Setting/app/Providers/SettingServiceProvider.php
index 78b0f5e..3d51576 100644
--- a/Modules/Stocks/app/Providers/StocksServiceProvider.php
+++ b/Modules/Setting/app/Providers/SettingServiceProvider.php
@@ -1,15 +1,15 @@
paginate(20);
+ }
+
+ public function getSettingById($SettingId)
+ {
+ return Setting::findOrFail($SettingId);
+ }
+
+ public function getSettingByEmail($email)
+ {
+ return Setting::where('email', $email)->first();
+ }
+
+ public function delete($SettingId)
+ {
+ Setting::destroy($SettingId);
+ }
+
+ public function create($SettingDetails)
+ {
+ return Setting::create($SettingDetails);
+ }
+
+ public function update($SettingId, array $newDetails)
+ {
+ return Setting::whereId($SettingId)->update($newDetails);
+ }
+
+ public function pluck()
+ {
+ return Setting::pluck('title', 'id');
+ }
+
+}
diff --git a/Modules/Settings/composer.json b/Modules/Setting/composer.json
similarity index 57%
rename from Modules/Settings/composer.json
rename to Modules/Setting/composer.json
index fdda8d8..e39a83b 100644
--- a/Modules/Settings/composer.json
+++ b/Modules/Setting/composer.json
@@ -1,5 +1,5 @@
{
- "name": "nwidart/settings",
+ "name": "nwidart/setting",
"description": "",
"authors": [
{
@@ -17,14 +17,14 @@
},
"autoload": {
"psr-4": {
- "Modules\\Settings\\": "app/",
- "Modules\\Settings\\Database\\Factories\\": "database/factories/",
- "Modules\\Settings\\Database\\Seeders\\": "database/seeders/"
+ "Modules\\Setting\\": "app/",
+ "Modules\\Setting\\Database\\Factories\\": "database/factories/",
+ "Modules\\Setting\\Database\\Seeders\\": "database/seeders/"
}
},
"autoload-dev": {
"psr-4": {
- "Modules\\Settings\\Tests\\": "tests/"
+ "Modules\\Setting\\Tests\\": "tests/"
}
}
}
diff --git a/Modules/Stocks/routes/.gitkeep b/Modules/Setting/config/.gitkeep
similarity index 100%
rename from Modules/Stocks/routes/.gitkeep
rename to Modules/Setting/config/.gitkeep
diff --git a/Modules/Setting/config/config.php b/Modules/Setting/config/config.php
new file mode 100644
index 0000000..52d4a8e
--- /dev/null
+++ b/Modules/Setting/config/config.php
@@ -0,0 +1,5 @@
+ 'Setting',
+];
diff --git a/Modules/Stocks/resources/assets/js/app.js b/Modules/Setting/database/factories/.gitkeep
similarity index 100%
rename from Modules/Stocks/resources/assets/js/app.js
rename to Modules/Setting/database/factories/.gitkeep
diff --git a/Modules/Stocks/resources/assets/sass/app.scss b/Modules/Setting/database/migrations/.gitkeep
similarity index 100%
rename from Modules/Stocks/resources/assets/sass/app.scss
rename to Modules/Setting/database/migrations/.gitkeep
diff --git a/Modules/Setting/database/seeders/.gitkeep b/Modules/Setting/database/seeders/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/Modules/Settings/database/seeders/SettingsDatabaseSeeder.php b/Modules/Setting/database/seeders/SettingDatabaseSeeder.php
similarity index 64%
rename from Modules/Settings/database/seeders/SettingsDatabaseSeeder.php
rename to Modules/Setting/database/seeders/SettingDatabaseSeeder.php
index 4d6e058..3a5799a 100644
--- a/Modules/Settings/database/seeders/SettingsDatabaseSeeder.php
+++ b/Modules/Setting/database/seeders/SettingDatabaseSeeder.php
@@ -1,10 +1,10 @@
+
+
+ @include('layouts.partials.breadcrumb', ['title' => $title])
+
+
+ {{ html()->modelForm($setting, 'PUT')->route('setting.update', $setting->id)->class(['needs-validation'])->attributes(['novalidate', 'enctype' => 'multipart/form-data'])->open() }}
+
+ @include('setting::setting.partials.action')
+
+ {{ html()->closeModelForm() }}
+
+
+
+
+@endsection
+
+@push('js')
+
+@endpush
diff --git a/Modules/Setting/resources/views/Setting/partials/action.blade.php b/Modules/Setting/resources/views/Setting/partials/action.blade.php
new file mode 100644
index 0000000..bc5e473
--- /dev/null
+++ b/Modules/Setting/resources/views/Setting/partials/action.blade.php
@@ -0,0 +1,164 @@
+
+
+
+
+
+
+ {{ html()->label('Title')->class('form-label') }}
+ {{ html()->text('title')->class('form-control')->placeholder('Enter Title')->required() }}
+
+
+
+ {{ html()->label('Description')->class('form-label') }}
+ {{ html()->textarea('description')->class('form-control')->placeholder('Enter Description')->required() }}
+
+
+
+ {{ html()->label('url1')->class('form-label') }}
+ {{ html()->text('url1')->class('form-control')->placeholder('Enter url1') }}
+
+
+
+ {{ html()->label('url2')->class('form-label') }}
+ {{ html()->text('url2')->class('form-control')->placeholder('Enter url2') }}
+
+
+
+ {{ html()->label('email')->class('form-label') }}
+ {{ html()->text('email')->class('form-control')->placeholder('Enter email') }}
+
+
+
+ {{ html()->label('phone')->class('form-label') }}
+ {{ html()->text('phone')->class('form-control')->placeholder('Enter phone') }}
+
+
+
+ {{ html()->label('secondary_phone')->class('form-label') }}
+ {{ html()->text('secondary_phone')->class('form-control')->placeholder('Enter secondary_phone') }}
+
+
+
+ {{ html()->label('google_map')->class('form-label') }}
+ {{ html()->text('google_map')->class('form-control')->placeholder('Enter google_map') }}
+
+
+
+ {{ html()->label('fb')->class('form-label') }}
+ {{ html()->text('fb')->class('form-control')->placeholder('Enter fb') }}
+
+
+
+ {{ html()->label('insta')->class('form-label') }}
+ {{ html()->text('insta')->class('form-control')->placeholder('Enter insta') }}
+
+
+
+ {{ html()->label('twitter')->class('form-label') }}
+ {{ html()->text('twitter')->class('form-control')->placeholder('Enter twitter') }}
+
+
+
+ {{ html()->label('tiktok')->class('form-label') }}
+ {{ html()->text('tiktok')->class('form-control')->placeholder('Enter tiktok') }}
+
+
+
+ {{ html()->label('copyright_text')->class('form-label') }}
+ {{ html()->text('copyright_text')->class('form-control')->placeholder('Enter copyright_text') }}
+
+
+
+ {{ html()->label('content1')->class('form-label') }}
+ {{ html()->text('content1')->class('form-control')->placeholder('Enter content1') }}
+
+
+
+ {{ html()->label('content2')->class('form-label') }}
+ {{ html()->text('content2')->class('form-control')->placeholder('Enter content2') }}
+
+
+
+ {{ html()->label('content3')->class('form-label') }}
+ {{ html()->text('content3')->class('form-control')->placeholder('Enter content3') }}
+
+
+
+ {{ html()->label('seo_title')->class('form-label') }}
+ {{ html()->text('seo_title')->class('form-control')->placeholder('Enter seo_title') }}
+
+
+
+ {{ html()->label('seo_description')->class('form-label') }}
+ {{ html()->textarea('seo_description')->class('form-control')->placeholder('Enter seo_description')->required() }}
+
+
+
+ {{ html()->label('seo_keywords')->class('form-label') }}
+ {{ html()->textarea('seo_keywords')->class('form-control')->placeholder('Enter seo_keywords')->required() }}
+
+
+
+ {{ html()->label('og_tags')->class('form-label') }}
+ {{ html()->textarea('og_tags')->class('form-control')->placeholder('Enter og_tags')->required() }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ html()->label('primary_logo')->class('form-label') }}
+ {{ html()->file('primary_logo')->class('form-control') }}
+
+
+
+ {{ html()->label('secondary_logo')->class('form-label') }}
+ {{ html()->file('secondary_logo')->class('form-control') }}
+
+
+
+ {{ html()->label('thumb')->class('form-label') }}
+ {{ html()->file('thumb')->class('form-control') }}
+
+
+
+ {{ html()->label('icon')->class('form-label') }}
+ {{ html()->file('icon')->class('form-control') }}
+
+
+
+ {{ html()->label('og_image')->class('form-label') }}
+ {{ html()->file('og_image')->class('form-control') }}
+
+
+
+ {{ html()->label('no_image')->class('form-label') }}
+ {{ html()->file('no_image')->class('form-control') }}
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Modules/Setting/resources/views/index.blade.php b/Modules/Setting/resources/views/index.blade.php
new file mode 100644
index 0000000..8f3043f
--- /dev/null
+++ b/Modules/Setting/resources/views/index.blade.php
@@ -0,0 +1,7 @@
+@extends('setting::layouts.master')
+
+@section('content')
+
Hello World
+
+
Module: {!! config('setting.name') !!}
+@endsection
diff --git a/Modules/Settings/resources/views/layouts/master.blade.php b/Modules/Setting/resources/views/layouts/master.blade.php
similarity index 76%
rename from Modules/Settings/resources/views/layouts/master.blade.php
rename to Modules/Setting/resources/views/layouts/master.blade.php
index cf6bb7e..6c5ee6b 100644
--- a/Modules/Settings/resources/views/layouts/master.blade.php
+++ b/Modules/Setting/resources/views/layouts/master.blade.php
@@ -7,7 +7,7 @@
-
Settings Module - {{ config('app.name', 'Laravel') }}
+
Setting Module - {{ config('app.name', 'Laravel') }}
@@ -18,12 +18,12 @@
{{-- Vite CSS --}}
- {{-- {{ module_vite('build-settings', 'resources/assets/sass/app.scss') }} --}}
+ {{-- {{ module_vite('build-setting', 'resources/assets/sass/app.scss') }} --}}
@yield('content')
{{-- Vite JS --}}
- {{-- {{ module_vite('build-settings', 'resources/assets/js/app.js') }} --}}
+ {{-- {{ module_vite('build-setting', 'resources/assets/js/app.js') }} --}}
diff --git a/Modules/Setting/routes/.gitkeep b/Modules/Setting/routes/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/Modules/Settings/routes/api.php b/Modules/Setting/routes/api.php
similarity index 78%
rename from Modules/Settings/routes/api.php
rename to Modules/Setting/routes/api.php
index 27956d4..9926781 100644
--- a/Modules/Settings/routes/api.php
+++ b/Modules/Setting/routes/api.php
@@ -1,7 +1,7 @@
prefix('v1')->group(function () {
- Route::apiResource('settings', SettingsController::class)->names('settings');
+ Route::apiResource('setting', SettingController::class)->names('setting');
});
diff --git a/Modules/Stocks/routes/web.php b/Modules/Setting/routes/web.php
similarity index 77%
rename from Modules/Stocks/routes/web.php
rename to Modules/Setting/routes/web.php
index 00e17f8..5e54412 100644
--- a/Modules/Stocks/routes/web.php
+++ b/Modules/Setting/routes/web.php
@@ -1,7 +1,7 @@
names('stocks');
+ Route::resource('setting', SettingController::class)->names('setting');
});
diff --git a/Modules/Settings/vite.config.js b/Modules/Setting/vite.config.js
similarity index 70%
rename from Modules/Settings/vite.config.js
rename to Modules/Setting/vite.config.js
index 6d947b7..69f4ca7 100644
--- a/Modules/Settings/vite.config.js
+++ b/Modules/Setting/vite.config.js
@@ -3,14 +3,14 @@ import laravel from 'laravel-vite-plugin';
export default defineConfig({
build: {
- outDir: '../../public/build-settings',
+ outDir: '../../public/build-setting',
emptyOutDir: true,
manifest: true,
},
plugins: [
laravel({
publicDirectory: '../../public',
- buildDirectory: 'build-settings',
+ buildDirectory: 'build-setting',
input: [
__dirname + '/resources/assets/sass/app.scss',
__dirname + '/resources/assets/js/app.js'
@@ -21,6 +21,6 @@ export default defineConfig({
});
//export const paths = [
-// 'Modules/Settings/resources/assets/sass/app.scss',
-// 'Modules/Settings/resources/assets/js/app.js',
+// 'Modules/Setting/resources/assets/sass/app.scss',
+// 'Modules/Setting/resources/assets/js/app.js',
//];
\ No newline at end of file
diff --git a/Modules/Settings/app/Http/Controllers/SettingsController.php b/Modules/Settings/app/Http/Controllers/SettingsController.php
deleted file mode 100644
index 94f239d..0000000
--- a/Modules/Settings/app/Http/Controllers/SettingsController.php
+++ /dev/null
@@ -1,67 +0,0 @@
- 'Settings',
-];
diff --git a/Modules/Settings/module.json b/Modules/Settings/module.json
deleted file mode 100644
index c5dbc13..0000000
--- a/Modules/Settings/module.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "name": "Settings",
- "alias": "settings",
- "description": "",
- "keywords": [],
- "priority": 0,
- "providers": [
- "Modules\\Settings\\Providers\\SettingsServiceProvider"
- ],
- "files": []
-}
diff --git a/Modules/Settings/resources/views/index.blade.php b/Modules/Settings/resources/views/index.blade.php
deleted file mode 100644
index d794cc8..0000000
--- a/Modules/Settings/resources/views/index.blade.php
+++ /dev/null
@@ -1,7 +0,0 @@
-@extends('settings::layouts.master')
-
-@section('content')
-
Hello World
-
-
Module: {!! config('settings.name') !!}
-@endsection
diff --git a/Modules/Stock/app/Http/Controllers/.gitkeep b/Modules/Stock/app/Http/Controllers/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/Modules/Stock/app/Http/Controllers/StockController.php b/Modules/Stock/app/Http/Controllers/StockController.php
new file mode 100644
index 0000000..44c7101
--- /dev/null
+++ b/Modules/Stock/app/Http/Controllers/StockController.php
@@ -0,0 +1,97 @@
+stockRepository = $stockRepository;
+ $this->productRepository = $productRepository;
+ $this->stockLocationRepository = $stockLocationRepository;
+
+ }
+
+ public function index()
+ {
+ $data['title'] = 'Stocks List';
+ $data['stocks'] = $this->stockRepository->findAll();
+ return view('stock::stock.index', $data);
+ }
+
+ public function create()
+ {
+ $data['title'] = 'Create Stock';
+ $data['stockLocation'] = $this->stockLocationRepository->pluck();
+ $data['product'] = $this->productRepository->pluck();
+ $data['status'] = Stock::STATUS;
+
+ return view('stock::stock.create', $data);
+ }
+
+ public function store(Request $request): RedirectResponse
+ {
+ $request->request->add(['slug' => slugify($request->title)]);
+ $inputData = $request->all();
+ $this->stockRepository->create($inputData);
+ toastr()->success('Stock Created Successfully');
+
+ return redirect()->route('stock.index');
+ }
+
+ public function show($id)
+ {
+ $data['title'] = 'Show Stock';
+ $data['status'] = Stock::STATUS;
+ $data['stock'] = $this->stockRepository->getStockById($id);
+
+ return view('stock::stock.show', $data);
+ }
+
+ public function edit($id)
+ {
+ $data['title'] = 'Edit Stock';
+ $data['stockLocation'] = $this->stockLocationRepository->pluck();
+ $data['product'] = $this->productRepository->pluck();
+ $data['status'] = Stock::STATUS;
+ $data['stock'] = $this->stockRepository->getStockById($id);
+
+ return view('stock::stock.edit', $data);
+ }
+
+ public function update(Request $request, $id): RedirectResponse
+ {
+ $inputData = $request->except(['_method', '_token']);
+ $this->stockRepository->update($id, $inputData);
+
+ return redirect()->route('stock.index');
+ }
+
+ public function destroy($id)
+ {
+ try {
+ $stock = $this->stockRepository->getStockById($id);
+ $stock->delete();
+
+ toastr()->success('Stock Deleted Successfully');
+ } catch (\Throwable $th) {
+ toastr()->error($th->getMessage());
+ }
+
+ return response()->json(['status' => true, 'message' => 'Stock Deleted Successfully']);
+ }
+}
diff --git a/Modules/Stock/app/Http/Controllers/StockLocationController.php b/Modules/Stock/app/Http/Controllers/StockLocationController.php
new file mode 100644
index 0000000..71469be
--- /dev/null
+++ b/Modules/Stock/app/Http/Controllers/StockLocationController.php
@@ -0,0 +1,84 @@
+stockLocationRepository = $stockLocationRepository;
+ }
+
+ public function index()
+ {
+ $data['title'] = 'Stocks List';
+ $data['stockLocations'] = $this->stockLocationRepository->findAll();
+ return view('stock::stockLocation.index', $data);
+ }
+
+ public function create()
+ {
+ $data['title'] = 'Create StockLocation';
+ $data['status'] = StockLocation::STATUS;
+
+ return view('stock::stockLocation.create', $data);
+ }
+
+ public function store(Request $request): RedirectResponse
+ {
+ $request->request->add(['slug' => slugify($request->title)]);
+ $inputData = $request->all();
+ $this->stockLocationRepository->create($inputData);
+ toastr()->success('StockLocation Created Successfully');
+
+ return redirect()->route('stockLocation.index');
+ }
+
+ public function show($id)
+ {
+ $data['title'] = 'Show StockLocation';
+ $data['status'] = StockLocation::STATUS;
+ $data['stockLocation'] = $this->stockLocationRepository->getStockLocationById($id);
+
+ return view('stock::stockLocation.show', $data);
+ }
+
+ public function edit($id)
+ {
+ $data['title'] = 'Edit StockLocation';
+ $data['status'] = StockLocation::STATUS;
+ $data['stockLocation'] = $this->stockLocationRepository->getStockLocationById($id);
+
+ return view('stock::stockLocation.edit', $data);
+ }
+
+ public function update(Request $request, $id): RedirectResponse
+ {
+ $inputData = $request->except(['_method', '_token']);
+ $this->stockLocationRepository->update($id, $inputData);
+
+ return redirect()->route('stockLocation.index');
+ }
+
+ public function destroy($id)
+ {
+ try {
+ $stock = $this->stockLocationRepository->getStockLocationById($id);
+ $stock->delete();
+
+ toastr()->success('Stock Location Deleted Successfully');
+ } catch (\Throwable $th) {
+ toastr()->error($th->getMessage());
+ }
+
+ return response()->json(['status' => true, 'message' => 'Stock Location Deleted Successfully']);
+ }
+}
diff --git a/Modules/Stock/app/Http/Requests/.gitkeep b/Modules/Stock/app/Http/Requests/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/Modules/Stock/app/Models/.gitkeep b/Modules/Stock/app/Models/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/Modules/Stock/app/Models/Stock.php b/Modules/Stock/app/Models/Stock.php
new file mode 100644
index 0000000..6b0373d
--- /dev/null
+++ b/Modules/Stock/app/Models/Stock.php
@@ -0,0 +1,27 @@
+belongsTo(StockLocation::class, 'stocklocation_id');
+ }
+
+ public function product()
+ {
+ return $this->belongsTo(Product::class, 'product_id');
+ }
+}
+
diff --git a/Modules/Stocks/app/Models/Stock.php b/Modules/Stock/app/Models/StockLocation.php
similarity index 52%
rename from Modules/Stocks/app/Models/Stock.php
rename to Modules/Stock/app/Models/StockLocation.php
index 09025a7..62167f7 100644
--- a/Modules/Stocks/app/Models/Stock.php
+++ b/Modules/Stock/app/Models/StockLocation.php
@@ -1,15 +1,16 @@
group(module_path('Stocks', '/routes/web.php'));
+ Route::middleware('web')->group(module_path('Stock', '/routes/web.php'));
}
/**
@@ -44,6 +44,6 @@ class RouteServiceProvider extends ServiceProvider
*/
protected function mapApiRoutes(): void
{
- Route::middleware('api')->prefix('api')->name('api.')->group(module_path('Stocks', '/routes/api.php'));
+ Route::middleware('api')->prefix('api')->name('api.')->group(module_path('Stock', '/routes/api.php'));
}
}
diff --git a/Modules/Settings/app/Providers/SettingsServiceProvider.php b/Modules/Stock/app/Providers/StockServiceProvider.php
similarity index 90%
rename from Modules/Settings/app/Providers/SettingsServiceProvider.php
rename to Modules/Stock/app/Providers/StockServiceProvider.php
index 2c3dc36..9cf7f12 100644
--- a/Modules/Settings/app/Providers/SettingsServiceProvider.php
+++ b/Modules/Stock/app/Providers/StockServiceProvider.php
@@ -1,15 +1,17 @@
app->register(EventServiceProvider::class);
$this->app->register(RouteServiceProvider::class);
+ $this->app->bind(StockInterface::class, StockRepository::class);
}
/**
diff --git a/Modules/Stock/app/Repositories/.gitkeep b/Modules/Stock/app/Repositories/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/Modules/Stock/app/Repositories/StockInterface.php b/Modules/Stock/app/Repositories/StockInterface.php
new file mode 100644
index 0000000..5b87f54
--- /dev/null
+++ b/Modules/Stock/app/Repositories/StockInterface.php
@@ -0,0 +1,15 @@
+paginate(20);
+ }
+
+ public function getStockLocationById($StockLocationId)
+ {
+ return StockLocation::findOrFail($StockLocationId);
+ }
+
+ public function getStockLocationByEmail($email)
+ {
+ return StockLocation::where('email', $email)->first();
+ }
+
+ public function delete($StockLocationId)
+ {
+ StockLocation::destroy($StockLocationId);
+ }
+
+ public function create($StockLocationDetails)
+ {
+ return StockLocation::create($StockLocationDetails);
+ }
+
+ public function update($StockLocationId, array $newDetails)
+ {
+ return StockLocation::whereId($StockLocationId)->update($newDetails);
+ }
+
+ public function pluck()
+ {
+ return StockLocation::pluck('title', 'id');
+ }
+
+}
diff --git a/Modules/Stock/app/Repositories/StockRepository.php b/Modules/Stock/app/Repositories/StockRepository.php
new file mode 100644
index 0000000..e4f91ce
--- /dev/null
+++ b/Modules/Stock/app/Repositories/StockRepository.php
@@ -0,0 +1,46 @@
+paginate(20);
+ }
+
+ public function getStockById($StockId)
+ {
+ return Stock::findOrFail($StockId);
+ }
+
+ public function getStockByEmail($email)
+ {
+ return Stock::where('email', $email)->first();
+ }
+
+ public function delete($StockId)
+ {
+ Stock::destroy($StockId);
+ }
+
+ public function create($StockDetails)
+ {
+ return Stock::create($StockDetails);
+ }
+
+ public function update($StockId, array $newDetails)
+ {
+ return Stock::whereId($StockId)->update($newDetails);
+ }
+
+ public function pluck()
+ {
+ return Stock::pluck('title', 'id');
+ }
+
+}
diff --git a/Modules/Stocks/composer.json b/Modules/Stock/composer.json
similarity index 58%
rename from Modules/Stocks/composer.json
rename to Modules/Stock/composer.json
index 56f1583..c67f774 100644
--- a/Modules/Stocks/composer.json
+++ b/Modules/Stock/composer.json
@@ -1,5 +1,5 @@
{
- "name": "nwidart/stocks",
+ "name": "nwidart/stock",
"description": "",
"authors": [
{
@@ -17,14 +17,14 @@
},
"autoload": {
"psr-4": {
- "Modules\\Stocks\\": "app/",
- "Modules\\Stocks\\Database\\Factories\\": "database/factories/",
- "Modules\\Stocks\\Database\\Seeders\\": "database/seeders/"
+ "Modules\\Stock\\": "app/",
+ "Modules\\Stock\\Database\\Factories\\": "database/factories/",
+ "Modules\\Stock\\Database\\Seeders\\": "database/seeders/"
}
},
"autoload-dev": {
"psr-4": {
- "Modules\\Stocks\\Tests\\": "tests/"
+ "Modules\\Stock\\Tests\\": "tests/"
}
}
}
diff --git a/Modules/Stock/config/.gitkeep b/Modules/Stock/config/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/Modules/Stock/config/config.php b/Modules/Stock/config/config.php
new file mode 100644
index 0000000..d6986d7
--- /dev/null
+++ b/Modules/Stock/config/config.php
@@ -0,0 +1,5 @@
+ 'Stock',
+];
diff --git a/Modules/Stock/database/factories/.gitkeep b/Modules/Stock/database/factories/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/Modules/Stock/database/migrations/.gitkeep b/Modules/Stock/database/migrations/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/Modules/Stock/database/seeders/.gitkeep b/Modules/Stock/database/seeders/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/Modules/Stocks/database/seeders/StocksDatabaseSeeder.php b/Modules/Stock/database/seeders/StockDatabaseSeeder.php
similarity index 65%
rename from Modules/Stocks/database/seeders/StocksDatabaseSeeder.php
rename to Modules/Stock/database/seeders/StockDatabaseSeeder.php
index 366f235..dbcf13a 100644
--- a/Modules/Stocks/database/seeders/StocksDatabaseSeeder.php
+++ b/Modules/Stock/database/seeders/StockDatabaseSeeder.php
@@ -1,10 +1,10 @@
+
+ @include('layouts.partials.breadcrumb', ['title' => $title])
+
+ {{ html()->form('POST')->route('stock.store')->class(['needs-validation'])->attributes(['novalidate', 'enctype' => 'multipart/form-data'])->open() }}
+
+ @include('stock::stock.partials.action')
+
+ {{ html()->form()->close() }}
+
+
+@endsection
+
+@push('js')
+
+@endpush
diff --git a/Modules/Stock/resources/views/Stock/edit.blade.php b/Modules/Stock/resources/views/Stock/edit.blade.php
new file mode 100644
index 0000000..98f12c2
--- /dev/null
+++ b/Modules/Stock/resources/views/Stock/edit.blade.php
@@ -0,0 +1,23 @@
+@extends('layouts.app')
+
+@section('content')
+
+
+
+ @include('layouts.partials.breadcrumb', ['title' => $title])
+
+
+ {{ html()->modelForm($stock, 'PUT')->route('stock.update', $stock->id)->class(['needs-validation'])->attributes(['novalidate', 'enctype' => 'multipart/form-data'])->open() }}
+
+ @include('stock::stock.partials.action')
+
+ {{ html()->closeModelForm() }}
+
+
+
+
+@endsection
+
+@push('js')
+
+@endpush
diff --git a/Modules/Stock/resources/views/Stock/index.blade.php b/Modules/Stock/resources/views/Stock/index.blade.php
new file mode 100644
index 0000000..dfbe8b3
--- /dev/null
+++ b/Modules/Stock/resources/views/Stock/index.blade.php
@@ -0,0 +1,83 @@
+@extends('layouts.app')
+
+@section('content')
+
+
+ @include('layouts.partials.breadcrumb', ['title' => $title])
+
+
+
+ @can('stock.create')
+
Add
+ @endcan
+
+
+
+
+
+
+@endsection
diff --git a/Modules/Stock/resources/views/Stock/partials/action.blade.php b/Modules/Stock/resources/views/Stock/partials/action.blade.php
new file mode 100644
index 0000000..f65ece1
--- /dev/null
+++ b/Modules/Stock/resources/views/Stock/partials/action.blade.php
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+ {{ html()->label('Title')->class('form-label') }}
+ {{ html()->text('title')->class('form-control')->placeholder('Enter Title')->required() }}
+
+
+
+ {{ html()->label('Stock Location')->class('form-label') }}
+ {{ html()->select('stocklocation_id', $stockLocation)->class('form-select select2')->placeholder('Select Stock Location')->id('stockLocation_id')->required() }}
+
+
+
+ {{ html()->label('Product')->class('form-label') }}
+ {{ html()->select('product_id', $product)->class('form-select select2')->placeholder('Select Product')->id('product_id')->required() }}
+
+
+
+ {{ html()->label('S')->class('form-label') }}
+ {{ html()->text('s')->class('form-control')->placeholder('Enter S') }}
+
+
+
+ {{ html()->label('M')->class('form-label') }}
+ {{ html()->text('m')->class('form-control')->placeholder('Enter M') }}
+
+
+
+ {{ html()->label('L')->class('form-label') }}
+ {{ html()->text('l')->class('form-control')->placeholder('Enter L') }}
+
+
+
+ {{ html()->label('xl')->class('form-label') }}
+ {{ html()->text('xl')->class('form-control')->placeholder('Enter xl') }}
+
+
+
+ {{ html()->label('xxl')->class('form-label') }}
+ {{ html()->text('xxl')->class('form-control')->placeholder('Enter xxl') }}
+
+
+
+ {{ html()->label('xxxl')->class('form-label') }}
+ {{ html()->text('xxxl')->class('form-control')->placeholder('Enter xxxl') }}
+
+
+
+ {{ html()->label('fs')->class('form-label') }}
+ {{ html()->text('fs')->class('form-control')->placeholder('Enter fs') }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ html()->label('Status')->class('form-label') }}
+ {{ html()->select('status', $status)->class('form-control')->placeholder('Select Status')->required() }}
+
+
+
+
+
+
diff --git a/Modules/Stock/resources/views/Stock/show.blade.php b/Modules/Stock/resources/views/Stock/show.blade.php
new file mode 100644
index 0000000..c3c736d
--- /dev/null
+++ b/Modules/Stock/resources/views/Stock/show.blade.php
@@ -0,0 +1,82 @@
+@extends('layouts.app')
+
+@section('content')
+
+
+ @include('layouts.partials.breadcrumb', ['title' => $title])
+
+
+
+
+
+
+
+
+
+ Stock Name
+ {{ $stock->title }}
+
+
+ Stock Location
+ {{ ($stock->stockLocation)->title }}
+
+
+ Product
+ {{ ($stock->product)->title }}
+
+
+ Product Code
+ {{ ($stock->product)->code }}
+
+
+ S
+ {{ $stock->s }}
+
+
+ M
+ {{ $stock->m }}
+
+
+ L
+ {{ $stock->l }}
+
+
+ XL
+ {{ $stock->xl }}
+
+
+ XXL
+ {{ $stock->xxl }}
+
+
+ XXXL
+ {{ $stock->xxxl }}
+
+
+ FS
+ {{ $stock->fs }}
+
+
+
+ Status
+ {{ $stock->status }}
+
+
+
+
+
+
+
+
+
+
+
+
+@endsection
+
+@push('js')
+
+@endpush
diff --git a/Modules/Stock/resources/views/StockLocation/create.blade.php b/Modules/Stock/resources/views/StockLocation/create.blade.php
new file mode 100644
index 0000000..80f10d2
--- /dev/null
+++ b/Modules/Stock/resources/views/StockLocation/create.blade.php
@@ -0,0 +1,16 @@
+@extends('layouts.app')
+
+@section('content')
+
+
+ @include('layouts.partials.breadcrumb', ['title' => $title])
+ {{ html()->form('POST')->route('stockLocation.store')->class(['needs-validation'])->attributes(['novalidate', 'enctype' => 'multipart/form-data'])->open() }}
+ @include('stock::stocklocation.partials.action')
+ {{ html()->form()->close() }}
+
+
+@endsection
+
+@push('js')
+
+@endpush
diff --git a/Modules/Stock/resources/views/StockLocation/edit.blade.php b/Modules/Stock/resources/views/StockLocation/edit.blade.php
new file mode 100644
index 0000000..4da4769
--- /dev/null
+++ b/Modules/Stock/resources/views/StockLocation/edit.blade.php
@@ -0,0 +1,23 @@
+@extends('layouts.app')
+
+@section('content')
+
+
+
+ @include('layouts.partials.breadcrumb', ['title' => $title])
+
+
+ {{ html()->modelForm($stockLocation, 'PUT')->route('stockLocation.update', $stockLocation->id)->class(['needs-validation'])->attributes(['novalidate', 'enctype' => 'multipart/form-data'])->open() }}
+
+ @include('stock::stockLocation.partials.action')
+
+ {{ html()->closeModelForm() }}
+
+
+
+
+@endsection
+
+@push('js')
+
+@endpush
diff --git a/Modules/Stock/resources/views/StockLocation/index.blade.php b/Modules/Stock/resources/views/StockLocation/index.blade.php
new file mode 100644
index 0000000..38ba715
--- /dev/null
+++ b/Modules/Stock/resources/views/StockLocation/index.blade.php
@@ -0,0 +1,70 @@
+@extends('layouts.app')
+
+@section('content')
+
+
+ @include('layouts.partials.breadcrumb', ['title' => $title])
+
+
+
+ @can('stockLocation.create')
+
Add
+ @endcan
+
+
+
+
+
+
+@endsection
diff --git a/Modules/Stock/resources/views/StockLocation/partials/action.blade.php b/Modules/Stock/resources/views/StockLocation/partials/action.blade.php
new file mode 100644
index 0000000..0390e66
--- /dev/null
+++ b/Modules/Stock/resources/views/StockLocation/partials/action.blade.php
@@ -0,0 +1,54 @@
+
+
+
+
+
+
+
+ {{ html()->label('Title')->class('form-label') }}
+ {{ html()->text('title')->class('form-control')->placeholder('Enter Title')->required() }}
+
+
+
+ {{ html()->label('Description')->class('form-label') }}
+ {{ html()->text('description')->class('form-control')->placeholder('Enter Description') }}
+
+
+
+ {{ html()->label('Remarks')->class('form-label') }}
+ {{ html()->text('remarks')->class('form-control')->placeholder('Enter Remarks') }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ html()->label('Status')->class('form-label') }}
+ {{-- {{ html()->select('status', '11')->class('form-control')->placeholder('Select Status') }}
+ --}}
+ {{ html()->select('status', $status)->class('form-control')->placeholder('Select Status')->required() }}
+
+
+
+
+
+
+
+
+
diff --git a/Modules/Stock/resources/views/StockLocation/show.blade.php b/Modules/Stock/resources/views/StockLocation/show.blade.php
new file mode 100644
index 0000000..f7f6a19
--- /dev/null
+++ b/Modules/Stock/resources/views/StockLocation/show.blade.php
@@ -0,0 +1,45 @@
+@extends('layouts.app')
+
+@section('content')
+
+
+ @include('layouts.partials.breadcrumb', ['title' => $title])
+
+
+
+
+
+
+
+
+
+ Title
+ {{ $stockLocation->title }}
+
+
+ Description
+ {{ $stockLocation->description }}
+
+
+ Remarks
+ {{ $stockLocation->remarks }}
+
+
+
+
+
+
+
+
+
+
+
+
+@endsection
+
+@push('js')
+
+@endpush
diff --git a/Modules/Stock/resources/views/index.blade.php b/Modules/Stock/resources/views/index.blade.php
new file mode 100644
index 0000000..7d14d18
--- /dev/null
+++ b/Modules/Stock/resources/views/index.blade.php
@@ -0,0 +1,7 @@
+@extends('stock::layouts.master')
+
+@section('content')
+
Hello World
+
+
Module: {!! config('stock.name') !!}
+@endsection
diff --git a/Modules/Stocks/resources/views/layouts/master.blade.php b/Modules/Stock/resources/views/layouts/master.blade.php
similarity index 76%
rename from Modules/Stocks/resources/views/layouts/master.blade.php
rename to Modules/Stock/resources/views/layouts/master.blade.php
index eb26d9a..ec0e8b3 100644
--- a/Modules/Stocks/resources/views/layouts/master.blade.php
+++ b/Modules/Stock/resources/views/layouts/master.blade.php
@@ -7,7 +7,7 @@
-
Stocks Module - {{ config('app.name', 'Laravel') }}
+
Stock Module - {{ config('app.name', 'Laravel') }}
@@ -18,12 +18,12 @@
{{-- Vite CSS --}}
- {{-- {{ module_vite('build-stocks', 'resources/assets/sass/app.scss') }} --}}
+ {{-- {{ module_vite('build-stock', 'resources/assets/sass/app.scss') }} --}}
@yield('content')
{{-- Vite JS --}}
- {{-- {{ module_vite('build-stocks', 'resources/assets/js/app.js') }} --}}
+ {{-- {{ module_vite('build-stock', 'resources/assets/js/app.js') }} --}}
diff --git a/Modules/Stock/routes/.gitkeep b/Modules/Stock/routes/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/Modules/Stocks/routes/api.php b/Modules/Stock/routes/api.php
similarity index 79%
rename from Modules/Stocks/routes/api.php
rename to Modules/Stock/routes/api.php
index 0948629..da3f299 100644
--- a/Modules/Stocks/routes/api.php
+++ b/Modules/Stock/routes/api.php
@@ -1,7 +1,7 @@
prefix('v1')->group(function () {
- Route::apiResource('stocks', StocksController::class)->names('stocks');
+ Route::apiResource('stock', StockController::class)->names('stock');
});
diff --git a/Modules/Stock/routes/web.php b/Modules/Stock/routes/web.php
new file mode 100644
index 0000000..d5c03ae
--- /dev/null
+++ b/Modules/Stock/routes/web.php
@@ -0,0 +1,23 @@
+names('stock');
+ Route::resource('stockLocation', StockLocationController::class)->names('stockLocation');
+
+});
diff --git a/Modules/Stocks/vite.config.js b/Modules/Stock/vite.config.js
similarity index 71%
rename from Modules/Stocks/vite.config.js
rename to Modules/Stock/vite.config.js
index 52cf6f1..17be4d7 100644
--- a/Modules/Stocks/vite.config.js
+++ b/Modules/Stock/vite.config.js
@@ -3,14 +3,14 @@ import laravel from 'laravel-vite-plugin';
export default defineConfig({
build: {
- outDir: '../../public/build-stocks',
+ outDir: '../../public/build-stock',
emptyOutDir: true,
manifest: true,
},
plugins: [
laravel({
publicDirectory: '../../public',
- buildDirectory: 'build-stocks',
+ buildDirectory: 'build-stock',
input: [
__dirname + '/resources/assets/sass/app.scss',
__dirname + '/resources/assets/js/app.js'
@@ -21,6 +21,6 @@ export default defineConfig({
});
//export const paths = [
-// 'Modules/Stocks/resources/assets/sass/app.scss',
-// 'Modules/Stocks/resources/assets/js/app.js',
+// 'Modules/Stock/resources/assets/sass/app.scss',
+// 'Modules/Stock/resources/assets/js/app.js',
//];
\ No newline at end of file
diff --git a/Modules/Stocks/app/Http/Controllers/StocksController.php b/Modules/Stocks/app/Http/Controllers/StocksController.php
deleted file mode 100644
index 150255e..0000000
--- a/Modules/Stocks/app/Http/Controllers/StocksController.php
+++ /dev/null
@@ -1,67 +0,0 @@
- 'Stocks',
-];
diff --git a/Modules/Stocks/resources/views/index.blade.php b/Modules/Stocks/resources/views/index.blade.php
deleted file mode 100644
index 94157c7..0000000
--- a/Modules/Stocks/resources/views/index.blade.php
+++ /dev/null
@@ -1,7 +0,0 @@
-@extends('stocks::layouts.master')
-
-@section('content')
-
Hello World
-
-
Module: {!! config('stocks.name') !!}
-@endsection
diff --git a/app/Helpers/BIBStocks.php b/app/Helpers/BIBStocks.php
index e19da51..b7c87e7 100644
--- a/app/Helpers/BIBStocks.php
+++ b/app/Helpers/BIBStocks.php
@@ -124,7 +124,7 @@ class BIBStocks
$modelsDirectory = app_path('Models');
$files = scandir($modelsDirectory);
$models = [];
-
+
foreach ($files as $file) {
if (pathinfo($file, PATHINFO_EXTENSION) == 'php') {
$modelName = pathinfo($file, PATHINFO_FILENAME);
diff --git a/database/migrations/2024_09_03_161257_create_tbl_settings_table.php b/database/migrations/2024_09_03_161257_create_tbl_settings_table.php
index 972ff9b..e4492e6 100644
--- a/database/migrations/2024_09_03_161257_create_tbl_settings_table.php
+++ b/database/migrations/2024_09_03_161257_create_tbl_settings_table.php
@@ -14,7 +14,7 @@ class CreateTblSettingsTable extends Migration
public function up()
{
Schema::create('tbl_settings', function (Blueprint $table) {
- $table->id('setting_id');
+ $table->id();
$table->string('title')->nullable();
$table->text('description')->nullable();
$table->string('url1')->nullable();
@@ -42,7 +42,7 @@ class CreateTblSettingsTable extends Migration
$table->text('seo_keywords')->nullable();
$table->text('og_tags')->nullable();
$table->integer('display_order')->default(0);
- $table->integer('status')->default(0);
+ $table->integer('status')->default(11);
$table->timestamps();
$table->integer('createdby');
$table->integer('updatedby');
diff --git a/modules_statuses.json b/modules_statuses.json
index 2b056c3..0a1d677 100644
--- a/modules_statuses.json
+++ b/modules_statuses.json
@@ -17,5 +17,8 @@
"Product": true,
"Supplier": true,
"Settings": true,
- "Stocks": true
+ "Stocks": true,
+ "Stock": true,
+ "Setting": true,
+ "SalesEntry": true
}
\ No newline at end of file
diff --git a/resources/views/layouts/partials/sidebar.blade.php b/resources/views/layouts/partials/sidebar.blade.php
index 959796f..41eace5 100644
--- a/resources/views/layouts/partials/sidebar.blade.php
+++ b/resources/views/layouts/partials/sidebar.blade.php
@@ -135,6 +135,19 @@
Sub Category
+
+ Stock
+
+
+ Stock Location
+
+
+
+ Fabric Category
+
Order
+
+
+ Sales Entry
+
+
+
+ Settings
+
{{--
Order
diff --git a/vendor/composer/autoload_classmap.php b/vendor/composer/autoload_classmap.php
index a6255fb..3d47fb6 100644
--- a/vendor/composer/autoload_classmap.php
+++ b/vendor/composer/autoload_classmap.php
@@ -3237,12 +3237,16 @@ return array(
'Modules\\Office\\Repositories\\PurchaseServiceInterface' => $baseDir . '/Modules/Office/app/Repositories/PurchaseServiceInterface.php',
'Modules\\Office\\Repositories\\PurchaseServiceRepository' => $baseDir . '/Modules/Office/app/Repositories/PurchaseServiceRepository.php',
'Modules\\Order\\Http\\Controllers\\OrderController' => $baseDir . '/Modules/Order/app/Http/Controllers/OrderController.php',
+ 'Modules\\Order\\Http\\Controllers\\PaymentModeController' => $baseDir . '/Modules/Order/app/Http/Controllers/PaymentModeController.php',
'Modules\\Order\\Models\\Order' => $baseDir . '/Modules/Order/app/Models/Order.php',
'Modules\\Order\\Models\\OrderDetail' => $baseDir . '/Modules/Order/app/Models/OrderDetail.php',
+ 'Modules\\Order\\Models\\PaymentMode' => $baseDir . '/Modules/Order/app/Models/PaymentMode.php',
'Modules\\Order\\Providers\\OrderServiceProvider' => $baseDir . '/Modules/Order/app/Providers/OrderServiceProvider.php',
'Modules\\Order\\Providers\\RouteServiceProvider' => $baseDir . '/Modules/Order/app/Providers/RouteServiceProvider.php',
'Modules\\Order\\Repositories\\OrderInterface' => $baseDir . '/Modules/Order/app/Repositories/OrderInterface.php',
'Modules\\Order\\Repositories\\OrderRepository' => $baseDir . '/Modules/Order/app/Repositories/OrderRepository.php',
+ 'Modules\\Order\\Repositories\\PaymentModeInterface' => $baseDir . '/Modules/Order/app/Repositories/PaymentModeInterface.php',
+ 'Modules\\Order\\Repositories\\PaymentModeRepository' => $baseDir . '/Modules/Order/app/Repositories/PaymentModeRepository.php',
'Modules\\PMS\\Http\\Controllers\\ClientController' => $baseDir . '/Modules/PMS/app/Http/Controllers/ClientController.php',
'Modules\\PMS\\Http\\Controllers\\PMSController' => $baseDir . '/Modules/PMS/app/Http/Controllers/PMSController.php',
'Modules\\PMS\\Http\\Controllers\\ProjectController' => $baseDir . '/Modules/PMS/app/Http/Controllers/ProjectController.php',
@@ -3271,10 +3275,12 @@ return array(
'Modules\\Payroll\\Repositories\\PaymentInterface' => $baseDir . '/Modules/Payroll/app/Repositories/PaymentInterface.php',
'Modules\\Payroll\\Repositories\\PaymentRepository' => $baseDir . '/Modules/Payroll/app/Repositories/PaymentRepository.php',
'Modules\\Product\\Http\\Controllers\\CategoryController' => $baseDir . '/Modules/Product/app/Http/Controllers/CategoryController.php',
+ 'Modules\\Product\\Http\\Controllers\\FabricCategoryController' => $baseDir . '/Modules/Product/app/Http/Controllers/FabricCategoryController.php',
'Modules\\Product\\Http\\Controllers\\ProductController' => $baseDir . '/Modules/Product/app/Http/Controllers/ProductController.php',
'Modules\\Product\\Http\\Controllers\\SubCategoryController' => $baseDir . '/Modules/Product/app/Http/Controllers/SubCategoryController.php',
'Modules\\Product\\Http\\Controllers\\WarehouseController' => $baseDir . '/Modules/Product/app/Http/Controllers/WarehouseController.php',
'Modules\\Product\\Models\\Category' => $baseDir . '/Modules/Product/app/Models/Category.php',
+ 'Modules\\Product\\Models\\FabricCategory' => $baseDir . '/Modules/Product/app/Models/FabricCategory.php',
'Modules\\Product\\Models\\Product' => $baseDir . '/Modules/Product/app/Models/Product.php',
'Modules\\Product\\Models\\ProductStock' => $baseDir . '/Modules/Product/app/Models/ProductStock.php',
'Modules\\Product\\Models\\SubCategory' => $baseDir . '/Modules/Product/app/Models/SubCategory.php',
@@ -3283,6 +3289,8 @@ return array(
'Modules\\Product\\Providers\\RouteServiceProvider' => $baseDir . '/Modules/Product/app/Providers/RouteServiceProvider.php',
'Modules\\Product\\Repositories\\CategoryInterface' => $baseDir . '/Modules/Product/app/Repositories/CategoryInterface.php',
'Modules\\Product\\Repositories\\CategoryRepository' => $baseDir . '/Modules/Product/app/Repositories/CategoryRepository.php',
+ 'Modules\\Product\\Repositories\\FabricCategoryInterface' => $baseDir . '/Modules/Product/app/Repositories/FabricCategoryInterface.php',
+ 'Modules\\Product\\Repositories\\FabricCategoryRepository' => $baseDir . '/Modules/Product/app/Repositories/FabricCategoryRepository.php',
'Modules\\Product\\Repositories\\ProductInterface' => $baseDir . '/Modules/Product/app/Repositories/ProductInterface.php',
'Modules\\Product\\Repositories\\ProductRepository' => $baseDir . '/Modules/Product/app/Repositories/ProductRepository.php',
'Modules\\Product\\Repositories\\SubCategoryInterface' => $baseDir . '/Modules/Product/app/Repositories/SubCategoryInterface.php',
@@ -3308,19 +3316,35 @@ return array(
'Modules\\Recruit\\Repositories\\JobPostRepository' => $baseDir . '/Modules/Recruit/app/Repositories/JobPostRepository.php',
'Modules\\Recruit\\Repositories\\OfferLetterInterface' => $baseDir . '/Modules/Recruit/app/Repositories/OfferLetterInterface.php',
'Modules\\Recruit\\Repositories\\OfferLetterRepository' => $baseDir . '/Modules/Recruit/app/Repositories/OfferLetterRepository.php',
- 'Modules\\Settings\\Database\\Seeders\\SettingsDatabaseSeeder' => $baseDir . '/Modules/Settings/database/seeders/SettingsDatabaseSeeder.php',
- 'Modules\\Settings\\Http\\Controllers\\SettingsController' => $baseDir . '/Modules/Settings/app/Http/Controllers/SettingsController.php',
- 'Modules\\Settings\\Models\\Setting' => $baseDir . '/Modules/Settings/app/Models/Setting.php',
- 'Modules\\Settings\\Providers\\EventServiceProvider' => $baseDir . '/Modules/Settings/app/Providers/EventServiceProvider.php',
- 'Modules\\Settings\\Providers\\RouteServiceProvider' => $baseDir . '/Modules/Settings/app/Providers/RouteServiceProvider.php',
- 'Modules\\Settings\\Providers\\SettingsServiceProvider' => $baseDir . '/Modules/Settings/app/Providers/SettingsServiceProvider.php',
- 'Modules\\Stocks\\Database\\Seeders\\StocksDatabaseSeeder' => $baseDir . '/Modules/Stocks/database/seeders/StocksDatabaseSeeder.php',
- 'Modules\\Stocks\\Http\\Controllers\\StocksController' => $baseDir . '/Modules/Stocks/app/Http/Controllers/StocksController.php',
- 'Modules\\Stocks\\Models\\PaymentMode' => $baseDir . '/Modules/Stocks/app/Models/PaymentMode.php',
- 'Modules\\Stocks\\Models\\Stock' => $baseDir . '/Modules/Stocks/app/Models/Stock.php',
- 'Modules\\Stocks\\Providers\\EventServiceProvider' => $baseDir . '/Modules/Stocks/app/Providers/EventServiceProvider.php',
- 'Modules\\Stocks\\Providers\\RouteServiceProvider' => $baseDir . '/Modules/Stocks/app/Providers/RouteServiceProvider.php',
- 'Modules\\Stocks\\Providers\\StocksServiceProvider' => $baseDir . '/Modules/Stocks/app/Providers/StocksServiceProvider.php',
+ 'Modules\\SalesEntry\\Database\\Seeders\\SalesEntryDatabaseSeeder' => $baseDir . '/Modules/SalesEntry/database/seeders/SalesEntryDatabaseSeeder.php',
+ 'Modules\\SalesEntry\\Http\\Controllers\\SalesEntryController' => $baseDir . '/Modules/SalesEntry/app/Http/Controllers/SalesEntryController.php',
+ 'Modules\\SalesEntry\\Models\\SalesEntry' => $baseDir . '/Modules/SalesEntry/app/Models/SalesEntry.php',
+ 'Modules\\SalesEntry\\Models\\SalesEntryDetail' => $baseDir . '/Modules/SalesEntry/app/Models/SalesEntryDetail.php',
+ 'Modules\\SalesEntry\\Providers\\EventServiceProvider' => $baseDir . '/Modules/SalesEntry/app/Providers/EventServiceProvider.php',
+ 'Modules\\SalesEntry\\Providers\\RouteServiceProvider' => $baseDir . '/Modules/SalesEntry/app/Providers/RouteServiceProvider.php',
+ 'Modules\\SalesEntry\\Providers\\SalesEntryServiceProvider' => $baseDir . '/Modules/SalesEntry/app/Providers/SalesEntryServiceProvider.php',
+ 'Modules\\SalesEntry\\Repositories\\SalesEntryInterface' => $baseDir . '/Modules/SalesEntry/app/Repositories/SalesEntryInterface.php',
+ 'Modules\\SalesEntry\\Repositories\\SalesEntryRepository' => $baseDir . '/Modules/SalesEntry/app/Repositories/SalesEntryRepository.php',
+ 'Modules\\Setting\\Database\\Seeders\\SettingDatabaseSeeder' => $baseDir . '/Modules/Setting/database/seeders/SettingDatabaseSeeder.php',
+ 'Modules\\Setting\\Http\\Controllers\\SettingController' => $baseDir . '/Modules/Setting/app/Http/Controllers/SettingController.php',
+ 'Modules\\Setting\\Models\\Setting' => $baseDir . '/Modules/Setting/app/Models/Setting.php',
+ 'Modules\\Setting\\Providers\\EventServiceProvider' => $baseDir . '/Modules/Setting/app/Providers/EventServiceProvider.php',
+ 'Modules\\Setting\\Providers\\RouteServiceProvider' => $baseDir . '/Modules/Setting/app/Providers/RouteServiceProvider.php',
+ 'Modules\\Setting\\Providers\\SettingServiceProvider' => $baseDir . '/Modules/Setting/app/Providers/SettingServiceProvider.php',
+ 'Modules\\Setting\\Repositories\\SettingInterface' => $baseDir . '/Modules/Setting/app/Repositories/SettingInterface.php',
+ 'Modules\\Setting\\Repositories\\SettingRepository' => $baseDir . '/Modules/Setting/app/Repositories/SettingRepository.php',
+ 'Modules\\Stock\\Database\\Seeders\\StockDatabaseSeeder' => $baseDir . '/Modules/Stock/database/seeders/StockDatabaseSeeder.php',
+ 'Modules\\Stock\\Http\\Controllers\\StockController' => $baseDir . '/Modules/Stock/app/Http/Controllers/StockController.php',
+ 'Modules\\Stock\\Http\\Controllers\\StockLocationController' => $baseDir . '/Modules/Stock/app/Http/Controllers/StockLocationController.php',
+ 'Modules\\Stock\\Models\\Stock' => $baseDir . '/Modules/Stock/app/Models/Stock.php',
+ 'Modules\\Stock\\Models\\StockLocation' => $baseDir . '/Modules/Stock/app/Models/StockLocation.php',
+ 'Modules\\Stock\\Providers\\EventServiceProvider' => $baseDir . '/Modules/Stock/app/Providers/EventServiceProvider.php',
+ 'Modules\\Stock\\Providers\\RouteServiceProvider' => $baseDir . '/Modules/Stock/app/Providers/RouteServiceProvider.php',
+ 'Modules\\Stock\\Providers\\StockServiceProvider' => $baseDir . '/Modules/Stock/app/Providers/StockServiceProvider.php',
+ 'Modules\\Stock\\Repositories\\StockInterface' => $baseDir . '/Modules/Stock/app/Repositories/StockInterface.php',
+ 'Modules\\Stock\\Repositories\\StockLocationInterface' => $baseDir . '/Modules/Stock/app/Repositories/StockLocationInterface.php',
+ 'Modules\\Stock\\Repositories\\StockLocationRepository' => $baseDir . '/Modules/Stock/app/Repositories/StockLocationRepository.php',
+ 'Modules\\Stock\\Repositories\\StockRepository' => $baseDir . '/Modules/Stock/app/Repositories/StockRepository.php',
'Modules\\Supplier\\Http\\Controllers\\SupplierController' => $baseDir . '/Modules/Supplier/app/Http/Controllers/SupplierController.php',
'Modules\\Supplier\\Models\\Supplier' => $baseDir . '/Modules/Supplier/app/Models/Supplier.php',
'Modules\\Supplier\\Providers\\RouteServiceProvider' => $baseDir . '/Modules/Supplier/app/Providers/RouteServiceProvider.php',
diff --git a/vendor/composer/autoload_psr4.php b/vendor/composer/autoload_psr4.php
index ea76ba5..ccd18b7 100644
--- a/vendor/composer/autoload_psr4.php
+++ b/vendor/composer/autoload_psr4.php
@@ -79,14 +79,18 @@ return array(
'Modules\\Supplier\\Database\\Seeders\\' => array($baseDir . '/Modules/Supplier/database/seeders'),
'Modules\\Supplier\\Database\\Factories\\' => array($baseDir . '/Modules/Supplier/database/factories'),
'Modules\\Supplier\\' => array($baseDir . '/Modules/Supplier/app'),
- 'Modules\\Stocks\\Tests\\' => array($baseDir . '/Modules/Stocks/tests'),
- 'Modules\\Stocks\\Database\\Seeders\\' => array($baseDir . '/Modules/Stocks/database/seeders'),
- 'Modules\\Stocks\\Database\\Factories\\' => array($baseDir . '/Modules/Stocks/database/factories'),
- 'Modules\\Stocks\\' => array($baseDir . '/Modules/Stocks/app'),
- 'Modules\\Settings\\Tests\\' => array($baseDir . '/Modules/Settings/tests'),
- 'Modules\\Settings\\Database\\Seeders\\' => array($baseDir . '/Modules/Settings/database/seeders'),
- 'Modules\\Settings\\Database\\Factories\\' => array($baseDir . '/Modules/Settings/database/factories'),
- 'Modules\\Settings\\' => array($baseDir . '/Modules/Settings/app'),
+ 'Modules\\Stock\\Tests\\' => array($baseDir . '/Modules/Stock/tests'),
+ 'Modules\\Stock\\Database\\Seeders\\' => array($baseDir . '/Modules/Stock/database/seeders'),
+ 'Modules\\Stock\\Database\\Factories\\' => array($baseDir . '/Modules/Stock/database/factories'),
+ 'Modules\\Stock\\' => array($baseDir . '/Modules/Stock/app'),
+ 'Modules\\Setting\\Tests\\' => array($baseDir . '/Modules/Setting/tests'),
+ 'Modules\\Setting\\Database\\Seeders\\' => array($baseDir . '/Modules/Setting/database/seeders'),
+ 'Modules\\Setting\\Database\\Factories\\' => array($baseDir . '/Modules/Setting/database/factories'),
+ 'Modules\\Setting\\' => array($baseDir . '/Modules/Setting/app'),
+ 'Modules\\SalesEntry\\Tests\\' => array($baseDir . '/Modules/SalesEntry/tests'),
+ 'Modules\\SalesEntry\\Database\\Seeders\\' => array($baseDir . '/Modules/SalesEntry/database/seeders'),
+ 'Modules\\SalesEntry\\Database\\Factories\\' => array($baseDir . '/Modules/SalesEntry/database/factories'),
+ 'Modules\\SalesEntry\\' => array($baseDir . '/Modules/SalesEntry/app'),
'Modules\\Recruit\\Tests\\' => array($baseDir . '/Modules/Recruit/tests'),
'Modules\\Recruit\\Database\\Seeders\\' => array($baseDir . '/Modules/Recruit/database/seeders'),
'Modules\\Recruit\\Database\\Factories\\' => array($baseDir . '/Modules/Recruit/database/factories'),
diff --git a/vendor/composer/autoload_static.php b/vendor/composer/autoload_static.php
index 70a386e..87b9ffe 100644
--- a/vendor/composer/autoload_static.php
+++ b/vendor/composer/autoload_static.php
@@ -148,14 +148,18 @@ class ComposerStaticInit6dc3e011b2ee18ecf5f0987aba384f2b
'Modules\\Supplier\\Database\\Seeders\\' => 34,
'Modules\\Supplier\\Database\\Factories\\' => 36,
'Modules\\Supplier\\' => 17,
- 'Modules\\Stocks\\Tests\\' => 21,
- 'Modules\\Stocks\\Database\\Seeders\\' => 32,
- 'Modules\\Stocks\\Database\\Factories\\' => 34,
- 'Modules\\Stocks\\' => 15,
- 'Modules\\Settings\\Tests\\' => 23,
- 'Modules\\Settings\\Database\\Seeders\\' => 34,
- 'Modules\\Settings\\Database\\Factories\\' => 36,
- 'Modules\\Settings\\' => 17,
+ 'Modules\\Stock\\Tests\\' => 20,
+ 'Modules\\Stock\\Database\\Seeders\\' => 31,
+ 'Modules\\Stock\\Database\\Factories\\' => 33,
+ 'Modules\\Stock\\' => 14,
+ 'Modules\\Setting\\Tests\\' => 22,
+ 'Modules\\Setting\\Database\\Seeders\\' => 33,
+ 'Modules\\Setting\\Database\\Factories\\' => 35,
+ 'Modules\\Setting\\' => 16,
+ 'Modules\\SalesEntry\\Tests\\' => 25,
+ 'Modules\\SalesEntry\\Database\\Seeders\\' => 36,
+ 'Modules\\SalesEntry\\Database\\Factories\\' => 38,
+ 'Modules\\SalesEntry\\' => 19,
'Modules\\Recruit\\Tests\\' => 22,
'Modules\\Recruit\\Database\\Seeders\\' => 33,
'Modules\\Recruit\\Database\\Factories\\' => 35,
@@ -571,37 +575,53 @@ class ComposerStaticInit6dc3e011b2ee18ecf5f0987aba384f2b
array (
0 => __DIR__ . '/../..' . '/Modules/Supplier/app',
),
- 'Modules\\Stocks\\Tests\\' =>
+ 'Modules\\Stock\\Tests\\' =>
array (
- 0 => __DIR__ . '/../..' . '/Modules/Stocks/tests',
+ 0 => __DIR__ . '/../..' . '/Modules/Stock/tests',
),
- 'Modules\\Stocks\\Database\\Seeders\\' =>
+ 'Modules\\Stock\\Database\\Seeders\\' =>
array (
- 0 => __DIR__ . '/../..' . '/Modules/Stocks/database/seeders',
+ 0 => __DIR__ . '/../..' . '/Modules/Stock/database/seeders',
),
- 'Modules\\Stocks\\Database\\Factories\\' =>
+ 'Modules\\Stock\\Database\\Factories\\' =>
array (
- 0 => __DIR__ . '/../..' . '/Modules/Stocks/database/factories',
+ 0 => __DIR__ . '/../..' . '/Modules/Stock/database/factories',
),
- 'Modules\\Stocks\\' =>
+ 'Modules\\Stock\\' =>
array (
- 0 => __DIR__ . '/../..' . '/Modules/Stocks/app',
+ 0 => __DIR__ . '/../..' . '/Modules/Stock/app',
),
- 'Modules\\Settings\\Tests\\' =>
+ 'Modules\\Setting\\Tests\\' =>
array (
- 0 => __DIR__ . '/../..' . '/Modules/Settings/tests',
+ 0 => __DIR__ . '/../..' . '/Modules/Setting/tests',
),
- 'Modules\\Settings\\Database\\Seeders\\' =>
+ 'Modules\\Setting\\Database\\Seeders\\' =>
array (
- 0 => __DIR__ . '/../..' . '/Modules/Settings/database/seeders',
+ 0 => __DIR__ . '/../..' . '/Modules/Setting/database/seeders',
),
- 'Modules\\Settings\\Database\\Factories\\' =>
+ 'Modules\\Setting\\Database\\Factories\\' =>
array (
- 0 => __DIR__ . '/../..' . '/Modules/Settings/database/factories',
+ 0 => __DIR__ . '/../..' . '/Modules/Setting/database/factories',
),
- 'Modules\\Settings\\' =>
+ 'Modules\\Setting\\' =>
array (
- 0 => __DIR__ . '/../..' . '/Modules/Settings/app',
+ 0 => __DIR__ . '/../..' . '/Modules/Setting/app',
+ ),
+ 'Modules\\SalesEntry\\Tests\\' =>
+ array (
+ 0 => __DIR__ . '/../..' . '/Modules/SalesEntry/tests',
+ ),
+ 'Modules\\SalesEntry\\Database\\Seeders\\' =>
+ array (
+ 0 => __DIR__ . '/../..' . '/Modules/SalesEntry/database/seeders',
+ ),
+ 'Modules\\SalesEntry\\Database\\Factories\\' =>
+ array (
+ 0 => __DIR__ . '/../..' . '/Modules/SalesEntry/database/factories',
+ ),
+ 'Modules\\SalesEntry\\' =>
+ array (
+ 0 => __DIR__ . '/../..' . '/Modules/SalesEntry/app',
),
'Modules\\Recruit\\Tests\\' =>
array (
@@ -4206,12 +4226,16 @@ class ComposerStaticInit6dc3e011b2ee18ecf5f0987aba384f2b
'Modules\\Office\\Repositories\\PurchaseServiceInterface' => __DIR__ . '/../..' . '/Modules/Office/app/Repositories/PurchaseServiceInterface.php',
'Modules\\Office\\Repositories\\PurchaseServiceRepository' => __DIR__ . '/../..' . '/Modules/Office/app/Repositories/PurchaseServiceRepository.php',
'Modules\\Order\\Http\\Controllers\\OrderController' => __DIR__ . '/../..' . '/Modules/Order/app/Http/Controllers/OrderController.php',
+ 'Modules\\Order\\Http\\Controllers\\PaymentModeController' => __DIR__ . '/../..' . '/Modules/Order/app/Http/Controllers/PaymentModeController.php',
'Modules\\Order\\Models\\Order' => __DIR__ . '/../..' . '/Modules/Order/app/Models/Order.php',
'Modules\\Order\\Models\\OrderDetail' => __DIR__ . '/../..' . '/Modules/Order/app/Models/OrderDetail.php',
+ 'Modules\\Order\\Models\\PaymentMode' => __DIR__ . '/../..' . '/Modules/Order/app/Models/PaymentMode.php',
'Modules\\Order\\Providers\\OrderServiceProvider' => __DIR__ . '/../..' . '/Modules/Order/app/Providers/OrderServiceProvider.php',
'Modules\\Order\\Providers\\RouteServiceProvider' => __DIR__ . '/../..' . '/Modules/Order/app/Providers/RouteServiceProvider.php',
'Modules\\Order\\Repositories\\OrderInterface' => __DIR__ . '/../..' . '/Modules/Order/app/Repositories/OrderInterface.php',
'Modules\\Order\\Repositories\\OrderRepository' => __DIR__ . '/../..' . '/Modules/Order/app/Repositories/OrderRepository.php',
+ 'Modules\\Order\\Repositories\\PaymentModeInterface' => __DIR__ . '/../..' . '/Modules/Order/app/Repositories/PaymentModeInterface.php',
+ 'Modules\\Order\\Repositories\\PaymentModeRepository' => __DIR__ . '/../..' . '/Modules/Order/app/Repositories/PaymentModeRepository.php',
'Modules\\PMS\\Http\\Controllers\\ClientController' => __DIR__ . '/../..' . '/Modules/PMS/app/Http/Controllers/ClientController.php',
'Modules\\PMS\\Http\\Controllers\\PMSController' => __DIR__ . '/../..' . '/Modules/PMS/app/Http/Controllers/PMSController.php',
'Modules\\PMS\\Http\\Controllers\\ProjectController' => __DIR__ . '/../..' . '/Modules/PMS/app/Http/Controllers/ProjectController.php',
@@ -4240,10 +4264,12 @@ class ComposerStaticInit6dc3e011b2ee18ecf5f0987aba384f2b
'Modules\\Payroll\\Repositories\\PaymentInterface' => __DIR__ . '/../..' . '/Modules/Payroll/app/Repositories/PaymentInterface.php',
'Modules\\Payroll\\Repositories\\PaymentRepository' => __DIR__ . '/../..' . '/Modules/Payroll/app/Repositories/PaymentRepository.php',
'Modules\\Product\\Http\\Controllers\\CategoryController' => __DIR__ . '/../..' . '/Modules/Product/app/Http/Controllers/CategoryController.php',
+ 'Modules\\Product\\Http\\Controllers\\FabricCategoryController' => __DIR__ . '/../..' . '/Modules/Product/app/Http/Controllers/FabricCategoryController.php',
'Modules\\Product\\Http\\Controllers\\ProductController' => __DIR__ . '/../..' . '/Modules/Product/app/Http/Controllers/ProductController.php',
'Modules\\Product\\Http\\Controllers\\SubCategoryController' => __DIR__ . '/../..' . '/Modules/Product/app/Http/Controllers/SubCategoryController.php',
'Modules\\Product\\Http\\Controllers\\WarehouseController' => __DIR__ . '/../..' . '/Modules/Product/app/Http/Controllers/WarehouseController.php',
'Modules\\Product\\Models\\Category' => __DIR__ . '/../..' . '/Modules/Product/app/Models/Category.php',
+ 'Modules\\Product\\Models\\FabricCategory' => __DIR__ . '/../..' . '/Modules/Product/app/Models/FabricCategory.php',
'Modules\\Product\\Models\\Product' => __DIR__ . '/../..' . '/Modules/Product/app/Models/Product.php',
'Modules\\Product\\Models\\ProductStock' => __DIR__ . '/../..' . '/Modules/Product/app/Models/ProductStock.php',
'Modules\\Product\\Models\\SubCategory' => __DIR__ . '/../..' . '/Modules/Product/app/Models/SubCategory.php',
@@ -4252,6 +4278,8 @@ class ComposerStaticInit6dc3e011b2ee18ecf5f0987aba384f2b
'Modules\\Product\\Providers\\RouteServiceProvider' => __DIR__ . '/../..' . '/Modules/Product/app/Providers/RouteServiceProvider.php',
'Modules\\Product\\Repositories\\CategoryInterface' => __DIR__ . '/../..' . '/Modules/Product/app/Repositories/CategoryInterface.php',
'Modules\\Product\\Repositories\\CategoryRepository' => __DIR__ . '/../..' . '/Modules/Product/app/Repositories/CategoryRepository.php',
+ 'Modules\\Product\\Repositories\\FabricCategoryInterface' => __DIR__ . '/../..' . '/Modules/Product/app/Repositories/FabricCategoryInterface.php',
+ 'Modules\\Product\\Repositories\\FabricCategoryRepository' => __DIR__ . '/../..' . '/Modules/Product/app/Repositories/FabricCategoryRepository.php',
'Modules\\Product\\Repositories\\ProductInterface' => __DIR__ . '/../..' . '/Modules/Product/app/Repositories/ProductInterface.php',
'Modules\\Product\\Repositories\\ProductRepository' => __DIR__ . '/../..' . '/Modules/Product/app/Repositories/ProductRepository.php',
'Modules\\Product\\Repositories\\SubCategoryInterface' => __DIR__ . '/../..' . '/Modules/Product/app/Repositories/SubCategoryInterface.php',
@@ -4277,19 +4305,35 @@ class ComposerStaticInit6dc3e011b2ee18ecf5f0987aba384f2b
'Modules\\Recruit\\Repositories\\JobPostRepository' => __DIR__ . '/../..' . '/Modules/Recruit/app/Repositories/JobPostRepository.php',
'Modules\\Recruit\\Repositories\\OfferLetterInterface' => __DIR__ . '/../..' . '/Modules/Recruit/app/Repositories/OfferLetterInterface.php',
'Modules\\Recruit\\Repositories\\OfferLetterRepository' => __DIR__ . '/../..' . '/Modules/Recruit/app/Repositories/OfferLetterRepository.php',
- 'Modules\\Settings\\Database\\Seeders\\SettingsDatabaseSeeder' => __DIR__ . '/../..' . '/Modules/Settings/database/seeders/SettingsDatabaseSeeder.php',
- 'Modules\\Settings\\Http\\Controllers\\SettingsController' => __DIR__ . '/../..' . '/Modules/Settings/app/Http/Controllers/SettingsController.php',
- 'Modules\\Settings\\Models\\Setting' => __DIR__ . '/../..' . '/Modules/Settings/app/Models/Setting.php',
- 'Modules\\Settings\\Providers\\EventServiceProvider' => __DIR__ . '/../..' . '/Modules/Settings/app/Providers/EventServiceProvider.php',
- 'Modules\\Settings\\Providers\\RouteServiceProvider' => __DIR__ . '/../..' . '/Modules/Settings/app/Providers/RouteServiceProvider.php',
- 'Modules\\Settings\\Providers\\SettingsServiceProvider' => __DIR__ . '/../..' . '/Modules/Settings/app/Providers/SettingsServiceProvider.php',
- 'Modules\\Stocks\\Database\\Seeders\\StocksDatabaseSeeder' => __DIR__ . '/../..' . '/Modules/Stocks/database/seeders/StocksDatabaseSeeder.php',
- 'Modules\\Stocks\\Http\\Controllers\\StocksController' => __DIR__ . '/../..' . '/Modules/Stocks/app/Http/Controllers/StocksController.php',
- 'Modules\\Stocks\\Models\\PaymentMode' => __DIR__ . '/../..' . '/Modules/Stocks/app/Models/PaymentMode.php',
- 'Modules\\Stocks\\Models\\Stock' => __DIR__ . '/../..' . '/Modules/Stocks/app/Models/Stock.php',
- 'Modules\\Stocks\\Providers\\EventServiceProvider' => __DIR__ . '/../..' . '/Modules/Stocks/app/Providers/EventServiceProvider.php',
- 'Modules\\Stocks\\Providers\\RouteServiceProvider' => __DIR__ . '/../..' . '/Modules/Stocks/app/Providers/RouteServiceProvider.php',
- 'Modules\\Stocks\\Providers\\StocksServiceProvider' => __DIR__ . '/../..' . '/Modules/Stocks/app/Providers/StocksServiceProvider.php',
+ 'Modules\\SalesEntry\\Database\\Seeders\\SalesEntryDatabaseSeeder' => __DIR__ . '/../..' . '/Modules/SalesEntry/database/seeders/SalesEntryDatabaseSeeder.php',
+ 'Modules\\SalesEntry\\Http\\Controllers\\SalesEntryController' => __DIR__ . '/../..' . '/Modules/SalesEntry/app/Http/Controllers/SalesEntryController.php',
+ 'Modules\\SalesEntry\\Models\\SalesEntry' => __DIR__ . '/../..' . '/Modules/SalesEntry/app/Models/SalesEntry.php',
+ 'Modules\\SalesEntry\\Models\\SalesEntryDetail' => __DIR__ . '/../..' . '/Modules/SalesEntry/app/Models/SalesEntryDetail.php',
+ 'Modules\\SalesEntry\\Providers\\EventServiceProvider' => __DIR__ . '/../..' . '/Modules/SalesEntry/app/Providers/EventServiceProvider.php',
+ 'Modules\\SalesEntry\\Providers\\RouteServiceProvider' => __DIR__ . '/../..' . '/Modules/SalesEntry/app/Providers/RouteServiceProvider.php',
+ 'Modules\\SalesEntry\\Providers\\SalesEntryServiceProvider' => __DIR__ . '/../..' . '/Modules/SalesEntry/app/Providers/SalesEntryServiceProvider.php',
+ 'Modules\\SalesEntry\\Repositories\\SalesEntryInterface' => __DIR__ . '/../..' . '/Modules/SalesEntry/app/Repositories/SalesEntryInterface.php',
+ 'Modules\\SalesEntry\\Repositories\\SalesEntryRepository' => __DIR__ . '/../..' . '/Modules/SalesEntry/app/Repositories/SalesEntryRepository.php',
+ 'Modules\\Setting\\Database\\Seeders\\SettingDatabaseSeeder' => __DIR__ . '/../..' . '/Modules/Setting/database/seeders/SettingDatabaseSeeder.php',
+ 'Modules\\Setting\\Http\\Controllers\\SettingController' => __DIR__ . '/../..' . '/Modules/Setting/app/Http/Controllers/SettingController.php',
+ 'Modules\\Setting\\Models\\Setting' => __DIR__ . '/../..' . '/Modules/Setting/app/Models/Setting.php',
+ 'Modules\\Setting\\Providers\\EventServiceProvider' => __DIR__ . '/../..' . '/Modules/Setting/app/Providers/EventServiceProvider.php',
+ 'Modules\\Setting\\Providers\\RouteServiceProvider' => __DIR__ . '/../..' . '/Modules/Setting/app/Providers/RouteServiceProvider.php',
+ 'Modules\\Setting\\Providers\\SettingServiceProvider' => __DIR__ . '/../..' . '/Modules/Setting/app/Providers/SettingServiceProvider.php',
+ 'Modules\\Setting\\Repositories\\SettingInterface' => __DIR__ . '/../..' . '/Modules/Setting/app/Repositories/SettingInterface.php',
+ 'Modules\\Setting\\Repositories\\SettingRepository' => __DIR__ . '/../..' . '/Modules/Setting/app/Repositories/SettingRepository.php',
+ 'Modules\\Stock\\Database\\Seeders\\StockDatabaseSeeder' => __DIR__ . '/../..' . '/Modules/Stock/database/seeders/StockDatabaseSeeder.php',
+ 'Modules\\Stock\\Http\\Controllers\\StockController' => __DIR__ . '/../..' . '/Modules/Stock/app/Http/Controllers/StockController.php',
+ 'Modules\\Stock\\Http\\Controllers\\StockLocationController' => __DIR__ . '/../..' . '/Modules/Stock/app/Http/Controllers/StockLocationController.php',
+ 'Modules\\Stock\\Models\\Stock' => __DIR__ . '/../..' . '/Modules/Stock/app/Models/Stock.php',
+ 'Modules\\Stock\\Models\\StockLocation' => __DIR__ . '/../..' . '/Modules/Stock/app/Models/StockLocation.php',
+ 'Modules\\Stock\\Providers\\EventServiceProvider' => __DIR__ . '/../..' . '/Modules/Stock/app/Providers/EventServiceProvider.php',
+ 'Modules\\Stock\\Providers\\RouteServiceProvider' => __DIR__ . '/../..' . '/Modules/Stock/app/Providers/RouteServiceProvider.php',
+ 'Modules\\Stock\\Providers\\StockServiceProvider' => __DIR__ . '/../..' . '/Modules/Stock/app/Providers/StockServiceProvider.php',
+ 'Modules\\Stock\\Repositories\\StockInterface' => __DIR__ . '/../..' . '/Modules/Stock/app/Repositories/StockInterface.php',
+ 'Modules\\Stock\\Repositories\\StockLocationInterface' => __DIR__ . '/../..' . '/Modules/Stock/app/Repositories/StockLocationInterface.php',
+ 'Modules\\Stock\\Repositories\\StockLocationRepository' => __DIR__ . '/../..' . '/Modules/Stock/app/Repositories/StockLocationRepository.php',
+ 'Modules\\Stock\\Repositories\\StockRepository' => __DIR__ . '/../..' . '/Modules/Stock/app/Repositories/StockRepository.php',
'Modules\\Supplier\\Http\\Controllers\\SupplierController' => __DIR__ . '/../..' . '/Modules/Supplier/app/Http/Controllers/SupplierController.php',
'Modules\\Supplier\\Models\\Supplier' => __DIR__ . '/../..' . '/Modules/Supplier/app/Models/Supplier.php',
'Modules\\Supplier\\Providers\\RouteServiceProvider' => __DIR__ . '/../..' . '/Modules/Supplier/app/Providers/RouteServiceProvider.php',