优惠券优先返回前端生成的券预览图

This commit is contained in:
zhl 2021-07-07 09:46:52 +08:00
parent 373f2259b9
commit 955b6d46b5
7 changed files with 18 additions and 8 deletions

View File

@ -43,7 +43,7 @@ class CouponController extends BaseController {
shopName: shopData.showName, shopName: shopData.showName,
coupon: record.item, coupon: record.item,
couponName: coupon.name, couponName: coupon.name,
couponUrl: getCouponUrl(shopData.id, record.item), couponUrl: coupon.imageUrl,
status: record.status, status: record.status,
expire: record.expire, expire: record.expire,
user: user.nickname, user: user.nickname,
@ -130,7 +130,7 @@ class CouponController extends BaseController {
shopName: shopData.showName, shopName: shopData.showName,
coupon: recordNew.item, coupon: recordNew.item,
couponName: coupon.name, couponName: coupon.name,
couponUrl: getCouponUrl(shopData.id, recordNew.item), couponUrl: coupon.imageUrl,
status: recordNew.status, status: recordNew.status,
expire: recordNew.expire, expire: recordNew.expire,
} }

View File

@ -235,7 +235,7 @@ class ExamController extends BaseController {
couponMap.set(coupon.id, coupon) couponMap.set(coupon.id, coupon)
} }
name = couponMap.get(reward.coupon).name name = couponMap.get(reward.coupon).name
couponUrl = getCouponUrl(shop.id, reward.coupon) couponUrl = couponMap.get(reward.coupon).imageUrl
} }
rewardList.push({ rewardList.push({
coupon: reward.coupon, coupon: reward.coupon,

View File

@ -130,7 +130,7 @@ class GameUserController extends BaseController {
couponMap.set(coupon.id, coupon) couponMap.set(coupon.id, coupon)
} }
name = couponMap.get(reward.coupon).name name = couponMap.get(reward.coupon).name
couponUrl = reward.icon || getCouponUrl(shop.id, reward.coupon) couponUrl = reward.icon || couponMap.get(reward.coupon).imageUrl
} }
if (!gotSet.has(reward._id + '') && numInvite >= reward.rank) { if (!gotSet.has(reward._id + '') && numInvite >= reward.rank) {
let obj = await UserReward.saveOneRecord({ let obj = await UserReward.saveOneRecord({

View File

@ -40,7 +40,7 @@ class LotteryController extends BaseController {
couponMap.set(coupon.id, coupon) couponMap.set(coupon.id, coupon)
} }
name = couponMap.get(reward.coupon).name name = couponMap.get(reward.coupon).name
couponUrl = reward.icon || getCouponUrl(shop.id, reward.coupon) couponUrl = reward.icon || couponMap.get(reward.coupon).imageUrl
} }
let rewardType = reward.rewardType let rewardType = reward.rewardType
if (reward.coupon === EMPTY) { if (reward.coupon === EMPTY) {

View File

@ -2,7 +2,7 @@ import { getModelForClass, index, modelOptions, prop } from '@typegoose/typegoos
import { dbconn } from '../../decorators/dbconn' import { dbconn } from '../../decorators/dbconn'
import { BaseModule } from '../Base' import { BaseModule } from '../Base'
import { noJson } from '../../decorators/nojson' import { noJson } from '../../decorators/nojson'
import config from '../../config/config'
@dbconn() @dbconn()
@index({ shop: 1 }, { unique: false }) @index({ shop: 1 }, { unique: false })
@modelOptions({ schemaOptions: { collection: 'shop_coupon', timestamps: true } }) @modelOptions({ schemaOptions: { collection: 'shop_coupon', timestamps: true } })
@ -105,6 +105,16 @@ class CouponClass extends BaseModule {
public static updateCount(id: string, count: number) { public static updateCount(id: string, count: number) {
return Coupon.updateOne({ _id: id }, { $inc: { count: count } }) return Coupon.updateOne({ _id: id }, { $inc: { count: count } })
} }
public get imageUrl() {
if (this.image) {
return this.image
} else {
let subPath = `/coupon/${this.shop}`
//@ts-ignore
return `${config.file.show_url}${subPath}/${this._id + ''}.png`
}
}
} }
export const Coupon = getModelForClass(CouponClass, { existingConnection: CouponClass.db }) export const Coupon = getModelForClass(CouponClass, { existingConnection: CouponClass.db })

View File

@ -177,7 +177,7 @@ class UserCouponClass extends BaseModule {
shopName: shopMap.get(record.shop), shopName: shopMap.get(record.shop),
coupon: record.item, coupon: record.item,
couponName: couponMap.get(record.item).name, couponName: couponMap.get(record.item).name,
couponUrl: getCouponUrl(sid, record.item), couponUrl: couponMap.get(record.item).imageUrl,
status: record.status, status: record.status,
expire: record.expire || 0, expire: record.expire || 0,
}) })

View File

@ -126,7 +126,7 @@ class UserRewardClass extends BaseModule {
} }
await UserCoupon.addOne({ accountId, shop, item: itemId, count, source, activityId, rewardId, expire }) await UserCoupon.addOne({ accountId, shop, item: itemId, count, source, activityId, rewardId, expire })
await Coupon.updateCount(itemId, count) await Coupon.updateCount(itemId, count)
url = getCouponUrl(shop, itemId) url = cdata.imageUrl
} }
return { return {