Пример #1
0
 /**
  * @param $id
  * @param $data
  * @return \Illuminate\Support\Collection|null|static
  */
 public function updateOrderDetail($id, $data)
 {
     $orderDetailModel = new orderDetailModel();
     if (isset($options['_token'])) {
         unset($options['_token']);
     }
     if (isset($options['_method'])) {
         unset($options['_method']);
     }
     if (isset($data['order_service_status']) && $data['order_service_status'] == KACANA_ORDER_SERVICE_STATUS_SOLD_OUT && isset($data['order_service_id'])) {
         unset($data['order_service_id']);
     }
     if (isset($data['order_service_status']) && isset($data['order_id'])) {
         $orderNotProcessing = $orderDetailModel->getOrderDetailNotProcess($data['order_id']);
         if (count($orderNotProcessing) == 1 && ($data['order_service_status'] == KACANA_ORDER_SERVICE_STATUS_SHIPPING || $data['order_service_status'] == KACANA_ORDER_SERVICE_STATUS_SOLD_OUT)) {
             $this->_orderModel->updateItem($data['order_id'], ['status' => KACANA_ORDER_STATUS_COMPLETE]);
         } else {
             $this->_orderModel->updateItem($data['order_id'], ['status' => KACANA_ORDER_STATUS_PROCESSING]);
         }
     }
     unset($data['order_id']);
     return $orderDetailModel->updateOrderDetail($id, $data);
 }