20261008
This commit is contained in:
@@ -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;
|
||||
}
|
||||
}
|
||||
+85
@@ -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;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user