Commit cdaf4ed0 by 兰国旗

baidureg

parent e7b7ea0c
//百度工商注册
var APIBase = require("../../api.base");
var system = require("../../../system");
var settings = require("../../../../config/settings");
class RegCenterOrder extends APIBase {
constructor() {
super();
this.regCenterOrderSve = system.getObject("service.common.regCenterOrderSve");
}
/**
* 接口跳转-POST请求
* action_process 执行的流程
* action_type 执行的类型
* action_body 执行的参数
*/
async springBoard(pobj, qobj, req) {
if (!pobj.actionType) {
return system.getResult(null, "actionType参数不能为空");
}
var result = await this.opActionProcess(pobj, pobj.actionType, req);
return result;
}
async opActionProcess(pobj, action_type, req) {
var opResult = null;
switch (action_type) {
//-----------接入百度reg------start----laolan--2020.12.17----------------------------
case "submitRegNeed"://提交需求
opResult = await this.regCenterOrderSve.submitRegNeed(pobj, pobj.actionBody);
break;
case "regFeedbackSubmit"://接收方案反馈信息
pobj.actionType = "regFeedbackSubmit";
opResult = await this.regCenterOrderSve.reqCenterOrderRegApi(pobj);
break;
case "regOrderStatus"://reg方案更新
opResult = await this.regCenterOrderSve.regOrderStatus(pobj, pobj.actionBody);
if (opResult.status == 0 && pobj.actionBody.status == 1) {
opResult = await self.centerorderSve.regPaySuccess(pobj, pobj.actionBody);
}
break;
case "regOrderClose"://关闭reg订单
opResult = await this.regCenterOrderSve.regOrderClose(pobj, pobj.actionBody);
break;
case "getItemByChannelSolutionNo":
opResult = await this.regCenterOrderSve.getItemByChannelSolutionNo(pobj, pobj.actionBody);
break;
case "getSolutionByChannelOrderNo"://根据渠道订单获取方案信息
opResult = await this.regCenterOrderSve.getSolutionByChannelOrderNo(pobj, pobj.actionBody);
break;
case "submitBdRegSolution"://方案提交
opResult = await this.regCenterOrderSve.submitBdRegSolution(pobj);
break;
case "writeRegCommunicationLog"://新增沟通记录
opResult = await this.regCenterOrderSve.writeRegCommunicationLog(pobj);
break;
case "queryExpertRegCommunicationLogs"://获取沟通记录
opResult = await this.regCenterOrderSve.queryExpertRegCommunicationLogs(pobj);
break;
case "updateOrdertatus"://提交交付信息/修改订单状态
opResult = await this.regCenterOrderSve.updateOrdertatus(pobj);
break;
case "closeBdRegNeed"://需求关闭
opResult = await this.regCenterOrderSve.closeBdRegNeed(pobj);
break;
// case "closeRegSolution"://服务商方案关闭
// opResult = await this.regCenterOrderSve.closeRegSolution(pobj);
// break;
// case "closeOrderDelivery"://交付商关闭交付单
// opResult = await this.regCenterOrderSve.closeOrderDelivery(pobj);
// break;
//-----------接入百度reg------end----------------------------
default:
opResult = system.getResult(null, "action_type参数错误");
break;
}
return opResult;
}
}
module.exports = RegCenterOrder;
\ No newline at end of file
//百度工商注册
var APIBase = require("../../api.base");
var system = require("../../../system");
const regCfg = require("./regCfg");
class Consultation extends APIBase {
constructor() {
super();
this.gatewaypushlogSve = system.getObject("service.common.gatewaypushlogSve");
}
async submit(pobj,req) {
if(!pobj.appInfo || !pobj.appInfo.uapp_key || !pobj.appInfo.uapp_secret){
return regCfg.getResultFail("未知应用或应用未启用");
}
if (!pobj.intentionBizId) {
return regCfg.getResultFail("intentionBizId不能为空");
}
if (!pobj.phone) {
return regCfg.getResultFail("mobile不能为空");
}
if (!pobj.consultType) {
return regCfg.getResultFail("consultType不能为空");
}
pobj.type = pobj.consultType;
pobj.mobile = pobj.phone;
pobj.action_type = "submitRegNeed";
if (pobj.area) {
pobj.area = regCfg.baiduArea[pobj.area]
}
if (!pobj.area) {
return regCfg.getResultFail("area参数错误");
}
var param = {
requestId: req.requestId || regCfg.getUUID(),
requestUrl: "/ic/consultation/submit",
requestjson: JSON.stringify(pobj),//请求地址
pushUrl: "/action/intentionapi/springBoard",//调用地址
pushActionType: "submitRegNeed",//调用参数
pushtimes: 0,//推送次数
pushStatus: "wts",//推送状态
}
await this.gatewaypushlogSve.create(param);
return regCfg.getResultSuccess(param.requestId);
}
}
module.exports = Consultation;
\ No newline at end of file
//百度工商注册
var APIBase = require("../../api.base");
var system = require("../../../system");
const regCfg = require("./regCfg");
class Feedback extends APIBase {
constructor() {
super();
this.gatewaypushlogSve = system.getObject("service.common.gatewaypushlogSve");
}
//需求反馈
async submit(pobj,req) {
if(!pobj.appInfo || !pobj.appInfo.uapp_key || !pobj.appInfo.uapp_secret){
return regCfg.getResultFail("未知应用或应用未启用");
}
if (!pobj.intentionBizId) {
return regCfg.getResultFail("intentionBizId不能为空");
}
if (!pobj.description) {
return regCfg.getResultFail("description不能为空");
}
if (!pobj.intentionStatus) {
return regCfg.getResultFail("intentionStatus不能为空");
}
pobj.action_type = "regFeedbackSubmit";
var param = {
requestId: req.requestId || regCfg.getUUID(),
requestUrl: "/ic/feedback/submit",
requestjson: JSON.stringify(pobj),//请求地址
pushUrl: "/action/intentionapi/springBoard",//调用地址
pushActionType: "regFeedbackSubmit",//调用参数
pushtimes: 0,//推送次数
pushStatus: "wts",//推送状态
}
await this.gatewaypushlogSve.create(param);
return regCfg.getResultSuccess(param.requestId);
}
}
module.exports = Feedback;
\ No newline at end of file
//百度工商注册
var APIBase = require("../../api.base");
var system = require("../../../system");
const regCfg = require("./regCfg");
class Order extends APIBase {
constructor() {
super();
this.gatewaypushlogSve = system.getObject("service.common.gatewaypushlogSve");
}
//状态变更
async notify(pobj,req) {
if(!pobj.appInfo || !pobj.appInfo.uapp_key || !pobj.appInfo.uapp_secret){
return regCfg.getResultFail("未知应用或应用未启用");
}
if(!pobj.isDirectBuy || pobj.isDirectBuy == 0){
pobj.isDirectBuy=0;
}
if (!pobj.mainOrderNo) {
return regCfg.getResultFail("mainOrderNo不能为空");
}
var i= 0;
var orderLength = pobj.subOrderList.lenght;
for(i=0;i<=orderLength;i++){
if (!pobj.subOrderList[i].orderNo) {
return regCfg.getResultFail("orderNo不能为空");
}
if (pobj.isDirectBuy==0 && !pobj.subOrderList[i].bizId) {
return regCfg.getResultFail("非直接下单bizId不能为空");
}
if (pobj.isDirectBuy==1 && !pobj.subOrderList[i].phone) {
return regCfg.getResultFail("直接下单phone不能为空");
}
if (pobj.isDirectBuy==1 && !pobj.subOrderList[i].consultType) {
return regCfg.getResultFail("直接下单consultType不能为空");
}
// if (pobj.subOrderList[i].area) {
// pobj.subOrderList[i].area = regCfg.baiduArea[pobj.subOrderList[i].area]
// }
if (!pobj.subOrderList[i].area) {
return regCfg.getResultFail("area参数错误");
}
}
pobj.status = 1;
pobj.action_type = "regOrderStatus";
var param = {
requestId: req.requestId || regCfg.getUUID(),
requestUrl: "/ic/order/notify",
requestjson: JSON.stringify(pobj),//请求地址
pushUrl: "/action/intentionapi/springBoard",//调用地址
pushActionType: "regOrderStatus",//调用参数
pushtimes: 0,//推送次数
pushStatus: "wts",//推送状态
}
await this.gatewaypushlogSve.create(param);
return regCfg.getResultSuccess(param.requestId);
}
async close(pobj,req){
if(!pobj.appInfo || !pobj.appInfo.uapp_key || !pobj.appInfo.uapp_secret){
return regCfg.getResultFail("未知应用或应用未启用");
}
if (!pobj.orderNo) {
return regCfg.getResultFail("orderNo不能为空");
}
pobj.channelOrderNo = pobj.orderNo;
pobj.action_type = "regOrderClose";
var param = {
requestId: req.requestId || regCfg.getUUID(),
requestUrl: "/ic/order/close",
requestjson: JSON.stringify(pobj),//请求地址
pushUrl: "/action/intentionapi/springBoard",//调用地址
pushActionType: "regOrderClose",//调用参数
pushtimes: 0,//推送次数
pushStatus: "wts",//推送状态
}
await regCfg.gatewaypushlogSve.create(param);
return regCfg.getResultSuccess(param.requestId);
}
}
module.exports = Order;
\ No newline at end of file
//百度配置
const uuidv4 = require('uuid/v4');
var regCfg = {
//工商注册城市对照表
baiduArea = {
"310100":"上海",
"441900":"东莞",
"440600":"佛山",
"110100":"北京",
"320100":"南京",
"360100":"南昌",
"320600":"南通",
"331000":"台州",
"340100":"合肥",
"330400":"嘉兴",
"210200":"大连",
"120100":"天津",
"140100":"太原",
"330200":"宁波",
"320400":"常州",
"440100":"广州",
"320300":"徐州",
"510100":"成都",
"321000":"扬州",
"320200":"无锡",
"530100":"昆明",
"330100":"杭州",
"420100":"武汉",
"210100":"沈阳",
"370100":"济南",
"440300":"深圳",
"330300":"温州",
"370600":"烟台",
"350100":"福州",
"330600":"绍兴",
"320500":"苏州",
"610100":"西安",
"520100":"贵阳",
"410100":"郑州",
"500100":"重庆",
"330700":"金华",
"220100":"长春",
"430100":"长沙",
"370200":"青岛",
"230100":"哈尔滨",
"130100":"石家庄"
},
baiduAreaCode = {
"上海": "310100",
"东莞": "441900",
"佛山": "440600",
"北京": "110100",
"南京": "320100",
"南昌": "360100",
"南通": "320600",
"台州": "331000",
"合肥": "340100",
"嘉兴": "330400",
"大连": "210200",
"天津": "120100",
"太原": "140100",
"宁波": "330200",
"常州": "320400",
"广州": "440100",
"徐州": "320300",
"成都": "510100",
"扬州": "321000",
"无锡": "320200",
"昆明": "530100",
"杭州": "330100",
"武汉": "420100",
"沈阳": "210100",
"济南": "370100",
"深圳": "440300",
"温州": "330300",
"烟台": "370600",
"福州": "350100",
"绍兴": "330600",
"苏州": "320500",
"西安": "610100",
"贵阳": "520100",
"郑州": "410100",
"重庆": "500100",
"金华": "330700",
"长春": "220100",
"长沙": "430100",
"青岛": "370200",
"哈尔滨":"230100",
"石家庄":"130100"
},
channel_type_code = {
"gszc" : "baidu.gszc",
"kzfw" : "baidu.kzfw",
"gsbg" : "baidu.gsbg",
"gsnb" : "baidu.gsnb",
"sksq" : "baidu.sksq",
"swbd" : "baidu.swbd"
},
//区分渠道的uappid
uappId = {
'ali':18,
'baidu':44
},
//返回结果配置
getUUID() {
var uuid = uuidv4();
var u = uuid.replace(/\-/g, "");
return u;
},
getResultSuccess(requestId) {
return {
"status": 0,
"msg": "success",
"data":null,
"requestId": requestId
};
},
getResultFail(errmsg) {
return {
"status":-1,
"msg": errmsg,
"requestId": this.getUUID(),
"data":null,
"bizmsg":"empty"
};
}
}
module.exports = regCfg;
\ No newline at end of file
//百度工商注册
var APIBase = require("../../api.base");
var system = require("../../../system");
var settings = require("../../../../config/settings");
const regCfg = require("./regCfg");
class Tool extends APIBase {
constructor() {
super();
this.gatewaypushlogSve = system.getObject("service.common.gatewaypushlogSve");
}
async icname(params, req) {
let obj = {
cityname: params.CityName,
keyword: params.KeyWord,
btname: params.IndustryType,
orgname: params.OrganizationType,
searchtype: params.SearchType || '',
sitcity: params.SitCity || '',
};
let result = await this.execPostByTimeOut(req, obj, settings.checkIcNameUrl());
console.log('result--工商核名---',result)
return result;
}
}
module.exports = Tool;
\ No newline at end of file
......@@ -6,7 +6,6 @@ class Need extends APIBase {
super();
this.utilsNeedSve = system.getObject("service.utilsSve.utilsNeedSve");
this.centerorderSve = system.getObject("service.common.centerorderSve");
this.utilsNeedSve2 = system.getObject("service.utilsSve.utilsNeedSve2");
}
......@@ -48,6 +47,8 @@ class Need extends APIBase {
opResult = await this.utilsNeedSve.needDetailByChannelNo(pobj, pobj.actionBody);
break;
case "getItemByChannelNeedNo":
opResult = await this.utilsNeedSve.getItemByChannelNeedNo(pobj,pobj.actionBody);
break;
case "getSolutionByChannelSolutionNo":
opResult = await this.utilsNeedSve.getItemByChannelNeedNo(pobj, pobj.actionBody);
break;
......
......@@ -361,8 +361,8 @@ class QcCenterOrderService extends AppServiceBase {
var result = await this.restPostUrl(pobj, reqUrl);
console.log('www+++result', result)
if (result.status == 0) {
if (result.data) {
pobj.actionBody.orderNo = result.data;
if (result.data && result.data.orderNo) {
pobj.actionBody.orderNo = result.data.orderNo;
var orderrtn = await self.utilsOrderSve.delOrder(pobj, pobj.actionBody);
if (orderrtn.status < 0) {
return system.getResultFail(-5022, "订单关闭失败");
......
//工商注册
const system = require("../../../system");
var settings = require("../../../../config/settings");
const AppServiceBase = require("../../app.base");
const regCfg = require("../../../api/impl/ic/regCfg");
class RegCenterOrderService extends AppServiceBase {
constructor() {
super();
this.centerOrderUrl = settings.centerOrderUrl();
this.execClient = system.getObject("util.execClient");
this.cacheManager = system.getObject("db.common.cacheManager");
this.utilsPushSve = system.getObject("service.utilsSve.utilsPushSve");
this.opPushQueueUrl = settings.opPushQueueUrl();
this.baiduclient = system.getObject("util.baiduClient");
this.utilsOrderSve = system.getObject("service.utilsSve.utilsOrderSve");
};
//调用center-order
async reqCenterOrderApi(pobj, reqUrl) {
var url = this.centerOrderUrl + "action/regCenterOrder/springBoard";
if (reqUrl) {
var url = this.centerOrderUrl + reqUrl;
}
var rtn = await this.execClient.execPost(pobj, url);
var data = JSON.parse(rtn.stdout);
return data;
}
//调用center-order reg需求反馈
async reqCenterOrderRegApi(pobj, reqUrl) {
var url = this.centerOrderUrl + "action/regCenterOrderSve/springBoard";
if (reqUrl) {
var url = this.centerOrderUrl + reqUrl;
}
var self = this;
pobj.actionType = "regFeedbackSubmit";
if (pobj.actionBody && pobj.actionBody.intentionStatus) {
pobj.intentionStatus = pobj.actionBody.intentionStatus;
}
var rtn = await this.execClient.execPost(pobj, url);
if (pobj.intentionStatus) {
// 如果需求当前字段为5(已关闭)则通知fq
if (pobj.intentionStatus == 5) {
self.utilsPushSve.aliBusiness2Fq(pobj, "pushCloseICPNeed");
}
}
var data = JSON.parse(rtn.stdout);
return data;
}
//-----------接入百度reg-----start--------laolan---2020.12.17----------------------
async regPaySuccess(pobj) {
var sobj = {
actionType: "getRegProduce",
actionBody: { typeCode: pobj.actionBody.channelTypeCode, province: pobj.actionBody.province },
appInfo: pobj.appInfo,
actionProcess: pobj.actionProcess
}
var url = settings.centerAppUrl() + "action/opProduct/springBoard";
var rtn = await this.execClient.execPost(sobj, url);
if (!rtn || !rtn.stdout) {
return system.getResultFail(-5010, "产品查询失败");
}
var data = JSON.parse(rtn.stdout);
if (data.status != 0) {
return system.getResultFail(-5010, "产品查询失败");
}
// pobj.actionBody = data.data;
// pobj.actionBody.orderNo = pobj.actionBody.bizId;
pobj.actionBody.totalSum = data.data.price;
pobj.actionBody.orderPrice = data.data.price;
pobj.actionBody.payTotalSum = data.data.price;
pobj.actionBody.payCode = data.data.payCode;
pobj.actionBody.channelItemCode = data.data.channelItemCode;
pobj.actionBody.channelNeedNo = data.data.channelNeedNo;
pobj.actionBody.needNo = data.data.needNo;
pobj.actionBody.quantity = 1;
pobj.actionBody.channelOrder = {
channelServiceNo: pobj.actionBody.orderNo,
channelOrderNo: pobj.actionBody.orderNo,
orderStatus: 2
}
var orderrtn = await this.utilsOrderSve.addOrder(pobj, pobj.actionBody);
if (orderrtn.status != 0 && orderrtn.status != -1) {
return system.getResultFail(-5012, "订单创建失败");
}
if (orderrtn.data) {
pobj.actionBody.orderNo = orderrtn.data.orderNo;
}
pobj.actionBody.channelSolutionNo = pobj.actionBody.bizId;
pobj.actionType = "receiveSolutionPayInfoNew";
var url = settings.centerOrderUrl() + "action/regCenterOrder/springBoard";
var solutionrtn = await this.execClient.execPost(pobj, url);
if (!solutionrtn || !solutionrtn.stdout) {
return system.getResultFail(-5011, "方案查询失败");
}
var solutiondata = JSON.parse(solutionrtn.stdout);
if (solutiondata.status != 0) {
return system.getResultFail(-5011, "方案查询失败");
}
if (!solutiondata.data) {
return system.getResultFail(-5012, "方案查询数据为空");
}
if (solutiondata.data && solutiondata.data.channelNeedNo) {
pobj.actionBody.needId = solutiondata.data.channelNeedNo;
}
if (pobj.actionBody.channelItemCode) {
pobj.actionBody.channelItemCode = regCfg.channel_type_code[pobj.actionBody.channelItemCode];
}
var fqobj = {
actionBody: {
area: pobj.actionBody.province,
idempotentSource: pobj.actionBody.regType,
orderNo: pobj.actionBody.channelOrder.channelOrderNo,
orderPrice: Number(pobj.actionBody.orderPrice / 100),
phone: pobj.actionBody.publishMobile,
needId: solutiondata.data.channelNeedNo,
companyName:solutiondata.data.solutionContent.solution.CompanyName || ''
},
appInfo: pobj.appInfo
}
var baiduPushRes = await this.utilsPushSve.baiduBusiness2Fq(fqobj, "pushOrderICPBusinessNew");
var deliveryObj = {
actionBody: {
orderNo: orderrtn.data.orderNo,//pobj.actionBody.channelOrder.channelOrderNo,
needsolution: solutiondata.data.solutionContent,
channelNeedNo: solutiondata.data.channelNeedNo,
channelSolutionNo: solutiondata.data.channelSolutionNo,
skuCode: data.data.payCode,
servicer: {
code: 'gsb',
name: '公司宝'
}
},
appInfo: pobj.appInfo
};
if(pobj.actionBody.isDirectBuy && pobj.actionBody.isDirectBuy==1){//直接下单需执行添加订单业务员操作
if(baiduPushRes && baiduPushRes.status==0){
if(baiduPushRes.data && baiduPushRes.data.data){
var resData = baiduPushRes.data.data;
var salesmanInfo = {
salesmanName:resData.orderList && resData.orderList.length>0?resData.orderList[0].operatorName:"",
salesmanChannelId:resData.orderList && resData.orderList.length>0?resData.orderList[0].operator:"",
};
var salesmanObj={
appInfo:pobj.appInfo,
actionType:"addRegSalesmanInfo",//添加业务员信息
actionBody:{salesmanInfo:salesmanInfo,orderNo:orderrtn.data.orderNo}
};
var url = settings.centerOrderUrl() + "action/regCenterOrder/springBoard";
var addRes = await this.execClient.execPost(salesmanObj, url);
if (addRes && addRes.stdout) {
var salesmanRes = JSON.parse(addRes.stdout);
if (salesmanRes.status == 0) {
deliveryObj.actionBody.needsolution = salesmanRes.data;
await this.utilsPushSve.baiduBusiness2Delivery(deliveryObj, "pushDeliveryOrder");
}
}
}
}
}else{
this.utilsPushSve.baiduBusiness2Delivery(deliveryObj, "pushDeliveryOrder");
}
return system.getResultSuccess();
}
// /**
// * 获取方案详情
// * @param {*} pobj
// * @param {*} actionBody bizId 渠道方案号
// */
// async getSolutionByChannelOrderNo(pobj, actionBody) {
// if (!actionBody.orderNo) {
// return system.getResult(null, "actionBody.orderNo can not be empty,100390");
// }
// var reqUrl = this.centerOrderUrl + "action/need/springBoard";
// var itemResult = await this.restPostUrl(pobj, reqUrl);
// return itemResult;
// }
/**
* 获取需求详情
* @param {*} pobj
* @param {*} actionBody bizId 渠道方案号
*/
async getItemByChannelSolutionNo(pobj, actionBody) {
if (!actionBody.bizId) {
return system.getResult(null, "actionBody.bizId can not be empty,100390");
}
var reqUrl = this.centerOrderUrl + "action/regCenterOrderSve/springBoard";
var itemResult = await this.restPostUrl(pobj, reqUrl);
return itemResult;
}
/**
* 提交需求
* @param {*} pobj
* @param {*} actionBody
*/
async submitRegNeed(pobj, actionBody) {
if (!actionBody.intentionBizId) {
return system.getResult(null, "actionBody.intentionBizId can not be empty,100380");
}
var sobj = pobj;
sobj.actionType = "getProductTypeInfo";
var url = settings.centerAppUrl() + "action/opProduct/springBoard";
var rtn = await this.execClient.execPost(sobj, url);
if (!rtn || !rtn.stdout) {
return system.getResultFail(-5015, "需求類型查询失败");
}
var data = JSON.parse(rtn.stdout);
if (data.status != 0) {
return system.getResultFail(-5015, "需求類型查询失败");
}
pobj.actionBody.type_code = data.data.type_code;
pobj.actionBody.type_name = data.data.type_name;
pobj.actionBody.channel_type_code = data.data.channel_type_code;
pobj.actionBody.channel_type_name = data.data.channel_type_name;
pobj.actionBody.type = pobj.actionBody.channel_type_code;
if (pobj.actionBody.channel_type_code) {
pobj.actionBody.channel_type_code = regCfg.channel_type_code[pobj.actionBody.channel_type_code]
}
if (pobj.actionBody.description && pobj.actionBody.description.indexOf("备#") < 0) {
pobj.actionBody.level = "A";
} else {
// var levelurl = "http://106.13.228.212:8000/recProbability";
// var levelresult = await this.restPostUrl({ intentionBizId: pobj.actionBody.intentionBizId, type: pobj.actionBody.type, note: pobj.actionBody.description }, levelurl);
// if (levelresult.status == 0) {
// pobj.actionBody.level = levelresult.data.level;
// pobj.actionBody.probability = levelresult.data.per;
// } else {
// pobj.actionBody.level = "C"
// }
pobj.actionBody.level = "C"
}
if (pobj.actionBody.phone == "17319425791") {
pobj.actionBody.level = "F";
}
pobj.actionType = "submitRegNeed";
var reqUrl = this.centerOrderUrl + "action/need/springBoard";
var result = await this.restPostUrl(pobj, reqUrl);
if (result.status == 0) {
// var reqParams = {
// actionBody: pobj.actionBody,
// appInfo: pobj.appInfo
// }
// this.utilsPushSve.baiduBusiness2Delivery(reqParams, "addChance");
pobj.actionBody.description = pobj.actionBody.description + " 成交概率:" + pobj.actionBody.level
if (pobj.actionBody.probability) {
pobj.actionBody.description = pobj.actionBody.description + "(" + pobj.actionBody.probability + ") "
}
pobj.actionBody.idempotentId = pobj.actionBody.intentionBizId;
pobj.actionBody.idempotentSource = pobj.actionBody.type;
pobj.actionBody.customerName = pobj.actionBody.userName;
this.utilsPushSve.baiduBusiness2Fq(pobj, "pushNeedICPBusinessNew");
}
return result;
}
//状态更新
async regOrderStatus(pobj) {
var actionBody = pobj.actionBody;
var self = this;
if (actionBody.isDirectBuy && actionBody.isDirectBuy == 1) {
actionBody.bizId = actionBody.orderNo
}
if (!actionBody.bizId) {
return system.getResult(null, "actionBody.bizId can not be empty,100495");
}
actionBody.BizId = actionBody.bizId;
if (!actionBody.status) {
return system.getResult(null, "actionBody.status can not be empty,100495");
}
pobj.actionType = "receiveOrderStatusNotify";
var url = settings.centerOrderUrl() + "action/qcapi/springBoard";
var rtn = await this.restPostUrl(pobj, url);
if (actionBody.status == 2) {
var deliveryObj = {
actionBody: {
orderNo: rtn.data.orderNo,//pobj.actionBody.channelOrder.channelOrderNo,
needsolution: rtn.data.solutionContent,
channelNeedNo: rtn.data.channelNeedNo,
channelSolutionNo: rtn.data.channelSolutionNo,
servicer: {
code: 'gsb',
name: '公司宝'
}
},
appInfo: pobj.appInfo
}
this.utilsPushSve.baiduBusiness2Delivery(deliveryObj, "pushDeliveryOrder");
}
if (rtn.status == 0 && actionBody.status != 1 && actionBody.status != 2 && rtn.data) {
var tmpObj = {
actionBody: {
orderNo: rtn.data.orderNo,
channelNeedNo: rtn.data.channelNeedNo,
needsolution: rtn.data.solutionContent
},
appInfo: pobj.appInfo
}
this.utilsPushSve.baiduBusiness2Delivery(tmpObj, "pushDeliveryStatusNotify");
pobj.actionBody.orderNo = rtn.data.orderNo;
if (actionBody.status == 11) {
var orderrtn = await self.utilsOrderSve.delOrder(pobj, pobj.actionBody);
if (orderrtn.status < 0) {
return system.getResultFail(-5022, "订单关闭失败");
}
tmpObj.actionBody.orderNo = rtn.data.channelSolutionNo;
self.utilsPushSve.baiduBusiness2Fq(tmpObj, "pushOrderICPClose");
}
}//通知更新状态
return rtn;
}
//关闭reg订单
async regOrderClose(pobj) {
var actionBody = pobj.actionBody;
var self = this;
var url = settings.centerOrderUrl() + "action/qcapi/springBoard";
var rtn = await this.restPostUrl(pobj, url);
if (rtn.status == 0 && rtn.data) {
var channelOrderNo = pobj.actionBody.orderNo;
pobj.actionBody.orderNo = rtn.data.orderNo;
pobj.actionType="delOrder";
var orderrtn = await self.utilsOrderSve.delOrder(pobj, actionBody);
if (orderrtn.status < 0) {
return system.getResultFail(-5022, "订单关闭失败");
}
var tmpObj = {
actionBody: {
orderNo: rtn.data.orderNo,
channelNeedNo: rtn.data.channelNeedNo,
needsolution: rtn.data.solutionContent
},
appInfo: pobj.appInfo
}
this.utilsPushSve.baiduBusiness2Delivery(tmpObj, "pushDeliveryStatusNotify");
// tmpObj.actionBody.orderNo = channelOrderNo;
var tmpObj2 = {
actionBody: {
orderNo: channelOrderNo,
channelNeedNo: rtn.data.channelNeedNo,
needsolution: rtn.data.solutionContent
},
appInfo: pobj.appInfo
};
self.utilsPushSve.baiduBusiness2Fq(tmpObj2, "pushOrderICPClose");
}//通知更新状态
return rtn;
}
//提交reg注册方案
async submitSolution(pobj) {
var res = await this.reqCenterOrderApi(pobj, "action/regCenterOrder/springBoard");
if (res && res.status == 0 && res.data && res.data.needinfo && res.data.needsolution) {
var needinfo = res.data.needinfo;//需求信息
var needsolution = res.data.needsolution;//方案信息
var ab = pobj.actionBody;
if (typeof (ab.solutionContent) == "string") {
ab.solutionContent = JSON.parse(ab.solutionContent);
}
if (typeof (needsolution.solutionContent) == "string") {
needsolution.solutionContent = JSON.parse(needsolution.solutionContent);
}
var solution = needsolution.solutionContent.solution;
var self = this;
if(needinfo.uapp_id == regCfg.uappId.baidu){
//推送数据至baidu
solution.Area = regCfg.baiduAreaCode[solution.Area]
console.log('solution.Area++',solution.Area)
var pushObj = {
requirementId: needinfo.channelNeedNo,
companyName: solution.CompanyName,
companyAddress: solution.CompanyAddress,
area: solution.Area,
type:solution.IcpType
};
if (needsolution.channelSolutionNo) {
pushObj["bizId"] = needsolution.channelSolutionNo;
}
console.log('pushObj++',pushObj)
var pushBaiduRegSolution = await this.pushBaiduRegSolution(pushObj, needsolution.solutionNo, pobj.appInfo, self);
console.log('pushBaiduRegSolution+++',pushBaiduRegSolution)
}
this.logCtl.info({
appid: pobj.appInfo ? pobj.appInfo.uapp_id || "" : "",
appkey: pobj.appInfo ? pobj.appInfo.uapp_key || "" : "",
requestId: pobj.requestId || "",
op: "service/impl/common/regCenterOrderSve.js/submitSolution",
content: JSON.stringify(pobj),
resultInfo: JSON.stringify(needinfo),
optitle: "createSolution推送蜂擎获取的接口信息->aliBusiness2Delivery",
});
var reqParams = {
actionBody: {
intentionBizId: needinfo.channelNeedNo,
status: "createSolution"
},
appInfo: pobj.appInfo
}
await this.utilsPushSve.aliBusiness2Delivery(reqParams, "updateChanceStatus");
}
return res;
}
//推送reg方案
async pushBaiduRegSolution(pushObj, solutionNo, appInfo, self) {
console.log('pushObj++baidu+++',pushObj)
//推送方案信息
var pushRes = await self.baiduclient.baiduReqbyget({ path: "/api/bla/provider/plan", reqbody: pushObj });
console.log("pushRes++++",pushRes)
if (pushRes && pushRes.status == 0 && pushRes.data) {
var resData = pushRes.data;
if (resData.planId) {
var reqObj2 = {
actionType: "receiveProgrammeNo",
appInfo: appInfo,
actionBody: {
solutionNo: solutionNo,
solutionBizId: resData.planId
}
};
var a = await self.reqCenterOrderApi(reqObj2);//保存渠道方案id
console.log("保存渠道方案id aaaa++ ",a)
if (a && a.status == 0 && resData.path) {
var reqObj3 = {
actionType: "receiveIcpConfirmUrl",
appInfo: appInfo,
actionBody: {
solutionNo: solutionNo,
confirmUrl: resData.path
}
};
var url = await self.reqCenterOrderApi(reqObj3);//保存用户确认方案url
console.log('save confirmUrl ++ ',url)
return url;
}
}
}
}
//提交交付信息/修改订单状态
async updateOrdertatus(pobj) {
var res = await this.reqCenterOrderApi(pobj, "action/regCenterOrder/springBoard");
console.log('zzzzlllll+++++',res)
console.log('zzzzlllll++pobj+++',pobj)
if (res && res.status == 0 && res.data) {
var needsolution = res.data;//方案信息
var ab = pobj.actionBody;
if (typeof (ab.material) == "string") {
ab.material = JSON.parse(ab.material);
}
var material = ab.material;
if(res.data.uapp_id == regCfg.uappId.baidu){
//推送数据至百度
var BizId = needsolution.orderChannelNo;
console.log('BizId++',BizId)
var pushObj = {
"businessLicense" : {
"createdAt" : material.BusinessLicense.CreatedAt || "",
"enterpriseCode" :material.BusinessLicense.EnterpriseCode || "",
"legalRepresentative" :material.BusinessLicense.LegalRepresentative || "",
"address" :material.BusinessLicense.Address || "",
"registeredCapital" : material.BusinessLicense.RegisteredCapital || "",
"name" :material.BusinessLicense.Name || "",
"businessTerm" :material.BusinessLicense.BusinessTerm || "",
"type" : material.BusinessLicense.Type || "",
"scopeBusiness" :material.BusinessLicense.ScopeBusiness || ""
},
"partnerForeignInvestment": material.PartnerForeignInvestment || "",
"orderNo": BizId,
"domain": material.Domain,
"corporateName": material.CorporateName,
"includeForeignInvestment": material.IncludeForeignInvestment,
"partnerBusinessLicense": material.PartnerBusinessLicense,
"partnerIdCardList": material.PartnerIdCardList,
"partnerDomainCertificate": material.PartnerDomainCertificate,
"partnerPreviewOtherList": material.PartnerPreviewOtherList || [],
"partnerPlan": material.PartnerPlan || "",
"partnerLaw": material.PartnerLaw || "",
"partnerStampOtherList": material.PartnerStampOtherList || [],
"partnerSignOtherList": material.PartnerSignOtherList || [],
"partnerSignAndStampOtherList": material.PartnerSignAndStampOtherList || []
};
var self = this;
//推送交付信息/修改订单状态
var baidu = await self.baiduclient.baiduReqbyget({ path: "/api/bla/provider/license/material", reqbody: pushObj });
console.log('推送交付信息/修改订单状态baidu+++',baidu)
}
console.log('rsrsr++++------------++++',res)
return res
}
}
//通知交付状态变更
// async serviceProviderNotification(pobj) {
// console.log('zhuangtai ++++',pobj)
// var res = await this.reqCenterOrderApi(pobj, "action/regCenterOrder/springBoard");
// if (res && res.status == 0 && res.data) {
// if(res.data.uapp_id == regCfg.uappId.baidu){
// res.data.ApplicationStatus = baiduRegStatus[res.data.ApplicationStatus];
// console.log('res.data.channelOrderNo',res.data.channelOrderNo)
// //推送数据至百度
// var pushObj = {
// orderNo: res.data.channelOrderNo,
// status: res.data.ApplicationStatus
// };
// //推送状态变更
// var baidu = await this.baiduclient.baiduReqbyget({ path: "/api/bla/provider/license/update", reqbody: pushObj });
// console.log('res.data baidu +++++',baidu)
// return res;
// }
// }
// }
//-----------接入百度reg------end----------------------------------
}
module.exports = RegCenterOrderService;
\ No newline at end of file
......@@ -46,6 +46,14 @@ var settings = {
host:"gwgp-nbzljnwusrw.i.bdcloudapi.com"
};
},
//工商核名请求接口配置
checkIcNameUrl() {
if (this.env === 'localhost') {
return 'http://127.0.0.1:35502/IcName/CheckName';
}
return 'http://ic-name-service/IcName/CheckName';
},
fbQueryUrl: function () {
if (this.env == 'dev' || this.env == 'test') {
return 'http://43.247.184.92:15505'
......
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