CommonITILObject::getUsedAssignGroupBetween PHP Метод

getUsedAssignGroupBetween() публичный Метод

Get groups assigned to itil object between 2 dates
public getUsedAssignGroupBetween ( $date1 = '', $date2 = '' ) : array
$date1 date : begin date (default '')
$date2 date : end date (default '')
Результат array contains the distinct groups assigned to a tickets
    function getUsedAssignGroupBetween($date1 = '', $date2 = '')
    {
        global $DB;
        $linkclass = new $this->grouplinkclass();
        $linktable = $linkclass->getTable();
        $query = "SELECT DISTINCT `glpi_groups`.`id`, `glpi_groups`.`completename`\n                FROM `" . $this->getTable() . "`\n                LEFT JOIN `{$linktable}`\n                  ON (`{$linktable}`.`" . $this->getForeignKeyField() . "` = `" . $this->getTable() . "`.`id`\n                      AND `{$linktable}`.`type` = '" . CommonITILActor::ASSIGN . "')\n                LEFT JOIN `glpi_groups` ON (`{$linktable}`.`groups_id` = `glpi_groups`.`id`)\n                WHERE NOT `" . $this->getTable() . "`.`is_deleted` " . getEntitiesRestrictRequest("AND", $this->getTable());
        if (!empty($date1) || !empty($date2)) {
            $query .= " AND (" . getDateRequest("`" . $this->getTable() . "`.`date`", $date1, $date2) . "\n                          OR " . getDateRequest("`" . $this->getTable() . "`.`closedate`", $date1, $date2) . ") ";
        }
        $query .= " ORDER BY `glpi_groups`.`completename`";
        $result = $DB->query($query);
        $tab = array();
        if ($DB->numrows($result) >= 1) {
            while ($line = $DB->fetch_assoc($result)) {
                $tmp['id'] = $line["id"];
                $tmp['link'] = $line["completename"];
                $tab[] = $tmp;
            }
        }
        return $tab;
    }
CommonITILObject