Commit aef2e88c authored by Hsinli's avatar Hsinli

callrisk pull

parent 6042ffc4
'use strict';
const moment = require('moment');
module.exports = app => {
const { INTEGER, STRING, DATE, TEXT } = app.Sequelize;
const CreditYysOrder = app.prometheusModel.define('credit_yys_order', {
id: {
type: INTEGER,
primaryKey: true,
autoIncrement: true
},
tyorder_idpe: INTEGER,
user_id: STRING,
app_user_id: STRING,
app_id: STRING,
app_type_id: STRING,
name: STRING,
phone: STRING,
id_card: STRING,
password: STRING,
r_order_sn: STRING,
operator: TEXT,
valid: INTEGER,
created_at: {
type: DATE,
get() {
const date = this.getDataValue('created_at');
return date ? moment(date).format('YYYY-MM-DD HH:mm:ss') : undefined;
},
},
updated_at: {
type: DATE,
get() {
const date = this.getDataValue('updated_at');
return date ? moment(date).format('YYYY-MM-DD HH:mm:ss') : undefined;
},
}
}, {
timestamps: false,
tableName: 'credit_yys_order',
});
return CreditYysOrder;
};
...@@ -303,7 +303,6 @@ class ApplyService extends Service { ...@@ -303,7 +303,6 @@ class ApplyService extends Service {
valid: 1 valid: 1
} }
await ctx.prometheusModel.CreditOrder.update(updateOrderData, { where: { id: order.id } }); await ctx.prometheusModel.CreditOrder.update(updateOrderData, { where: { id: order.id } });
// let currentOrder = await ctx.prometheusModel.CreditOrder.findOne({ where: { id: order.id } });
await ctx.service.credit.order.logOrder(order.id); await ctx.service.credit.order.logOrder(order.id);
return ret; return ret;
...@@ -314,49 +313,57 @@ class ApplyService extends Service { ...@@ -314,49 +313,57 @@ class ApplyService extends Service {
* @param {*} inputParams * @param {*} inputParams
*/ */
async applyCallrisk(input) { async applyCallrisk(input) {
const { ctx } = this;
const { ctx, app } = this; const { name, phone, id_card, password } = input;
const { name, phone, id_card } = input;
const user_id = ctx.userId; const user_id = ctx.userId;
const app_type_id = ctx.appTypeId; const app_type_id = ctx.appTypeId;
const app_user_id = ctx.appUserId; const app_user_id = ctx.appUserId;
const app_id = ctx.appId; const app_id = ctx.appId;
const type = TypeConfigp['callrisk'];//个人通话类型 const type = TypeConfigp['callrisk'];//个人通话类型
//数盒魔方三要素校验
await ctx.service.credit.common.shuhemofangCheck('callrisk', input);
//判断用户当前三要素是否是二次查询未支付订单 //判断用户当前三要素是否是二次查询未支付订单
const check_second_ret = await this.checkSecond(); const check_second_ret = await this.checkSecond();
if (!check_second_ret.order_id) { if (!check_second_ret.order_id) {
return check_second_ret; return check_second_ret;
} }
let ret = {
order_id,
report_id: null,
first: check_second_ret.first,
second: check_second_ret.second,
order_sn: null
}
//生成订单 //生成订单
const order_data = { type, name, phone, id_card }; const order_data = { type, name, phone, id_card };
const order = await ctx.service.credit.order.createOrder(order_data); const order = await ctx.service.credit.order.createOrder(order_data);
order_id = order.id; let order_id = order.id;
//获取报告数据
// await this.createApply();
// const callrisk_info = result.data.data.callrisk;
// const report = await ctx.service.credit.blacklist.createReport({ name, phone, id_card }, callrisk_info);
// report_id = report.id;
//更新订单 //运营商API.创建订单号
//生成order_no let orderSnInfo = await ctx.service.credit.yys.getOrderSn(phone);
const order_no = await ctx.service.credit.common.getOrdertNo(TypeConfigFlip[type], order_id); if (orderSnInfo.code !== 0) {
const state_time = moment().format('YYYY-MM-DD HH:mm:ss'); ctx.failed('getOrderSn error msg:' + orderSnInfo.msg);
const update_order_data = {
order_no,
apply_id: apply.id,
report_id,
state: '待支付',
state_time,
valid: 1
} }
await ctx.prometheusModel.CreditOrder.update(update_order_data, { where: { id: order.id } });
const current_order = await ctx.prometheusModel.CreditOrder.findOne({ where: { id: order.id } });
await ctx.service.credit.order.logOrder(order.id);
let addYysOrder = {
order_id,
user_id,
app_type_id,
app_user_id,
app_id,
name,
phone,
id_card,
password,
r_order_sn: orderSnInfo.data.orderSn,
order_sn_operator: orderSnInfo.data.operator
}
let YysOrderInfo = await ctx.prometheusModel.CreditYysOrder.create(addYysOrder);
ret.order_sn = orderSnInfo.data.orderSn;
return ret; return ret;
} }
...@@ -399,7 +406,6 @@ class ApplyService extends Service { ...@@ -399,7 +406,6 @@ class ApplyService extends Service {
//判断用户当前三要素是否是二次查询未支付订单 //判断用户当前三要素是否是二次查询未支付订单
async checkSecond(input) { async checkSecond(input) {
const { ctx } = this; const { ctx } = this;
const { name, phone, id_card } = input; const { name, phone, id_card } = input;
const { user_id } = this; const { user_id } = this;
......
'use strict';
const Service = require('egg').Service;
const moment = require('moment');
const _ = require('lodash');
class YysService extends Service {
/**
* 创建订单号
* @param {*}
*/
async getOrderSn(phone) {
const { ctx } = this;
let params = {
phone: phone
}
let url = this.config.NODE_BASE_URL + '/getorderSn' + '?appKey=' + this.config.YYS_APP_KEY;
let resp = await ctx.helper.send_request(url, params, { method: 'POST' });
ctx.logger.info({ url: JSON.stringify(resp) });
return resp.data;
}
/**
* 获取验证码
* @param {*}
*/
async getCode(params) {
const { ctx } = this;
let params = {
orderSn: params.order_sn,
data: {
password: params.password
}
}
let url = this.config.NODE_BASE_URL + '/getCode' + '?appKey=' + this.config.YYS_APP_KEY;
let resp = await ctx.helper.send_request(url, params, { method: 'POST' });
ctx.logger.info({ url: JSON.stringify(resp) });
return resp.data;
}
/**
* 提交任务
* @param {*} params 需要提交的参数,根据getOrderSn的operator来确定需要的参数
*/
async commit(params) {
const { ctx } = this;
let params = {
orderSn: params.order_sn,
params: {
password: params.password
}
}
let url = this.config.NODE_BASE_URL + '/commit' + '?appKey=' + this.config.YYS_APP_KEY;
let resp = await ctx.helper.send_request(url, params, { method: 'POST' });
ctx.logger.info({ url: JSON.stringify(resp) });
return resp.data;
}
/**
* 查询任务状态
* @param {*} orderSn 创建订单时生成的订单号
*/
async query(orderSn) {
const { ctx } = this;
let params = {
orderSn: orderSn,
}
let url = this.config.NODE_BASE_URL + '/query' + '?appKey=' + this.config.YYS_APP_KEY;
let resp = await ctx.helper.send_request(url, params, { method: 'POST' });
ctx.logger.info({ url: JSON.stringify(resp) });
return resp.data;
}
}
module.exports = YysService;
...@@ -17,7 +17,7 @@ module.exports = appInfo => { ...@@ -17,7 +17,7 @@ module.exports = appInfo => {
domainWhiteList: [], domainWhiteList: [],
}; };
config.middleware = [ 'errorHandler', 'deviceLogin', 'deviceInit', 'responseSet' ]; config.middleware = ['errorHandler', 'deviceLogin', 'deviceInit', 'responseSet'];
// config.middleware = []; // config.middleware = [];
exports.multipart = { exports.multipart = {
...@@ -161,5 +161,10 @@ module.exports = appInfo => { ...@@ -161,5 +161,10 @@ module.exports = appInfo => {
config.TX_LBS_DISTANCE_URL = 'https://apis.map.qq.com/ws/distance/v1/'; // 距离计算(一对多) config.TX_LBS_DISTANCE_URL = 'https://apis.map.qq.com/ws/distance/v1/'; // 距离计算(一对多)
config.TX_LBS_ADDRESS_URL = 'https://apis.map.qq.com/ws/geocoder/v1/'; // 地址解析;逆地址解析 config.TX_LBS_ADDRESS_URL = 'https://apis.map.qq.com/ws/geocoder/v1/'; // 地址解析;逆地址解析
//我的信用-通化检测
config.YYS_APP_KEY = 'A86BB96F55B64DCE87A46E919A347993';
return config; return config;
}; };
...@@ -147,6 +147,8 @@ module.exports = appInfo => { ...@@ -147,6 +147,8 @@ module.exports = appInfo => {
config.TX_LBS_DISTANCE_URL = process.env.TX_LBS_DISTANCE_URL; // 距离计算(一对多) config.TX_LBS_DISTANCE_URL = process.env.TX_LBS_DISTANCE_URL; // 距离计算(一对多)
config.TX_LBS_ADDRESS_URL = process.env.TX_LBS_ADDRESS_URL; // 地址解析;逆地址解析 config.TX_LBS_ADDRESS_URL = process.env.TX_LBS_ADDRESS_URL; // 地址解析;逆地址解析
//我的信用-通化检测
config.YYS_APP_KEY = process.env.YYS_APP_KEY;
return config; return config;
}; };
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment