Fixes
This commit is contained in:
parent
1831fca802
commit
8f8379f522
File diff suppressed because one or more lines are too long
@ -85,6 +85,9 @@ class Calc
|
||||
/** @var EdgeCollection $collection */
|
||||
foreach ($container as $collection) {
|
||||
$var = 'XXXXXXXXXXXX';
|
||||
$hasVar = true;
|
||||
$hasValidEdge = false;
|
||||
|
||||
if ($collection->getName() == "opt") {
|
||||
continue;
|
||||
}
|
||||
@ -98,7 +101,19 @@ class Calc
|
||||
}
|
||||
if($collection->getDefault() != "" && $var === "XXXXXXXXXXXX") {
|
||||
$var = $collection->getDefault();
|
||||
$hasVar = false;
|
||||
}
|
||||
|
||||
foreach ($collection as $edge) {
|
||||
if ($edge->isValid($var)) {
|
||||
$hasValidEdge = true;
|
||||
}
|
||||
}
|
||||
|
||||
if(!$hasValidEdge && $hasVar && $collection->getDefault()) {
|
||||
$var = $collection->getDefault();
|
||||
}
|
||||
|
||||
/** @var Edge $edge */
|
||||
foreach ($collection as $edge) {
|
||||
|
||||
|
||||
@ -93,6 +93,9 @@ class CalcValues
|
||||
/** @var EdgeCollection $collection */
|
||||
foreach ($container as $collection) {
|
||||
$var = 'XXXXXXXX';
|
||||
$hasVar = true;
|
||||
$hasValidEdge = false;
|
||||
|
||||
if ($collection->getName() == "opt") continue;
|
||||
if ($collection->getFormel() != "") {
|
||||
$formel = $this->formelCalc->parse($collection->getFormel());
|
||||
@ -106,6 +109,20 @@ class CalcValues
|
||||
$var = $this->engine->getVariables()[$collection->getName()];
|
||||
}
|
||||
}
|
||||
if($collection->getDefault() != "" && $var === "XXXXXXXXXXXX") {
|
||||
$var = $collection->getDefault();
|
||||
$hasVar = false;
|
||||
}
|
||||
|
||||
foreach ($collection as $edge) {
|
||||
if ($edge->isValid($var)) {
|
||||
$hasValidEdge = true;
|
||||
}
|
||||
}
|
||||
|
||||
if(!$hasValidEdge && $hasVar && $collection->getDefault()) {
|
||||
$var = $collection->getDefault();
|
||||
}
|
||||
|
||||
/** @var Edge $edge */
|
||||
foreach ($collection as $edge) {
|
||||
|
||||
@ -47,6 +47,12 @@ class CalcTest extends TestCase
|
||||
self::assertSame(4.5, $this->engine->getPrice());
|
||||
}
|
||||
|
||||
public function testPriceAccountNotExists(): void
|
||||
{
|
||||
$this->engine->setVariable('contact.account', 3242);
|
||||
self::assertSame(4.5, $this->engine->getPrice());
|
||||
}
|
||||
|
||||
public function testPrice123(): void
|
||||
{
|
||||
$this->engine->setVariable('contact.account', 123);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user