HOR-4740
This commit is contained in:
@@ -1131,70 +1131,4 @@ class DynaForm
|
||||
throw $e;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Get data of a DynaForm History
|
||||
*
|
||||
* @param string $dynaFormUid Unique id of DynaForm
|
||||
*
|
||||
* return array Return an array with data of a DynaForm History
|
||||
*/
|
||||
public function getDynaFormHistory($prj_uid, $dynaFormUid, array $arrayData = array())
|
||||
{
|
||||
try {
|
||||
$filter = "";
|
||||
if (isset($arrayData["filter"])) {
|
||||
$filter = $arrayData["filter"];
|
||||
}
|
||||
$start = 0;
|
||||
if (isset($arrayData["start"])) {
|
||||
$start = $arrayData["start"];
|
||||
}
|
||||
$limit = 50;
|
||||
if (isset($arrayData["limit"])) {
|
||||
$limit = $arrayData["limit"];
|
||||
}
|
||||
$this->throwExceptionIfNotExistsDynaForm($dynaFormUid, "", $this->arrayFieldNameForException["dynaFormUid"]);
|
||||
|
||||
$criteria = new \Criteria("workflow");
|
||||
|
||||
$subcriteria = $criteria->getNewCriterion(\AppHistoryPeer::HISTORY_DATE, "%" . $filter . "%", \Criteria::LIKE);
|
||||
|
||||
$criteria->addSelectColumn(\AppHistoryPeer::DYN_UID);
|
||||
$criteria->addSelectColumn(\AppHistoryPeer::HISTORY_DATA);
|
||||
$criteria->addSelectColumn(\AppHistoryPeer::HISTORY_DATE);
|
||||
$criteria->addAnd(\AppHistoryPeer::DYN_UID, $dynaFormUid, \Criteria::EQUAL);
|
||||
$criteria->addAnd(\AppHistoryPeer::OBJ_TYPE, "DYNAFORM", \Criteria::EQUAL);
|
||||
$criteria->addAnd(\AppHistoryPeer::HISTORY_DATA, "%DYN_CONTENT_HISTORY%", \Criteria::LIKE);
|
||||
$criteria->addAnd($subcriteria);
|
||||
|
||||
$criteria->addDescendingOrderByColumn(\AppHistoryPeer::HISTORY_DATE);
|
||||
$criteria->setOffset($start);
|
||||
$criteria->setLimit($limit);
|
||||
|
||||
$rsCriteria = \AppHistoryPeer::doSelectRS($criteria);
|
||||
$rsCriteria->setFetchmode(\ResultSet::FETCHMODE_ASSOC);
|
||||
$data = array();
|
||||
while ($rsCriteria->next()) {
|
||||
$row = $rsCriteria->getRow();
|
||||
$d = @unserialize($row["HISTORY_DATA"]);
|
||||
$jsonData = "";
|
||||
if (isset($d["DYN_CONTENT_HISTORY"])) {
|
||||
$decode = base64_decode($d["DYN_CONTENT_HISTORY"], true);
|
||||
if ($decode !== false) {
|
||||
$jsonData = $decode;
|
||||
}
|
||||
}
|
||||
$data[] = array(
|
||||
"history_date" => $row["HISTORY_DATE"],
|
||||
"dyn_uid" => $row["DYN_UID"],
|
||||
"dyn_content_history" => $jsonData
|
||||
);
|
||||
}
|
||||
return $data;
|
||||
} catch (\Exception $e) {
|
||||
throw $e;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -220,33 +220,4 @@ class DynaForm extends Api
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Dynaform's history.
|
||||
*
|
||||
* @url POST /:prj_uid/dynaform/:dyn_uid/history
|
||||
*
|
||||
* @param string $dyn_uid {@min 32}{@max 32}
|
||||
* @param string $prj_uid {@min 32}{@max 32}
|
||||
* @param array $request_data
|
||||
*
|
||||
* @return array
|
||||
* @throws RestException
|
||||
*
|
||||
* @access protected
|
||||
* @class AccessControl {@permission PM_FACTORY}
|
||||
*/
|
||||
public function doGetDynaFormHistory($dyn_uid, $prj_uid, $request_data)
|
||||
{
|
||||
try {
|
||||
$dynaForm = new \ProcessMaker\BusinessModel\DynaForm();
|
||||
$dynaForm->setFormatFieldNameInUppercase(false);
|
||||
|
||||
$response = $dynaForm->getDynaFormHistory($prj_uid, $dyn_uid, $request_data);
|
||||
|
||||
return $response;
|
||||
} catch (\Exception $e) {
|
||||
throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user