2019-09-06 18:32:56 +08:00

56 lines
1.2 KiB
JavaScript

/* 推广系统-广告专用 */
import {Router} from 'express'
import AdUid from '../../models/admin/AdUid'
import RedisDao from '../../redis/redis.dao'
import cors from 'cors'
const router = new Router()
const redisDao = new RedisDao()
// 获取广告区域列表
router.get('/', cors(), async (req, res, next) => {
try {
const query = req.query
const game_id = query.gameid
const platform_id = query.channelid
const key = `ad-ratio:${game_id}:${platform_id}`
const ratio = await redisDao.getByKey(key)
let records = await AdUid.find({
game_id,
platform_id,
deleted: false,
})
records = JSON.parse(JSON.stringify(records))
let cfg = {}
if (ratio) {
const arr = ratio.split('\n')
arr.map(item => {
const kv = item.split('-')
cfg[kv[0]] = kv[1]
})
}
const result = records.map(item => {
item.ratio = item.ratio ? item.ratio : cfg[item.channel_name] || 100
return {
adChannel: item.channel_id,
ratio: parseFloat(item.ratio),
}
})
res.send({
errcode: 0,
result,
})
} catch (err) {
next(err)
}
})
export default router