20261008
This commit is contained in:
@@ -0,0 +1,99 @@
|
||||
'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;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,103 @@
|
||||
'use strict';
|
||||
const normalizeSortRule = require('../../utils/sortRule.js');
|
||||
const DEFAULT_NOTARY_SERVICE_RATE = 0.1;
|
||||
|
||||
module.exports = {
|
||||
/**
|
||||
* XXXnameXXX
|
||||
* @url admin/old/sys/getList 前端调用的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 {pageIndex, pageSize, formData, sortRule} = data;
|
||||
let res = {code: 0, msg: ""};
|
||||
// 业务逻辑开始-----------------------------------------------------------
|
||||
|
||||
const whereJson = {};
|
||||
if (vk.pubfn.isNotNull(formData)) {
|
||||
if (vk.pubfn.isNotNull(formData.title)) whereJson.title = new RegExp(formData.title);
|
||||
if (vk.pubfn.isNotNull(formData.status)) whereJson.status = formData.status;
|
||||
if (vk.pubfn.isNotNull(formData.signMethod)) whereJson.signMethod = formData.signMethod;
|
||||
}
|
||||
|
||||
// 区域限制
|
||||
if (userInfo.allowArea && userInfo.allowArea.length > 0) {
|
||||
whereJson['addressRegion.city.code'] = _.in(userInfo.allowArea.map(item => item.area.city.code));
|
||||
}
|
||||
console.log('whereJson', whereJson)
|
||||
res = await vk.baseDao.selects({
|
||||
dbName: "jjx-enquiry-sheet",
|
||||
getCount: true,
|
||||
pageIndex,
|
||||
pageSize,
|
||||
whereJson,
|
||||
sortArr: normalizeSortRule(sortRule, [{"name": "_add_time", "type": "desc"}], ["_add_time"]),
|
||||
foreignDB: [
|
||||
{
|
||||
dbName: "uni-id-users",
|
||||
localKey: "userId",
|
||||
foreignKey: "_id",
|
||||
as: "user",
|
||||
limit: 1, // limit=1则以对象形式返回
|
||||
fieldJson: {
|
||||
_id: true,
|
||||
company: {
|
||||
companyName: true
|
||||
},
|
||||
person: {
|
||||
personName: true
|
||||
},
|
||||
businessCard: true,
|
||||
accountType: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
dbName: "jjx-enquiry-quote",
|
||||
localKey: "_id",
|
||||
foreignKey: "sheetId",
|
||||
as: "quoteList",
|
||||
limit: 500, // limit=1则以对象形式返回
|
||||
},
|
||||
]
|
||||
});
|
||||
|
||||
for (let i = 0; i < res.rows.length; i++) {
|
||||
if (res.rows[i].tradeMethod === 1 && (res.rows[i].notaryServiceRate === undefined || res.rows[i].notaryServiceRate === null || res.rows[i].notaryServiceRate === '')) {
|
||||
res.rows[i].notaryServiceRate = DEFAULT_NOTARY_SERVICE_RATE
|
||||
}
|
||||
const order = await vk.baseDao.findByWhereJson({
|
||||
dbName: 'jjx-order',
|
||||
whereJson: {
|
||||
sheetId: res.rows[i]._id
|
||||
}
|
||||
})
|
||||
if (order) {
|
||||
res.rows[i].order = order
|
||||
const payList = await vk.baseDao.select({
|
||||
dbName: 'jjx-order-pay-list',
|
||||
whereJson: {
|
||||
orderId: order._id
|
||||
}
|
||||
})
|
||||
res.rows[i].payList = null
|
||||
if (payList) {
|
||||
res.rows[i].payList = payList.rows
|
||||
}
|
||||
}
|
||||
|
||||
res.rows[i].contract = await vk.baseDao.findByWhereJson({
|
||||
dbName: 'jjx-contract',
|
||||
whereJson: {
|
||||
sheetId: res.rows[i]._id
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
// 业务逻辑结束-----------------------------------------------------------
|
||||
return res;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user