/
home
/
henzagold
/
server
/
app
/
Http
/
Controllers
/
Adm
/
File Upload :
llllll
Current File: /home/henzagold/server/app/Http/Controllers/Adm/OrderController.php
<?php namespace App\Http\Controllers\Adm; use App\Http\Controllers\Controller; use App\Models\Product; use App\Models\ProductVariant; use App\Models\PromotionProduct; use App\Models\SingleCustomer; use App\Models\SingleCustomer\PromotionUsed; use App\Models\SingleCustomerOrderItems; use App\Models\SingleCustomerOrders; use App\Models\Sms; use App\Models\WebServiceGold; use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Validator; class OrderController extends Controller { public function getType(){ return response()->json(SingleCustomerOrders::$TYPES); } /** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\jsonResponse */ public function store(Request $request) { $data = $request->all(); $validator = Validator::make($request->all(), [ 'order_items' => 'required' ]); if ($validator->fails()) { return response()->json($validator->errors(),422); } $items = $request->order_items; //ثبت در جدول order $order = $this->createSingleCustomerOrders($data, $request->customer_id,Auth::id(),Auth::user()->branch_id); foreach ($items as $item) { $product = Product::findOrFail($item['product_id']); $product->increment('count_order'); //ثبت orderItem $this->createSingleCustomerOrderItems($product->title,$item,$order->id,$request->customer_id,Auth::user()->branch_id); $variant = ProductVariant::find($item['variant_id']); $variant->update(['qty'=>$variant->qty - $item['qty']]); Sms::Send('09124871664','هنزا(ادمین)'."\n".'تعداد '.$item['qty'].' عدد توسط مدیر '.\auth()->user()->name.' به شماره سفارش'.$order->id.'از محصول با کد '.$product->product_code.' کم شد.'); Sms::Send('09128081392','هنزا(ادمین)'."\n".'تعداد '.$item['qty'].' عدد توسط مدیر '.\auth()->user()->name.' به شماره سفارش'.$order->id.'از محصول با کد '.$product->product_code.' کم شد.'); } //ثبت وضعیت های سفارش و ثبت در جدول transaction_order وارسال پیامک به مشتری $this->afterCreateOrder($request->customer_id, $order, 1 , $data['sts']); // Sms::Send('09128081392','هنزا'."\n".'سفارش جدید با شماره '.$order->id.' به مبلغ '.$order->total_price.'تومان '); // Sms::Send('09124406015','هنزا'."\n".'سفارش جدید با شماره '.$order->id.' به مبلغ '.$order->total_price.'تومان '); return response()->json(true); } public function update(Request $request,$id){ $validator = Validator::make($request->all(), [ 'order_items' => 'required', 'shipping_address' => 'required' ]); if ($validator->fails()) { return response()->json($validator->errors(),422); } $data = $request->all(); $items = $request->order_items; $data['user_id_id'] = $request->customer_id; $data['reagent_id'] = Auth::id(); $data['gold_price_original'] = WebServiceGold::getPriceGold18Ayar(); SingleCustomerOrders::findOrFail($id)->update($data); SingleCustomerOrderItems::where('order_id',$id)->delete(); foreach ($items as $item) { $product = Product::findOrFail($item['product_id']); $order_item =SingleCustomerOrderItems::create([ 'title' => $product->title, 'price' => $item['price'] ?? 0, 'qty' => $item['qty'] ?? 0, 'product_id' => $item['product_id'] ?? 0, 'variant_id' => $item['variant_id'] ?? 0, 'order_id' => $id, 'grams'=>$item['grams'] ?? 0 , 'rial_pay'=>$item['rial_pay'] ?? 0, 'variant_title'=>$item['variant_title'], 'is_preorder'=> $item['is_preorder'], 'total_discount'=> $item['total_discount'], 'total_price'=> $item['total_price'], ]); if (!is_null($item['promotion_id'])){ $promotion = PromotionProduct::findOrFail($item['promotion_id']); $order_item->promotion_id = $promotion->promotion_id; $order_item->promotion_item_id = $promotion->promotion_item_id; $order_item->save(); PromotionUsed::create([ 'customer_id'=>$request->customer_id, 'promotion_id'=>$promotion->promotion_id, 'promotion_item_id'=>$promotion->promotion_item_id, 'order_id'=> $id, 'order_item_id'=>$order_item->id, 'promotion_product_id'=>$promotion->id ]); } } // $cu = SingleCustomer::findOrFail($request->customer_id); // Sms::Send($cu->phone , 'هنزا گلد' // ."\n".$cu->fname.' '.$cu->lname.' گرامی '."\n" // .'با تشکر از اعتماد شما به هنزا'."\n" // .'سفارش شما به شماره '.$id // .' ویرایش شد.'."\n" // .' وزن نهایی محصول شما'.$request->total_weight.'می باشد '."\n" // .'لطفا منتظر تماس کارشناسان فروش ما باشید.'."\n" // .'در ضمن شما میتوانید وضعیت سفارش خود را از طريق لينک زير پیگیری نماييد.'."\n" // .'https://henzagold.com/customer/my-orders' // ); return response()->json(true); } }
Copyright ©2k19 -
Hexid
|
Tex7ure