Browse Source

create in the categories

azam 4 years ago
parent
commit
c8d8909aed

+ 2 - 1
packages/product/src/Http/Controllers/CategoryController.php

@@ -18,8 +18,9 @@ class CategoryController extends Controller
     public function index()
     {
         $categories = Category::orderBy('id','DESC')->paginate(20);
+        dd();
 
-        return view('product::categories.index',compact('categories'));
+        return view('product.categories::index',compact('categories'));
     }
 
 

+ 1 - 0
packages/product/src/database/migrations/2020_06_20_171824_create_categories_table.php

@@ -22,6 +22,7 @@ class CreateCategoriesTable extends Migration
             $table->string('category_type');
             $table->integer('parent')->default(0);
             $table->timestamps();
+            $table->softDeletes();
 
         });
     }

+ 134 - 53
packages/product/src/views/categories/create.blade.php

@@ -1,62 +1,143 @@
-@extends('back.index')
-
-@section('title')
-   دسته بندی جدید
-@endsection
-@section('content1')
-    <!--==========================main============================-->
-
-    <div class=" main-panel col-12 col-sm-12 col-md-8 col-lg-9 col-xl-9 ">
-        <div class="container">
-            <h3 class="col-lg-12 col-md-12 col-sm-12 col-12">
-                دسته بندی جدید
-            </h3>
-            <hr>
-
-            <div class="row container">
-                <div class="col-lg-12 grid-margin stretch-card">
-                    <div class="card">
-                        <div class="card-body">
-                            @include('back.users.messages')
-                            <form action="{{route('admin.categories.store')}}" method="post">
-
-                                @csrf
-                                {{--    name--}}
-                                <div class="form-group">
-                                    <label for="title">نام دسته بندی جدید</label>
-                                    <input type="text" name="name" class="form-control @error('name') is-invalid  @enderror" value="{{old('name')}}">
-                                    @error('name')
-                                    <div class="alert alert-danger">{{$message}}</div>
-                                    @enderror
-                                </div>
-                                {{--    email--}}
-                                <div class="form-group">
-                                    <label for="title">نام مستعار جدید</label>
-                                    <input type="slug" name="slug" class="form-control @error('slug') is-invalid  @enderror" value="{{old('slug')}}">
-                                    @error('slug')
-                                    <div class="alert alert-danger">{{$message}}</div>
-                                    @enderror
-                                </div>
-
-
-
-                                <div class="form-group">
-                                    <button type="submit" class="btn btn-success" >ذخیره</button>
-                                    <a href="{{route('admin.categories')}}" class="btn btn-warning">انصراف</a>
-                                </div>
-                            </form>
+@component('panel.layouts.component', ['title' => 'ثبت محصول جدید'])
+
+    @slot('style')
+        .card-header {
+        text-align: center !important;
+        }
+    @endslot
+    @slot('subject')
+        <h1><i class="fa fa-users"></i> ثبت محصول جدید </h1>
+        <p>ثبت محصول جدید در فروشگاه.</p>
+    @endslot
+    @slot('breadcrumb')
+        <li class="breadcrumb-item">محصولات</li>
+    @endslot
+
+    @slot('content')
+        <div class="auth-background h-auto py-5">
+            <div class="container py-5">
+                <div class="row align-items-center">
+                    <div class="col-lg-8 col-md-10 mx-auto">
+                        <div class="card">
+                            <div class="card-header"><strong>{{ __('ثبتدسته بندی جدید') }}</strong></div>
+
+                            <div class="card-body mx-lg-5 px-lg-3">
+                                <form method="POST" action="{{ route('categories.store') }}">
+                                    @csrf
+
+                                    <div class="form-group">
+                                        <label for="title">{{ __('نام محصول جدید') }}</label>
+                                        <input id="title" type="text"
+                                               class="form-control @error('title') is-invalid @enderror" name="title"
+                                               value="{{ old('title') }}" required autocomplete="title" autofocus>
+
+                                        @error('title')
+                                        <span class="invalid-feedback" role="alert">
+                                            <strong>{{ $message }}</strong>
+                                        </span>
+                                        @enderror
+
+                                    </div>
+
+                                    <div class="form-group">
+                                        <label for="slug">  {{ __('نام مستعار محصول  ') }}</label>
+                                        <input id="slug" type="text"
+                                               class="form-control @error('slug') is-invalid @enderror"
+                                               name="slug" value="{{ old('slug') }}" required
+                                               autocomplete="slug" autofocus>
+
+                                        @error('slug')
+                                        <span class="invalid-feedback" role="alert">
+                                            <strong>{{ $message }}</strong>
+                                        </span>
+                                        @enderror
+
+                                    </div>
+                                    <div class="form-group">
+                                        <label for="parent">  {{ __('کد  دسته بندی  ') }}</label>
+                                        <input id="parent" type="text"
+                                               class="form-control @error('parent') is-invalid @enderror"
+                                               name="slug" value="{{ old('parent') }}" required
+                                               autocomplete="slug" autofocus>
+
+                                        @error('parent')
+                                        <span class="invalid-feedback" role="alert">
+                                            <strong>{{ $message }}</strong>
+                                        </span>
+                                        @enderror
+
+                                    </div>
+
+                                    <div class="form-group">
+                                        <label for="category_type">{{ __(' نوع دسته بندی') }}</label>
+                                        <select id="category_type" type="text"
+                                                class="form-control @error('category_type') is-invalid @enderror" name="category_type"
+                                                required autocomplete="category_type">
+                                            <option value="1">اصلی</option>
+                                            <option value="0">فرعی</option>
+                                        </select>
+
+                                        @error('category_type')
+                                        <span class="invalid-feedback" role="alert">
+                                            <strong>{{ $message }}</strong>
+                                        </span>
+                                        @enderror
+                                    </div>
+
+
+
+                                    <div class="form-group">
+                                        <label for="discription">{{ __(' توضیحات  محصول') }}</label>
+                                        <textarea id="discription" type="text"
+                                                  class="form-control @error('discription') is-invalid @enderror" name="discription"
+                                                  required autocomplete="discription">{{ old('discription') }}</textarea>
+
+                                        @error('discription')
+                                        <span class="invalid-feedback" role="alert">
+                                            <strong>{{ $message }}</strong>
+                                        </span>
+                                        @enderror
+                                    </div>
+
+
+                                    <div class="form-group">
+                                        <label for="creator_id">{{ __(' نام ثبت کننده دسته بندی') }}</label>
+                                        <input id="creator_id" type="text"
+                                               class="form-control @error('creator_id') is-invalid @enderror" name="creator_id"
+                                               value="{{ auth()->user()->name }}" required autocomplete="creator_id" readonly>
+
+                                        @error('creator_id')
+                                        <span class="invalid-feedback" role="alert">
+                                            <strong>{{ $message }}</strong>
+                                        </span>
+                                        @enderror
+                                    </div>
+
+                                    <div class="form-group mb-0">
+                                        <div class="">
+                                            <button type="submit" class="btn btn-primary">
+                                                {{ __('ثبت دسته بندی') }}
+                                            </button>
+
+                                            <a href={{ route('products.index') }} type="button" class="btn btn-warning"> انصراف</a>
+
+                                        </div>
+                                    </div>
+                                </form>
+                            </div>
+                            <div class="card-footer">
+
+                            </div>
                         </div>
                     </div>
                 </div>
