public function update(BaseSubjectHandler $subjectHandler, CollectorFix $fix, AppliedChangesLogModel $log) { $data = $fix->getUpdateData(); $result = $subjectHandler->applySnapshot($data, $fix->getDbVersion()); $data = $subjectHandler->getSnapshot($result->getId()); $log->description = $fix->getName(); $log->originalData = array(); $log->updateData = $data; return $result; }
public function update(BaseSubjectHandler $subjectHandler, CollectorFix $fix, AppliedChangesLogModel $log) { $id = $fix->getUpdateData(); $originalData = $subjectHandler->getSnapshot($id, $fix->getDbVersion()); $result = $subjectHandler->delete($id, $fix->getDbVersion()); $log->description = $fix->getName(); $log->originalData = $originalData; $log->updateData = $id; return $result; }
private function _applyReferenceFix(CollectorFix $fix) { $item = new ReferenceItem(); $data = $fix->getUpdateData(); $subject = $fix->getSubject() ?: self::REFERENCE_SUBJECT_ADD; $item->reference = $data['reference']; $item->id = $data['id']; $item->group = $data['group']; $item->dbVersion = $data['dbVersion']; if ($subject == self::REFERENCE_SUBJECT_ADD) { try { $this->_getReferenceController()->getReferenceValue($item->id, $item->group, $item->dbVersion); $this->_getReferenceController()->getItemCurrentVersionByReference($item->reference); } catch (\Exception $e) { $this->_getReferenceController()->registerItem($item); } } if ($subject == self::REFERENCE_SUBJECT_REMOVE) { $this->_getReferenceController()->removeItemById($item->id, $item->group, $item->dbVersion); } }