|
@@ -3,6 +3,7 @@ const { CrudService } = require('naf-framework-mongoose-free/lib/service');
|
|
|
const { BusinessError, ErrorCode } = require('naf-core').Error;
|
|
|
const _ = require('lodash');
|
|
|
const assert = require('assert');
|
|
|
+const moment = require('moment');
|
|
|
const { ObjectId } = require('mongoose').Types;
|
|
|
|
|
|
//
|
|
@@ -147,6 +148,12 @@ class GoodsService extends CrudService {
|
|
|
}
|
|
|
data.goods.tags = nt;
|
|
|
}
|
|
|
+ data.act = data.act.filter(f => {
|
|
|
+ const start_time = _.get(f, 'config.time_start');
|
|
|
+ const end_time = _.get(f, 'config.time_end');
|
|
|
+ if (!(start_time && end_time)) return false;
|
|
|
+ return moment().isBetween(start_time, end_time, null, '[]');
|
|
|
+ });
|
|
|
for (const d of data.act) {
|
|
|
const { tag, text, aboutList } = await this.ctx.service.system.platformAct.getActText(d, data.goods);
|
|
|
d.text = text;
|
|
@@ -292,8 +299,17 @@ class GoodsService extends CrudService {
|
|
|
// 处理活动标签
|
|
|
await this.getActTags(list);
|
|
|
// 实时匹配活动
|
|
|
+ const nowTime = moment().format('YYYY-MM-DD HH:mm:ss');
|
|
|
// 只找: 买赠;特价;满减/折; 特价需要修改价格; 剩下的打标签
|
|
|
- const platformActList = await this.platformActModel.find({ is_use: '0', type: [ '2', '3', '5', '6' ] });
|
|
|
+ const platformActList = await this.platformActModel
|
|
|
+ .find({ is_use: '0', type: [ '2', '3', '5', '6' ], 'config.time_start': { $lte: nowTime }, 'config.time_end': { $gte: nowTime } })
|
|
|
+ .lean(); //
|
|
|
+ // platformActList = platformActList.filter(f => {
|
|
|
+ // const start_time = _.get(f, 'config.time_start');
|
|
|
+ // const end_time = _.get(f, 'config.time_end');
|
|
|
+ // if (!(start_time && end_time)) return false;
|
|
|
+ // return moment().isBetween(start_time, end_time, null, '[]');
|
|
|
+ // });
|
|
|
await this.getAboutAct(platformActList, list);
|
|
|
// 检查团长价格
|
|
|
const user_id = _.get(this.ctx, 'user._id');
|