#4 -- Fix events. construct rule
Some checks failed
CI fuzzy controller / container-test-job (push) Failing after 30s
Some checks failed
CI fuzzy controller / container-test-job (push) Failing after 30s
This commit is contained in:
parent
235bedb510
commit
feb8a41304
@ -46,17 +46,17 @@ function getFromRest(url, callBack) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* exported createRule */
|
/* exported createRule */
|
||||||
function createRule(ruleContentElement) {
|
function createRule() {
|
||||||
var ruleString = "if ";
|
var ruleString = "if ";
|
||||||
var inp = $('.selectpicker.inputVar').map(function() {return $(this).val();}).get();
|
var inp = $('.selectpicker.inputVar').children(':selected').map(function() {return $(this).text();}).get();
|
||||||
var inpVal = $('.selectpicker.inputVal').map(function() {return $(this).val();}).get();
|
var inpVal = $('.selectpicker.inputVal').children(':selected').map(function() {return $(this).text();}).get();
|
||||||
for (var i = 0; i < inp.length; i++) {
|
for (var i = 0; i < inp.length; i++) {
|
||||||
if (i > 0) {
|
if (i > 0) {
|
||||||
ruleString += ' and ';
|
ruleString += ' and ';
|
||||||
}
|
}
|
||||||
ruleString += inp[i] + " is " + inpVal[i];
|
ruleString += inp[i] + " is " + inpVal[i];
|
||||||
}
|
}
|
||||||
$(ruleContentElement).val(ruleString);
|
$('#ruleContent').val(ruleString);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* exported fillSelect */
|
/* exported fillSelect */
|
||||||
@ -67,8 +67,8 @@ function fillSelect(selectElement, values) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function fillFuzzyTerms(variableElement, fuzzyTermsElement) {
|
function fillFuzzyTerms(variablesElement, fuzzyTermsElement) {
|
||||||
getFromRest("/rule/getFuzzyTerms/"+$(variableElement).val(), function (fuzzyTerms) {
|
getFromRest("/rule/getFuzzyTerms/"+$(variablesElement).val(), function (fuzzyTerms) {
|
||||||
var fuzzyTermsData = [];
|
var fuzzyTermsData = [];
|
||||||
$.each(fuzzyTerms, function (key, value) {
|
$.each(fuzzyTerms, function (key, value) {
|
||||||
fuzzyTermsData.push({
|
fuzzyTermsData.push({
|
||||||
@ -82,7 +82,7 @@ function fillFuzzyTerms(variableElement, fuzzyTermsElement) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function fillVariables(projectId, variableElement) {
|
function fillVariables(projectId, variablesElement) {
|
||||||
getFromRest("/rule/getVariables/"+projectId, function (variables) {
|
getFromRest("/rule/getVariables/"+projectId, function (variables) {
|
||||||
var variablesData = [];
|
var variablesData = [];
|
||||||
$.each(variables, function (key, value) {
|
$.each(variables, function (key, value) {
|
||||||
@ -98,29 +98,40 @@ function fillVariables(projectId, variableElement) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function variableValueChanged(variablesElement, fuzzyTermsElement) {
|
function variableValueChanged(variablesElement, fuzzyTermsElement) {
|
||||||
fillFuzzyTerms(variableElement, fuzzyTermsElement);
|
fillFuzzyTerms(variablesElement, fuzzyTermsElement);
|
||||||
|
}
|
||||||
|
|
||||||
|
function fuzzyTermsValueChanged() {
|
||||||
|
createRule();
|
||||||
}
|
}
|
||||||
|
|
||||||
function addVariableSelect(projectId) {
|
function addVariableSelect(projectId) {
|
||||||
variablesElement = $("<select class='selectpicker inputVar m-2' data-live-search='true data-width='70%'></select>");
|
var variablesElement = $("<select class='selectpicker inputVar m-2' data-live-search='true data-width='70%'></select>");
|
||||||
$(variablesElement).append($("<option />").text('Значения загружаются...'));
|
|
||||||
fillVariables(projectId, variablesElement);
|
fillVariables(projectId, variablesElement);
|
||||||
return variablesElement;
|
return variablesElement;
|
||||||
}
|
}
|
||||||
|
|
||||||
function addFuzzyTermsSelect(variableElement) {
|
function addFuzzyTermsSelect(variablesElement) {
|
||||||
fuzzyTermsElement = $("<select class='selectpicker inputVal m-2' data-live-search='true data-width='70%'></select>");
|
fuzzyTermsElement = $("<select class='selectpicker inputVal m-2' data-live-search='true data-width='70%'></select>");
|
||||||
if ($(variableElement).val()) {
|
if ($(variablesElement).val()) {
|
||||||
fillFuzzyTerms(variableElement, fuzzyTermsElement);
|
fillFuzzyTerms(variablesElement, fuzzyTermsElement);
|
||||||
}
|
}
|
||||||
return fuzzyTermsElement;
|
return fuzzyTermsElement;
|
||||||
}
|
}
|
||||||
|
|
||||||
function addAntecedent(parentElement, projectId) {
|
function addAntecedent(parentElement, projectId) {
|
||||||
variableElement = addVariableSelect(projectId);
|
rowElement = $("<div class='row'></div>");
|
||||||
fuzzyTermsElement = addFuzzyTermsSelect(variableElement)
|
if ($(parentElement).find('.row').length) {
|
||||||
$(variablesElement).on( "change", function() {variableValueChanged(this, fuzzyTermsElement)});
|
$(rowElement).append("<label class='col col-md-1 m-2'>И</label>");
|
||||||
$(parentElement).append(variableElement);
|
} else {
|
||||||
$(parentElement).append("<label class='col col-md-1'>есть</label>");
|
$(rowElement).append("<label class='col col-md-1 m-2'> </label>");
|
||||||
$(parentElement).append(fuzzyTermsElement);
|
}
|
||||||
|
var variablesElement = addVariableSelect(projectId);
|
||||||
|
var fuzzyTermsElement = addFuzzyTermsSelect(variablesElement)
|
||||||
|
$(variablesElement).on( "change", function() {variableValueChanged(variablesElement, fuzzyTermsElement)});
|
||||||
|
$(fuzzyTermsElement).on( "change", function() {fuzzyTermsValueChanged()});
|
||||||
|
$(rowElement).append(variablesElement);
|
||||||
|
$(rowElement).append("<label class='col col-md-1 m-2'>есть</label>");
|
||||||
|
$(rowElement).append(fuzzyTermsElement);
|
||||||
|
$(parentElement).append(rowElement);
|
||||||
}
|
}
|
||||||
|
@ -26,8 +26,10 @@
|
|||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group" id="rules">
|
<div class="form-group" id="rules">
|
||||||
<label class="col col-md-1">Если</label>
|
<label class="col col-md-1 m-2">Если</label>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
<a href="#" class="btn btn-outline-dark" th:onclick="addAntecedent($('#rules'), $('#projectId').val());">+</a>
|
||||||
<hr/>
|
<hr/>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col col-md-1">Если</label>
|
<label class="col col-md-1">Если</label>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user