Merge branch 'sprint/182_hufangzhou_moveCard' into 'kanban'
* Adjust the moveCards function. See merge request easycorp/zentaopms!1394
This commit is contained in:
@@ -746,15 +746,17 @@ class kanban extends control
|
||||
* Move a card.
|
||||
*
|
||||
* @param int $cardID
|
||||
* @param int $fromColID
|
||||
* @param int $toColID
|
||||
* @param int $fromLaneID
|
||||
* @param int $toLaneID
|
||||
* @param int $kanbanID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function moveCard($cardID, $toColID, $toLaneID, $kanbanID)
|
||||
public function moveCard($cardID, $fromColID, $toColID, $fromLaneID, $toLaneID, $kanbanID)
|
||||
{
|
||||
$this->kanban->moveCard($cardID, $toColID, $toLaneID);
|
||||
$this->kanban->moveCard($cardID, $fromColID, $toColID, $fromLaneID, $toLaneID);
|
||||
if(dao::isError()) return $this->send(array('result' => 'fail', 'message' => dao::getError()));
|
||||
$kanbanGroup = $this->kanban->getKanbanData($kanbanID);
|
||||
die(json_encode($kanbanGroup));
|
||||
|
||||
@@ -374,16 +374,19 @@ function showErrorMessager(message)
|
||||
* Move a card.
|
||||
*
|
||||
* @param int $cardID
|
||||
* @param int $fromColID
|
||||
* @param int $toColID
|
||||
* @param int $fromLaneID
|
||||
* @param int $toLaneID
|
||||
* @param int $kanbanID
|
||||
* @param int $regionID
|
||||
* @access public
|
||||
* @return string
|
||||
*/
|
||||
function moveCard(cardID, toColID, toLaneID, kanbanID, regionID)
|
||||
function moveCard(cardID, fromColID, toColID, fromLaneID, toLaneID, kanbanID, regionID)
|
||||
{
|
||||
if(!cardID) return false;
|
||||
var url = createLink('kanban', 'moveCard', 'cardID=' + cardID + '&toColID=' + toColID + '&toLaneID=' + toLaneID + '&kanbanID=' + kanbanID);
|
||||
var url = createLink('kanban', 'moveCard', 'cardID=' + cardID + '&fromColID='+ fromColID + '&toColID=' + toColID + '&fromLaneID='+ fromLaneID + '&toLaneID=' + toLaneID + '&kanbanID=' + kanbanID);
|
||||
return $.ajax(
|
||||
{
|
||||
method: 'post',
|
||||
@@ -586,7 +589,7 @@ function handleDropTask($element, event, kanban)
|
||||
if(oldCol.id === newCol.id && newLane.id === oldLane.id) return false;
|
||||
|
||||
var cardID = $card.data().id;
|
||||
moveCard(cardID, newCol.id, newLane.id, kanbanID, regionID);
|
||||
moveCard(cardID, oldCol.id, newCol.id, oldLane.id, newLane.id, kanbanID, regionID);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
+15
-7
@@ -827,10 +827,12 @@ class kanbanModel extends model
|
||||
*/
|
||||
public function getCardGroupByKanban($kanbanID)
|
||||
{
|
||||
$cards = $this->dao->select('*')->from(TABLE_KANBANCARD)
|
||||
$cards = $this->dao->select('t1.*,t2.kanban,t2.lane,t2.column')->from(TABLE_KANBANCARD)->alias('t1')
|
||||
->leftJoin(TABLE_KANBANCELL)->alias('t2')->on('t1.kanban=t2.kanban')
|
||||
->where('deleted')->eq(0)
|
||||
->andWhere("INSTR(t2.cards, CONCAT(',',t1.id,','))")->gt(0)
|
||||
->andWhere('archived')->eq(0)
|
||||
->andWhere('kanban')->eq($kanbanID)
|
||||
->andWhere('t2.kanban')->eq($kanbanID)
|
||||
//->orderBy('`order` asc')
|
||||
->fetchAll('id');
|
||||
|
||||
@@ -2468,17 +2470,23 @@ class kanbanModel extends model
|
||||
* Move a card.
|
||||
*
|
||||
* @param int $cardID
|
||||
* @param int $fromColID
|
||||
* @param int $toColID
|
||||
* @param int $fromLaneID
|
||||
* @param int $toLaneID
|
||||
* @access public
|
||||
* @return void
|
||||
*/
|
||||
public function moveCard($cardID, $toColID, $toLaneID)
|
||||
public function moveCard($cardID, $fromColID, $toColID, $fromLaneID, $toLaneID)
|
||||
{
|
||||
$this->dao->update(TABLE_KANBANCARD)
|
||||
->set('column')->eq($toColID)
|
||||
->beginIF($toLaneID)->set('lane')->eq($toLaneID)->fi()
|
||||
->where('id')->eq($cardID)->exec();
|
||||
$fromCellCards = $this->dao->select('cards')->from(TABLE_KANBANCELL)->where('lane')->eq($fromLaneID)->andWhere('`column`')->eq($fromColID)->fetch('cards');
|
||||
$toCellCards = $this->dao->select('cards')->from(TABLE_KANBANCELL)->where('lane')->eq($toLaneID)->andWhere('`column`')->eq($toColID)->fetch('cards');
|
||||
|
||||
$fromCardList = str_replace("$cardID,", '', $fromCellCards);
|
||||
$toCardList = rtrim($toCellCards, ',') . ",$cardID,";
|
||||
|
||||
$this->dao->update(TABLE_KANBANCELL)->set('cards')->eq($fromCardList)->where('`column`')->eq($fromColID)->andWhere('lane')->eq($fromLaneID)->exec();
|
||||
$this->dao->update(TABLE_KANBANCELL)->set('cards')->eq($toCardList)->where('`column`')->eq($toColID)->andWhere('lane')->eq($toLaneID)->exec();
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user