Пример #1
0
 function process($saleId, $statusId)
 {
     $response = new ResponseEntity();
     try {
         DB::transaction(function () use(&$response, $saleId, $statusId) {
             $sale = Sale::find($saleId);
             if ($sale) {
                 $sp = new SaleProcessed();
                 $sp->qc_user_id = 1;
                 $sp->sale_status_id = $statusId;
                 $sp->user_id = $sale->user_id;
                 $sp->product_id = $sale->product_id;
                 $sp->customer_id = $sale->customer_id;
                 $sp->date_sold = $sale->date_sold;
                 $sp->order_number = $sale->order_number;
                 $sp->ninety_days = $sale->ninety_days;
                 $sp->remarks = $sale->remarks;
                 $sp->entered_datetime = $sale->created_at;
                 $ok = $sp->save();
                 if ($ok) {
                     $deleted = Sale::destroy($saleId);
                     if ($deleted) {
                         $response->setSuccess(true);
                         $response->setMessages(['Sale successfully processed!']);
                     } else {
                         $response->setMessages(['Failed to process sale!']);
                     }
                 } else {
                     $response->setMessages(['Failed to process sale!']);
                 }
             } else {
                 $response->setMessages(['Sale not available']);
             }
         });
     } catch (\Exception $ex) {
         $response->setMessages(['Exception: ' . $ex->getMessage()]);
     }
     return $response;
 }