@touchpoll/tp-survey 0.0.25 → 0.0.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1751,10 +1751,12 @@ class TpSurveyCoreService {
|
|
|
1751
1751
|
this.#initiateQuestions(this.#questionary.Questions);
|
|
1752
1752
|
// Может быть 2 варианта запуска интервью, 1-новое интервью, 2-перезапуск старого интервью. В первом случае начало это lang или первый вопрос. Во втором, с последнего вопроса на который ответили.
|
|
1753
1753
|
let startQuestionNum = undefined;
|
|
1754
|
+
//загружаем старые логические переменные и переменные которые указали из вне.
|
|
1755
|
+
this.#fillOldLogic(logicVars ?? []);
|
|
1754
1756
|
//если загружаем ранее не законченное интервью, продолжаем с места последнего вопроса (случай номер 2)
|
|
1755
|
-
if (!!
|
|
1757
|
+
if (!!answerList && !!questionGuid) {
|
|
1756
1758
|
//загружаем старые логические переменные и ответы
|
|
1757
|
-
this.#fillOldInterviewData(
|
|
1759
|
+
this.#fillOldInterviewData(answerList);
|
|
1758
1760
|
//ищем номер вопроса, который был последний перед сохранением.
|
|
1759
1761
|
const questionLastSave = this.#findQuestionByGuid(questionGuid);
|
|
1760
1762
|
//Вопрос могли удалить, тогда начнем сначала.
|
|
@@ -1835,13 +1837,15 @@ class TpSurveyCoreService {
|
|
|
1835
1837
|
default: return '';
|
|
1836
1838
|
}
|
|
1837
1839
|
}
|
|
1838
|
-
#
|
|
1840
|
+
#fillOldLogic(logicVars) {
|
|
1839
1841
|
//пропишем старые логические переменные
|
|
1840
1842
|
if (Array.isArray(logicVars)) {
|
|
1841
1843
|
logicVars.forEach(logicVarObj => {
|
|
1842
1844
|
this._logic.setLogicValue(logicVarObj.nm, logicVarObj.vl);
|
|
1843
1845
|
});
|
|
1844
1846
|
}
|
|
1847
|
+
}
|
|
1848
|
+
#fillOldInterviewData(answerList) {
|
|
1845
1849
|
//пропишем старые ответы
|
|
1846
1850
|
this._interview.overrideAnswers(answerList);
|
|
1847
1851
|
//нужно вернуть время начала интервью, отдельно оно не сохраняется, поэтому возьмём минимальное время начала из ответов
|