Commit d7fe983a authored by 何娜's avatar 何娜

回调

parent 18f859c9
Pipeline #6020 passed with stage
in 8 seconds
...@@ -143,11 +143,13 @@ class TaskController extends Controller { ...@@ -143,11 +143,13 @@ class TaskController extends Controller {
//任务回调接口 //任务回调接口
async handleCallback() { async handleCallback() {
const { ctx, service } = this; const { ctx, service } = this;
ctx.logger.info('-----------------handleCallback_into'); ctx.logger.info('---------handleCallback_into------------', ctx.request.body);
const { taskId } = ctx.request.body; const { taskId } = ctx.request.body;
const result = await service.task.fetchTask({ taskId }); const result = await service.task.fetchTask({ taskId });
ctx.logger.info('---------handleCallback_result----------', result);
ctx.success(); ctx.success();
const order = await service.order.getOneByTaskId(taskId); const order = await service.order.getOneByTaskId(taskId);
ctx.logger.info('---------handleCallback_order----------', order);
if (!order) { if (!order) {
ctx.logger.error('handleCallback', taskId, '未查询到此任务'); ctx.logger.error('handleCallback', taskId, '未查询到此任务');
return return
...@@ -195,13 +197,16 @@ class TaskController extends Controller { ...@@ -195,13 +197,16 @@ class TaskController extends Controller {
note: { code: 0, msg: '任务成功', data: { data: null, loginParam: null, cityId, orderSn: orderId } }, note: { code: 0, msg: '任务成功', data: { data: null, loginParam: null, cityId, orderSn: orderId } },
}; };
try { try {
const insertData = await service.washData.wash(result); // const insertData = await service.washData.wash(result);
insertData.orderId = orderId; result.cityId = Number(result.data.cityId);
insertData.cityName = await service.scripts.fetchScriptName(insertData.cid); result.cityName = 'unknown';
insertData.taskId = Number(taskId); result.data = JSON.parse(result.data.data);
insertData.appKey = appKey; result.orderSn = orderId;
delete insertData.code; result.orderId = orderId;
await service.storage.write(insertData); result.appKey = appKey;
delete result.code;
delete result.msg;
await service.storage.write(result);
await service.cache.set({ await service.cache.set({
key: orderId, key: orderId,
value: taskNote, value: taskNote,
......
...@@ -7,12 +7,11 @@ class WashDataService extends Service { ...@@ -7,12 +7,11 @@ class WashDataService extends Service {
super(ctx); super(ctx);
const { config } = this; const { config } = this;
this.washUrl = config.washAPI.host + config.washAPI.washUrl; this.washUrl = config.washAPI.host + config.washAPI.washUrl;
this.clearGjj = ['ID', 'phone', 'birthday', 'email', 'address', 'card', 'deposit_base', 'person_rate', 'company_rate', 'marriage', 'sex', 'company_id'];
this.clearLoan = ['name', 'ID', 'warning_rate', 'fund_date', 'bank', 'phone', 'address', 'past_due', 'past_principle', 'past_interest', 'past_period', 'history_past_period', 'history_past_amount', 'assure_style', 'house_type', 'debit_account', 'left_period'];
} }
async wash(data) { async wash(data) {
const { app, washUrl, ctx } = this; const { app, washUrl } = this;
const rawdata = this._switchData(data); const rawdata = this._switchData(data);
if (!washUrl) return rawdata;
const washData = await app.curl(washUrl, const washData = await app.curl(washUrl,
{ {
charset: 'utf-8', charset: 'utf-8',
...@@ -23,49 +22,25 @@ class WashDataService extends Service { ...@@ -23,49 +22,25 @@ class WashDataService extends Service {
contentType: 'json', contentType: 'json',
}); });
if (washData.status !== 200) { if (washData.status !== 200) {
ctx.logger.error(`【washData】url${washUrl} ,params`, rawdata, washData);
throw new Error('清洗数据出错'); throw new Error('清洗数据出错');
} }
if (washData.data.code !== 0) { if (washData.data.code !== 0) {
ctx.logger.error(`【washData】url${washUrl} ,params`, rawdata, washData.data);
throw new Error('清洗数据出错'); throw new Error('清洗数据出错');
} }
washData.data.data.general_analyzed_data.overdueClassify = {};
washData.data.data.general_analyzed_data.loanClassify = {};
washData.data.data.general_analyzed_data.blacklist = {};
return washData.data; return washData.data;
} }
_switchData(data) { _switchData(data, appKey = '', orderId = '') {
const tmp = data.data; const tmp = data.data;
const bar = {}; const bar = {};
bar.taskId = tmp.taskId; bar.taskId = tmp.taskId;
bar.cityId = tmp.cityId; bar.cityId = tmp.cityId;
bar.data = JSON.parse(tmp.data); bar.data = JSON.parse(tmp.data);
bar.orderID = 'ttt'; bar.orderID = orderId;
bar.appKey = ''; bar.appKey = appKey;
return bar; return bar;
} }
dealData(data, passID = false) {
const { clearGjj, clearLoan } = this;
delete data.data.general_analyzed_data;
for (let gjjItem of data.data.gjj_data) {
for (let text of clearGjj) {
if (!(passID && text == 'ID')) {
delete gjjItem.gjj_brief[text];
}
}
delete gjjItem.gjj_account_analyzed_data;
}
for (let loanItem of data.data.loan_data) {
for (let text of clearLoan) {
delete loanItem.loan_brief[text];
}
}
return data;
}
} }
module.exports = WashDataService; module.exports = WashDataService;
\ No newline at end of file
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