...
|
...
|
@@ -107,7 +107,7 @@ exports.couponSend = (req, res, next) => { |
|
|
}
|
|
|
|
|
|
// 一个token只能领一次
|
|
|
const udid = req.cookies.udid || uid;
|
|
|
const udid = req.cookies.udid;
|
|
|
const redisCacheKey = `af_couponSend-${udid}-${coupontype}-${token}`;
|
|
|
|
|
|
cache.get(redisCacheKey).then(ret => {
|
...
|
...
|
@@ -117,7 +117,10 @@ exports.couponSend = (req, res, next) => { |
|
|
req.ctx(model).couponSend(uid, token);
|
|
|
|
|
|
return promise.then(result => {
|
|
|
if (result && (result.code === 200 || result.code === 401)) { // 如果领取成功(200),或已经通过其它途经领取(401)
|
|
|
// TODO: add check for 500
|
|
|
if (result &&
|
|
|
(result.code === 200 ||
|
|
|
(result.code === 401 && result.message === '优惠券已经领取'))) { // 如果领取成功(200),或已经通过其它途经领取(401)
|
|
|
return cache.set(redisCacheKey, Date.now(), DefaultCouponExpireSeconds)
|
|
|
.then(() => {
|
|
|
return result;
|
...
|
...
|
@@ -133,7 +136,7 @@ exports.couponSend = (req, res, next) => { |
|
|
res.jsonp(result);
|
|
|
});
|
|
|
} else {
|
|
|
// 已领或在领取中
|
|
|
// 已领
|
|
|
res.jsonp({
|
|
|
code: 401,
|
|
|
message: '优惠券已经领取',
|
...
|
...
|
|