commit 19f45a11852173a3c1d27d4e011844c7475458fb
parent 6a0ce6da839052204ea42f644537b6eb27118c1f
Author: Felicitus <felicitus@felicitus.org>
Date: Sat, 31 Oct 2015 18:29:36 +0100
Removed legacy stock service
Diffstat:
2 files changed, 0 insertions(+), 160 deletions(-)
diff --git a/src/backend/PartKeepr/Stock/StockManager.php b/src/backend/PartKeepr/Stock/StockManager.php
@@ -1,66 +0,0 @@
-<?php
-namespace PartKeepr\Stock;
-
-use PartKeepr\Manager\AbstractManager,
- Doctrine\ORM\QueryBuilder,
- PartKeepr\Manager\ManagerFilter,
- PartKeepr\PartKeepr;
-
-class StockManager extends AbstractManager {
- /**
- * Returns the FQCN for the target entity to operate on.
- * @return string The FQCN, e.g. PartKeepr\Part
- */
- public function getEntityName () {
- return 'PartKeepr\Stock\StockEntry';
- }
-
- /**
- * Returns all fields which need to appear in the getList ResultSet.
- * @return array An array of all fields which should be returned
- */
- public function getQueryFields () {
- return array();
- }
-
- /**
- * Returns the default sort field
- *
- * @return string The default sort field
- */
- public function getDefaultSortField () {
- return "dateTime";
- }
-
- /**
- * Applies a custom query to the QueryBuilder
- *
- * @param QueryBuilder $qb The query builder
- * @param ManagerFilter $filter The query filter
- */
- protected function applyCustomQuery (QueryBuilder $qb, ManagerFilter $filter) {
-
- // Apply special handling for non-direct fields in relations, where the frontend has no idea about.
- foreach ($filter->getSorters() as $sorter) {
- switch ($sorter->getSortField()) {
- case "q.part_name":
- $qb->join("q.part", "p");
- $sorter->setSortField("p.name");
- break;
- case "q.user_id":
- $qb->leftJoin("q.user", "u");
- $sorter->setSortField("u.username");
- break;
- case "q.direction":
- $sorter->setSortField("q.dateTime");
- break;
- case "q.storageLocation_name":
- $qb->join("q.part", "p")->join("p.storageLocation", "st");
- $sorter->setSortField("st.name");
- break;
- default:
- break;
- }
- }
- }
-}-
\ No newline at end of file
diff --git a/src/backend/PartKeepr/Stock/StockService.php b/src/backend/PartKeepr/Stock/StockService.php
@@ -1,92 +0,0 @@
-<?php
-namespace PartKeepr\Stock;
-
-use PartKeepr\AuthBundle\Entity\User;
-use PartKeepr\Manager\ManagerFilter;
-use PartKeepr\PartKeepr;
-use PartKeepr\Service\RestfulService;
-use PartKeepr\Service\Service;
-use PartKeepr\Session\SessionManager;
-
-class StockService extends Service implements RestfulService {
- /**
- * (non-PHPdoc)
- * @see PartKeepr\Service.RestfulService::get()
- */
- public function get () {
- if ($this->hasParameter("id")) {
- return array("data" => StockManager::getInstance()->getEntity($this->getParameter("id"))->serialize());
- } else {
- $parameters = new ManagerFilter($this);
- $parameters->setFilterField("name");
-
- if ($this->hasParameter("part")) {
- $parameters->setFilterCallback(array($this, "filterCallback"));
- }
- return StockManager::getInstance()->getList($parameters);
- }
- }
-
- /**
- * If the "part" parameter is set, join the part into the result and filter on that
- * @param QueryBuilder The $queryBuilder
- */
- public function filterCallback ($queryBuilder) {
- $queryBuilder->andWhere("q.part = :part");
- $queryBuilder->setParameter("part", $this->getParameter("part"));
- }
-
- public function create () {
- throw new \Exception("Not yet implemented");
- }
-
- /**
- * (non-PHPdoc)
- * @see PartKeepr\Service.RestfulService::update()
- */
- public function update () {
- $this->requireParameter("id");
-
- $stockEntry = StockEntry::loadById($this->getParameter("id"));
-
- if (!SessionManager::getCurrentSession()->getUser()->isAdmin() &&
- !(SessionManager::getCurrentSession()->getUser() && $stockEntry->getUser() && SessionManager::getCurrentSession()->getUser()->getId() == $stockEntry->getUser()->getId() )) {
- throw new \Exception("Permission denied");
- }
-
- /* It's not allowed to edit a price for a removal */
- if (!$stockEntry->isRemoval()) {
- $stockEntry->setPrice(abs($this->getParameter("price")));
- }
-
- /**
- * Only an admin user may correct the in&out stock levels
- */
- if (SessionManager::getCurrentSession()->getUser()->isAdmin()) {
- if ($this->getParameter("direction") == "out") {
- $stockEntry->setStockLevel(-(abs($this->getParameter("stockLevel"))));
- } else {
- $stockEntry->setStockLevel($this->getParameter("stockLevel"));
- }
-
- }
-
- if (SessionManager::getCurrentSession()->getUser()->isAdmin()) {
- try {
- $stockEntry->setUser(User::loadById($this->getParameter("user_id")));
- } catch (\Exception $e) {
- $stockEntry->setUser(null);
- }
-
- }
-
- $stockEntry->setComment($this->getParameter("comment"));
- PartKeepr::getEM()->flush();
-
- return array("data" => $stockEntry->serialize());
- }
-
- public function destroy () {
- throw new \Exception("Not yet implemented");
- }
-}-
\ No newline at end of file