-
             </div>
-
         </div>
-    </div>
-@endsection
-
-
+    @endslot
 
+    @slot('script')
 
+    @endslot
 
+@endcomponent
 

+ 221 - 34
packages/product/src/views/categories/edit.blade.php

@@ -1,7 +1,7 @@
 @extends('back.index')
 
 @section('title')
-ویرایش دسته بندی
+    ویرایش دسته بندی
 @endsection
 @section('content1')
     <!--==========================main============================-->
@@ -10,46 +10,233 @@
         <div class="container">
             <h3 class="col-lg-12 col-md-12 col-sm-12 col-12">
                 ویرایش دسته بندی
-            </h3>
-            <hr>
-
-            <div class="row container">
-                <div class="col-lg-12 grid-margin stretch-card">
-                    <div class="card">
-                        <div class="card-body">
-                            @include('back.users.messages')
-                            <form action="{{route('admin.categories.update',$category->id)}}" method="post">
-
-                                @csrf
-                                {{--    name--}}
-                                <div class="form-group">
-                                    <label for="title">نام دسته بندی جدید</label>
-                                    <input type="text" name="name" class="form-control @error('name') is-invalid  @enderror" value="{{$category->name}}">
-                                    @error('name')
-                                    <div class="alert alert-danger">{{$message}}</div>
-                                    @enderror
-                                </div>
-                                {{--    email--}}
-                                <div class="form-group">
-                                    <label for="title">نام مستعار جدید</label>
-                                    <input type="slug" name="slug" class="form-control @error('slug') is-invalid  @enderror" value="{{$category->slug}}">
-                                    @error('slug')
-                                    <div class="alert alert-danger">{{$message}}</div>
-                                    @enderror
-                                </div>
+                @component('panel.layouts.component', ['title' => 'ویرایش دسته بندی جدید'])
+
+                    @slot('style')
+                        <style>
+                            .card-header {
+                                text-align: center !important;
+                            }
+                        </style>
+                    @endslot
+                    @slot('subject')
+                        <h1><i class="fa fa-users"></i>ویرایش دسته بندی </h1>
+                        <p></p>
+                    @endslot
+                    @slot('breadcrumb')
+                        <li class="breadcrumb-item">دسته بندی ها</li>
+                    @endslot
+
+                    @slot('content')
+                        <div class="auth-background h-auto py-5">
+                            <div class="container py-5">
+                                <div class="row align-items-center">
+                                    <div class="col-lg-8 col-md-10 mx-auto">
+                                        <div class="card">
+                                            <div class="card-header"><strong>{{ __('ویرایش دسته بندی جدید') }}</strong>
+                                            </div>
+                                            @foreach ($products as $product)
+
+
+                                                <div class="card-body mx-lg-5 px-lg-3">
+                                                    <form method="POST"
+                                                          action="{{ route('categories.update',$category->id) }}">
+                                                        @csrf
+                                                        @if ($product)
+                                                            @method('PUT')
+                                                        @endif
+
+                                                        <div class="form-group">
+                                                            <label for="title">{{ __('نام دسته بندی جدید') }}</label>
+                                                            <input id="title" type="text"
+                                                                   class="form-control @error('title') is-invalid @enderror"
+                                                                   name="title"
+                                                                   value="{{$category->title}}" required
+                                                                   autocomplete="title" autofocus>
+
+                                                            @error('title')
+                                                            <span class="invalid-feedback" role="alert">
+                                            <strong>{{ $message }}</strong>
+                                        </span>
+                                                            @enderror
+
+                                                        </div>
+
+                                                        <div class="form-group">
+                                                            <label
+                                                                for="slug">  {{ __('نام مستعار دسته بندی  ') }}</label>
+                                                            <input id="slug" type="text"
+                                                                   class="form-control @error('slug') is-invalid @enderror"
+                                                                   name="slug" value="{{$category->slug}}" required
+                                                                   autocomplete="slug" autofocus>
+
+                                                            @error('slug')
+                                                            <span class="invalid-feedback" role="alert">
+                                            <strong>{{ $message }}</strong>
+                                        </span>
+                                                            @enderror
+
+                                                        </div>
+                                                        <div class="form-group">
+                                                            <label for="parent">  {{ __(' کد محصول  ') }}</label>
+                                                            <input id="parent" type="text"
+                                                                   class="form-control @error('parent') is-invalid @enderror"
+                                                                   name="sku" value="{{$category->parent}}" required
+                                                                   autocomplete="parent" autofocus>
+
+                                                            @error('parent')
+                                                            <span class="invalid-feedback" role="alert">
+                                            <strong>{{ $message }}</strong>
+                                        </span>
+                                                            @enderror
+
+                                                        </div>
+
+
+                                                        <div class="form-group">
+                                                            <label for="category_type">{{ __(' نوع محصول') }}</label>
+                                                            <select id="category_type" type="text"
+                                                                    class="form-control @error('category_type') is-invalid @enderror"
+                                                                    name="category_type"
+                                                                    required autocomplete="category_type">
+                                                                <option value="0">فرعی</option>
+                                                                <option
+                                                                    value="1" <?php if ($category->category_type == 1) echo 'selected'?> >
+                                                                    اصلی
+                                                                </option>
+                                                            </select>
+
+                                                            @error('category_type')
+                                                            <span class="invalid-feedback" role="alert">
+                                                                <strong>{{ $message }}</strong>
+                                                            </span>
+                                                            @enderror
+                                                        </div>
+
+                                                        <div class="form-group">
+                                                            <label for="status">{{ __(' وضعیت محصول') }}</label>
+                                                            <select id="status" type="text"
+                                                                    class="form-control @error('status') is-invalid @enderror"
+                                                                    name="status"
+                                                                    value="{{$product->status}}" required
+                                                                    autocomplete="status">
+                                                                <option value="0">ناموجود</option>
+                                                                <option
+                                                                    value="1" <?php if ($category->status == 1) echo 'selected'?> >
+                                                                    موجود
+                                                                </option>
+                                                            </select>
 
 
+                                                            @error('status')
+                                                            <span class="invalid-feedback" role="alert">
+                                            <strong>{{ $message }}</strong>
+                                        </span>
+                                                            @enderror
+                                                        </div>
 
