Commit 6c476a4b by Иван Кубота

fix multiselect when need single bug

parent 20843987
Pipeline #557 failed with stage
......@@ -6,8 +6,8 @@
2. Дает возможность участвовать в акциях: назначать ""Любимый продукт"", покупать товары по ценникам желтого цвета.
3. Получать дополнительную ежедневную скидку на 6 продуктов, а также пользоваться дополнительными возможностями, подключившись к боту или мобильному приложению.
", /2/images/cards/1.jpg
4,Преимущества Карты,3,"Если покупатель не является держателем нашей карты, подарите ее бесплатно и расскажите о преимуществах, а также предложите активировать ее на кассе.",
,Обслуживание клиента на кассе,4,"По стандартам нашей компании клиент на кассе обслуживается по следующему алгоритму:
4,Преимущества Карты,2,"Если покупатель не является держателем нашей карты, подарите ее бесплатно и расскажите о преимуществах, а также предложите активировать ее на кассе.",
,Обслуживание клиента на кассе,2,"По стандартам нашей компании клиент на кассе обслуживается по следующему алгоритму:
1. Поприветствуйте покупателя.
2. Поинтересуйтесь, нужен ли пакет.
3. Просканируйте продукты и сложите покупки аккуратно в пакеты.
......
......@@ -445,12 +445,13 @@ data = {tags:[], connections:[], more:[], standardQuestions: {}, standardAnswers
var tagsHash = {};
data.more = data.more.concat([
{p: '1cards.csv', i: '1components.csv'},
{q: '2questions.csv', a: '2answers.csv', c: '2cards.csv'},
{q: '2questions.csv', a: '2answers.csv', c: '2cards_2020_2_21.csv'},
{q: '3questions.csv', a: '3answers.csv', c: '3cards.csv'},
{q: '4questions.csv', a: '4answers.csv', c: '4cards.csv'}
]);
let id = 1;
let theInc = ()=>id++;
let was = {};
if(data.more){
for( let i = 0, _i = data.more.length; i < _i; i++ ){
var adishen = i*300;
......@@ -557,7 +558,14 @@ data = {tags:[], connections:[], more:[], standardQuestions: {}, standardAnswers
description: a.description,
image: a.image
}];
data.products[a.iID] = a;
//debugger
if(a.id in was){
was[a.id].items.push(a.items[0]);
}else{
was[a.id] = a;
data.products[ a.iID ] = a;
}
},
index: 'id'
})
......
......@@ -74,7 +74,7 @@ const qB = {
similarClusters = Object.keys(similarTags)
.map(k=>({k, v:similarTags[k]}))
.filter( a => a.v.length >= minAmount);
.filter( a => a.v.length >= minAmount && a.v.filter(av=>av.use).length>0);
log.push(`Clusters that have >= ${minSimilarTags} similar tags: `+Object.values(similarClusters).length);
......@@ -89,7 +89,7 @@ const qB = {
let result;
if(single){
result = rand(filtered);
result = rand(filtered.filter(p=>p.use));
log.push('Matched product: '+result.title);
}else{
......@@ -98,9 +98,13 @@ const qB = {
return false;
}
result = shuffle(filtered).slice(0, doNotTrim?filtered.length:rand(minAmount, maxAmount));
let used = rand(filtered.filter(p=>p.use)),
other = filtered.slice();
other.splice(other.indexOf(used));
result = shuffle([used].concat(other).slice(0, doNotTrim? filtered.length: rand(minAmount, maxAmount)));
log.push('Base products:');
result.forEach(p => log.push(` > ${p.title}`))
result.forEach(p => log.push(` > ${p.title}`));
log.push('');
}
......@@ -247,6 +251,8 @@ const qB = {
}
const possibility = products.map(p=>{
if(!p.use)
return false;
const similar = qB.getProductsWithTags({
products: allProducts,
tags: p.getTags(),
......@@ -292,6 +298,8 @@ const qB = {
const product = products[ i ];
/* if(this.withPhoto && !product.image)
continue;*/
if(!product.use)
continue;
const cmps = product
.getComponents()
.filter(cmp => products.filter(p=>p.containsComponent(cmp)).length === 1)
......
......@@ -94,12 +94,14 @@ const quizGenerator = function(type, photo, subType) {
if(subType === void 0){
log = quizGenerator.log = [ 'Random seed: ' + initialSeed, 'Quiz generate ' + type + ( photo ? ' with photo' : '' ) + ' ' + ( subType ? `${lapk( subType.type )}` : '. FAIL' ) ];
photo = true;
type='radio';
subType = probabilityRand(quizTypes[ 'radio' + ( photo ? 'Photo' : '' ) ]);
log = quizGenerator.log = [ 'Change type to radioPhoto' ];
}else{
log = quizGenerator.log = [ 'Random seed: ' + initialSeed, 'Quiz generate ' + type + ( photo ? ' with photo' : '' ) + ' ' + ( subType ? `${lapk( subType.type )}` : '. FAIL' ) ];
}
}else if(attempt<30){
}else if(attempt<60){
log = quizGenerator.log;
log.push('\nATTEMPT FAILED!\n\n'+
'------------------------\n' +
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment