Skip to content

Commit

Permalink
pkp/pkp-lib#5717 Remove EditDecisionDAO
Browse files Browse the repository at this point in the history
  • Loading branch information
NateWr committed Jan 12, 2022
1 parent fc2db5f commit 5272bc9
Show file tree
Hide file tree
Showing 5 changed files with 27 additions and 47 deletions.
24 changes: 0 additions & 24 deletions classes/submission/reviewer/ReviewerSubmission.inc.php
Original file line number Diff line number Diff line change
Expand Up @@ -27,10 +27,6 @@ class ReviewerSubmission extends Submission
/** @var array SubmissionComments peer review comments of this submission */
public $peerReviewComments;

/** @var array the editor decisions of this submission */
public $editorDecisions;


/**
* Get/Set Methods.
*/
Expand Down Expand Up @@ -115,26 +111,6 @@ public function setReviewerFullName($reviewerFullName)
$this->setData('reviewerFullName', $reviewerFullName);
}

/**
* Get editor decisions.
*
* @return array
*/
public function getDecisions()
{
return $this->editorDecisions;
}

/**
* Set editor decisions.
*
* @param $editorDecisions array
*/
public function setDecisions($editorDecisions)
{
return $this->editorDecisions = $editorDecisions;
}

/**
* Get reviewer recommendation.
*
Expand Down
5 changes: 0 additions & 5 deletions classes/submission/reviewer/ReviewerSubmissionDAO.inc.php
Original file line number Diff line number Diff line change
Expand Up @@ -100,11 +100,6 @@ public function _fromRow($row)
$reviewerSubmission->setAllData($submission->getAllData());
$reviewer = Repo::user()->get($row['reviewer_id'], true);

// Editor Decisions
$editDecisionDao = DAORegistry::getDAO('EditDecisionDAO'); /* @var $editDecisionDao EditDecisionDAO */
$decisions = $editDecisionDao->getEditorDecisions($row['submission_id']);
$reviewerSubmission->setDecisions($decisions);

// Review Assignment
$reviewerSubmission->setReviewId($row['review_id']);
$reviewerSubmission->setReviewerId($row['reviewer_id']);
Expand Down
13 changes: 8 additions & 5 deletions plugins/importexport/datacite/filter/DataciteXmlFilter.inc.php
Original file line number Diff line number Diff line change
Expand Up @@ -409,11 +409,14 @@ public function createDatesNode($doc, $issue, $article, $publication, $galley, $
$dates[DATACITE_DATE_SUBMITTED] = $submittedDate;
}
// Accepted date: the last editor accept decision date
$editDecisionDao = DAORegistry::getDAO('EditDecisionDAO'); /* @var $editDecisionDao EditDecisionDAO */
$editDecisions = $editDecisionDao->getEditorDecisions($article->getId());
foreach (array_reverse($editDecisions) as $editDecision) {
if ($editDecision['decision'] == Decision::ACCEPT) {
$dates[DATACITE_DATE_ACCEPTED] = $editDecision['dateDecided'];
$editDecisions = Repo::decision()->getMany(
Repo::decision()
->getCollector()
->filterBySubmissionIds([$article->getId()])
);
foreach ($editDecisions->reverse() as $editDecision) {
if ($editDecision->getData('decision') == Decision::ACCEPT) {
$dates[DATACITE_DATE_ACCEPTED] = $editDecision->getData('dateDecided');
}
}
// Last modified date (for articles): last modified date.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -124,14 +124,17 @@ public function &process(&$submissions)
$historyNode = $doc->createElement('History');
$historyNode->appendChild($this->generatePubDateDom($doc, $submission->getDateSubmitted(), 'received'));

$editDecisionDao = DAORegistry::getDAO('EditDecisionDAO'); /* @var $editDecisionDao EditDecisionDAO */
$editDecisions = (array) $editDecisionDao->getEditorDecisions($submission->getId());
do {
$editorDecision = array_pop($editDecisions);
} while ($editorDecision && $editorDecision['decision'] != Decision::ACCEPT);
$editDecisions = Repo::decision()->getMany(
Repo::decision()
->getCollector()
->filterBySubmissionIds([$submission->getId()])
);
$editorDecision = $editDecisions->first(function (Decision $decision, $key) {
return $decision->getData('decision') === Decision::ACCEPT;
});

if ($editorDecision) {
$historyNode->appendChild($this->generatePubDateDom($doc, $editorDecision['dateDecided'], 'accepted'));
$historyNode->appendChild($this->generatePubDateDom($doc, $editorDecision->getData('dateDecided'), 'accepted'));
}
$articleNode->appendChild($historyNode);

Expand Down
17 changes: 10 additions & 7 deletions plugins/reports/articles/ArticleReportPlugin.inc.php
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,6 @@ public function display($args, $request)
// Add BOM (byte order mark) to fix UTF-8 in Excel
fprintf($fp, chr(0xEF) . chr(0xBB) . chr(0xBF));

$editDecisionDao = DAORegistry::getDAO('EditDecisionDAO'); /* @var $editDecisionDao EditDecisionDAO */
$stageAssignmentDao = DAORegistry::getDAO('StageAssignmentDAO'); /* @var $stageAssignmentDao StageAssignmentDAO */
$userGroupDao = DAORegistry::getDAO('UserGroupDAO'); /* @var $userGroupDao UserGroupDAO */
$sectionDao = DAORegistry::getDAO('SectionDAO'); /* @var $sectionDao SectionDAO */
Expand All @@ -104,13 +103,17 @@ public function display($args, $request)
while ($submission = $submissions->next()) {
$publication = $submission->getCurrentPublication();
$maxAuthors = max($maxAuthors, count($publication->getData('authors')));
$editDecisions = $editDecisionDao->getEditorDecisions($submission->getId());
$editDecisions = Repo::decision()->getMany(
Repo::decision()
->getCollector()
->filterBySubmissionIds([$submission->getId()])
);
$statusMap = $submission->getStatusMap();

// Count the highest number of decisions per editor.
$editDecisionsPerEditor = [];
foreach ($editDecisions as $editDecision) {
$editorId = $editDecision['editorId'];
$editorId = $editDecision->getData('editorId');
$editDecisionsPerEditor[$editorId] = ($editDecisionsPerEditor[$editorId] ?? 0) + 1;
$maxDecisions = max($maxDecisions, $editDecisionsPerEditor[$editorId]);
}
Expand Down Expand Up @@ -179,7 +182,7 @@ public function display($args, $request)
'dateSubmitted' => $submission->getDateSubmitted(),
'lastModified' => $submission->getLastModified(),
'editors' => $editors,
'decisions' => $editDecisions,
'decisions' => $editDecisions->toArray(),
];
}

Expand Down Expand Up @@ -267,14 +270,14 @@ public function display($args, $request)
$latestDecision = $latestDecisionDate = '';
$decisionCounter = 0;
foreach ($result['decisions'] as $decision) {
if ($decision['editorId'] != $editorId) {
if ($decision->getData('editorId') != $editorId) {
continue;
}
if ($j != $decisionCounter++) {
continue;
}
$latestDecision = $this->getDecisionMessage($decision['decision']);
$latestDecisionDate = $decision['dateDecided'];
$latestDecision = $this->getDecisionMessage($decision->getData('decision'));
$latestDecisionDate = $decision->getData('dateDecided');
}
$row = array_merge($row, [$latestDecision, $latestDecisionDate]);
}
Expand Down

0 comments on commit 5272bc9

Please sign in to comment.