<?php

namespace Modules\Stock\Rules;

// @phpcs:ignore
use Helpers\Outil\Roles;
use Modules\Stock\Helper\RulesHelper;

class Inventaire extends BaseRules
{

    /**
     * @return bool
     */
    public function init(): bool
    {
        return RulesHelper::hasInvAccessRights($this->pdo);
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function gestion(): bool
    {
        return true;
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function nouveauForm(): bool
    {
        return true;
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function nouveau(): bool
    {
        return true;
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function modifierForm(): bool
    {
        return true;
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function modifier(): bool
    {
        return true;
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function dupliquerForm(): bool
    {
        return true;
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function popupChoixFamilles(): bool
    {
        return true;
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function popupChoixStocksArticles(): bool
    {
        return true;
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function popupChoixSites(): bool
    {
        return true;
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function popupSurDateDeReception(): bool
    {
        return true;
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function popupSurPeriodeDepassee(): bool
    {
        return true;
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function popupChoixEmplacementsInventories(): bool
    {
        return true;
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function getArticlesInventoriesState(): bool
    {
        return true;
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function getEmplacementsInventoriesState(): bool
    {
        return true;
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function getFamillesInventorieesState(): bool
    {
        return true;
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function getCahierInventaireState(): bool
    {
        return true;
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function ligne(): bool
    {
        return true;
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function popupExport(): bool
    {
        return true;
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function exporter(): bool
    {
        return true;
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function supprimer(): bool
    {
        return (bool) Roles::droitsUtilisateur($this->pdo, 'ST_IN_SUP');
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function arretMouvements(): bool
    {
        return (bool) Roles::droitsUtilisateur($this->pdo, 'ST_IN_MVT');
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function repriseMouvements(): bool
    {
        return (bool) Roles::droitsUtilisateur($this->pdo, 'ST_IN_MVT');
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function validerCriteres(): bool
    {
        return (bool) Roles::droitsUtilisateur($this->pdo, 'ST_IN_VAL');
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function devaliderCriteres(): bool
    {
        return (bool) Roles::droitsUtilisateur($this->pdo, 'ST_IN_VAL');
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function validerResultats(): bool
    {
        return true;
    }

    /**
     * @return bool
     */
    // @phpcs:ignore
    public function imprimer(): bool
    {
        return (bool) Roles::droitsUtilisateur($this->pdo, 'ST_IN_IMP');
    }
}
