fix formula dayOfWeek

This commit is contained in:
yuri
2017-06-23 13:10:42 +03:00
parent 379f5fbaaf
commit c5aa0eba48
2 changed files with 34 additions and 9 deletions
@@ -54,18 +54,15 @@ class DayOfWeekType extends \Espo\Core\Formula\Functions\Base
$value = $this->evaluate($item->value[0]);
if (empty($value)) return 0;
if (empty($value)) return -1;
if (strlen($value) > 11) {
$resultString = $this->getInjection('dateTime')->convertSystemDateTime($value, null, 'D');
$resultString = $this->getInjection('dateTime')->convertSystemDateTime($value, null, 'e');
} else {
$resultString = $this->getInjection('dateTime')->convertSystemDate($value, 'D');
$resultString = $this->getInjection('dateTime')->convertSystemDate($value, 'e');
}
$result = intval($resultString) + 1;
if ($result == 8) {
$result = 1;
}
$result = intval($resultString);
return $result;
}
+30 -2
View File
@@ -1352,7 +1352,7 @@ class FormulaTest extends \PHPUnit_Framework_TestCase
}
');
$actual = $this->formula->process($item);
$this->assertEquals(6, $actual);
$this->assertEquals(5, $actual);
$item = json_decode('
{
@@ -1366,7 +1366,35 @@ class FormulaTest extends \PHPUnit_Framework_TestCase
}
');
$actual = $this->formula->process($item);
$this->assertEquals(1, $actual);
$this->assertEquals(0, $actual);
$item = json_decode('
{
"type": "datetime\\\\dayOfWeek",
"value": [
{
"type": "value",
"value": ""
}
]
}
');
$actual = $this->formula->process($item);
$this->assertEquals(-1, $actual);
$item = json_decode('
{
"type": "datetime\\\\dayOfWeek",
"value": [
{
"type": "value",
"value": "2017-05-12"
}
]
}
');
$actual = $this->formula->process($item);
$this->assertEquals(5, $actual);
}
function testDatetimeDiff()