diff --git a/app/Http/Controllers/WarehouseManagement/OpnamesController.php b/app/Http/Controllers/WarehouseManagement/OpnamesController.php
index d5d23fe..b08c886 100644
--- a/app/Http/Controllers/WarehouseManagement/OpnamesController.php
+++ b/app/Http/Controllers/WarehouseManagement/OpnamesController.php
@@ -8,6 +8,7 @@ use App\Models\Menu;
use App\Models\Opname;
use App\Models\OpnameDetail;
use App\Models\Product;
+use Carbon\Carbon;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Log;
@@ -20,17 +21,19 @@ class OpnamesController extends Controller
if($request->ajax()){
$data = Opname::with('user','dealer');
return DataTables::of($data)
- ->addIndexColumn()
->addColumn('user_name', function ($row){
return $row->user ? $row->user->name : '-';
})
->addColumn('dealer_name', function ($row){
return $row->dealer ? $row->dealer->name : '-';
})
+ ->editColumn('opname_date', function ($row){
+ return $row->opname_date ? Carbon::parse($row->opname_date)->format('d M Y') : '-';
+ })
->addColumn('action', function ($row) use ($menu) {
$btn = '
';
- $btn .= '
';
+ $btn .= '
Detail';
$btn .= '
';
@@ -94,4 +97,41 @@ class OpnamesController extends Controller
Log::error($ex->getMessage());
}
}
+
+ public function show(Request $request, $id)
+ {
+ try {
+ $opname = Opname::with('details.product', 'user')->findOrFail($id);
+
+ if ($request->ajax()) {
+ return DataTables::of($opname->details)
+ ->addIndexColumn()
+ ->addColumn('opname_date', function () use ($opname) {
+ return $opname->opname_date->format('d M Y');
+ })
+ ->addColumn('user_name', function () use ($opname) {
+ return $opname->user ? $opname->user->name : '-';
+ })
+ ->addColumn('product_name', function ($detail) {
+ return $detail->product->name ?? '-';
+ })
+ ->addColumn('system_stock', function ($detail) {
+ return $detail->system_stock;
+ })
+ ->addColumn('physical_stock', function ($detail) {
+ return $detail->physical_stock;
+ })
+ ->addColumn('difference', function ($detail) {
+ return $detail->difference;
+ })
+ ->make(true);
+ }
+
+ return view('warehouse_management.opnames.detail', compact('opname'));
+ } catch (\Exception $ex) {
+ Log::error($ex->getMessage());
+ abort(500, 'Something went wrong');
+ }
+ }
+
}
diff --git a/public/js/warehouse_management/opnames/create.js b/public/js/warehouse_management/opnames/create.js
index 86dfcb8..dbc6bf9 100644
--- a/public/js/warehouse_management/opnames/create.js
+++ b/public/js/warehouse_management/opnames/create.js
@@ -15,7 +15,7 @@
\*************************************************************/
/***/ (() => {
-eval("var productUrl = $(\"#product-container\").data(\"url\");\n\nfunction createProductSelectOptions(callback) {\n $.ajax({\n url: productUrl,\n method: \"GET\",\n success: function success(data) {\n var options = '';\n data.forEach(function (product) {\n options += \"\");\n });\n callback(options);\n },\n error: function error() {\n alert(\"Gagal memuat produk.\");\n }\n });\n}\n\n$(document).ready(function () {\n // Initial load only for the first row\n createProductSelectOptions(function (options) {\n $(\".product-select\").first().html(options);\n }); // When adding a new row\n\n $(document).on(\"click\", \".btn-add-row\", function () {\n var row = \"\\n \\n \";\n var $newRow = $(row);\n $(\"#product-container\").append($newRow); // Load options only for the new select\n\n createProductSelectOptions(function (options) {\n $newRow.find(\".product-select\").html(options);\n });\n }); // Remove row\n\n $(document).on(\"click\", \".btn-remove-row\", function () {\n $(this).closest(\".product-row\").remove();\n });\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9yZXNvdXJjZXMvanMvd2FyZWhvdXNlX21hbmFnZW1lbnQvb3BuYW1lcy9jcmVhdGUuanMiLCJuYW1lcyI6WyJwcm9kdWN0VXJsIiwiJCIsImRhdGEiLCJjcmVhdGVQcm9kdWN0U2VsZWN0T3B0aW9ucyIsImNhbGxiYWNrIiwiYWpheCIsInVybCIsIm1ldGhvZCIsInN1Y2Nlc3MiLCJvcHRpb25zIiwiZm9yRWFjaCIsInByb2R1Y3QiLCJpZCIsIm5hbWUiLCJlcnJvciIsImFsZXJ0IiwiZG9jdW1lbnQiLCJyZWFkeSIsImZpcnN0IiwiaHRtbCIsIm9uIiwicm93IiwiJG5ld1JvdyIsImFwcGVuZCIsImZpbmQiLCJjbG9zZXN0IiwicmVtb3ZlIl0sInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvd2FyZWhvdXNlX21hbmFnZW1lbnQvb3BuYW1lcy9jcmVhdGUuanM/NWVlZiJdLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBwcm9kdWN0VXJsID0gJChcIiNwcm9kdWN0LWNvbnRhaW5lclwiKS5kYXRhKFwidXJsXCIpO1xuXG5mdW5jdGlvbiBjcmVhdGVQcm9kdWN0U2VsZWN0T3B0aW9ucyhjYWxsYmFjaykge1xuICAgICQuYWpheCh7XG4gICAgICAgIHVybDogcHJvZHVjdFVybCxcbiAgICAgICAgbWV0aG9kOiBcIkdFVFwiLFxuICAgICAgICBzdWNjZXNzOiBmdW5jdGlvbiAoZGF0YSkge1xuICAgICAgICAgICAgbGV0IG9wdGlvbnMgPSAnPG9wdGlvbiB2YWx1ZT1cIlwiPlBpbGloIFByb2R1azwvb3B0aW9uPic7XG4gICAgICAgICAgICBkYXRhLmZvckVhY2goKHByb2R1Y3QpID0+IHtcbiAgICAgICAgICAgICAgICBvcHRpb25zICs9IGA8b3B0aW9uIHZhbHVlPVwiJHtwcm9kdWN0LmlkfVwiPiR7cHJvZHVjdC5uYW1lfTwvb3B0aW9uPmA7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGNhbGxiYWNrKG9wdGlvbnMpO1xuICAgICAgICB9LFxuICAgICAgICBlcnJvcjogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgYWxlcnQoXCJHYWdhbCBtZW11YXQgcHJvZHVrLlwiKTtcbiAgICAgICAgfSxcbiAgICB9KTtcbn1cblxuJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24gKCkge1xuICAgIC8vIEluaXRpYWwgbG9hZCBvbmx5IGZvciB0aGUgZmlyc3Qgcm93XG4gICAgY3JlYXRlUHJvZHVjdFNlbGVjdE9wdGlvbnMoKG9wdGlvbnMpID0+IHtcbiAgICAgICAgJChcIi5wcm9kdWN0LXNlbGVjdFwiKS5maXJzdCgpLmh0bWwob3B0aW9ucyk7XG4gICAgfSk7XG5cbiAgICAvLyBXaGVuIGFkZGluZyBhIG5ldyByb3dcbiAgICAkKGRvY3VtZW50KS5vbihcImNsaWNrXCIsIFwiLmJ0bi1hZGQtcm93XCIsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgY29uc3Qgcm93ID0gYFxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLXJvdyBhbGlnbi1pdGVtcy1lbmQgcHJvZHVjdC1yb3dcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGNvbC1tZC00XCI+XG4gICAgICAgICAgICAgIDxzZWxlY3QgbmFtZT1cInByb2R1Y3RbXVwiIGNsYXNzPVwiZm9ybS1jb250cm9sIHByb2R1Y3Qtc2VsZWN0XCI+XG4gICAgICAgICAgICAgICAgPG9wdGlvbj5Mb2FkaW5nLi4uPC9vcHRpb24+XG4gICAgICAgICAgICAgIDwvc2VsZWN0PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCBjb2wtbWQtM1wiPlxuICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBuYW1lPVwic3lzdGVtX3F1YW50aXR5W11cIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIHBsYWNlaG9sZGVyPVwiU3RvayBzaXN0ZW1cIj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgY29sLW1kLTNcIj5cbiAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgbmFtZT1cInBoeXNpY2FsX3F1YW50aXR5W11cIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIHBsYWNlaG9sZGVyPVwiU3RvayBmaXNpa1wiPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCBjb2wtbWQtMlwiPlxuICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tZGFuZ2VyIGJ0bi1yZW1vdmUtcm93XCI+PGkgY2xhc3M9XCJmbGF0aWNvbjItZGVsZXRlXCI+PC9pPjwvYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIGA7XG5cbiAgICAgICAgY29uc3QgJG5ld1JvdyA9ICQocm93KTtcbiAgICAgICAgJChcIiNwcm9kdWN0LWNvbnRhaW5lclwiKS5hcHBlbmQoJG5ld1Jvdyk7XG5cbiAgICAgICAgLy8gTG9hZCBvcHRpb25zIG9ubHkgZm9yIHRoZSBuZXcgc2VsZWN0XG4gICAgICAgIGNyZWF0ZVByb2R1Y3RTZWxlY3RPcHRpb25zKChvcHRpb25zKSA9PiB7XG4gICAgICAgICAgICAkbmV3Um93LmZpbmQoXCIucHJvZHVjdC1zZWxlY3RcIikuaHRtbChvcHRpb25zKTtcbiAgICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICAvLyBSZW1vdmUgcm93XG4gICAgJChkb2N1bWVudCkub24oXCJjbGlja1wiLCBcIi5idG4tcmVtb3ZlLXJvd1wiLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICQodGhpcykuY2xvc2VzdChcIi5wcm9kdWN0LXJvd1wiKS5yZW1vdmUoKTtcbiAgICB9KTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiQUFBQSxJQUFNQSxVQUFVLEdBQUdDLENBQUMsQ0FBQyxvQkFBRCxDQUFELENBQXdCQyxJQUF4QixDQUE2QixLQUE3QixDQUFuQjs7QUFFQSxTQUFTQywwQkFBVCxDQUFvQ0MsUUFBcEMsRUFBOEM7RUFDMUNILENBQUMsQ0FBQ0ksSUFBRixDQUFPO0lBQ0hDLEdBQUcsRUFBRU4sVUFERjtJQUVITyxNQUFNLEVBQUUsS0FGTDtJQUdIQyxPQUFPLEVBQUUsaUJBQVVOLElBQVYsRUFBZ0I7TUFDckIsSUFBSU8sT0FBTyxHQUFHLHdDQUFkO01BQ0FQLElBQUksQ0FBQ1EsT0FBTCxDQUFhLFVBQUNDLE9BQUQsRUFBYTtRQUN0QkYsT0FBTyw4QkFBc0JFLE9BQU8sQ0FBQ0MsRUFBOUIsZ0JBQXFDRCxPQUFPLENBQUNFLElBQTdDLGNBQVA7TUFDSCxDQUZEO01BR0FULFFBQVEsQ0FBQ0ssT0FBRCxDQUFSO0lBQ0gsQ0FURTtJQVVISyxLQUFLLEVBQUUsaUJBQVk7TUFDZkMsS0FBSyxDQUFDLHNCQUFELENBQUw7SUFDSDtFQVpFLENBQVA7QUFjSDs7QUFFRGQsQ0FBQyxDQUFDZSxRQUFELENBQUQsQ0FBWUMsS0FBWixDQUFrQixZQUFZO0VBQzFCO0VBQ0FkLDBCQUEwQixDQUFDLFVBQUNNLE9BQUQsRUFBYTtJQUNwQ1IsQ0FBQyxDQUFDLGlCQUFELENBQUQsQ0FBcUJpQixLQUFyQixHQUE2QkMsSUFBN0IsQ0FBa0NWLE9BQWxDO0VBQ0gsQ0FGeUIsQ0FBMUIsQ0FGMEIsQ0FNMUI7O0VBQ0FSLENBQUMsQ0FBQ2UsUUFBRCxDQUFELENBQVlJLEVBQVosQ0FBZSxPQUFmLEVBQXdCLGNBQXhCLEVBQXdDLFlBQVk7SUFDaEQsSUFBTUMsR0FBRyw4MkJBQVQ7SUFtQkEsSUFBTUMsT0FBTyxHQUFHckIsQ0FBQyxDQUFDb0IsR0FBRCxDQUFqQjtJQUNBcEIsQ0FBQyxDQUFDLG9CQUFELENBQUQsQ0FBd0JzQixNQUF4QixDQUErQkQsT0FBL0IsRUFyQmdELENBdUJoRDs7SUFDQW5CLDBCQUEwQixDQUFDLFVBQUNNLE9BQUQsRUFBYTtNQUNwQ2EsT0FBTyxDQUFDRSxJQUFSLENBQWEsaUJBQWIsRUFBZ0NMLElBQWhDLENBQXFDVixPQUFyQztJQUNILENBRnlCLENBQTFCO0VBR0gsQ0EzQkQsRUFQMEIsQ0FvQzFCOztFQUNBUixDQUFDLENBQUNlLFFBQUQsQ0FBRCxDQUFZSSxFQUFaLENBQWUsT0FBZixFQUF3QixpQkFBeEIsRUFBMkMsWUFBWTtJQUNuRG5CLENBQUMsQ0FBQyxJQUFELENBQUQsQ0FBUXdCLE9BQVIsQ0FBZ0IsY0FBaEIsRUFBZ0NDLE1BQWhDO0VBQ0gsQ0FGRDtBQUdILENBeENEIn0=\n//# sourceURL=webpack-internal:///./resources/js/warehouse_management/opnames/create.js\n");
+eval("var productUrl = $(\"#product-container\").data(\"url\");\n\nfunction createProductSelectOptions(callback) {\n $.ajax({\n url: productUrl,\n method: \"GET\",\n success: function success(data) {\n var options = '';\n data.forEach(function (product) {\n options += \"\");\n });\n callback(options);\n },\n error: function error() {\n alert(\"Gagal memuat produk.\");\n }\n });\n}\n\n$(document).ready(function () {\n // Initial load only for the first row\n createProductSelectOptions(function (options) {\n $(\".product-select\").first().html(options);\n }); // When adding a new row\n\n $(document).on(\"click\", \".btn-add-row\", function () {\n var row = \"\\n \\n \";\n var $newRow = $(row);\n $(\"#product-container\").append($newRow); // Load options only for the new select\n\n createProductSelectOptions(function (options) {\n $newRow.find(\".product-select\").html(options);\n });\n }); // Remove row\n\n $(document).on(\"click\", \".btn-remove-row\", function () {\n $(this).closest(\".product-row\").remove();\n });\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJwcm9kdWN0VXJsIiwiJCIsImRhdGEiLCJjcmVhdGVQcm9kdWN0U2VsZWN0T3B0aW9ucyIsImNhbGxiYWNrIiwiYWpheCIsInVybCIsIm1ldGhvZCIsInN1Y2Nlc3MiLCJvcHRpb25zIiwiZm9yRWFjaCIsInByb2R1Y3QiLCJpZCIsIm5hbWUiLCJlcnJvciIsImFsZXJ0IiwiZG9jdW1lbnQiLCJyZWFkeSIsImZpcnN0IiwiaHRtbCIsIm9uIiwicm93IiwiJG5ld1JvdyIsImFwcGVuZCIsImZpbmQiLCJjbG9zZXN0IiwicmVtb3ZlIl0sInNvdXJjZXMiOlsid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy93YXJlaG91c2VfbWFuYWdlbWVudC9vcG5hbWVzL2NyZWF0ZS5qcz81ZWVmIl0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IHByb2R1Y3RVcmwgPSAkKFwiI3Byb2R1Y3QtY29udGFpbmVyXCIpLmRhdGEoXCJ1cmxcIik7XG5cbmZ1bmN0aW9uIGNyZWF0ZVByb2R1Y3RTZWxlY3RPcHRpb25zKGNhbGxiYWNrKSB7XG4gICAgJC5hamF4KHtcbiAgICAgICAgdXJsOiBwcm9kdWN0VXJsLFxuICAgICAgICBtZXRob2Q6IFwiR0VUXCIsXG4gICAgICAgIHN1Y2Nlc3M6IGZ1bmN0aW9uIChkYXRhKSB7XG4gICAgICAgICAgICBsZXQgb3B0aW9ucyA9ICc8b3B0aW9uIHZhbHVlPVwiXCI+UGlsaWggUHJvZHVrPC9vcHRpb24+JztcbiAgICAgICAgICAgIGRhdGEuZm9yRWFjaCgocHJvZHVjdCkgPT4ge1xuICAgICAgICAgICAgICAgIG9wdGlvbnMgKz0gYDxvcHRpb24gdmFsdWU9XCIke3Byb2R1Y3QuaWR9XCI+JHtwcm9kdWN0Lm5hbWV9PC9vcHRpb24+YDtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgY2FsbGJhY2sob3B0aW9ucyk7XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9yOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBhbGVydChcIkdhZ2FsIG1lbXVhdCBwcm9kdWsuXCIpO1xuICAgICAgICB9LFxuICAgIH0pO1xufVxuXG4kKGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbiAoKSB7XG4gICAgLy8gSW5pdGlhbCBsb2FkIG9ubHkgZm9yIHRoZSBmaXJzdCByb3dcbiAgICBjcmVhdGVQcm9kdWN0U2VsZWN0T3B0aW9ucygob3B0aW9ucykgPT4ge1xuICAgICAgICAkKFwiLnByb2R1Y3Qtc2VsZWN0XCIpLmZpcnN0KCkuaHRtbChvcHRpb25zKTtcbiAgICB9KTtcblxuICAgIC8vIFdoZW4gYWRkaW5nIGEgbmV3IHJvd1xuICAgICQoZG9jdW1lbnQpLm9uKFwiY2xpY2tcIiwgXCIuYnRuLWFkZC1yb3dcIiwgZnVuY3Rpb24gKCkge1xuICAgICAgICBjb25zdCByb3cgPSBgXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tcm93IGFsaWduLWl0ZW1zLWVuZCBwcm9kdWN0LXJvd1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgY29sLW1kLTRcIj5cbiAgICAgICAgICAgICAgPHNlbGVjdCBuYW1lPVwicHJvZHVjdFtdXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2wgcHJvZHVjdC1zZWxlY3RcIj5cbiAgICAgICAgICAgICAgICA8b3B0aW9uPkxvYWRpbmcuLi48L29wdGlvbj5cbiAgICAgICAgICAgICAgPC9zZWxlY3Q+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGNvbC1tZC0zXCI+XG4gICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIG5hbWU9XCJzeXN0ZW1fcXVhbnRpdHlbXVwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgcGxhY2Vob2xkZXI9XCJTdG9rIHNpc3RlbVwiPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCBjb2wtbWQtM1wiPlxuICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBuYW1lPVwicGh5c2ljYWxfcXVhbnRpdHlbXVwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgcGxhY2Vob2xkZXI9XCJTdG9rIGZpc2lrXCI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIGNvbC1tZC0yXCI+XG4gICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1kYW5nZXIgYnRuLXJlbW92ZS1yb3dcIj48aSBjbGFzcz1cImZsYXRpY29uMi1kZWxldGVcIj48L2k+PC9idXR0b24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgYDtcblxuICAgICAgICBjb25zdCAkbmV3Um93ID0gJChyb3cpO1xuICAgICAgICAkKFwiI3Byb2R1Y3QtY29udGFpbmVyXCIpLmFwcGVuZCgkbmV3Um93KTtcblxuICAgICAgICAvLyBMb2FkIG9wdGlvbnMgb25seSBmb3IgdGhlIG5ldyBzZWxlY3RcbiAgICAgICAgY3JlYXRlUHJvZHVjdFNlbGVjdE9wdGlvbnMoKG9wdGlvbnMpID0+IHtcbiAgICAgICAgICAgICRuZXdSb3cuZmluZChcIi5wcm9kdWN0LXNlbGVjdFwiKS5odG1sKG9wdGlvbnMpO1xuICAgICAgICB9KTtcbiAgICB9KTtcblxuICAgIC8vIFJlbW92ZSByb3dcbiAgICAkKGRvY3VtZW50KS5vbihcImNsaWNrXCIsIFwiLmJ0bi1yZW1vdmUtcm93XCIsIGZ1bmN0aW9uICgpIHtcbiAgICAgICAgJCh0aGlzKS5jbG9zZXN0KFwiLnByb2R1Y3Qtcm93XCIpLnJlbW92ZSgpO1xuICAgIH0pO1xufSk7XG4iXSwibWFwcGluZ3MiOiJBQUFBLElBQU1BLFVBQVUsR0FBR0MsQ0FBQyxDQUFDLG9CQUFELENBQUQsQ0FBd0JDLElBQXhCLENBQTZCLEtBQTdCLENBQW5COztBQUVBLFNBQVNDLDBCQUFULENBQW9DQyxRQUFwQyxFQUE4QztFQUMxQ0gsQ0FBQyxDQUFDSSxJQUFGLENBQU87SUFDSEMsR0FBRyxFQUFFTixVQURGO0lBRUhPLE1BQU0sRUFBRSxLQUZMO0lBR0hDLE9BQU8sRUFBRSxpQkFBVU4sSUFBVixFQUFnQjtNQUNyQixJQUFJTyxPQUFPLEdBQUcsd0NBQWQ7TUFDQVAsSUFBSSxDQUFDUSxPQUFMLENBQWEsVUFBQ0MsT0FBRCxFQUFhO1FBQ3RCRixPQUFPLDhCQUFzQkUsT0FBTyxDQUFDQyxFQUE5QixnQkFBcUNELE9BQU8sQ0FBQ0UsSUFBN0MsY0FBUDtNQUNILENBRkQ7TUFHQVQsUUFBUSxDQUFDSyxPQUFELENBQVI7SUFDSCxDQVRFO0lBVUhLLEtBQUssRUFBRSxpQkFBWTtNQUNmQyxLQUFLLENBQUMsc0JBQUQsQ0FBTDtJQUNIO0VBWkUsQ0FBUDtBQWNIOztBQUVEZCxDQUFDLENBQUNlLFFBQUQsQ0FBRCxDQUFZQyxLQUFaLENBQWtCLFlBQVk7RUFDMUI7RUFDQWQsMEJBQTBCLENBQUMsVUFBQ00sT0FBRCxFQUFhO0lBQ3BDUixDQUFDLENBQUMsaUJBQUQsQ0FBRCxDQUFxQmlCLEtBQXJCLEdBQTZCQyxJQUE3QixDQUFrQ1YsT0FBbEM7RUFDSCxDQUZ5QixDQUExQixDQUYwQixDQU0xQjs7RUFDQVIsQ0FBQyxDQUFDZSxRQUFELENBQUQsQ0FBWUksRUFBWixDQUFlLE9BQWYsRUFBd0IsY0FBeEIsRUFBd0MsWUFBWTtJQUNoRCxJQUFNQyxHQUFHLDgyQkFBVDtJQW1CQSxJQUFNQyxPQUFPLEdBQUdyQixDQUFDLENBQUNvQixHQUFELENBQWpCO0lBQ0FwQixDQUFDLENBQUMsb0JBQUQsQ0FBRCxDQUF3QnNCLE1BQXhCLENBQStCRCxPQUEvQixFQXJCZ0QsQ0F1QmhEOztJQUNBbkIsMEJBQTBCLENBQUMsVUFBQ00sT0FBRCxFQUFhO01BQ3BDYSxPQUFPLENBQUNFLElBQVIsQ0FBYSxpQkFBYixFQUFnQ0wsSUFBaEMsQ0FBcUNWLE9BQXJDO0lBQ0gsQ0FGeUIsQ0FBMUI7RUFHSCxDQTNCRCxFQVAwQixDQW9DMUI7O0VBQ0FSLENBQUMsQ0FBQ2UsUUFBRCxDQUFELENBQVlJLEVBQVosQ0FBZSxPQUFmLEVBQXdCLGlCQUF4QixFQUEyQyxZQUFZO0lBQ25EbkIsQ0FBQyxDQUFDLElBQUQsQ0FBRCxDQUFRd0IsT0FBUixDQUFnQixjQUFoQixFQUFnQ0MsTUFBaEM7RUFDSCxDQUZEO0FBR0gsQ0F4Q0QiLCJmaWxlIjoiLi9yZXNvdXJjZXMvanMvd2FyZWhvdXNlX21hbmFnZW1lbnQvb3BuYW1lcy9jcmVhdGUuanMiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./resources/js/warehouse_management/opnames/create.js\n");
/***/ })
diff --git a/public/js/warehouse_management/opnames/detail.js b/public/js/warehouse_management/opnames/detail.js
new file mode 100644
index 0000000..c3cbd5b
--- /dev/null
+++ b/public/js/warehouse_management/opnames/detail.js
@@ -0,0 +1,32 @@
+/*
+ * ATTENTION: An "eval-source-map" devtool has been used.
+ * This devtool is neither made for production nor for readable output files.
+ * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools.
+ * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
+ * or disable the default devtool with "devtool: false".
+ * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
+ */
+/******/ (() => { // webpackBootstrap
+/******/ var __webpack_modules__ = ({
+
+/***/ "./resources/js/warehouse_management/opnames/detail.js":
+/*!*************************************************************!*\
+ !*** ./resources/js/warehouse_management/opnames/detail.js ***!
+ \*************************************************************/
+/***/ (() => {
+
+eval("$.ajaxSetup({\n headers: {\n \"X-CSRF-TOKEN\": $('meta[name=\"csrf-token\"]').attr(\"content\")\n }\n});\nvar tableContainer = $(\"#opname-detail-table\");\nvar url = tableContainer.data(\"url\");\nvar table = $(\"#opname-detail-table\").DataTable({\n processing: true,\n serverSide: true,\n ajax: url,\n columns: [{\n data: \"opname_date\",\n name: \"opname_date\"\n }, {\n data: \"user_name\",\n name: \"user.name\"\n }, {\n data: \"product_name\",\n name: \"product.name\"\n }, {\n data: \"system_stock\",\n name: \"system_stock\"\n }, {\n data: \"physical_stock\",\n name: \"physical_stock\"\n }, {\n data: \"difference\",\n name: \"difference\"\n }]\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyIkIiwiYWpheFNldHVwIiwiaGVhZGVycyIsImF0dHIiLCJ0YWJsZUNvbnRhaW5lciIsInVybCIsImRhdGEiLCJ0YWJsZSIsIkRhdGFUYWJsZSIsInByb2Nlc3NpbmciLCJzZXJ2ZXJTaWRlIiwiYWpheCIsImNvbHVtbnMiLCJuYW1lIl0sInNvdXJjZXMiOlsid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy93YXJlaG91c2VfbWFuYWdlbWVudC9vcG5hbWVzL2RldGFpbC5qcz9mMzY3Il0sInNvdXJjZXNDb250ZW50IjpbIiQuYWpheFNldHVwKHtcbiAgICBoZWFkZXJzOiB7XG4gICAgICAgIFwiWC1DU1JGLVRPS0VOXCI6ICQoJ21ldGFbbmFtZT1cImNzcmYtdG9rZW5cIl0nKS5hdHRyKFwiY29udGVudFwiKSxcbiAgICB9LFxufSk7XG5sZXQgdGFibGVDb250YWluZXIgPSAkKFwiI29wbmFtZS1kZXRhaWwtdGFibGVcIik7XG5sZXQgdXJsID0gdGFibGVDb250YWluZXIuZGF0YShcInVybFwiKTtcbmxldCB0YWJsZSA9ICQoXCIjb3BuYW1lLWRldGFpbC10YWJsZVwiKS5EYXRhVGFibGUoe1xuICAgIHByb2Nlc3Npbmc6IHRydWUsXG4gICAgc2VydmVyU2lkZTogdHJ1ZSxcbiAgICBhamF4OiB1cmwsXG4gICAgY29sdW1uczogW1xuICAgICAgICB7IGRhdGE6IFwib3BuYW1lX2RhdGVcIiwgbmFtZTogXCJvcG5hbWVfZGF0ZVwiIH0sXG4gICAgICAgIHsgZGF0YTogXCJ1c2VyX25hbWVcIiwgbmFtZTogXCJ1c2VyLm5hbWVcIiB9LFxuICAgICAgICB7IGRhdGE6IFwicHJvZHVjdF9uYW1lXCIsIG5hbWU6IFwicHJvZHVjdC5uYW1lXCIgfSxcbiAgICAgICAgeyBkYXRhOiBcInN5c3RlbV9zdG9ja1wiLCBuYW1lOiBcInN5c3RlbV9zdG9ja1wiIH0sXG4gICAgICAgIHsgZGF0YTogXCJwaHlzaWNhbF9zdG9ja1wiLCBuYW1lOiBcInBoeXNpY2FsX3N0b2NrXCIgfSxcbiAgICAgICAgeyBkYXRhOiBcImRpZmZlcmVuY2VcIiwgbmFtZTogXCJkaWZmZXJlbmNlXCIgfSxcbiAgICBdLFxufSk7XG4iXSwibWFwcGluZ3MiOiJBQUFBQSxDQUFDLENBQUNDLFNBQUYsQ0FBWTtFQUNSQyxPQUFPLEVBQUU7SUFDTCxnQkFBZ0JGLENBQUMsQ0FBQyx5QkFBRCxDQUFELENBQTZCRyxJQUE3QixDQUFrQyxTQUFsQztFQURYO0FBREQsQ0FBWjtBQUtBLElBQUlDLGNBQWMsR0FBR0osQ0FBQyxDQUFDLHNCQUFELENBQXRCO0FBQ0EsSUFBSUssR0FBRyxHQUFHRCxjQUFjLENBQUNFLElBQWYsQ0FBb0IsS0FBcEIsQ0FBVjtBQUNBLElBQUlDLEtBQUssR0FBR1AsQ0FBQyxDQUFDLHNCQUFELENBQUQsQ0FBMEJRLFNBQTFCLENBQW9DO0VBQzVDQyxVQUFVLEVBQUUsSUFEZ0M7RUFFNUNDLFVBQVUsRUFBRSxJQUZnQztFQUc1Q0MsSUFBSSxFQUFFTixHQUhzQztFQUk1Q08sT0FBTyxFQUFFLENBQ0w7SUFBRU4sSUFBSSxFQUFFLGFBQVI7SUFBdUJPLElBQUksRUFBRTtFQUE3QixDQURLLEVBRUw7SUFBRVAsSUFBSSxFQUFFLFdBQVI7SUFBcUJPLElBQUksRUFBRTtFQUEzQixDQUZLLEVBR0w7SUFBRVAsSUFBSSxFQUFFLGNBQVI7SUFBd0JPLElBQUksRUFBRTtFQUE5QixDQUhLLEVBSUw7SUFBRVAsSUFBSSxFQUFFLGNBQVI7SUFBd0JPLElBQUksRUFBRTtFQUE5QixDQUpLLEVBS0w7SUFBRVAsSUFBSSxFQUFFLGdCQUFSO0lBQTBCTyxJQUFJLEVBQUU7RUFBaEMsQ0FMSyxFQU1MO0lBQUVQLElBQUksRUFBRSxZQUFSO0lBQXNCTyxJQUFJLEVBQUU7RUFBNUIsQ0FOSztBQUptQyxDQUFwQyxDQUFaIiwiZmlsZSI6Ii4vcmVzb3VyY2VzL2pzL3dhcmVob3VzZV9tYW5hZ2VtZW50L29wbmFtZXMvZGV0YWlsLmpzIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./resources/js/warehouse_management/opnames/detail.js\n");
+
+/***/ })
+
+/******/ });
+/************************************************************************/
+/******/
+/******/ // startup
+/******/ // Load entry module and return exports
+/******/ // This entry module can't be inlined because the eval-source-map devtool is used.
+/******/ var __webpack_exports__ = {};
+/******/ __webpack_modules__["./resources/js/warehouse_management/opnames/detail.js"]();
+/******/
+/******/ })()
+;
\ No newline at end of file
diff --git a/public/js/warehouse_management/opnames/index.js b/public/js/warehouse_management/opnames/index.js
index c6da8b8..fad155d 100644
--- a/public/js/warehouse_management/opnames/index.js
+++ b/public/js/warehouse_management/opnames/index.js
@@ -15,7 +15,7 @@
\************************************************************/
/***/ (() => {
-eval("$.ajaxSetup({\n headers: {\n \"X-CSRF-TOKEN\": $('meta[name=\"csrf-token\"]').attr(\"content\")\n }\n});\nvar tableContainer = $(\"#opnames-table\");\nvar url = tableContainer.data(\"url\");\nvar table = $(\"#opnames-table\").DataTable({\n processing: true,\n serverSide: true,\n ajax: url,\n columns: [{\n data: \"dealer_name\",\n name: \"dealer.name\"\n }, {\n data: \"user_name\",\n name: \"user.name\"\n }, {\n data: \"opname_date\",\n name: \"opname_date\"\n }, {\n data: \"action\",\n name: \"action\",\n orderable: false,\n searchable: false\n }]\n});\n$(document).on(\"click\", \".btn-product-stock-dealers\", function () {\n var productId = $(this).data(\"id\");\n var productName = $(this).data(\"name\");\n var ajaxUrl = $(this).data(\"url\"); // Set product name in modal title\n\n $(\"#product-name-title\").text(productName); // Initialize or reload DataTable inside modal\n\n $(\"#dealer-stock-table\").DataTable({\n destroy: true,\n // reinit if exists\n processing: true,\n serverSide: true,\n ajax: {\n url: ajaxUrl,\n data: {\n product_id: productId\n }\n },\n columns: [{\n data: \"dealer_name\",\n name: \"dealer_name\"\n }, {\n data: \"system_stock\",\n name: \"system_stock\"\n }, {\n data: \"physical_stock\",\n name: \"physical_stock\"\n }, {\n data: \"difference\",\n name: \"difference\"\n }, {\n data: \"opname_date\",\n name: \"opname_date\"\n }]\n }); // Show the modal\n\n $(\"#dealerStockModal\").modal(\"show\");\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9yZXNvdXJjZXMvanMvd2FyZWhvdXNlX21hbmFnZW1lbnQvb3BuYW1lcy9pbmRleC5qcyIsIm5hbWVzIjpbIiQiLCJhamF4U2V0dXAiLCJoZWFkZXJzIiwiYXR0ciIsInRhYmxlQ29udGFpbmVyIiwidXJsIiwiZGF0YSIsInRhYmxlIiwiRGF0YVRhYmxlIiwicHJvY2Vzc2luZyIsInNlcnZlclNpZGUiLCJhamF4IiwiY29sdW1ucyIsIm5hbWUiLCJvcmRlcmFibGUiLCJzZWFyY2hhYmxlIiwiZG9jdW1lbnQiLCJvbiIsInByb2R1Y3RJZCIsInByb2R1Y3ROYW1lIiwiYWpheFVybCIsInRleHQiLCJkZXN0cm95IiwicHJvZHVjdF9pZCIsIm1vZGFsIl0sInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvd2FyZWhvdXNlX21hbmFnZW1lbnQvb3BuYW1lcy9pbmRleC5qcz9hNGM4Il0sInNvdXJjZXNDb250ZW50IjpbIiQuYWpheFNldHVwKHtcbiAgICBoZWFkZXJzOiB7XG4gICAgICAgIFwiWC1DU1JGLVRPS0VOXCI6ICQoJ21ldGFbbmFtZT1cImNzcmYtdG9rZW5cIl0nKS5hdHRyKFwiY29udGVudFwiKSxcbiAgICB9LFxufSk7XG5sZXQgdGFibGVDb250YWluZXIgPSAkKFwiI29wbmFtZXMtdGFibGVcIik7XG5sZXQgdXJsID0gdGFibGVDb250YWluZXIuZGF0YShcInVybFwiKTtcbmxldCB0YWJsZSA9ICQoXCIjb3BuYW1lcy10YWJsZVwiKS5EYXRhVGFibGUoe1xuICAgIHByb2Nlc3Npbmc6IHRydWUsXG4gICAgc2VydmVyU2lkZTogdHJ1ZSxcbiAgICBhamF4OiB1cmwsXG4gICAgY29sdW1uczogW1xuICAgICAgICB7IGRhdGE6IFwiZGVhbGVyX25hbWVcIiwgbmFtZTogXCJkZWFsZXIubmFtZVwiIH0sXG4gICAgICAgIHsgZGF0YTogXCJ1c2VyX25hbWVcIiwgbmFtZTogXCJ1c2VyLm5hbWVcIiB9LFxuICAgICAgICB7IGRhdGE6IFwib3BuYW1lX2RhdGVcIiwgbmFtZTogXCJvcG5hbWVfZGF0ZVwiIH0sXG4gICAgICAgIHsgZGF0YTogXCJhY3Rpb25cIiwgbmFtZTogXCJhY3Rpb25cIiwgb3JkZXJhYmxlOiBmYWxzZSwgc2VhcmNoYWJsZTogZmFsc2UgfSxcbiAgICBdLFxufSk7XG4kKGRvY3VtZW50KS5vbihcImNsaWNrXCIsIFwiLmJ0bi1wcm9kdWN0LXN0b2NrLWRlYWxlcnNcIiwgZnVuY3Rpb24gKCkge1xuICAgIGNvbnN0IHByb2R1Y3RJZCA9ICQodGhpcykuZGF0YShcImlkXCIpO1xuICAgIGNvbnN0IHByb2R1Y3ROYW1lID0gJCh0aGlzKS5kYXRhKFwibmFtZVwiKTtcbiAgICBjb25zdCBhamF4VXJsID0gJCh0aGlzKS5kYXRhKFwidXJsXCIpO1xuXG4gICAgLy8gU2V0IHByb2R1Y3QgbmFtZSBpbiBtb2RhbCB0aXRsZVxuICAgICQoXCIjcHJvZHVjdC1uYW1lLXRpdGxlXCIpLnRleHQocHJvZHVjdE5hbWUpO1xuXG4gICAgLy8gSW5pdGlhbGl6ZSBvciByZWxvYWQgRGF0YVRhYmxlIGluc2lkZSBtb2RhbFxuICAgICQoXCIjZGVhbGVyLXN0b2NrLXRhYmxlXCIpLkRhdGFUYWJsZSh7XG4gICAgICAgIGRlc3Ryb3k6IHRydWUsIC8vIHJlaW5pdCBpZiBleGlzdHNcbiAgICAgICAgcHJvY2Vzc2luZzogdHJ1ZSxcbiAgICAgICAgc2VydmVyU2lkZTogdHJ1ZSxcbiAgICAgICAgYWpheDoge1xuICAgICAgICAgICAgdXJsOiBhamF4VXJsLFxuICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgIHByb2R1Y3RfaWQ6IHByb2R1Y3RJZCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGNvbHVtbnM6IFtcbiAgICAgICAgICAgIHsgZGF0YTogXCJkZWFsZXJfbmFtZVwiLCBuYW1lOiBcImRlYWxlcl9uYW1lXCIgfSxcbiAgICAgICAgICAgIHsgZGF0YTogXCJzeXN0ZW1fc3RvY2tcIiwgbmFtZTogXCJzeXN0ZW1fc3RvY2tcIiB9LFxuICAgICAgICAgICAgeyBkYXRhOiBcInBoeXNpY2FsX3N0b2NrXCIsIG5hbWU6IFwicGh5c2ljYWxfc3RvY2tcIiB9LFxuICAgICAgICAgICAgeyBkYXRhOiBcImRpZmZlcmVuY2VcIiwgbmFtZTogXCJkaWZmZXJlbmNlXCIgfSxcbiAgICAgICAgICAgIHsgZGF0YTogXCJvcG5hbWVfZGF0ZVwiLCBuYW1lOiBcIm9wbmFtZV9kYXRlXCIgfSxcbiAgICAgICAgXSxcbiAgICB9KTtcblxuICAgIC8vIFNob3cgdGhlIG1vZGFsXG4gICAgJChcIiNkZWFsZXJTdG9ja01vZGFsXCIpLm1vZGFsKFwic2hvd1wiKTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiQUFBQUEsQ0FBQyxDQUFDQyxTQUFGLENBQVk7RUFDUkMsT0FBTyxFQUFFO0lBQ0wsZ0JBQWdCRixDQUFDLENBQUMseUJBQUQsQ0FBRCxDQUE2QkcsSUFBN0IsQ0FBa0MsU0FBbEM7RUFEWDtBQURELENBQVo7QUFLQSxJQUFJQyxjQUFjLEdBQUdKLENBQUMsQ0FBQyxnQkFBRCxDQUF0QjtBQUNBLElBQUlLLEdBQUcsR0FBR0QsY0FBYyxDQUFDRSxJQUFmLENBQW9CLEtBQXBCLENBQVY7QUFDQSxJQUFJQyxLQUFLLEdBQUdQLENBQUMsQ0FBQyxnQkFBRCxDQUFELENBQW9CUSxTQUFwQixDQUE4QjtFQUN0Q0MsVUFBVSxFQUFFLElBRDBCO0VBRXRDQyxVQUFVLEVBQUUsSUFGMEI7RUFHdENDLElBQUksRUFBRU4sR0FIZ0M7RUFJdENPLE9BQU8sRUFBRSxDQUNMO0lBQUVOLElBQUksRUFBRSxhQUFSO0lBQXVCTyxJQUFJLEVBQUU7RUFBN0IsQ0FESyxFQUVMO0lBQUVQLElBQUksRUFBRSxXQUFSO0lBQXFCTyxJQUFJLEVBQUU7RUFBM0IsQ0FGSyxFQUdMO0lBQUVQLElBQUksRUFBRSxhQUFSO0lBQXVCTyxJQUFJLEVBQUU7RUFBN0IsQ0FISyxFQUlMO0lBQUVQLElBQUksRUFBRSxRQUFSO0lBQWtCTyxJQUFJLEVBQUUsUUFBeEI7SUFBa0NDLFNBQVMsRUFBRSxLQUE3QztJQUFvREMsVUFBVSxFQUFFO0VBQWhFLENBSks7QUFKNkIsQ0FBOUIsQ0FBWjtBQVdBZixDQUFDLENBQUNnQixRQUFELENBQUQsQ0FBWUMsRUFBWixDQUFlLE9BQWYsRUFBd0IsNEJBQXhCLEVBQXNELFlBQVk7RUFDOUQsSUFBTUMsU0FBUyxHQUFHbEIsQ0FBQyxDQUFDLElBQUQsQ0FBRCxDQUFRTSxJQUFSLENBQWEsSUFBYixDQUFsQjtFQUNBLElBQU1hLFdBQVcsR0FBR25CLENBQUMsQ0FBQyxJQUFELENBQUQsQ0FBUU0sSUFBUixDQUFhLE1BQWIsQ0FBcEI7RUFDQSxJQUFNYyxPQUFPLEdBQUdwQixDQUFDLENBQUMsSUFBRCxDQUFELENBQVFNLElBQVIsQ0FBYSxLQUFiLENBQWhCLENBSDhELENBSzlEOztFQUNBTixDQUFDLENBQUMscUJBQUQsQ0FBRCxDQUF5QnFCLElBQXpCLENBQThCRixXQUE5QixFQU44RCxDQVE5RDs7RUFDQW5CLENBQUMsQ0FBQyxxQkFBRCxDQUFELENBQXlCUSxTQUF6QixDQUFtQztJQUMvQmMsT0FBTyxFQUFFLElBRHNCO0lBQ2hCO0lBQ2ZiLFVBQVUsRUFBRSxJQUZtQjtJQUcvQkMsVUFBVSxFQUFFLElBSG1CO0lBSS9CQyxJQUFJLEVBQUU7TUFDRk4sR0FBRyxFQUFFZSxPQURIO01BRUZkLElBQUksRUFBRTtRQUNGaUIsVUFBVSxFQUFFTDtNQURWO0lBRkosQ0FKeUI7SUFVL0JOLE9BQU8sRUFBRSxDQUNMO01BQUVOLElBQUksRUFBRSxhQUFSO01BQXVCTyxJQUFJLEVBQUU7SUFBN0IsQ0FESyxFQUVMO01BQUVQLElBQUksRUFBRSxjQUFSO01BQXdCTyxJQUFJLEVBQUU7SUFBOUIsQ0FGSyxFQUdMO01BQUVQLElBQUksRUFBRSxnQkFBUjtNQUEwQk8sSUFBSSxFQUFFO0lBQWhDLENBSEssRUFJTDtNQUFFUCxJQUFJLEVBQUUsWUFBUjtNQUFzQk8sSUFBSSxFQUFFO0lBQTVCLENBSkssRUFLTDtNQUFFUCxJQUFJLEVBQUUsYUFBUjtNQUF1Qk8sSUFBSSxFQUFFO0lBQTdCLENBTEs7RUFWc0IsQ0FBbkMsRUFUOEQsQ0E0QjlEOztFQUNBYixDQUFDLENBQUMsbUJBQUQsQ0FBRCxDQUF1QndCLEtBQXZCLENBQTZCLE1BQTdCO0FBQ0gsQ0E5QkQifQ==\n//# sourceURL=webpack-internal:///./resources/js/warehouse_management/opnames/index.js\n");
+eval("$.ajaxSetup({\n headers: {\n \"X-CSRF-TOKEN\": $('meta[name=\"csrf-token\"]').attr(\"content\")\n }\n});\nvar tableContainer = $(\"#opnames-table\");\nvar url = tableContainer.data(\"url\");\nvar table = $(\"#opnames-table\").DataTable({\n processing: true,\n serverSide: true,\n ajax: url,\n columns: [{\n data: \"dealer_name\",\n name: \"dealer.name\"\n }, {\n data: \"user_name\",\n name: \"user.name\"\n }, {\n data: \"opname_date\",\n name: \"opname_date\"\n }, {\n data: \"action\",\n name: \"action\",\n orderable: false,\n searchable: false\n }]\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyIkIiwiYWpheFNldHVwIiwiaGVhZGVycyIsImF0dHIiLCJ0YWJsZUNvbnRhaW5lciIsInVybCIsImRhdGEiLCJ0YWJsZSIsIkRhdGFUYWJsZSIsInByb2Nlc3NpbmciLCJzZXJ2ZXJTaWRlIiwiYWpheCIsImNvbHVtbnMiLCJuYW1lIiwib3JkZXJhYmxlIiwic2VhcmNoYWJsZSJdLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvd2FyZWhvdXNlX21hbmFnZW1lbnQvb3BuYW1lcy9pbmRleC5qcz9hNGM4Il0sInNvdXJjZXNDb250ZW50IjpbIiQuYWpheFNldHVwKHtcbiAgICBoZWFkZXJzOiB7XG4gICAgICAgIFwiWC1DU1JGLVRPS0VOXCI6ICQoJ21ldGFbbmFtZT1cImNzcmYtdG9rZW5cIl0nKS5hdHRyKFwiY29udGVudFwiKSxcbiAgICB9LFxufSk7XG5sZXQgdGFibGVDb250YWluZXIgPSAkKFwiI29wbmFtZXMtdGFibGVcIik7XG5sZXQgdXJsID0gdGFibGVDb250YWluZXIuZGF0YShcInVybFwiKTtcbmxldCB0YWJsZSA9ICQoXCIjb3BuYW1lcy10YWJsZVwiKS5EYXRhVGFibGUoe1xuICAgIHByb2Nlc3Npbmc6IHRydWUsXG4gICAgc2VydmVyU2lkZTogdHJ1ZSxcbiAgICBhamF4OiB1cmwsXG4gICAgY29sdW1uczogW1xuICAgICAgICB7IGRhdGE6IFwiZGVhbGVyX25hbWVcIiwgbmFtZTogXCJkZWFsZXIubmFtZVwiIH0sXG4gICAgICAgIHsgZGF0YTogXCJ1c2VyX25hbWVcIiwgbmFtZTogXCJ1c2VyLm5hbWVcIiB9LFxuICAgICAgICB7IGRhdGE6IFwib3BuYW1lX2RhdGVcIiwgbmFtZTogXCJvcG5hbWVfZGF0ZVwiIH0sXG4gICAgICAgIHsgZGF0YTogXCJhY3Rpb25cIiwgbmFtZTogXCJhY3Rpb25cIiwgb3JkZXJhYmxlOiBmYWxzZSwgc2VhcmNoYWJsZTogZmFsc2UgfSxcbiAgICBdLFxufSk7XG4iXSwibWFwcGluZ3MiOiJBQUFBQSxDQUFDLENBQUNDLFNBQUYsQ0FBWTtFQUNSQyxPQUFPLEVBQUU7SUFDTCxnQkFBZ0JGLENBQUMsQ0FBQyx5QkFBRCxDQUFELENBQTZCRyxJQUE3QixDQUFrQyxTQUFsQztFQURYO0FBREQsQ0FBWjtBQUtBLElBQUlDLGNBQWMsR0FBR0osQ0FBQyxDQUFDLGdCQUFELENBQXRCO0FBQ0EsSUFBSUssR0FBRyxHQUFHRCxjQUFjLENBQUNFLElBQWYsQ0FBb0IsS0FBcEIsQ0FBVjtBQUNBLElBQUlDLEtBQUssR0FBR1AsQ0FBQyxDQUFDLGdCQUFELENBQUQsQ0FBb0JRLFNBQXBCLENBQThCO0VBQ3RDQyxVQUFVLEVBQUUsSUFEMEI7RUFFdENDLFVBQVUsRUFBRSxJQUYwQjtFQUd0Q0MsSUFBSSxFQUFFTixHQUhnQztFQUl0Q08sT0FBTyxFQUFFLENBQ0w7SUFBRU4sSUFBSSxFQUFFLGFBQVI7SUFBdUJPLElBQUksRUFBRTtFQUE3QixDQURLLEVBRUw7SUFBRVAsSUFBSSxFQUFFLFdBQVI7SUFBcUJPLElBQUksRUFBRTtFQUEzQixDQUZLLEVBR0w7SUFBRVAsSUFBSSxFQUFFLGFBQVI7SUFBdUJPLElBQUksRUFBRTtFQUE3QixDQUhLLEVBSUw7SUFBRVAsSUFBSSxFQUFFLFFBQVI7SUFBa0JPLElBQUksRUFBRSxRQUF4QjtJQUFrQ0MsU0FBUyxFQUFFLEtBQTdDO0lBQW9EQyxVQUFVLEVBQUU7RUFBaEUsQ0FKSztBQUo2QixDQUE5QixDQUFaIiwiZmlsZSI6Ii4vcmVzb3VyY2VzL2pzL3dhcmVob3VzZV9tYW5hZ2VtZW50L29wbmFtZXMvaW5kZXguanMiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///./resources/js/warehouse_management/opnames/index.js\n");
/***/ })
diff --git a/public/js/warehouse_management/products/index.js b/public/js/warehouse_management/products/index.js
index 12a7669..636b000 100644
--- a/public/js/warehouse_management/products/index.js
+++ b/public/js/warehouse_management/products/index.js
@@ -15,7 +15,7 @@
\*************************************************************/
/***/ (() => {
-eval("$.ajaxSetup({\n headers: {\n \"X-CSRF-TOKEN\": $('meta[name=\"csrf-token\"]').attr(\"content\")\n }\n});\nvar tableContainer = $(\"#products-table\");\nvar url = tableContainer.data(\"url\");\nvar table = $(\"#products-table\").DataTable({\n processing: true,\n serverSide: true,\n ajax: url,\n columns: [{\n data: \"code\",\n name: \"code\"\n }, {\n data: \"name\",\n name: \"name\"\n }, {\n data: \"category_name\",\n name: \"category.name\"\n }, {\n data: \"unit\",\n name: \"unit\"\n }, {\n data: \"total_stock\",\n name: \"total_stock\"\n }, {\n data: \"action\",\n name: \"action\",\n orderable: false,\n searchable: false\n }]\n});\n$(document).on(\"click\", \".btn-destroy-product\", function () {\n var _this = this;\n\n Swal.fire({\n title: \"Hapus produk?\",\n text: \"Anda tidak akan bisa mengembalikannya!\",\n showCancelButton: true,\n confirmButtonColor: \"#d33\",\n cancelButtonColor: \"#dedede\",\n confirmButtonText: \"Hapus\"\n }).then(function (result) {\n if (result.value) {\n var _url = $(_this).data(\"action\");\n\n $.ajax({\n url: _url,\n method: \"POST\",\n data: {\n _method: \"DELETE\",\n _token: $('meta[name=\"csrf-token\"]').attr(\"content\")\n },\n success: function success() {\n alert(\"Produk berhasil dihapus.\");\n $(\"#products-table\").DataTable().ajax.reload();\n },\n error: function error(xhr) {\n alert(\"Gagal menghapus produk.\");\n console.error(xhr.responseText);\n }\n });\n }\n });\n});\n$(document).on(\"click\", \".btn-toggle-active\", function () {\n var button = $(this);\n var url = button.data(\"url\");\n Swal.fire({\n title: \"Status produk?\",\n text: \"Anda yakin ingin mengganti status produk!\",\n showCancelButton: true,\n confirmButtonColor: \"#d33\",\n cancelButtonColor: \"#dedede\",\n confirmButtonText: \"Ya\"\n }).then(function (result) {\n if (result.value) {\n $.ajax({\n url: url,\n method: \"POST\",\n data: {\n _token: $('meta[name=\"csrf-token\"]').attr(\"content\")\n },\n success: function success(response) {\n if (response.success) {\n $(\"#products-table\").DataTable().ajax.reload(null, false);\n alert(response.message);\n }\n },\n error: function error() {\n alert(\"Gagal mengubah status produk.\");\n }\n });\n }\n });\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyIkIiwiYWpheFNldHVwIiwiaGVhZGVycyIsImF0dHIiLCJ0YWJsZUNvbnRhaW5lciIsInVybCIsImRhdGEiLCJ0YWJsZSIsIkRhdGFUYWJsZSIsInByb2Nlc3NpbmciLCJzZXJ2ZXJTaWRlIiwiYWpheCIsImNvbHVtbnMiLCJuYW1lIiwib3JkZXJhYmxlIiwic2VhcmNoYWJsZSIsImRvY3VtZW50Iiwib24iLCJTd2FsIiwiZmlyZSIsInRpdGxlIiwidGV4dCIsInNob3dDYW5jZWxCdXR0b24iLCJjb25maXJtQnV0dG9uQ29sb3IiLCJjYW5jZWxCdXR0b25Db2xvciIsImNvbmZpcm1CdXR0b25UZXh0IiwidGhlbiIsInJlc3VsdCIsInZhbHVlIiwibWV0aG9kIiwiX21ldGhvZCIsIl90b2tlbiIsInN1Y2Nlc3MiLCJhbGVydCIsInJlbG9hZCIsImVycm9yIiwieGhyIiwiY29uc29sZSIsInJlc3BvbnNlVGV4dCIsImJ1dHRvbiIsInJlc3BvbnNlIiwibWVzc2FnZSJdLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvd2FyZWhvdXNlX21hbmFnZW1lbnQvcHJvZHVjdHMvaW5kZXguanM/ZmNkNiJdLCJzb3VyY2VzQ29udGVudCI6WyIkLmFqYXhTZXR1cCh7XG4gICAgaGVhZGVyczoge1xuICAgICAgICBcIlgtQ1NSRi1UT0tFTlwiOiAkKCdtZXRhW25hbWU9XCJjc3JmLXRva2VuXCJdJykuYXR0cihcImNvbnRlbnRcIiksXG4gICAgfSxcbn0pO1xubGV0IHRhYmxlQ29udGFpbmVyID0gJChcIiNwcm9kdWN0cy10YWJsZVwiKTtcbmxldCB1cmwgPSB0YWJsZUNvbnRhaW5lci5kYXRhKFwidXJsXCIpO1xubGV0IHRhYmxlID0gJChcIiNwcm9kdWN0cy10YWJsZVwiKS5EYXRhVGFibGUoe1xuICAgIHByb2Nlc3Npbmc6IHRydWUsXG4gICAgc2VydmVyU2lkZTogdHJ1ZSxcbiAgICBhamF4OiB1cmwsXG4gICAgY29sdW1uczogW1xuICAgICAgICB7IGRhdGE6IFwiY29kZVwiLCBuYW1lOiBcImNvZGVcIiB9LFxuICAgICAgICB7IGRhdGE6IFwibmFtZVwiLCBuYW1lOiBcIm5hbWVcIiB9LFxuICAgICAgICB7IGRhdGE6IFwiY2F0ZWdvcnlfbmFtZVwiLCBuYW1lOiBcImNhdGVnb3J5Lm5hbWVcIiB9LFxuICAgICAgICB7IGRhdGE6IFwidW5pdFwiLCBuYW1lOiBcInVuaXRcIiB9LFxuICAgICAgICB7IGRhdGE6IFwidG90YWxfc3RvY2tcIiwgbmFtZTogXCJ0b3RhbF9zdG9ja1wiIH0sXG4gICAgICAgIHsgZGF0YTogXCJhY3Rpb25cIiwgbmFtZTogXCJhY3Rpb25cIiwgb3JkZXJhYmxlOiBmYWxzZSwgc2VhcmNoYWJsZTogZmFsc2UgfSxcbiAgICBdLFxufSk7XG5cbiQoZG9jdW1lbnQpLm9uKFwiY2xpY2tcIiwgXCIuYnRuLWRlc3Ryb3ktcHJvZHVjdFwiLCBmdW5jdGlvbiAoKSB7XG4gICAgU3dhbC5maXJlKHtcbiAgICAgICAgdGl0bGU6IFwiSGFwdXMgcHJvZHVrP1wiLFxuICAgICAgICB0ZXh0OiBcIkFuZGEgdGlkYWsgYWthbiBiaXNhIG1lbmdlbWJhbGlrYW5ueWEhXCIsXG4gICAgICAgIHNob3dDYW5jZWxCdXR0b246IHRydWUsXG4gICAgICAgIGNvbmZpcm1CdXR0b25Db2xvcjogXCIjZDMzXCIsXG4gICAgICAgIGNhbmNlbEJ1dHRvbkNvbG9yOiBcIiNkZWRlZGVcIixcbiAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6IFwiSGFwdXNcIixcbiAgICB9KS50aGVuKChyZXN1bHQpID0+IHtcbiAgICAgICAgaWYgKHJlc3VsdC52YWx1ZSkge1xuICAgICAgICAgICAgY29uc3QgdXJsID0gJCh0aGlzKS5kYXRhKFwiYWN0aW9uXCIpO1xuICAgICAgICAgICAgJC5hamF4KHtcbiAgICAgICAgICAgICAgICB1cmw6IHVybCxcbiAgICAgICAgICAgICAgICBtZXRob2Q6IFwiUE9TVFwiLFxuICAgICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICAgICAgX21ldGhvZDogXCJERUxFVEVcIixcbiAgICAgICAgICAgICAgICAgICAgX3Rva2VuOiAkKCdtZXRhW25hbWU9XCJjc3JmLXRva2VuXCJdJykuYXR0cihcImNvbnRlbnRcIiksXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBzdWNjZXNzOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgIGFsZXJ0KFwiUHJvZHVrIGJlcmhhc2lsIGRpaGFwdXMuXCIpO1xuICAgICAgICAgICAgICAgICAgICAkKFwiI3Byb2R1Y3RzLXRhYmxlXCIpLkRhdGFUYWJsZSgpLmFqYXgucmVsb2FkKCk7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBlcnJvcjogZnVuY3Rpb24gKHhocikge1xuICAgICAgICAgICAgICAgICAgICBhbGVydChcIkdhZ2FsIG1lbmdoYXB1cyBwcm9kdWsuXCIpO1xuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKHhoci5yZXNwb25zZVRleHQpO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH0pO1xufSk7XG4kKGRvY3VtZW50KS5vbihcImNsaWNrXCIsIFwiLmJ0bi10b2dnbGUtYWN0aXZlXCIsIGZ1bmN0aW9uICgpIHtcbiAgICBsZXQgYnV0dG9uID0gJCh0aGlzKTtcbiAgICBsZXQgdXJsID0gYnV0dG9uLmRhdGEoXCJ1cmxcIik7XG5cbiAgICBTd2FsLmZpcmUoe1xuICAgICAgICB0aXRsZTogXCJTdGF0dXMgcHJvZHVrP1wiLFxuICAgICAgICB0ZXh0OiBcIkFuZGEgeWFraW4gaW5naW4gbWVuZ2dhbnRpIHN0YXR1cyBwcm9kdWshXCIsXG4gICAgICAgIHNob3dDYW5jZWxCdXR0b246IHRydWUsXG4gICAgICAgIGNvbmZpcm1CdXR0b25Db2xvcjogXCIjZDMzXCIsXG4gICAgICAgIGNhbmNlbEJ1dHRvbkNvbG9yOiBcIiNkZWRlZGVcIixcbiAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6IFwiWWFcIixcbiAgICB9KS50aGVuKChyZXN1bHQpID0+IHtcbiAgICAgICAgaWYgKHJlc3VsdC52YWx1ZSkge1xuICAgICAgICAgICAgJC5hamF4KHtcbiAgICAgICAgICAgICAgICB1cmw6IHVybCxcbiAgICAgICAgICAgICAgICBtZXRob2Q6IFwiUE9TVFwiLFxuICAgICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICAgICAgX3Rva2VuOiAkKCdtZXRhW25hbWU9XCJjc3JmLXRva2VuXCJdJykuYXR0cihcImNvbnRlbnRcIiksXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBzdWNjZXNzOiBmdW5jdGlvbiAocmVzcG9uc2UpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlLnN1Y2Nlc3MpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICQoXCIjcHJvZHVjdHMtdGFibGVcIilcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuRGF0YVRhYmxlKClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuYWpheC5yZWxvYWQobnVsbCwgZmFsc2UpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxlcnQocmVzcG9uc2UubWVzc2FnZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIGVycm9yOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgIGFsZXJ0KFwiR2FnYWwgbWVuZ3ViYWggc3RhdHVzIHByb2R1ay5cIik7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfSk7XG59KTtcbiJdLCJtYXBwaW5ncyI6IkFBQUFBLENBQUMsQ0FBQ0MsU0FBRixDQUFZO0VBQ1JDLE9BQU8sRUFBRTtJQUNMLGdCQUFnQkYsQ0FBQyxDQUFDLHlCQUFELENBQUQsQ0FBNkJHLElBQTdCLENB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TkMsaUJBQWlCLEVBQUUsU0FMYjtJQU1OQyxpQkFBaUIsRUFBRTtFQU5iLENBQVYsRUFPR0MsSUFQSCxDQU9RLFVBQUNDLE1BQUQsRUFBWTtJQUNoQixJQUFJQSxNQUFNLENBQUNDLEtBQVgsRUFBa0I7TUFDZDVCLENBQUMsQ0FBQ1csSUFBRixDQUFPO1FBQ0hOLEdBQUcsRUFBRUEsR0FERjtRQUVId0IsTUFBTSxFQUFFLE1BRkw7UUFHSHZCLElBQUksRUFBRTtVQUNGeUIsTUFBTSxFQUFFL0IsQ0FBQyxDQUFDLHlCQUFELENBQUQsQ0FBNkJHLElBQTdCLENBQWtDLFNBQWxDO1FBRE4sQ0FISDtRQU1INkIsT0FBTyxFQUFFLGlCQUFVUSxRQUFWLEVBQW9CO1VBQ3pCLElBQUlBLFFBQVEsQ0FBQ1IsT0FBYixFQUFzQjtZQUNsQmhDLENBQUMsQ0FBQyxpQkFBRCxDQUFELENBQ0tRLFNBREwsR0FFS0csSUFGTCxDQUVVdUIsTUFGVixDQUVpQixJQUZqQixFQUV1QixLQUZ2QjtZQUdBRCxLQUFLLENBQUNPLFFBQVEsQ0FBQ0MsT0FBVixDQUFMO1VBQ0g7UUFDSixDQWJFO1FBY0hOLEtBQUssRUFBRSxpQkFBWTtVQUNmRixLQUFLLENBQUMsK0JBQUQsQ0FBTDtRQUNIO01BaEJFLENBQVA7SUFrQkg7RUFDSixDQTVCRDtBQTZCSCxDQWpDRCIsImZpbGUiOiIuL3Jlc291cmNlcy9qcy93YXJlaG91c2VfbWFuYWdlbWVudC9wcm9kdWN0cy9pbmRleC5qcyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///./resources/js/warehouse_management/products/index.js\n");
+eval("$.ajaxSetup({\n headers: {\n \"X-CSRF-TOKEN\": $('meta[name=\"csrf-token\"]').attr(\"content\")\n }\n});\nvar tableContainer = $(\"#products-table\");\nvar url = tableContainer.data(\"url\");\nvar table = $(\"#products-table\").DataTable({\n processing: true,\n serverSide: true,\n ajax: url,\n columns: [{\n data: \"code\",\n name: \"code\"\n }, {\n data: \"name\",\n name: \"name\"\n }, {\n data: \"category_name\",\n name: \"category.name\"\n }, {\n data: \"unit\",\n name: \"unit\"\n }, {\n data: \"total_stock\",\n name: \"total_stock\",\n orderable: false,\n searchable: false\n }, {\n data: \"action\",\n name: \"action\",\n orderable: false,\n searchable: false\n }]\n});\n$(document).on(\"click\", \".btn-destroy-product\", function () {\n var _this = this;\n\n Swal.fire({\n title: \"Hapus produk?\",\n text: \"Anda tidak akan bisa mengembalikannya!\",\n showCancelButton: true,\n confirmButtonColor: \"#d33\",\n cancelButtonColor: \"#dedede\",\n confirmButtonText: \"Hapus\"\n }).then(function (result) {\n if (result.value) {\n var _url = $(_this).data(\"action\");\n\n $.ajax({\n url: _url,\n method: \"POST\",\n data: {\n _method: \"DELETE\",\n _token: $('meta[name=\"csrf-token\"]').attr(\"content\")\n },\n success: function success() {\n alert(\"Produk berhasil dihapus.\");\n $(\"#products-table\").DataTable().ajax.reload();\n },\n error: function error(xhr) {\n alert(\"Gagal menghapus produk.\");\n console.error(xhr.responseText);\n }\n });\n }\n });\n});\n$(document).on(\"click\", \".btn-toggle-active\", function () {\n var button = $(this);\n var url = button.data(\"url\");\n Swal.fire({\n title: \"Status produk?\",\n text: \"Anda yakin ingin mengganti status produk!\",\n showCancelButton: true,\n confirmButtonColor: \"#d33\",\n cancelButtonColor: \"#dedede\",\n confirmButtonText: \"Ya\"\n }).then(function (result) {\n if (result.value) {\n $.ajax({\n url: url,\n method: \"POST\",\n data: {\n _token: $('meta[name=\"csrf-token\"]').attr(\"content\")\n },\n success: function success(response) {\n if (response.success) {\n $(\"#products-table\").DataTable().ajax.reload(null, false);\n alert(response.message);\n }\n },\n error: function error() {\n alert(\"Gagal mengubah status produk.\");\n }\n });\n }\n });\n});\n$(document).on(\"click\", \".btn-product-stock-dealers\", function () {\n var productId = $(this).data(\"id\");\n var productName = $(this).data(\"name\");\n var ajaxUrl = $(this).data(\"url\"); // Set product name in modal title\n\n $(\"#product-name-title\").text(productName); // Initialize or reload DataTable inside modal\n\n $(\"#dealer-stock-table\").DataTable({\n destroy: true,\n // reinit if exists\n processing: true,\n serverSide: true,\n ajax: {\n url: ajaxUrl,\n data: {\n product_id: productId\n }\n },\n columns: [{\n data: \"dealer_name\",\n name: \"dealer_name\"\n }, {\n data: \"system_stock\",\n name: \"system_stock\"\n }, {\n data: \"physical_stock\",\n name: \"physical_stock\"\n }, {\n data: \"difference\",\n name: \"difference\"\n }, {\n data: \"opname_date\",\n name: \"opname_date\"\n }],\n initComplete: function initComplete() {\n $(\"#dealerStockModal\").modal(\"show\");\n }\n });\n});\n$(document).on(\"click\", \"#dealerStockModal .close\", function () {\n $(\"#dealerStockModal\").modal(\"hide\");\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyIkIiwiYWpheFNldHVwIiwiaGVhZGVycyIsImF0dHIiLCJ0YWJsZUNvbnRhaW5lciIsInVybCIsImRhdGEiLCJ0YWJsZSIsIkRhdGFUYWJsZSIsInByb2Nlc3NpbmciLCJzZXJ2ZXJTaWRlIiwiYWpheCIsImNvbHVtbnMiLCJuYW1lIiwib3JkZXJhYmxlIiwic2VhcmNoYWJsZSIsImRvY3VtZW50Iiwib24iLCJTd2FsIiwiZmlyZSIsInRpdGxlIiwidGV4dCIsInNob3dDYW5jZWxCdXR0b24iLCJjb25maXJtQnV0dG9uQ29sb3IiLCJjYW5jZWxCdXR0b25Db2xvciIsImNvbmZpcm1CdXR0b25UZXh0IiwidGhlbiIsInJlc3VsdCIsInZhbHVlIiwibWV0aG9kIiwiX21ldGhvZCIsIl90b2tlbiIsInN1Y2Nlc3MiLCJhbGVydCIsInJlbG9hZCIsImVycm9yIiwieGhyIiwiY29uc29sZSIsInJlc3BvbnNlVGV4dCIsImJ1dHRvbiIsInJlc3BvbnNlIiwibWVzc2FnZSIsInByb2R1Y3RJZCIsInByb2R1Y3ROYW1lIiwiYWpheFVybCIsImRlc3Ryb3kiLCJwcm9kdWN0X2lkIiwiaW5pdENvbXBsZXRlIiwibW9kYWwiXSwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL3dhcmVob3VzZV9tYW5hZ2VtZW50L3Byb2R1Y3RzL2luZGV4LmpzP2ZjZDYiXSwic291cmNlc0NvbnRlbnQiOlsiJC5hamF4U2V0dXAoe1xuICAgIGhlYWRlcnM6IHtcbiAgICAgICAgXCJYLUNTUkYtVE9LRU5cIjogJCgnbWV0YVtuYW1lPVwiY3NyZi10b2tlblwiXScpLmF0dHIoXCJjb250ZW50XCIpLFxuICAgIH0sXG59KTtcbmxldCB0YWJsZUNvbnRhaW5lciA9ICQoXCIjcHJvZHVjdHMtdGFibGVcIik7XG5sZXQgdXJsID0gdGFibGVDb250YWluZXIuZGF0YShcInVybFwiKTtcbmxldCB0YWJsZSA9ICQoXCIjcHJvZHVjdHMtdGFibGVcIikuRGF0YVRhYmxlKHtcbiAgICBwcm9jZXNzaW5nOiB0cnVlLFxuICAgIHNlcnZlclNpZGU6IHRydWUsXG4gICAgYWpheDogdXJsLFxuICAgIGNvbHVtbnM6IFtcbiAgICAgICAgeyBkYXRhOiBcImNvZGVcIiwgbmFtZTogXCJjb2RlXCIgfSxcbiAgICAgICAgeyBkYXRhOiBcIm5hbWVcIiwgbmFtZTogXCJuYW1lXCIgfSxcbiAgICAgICAgeyBkYXRhOiBcImNhdGVnb3J5X25hbWVcIiwgbmFtZTogXCJjYXRlZ29yeS5uYW1lXCIgfSxcbiAgICAgICAgeyBkYXRhOiBcInVuaXRcIiwgbmFtZTogXCJ1bml0XCIgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgZGF0YTogXCJ0b3RhbF9zdG9ja1wiLFxuICAgICAgICAgICAgbmFtZTogXCJ0b3RhbF9zdG9ja1wiLFxuICAgICAgICAgICAgb3JkZXJhYmxlOiBmYWxzZSxcbiAgICAgICAgICAgIHNlYXJjaGFibGU6IGZhbHNlLFxuICAgICAgICB9LFxuICAgICAgICB7IGRhdGE6IFwiYWN0aW9uXCIsIG5hbWU6IFwiYWN0aW9uXCIsIG9yZGVyYWJsZTogZmFsc2UsIHNlYXJjaGFibGU6IGZhbHNlIH0sXG4gICAgXSxcbn0pO1xuXG4kKGRvY3VtZW50KS5vbihcImNsaWNrXCIsIFwiLmJ0bi1kZXN0cm95LXByb2R1Y3RcIiwgZnVuY3Rpb24gKCkge1xuICAgIFN3YWwuZmlyZSh7XG4gICAgICAgIHRpdGxlOiBcIkhhcHVzIHByb2R1az9cIixcbiAgICAgICAgdGV4dDogXCJBbmRhIHRpZGFrIGFrYW4gYmlzYSBtZW5nZW1iYWxpa2FubnlhIVwiLFxuICAgICAgICBzaG93Q2FuY2VsQnV0dG9uOiB0cnVlLFxuICAgICAgICBjb25maXJtQnV0dG9uQ29sb3I6IFwiI2QzM1wiLFxuICAgICAgICBjYW5jZWxCdXR0b25Db2xvcjogXCIjZGVkZWRlXCIsXG4gICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiBcIkhhcHVzXCIsXG4gICAgfSkudGhlbigocmVzdWx0KSA9PiB7XG4gICAgICAgIGlmIChyZXN1bHQudmFsdWUpIHtcbiAgICAgICAgICAgIGNvbnN0IHVybCA9ICQodGhpcykuZGF0YShcImFjdGlvblwiKTtcbiAgICAgICAgICAgICQuYWpheCh7XG4gICAgICAgICAgICAgICAgdXJsOiB1cmwsXG4gICAgICAgICAgICAgICAgbWV0aG9kOiBcIlBPU1RcIixcbiAgICAgICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgICAgIF9tZXRob2Q6IFwiREVMRVRFXCIsXG4gICAgICAgICAgICAgICAgICAgIF90b2tlbjogJCgnbWV0YVtuYW1lPVwiY3NyZi10b2tlblwiXScpLmF0dHIoXCJjb250ZW50XCIpLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgc3VjY2VzczogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICBhbGVydChcIlByb2R1ayBiZXJoYXNpbCBkaWhhcHVzLlwiKTtcbiAgICAgICAgICAgICAgICAgICAgJChcIiNwcm9kdWN0cy10YWJsZVwiKS5EYXRhVGFibGUoKS5hamF4LnJlbG9hZCgpO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgZXJyb3I6IGZ1bmN0aW9uICh4aHIpIHtcbiAgICAgICAgICAgICAgICAgICAgYWxlcnQoXCJHYWdhbCBtZW5naGFwdXMgcHJvZHVrLlwiKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcih4aHIucmVzcG9uc2VUZXh0KTtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9KTtcbn0pO1xuJChkb2N1bWVudCkub24oXCJjbGlja1wiLCBcIi5idG4tdG9nZ2xlLWFjdGl2ZVwiLCBmdW5jdGlvbiAoKSB7XG4gICAgbGV0IGJ1dHRvbiA9ICQodGhpcyk7XG4gICAgbGV0IHVybCA9IGJ1dHRvbi5kYXRhKFwidXJsXCIpO1xuXG4gICAgU3dhbC5maXJlKHtcbiAgICAgICAgdGl0bGU6IFwiU3RhdHVzIHByb2R1az9cIixcbiAgICAgICAgdGV4dDogXCJBbmRhIHlha2luIGluZ2luIG1lbmdnYW50aSBzdGF0dXMgcHJvZHVrIVwiLFxuICAgICAgICBzaG93Q2FuY2VsQnV0dG9uOiB0cnVlLFxuICAgICAgICBjb25maXJtQnV0dG9uQ29sb3I6IFwiI2QzM1wiLFxuICAgICAgICBjYW5jZWxCdXR0b25Db2xvcjogXCIjZGVkZWRlXCIsXG4gICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiBcIllhXCIsXG4gICAgfSkudGhlbigocmVzdWx0KSA9PiB7XG4gICAgICAgIGlmIChyZXN1bHQudmFsdWUpIHtcbiAgICAgICAgICAgICQuYWpheCh7XG4gICAgICAgICAgICAgICAgdXJsOiB1cmwsXG4gICAgICAgICAgICAgICAgbWV0aG9kOiBcIlBPU1RcIixcbiAgICAgICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgICAgIF90b2tlbjogJCgnbWV0YVtuYW1lPVwiY3NyZi10b2tlblwiXScpLmF0dHIoXCJjb250ZW50XCIpLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgc3VjY2VzczogZnVuY3Rpb24gKHJlc3BvbnNlKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5zdWNjZXNzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAkKFwiI3Byb2R1Y3RzLXRhYmxlXCIpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLkRhdGFUYWJsZSgpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmFqYXgucmVsb2FkKG51bGwsIGZhbHNlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsZXJ0KHJlc3BvbnNlLm1lc3NhZ2UpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBlcnJvcjogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICBhbGVydChcIkdhZ2FsIG1lbmd1YmFoIHN0YXR1cyBwcm9kdWsuXCIpO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH0pO1xufSk7XG4kKGRvY3VtZW50KS5vbihcImNsaWNrXCIsIFwiLmJ0bi1wcm9kdWN0LXN0b2NrLWRlYWxlcnNcIiwgZnVuY3Rpb24gKCkge1xuICAgIGNvbnN0IHByb2R1Y3RJZCA9ICQodGhpcykuZGF0YShcImlkXCIpO1xuICAgIGNvbnN0IHByb2R1Y3ROYW1lID0gJCh0aGlzKS5kYXRhKFwibmFtZVwiKTtcbiAgICBjb25zdCBhamF4VXJsID0gJCh0aGlzKS5kYXRhKFwidXJsXCIpO1xuXG4gICAgLy8gU2V0IHByb2R1Y3QgbmFtZSBpbiBtb2RhbCB0aXRsZVxuICAgICQoXCIjcHJvZHVjdC1uYW1lLXRpdGxlXCIpLnRleHQocHJvZHVjdE5hbWUpO1xuXG4gICAgLy8gSW5pdGlhbGl6ZSBvciByZWxvYWQgRGF0YVRhYmxlIGluc2lkZSBtb2RhbFxuICAgICQoXCIjZGVhbGVyLXN0b2NrLXRhYmxlXCIpLkRhdGFUYWJsZSh7XG4gICAgICAgIGRlc3Ryb3k6IHRydWUsIC8vIHJlaW5pdCBpZiBleGlzdHNcbiAgICAgICAgcHJvY2Vzc2luZzogdHJ1ZSxcbiAgICAgICAgc2VydmVyU2lkZTogdHJ1ZSxcbiAgICAgICAgYWpheDoge1xuICAgICAgICAgICAgdXJsOiBhamF4VXJsLFxuICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgIHByb2R1Y3RfaWQ6IHByb2R1Y3RJZCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGNvbHVtbnM6IFtcbiAgICAgICAgICAgIHsgZGF0YTogXCJkZWFsZXJfbmFtZVwiLCBuYW1lOiBcImRlYWxlcl9uYW1lXCIgfSxcbiAgICAgICAgICAgIHsgZGF0YTogXCJzeXN0ZW1fc3RvY2tcIiwgbmFtZTogXCJzeXN0ZW1fc3RvY2tcIiB9LFxuICAgICAgICAgICAgeyBkYXRhOiBcInBoeXNpY2FsX3N0b2NrXCIsIG5hbWU6IFwicGh5c2ljYWxfc3RvY2tcIiB9LFxuICAgICAgICAgICAgeyBkYXRhOiBcImRpZmZlcmVuY2VcIiwgbmFtZTogXCJkaWZmZXJlbmNlXCIgfSxcbiAgICAgICAgICAgIHsgZGF0YTogXCJvcG5hbWVfZGF0ZVwiLCBuYW1lOiBcIm9wbmFtZV9kYXRlXCIgfSxcbiAgICAgICAgXSxcbiAgICAgICAgaW5pdENvbXBsZXRlOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAkKFwiI2RlYWxlclN0b2NrTW9kYWxcIikubW9kYWwoXCJzaG93XCIpO1xuICAgICAgICB9LFxuICAgIH0pO1xufSk7XG4kKGRvY3VtZW50KS5vbihcImNsaWNrXCIsIFwiI2RlYWxlclN0b2NrTW9kYWwgLmNsb3NlXCIsIGZ1bmN0aW9uICgpIHtcbiAgICAkKFwiI2RlYWxlclN0b2NrTW9kYWxcIikubW9kYWwoXCJoaWRlXCIpO1xufSk7XG4iXSwibWFwcGluZ3MiOiJBQUFBQSxDQUFDLENBQUNDLFNBQUYsQ0FBWTtFQUNSQyxPQUFPLEVBQUU7SUFDTCxnQkFBZ0JGLENBQUMsQ0FBQyx5QkFBRCxDQUFELENBQTZCRyxJQUE3QixDQUFrQyxTQUFsQztFQURYO0FBREQsQ0FBWjtBQUtBLElBQUlDLGNBQWMsR0FBR0osQ0FBQyxDQUFDLGlCQUFELENBQXRCO0FBQ0EsSUFBSUssR0FBRyxHQUFHRCxjQUFjLENBQUNFLElBQWYsQ0FBb0IsS0FBcEIsQ0FBVjtBQUNBLElBQUlDLEtBQUssR0FBR1AsQ0FBQyxDQUFDLGlCQUFELENBQUQsQ0FBcUJRLFNBQXJCLENBQStCO0VBQ3ZDQyxVQUFVLEVBQUUsSUFEMkI7RUFFdkNDLFVBQVUsRUFBRSxJQUYyQjtFQUd2Q0MsSUFBSSxFQUFFTixHQUhpQztFQUl2Q08sT0FBTyxFQUFFLENBQ0w7SUFBRU4sSUFBSSxFQUFFLE1BQVI7SUFBZ0JPLElBQUksRUFBRTtFQUF0QixDQURLLEVBRUw7SUFBRVAsSUFBSSxFQUFFLE1BQVI7SUFBZ0JPLElBQUksRUFBRTtFQUF0QixDQUZLLEVBR0w7SUFBRVAs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QUksRUFBRSxjQUFSO01BQXdCTyxJQUFJLEVBQUU7SUFBOUIsQ0FGSyxFQUdMO01BQUVQLElBQUksRUFBRSxnQkFBUjtNQUEwQk8sSUFBSSxFQUFFO0lBQWhDLENBSEssRUFJTDtNQUFFUCxJQUFJLEVBQUUsWUFBUjtNQUFzQk8sSUFBSSxFQUFFO0lBQTVCLENBSkssRUFLTDtNQUFFUCxJQUFJLEVBQUUsYUFBUjtNQUF1Qk8sSUFBSSxFQUFFO0lBQTdCLENBTEssQ0FWc0I7SUFpQi9Ca0MsWUFBWSxFQUFFLHdCQUFZO01BQ3RCL0MsQ0FBQyxDQUFDLG1CQUFELENBQUQsQ0FBdUJnRCxLQUF2QixDQUE2QixNQUE3QjtJQUNIO0VBbkI4QixDQUFuQztBQXFCSCxDQTlCRDtBQStCQWhELENBQUMsQ0FBQ2dCLFFBQUQsQ0FBRCxDQUFZQyxFQUFaLENBQWUsT0FBZixFQUF3QiwwQkFBeEIsRUFBb0QsWUFBWTtFQUM1RGpCLENBQUMsQ0FBQyxtQkFBRCxDQUFELENBQXVCZ0QsS0FBdkIsQ0FBNkIsTUFBN0I7QUFDSCxDQUZEIiwiZmlsZSI6Ii4vcmVzb3VyY2VzL2pzL3dhcmVob3VzZV9tYW5hZ2VtZW50L3Byb2R1Y3RzL2luZGV4LmpzIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./resources/js/warehouse_management/products/index.js\n");
/***/ })
diff --git a/public/mix-manifest.json b/public/mix-manifest.json
index bc8e6b0..193ccdd 100644
--- a/public/mix-manifest.json
+++ b/public/mix-manifest.json
@@ -6,5 +6,6 @@
"/js/warehouse_management/products/edit.js": "/js/warehouse_management/products/edit.js",
"/js/warehouse_management/opnames/index.js": "/js/warehouse_management/opnames/index.js",
"/js/warehouse_management/opnames/create.js": "/js/warehouse_management/opnames/create.js",
+ "/js/warehouse_management/opnames/detail.js": "/js/warehouse_management/opnames/detail.js",
"/css/app.css": "/css/app.css"
}
diff --git a/resources/js/warehouse_management/opnames/detail.js b/resources/js/warehouse_management/opnames/detail.js
new file mode 100644
index 0000000..0276cc3
--- /dev/null
+++ b/resources/js/warehouse_management/opnames/detail.js
@@ -0,0 +1,20 @@
+$.ajaxSetup({
+ headers: {
+ "X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content"),
+ },
+});
+let tableContainer = $("#opname-detail-table");
+let url = tableContainer.data("url");
+let table = $("#opname-detail-table").DataTable({
+ processing: true,
+ serverSide: true,
+ ajax: url,
+ columns: [
+ { data: "opname_date", name: "opname_date" },
+ { data: "user_name", name: "user.name" },
+ { data: "product_name", name: "product.name" },
+ { data: "system_stock", name: "system_stock" },
+ { data: "physical_stock", name: "physical_stock" },
+ { data: "difference", name: "difference" },
+ ],
+});
diff --git a/resources/js/warehouse_management/opnames/index.js b/resources/js/warehouse_management/opnames/index.js
index 7633649..e46f378 100644
--- a/resources/js/warehouse_management/opnames/index.js
+++ b/resources/js/warehouse_management/opnames/index.js
@@ -16,34 +16,3 @@ let table = $("#opnames-table").DataTable({
{ data: "action", name: "action", orderable: false, searchable: false },
],
});
-$(document).on("click", ".btn-product-stock-dealers", function () {
- const productId = $(this).data("id");
- const productName = $(this).data("name");
- const ajaxUrl = $(this).data("url");
-
- // Set product name in modal title
- $("#product-name-title").text(productName);
-
- // Initialize or reload DataTable inside modal
- $("#dealer-stock-table").DataTable({
- destroy: true, // reinit if exists
- processing: true,
- serverSide: true,
- ajax: {
- url: ajaxUrl,
- data: {
- product_id: productId,
- },
- },
- columns: [
- { data: "dealer_name", name: "dealer_name" },
- { data: "system_stock", name: "system_stock" },
- { data: "physical_stock", name: "physical_stock" },
- { data: "difference", name: "difference" },
- { data: "opname_date", name: "opname_date" },
- ],
- });
-
- // Show the modal
- $("#dealerStockModal").modal("show");
-});
diff --git a/resources/js/warehouse_management/products/index.js b/resources/js/warehouse_management/products/index.js
index 63f6ff3..b61f5ba 100644
--- a/resources/js/warehouse_management/products/index.js
+++ b/resources/js/warehouse_management/products/index.js
@@ -14,7 +14,12 @@ let table = $("#products-table").DataTable({
{ data: "name", name: "name" },
{ data: "category_name", name: "category.name" },
{ data: "unit", name: "unit" },
- { data: "total_stock", name: "total_stock" },
+ {
+ data: "total_stock",
+ name: "total_stock",
+ orderable: false,
+ searchable: false,
+ },
{ data: "action", name: "action", orderable: false, searchable: false },
],
});
@@ -83,3 +88,37 @@ $(document).on("click", ".btn-toggle-active", function () {
}
});
});
+$(document).on("click", ".btn-product-stock-dealers", function () {
+ const productId = $(this).data("id");
+ const productName = $(this).data("name");
+ const ajaxUrl = $(this).data("url");
+
+ // Set product name in modal title
+ $("#product-name-title").text(productName);
+
+ // Initialize or reload DataTable inside modal
+ $("#dealer-stock-table").DataTable({
+ destroy: true, // reinit if exists
+ processing: true,
+ serverSide: true,
+ ajax: {
+ url: ajaxUrl,
+ data: {
+ product_id: productId,
+ },
+ },
+ columns: [
+ { data: "dealer_name", name: "dealer_name" },
+ { data: "system_stock", name: "system_stock" },
+ { data: "physical_stock", name: "physical_stock" },
+ { data: "difference", name: "difference" },
+ { data: "opname_date", name: "opname_date" },
+ ],
+ initComplete: function () {
+ $("#dealerStockModal").modal("show");
+ },
+ });
+});
+$(document).on("click", "#dealerStockModal .close", function () {
+ $("#dealerStockModal").modal("hide");
+});
diff --git a/resources/views/warehouse_management/opnames/create.blade.php b/resources/views/warehouse_management/opnames/create.blade.php
index 0653b61..c73c335 100644
--- a/resources/views/warehouse_management/opnames/create.blade.php
+++ b/resources/views/warehouse_management/opnames/create.blade.php
@@ -16,7 +16,7 @@
@csrf