Exemplo n.º 1
0
if ($_SESSION["user"]["data"]["group_id"] > 1 && $_SESSION["user"]["data"]["group_id"] != get_role_id_by_name('Автор')) {
    if ($fltr != "") {
        $fltr .= " AND ";
    }
    $fltr .= "filial_id=" . $_SESSION["user"]["data"]["filial_id"];
}
if ($_SESSION["user"]["data"]["group_id"] == get_role_id_by_name('Отдел качества')) {
    $status_id = get_status_id_by_iname('RECEIVED_FILE_FROM_AUTHOR');
    if ($status_id) {
        if ($fltr != "") {
            $fltr .= " AND ";
        }
        $fltr .= "status_id = " . $status_id;
    }
} elseif ($_SESSION["user"]["data"]["group_id"] == get_role_id_by_name('Автор')) {
    $distribution_status_id = get_status_id_by_iname('ON_THE_DISTRIBUTION');
    if ($fltr != "") {
        $fltr .= " AND ";
    }
    // Чтобы не показывать заказ со статусом "ждет предоплаты" всем подряд, если он за кем-то закреплен
    $fltr .= "(status_id = " . $distribution_status_id . " OR author_id = " . $_SESSION["user"]["data"]["id"] . ")";
    //  $fltr .= "(status_id IN(" . $distribution_status_id . ", " . get_status_id_by_iname('WAITING_PREPAYMENT') . ") OR author_id = " . $_SESSION["user"]["data"]["id"] . ")";
    if ($_SESSION['cgui_filcol_ord']['selset'] != "std2") {
        //Если выбран набор "мои заказы" - пропускаем фильтрацию по дисциплинам
        $author_disciplines = db::get_single_values_string("SELECT discipline_id FROM " . TBL_PREF . "author_to_discipline WHERE author_id = " . $_SESSION["user"]["data"]["id"]);
        if (!empty($author_disciplines)) {
            $fltr .= " AND disc_id IN(" . $author_disciplines . ")";
        }
    }
} elseif ($_SESSION["user"]["data"]["group_id"] == 5) {
    $delivery_boy_orders = array();
Exemplo n.º 2
0
function remove_author_from_order($Frm, $Err)
{
    if (!$Err) {
        $status_id = get_status_id_by_iname("ON_THE_DISTRIBUTION");
        if (!$status_id) {
            $Frm->_gui->ERR("Статус не найден");
            page_reloadAll();
        }
        $order_id = $Frm->GetNmValueI("order_id");
        Order::update($order_id, array('author_id' => 0, 'status_id' => $status_id));
        if (\Components\Entity\EmailNotificationType::isPersistable(\Components\Entity\EmailNotification::TO_AUTHOR_ON_UNASSIGN)) {
            $message_id = mls_Send("u" . $Frm->GetNmValueI("author_id"), "u" . $_SESSION["user"]["data"]["id"], "Вы сняты с заказа №" . $order_id, "Вас сняли с заказа №" . $order_id . "<br>Причина: " . $Frm->GetNmValueH("reason"), 1, 0);
            Author::enqueue_message_to_email($message_id, array($Frm->GetNmValueI("author_id")), \Components\Entity\EmailNotification::TO_AUTHOR_ON_UNASSIGN);
            $Frm->_gui->OK("Заказ снят, уведомление отправлено");
        } else {
            $Frm->_gui->OK("Заказ снят");
        }
        redirect('index.php?section=ord&subsection=2&order=' . $order_id . '&p=3');
    }
}