Files
jjx-web/uniCloud-tcb/cloudfunctions/router/service/client/old/kh/add.js
T
2026-10-08 18:18:21 +08:00

143 lines
4.5 KiB
JavaScript

'use strict';
module.exports = {
/**
* XXXnameXXX
* @url client/old/kh/add 前端调用的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: ""};
// 业务逻辑开始-----------------------------------------------------------
if (!userInfo.fadadaConfirm && userInfo.authStatus === 1) {
return {
code: 1,
msg: '请先完成认证'
}
} else if (!userInfo.businessCard) {
return {
code: 1,
msg: '请完善名片信息'
}
} else {
if (userInfo.businessCard.status !== 1) {
return {
code: 1,
msg: '您的名片信息未审核,请耐心等待'
}
}
}
if (!userInfo.remainOldNum || parseInt(userInfo.remainOldNum) === 0) return {
code: 1,
msg: '本月旧货发布次数已用完'
}
const isUrgent = data.isUrgent
delete data.isUrgent
const pk = await vk.baseDao.add({
dbName: "jjx-old",
dataJson: {
...data, ...{
quoteNum: 0,
status: 0,
isUrgent: false,
isShow: 0,
}
}
})
const messageUserList = await vk.baseDao.select({
dbName: "jjx-message-config",
whereJson: {
old: true
}
})
const messageList = []
for (let i = 0; i < messageUserList.rows.length; i++) {
if (messageUserList.rows[i].uid !== uid) {
messageList.push({
uid: messageUserList.rows[i].uid,
title: `旧货:${data.title}`,
content: `新的旧货信息发布,赶紧去看看吧`,
type: 'old',
hasRead: false,
pk
})
await pubFun.sendNotifySms(messageUserList.rows[i].uid, 'SMS_474130452')
}
}
if (messageList.length > 0) {
await vk.baseDao.adds({
dbName: "jjx-message",
dataJson: messageList
});
}
await vk.baseDao.updateById({
dbName: "uni-id-users",
id: uid,
dataJson: {
remainOldNum: _.inc(-1)
}
});
if (isUrgent) {
const amountItem = await vk.baseDao.findById({
dbName: 'jjx-dict',
id: '6587dd2fe0ec19027452c5b5'
})
const amount = amountItem.content
let offAmount = amount
let saveAmount = 0, offRate = 100
if (userInfo.userLevel > 0) {
const userLevel = await vk.baseDao.findByWhereJson({
dbName: "jjx-user-level",
whereJson: {
level: userInfo.userLevel
}
})
if (userLevel) {
offRate = parseInt(userLevel.valueAddRate)
offAmount = (amount * (parseInt(userLevel.valueAddRate) / 100)).toFixed(2)
saveAmount = (amount - offAmount).toFixed(2)
}
}
const orderId = await vk.baseDao.add({
dbName: "jjx-order",
dataJson: {
orderNo: vk.pubfn.createOrderNo("39XU", 20),
uid,
orderStatus: 0,
type: 9,
amount,
offAmount,
saveAmount,
offRate,
}
})
await vk.baseDao.add({
dbName: "jjx-order-goods",
dataJson: {
orderId,
goodsId: pk,
num: 1,
goodsName: '旧货信息加急',
goodsPrice: amount,
goodsCover: null,
}
})
res.data = orderId
}
// 业务逻辑结束-----------------------------------------------------------
return res;
}
}