-                                <div class="form-group">
-                                    <button type="submit" class="btn btn-success" >ذخیره</button>
-                                    <a href="{{route('admin.categories')}}" class="btn btn-warning">انصراف</a>
+                                                        <div class="form-group">
+                                                            <label for="discription">{{ __(' توضیحات  محصول') }}</label>
+                                                            <textarea id="discription" type="text"
+                                                                      class="form-control @error('discription') is-invalid @enderror"
+                                                                      name="discription"
+                                                                      required
+                                                                      autocomplete="discription">{{$product->discription}}</textarea>
+
+                                                            @error('discription')
+                                                            <span class="invalid-feedback" role="alert">
+                                            <strong>{{ $message }}</strong>
+                                        </span>
+                                                            @enderror
+                                                        </div>
+
+                                                        <div class="form-group">
+                                                            <label
+                                                                for="creator_id">{{ __(' نام ثبت کننده محصول') }}</label>
+                                                            <input id="creator_id" type="text"
+                                                                   class="form-control @error('creator_id') is-invalid @enderror"
+                                                                   name="creator_id"
+                                                                   value="{{ auth()->user()->name }}" required
+                                                                   autocomplete="creator_id" readonly>
+
+                                                            @error('creator_id')
+                                                            <span class="invalid-feedback" role="alert">
+                                            <strong>{{ $message }}</strong>
+                                        </span>
+                                                            @enderror
+                                                        </div>
+
+                                                        <div class="form-group mb-0">
+                                                            <div class="">
+                                                                <button type="submit" class="btn btn-primary">
+                                                                    {{ __('ویرایش محصول') }}
+                                                                </button>
+
+                                                                <a href={{ route('products.index') }} type="button"
+                                                                   class="btn btn-warning"> انصراف</a>
+
+                                                            </div>
+                                                        </div>
+                                                    </form>
+                                                </div>
+                                            @endforeach
+                                            <div class="card-footer">
+
+                                            </div>
+                                        </div>
+                                    </div>
                                 </div>
