public function test_setPeriod()
 {
     $obj = new AddCalc();
     $mData = new EPeriod();
     $obj->setPeriod($mData);
     $this->assertEquals($mData, $obj->getPeriod());
 }
Ejemplo n.º 2
0
 public function addCalc(Request\AddCalc $request)
 {
     $result = new Response\AddCalc();
     $calcTypeId = $request->getCalcTypeId();
     $dsBegin = $request->getDateStampBegin();
     $dsEnd = $request->getDateStampEnd();
     $def = $this->_manTrans->begin();
     try {
         /* create new period for given calculation type */
         $periodData = [Period::ATTR_CALC_TYPE_ID => $calcTypeId, Period::ATTR_DSTAMP_BEGIN => $dsBegin, Period::ATTR_DSTAMP_END => $dsEnd];
         $periodId = $this->_repoPeriod->create($periodData);
         /* create new calculation for the period */
         $dateStarted = $this->_toolDate->getUtcNowForDb();
         $calcData = [Calculation::ATTR_PERIOD_ID => $periodId, Calculation::ATTR_DATE_STARTED => $dateStarted, Calculation::ATTR_STATE => Cfg::CALC_STATE_STARTED];
         $calcId = $this->_repoCalc->create($calcData);
         $this->_manTrans->commit($def);
         /* compose response */
         $periodData[Period::ATTR_ID] = $periodId;
         $calcData[Calculation::ATTR_ID] = $calcId;
         $result->setPeriod($periodData);
         $result->setCalculation($calcData);
         $result->markSucceed();
     } finally {
         $this->_manTrans->end($def);
     }
     return $result;
 }