Jump to content

Adicionar condição AND em PHP


Gois
Go to solution Solved by washalbano,

Recommended Posts

Boa noite,

Nas últimas linhas deste código está uma verificação de mensagem de alerta ao cliente que quando este, tem um valor total de encomenda inferior ao valor mínimo de encomenda(125€) o impossibilita de continuar com o processo de encomenda.

No entanto, eu quero que o cliente possa prosseguir com a sua encomenda quando este adiciona um artigo de oferta apenas. Este artigo tem sempre o valor 0,00€. Como fazer?

Ou seja, aparece mensagem de erro quando valor total é < ao mínimo de encomenda E quando valor total é diferente de zero.

Já tentei "n" formas e quando faço os diferentes testes(por exemplo: artigo de oferta(0€) + outro artigo(50€), a mensagem de alerta aparece-me um "1" em vez de ser o que está lá escrito "É necessária uma compra total mínima de 125,00 € (sem IVA) para validar a sua encomenda. O total atual da compra é de 50,00 € (sem IVA)."

 

Agradeço ajuda,

Muito Obrigado

        return array(
            'products' => $products,
            'totals' => $totals,
            'subtotals' => $subtotals,
            'products_count' => $products_count,
            'summary_string' => $summary_string,
            'labels' => $labels,
            'id_address_delivery' => $cart->id_address_delivery,
            'id_address_invoice' => $cart->id_address_invoice,
            'is_virtual' => $cart->isVirtualCart(),
            'vouchers' => $vouchers,
            'discounts' => $discounts,
            'minimalPurchase' => $minimalPurchase,
            'minimalPurchaseRequired' => ($this->priceFormatter->convertAmount($productsTotalExcludingTax) < $minimalPurchase) ? 
                $this->translator->trans(
                    'A minimum shopping cart total of %amount% (tax excl.) is required to validate your order. Current cart total is %total% (tax excl.).',
                    array(
                        '%amount%' => $this->priceFormatter->convertAndFormat($minimalPurchase),
                        '%total%' => $this->priceFormatter->convertAndFormat($productsTotalExcludingTax),
                    ),
                    
                ): 
                '',
        );
Edited by Gois
ser mais explicito
Link to comment
Share on other sites

  • Solution

Olá!
Não sei se entendi direito mas seria algo assim:
 

On 12/23/2020 at 10:41 PM, Gois said:

'minimalPurchaseRequired' => ($this->priceFormatter->convertAmount($productsTotalExcludingTax) < $minimalPurchase)


($this->priceFormatter->convertAmount($productsTotalExcludingTax) < $minimalPurchase && $this->priceFormatter->convertAmount($productsTotalExcludingTax) > 0) 

assim, se o valor for menor ou igual a zero não cai na condição

Link to comment
Share on other sites

($this->priceFormatter->convertAmount($productsTotalExcludingTax) < $minimalPurchase) && ($this->priceFormatter->convertAmount($productsTotalExcludingTax) != 0)  ?

Experimentei assim e resultou, obrigado! 😃

Deve cair na condição quando a encomenda pelo cliente é inferior à encomenda minima permitida e quando é diferente de "0". Pois quando tem um produto no carrinho com o valor "0" significa que é um giveaway para o cliente.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.