function bindTransactionProofEntityArray($transactionProofEntitys) { $transactionProofDtos = new TransactionProofListDto(); $transactionProofDtoArray = array(); foreach ($transactionProofEntitys as $transactionProofEntity => $value) { array_push($transactionProofDtoArray, bindTransactionProofEntity($value)); } $transactionProofDtos->setTransactionProofs($transactionProofDtoArray); return $transactionProofDtos; }
function bindTransactionEntity($transactionEntity) { if ($transactionEntity != null) { $transactionDto = new TransactionDto(); $transactionDto->setTransactionId($transactionEntity->getTransactionId()); $transactionDto->setTransactionTotal($transactionEntity->getTransactionTotal()); $transactionDto->setUser(bindUserEntity($transactionEntity->getUser())); $transactionDto->setTransactionType($transactionEntity->getTransactionType()); $transactionDto->setTransactionProof(bindTransactionProofEntity($transactionEntity->getTransactionProof())); $transactionDto->setTransactionDate($transactionEntity->getTransactionDate()); return $transactionDto; } else { return null; } }
} }); $app->put('/transactionproofs/:id', function ($id) use($app) { global $entityManager; $transactionProofEntity = $entityManager->find("TransactionProofEntity", $id); $entityManager->flush(); $transactionProofDto = bindTransactionProofEntity($transactionProofEntity); $transactionProofDto->printData($app); }); $app->post('/transactionproofs', function () use($app) { global $entityManager; $transactionProofDto = new TransactionProofDto(); $transactionProofDto->bindJson($app); $entityManager->persist($transactionProofEntity); $entityManager->flush(); $transactionProofDto = bindTransactionProofEntity($transactionProofEntity); $transactionProofDto->printData($app); }); $app->delete('/transactionproofs/:id', function ($id) use($app) { global $entityManager; $transactionProofEntity = $entityManager->find("TransactionProofEntity", $id); $entityManager->remove($transactionProofEntity); $entityManager->flush(); }); /*Referances*/ $app->get('/transactionproofs/:id/transactions', function ($id) use($app) { global $entityManager; $transactionEntities = $entityManager->getRepository("TransactionEntity")->findBy(array('transactionproof' => $id)); $transaction = bindTransactionEntityArray($transactionEntities); $transaction->printData($app); });