Merge branch 'sprint/tianshujie_fixbug' into 'master'

* Fix bug #28878.

See merge request easycorp/zentaopms!5879
This commit is contained in:
李玉春
2022-10-25 05:28:12 +00:00
2 changed files with 27 additions and 4 deletions
+1 -1
View File
@@ -287,7 +287,7 @@ class build extends control
$this->view->canBeChanged = common::canBeChanged('build', $build); // Determines whether an object is editable.
$this->view->users = $this->loadModel('user')->getPairs('noletter');
$this->view->build = $build;
$this->view->buildPairs = $this->build->getBuildPairs(0, 0, 'noempty,notrunk', $build->execution, 'execution');
$this->view->buildPairs = $this->build->getBuildPairs(0, 'all', 'noempty,notrunk', $build->execution, 'execution');
$this->view->actions = $this->loadModel('action')->getList('build', $buildID);
$this->view->link = $link;
$this->view->param = $param;
+26 -3
View File
@@ -512,11 +512,10 @@ class kanbanModel extends model
*/
public function importCard($kanbanID, $regionID, $groupID, $columnID)
{
$data = fixer::input('post')->get();
$data = fixer::input('post')->get();
$importIDList = $data->cards;
$targetLaneID = $data->targetLane;
$oldCardsKanban = $this->dao->select('id,kanban')->from(TABLE_KANBANCARD)->where('id')->in($importIDList)->fetchPairs();
$cardList = $this->dao->select('*')->from(TABLE_KANBANCARD)->where('id')->in($importIDList)->fetchAll('id');
$updateData = new stdClass();
$updateData->kanban = $kanbanID;
@@ -524,6 +523,30 @@ class kanbanModel extends model
$updateData->group = $groupID;
$this->dao->update(TABLE_KANBANCARD)->data($updateData)->where('id')->in($importIDList)->exec();
$kanban = $this->getByID($kanbanID);
$oldCardsKanban = array();
$kanbanUsers = trim($kanban->owner) . ',' . trim($kanban->team);
$users = $this->loadModel('user')->getPairs('noclosed|nodeleted', '', 0, $kanbanUsers);
foreach($cardList as $cardID => $card)
{
$oldCardsKanban[$cardID] = $card->kanban;
if(empty($card->assignedTo)) continue;
$assignedToList = explode(',', $card->assignedTo);
foreach($assignedToList as $index => $account)
{
if(!isset($users[$account])) unset($assignedToList[$index]);
}
$assignedTo = implode(',', $assignedToList);
$assignedTo = trim($assignedTo, ',');
if($card->assignedTo != $assignedTo)
{
$this->dao->update(TABLE_KANBANCARD)->set('assignedTo')->eq($assignedTo)->where('id')->eq($cardID)->exec();
}
}
if(!dao::isError())
{
$this->removeKanbanCell('common', $importIDList, $oldCardsKanban);