-                            </form>
+                            </div>
+                        </div>
+                    @endslot
+
+                    @slot('script')
+
+                    @endslot
+
+                @endcomponent
+                <hr>
+
+                <div class="row container">
+                    <div class="col-lg-12 grid-margin stretch-card">
+                        <div class="card">
+                            <div class="card-body">
+                                @include('back.users.messages')
+                                <form action="{{route('admin.categories.update',$category->id)}}" method="post">
+
+                                    @csrf
+                                    {{--    name--}}
+                                    <div class="form-group">
+                                        <label for="title">نام دسته بندی جدید</label>
+                                        <input type="text" name="name"
+                                               class="form-control @error('name') is-invalid  @enderror"
+                                               value="{{$category->name}}">
+                                        @error('name')
+                                        <div class="alert alert-danger">{{$message}}</div>
+                                        @enderror
+                                    </div>
+                                    {{--    email--}}
+                                    <div class="form-group">
+                                        <label for="title">نام مستعار جدید</label>
+                                        <input type="slug" name="slug"
+                                               class="form-control @error('slug') is-invalid  @enderror"
+                                               value="{{$category->slug}}">
+                                        @error('slug')
+                                        <div class="alert alert-danger">{{$message}}</div>
+                                        @enderror
+                                    </div>
+
+
+                                    <div class="form-group">
+                                        <button type="submit" class="btn btn-success">ذخیره</button>
+                                        <a href="{{route('admin.categories')}}" class="btn btn-warning">انصراف</a>
+                                    </div>
+                                </form>
+                            </div>
                         </div>
                     </div>
-                </div>
 
-            </div>
+                </div>
 
         </div>
     </div>

+ 136 - 17
packages/product/src/views/categories/index.blade.php

