邮件列表支持短店铺id
This commit is contained in:
parent
5dc346a3c3
commit
0401906403
@ -4,19 +4,27 @@ import { UserMail } from '../../models/user/UserMail'
|
||||
import { SysMail } from '../../models/content/SysMail'
|
||||
import { ZError } from '../../common/ZError'
|
||||
import { UserReward } from '../../models/user/UserReward'
|
||||
import { Shop } from '../../models/shop/Shop'
|
||||
|
||||
class MailController extends BaseController {
|
||||
@role('anon')
|
||||
@router('post /api/:accountId/mails')
|
||||
async list(req: any) {
|
||||
const { accountId, sid } = req.params
|
||||
if (!sid) {
|
||||
throw new ZError(10, '缺少必要参数: sid')
|
||||
}
|
||||
const shop = await Shop.fetchByID(sid)
|
||||
if (!shop) {
|
||||
throw new ZError(11, '无法找到对应店铺')
|
||||
}
|
||||
await UserMail.updateExpire(accountId)
|
||||
let mails = await UserMail.find({ accountId }).sort({ status: 1, _id: -1 })
|
||||
let mailSet: Set<string> = new Set()
|
||||
for (let mail of mails) {
|
||||
mailSet.add(mail.oid)
|
||||
}
|
||||
let sysMails = await SysMail.findMail(accountId, sid, [...mailSet])
|
||||
let sysMails = await SysMail.findMail(accountId, shop.id, [...mailSet])
|
||||
if (sysMails?.length > 0) {
|
||||
for (let _m of sysMails) {
|
||||
let mail = await UserMail.receiveOne(accountId, _m)
|
||||
|
Loading…
x
Reference in New Issue
Block a user