Merge branch 'master' into enable-rest-api-from-plugins
This commit is contained in:
@@ -513,9 +513,9 @@ class indicatorsCalculator
|
||||
$params[':usrUid'] = $usrUid;
|
||||
|
||||
$sqlString = "SELECT
|
||||
COALESCE( SUM( DATEDIFF( DEL_DUE_DATE , NOW( ) ) < 0 ) , 0 ) AS OVERDUE,
|
||||
COALESCE( SUM( DATEDIFF( DEL_DUE_DATE , NOW( ) ) > 0 ) , 0 ) AS ONTIME,
|
||||
COALESCE( SUM( DATEDIFF( DEL_RISK_DATE , NOW( ) ) < 0 ) , 0 ) AS ATRISK
|
||||
COALESCE( SUM( TIMEDIFF( DEL_DUE_DATE , NOW( ) ) < 0 ) , 0 ) AS OVERDUE,
|
||||
COALESCE( SUM( TIMEDIFF( DEL_RISK_DATE , NOW( ) ) > 0 ) , 0 ) AS ONTIME,
|
||||
COALESCE( SUM( TIMEDIFF( DEL_RISK_DATE , NOW( ) ) < 0 && TIMEDIFF( DEL_DUE_DATE , NOW( ) ) > 0) , 0 ) AS ATRISK
|
||||
FROM LIST_INBOX
|
||||
WHERE USR_UID = :usrUid
|
||||
AND APP_STATUS = 'TO_DO'
|
||||
@@ -534,9 +534,9 @@ class indicatorsCalculator
|
||||
APP_TAS_TITLE AS taskTitle,
|
||||
APP_PRO_TITLE AS proTitle,
|
||||
|
||||
COALESCE( SUM( DATEDIFF( DEL_DUE_DATE , NOW( ) ) < 0 ) , 0 ) AS overdue,
|
||||
COALESCE( SUM( DATEDIFF( DEL_DUE_DATE , NOW( ) ) > 0 ) , 0 ) AS onTime,
|
||||
COALESCE( SUM( DATEDIFF( DEL_RISK_DATE , NOW( ) ) < 0 ) , 0 ) AS atRisk
|
||||
COALESCE( SUM( TIMEDIFF( DEL_DUE_DATE , NOW( ) ) < 0 ) , 0 ) AS overdue,
|
||||
COALESCE( SUM( TIMEDIFF( DEL_RISK_DATE , NOW( ) ) > 0 ) , 0 ) AS onTime,
|
||||
COALESCE( SUM( TIMEDIFF( DEL_RISK_DATE , NOW( ) ) < 0 && TIMEDIFF( DEL_DUE_DATE , NOW( ) ) > 0) , 0 ) AS atRisk
|
||||
FROM LIST_INBOX
|
||||
WHERE USR_UID = :usrUid
|
||||
AND APP_STATUS = 'TO_DO'
|
||||
@@ -561,8 +561,8 @@ class indicatorsCalculator
|
||||
|
||||
if (is_array($result) && isset($result[0])) {
|
||||
$response['overdue'] = $result[0]['OVERDUE'];
|
||||
$response['atRisk'] = $result[0]['ONTIME'];
|
||||
$response['onTime'] = $result[0]['ATRISK'];
|
||||
$response['atRisk'] = $result[0]['ATRISK'];
|
||||
$response['onTime'] = $result[0]['ONTIME'];
|
||||
|
||||
$total = $response['overdue'] + $response['atRisk'] + $response['onTime'];
|
||||
if ($total != 0) {
|
||||
@@ -578,20 +578,20 @@ class indicatorsCalculator
|
||||
$result[$key]['overdue'] = $value['overdue'];
|
||||
$result[$key]['atRisk'] = $value['atRisk'];
|
||||
$result[$key]['onTime'] = $value['onTime'];
|
||||
$result[$key]['percentageOverdue'] = 0;
|
||||
$result[$key]['percentageAtRisk'] = 0;
|
||||
$result[$key]['percentageOnTime'] = 0;
|
||||
$result[$key]['percentageTotalOverdue'] = 0;
|
||||
$result[$key]['percentageTotalAtRisk'] = 0;
|
||||
$result[$key]['percentageTotalOnTime'] = 0;
|
||||
$result[$key]['percentageOverdue'] = 0;
|
||||
$result[$key]['percentageAtRisk'] = 0;
|
||||
$result[$key]['percentageOnTime'] = 0;
|
||||
$result[$key]['percentageTotalOverdue'] = 0;
|
||||
$result[$key]['percentageTotalAtRisk'] = 0;
|
||||
$result[$key]['percentageTotalOnTime'] = 0;
|
||||
$total = $value['overdue'] + $value['onTime'] + $value['atRisk'];
|
||||
if ($total != 0) {
|
||||
$result[$key]['percentageOverdue'] = ($value['overdue']*100)/$total;
|
||||
$result[$key]['percentageAtRisk'] = ($value['atRisk']*100)/$total;
|
||||
$result[$key]['percentageOnTime'] = ($value['onTime']*100)/$total;
|
||||
$result[$key]['percentageTotalOverdue'] = $response['overdue'] != 0 ? ($value['overdue']*100)/$response['overdue']: 0;
|
||||
$result[$key]['percentageTotalAtRisk'] = $response['atRisk'] != 0 ? ($value['atRisk']*100)/$response['atRisk'] : 0;
|
||||
$result[$key]['percentageTotalOnTime'] = $response['onTime'] != 0 ? ($value['onTime']*100)/$response['onTime']: 0;
|
||||
$result[$key]['percentageTotalOverdue'] = $response['overdue'] != 0 ? ($value['overdue']*100)/$response['overdue']: 0;
|
||||
$result[$key]['percentageTotalAtRisk'] = $response['atRisk'] != 0 ? ($value['atRisk']*100)/$response['atRisk'] : 0;
|
||||
$result[$key]['percentageTotalOnTime'] = $response['onTime'] != 0 ? ($value['onTime']*100)/$response['onTime']: 0;
|
||||
}
|
||||
}
|
||||
$response['dataList'] = $result;
|
||||
|
||||
@@ -451,17 +451,18 @@ class AdditionalTables extends BaseAdditionalTables
|
||||
|
||||
if (isset($_POST['sort'])) {
|
||||
$_POST['sort'] = $filter->validateInput($_POST['sort']);
|
||||
$_POST['dir'] = $filter->validateInput($_POST['dir']);
|
||||
if ($_POST['dir'] == 'ASC') {
|
||||
if ($keyOrderUppercase) {
|
||||
eval('$oCriteria->addAscendingOrderByColumn("' . $sort . '");');
|
||||
eval('$oCriteria->addAscendingOrderByColumn("' . $_POST['sort'] . '");');
|
||||
} else {
|
||||
eval('$oCriteria->addAscendingOrderByColumn(' . $sClassPeerName . '::' . $sort . ');');
|
||||
eval('$oCriteria->addAscendingOrderByColumn(' . $sClassPeerName . '::' . $_POST['sort'] . ');');
|
||||
}
|
||||
} else {
|
||||
if ($keyOrderUppercase) {
|
||||
eval('$oCriteria->addDescendingOrderByColumn("' . $sort . '");');
|
||||
eval('$oCriteria->addDescendingOrderByColumn("' . $_POST['sort'] . '");');
|
||||
} else {
|
||||
eval('$oCriteria->addDescendingOrderByColumn(' . $sClassPeerName . '::' . $sort . ');');
|
||||
eval('$oCriteria->addDescendingOrderByColumn(' . $sClassPeerName . '::' . $_POST['sort'] . ');');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -133,7 +133,7 @@ class AppDelegation extends BaseAppDelegation
|
||||
|
||||
//The function return an array now. By JHL
|
||||
$delTaskDueDate = $this->calculateDueDate($sNextTasParam);
|
||||
$delRiskDate = $this->calculateRiskDate($delTaskDueDate, $this->getRisk());
|
||||
$delRiskDate = $this->calculateRiskDate($sNextTasParam, $this->getRisk());
|
||||
|
||||
//$this->setDelTaskDueDate( $delTaskDueDate['DUE_DATE'] ); // Due date formatted
|
||||
$this->setDelTaskDueDate($delTaskDueDate);
|
||||
@@ -379,8 +379,18 @@ class AppDelegation extends BaseAppDelegation
|
||||
public function calculateRiskDate($dueDate, $risk)
|
||||
{
|
||||
try {
|
||||
$riskTime = strtotime($dueDate) - strtotime($this->getDelDelegateDate()); //Seconds
|
||||
$riskTime = $riskTime - ($riskTime * $risk);
|
||||
|
||||
$data = array();
|
||||
if (isset( $sNextTasParam['NEXT_TASK']['TAS_TRANSFER_HIDDEN_FLY'] ) && $sNextTasParam['NEXT_TASK']['TAS_TRANSFER_HIDDEN_FLY'] == 'true') {
|
||||
$data['TAS_DURATION'] = $sNextTasParam['NEXT_TASK']['TAS_DURATION'];
|
||||
$data['TAS_TIMEUNIT'] = $sNextTasParam['NEXT_TASK']['TAS_TIMEUNIT'];
|
||||
} else {
|
||||
$task = TaskPeer::retrieveByPK( $this->getTasUid() );
|
||||
$data['TAS_DURATION'] = $task->getTasDuration();
|
||||
$data['TAS_TIMEUNIT'] = $task->getTasTimeUnit();
|
||||
}
|
||||
|
||||
$riskTime = $data['TAS_DURATION'] - ($data['TAS_DURATION'] * $risk);
|
||||
|
||||
//Calendar - Use the dates class to calculate dates
|
||||
$calendar = new calendar();
|
||||
@@ -394,9 +404,8 @@ class AppDelegation extends BaseAppDelegation
|
||||
}
|
||||
|
||||
//Risk date
|
||||
$riskDate = $calendar->dashCalculateDate($this->getDelDelegateDate(), round($riskTime / (60 * 60)), "HOURS", $arrayCalendarData);
|
||||
$riskDate = $calendar->dashCalculateDate($this->getDelDelegateDate(), $riskTime, $data['TAS_TIMEUNIT'], $arrayCalendarData);
|
||||
|
||||
//Return
|
||||
return $riskDate;
|
||||
} catch (Exception $e) {
|
||||
throw $e;
|
||||
|
||||
@@ -108,10 +108,40 @@ class DashboardDasInd extends BaseDashboardDasInd
|
||||
}
|
||||
}
|
||||
|
||||
public function getOwnerByDashboard ($dasUid)
|
||||
public function loadOwnerByUserId ($usrId)
|
||||
{
|
||||
|
||||
}
|
||||
try {
|
||||
|
||||
$criteria = new Criteria('workflow');
|
||||
$criteria->add(DashboardDasIndPeer::OWNER_UID, $usrId);
|
||||
$criteria->add(DashboardDasIndPeer::OWNER_TYPE, "USER");
|
||||
|
||||
$dataset = DashboardDasIndPeer::doSelectRS($criteria);
|
||||
$dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||
$fields = array();
|
||||
|
||||
while ($dataset->next()) {
|
||||
$auxField = $dataset->getRow();
|
||||
$fields[] = $auxField;
|
||||
}
|
||||
|
||||
$criteria = new Criteria('workflow');
|
||||
$criteria->add(DashboardDasIndPeer::OWNER_TYPE, "GROUP");
|
||||
$criteria->add(GroupUserPeer::USR_UID, $usrId);
|
||||
$criteria->addJoin(GroupUserPeer::GRP_UID, DashboardDasIndPeer::OWNER_UID);
|
||||
|
||||
$dataset = DashboardDasIndPeer::doSelectRS($criteria);
|
||||
$dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||
|
||||
while ($dataset->next()) {
|
||||
$auxField = $dataset->getRow();
|
||||
$fields[] = $auxField;
|
||||
}
|
||||
|
||||
return $fields;
|
||||
} catch (Exception $error) {
|
||||
throw $error;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -65,14 +65,18 @@ class DashboardIndicator extends BaseDashboardIndicator
|
||||
$oldValue = current(reset($calculator->peiHistoric($uid, $compareDate, $compareDate, \ReportingPeriodicityEnum::NONE)));
|
||||
$row['DAS_IND_VARIATION'] = $value - $oldValue;
|
||||
$row['DAS_IND_OLD_VALUE'] = $oldValue;
|
||||
$row['DAS_IND_PERCENT_VARIATION'] = round(($value - $oldValue) * 100 / (($oldValue == 0) ? 1 : $oldValue), 1);
|
||||
$row['DAS_IND_PERCENT_VARIATION'] = $oldValue != 0
|
||||
? round(($value - $oldValue) * 100 / $oldValue)
|
||||
: "--";
|
||||
break;
|
||||
case '1030':
|
||||
$value = current(reset($calculator->ueiHistoric(null, $measureDate, $measureDate, \ReportingPeriodicityEnum::NONE)));
|
||||
$oldValue = current(reset($calculator->ueiHistoric($uid, $compareDate, $compareDate, \ReportingPeriodicityEnum::NONE)));
|
||||
$row['DAS_IND_VARIATION'] = $value - $oldValue;
|
||||
$row['DAS_IND_OLD_VALUE'] = $oldValue;
|
||||
$row['DAS_IND_PERCENT_VARIATION'] = round(($value - $oldValue) * 100 / (($oldValue == 0) ? 1 : $oldValue), 1);
|
||||
$row['DAS_IND_PERCENT_VARIATION'] = $oldValue != 0
|
||||
? round(($value - $oldValue) * 100 / $oldValue)
|
||||
: "--";
|
||||
break;
|
||||
case '1050':
|
||||
$value = $calculator->statusIndicatorGeneral($userUid);
|
||||
|
||||
@@ -180,6 +180,10 @@ class Dynaform extends BaseDynaform
|
||||
$aData['DYN_VERSION'] = 0;
|
||||
}
|
||||
$this->setDynVersion( $aData['DYN_VERSION'] );
|
||||
if (!isset($aData['DYN_CONTENT'])) {
|
||||
$aData['DYN_CONTENT'] = "{}";
|
||||
}
|
||||
$this->setDynContent( $aData['DYN_CONTENT'] );
|
||||
if ($this->validate()) {
|
||||
$con->begin();
|
||||
$res = $this->save();
|
||||
|
||||
@@ -25,6 +25,15 @@ class ListCompleted extends BaseListCompleted
|
||||
*/
|
||||
public function create($data)
|
||||
{
|
||||
$criteria = new Criteria();
|
||||
$criteria->addSelectColumn(ListCompletedPeer::APP_UID);
|
||||
$criteria->add( ListCompletedPeer::APP_UID, $data['APP_UID'], Criteria::EQUAL );
|
||||
$dataset = ListCompletedPeer::doSelectRS($criteria);
|
||||
$dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||
if ($dataset->next()) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
$criteria = new Criteria();
|
||||
$criteria->addSelectColumn(ContentPeer::CON_VALUE);
|
||||
$criteria->add( ContentPeer::CON_ID, $data['APP_UID'], Criteria::EQUAL );
|
||||
@@ -97,9 +106,27 @@ class ListCompleted extends BaseListCompleted
|
||||
$users = new Users();
|
||||
$users->refreshTotal($data['USR_UID'], 'add', 'completed');
|
||||
if ($data['DEL_PREVIOUS'] != 0) {
|
||||
$users->refreshTotal($data['USR_UID'], 'remove', 'inbox');
|
||||
$criteria = new Criteria();
|
||||
$criteria->addSelectColumn(TaskPeer::TAS_TYPE);
|
||||
$criteria->add( TaskPeer::TAS_UID, $data['TAS_UID'], Criteria::EQUAL );
|
||||
$dataset = TaskPeer::doSelectRS($criteria);
|
||||
$dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||
$dataset->next();
|
||||
$aRow = $dataset->getRow();
|
||||
if ($aRow['TAS_TYPE'] != 'SUBPROCESS') {
|
||||
$users->refreshTotal($data['USR_UID'], 'remove', 'inbox');
|
||||
}
|
||||
} else {
|
||||
$users->refreshTotal($data['USR_UID'], 'remove', 'draft');
|
||||
$criteria = new Criteria();
|
||||
$criteria->addSelectColumn(SubApplicationPeer::APP_UID);
|
||||
$criteria->add( SubApplicationPeer::APP_UID, $data['APP_UID'], Criteria::EQUAL );
|
||||
$dataset = SubApplicationPeer::doSelectRS($criteria);
|
||||
$dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||
if ($dataset->next()) {
|
||||
$users->refreshTotal($data['USR_UID'], 'remove', 'inbox');
|
||||
} else {
|
||||
$users->refreshTotal($data['USR_UID'], 'remove', 'draft');
|
||||
}
|
||||
}
|
||||
|
||||
$con = Propel::getConnection( ListCompletedPeer::DATABASE_NAME );
|
||||
|
||||
Reference in New Issue
Block a user