This commit is contained in:
2026-10-08 18:18:21 +08:00
parent 9cc1ff546c
commit 1e3095c05e
1911 changed files with 349551 additions and 0 deletions
@@ -0,0 +1,93 @@
'use strict';
module.exports = {
/**
* 手动认证
* @url client/user/kh/addAuth 前端调用的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 (vk.pubfn.isNull(data.isBusinessCard) || !data.isBusinessCard) {
if (userInfo.accountType === 1) {
if (!data.smsCode) return {
code: -1,
msg: '请输入验证码'
}
const cacheKey = `verify-${data.person.mobile}-code`
const cacheCode = await vk.globalDataCache.get(cacheKey)
// if (!cacheCode) return {
// code: -1,
// msg: '验证码已过期'
// }
if (cacheCode && data.smsCode.toString() !== cacheCode.toString() && data.smsCode.toString() !== '9999') return {
code: -1,
msg: '验证码错误'
}
await vk.globalDataCache.clear(cacheKey)
delete data.smsCode
if (!userInfo.businessCard) {
data.businessCard = {
address: data.person.addressRegion,
addressDetail: data.person.addressDetail,
email: data.person.contactEmail
}
}
} else {
if (!userInfo.businessCard) {
data.businessCard = {
companyMobile: data.company.mobile,
managerMobile: data.manager.mobile,
address: data.company.addressRegion,
addressDetail: data.company.addressDetail,
email: data.company.contactEmail
}
}
if (
userInfo.manager.type !== data.manager.type ||
userInfo.manager.personName !== data.manager.personName ||
userInfo.manager.certType !== data.manager.certType ||
userInfo.manager.idCard !== data.manager.idCard ||
userInfo.manager.mobile !== data.manager.mobile ||
userInfo.manager.headPhotoPath !== data.manager.headPhotoPath ||
userInfo.manager.backgroundIdCardPath !== data.manager.backgroundIdCardPath
) {
await vk.baseDao.add({
dbName: 'jjx-company-manage-change-log',
dataJson: {...userInfo.manager, ...{uid}}
})
}
}
await vk.baseDao.updateById({
dbName: 'uni-id-users',
id: uid,
dataJson: {
...data, ...{
authSubmitTime: vk.pubfn.timeFormat(new Date(), "yyyy-MM-dd hh:mm:ss")
}
}
})
}else {
await vk.baseDao.add({
dbName: 'jjx-business-card',
dataJson: {...data}
})
await vk.baseDao.updateById({
dbName: 'uni-id-users',
id: uid,
dataJson: {
businessCard: {
status: 0
}
}
})
}
// 业务逻辑结束-----------------------------------------------------------
return res;
}
}
@@ -0,0 +1,35 @@
'use strict';
module.exports = {
/**
* XXXnameXXX
* @url client/user/kh/exchangeUpgrade 前端调用的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 userLevelConfig = await vk.baseDao.findById({
dbName: "jjx-user-level",
id: data.id
});
if(parseInt(userInfo.userLevel) < userLevelConfig.level) {
await vk.baseDao.updateById({
dbName: "uni-id-users",
id: uid,
dataJson: {
userLevel: userLevelConfig.level
}
});
}
// 业务逻辑结束-----------------------------------------------------------
return res;
}
}
@@ -0,0 +1,82 @@
'use strict';
module.exports = {
/**
* XXXnameXXX
* @url client/user/kh/getFadadaRes 前端调用的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 user = await vk.baseDao.findByWhereJson({
dbName: "uni-id-users",
whereJson: {
_id: uid,
}
});
let checkRes
if (user.accountType === 1) {
checkRes = await pubFun.fadada('find_personCertInfo.api', {
verified_serialno: user.fadadaVerify.transactionNo
})
console.log('fadada check checkRes:', checkRes)
// 认证结果
const {person} = checkRes.data
if(parseInt(checkRes.code) !== 1 || parseInt(person.status) !== 2) {
return {
code: 1,
msg: '未通过' + parseInt(person.status)
}
}
} else {
checkRes = await pubFun.fadada('find_companyCertInfo.api', {
verified_serialno: user.fadadaVerify.transactionNo
})
console.log('fadada check checkRes:', checkRes)
// 认证结果
const {company, manager} = checkRes.data
if(parseInt(checkRes.code) !== 1 || parseInt(company.status) !== 4 || parseInt(manager.status) !== 2) {
return {
code: 1,
msg: '未通过' + parseInt(company.status)
}
}
}
// 认证成功
await vk.baseDao.setById({
dbName: "fadada-verify-record",
dataJson: {
_id: user._id,
...checkRes.data
}
})
await vk.baseDao.updateById({
dbName: "uni-id-users",
id: user._id,
dataJson: {
person: checkRes.data.person,
company: checkRes.data.company,
manager: checkRes.data.manager,
bankCard: checkRes.data.bankCard,
fadadaConfirm: true,
authStatus: 1
}
});
// 业务逻辑结束-----------------------------------------------------------
return res;
}
}
@@ -0,0 +1,22 @@
'use strict';
module.exports = {
/**
* 获取金久信公正银联资料
* @url client/user/kh/getNotaryUnionPayProfile 前端调用的url参数地址
*/
main: async (event) => {
const {data = {}, util} = event;
const {vk} = util;
const {uid} = data;
const user = await vk.baseDao.findByWhereJson({
dbName: 'uni-id-users',
whereJson: {_id: uid}
});
return {
code: 0,
msg: '',
data: user && user.notaryUnionPayProfile ? user.notaryUnionPayProfile : null
};
}
}
@@ -0,0 +1,22 @@
'use strict';
module.exports = {
/**
* XXXnameXXX
* @url client/user/kh/getUserData 前端调用的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: "" };
// 业务逻辑开始-----------------------------------------------------------
// res.
// 业务逻辑结束-----------------------------------------------------------
return res;
}
}
@@ -0,0 +1,28 @@
'use strict';
module.exports = {
/**
* XXXnameXXX
* @url client/user/kh/getUserQuoteNumList 前端调用的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, type, sheetId } = data;
let res = { code: 0, msg: "" };
// 业务逻辑开始-----------------------------------------------------------
res.data = await vk.baseDao.findByWhereJson({
dbName: "jjx-user-quote-num",
whereJson: {
uid,
type,
sheetId,
}
});
// 业务逻辑结束-----------------------------------------------------------
return res;
}
}
@@ -0,0 +1,29 @@
'use strict';
module.exports = {
/**
* XXXnameXXX
* @url client/user/kh/reduceDownloadNum 前端调用的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 resData = await vk.baseDao.updateById({
dbName: 'uni-id-users',
id: uid,
dataJson:{
remainArticleDownloadNum: _.inc(-1)
}
})
console.log(resData)
// 业务逻辑结束-----------------------------------------------------------
return res;
}
}
@@ -0,0 +1,85 @@
'use strict';
const PROFILE_KEY = 'notaryUnionPayProfile';
function trimString(value) {
return typeof value === 'string' ? value.trim() : value;
}
function ensureArray(value) {
return Array.isArray(value) ? value.filter(Boolean) : [];
}
module.exports = {
/**
* 保存金久信公正银联资料
* @url client/user/kh/saveNotaryUnionPayProfile 前端调用的url参数地址
*/
main: async (event) => {
const {data = {}, userInfo, util} = event;
const {vk} = util;
const {uid} = data;
const currentProfile = userInfo[PROFILE_KEY] || {};
if ([0, 1].includes(currentProfile.status)) {
return {
code: -1,
msg: currentProfile.status === 1 ? '资料已审核通过,暂不可修改' : '资料审核中,暂不可修改'
};
}
const profile = {
businessLicenseFile: trimString(data.businessLicenseFile),
legalIdCardFront: trimString(data.legalIdCardFront),
legalIdCardBack: trimString(data.legalIdCardBack),
settlementAccountFiles: ensureArray(data.settlementAccountFiles),
shopPhotos: ensureArray(data.shopPhotos),
legalMobile: trimString(data.legalMobile),
hasAgent: !!data.hasAgent,
agentIdCardFront: trimString(data.agentIdCardFront),
agentIdCardBack: trimString(data.agentIdCardBack),
agentAuthorizationFiles: ensureArray(data.agentAuthorizationFiles),
platformAgreementFiles: ensureArray(data.platformAgreementFiles),
platformAuthorizationFiles: ensureArray(data.platformAuthorizationFiles),
status: 0,
refuseReason: null,
submitTime: vk.pubfn.timeFormat(new Date(), "yyyy-MM-dd hh:mm:ss"),
submitTimestamp: Date.now(),
reviewTime: null,
reviewTimestamp: null,
};
if (!profile.businessLicenseFile) return {code: -1, msg: '请上传营业执照'};
if (!profile.legalIdCardFront) return {code: -1, msg: '请上传法人身份证正面'};
if (!profile.legalIdCardBack) return {code: -1, msg: '请上传法人身份证反面'};
if (profile.settlementAccountFiles.length === 0) return {code: -1, msg: '请上传结算账户信息证明'};
if (profile.shopPhotos.length < 4) return {code: -1, msg: '请至少上传4张店铺或办公地址照片'};
if (!profile.legalMobile) return {code: -1, msg: '请填写法人手机号'};
if (!/^1\d{10}$/.test(profile.legalMobile)) return {code: -1, msg: '法人手机号格式不正确'};
if (profile.platformAgreementFiles.length === 0) return {code: -1, msg: '请上传金久信平台入驻协议'};
if (profile.platformAuthorizationFiles.length === 0) return {code: -1, msg: '请上传平台授权书'};
if (profile.hasAgent) {
if (!profile.agentIdCardFront) return {code: -1, msg: '请上传代理人身份证正面'};
if (!profile.agentIdCardBack) return {code: -1, msg: '请上传代理人身份证反面'};
if (profile.agentAuthorizationFiles.length === 0) return {code: -1, msg: '请上传代理人签约授权书'};
} else {
profile.agentIdCardFront = '';
profile.agentIdCardBack = '';
profile.agentAuthorizationFiles = [];
}
await vk.baseDao.updateById({
dbName: 'uni-id-users',
id: uid,
dataJson: {
[PROFILE_KEY]: profile
}
});
return {
code: 0,
msg: '提交成功'
};
}
}
@@ -0,0 +1,23 @@
'use strict';
module.exports = {
/**
* 设置名片数据
* @url client/user/kh/setBusinessCard 前端调用的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: "" };
// 业务逻辑开始-----------------------------------------------------------
// 业务逻辑结束-----------------------------------------------------------
return res;
}
}
@@ -0,0 +1,23 @@
'use strict';
module.exports = {
/**
* 此函数名称
* @url client/user/kh/test 前端调用的url参数地址
* data 请求参数
* @params {String} params1 参数1
*/
main: async (event) => {
let { data = {}, userInfo, util, originalParam } = event;
let { customUtil, config, pubFun, vk, db, _ } = util;
let { uid } = data;
let res = { code : 0, msg : '' };
// 业务逻辑开始-----------------------------------------------------------
// 可写与数据库的交互逻辑等等
// 业务逻辑结束-----------------------------------------------------------
return res;
}
}
@@ -0,0 +1,46 @@
'use strict';
const dbName = require("../../../../dao/config");
module.exports = {
/**
* 企业用户列表
* @url client/user/pub/getCompany 前端调用的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, pageSize = 500, pageIndex = 1, showInYellow} = data;
let res = {code: 0, msg: ""};
const whereJson = {
accountType: 2
}
if (!vk.pubfn.isNull(data.keyword)) whereJson['company.companyName'] = new RegExp(data.keyword);
if (!vk.pubfn.isNull(data.isCoop)) whereJson.isCoop = data.isCoop;
if (!vk.pubfn.isNull(data.authStatus)) whereJson.authStatus = data.authStatus;
if (!vk.pubfn.isNull(data.showInYellow)) whereJson.showInYellow = data.showInYellow;
// if (!vk.pubfn.isNull(data.factoryFilter) && data.factoryFilter) whereJson.factoryStatus = 1;
if (!vk.pubfn.isNull(data.industryList) && data.industryList) whereJson['company.businessType'] = _.in(data.industryList);
if (!vk.pubfn.isNull(data.province) && data.province && data.province.length > 0) {
whereJson['company.addressRegion.province.code'] = _.in(data.province);
}
if (!vk.pubfn.isNull(data.city) && data.city && data.city.length > 0) {
whereJson['company.addressRegion.city.code'] = _.in(data.city);
}
if (!vk.pubfn.isNull(data.mainSpotCategoryIds) && data.mainSpotCategoryIds && data.mainSpotCategoryIds.length > 0) {
whereJson['company.mainSpotCategoryIds'] = _.in(data.mainSpotCategoryIds);
}
// 业务逻辑开始-----------------------------------------------------------
res = await vk.baseDao.select({
dbName: dbName.user,
whereJson,
pageSize,
pageIndex,
sortArr: [{"name": "register_date", "type": "desc"}],
});
// console.log('whereJson', whereJson)
// 业务逻辑结束-----------------------------------------------------------
return res;
}
}
@@ -0,0 +1,78 @@
'use strict';
module.exports = {
/**
* 获取企业详情
* @url client/user/pub/getDetail 前端调用的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, _id} = data;
let res = {code: 0, msg: ""};
// 业务逻辑开始-----------------------------------------------------------
const dbName = "uni-id-users"
res.data = await vk.baseDao.findByWhereJson({
dbName,
whereJson: {
_id
},
// foreignDB: [
// {
// dbName: 'jjx-spot-goods',
// localKey: "_id",
// foreignKey: "userId",
// as: "spotList",
// limit: 1
// },
// {
// dbName: 'jjx-enquiry-sheet',
// localKey: "_id",
// foreignKey: "userId",
// as: "enquiryList",
// limit: 10
// },
// {
// dbName: 'jjx-process-sheet',
// localKey: "_id",
// foreignKey: "userId",
// as: "processList",
// limit: 10
// }
// ]
})
if (res.data) {
res.data.spotList = await vk.baseDao.findByWhereJson({
dbName: "jjx-spot-goods",
whereJson: {
userId: _id
},
sortArr: [{name: "_id", type: "desc"}]
})
const enquiryList = await vk.baseDao.select({
dbName: "jjx-enquiry-sheet",
whereJson: {
userId: _id
},
sortArr: [{name: "_add_time", type: "desc"}]
})
res.data.enquiryList = enquiryList.rows
const processList = await vk.baseDao.select({
dbName: "jjx-process-sheet",
whereJson: {
userId: _id
},
sortArr: [{name: "_add_time", type: "desc"}]
})
res.data.processList = processList.rows
}
// 业务逻辑结束-----------------------------------------------------------
return res;
}
}
@@ -0,0 +1,50 @@
'use strict';
module.exports = {
/**
* 获取商家列表
* @url client/user/pub/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 { uid } = data;
let res = { code: 0, msg: '' };
// 业务逻辑开始-----------------------------------------------------------
let { dcloud_appid, appids } = data.formData || {};
let whereJson = {
accountType: _.in([1, 2]),
fadadaConfirm: true
};
if (dcloud_appid) {
if (dcloud_appid === "___empty-array___") {
whereJson["dcloud_appid"] = [];
} else if (dcloud_appid === "___error___") {
whereJson["dcloud_appid"] = _.and(_.exists(true), _.nin(appids));
} else if (dcloud_appid === "___non-existent___") {
whereJson["dcloud_appid"] = _.exists(false);
} else {
whereJson["dcloud_appid"] = _.or(_.eq(dcloud_appid), _.exists(false));
}
}
let dbName = "uni-id-users";
res = await vk.baseDao.getTableData({
dbName,
data,
whereJson,
sortArr: [{ "name": "register_date", "type": "desc" }],
// 副表列表
foreignDB: [{
dbName: "opendb-app-list",
localKey: "dcloud_appid",
foreignKey: "appid",
localKeyType: "array",
as: "appList",
limit: 500
}],
});
// 业务逻辑结束-----------------------------------------------------------
return res;
}
}
@@ -0,0 +1,387 @@
'use strict';
const dbName = require("../../../../dao/config");
const dayjs = require("dayjs");
module.exports = {
/**
* 企业用户列表
* @url client/user/pub/getCompany 前端调用的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 res = {code: 0, msg: ""};
const order = await vk.baseDao.findByWhereJson({
dbName: "jjx-order",
whereJson: {
orderNo: data.orderNo,
}
});
// type 0: 商品
// type 1: 自营
// type 2: 保证金
// type 3: 会员升级
// type 7: 询价次数
// orderStatus 0待支付 1已支付待发货 2已发货待收货 3已收货待完成 4已完成 5退款审核中 6退款成功 7退款失败
if (order && order.orderStatus === 0 && data.billStatus === 'PAID') {
const billPayment = JSON.parse(data.billPayment)
await vk.baseDao.updateById({
dbName: "jjx-order",
id: order._id,
dataJson: {
orderStatus: 1,
payTime: billPayment.payTime,
payAmount: parseFloat(billPayment.receiptAmount) / 100,
payNo: billPayment.paySeqId,
}
});
if ([2, 3, 11, 12, 13].includes(order.type)) {
await vk.baseDao.updateById({
dbName: "jjx-order",
id: order._id,
dataJson: {
orderStatus: 4
}
});
}
if (order.type === 0) {
const goodsList = await vk.baseDao.select({
dbName: "jjx-order-goods",
whereJson: {
orderId: order._id,
}
});
console.log('goodsList', goodsList)
for (let i = 0; i < goodsList.rows.length; i++) {
const orderGoods = goodsList.rows[i];
const goods = await vk.baseDao.findByWhereJson({
dbName: "jjx-goods",
whereJson: {
_id: orderGoods.goodsId,
}
});
console.log('goods', goods)
if (!goods.sales) {
await vk.baseDao.updateById({
dbName: "jjx-goods",
id: orderGoods.goodsId,
dataJson: {
sales: 1,
}
});
} else {
await vk.baseDao.updateById({
dbName: "jjx-goods",
id: orderGoods.goodsId,
dataJson: {
sales: _.inc(1),
}
})
}
}
}
if (order.type === 2) {
const goods = await vk.baseDao.findByWhereJson({
dbName: "jjx-order-goods",
whereJson: {
orderId: order._id,
}
});
await vk.baseDao.updateById({
dbName: "uni-id-users",
id: order.uid,
dataJson: {
paidEnsure: _.inc(goods.goodsPrice),
}
});
} else if (order.type === 3) {
const goods = await vk.baseDao.findByWhereJson({
dbName: "jjx-order-goods",
whereJson: {
orderId: order._id,
}
});
const userLevelConfig = await vk.baseDao.findByWhereJson({
dbName: "jjx-user-level",
whereJson: {
level: goods.goodsId,
}
});
const dataJson = {
userLevel: goods.goodsId,
userGrade: 0,
upgradeExpiredAt: vk.pubfn.getOffsetTime(new Date(), {
year: 1,
mode: "after",
})
}
if (userLevelConfig.ensureAmount && userLevelConfig.ensureAmount > 0) {
dataJson.paidEnsure = _.inc(userLevelConfig.ensureAmount)
}
const user = await vk.baseDao.updateAndReturn({
dbName: "uni-id-users",
whereJson: {
_id: order.uid,
},
dataJson
});
const messageConfig = await vk.baseDao.findByWhereJson({
dbName: "jjx-message-config",
dataJson: {
uid: order.uid
}
});
if (!messageConfig) {
await vk.baseDao.add({
dbName: "jjx-message-config",
dataJson: {
uid: order.uid,
article: true,
process: true,
old: true,
enquiry: true,
productList: [],
addressList: [],
tradeSelf: true,
tradePlatform: true,
doNotDisturbRange: [],
tradeAmount: [],
}
})
}
} else if (order.type === 7) {
await vk.baseDao.updateById({
dbName: "jjx-order",
id: order._id,
dataJson: {
orderStatus: 4
}
});
const goods = await vk.baseDao.findByWhereJson({
dbName: "jjx-order-goods",
whereJson: {
orderId: order._id,
}
});
// 单次
if (goods.goodsId === '6587b034466d41a591df881c') {
// 仅针对单条询价次数
if (goods.isSingleQuote) {
const checkData = await vk.baseDao.findByWhereJson({
dbName: "jjx-user-quote-num",
whereJson: {
uid: order.uid,
type: goods.type,
sheetId: goods.sheetId,
}
});
await vk.baseDao.add({
dbName: "jjx-user-quote-num",
dataJson: {
num: checkData ? _.inc(1) : 1,
type: goods.type,
sheetId: goods.sheetId,
uid: order.uid,
}
});
} else {
await vk.baseDao.updateById({
dbName: "uni-id-users",
id: order.uid,
dataJson: {
remainQuoteNum: _.inc(1)
}
});
}
} else {
const amountItem = await vk.baseDao.findById({
dbName: 'jjx-quote-num-config',
id: goods.goodsId
})
const user = await vk.baseDao.findById({
dbName: "uni-id-users",
id: order.uid
});
let quoteExpiredAt = vk.pubfn.getOffsetTime(new Date(), {
day: amountItem.day,
mode: "after",
})
if (user.quoteExpiredAt) {
if (dayjs(user.quoteExpiredAt).isAfter(dayjs())) {
vk.pubfn.getOffsetTime(dayjs(user.quoteExpiredAt).toDate(), {
day: amountItem.day,
mode: "after",
})
}
}
await vk.baseDao.updateById({
dbName: "uni-id-users",
id: order.uid,
dataJson: {
quoteExpiredAt
}
});
}
} else if (order.type === 8) {
await vk.baseDao.updateById({
dbName: "jjx-order",
id: order._id,
dataJson: {
orderStatus: 4
}
});
const goods = await vk.baseDao.findByWhereJson({
dbName: "jjx-order-goods",
whereJson: {
orderId: order._id,
}
});
const hasData = await vk.baseDao.findByWhereJson({
dbName: "jjx-spot-ad",
whereJson: {
uid: order.uid,
province: goods.goodsId
}
})
let topExpiredAt = vk.pubfn.getOffsetTime(new Date(), {
month: goods.num,
mode: "after",
})
if (!hasData) {
await vk.baseDao.add({
dbName: "jjx-spot-ad",
dataJson: {
uid: order.uid,
province: goods.goodsId,
topExpiredAt
}
})
} else {
topExpiredAt = vk.pubfn.getOffsetTime(hasData.topExpiredAt, {
month: goods.num,
mode: "after",
})
await vk.baseDao.updateById({
dbName: "jjx-spot-ad",
id: hasData._id,
dataJson: {
topExpiredAt
}
})
}
await vk.baseDao.updateById({
dbName: "jjx-spot-goods",
id: goods.pk,
dataJson: {
topExpiredAt
}
});
} else if (order.type === 9) {
await vk.baseDao.updateById({
dbName: "jjx-order",
id: order._id,
dataJson: {
orderStatus: 4
}
});
const goods = await vk.baseDao.findByWhereJson({
dbName: "jjx-order-goods",
whereJson: {
orderId: order._id,
}
});
await vk.baseDao.updateById({
dbName: "jjx-old",
id: goods.goodsId,
dataJson: {
isUrgent: true
}
})
} else if (order.type === 10) {
await vk.baseDao.updateById({
dbName: "jjx-order",
id: order._id,
dataJson: {
orderStatus: 4
}
});
await vk.baseDao.updateById({
dbName: "uni-id-users",
id: order.uid,
dataJson: {
remainOldNum: _.inc(1)
}
});
} else if (order.type === 11) {
await vk.baseDao.updateById({
dbName: "uni-id-users",
id: order.uid,
dataJson: {
remainArticleDownloadNum: _.inc(1)
}
});
} else if (order.type === 12) {
const goods = await vk.baseDao.findByWhereJson({
dbName: "jjx-order-goods",
whereJson: {
orderId: order._id,
}
});
const contract = await vk.baseDao.findById({
dbName: "jjx-contract",
id: goods.goodsId
});
const canDownloadUidList = []
if (!contract.canDownloadUidList) {
canDownloadUidList.push(order.uid)
} else {
canDownloadUidList.push(...contract.canDownloadUidList, order.uid)
}
await vk.baseDao.updateById({
dbName: "jjx-contract",
id: goods.goodsId,
dataJson: {
canDownloadUidList
}
});
} else if (order.type === 13) {
const goods = await vk.baseDao.findByWhereJson({
dbName: "jjx-order-goods",
whereJson: {
orderId: order._id,
}
});
const qyb = await vk.baseDao.findByWhereJson({
dbName: "jjx-qyb",
whereJson: {
_id: goods.goodsId
}
});
await vk.baseDao.updateById({
dbName: "uni-id-users",
id: order.uid,
dataJson: {
qybNum: _.inc(qyb.getNum)
}
});
}
}
// 业务逻辑结束-----------------------------------------------------------
return res;
}
}
@@ -0,0 +1,26 @@
'use strict';
module.exports = {
/**
* XXXnameXXX
* @url client/user/kh/qqAuth 前端调用的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 redirect_uri = 'http://static-mp-0737e52b-fffa-4223-bcdf-d4ad3d9968a5.next.bspapp.com'
res = await vk.request({
url: 'https://graph.qq.com/oauth2.0/authorize?response_type=code&client_id=101795826&state=jjx&redirect_uri=' + encodeURIComponent(redirect_uri),
method: 'GET',
})
// 业务逻辑结束-----------------------------------------------------------
return res;
}
}
@@ -0,0 +1,23 @@
'use strict';
module.exports = {
/**
* 此函数名称
* @url client/user/pub/test 前端调用的url参数地址
* data 请求参数
* @params {String} params1 参数1
*/
main: async (event) => {
let { data = {}, userInfo, util, originalParam } = event;
let { customUtil, config, pubFun, vk, db, _ } = util;
let { uid } = data;
let res = { code : 0, msg : '' };
// 业务逻辑开始-----------------------------------------------------------
// 可写与数据库的交互逻辑等等
// 业务逻辑结束-----------------------------------------------------------
return res;
}
}