Allow open ended ranges for segments

This commit is contained in:
Andris Reinman 2016-05-13 20:33:06 +03:00
parent d933f07eac
commit b626ea9c5e
2 changed files with 22 additions and 12 deletions

View file

@ -548,10 +548,14 @@ module.exports.getQuery = (id, callback) => {
break;
case 'number':
if (rule.value.range) {
query.push('`' + rule.columnType.column + '` >= ?');
query.push('`' + rule.columnType.column + '` < ?');
values.push(rule.value.start);
values.push(rule.value.end);
if (rule.value.start) {
query.push('`' + rule.columnType.column + '` >= ?');
values.push(rule.value.start);
}
if (rule.value.end) {
query.push('`' + rule.columnType.column + '` < ?');
values.push(rule.value.end);
}
} else {
query.push('`' + rule.columnType.column + '` = ?');
values.push(rule.value.value);
@ -559,10 +563,12 @@ module.exports.getQuery = (id, callback) => {
break;
case 'birthday':
if (rule.value.range) {
let start = rule.value.start || '01-01';
let end = rule.value.end || '12-31';
query.push('`' + rule.columnType.column + '` >= ?');
values.push(getDate('2000-' + start));
query.push('`' + rule.columnType.column + '` < ?');
values.push(getDate('2000-' + rule.value.start));
values.push(getDate('2000-' + rule.value.end, true));
values.push(getDate('2000-' + end, true));
} else {
query.push('`' + rule.columnType.column + '` >= ?');
query.push('`' + rule.columnType.column + '` < ?');
@ -572,10 +578,14 @@ module.exports.getQuery = (id, callback) => {
break;
case 'date':
if (rule.value.range) {
query.push('`' + rule.columnType.column + '` >= ?');
query.push('`' + rule.columnType.column + '` < ?');
values.push(getDate(rule.value.start));
values.push(getDate(rule.value.end, true));
if (rule.value.start) {
query.push('`' + rule.columnType.column + '` >= ?');
values.push(getDate(rule.value.start));
}
if (rule.value.end) {
query.push('`' + rule.columnType.column + '` < ?');
values.push(getDate(rule.value.end, true));
}
} else {
query.push('`' + rule.columnType.column + '` >= ?');
query.push('`' + rule.columnType.column + '` < ?');