Ejemplo n.º 1
0
 public function postReadServiceOrder()
 {
     $serviceOrder = fil_service_order::orderBy('ser_id', 'desc')->get();
     if ($serviceOrder == null) {
         return Response::json(array('success' => false, 'data' => 'Error al leer la ordenes de servicio'));
     }
     $today = date('Y-m-d');
     $today = date('Y-m-d', strtotime($today));
     $activeServiceOrder = [];
     $historyServiceOrder = [];
     foreach ($serviceOrder as $value) {
         $value->customer;
         if ($value->ser_auth_admin == 2 && $value->ser_auth_production == 2 && $value->ser_auth_sales == 2) {
             if ($today <= date('Y-m-d', strtotime($value->ser_end_date))) {
                 $activeServiceOrder[] = $value;
             } else {
                 $historyServiceOrder[] = $value;
             }
         }
     }
     $response = Response::json(array('success' => true, 'activeServiceOrder' => $activeServiceOrder, 'historyServiceOrder' => $historyServiceOrder));
     return $response;
 }
 public function postReadServiceOrderAuth()
 {
     $data = fil_service_order::orderBy('ser_id', 'desc')->get();
     if ($data == null) {
         return Response::json(array('success' => false, 'data' => 'Ordenes de servicio no encontradas'));
     }
     $rejected = [];
     $pending = [];
     $accepted = [];
     $canceled = [];
     $history = [];
     $today = date('Y-m-d');
     $today = date('Y-m-d', strtotime($today));
     foreach ($data as $value) {
         $row = [];
         $row['ser_id'] = $value->ser_id;
         $row['ser_fk_customer'] = $value->customer->cus_contact_first_name . " " . $value->customer->cus_contact_last_name;
         $row['created_at'] = date_format(date_create($value->created_at), 'Y-m-d');
         if ($today <= date('Y-m-d', strtotime($value->ser_end_date))) {
             switch (Session::get('type')) {
                 case 'producción':
                     if ($value->ser_auth_admin == 2 && $value->ser_auth_sales == 2) {
                         switch ($value->ser_auth_production) {
                             case '0':
                                 $pending[] = $row;
                                 break;
                             case '1':
                                 $rejected[] = $row;
                                 break;
                             case '2':
                                 $accepted[] = $row;
                                 break;
                             case '3':
                                 $canceled[] = $row;
                                 break;
                         }
                     }
                     break;
                 case 'administrador':
                 case 'tesoreria':
                     switch ($value->ser_auth_admin) {
                         case '0':
                             $pending[] = $row;
                             break;
                         case '1':
                             $rejected[] = $row;
                             break;
                         case '2':
                             $accepted[] = $row;
                             break;
                         case '3':
                             $canceled[] = $row;
                             break;
                     }
                     break;
                 case 'gerente de ventas':
                     switch ($value->ser_auth_sales) {
                         case '0':
                             $pending[] = $row;
                             break;
                         case '1':
                             $rejected[] = $row;
                             break;
                         case '2':
                             $accepted[] = $row;
                             break;
                         case '3':
                             $canceled[] = $row;
                             break;
                     }
                     break;
             }
         } else {
             $history[] = $row;
         }
     }
     $response = Response::json(array('success' => true, 'rejected' => $rejected, 'pending' => $pending, 'accepted' => $accepted, 'canceled' => $canceled, 'history' => $history));
     return $response;
 }
 public function postReadServiceOrder()
 {
     $serviceOrders = fil_service_order::orderBy('ser_start_date')->get();
     if ($serviceOrders == null) {
         return Response::json(array('success' => false, 'data' => 'Error al leer las ordenes de servicio'));
     }
     $serviceOrdersWithProduction = [];
     foreach ($serviceOrders as $order) {
         $add = false;
         foreach ($order->detailsProducts as $detail) {
             if ($detail->detailProduction != null) {
                 $add = true;
             }
         }
         if ($add) {
             $serviceOrdersWithProduction[] = $order;
         }
     }
     $pending = [];
     $process = [];
     $full = [];
     $historial = [];
     $today = date('Y-m-d');
     $today = date('Y-m-d', strtotime($today));
     foreach ($serviceOrdersWithProduction as $order) {
         if ($order->ser_auth_admin == 2 && $order->ser_auth_production == 2 && $order->ser_auth_sales == 2) {
             if ($today <= date('Y-m-d', strtotime($order->ser_end_date))) {
                 $ArrayToAdd = 'pending';
                 foreach ($order->detailsProducts as $detail) {
                     if ($detail->detailProduction != null) {
                         switch ($detail->detailProduction->dpr_status) {
                             case 'Pendiente':
                                 $ArrayToAdd = 'pending';
                                 break;
                             case 'En Proceso':
                                 $ArrayToAdd = 'process';
                                 break;
                             case 'Completa':
                                 $ArrayToAdd = 'full';
                                 break;
                         }
                     }
                 }
                 switch ($ArrayToAdd) {
                     case 'pending':
                         $pending[] = array('id' => $order->ser_id, 'customer' => '<b>Contacto:</b> ' . $order->customer->cus_contact_first_name . ' ' . $order->customer->cus_contact_last_name . ', <b>Empresa:</b> ' . $order->customer->cus_commercial_name, 'start_date' => $order->ser_start_date);
                         break;
                     case 'process':
                         $process[] = array('id' => $order->ser_id, 'customer' => '<b>Contacto:</b> ' . $order->customer->cus_contact_first_name . ' ' . $order->customer->cus_contact_last_name . ', <b>Empresa:</b> ' . $order->customer->cus_commercial_name, 'start_date' => $order->ser_start_date);
                         break;
                     case 'full':
                         $full[] = array('id' => $order->ser_id, 'customer' => '<b>Contacto:</b> ' . $order->customer->cus_contact_first_name . ' ' . $order->customer->cus_contact_last_name . ', <b>Empresa:</b> ' . $order->customer->cus_commercial_name, 'start_date' => $order->ser_start_date);
                         break;
                 }
             } else {
                 $historial[] = array('id' => $order->ser_id, 'customer' => '<b>Contacto:</b> ' . $order->customer->cus_contact_first_name . ' ' . $order->customer->cus_contact_last_name . ', <b>Empresa:</b> ' . $order->customer->cus_commercial_name, 'start_date' => $order->ser_start_date);
             }
         }
     }
     $response = Response::json(array('success' => true, 'pending' => $pending, 'process' => $process, 'full' => $full, 'historial' => $historial));
     return $response;
 }