private function equipmentFactory($result)
 {
     $equipments = array();
     if (is_array($result)) {
         if (count($result) > 0) {
             foreach ($result as $value) {
                 $equipment = new \Entity\Equipment();
                 $equipment->setEquipmentId($value['equipment_id']);
                 $equipment->setAreaId($value['area_id']);
                 $equipment->setName($value['name']);
                 $equipments[] = $equipment;
             }
         }
     }
     return $equipments;
 }
 public function postEquipmentAction()
 {
     try {
         $app = \Slim\Slim::getInstance();
         $data = $app->request->getBody();
         $equipmentPos = json_decode($data);
         $equipment = new \Entity\Equipment();
         $equipment->setName($equipmentPos->name);
         $equipment->setAreaId($equipmentPos->area_id);
         $this->validateEquipment($equipment);
         $equipmentRep = new \Repository\EquipmentRepository();
         $equipmentRep->insert($equipment);
         $returnEquipments = $equipmentRep->findEquipmentInserted($equipment);
         if (count($returnEquipments) > 1) {
             throw new Exception('Many equipments');
         }
         $resource = new \League\Fractal\Resource\Item($returnEquipments[0], new \Transformer\EquipmentTransformer());
         return $this->writeJson($resource, 200);
     } catch (\Exception $exc) {
         return $this->error($exc->getMessage());
     }
 }