Commit 04d781ac authored by 任国军's avatar 任国军

fix institution distance filter

parent ffa84612
Pipeline #15120 passed with stage
in 8 seconds
......@@ -35,7 +35,7 @@ class InstitutionService extends Service {
cat_ids = cat_ids.concat(R.pluck('id', next_cat)).concat(R.pluck('id', next_next_cat));
const institutions = await ctx.classModel.CourseInstitutionToCat.all({ where: { cat_id: { $in: cat_ids } } });
const institutions_ids = Array.from(new Set(R.pluck('institution_id', institutions)));
institutions_ids.length !== 0 ? where.id = { $in: institutions_ids } : [];
institutions_ids.length !== 0 ? where.id = { $in: institutions_ids } : [];
}
if (Number(ages)) {
where.max_age = { $gte: ages };
......@@ -51,11 +51,15 @@ class InstitutionService extends Service {
const institutions = await ctx.classModel.CourseInstitution.findAll({ attributes, include, where });
const institution_area_list = await this.getInstitutionAreaList(institutions);// 将校区表处理成数组
// const from = { lat, lng };
// const area_lbs = await this.computeDistance(institution_area_list, { lat, lng });// 计算距离信息
const area_distance_list = await this.calcDistance(institution_area_list, { lat, lng }, page, distance);
const area_distance = area_distance_list.rows;
console.log(area_distance);
console.log(distance);
const institution_areas = await this.computeDistance(area_distance, { lat, lng });
console.log(institution_areas.length);
for (const i in institution_areas) {
area_distance[i].distance = Number(institution_areas[i].distance) === 0 ? 999999999.0 : parseFloat(institution_areas[i].distance);
area_distance[i].duration = institution_areas[i].duration;
......@@ -425,7 +429,7 @@ class InstitutionService extends Service {
for (const i in result) {
const tmp = lbs_array[i];
tmp.distance = result[i];
if (distance > 0 && tmp.distance <= distance) {
if (distance === 0 || (distance > 0 && tmp.distance <= distance)) {
ret.push(tmp);
}
}
......
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