@@ -1,17 +1,136 @@
-<div class="col-md-6 form-group">
-    <label for="parent" class="col-md-3 col-form-label">
-        <i class="fa fa-star text-danger"></i>
-        گروه</label>
-    <div class="col-md-9">
-        <select name="parent" id="parent">
-            <option value="">انتخاب</option>
-            @foreach(\App\Category::where('parent',0)->with('sub_category')->get() as $value)
-                <option value="{{ $value->id }}">{{ $value->title }}</option>
-                @if($value->sub_category->count())
-                    @php $i=2; @endphp
-                    @include('cat',['child' => $value->sub_category ,'i' => $i])
-                @endif
-            @endforeach
-        </select>
-    </div>
-</div>
+{{--<div class="col-md-6 form-group">--}}
+{{--    <label for="parent" class="col-md-3 col-form-label">--}}
+{{--        <i class="fa fa-star text-danger"></i>--}}
+{{--        گروه</label>--}}
+{{--    <div class="col-md-9">--}}
+{{--        <select name="parent" id="parent">--}}
+{{--            <option value="">انتخاب</option>--}}
+{{--            @foreach(\App\Category::where('parent',0)->with('sub_category')->get() as $value)--}}
+{{--                <option value="{{ $value->id }}">{{ $value->title }}</option>--}}
+{{--                @if($value->sub_category->count())--}}
+{{--                    @php $i=2; @endphp--}}
+{{--                    @include('cat',['child' => $value->sub_category ,'i' => $i])--}}
+{{--                @endif--}}
+{{--            @endforeach--}}
+{{--        </select>--}}
+{{--    </div>--}}
+{{--</div>--}}
+@component('panel.layouts.component', ['title' => 'محصولات'])
+
+    @slot('style')
+    @endslot
+
+    @slot('subject')
+        <h1><i class="fa fa-users"></i> محصولات </h1>
+        <p>لیست محصولاتی تعریف شده برای مدیریت سطوح دسترسی.</p>
+    @endslot
+
+    @slot('breadcrumb')
+        <li class="breadcrumb-item">محصولات</li>
+    @endslot
+
+    @slot('content')
+        <div class="row">
+            <div class="col-md-12">
+                @component('components.collapse-card' , ['title' => 'لیست محصولات'])
+                    @slot('body')
+                        @component('components.collapse-search')
+                            @slot('form')
+                                <form class="clearfix">
+                                    <div class="form-group">
+                                        <label for="text-name-input">نام محصول</label>
+                                        <input type="text" class="form-control" id="text-name-input" placeholder="نام محصول">
+                                    </div>
+                                    <button type="submit" class="btn btn-primary float-left">جستجو</button>
+                                </form>
+                            @endslot
+                        @endcomponent
+
+                        <div class="mt-4">
+                            <a href="{{ route('products.create') }}" type="button" class="btn btn-primary"><i class="fa fa-plus"></i> ایجاد محصول</a>
+                        </div>
+
+                        @component('components.table')
+                            @slot('thead')
+                                <tr>
+                                    <th>شماره</th>
+                                    <th>نام</th>
+                                    <th>slug</th>
+                                    <th> کد محصول</th>
+                                    <th>قیمت</th>
+                                    <th>قیمت فروش</th>
+                                    <th> نویسنده</th>
+                                    <th>وضعیت</th>
+                                    <th>نوع</th>
+                                    <th>توضیحات</th>
+
+                                    <th> مدیریت</th>
+                                </tr>
+                            @endslot
+                            @slot('tbody')
+                                @forelse ($categoties as $category)
+
+                                    <tr>
+                                        <td>
+                                            {{$category->id}}
+                                        </td>
+                                        <td>
+                                            {{$category->title}}
+                                        </td>
+                                        <td>
+                                            {{$category->slug}}
+                                        </td>
+                                        <td>
+                                            {{$category->sku}}
+                                        </td>
+                                        <td>
+                                            {{$category->price}}
+                                        </td>
+                                        <td>
+                                            {{$category->sale_price}}
+                                        </td>
+                                        <td>
+                                            {{$category->creator_id}}
+                                        </td>
+
+                                        <td><?php  echo mb_substr(strip_tags($category->discription), 0, 15, 'UTF8') . '...'?></td>
+                                        <td class="d-flex">
+                                            <a href="{{route('categotie.edit', $category->id)}}"
+                                               class="btn btn-sm btn-primary mr-2">ویرایش</a>
+                                            <form
+                                                action="{{route('categotie.destroy', $category->id)}}"
+                                                method="POST"
+                                                onsubmit="return confirm('آیا مطمئن هستید؟');"
+                                            >
+                                                @csrf
+                                                @method('DELETE')
+                                                <button type="submit" class="btn btn-sm btn-danger">حذف</button>
+                                            </form>
+                                        </td>
+                                    </tr>
+                                @empty
+                                    <tr>
+                                        <td colspan="5" class="text-center">موردی برای نمایش وجود ندارد.</td>
+                                    </tr>
+                                @endforelse
+                            @endslot
+
+                        @endcomponent
+
+                        {{--Paginate section--}}
+
+                        {{ $categoties->withQueryString()->links() }}
+
+                    @endslot
+                @endcomponent
+            </div>
+        </div>
+
+
+    @endslot
+
+    @slot('script')
+    @endslot
+
+@endcomponent
+