100 lines
4.6 KiB
JavaScript
100 lines
4.6 KiB
JavaScript
'use strict';
|
|
const dayjs = require("dayjs");
|
|
var isBetween = require('dayjs/plugin/isBetween')
|
|
dayjs.extend(isBetween)
|
|
|
|
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: ""};
|
|
// 业务逻辑开始-----------------------------------------------------------
|
|
const sheet = await vk.baseDao.findByWhereJson({
|
|
dbName: "jjx-enquiry-sheet",
|
|
whereJson: {
|
|
_id: data.id
|
|
},
|
|
})
|
|
if (data.field === 'isShow' && data.value === 1) {
|
|
const messageUserList = await vk.baseDao.select({
|
|
dbName: "jjx-message-config",
|
|
whereJson: {
|
|
enquiry: true,
|
|
productList: _.in(sheet.productList.map(item => item.goodsName))
|
|
}
|
|
})
|
|
const messageList = []
|
|
const messageTitle = sheet.productList.map(item => `${item.goodsName}${item.materialQuality ? `(${item.materialQuality})` : ''}`).join("/")
|
|
for (let i = 0; i < messageUserList.rows.length; i++) {
|
|
const config = messageUserList.rows[i]
|
|
const date = dayjs().format("YYYY-MM-DD")
|
|
// if (config.doNotDisturbRange && config.doNotDisturbRange[0]) {
|
|
// const doNotDisturbRangeStart = dayjs(config.doNotDisturbRange[0]).format("HH:mm")
|
|
// const doNotDisturbRangeEnd = dayjs(config.doNotDisturbRange[1]).format("HH:mm")
|
|
// if (dayjs().isBetween(dayjs(`${date} ${doNotDisturbRangeStart}`), dayjs(`${date} ${doNotDisturbRangeEnd}`)))
|
|
// continue
|
|
// }
|
|
if (config.doNotDisturbStart && config.doNotDisturbStart.length) {
|
|
const doNotDisturbRangeStart = dayjs(`${date} ${config.doNotDisturbStart[0]}:${config.doNotDisturbStart[1]}`).format("HH:mm")
|
|
const doNotDisturbRangeEnd = dayjs(`${date} ${config.doNotDisturbEnd[0]}:${config.doNotDisturbEnd[1]}`).format("HH:mm")
|
|
if (dayjs().isBetween(dayjs(`${date} ${doNotDisturbRangeStart}`), dayjs(`${date} ${doNotDisturbRangeEnd}`)))
|
|
continue
|
|
}
|
|
let inAddress = false
|
|
if (config.addressList && config.addressList.length > 0) {
|
|
for (let j = 0; j < config.addressList.length; j++) {
|
|
if (config.addressList[j].province.code === sheet.addressRegion.province.code) {
|
|
if (config.addressList[j].city === null) inAddress = true
|
|
else if (config.addressList[j].city.code === sheet.addressRegion.city.code) {
|
|
if (config.addressList[j].area === null) inAddress = true
|
|
else if (config.addressList[j].area.code === sheet.addressRegion.area.code) {
|
|
inAddress = true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} else inAddress = true
|
|
if (!inAddress) continue
|
|
if (!config.tradeSelf && sheet.tradeMethod === 0) continue
|
|
if (!config.tradePlatform && sheet.tradeMethod === 1) continue
|
|
if (messageUserList.rows[i].uid !== sheet.uid) {
|
|
messageList.push({
|
|
uid: messageUserList.rows[i].uid,
|
|
title: `找买家:${messageTitle}`,
|
|
content: `新的找买家信息发布,赶紧去看看吧`,
|
|
type: 'enquiry',
|
|
hasRead: false,
|
|
pk: res.id
|
|
})
|
|
await pubFun.sendNotifySms(messageUserList.rows[i].uid, 'SMS_474510001')
|
|
}
|
|
}
|
|
if (messageList.length > 0) {
|
|
await vk.baseDao.adds({
|
|
dbName: "jjx-message",
|
|
dataJson: messageList
|
|
});
|
|
}
|
|
}
|
|
|
|
await vk.baseDao.updateById({
|
|
dbName: "jjx-enquiry-sheet",
|
|
id: data.id,
|
|
dataJson: {
|
|
[data.field]: data.value
|
|
}
|
|
});
|
|
|
|
|
|
// 业务逻辑结束-----------------------------------------------------------
|
|
return res;
|
|
}
|
|
}
|