1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/laeser-lendoo-web

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
cloud.js 1.8 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
黄秀杰 Отправлено 30.10.2017 14:49 ee2643d
const uuid = require('uuid/v4');
const AV = require('leanengine');
const Order = require('./order');
const wxpay = require('./wxpay');
/**
* 一个简单的云代码方法
*/
AV.Cloud.define('hello', function(request, response) {
response.success('Hello world!');
});
/**
* 小程序创建订单
*/
AV.Cloud.define('pay', (request, response) => {
const user = request.currentUser;
if (!user) {
return response.error(new Error('用户未登录'));
}
const authData = user.get('authData');
if (!authData || !authData.lc_weapp) {
return response.error(new Error('当前用户不是小程序用户'));
}
const order = new Order();
order.tradeId = request.params.tradeNo;
order.status = 0;
order.user = request.currentUser;
order.productDescription = request.params.body;
order.amount = request.params.totalFee;
order.ip = request.meta.remoteAddress;
if (!(order.ip && /^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$/.test(order.ip))) {
order.ip = '127.0.0.1';
}
order.tradeType = 'JSAPI';
// const acl = new AV.ACL();
// 只有创建订单的用户可以读,没有人可以写
// acl.setPublicReadAccess(false);
// acl.setPublicWriteAccess(false);
// acl.setReadAccess(user, true);
// acl.setWriteAccess(user, false);
// order.setACL(acl);
order.place().then(() => {
console.log(`预订单创建成功:订单号 [${order.tradeId}] prepayId [${order.prepayId}]`);
const payload = {
appId: process.env.WEIXIN_APPID,
timeStamp: String(Math.floor(Date.now() / 1000)),
package: `prepay_id=${order.prepayId}`,
signType: 'MD5',
nonceStr: String(Math.random()),
}
payload.paySign = wxpay.sign(payload);
response.success(payload);
}).catch(error => {
console.error(error);
response.error(error);
});
});

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/laeser-lendoo-web.git
git@api.gitlife.ru:oschina-mirror/laeser-lendoo-web.git
oschina-mirror
laeser-lendoo-web
laeser-lendoo-web
master