* @param $value string * @return \BpmnFlow|null */ public static function findOneBy($field, $value) { $rows = self::findAllBy($field, $value); return empty($rows) ? null : $rows[0]; } public static function findAllBy($field, $value) { $c = new Criteria('workflow'); $c->add($field, $value, Criteria::EQUAL); return BpmnFlowPeer::doSelect($c); } public static function getAll($prjUid = null, $start = null, $limit = null, $filter = '', $changeCaseTo = CASE_UPPER) { //TODO implement $start, $limit and $filter $c = new Criteria('workflow'); if (! is_null($prjUid)) { $c->add(BpmnFlowPeer::PRJ_UID, $prjUid, Criteria::EQUAL); } $rs = BpmnFlowPeer::doSelectRS($c); $rs->setFetchmode(\ResultSet::FETCHMODE_ASSOC); $flows = array(); while ($rs->next()) { $flow = $rs->getRow(); $flow["FLO_STATE"] = @json_decode($flow["FLO_STATE"]); //$flow["FLO_IS_INMEDIATE"] = $flow["FLO_IS_INMEDIATE"] == 1 ? true : false; $flow = $changeCaseTo !== CASE_UPPER ? array_change_key_case($flow, CASE_LOWER) : $flow; $flows[] = $flow; } return $flows; } public static function exists($floUid) { $c = new Criteria('workflow'); $c->add(BpmnFlowPeer::FLO_UID, $floUid); return BpmnFlowPeer::doCount($c) > 0 ? true : false; } public function fromArray($data, $type = BasePeer::TYPE_FIELDNAME) { parent::fromArray($data, $type); } public function toArray($type = BasePeer::TYPE_FIELDNAME) { return parent::toArray($type); } } // BpmnFlow