2 namespace Auction\DataBin;
10 class Basket extends \Workspace\Service\DataBin
16 protected $meta = array(
18 'DatasetName' => 'bids',
19 'Entity' => '\Auction\Entity\Basket',
20 'JobField' => 'auction',
21 'References' => array(
22 'auction' => '\Auction\Entity\Auction',
23 'company' => '\Company\Entity\Company',
24 'profile' => '\User\Entity\Profile',
25 'autoBasket' => '\Auction\Entity\AutoBasket'
27 'Dependants' => array()
32 protected $metaCreate = array(
34 'Contract' => 'Recurring',
35 'RequiredInput' => array(
40 'OptionalInput' => array()
45 protected $metaSetStatus = array(
47 'RequiredInput' => array(),
48 'OptionalInput' => array(
50 'archived' => 'Boolean'
57 protected $metaGrid = array(
60 'Builder' => '\Auction\Report\BasketGrid',
61 'Writer' => '\Utility\Export\ExcelReport',
62 'Output' => 'Download',
63 'Contract' => 'Recurring',
66 'ExportToExcel' => false
69 'RequiredInput' => array(),
70 'OptionalInput' => array(
72 'NumberOfRecords' => 'Integer',
79 'NumberOfRecords' => 10,
80 'Query' => 'SELECT [SELECTION]
81 FROM \Auction\Entity\Basket basket
82 JOIN basket.auction auction
83 JOIN auction.company company
84 JOIN company.region region
85 JOIN auction.stock stock
86 JOIN stock.vehicleYear vehicleYear
90 LEFT JOIN stock.exteriorColour exteriorColour
91 LEFT JOIN auction.currentBid currentBid
93 'Selection' => 'basket, auction, company, region, stock, vehicleYear, make, model, type, exteriorColour, currentBid',
95 'auction.jobState' => 'Active',
96 'basket.archived' => 0,
97 'auction.archived' => 0
99 'OrderBy' => array('auction.created' => 'DESC'),
105 'created' => 'DateTime',
106 'endDate' => 'DateTime',
114 'currentBid' => array(
121 'created' => 'DateTime',
131 'vehicleYear' => array(
134 'exteriorColour' => array(
149 * Add some dynamic filtering to our grids.
151 public function __construct()
153 $authData = \Utility\Registry::getAuthData();
154 switch (\Utility\Registry::getUserType())
157 $groupFilter = \Utility\Registry::getSudo('Group', false);
158 $divisionFilter = \Utility\Registry::getSudo('Division', false);
159 $companyFilter = \Utility\Registry::getSudo('Company', false);
160 if ($groupFilter && $divisionFilter && $companyFilter)
162 $this->metaGrid['Filter']['IDENTITY(basket.company)'] = $companyFilter;
166 $divisionFilter = \Utility\Registry::getSudo('Division', false);
167 $companyFilter = \Utility\Registry::getSudo('Company', false);
168 if ($divisionFilter && $companyFilter)
170 $this->metaGrid['Filter']['IDENTITY(basket.company)'] = $companyFilter;
173 case 'Dealer Principle':
174 $companyFilter = \Utility\Registry::getSudo('Company', false);
177 $this->metaGrid['Filter']['IDENTITY(basket.company)'] = $companyFilter;
181 $this->metaGrid['Filter']['IDENTITY(basket.company)'] = $authData['company']['id'];