Commit cafa4d62 authored by 任国军's avatar 任国军

fix bugs

parent 582a80d2
Pipeline #19504 passed with stage
in 57 seconds
...@@ -15,12 +15,12 @@ class OnlineService extends Service { ...@@ -15,12 +15,12 @@ class OnlineService extends Service {
cats = [{ id: 0, name: '全部' }].concat(cats); cats = [{ id: 0, name: '全部' }].concat(cats);
// 年龄段 // 年龄段
let ages = await ctx.classModel.V4.CourseOnlineAge.findAll({ where: { status: 'online', is_deleted: 0 }, attributes: [ 'id', 'name' ], raw: true }); let ages = await ctx.classModel.V4.CourseOnlineAge.findAll({ where: { status: 'online', is_deleted: 0 }, attributes: [ 'id', 'name' ], raw: true });
ages = [{ id: 0, name: '全部' }].concat(cats); ages = [{ id: 0, name: '全部' }].concat(ages);
// 课程状态 // 课程状态
const mode = [{ id: 0, name: '全部' }, { id: 1, name: '直播' }, { id: 2, name: '录播' }]; const mode = [{ id: 0, name: '全部' }, { id: 1, name: '直播' }, { id: 2, name: '录播' }];
// 课程班型 // 课程班型
let type = await ctx.classModel.V4.CourseOnlineType.findAll({ where: { status: 'online', is_deleted: 0 }, attributes: [ 'id', 'name' ], raw: true }); let type = await ctx.classModel.V4.CourseOnlineType.findAll({ where: { status: 'online', is_deleted: 0 }, attributes: [ 'id', 'name' ], raw: true });
type = [{ id: 0, name: '全部' }].concat(cats); type = [{ id: 0, name: '全部' }].concat(type);
const options = { const options = {
cats, cats,
...@@ -110,7 +110,7 @@ class OnlineService extends Service { ...@@ -110,7 +110,7 @@ class OnlineService extends Service {
// 年龄段筛选 // 年龄段筛选
let ids = []; let ids = [];
let flag = false; let flag = false;
if (!ctx.isEmpty(age)) { if (!ctx.isEmpty(age) && Number(age) > 0) {
const classes = await ctx.classModel.V4.CourseOnlineClassToAge.findAll({ where: { age_id: age, status: 'online', is_deleted: 0 }, attributes: [ 'class_id' ] }); const classes = await ctx.classModel.V4.CourseOnlineClassToAge.findAll({ where: { age_id: age, status: 'online', is_deleted: 0 }, attributes: [ 'class_id' ] });
if (flag) { if (flag) {
ids = _.intersection(ids, R.pluck('class_id', classes)); ids = _.intersection(ids, R.pluck('class_id', classes));
...@@ -130,11 +130,11 @@ class OnlineService extends Service { ...@@ -130,11 +130,11 @@ class OnlineService extends Service {
} }
} }
// 课程状态筛选 // 课程状态筛选
if (!ctx.isEmpty(mode)) { if (!ctx.isEmpty(mode) && Number(mode) > 0) {
filter.where.mode = mode; filter.where.mode = mode;
} }
// 课程班型筛选 // 课程班型筛选
if (!ctx.isEmpty(type)) { if (!ctx.isEmpty(type) && Number(type) > 0) {
const classes = await ctx.classModel.V4.CourseOnlineClassToType.findAll({ where: { type_id: type, status: 'online', is_deleted: 0 }, attributes: [ 'class_id' ] }); const classes = await ctx.classModel.V4.CourseOnlineClassToType.findAll({ where: { type_id: type, status: 'online', is_deleted: 0 }, attributes: [ 'class_id' ] });
if (flag) { if (flag) {
ids = _.intersection(ids, R.pluck('class_id', classes)); ids = _.intersection(ids, R.pluck('class_id', classes));
...@@ -143,6 +143,9 @@ class OnlineService extends Service { ...@@ -143,6 +143,9 @@ class OnlineService extends Service {
ids = R.pluck('class_id', classes); ids = R.pluck('class_id', classes);
} }
} }
if (flag) {
filter.where.id = { $in: ids };
}
const classes = await ctx.classModel.V4.CourseOnlineClass.findAndCountAll(filter); const classes = await ctx.classModel.V4.CourseOnlineClass.findAndCountAll(filter);
const classIds = R.pluck('id', classes.rows); const classIds = R.pluck('id', classes.rows);
...@@ -164,7 +167,7 @@ class OnlineService extends Service { ...@@ -164,7 +167,7 @@ class OnlineService extends Service {
classCats = _.groupBy(classCats, 'class_id'); classCats = _.groupBy(classCats, 'class_id');
// 班型 // 班型
const classToTypes = await ctx.classModel.V4.CourseOnlineClassTotype.findAll({ where: { class_id: { $in: classIds }, status: 'online', is_deleted: 0 }, attributes: [ 'class_id', 'type_id' ] }); const classToTypes = await ctx.classModel.V4.CourseOnlineClassToType.findAll({ where: { class_id: { $in: classIds }, status: 'online', is_deleted: 0 }, attributes: [ 'class_id', 'type_id' ] });
const typeIds = R.pluck('type_id', classToTypes); const typeIds = R.pluck('type_id', classToTypes);
let types = await ctx.classModel.V4.CourseOnlineType.findAll({ where: { id: { $in: typeIds } } }); let types = await ctx.classModel.V4.CourseOnlineType.findAll({ where: { id: { $in: typeIds } } });
types = _.groupBy(types, 'id'); types = _.groupBy(types, 'id');
......
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