/
home
/
obinna
/
html
/
boaz2
/
src
/
Repository
/
Upload File
HOME
<?php namespace App\Repository; /** * CargoRepository * * This class was generated by the Doctrine ORM. Add your own custom * repository methods below. */ class CargoRepository extends \Doctrine\ORM\EntityRepository { public function findBySeller($seller) { return $this->getEntityManager() ->createQuery( 'SELECT c FROM App\Entity\Cargo c WHERE c.seller LIKE :seller' )->setParameter('seller', '%' . $seller . '%') ->getResult(); } public function findByProduct($product) { return $this->getEntityManager() ->createQuery( 'SELECT c FROM App\Entity\Cargo c WHERE c.product = :product ORDER BY c.date DESC' )->setParameter('product', $product) ->getResult(); } public function findByDate($from, $to) { return $this->getEntityManager() ->createQuery( 'SELECT c FROM App\Entity\Cargo c WHERE c.date BETWEEN :fro AND :to' )->setParameter('fro', $from) ->setParameter('to', $to) ->getResult(); } public function findJoin() { return $this->getEntityManager() ->createQuery( 'SELECT c, s FROM App\Entity\Cargo c, App\Entity\Subcargo s WHERE c.id = s.cargoId' )->getResult(); } public function calculateBalance($id) { $release = $this->getEntityManager() ->createQuery( 'SELECT r FROM App\Entity\ReleaseOrder r WHERE r.cargo = :id' )->setParameter('id', $id) // ->select('SUM(r.quantity) as quantity') ->getResult(); return $release; } public function findNotEmpty() { return $this->getEntityManager() ->createQuery( 'SELECT c FROM App\Entity\Cargo c WHERE c.quantity > (SELECT COALESCE(SUM(r.quantity), 0) FROM App\Entity\ReleaseOrder r WHERE r.cargo = c.id) ORDER BY c.date DESC' )->getResult(); } // public function findNotEmpty($released) // { // return $this->createQueryBuilder('c') // ->andWhere('c.quantity > :released') // ->setParameter('released', $released) // ->getQuery() // ->execute(); // } }