72 lines
2.1 KiB
JavaScript
72 lines
2.1 KiB
JavaScript
'use strict';
|
|
module.exports = {
|
|
/**
|
|
* XXXnameXXX
|
|
* @url admin/old/sys/changeField 前端调用的url参数地址
|
|
* data 请求参数
|
|
* @param {String} params1 参数1
|
|
*/
|
|
main: async (event) => {
|
|
let {data = {}, userInfo, util, filterResponse, originalParam} = event;
|
|
let {customUtil, uniID, config, pubFun, vk, db, _} = util;
|
|
let {uid} = data;
|
|
let res = {code: 0, msg: ""};
|
|
// 业务逻辑开始-----------------------------------------------------------
|
|
|
|
let offAmount = parseFloat(data.amount)
|
|
let saveAmount = 0, offRate = 100
|
|
const order = await vk.baseDao.findByWhereJson({
|
|
dbName: "jjx-order",
|
|
whereJson: {
|
|
_id: data._id
|
|
}
|
|
})
|
|
const user = await vk.baseDao.findByWhereJson({
|
|
dbName: "uni-id-users",
|
|
whereJson: {
|
|
uid: order.uid
|
|
}
|
|
})
|
|
if (user.userLevel > 0) {
|
|
const userLevel = await vk.baseDao.findByWhereJson({
|
|
dbName: "jjx-user-level",
|
|
whereJson: {
|
|
level: user.userLevel
|
|
}
|
|
})
|
|
if (userLevel) {
|
|
offRate = parseInt(userLevel.valueAddRate)
|
|
offAmount = (data.amount * (parseInt(userLevel.valueAddRate) / 100)).toFixed(2)
|
|
saveAmount = (data.amount - offAmount).toFixed(2)
|
|
}
|
|
}
|
|
|
|
await vk.baseDao.updateById({
|
|
dbName: "jjx-order",
|
|
id: data._id,
|
|
dataJson: {
|
|
amount: parseFloat(data.amount),
|
|
orderStatus: 0,
|
|
saveAmount,
|
|
offAmount,
|
|
offRate,
|
|
}
|
|
});
|
|
|
|
await vk.baseDao.update({
|
|
dbName: "jjx-order-goods",
|
|
whereJson:{
|
|
orderId: data._id
|
|
},
|
|
dataJson: {
|
|
goodsPrice: parseFloat(data.amount),
|
|
|
|
}
|
|
});
|
|
|
|
|
|
// 业务逻辑结束-----------------------------------------------------------
|
|
return res;
|
|
}
|
|
}
|