1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- const express = require('express');
- const router = express.Router();
- const { body, query } = require('express-validator');
- const paramCheck = require('../../../middleware/check');
- const { inviteCheck, buyCourse, buyCheck } = require('../../../models/page');
- const { onError } = require('../../../utils');
- /**
- * showdoc
- * @catalog v1/前台/购买
- * @title 购买课程
- * @description
- * @method post
- * @url /api/order
- * @param cid 1 number 课程id
- * @return {"code":0,"data": {"url":"zgHXZfQ==,"id": 123}}
- * @return_param url number 支付url
- * @return_param id number 订单id
- * @remark
- * @number
- */
- router.post('/order', paramCheck([body(['cid']).notEmpty()]), async (req, res) => {
- if (!req.uid) {
- return res.send(onError('用户未登录'));
- }
- req.body.uid = req.uid;
- const info = await buyCourse(req.body);
- res.send(info);
- });
- /**
- * showdoc
- * @catalog v1/前台/购买
- * @title 邀请码查看
- * @description
- * @method post
- * @url /api/inviter
- * @param code 1 string 邀请码
- * @param cid 1 string 课程id
- * @return {"code":0,"data": {"price":"123,"discountPrice": 123}}
- * @return_param price number 支付价
- * @return_param discountPrice number 优惠价
- * @remark
- * @number
- */
- router.post('/inviter', paramCheck([body(['code', 'cid']).notEmpty()]), async (req, res) => {
- // if (!req.uid) {
- // return res.send(onError('用户未登录'));
- // }
- req.body.uid = req.uid;
- const info = await inviteCheck(req.body);
- res.send(info);
- });
- /**
- * showdoc
- * @catalog v1/前台/购买
- * @title 购买轮询
- * @description
- * @method get
- * @url /api/order/check
- * @param oid 1 number 订单id
- * @return {"code":0,"data": {"url":"zgHXZfQ==,"id": 123}}
- * @return_param data boolean 是否支付成功
- * @remark
- * @number
- */
- router.get('/order/check', paramCheck([body(['oid']).notEmpty()]), async (req, res) => {
- if (!req.uid) {
- return res.send(onError('用户未登录'));
- }
- const info = await buyCheck(req.query.oid);
- res.send(info);
- });
- module.exports = router;
|