Commit fe95d608 by 兰国旗

Merge branch 'center-channel' of gitlab.gongsibao.com:jiangyong/zhichan into center-channel

parents e15e2a1e 692ffec2
......@@ -36,8 +36,11 @@ class IcbcToolsAPI extends WEBBase {
case "getCompanyIcpByName"://工商icp证照查询
opResult = await this.icbcSve.getCompanyIcpByName(action_body, req);
break;
case "searchCertification"://企业证书查询
opResult = await this.icbcSve.searchCertification(action_body,req);
// case "searchCertification"://企业证书查询
// opResult = await this.icbcSve.searchCertification(action_body,req);
// break;
case "searchCertification"://企业证书查询(综合)
opResult = await this.icbcSve.getLicenseList(action_body,req);
break;
default:
opResult = system.getResult(null, "action_type参数错误");
......
......@@ -6,6 +6,7 @@ class ProductAPI extends WEBBase {
constructor() {
super();
this.utilsOrderSve = system.getObject("service.utilsSve.utilsOrderSve");
this.utilsProductSve = system.getObject("service.utilsSve.utilsProductSve");
}
/**
......@@ -41,6 +42,9 @@ class ProductAPI extends WEBBase {
case "getOrderInfo"://获取订单列表信息
opResult = await this.utilsOrderSve.getOrderInfo(pobj, pobj.actionBody);
break;
case "getPathName":
opResult = await this.utilsProductSve.getAllPathName(pobj);
break;
case "getOrderStatisticsByUappId":
opResult = await this.utilsOrderSve.getOrdersStatisticsByUappId(pobj);
break;
......@@ -95,6 +99,9 @@ class ProductAPI extends WEBBase {
case "receiveAliTmOrder"://接收阿里商标订单
opResult = await this.utilsOrderSve.receiveAliTmOrder(pobj, pobj.actionBody);
break;
case "receiveAliTmStatus"://接收阿里商标状态
opResult = await this.utilsOrderSve.receiveAliTmStatus(pobj, pobj.actionBody);
break;
case "receiveAliTmOrderRefund"://接收阿里商标订单退款信息
opResult = await this.utilsOrderSve.receiveAliTmOrderRefund(pobj, pobj.actionBody);
break;
......
......@@ -50,9 +50,6 @@ class Need extends APIBase {
opResult = await this.utilsNeedSve.getItemByChannelNeedNo(pobj,pobj.actionBody);
break;
case "getSolutionByChannelSolutionNo":
opResult = await this.utilsNeedSve.getItemByChannelNeedNo(pobj, pobj.actionBody);
break
case "getSolutionByChannelSolutionNo":
opResult = await this.utilsNeedSve.getSolutionByChannelSolutionNo(pobj, pobj.actionBody);
break;
case "getItemByNeedNo":
......
......@@ -85,6 +85,7 @@ class IcbcService extends AppServiceBase {
"accessKey": "111",
"accessSecret": "222"
}
req.headers.token='sss'
let ret = await this.opReqResult(url, params, req);
if (ret.status != 1) {
return system.getResultFail(-1, '获取开放平台token失败');
......@@ -94,8 +95,10 @@ class IcbcService extends AppServiceBase {
url = settings.icNameUrl() + "openPlatform/busenterprise/cloudapi";
//资质查询
let data = {
// "path": "/apis/dst/patents/getLicense",
"path": "/apis/dst/patents/certificate",
"name": queryobj.companyName
"name": queryobj.companyName,
"pageNum":1
};
let rtn = await this.execClient.restGetWithHAuthorizationUrl(token, url, data);
if (!rtn || !rtn.stdout) {
......@@ -121,6 +124,94 @@ class IcbcService extends AppServiceBase {
}
/**
* 获取资质证书(集合)
* @param obj
* @param req
* @returns {Promise<void>}
*/
async getLicenseList(obj,req){
let companyName = obj.companyName;
let url = settings.icNameUrl() + 'openPlatform/platform/getToken';
let params = {
"accessKey": "111",
"accessSecret": "222"
}
req.headers.token='sss'
let ret = await this.opReqResult(url, params, req);
if (ret.status != 1) {
return system.getResultFail(-1, '获取开放平台token失败');
}
let token = ret.data;
let url2 = settings.icNameUrl() + "/openPlatform/busenterprise/cloudapi";
let params1 = {
"path": "/apis/dst/patents/certificate",
"name": companyName,
"pageNum":1
}
let params2 = {
"path": "/apis/dst/patents/getLicense",
"name": companyName,
"pageNum":1
}
let params3 = {
"companyName":companyName
}
let funcs = [];
funcs.push(this.execClient.restGetWithHAuthorizationUrl(token, url2, params1));
funcs.push(this.execClient.restGetWithHAuthorizationUrl(token, url2, params2));
funcs.push(this.getCompanyIcpByName(params3,req));
let results = await Promise.all(funcs);
if(results.length==0){
return system.getResultFail(-1,'查询失败,请稍后再试');
}
let ret1 = JSON.parse(results[0].stdout);
let ret2 = JSON.parse(results[1].stdout);
let ret3 = results[2];
let resultData = [];
if(ret1.error_code == 0 && ret1.result.items.length >0){
for(let i =0;i<ret1.result.items.length;i++){
let d = ret1.result.items[i];
let obj = {
licencenumber:d.certNo,
licencename:d.certificateName,
startDate:d.startDate,
endDate:d.endDate,
detail:d.detail
};
resultData.push(obj);
}
}
if(ret2.error_code == 0 && ret2.result.items.length >0){
for(let i =0;i<ret2.result.items.length;i++){
let d = ret2.result.items[i];
let obj = {
licencenumber:d.licencenumber,
licencename:d.licencename,
startDate:d.fromdate,
endDate:d.todate,
detail:d.detail
};
if(!resultData.includes(obj)){
resultData.push(obj);
}
}
}
if(ret3.status == 0 && ret3.data.list.length>0){
for(let i =0;i<ret3.data.list.length;i++){
let d = ret3.data.list[i];
let obj = {
licencenumber:d.liscense,
licencename:"icp备案",
examine_date:d.examine_date
};
resultData.push(obj);
}
}
return system.getResultSuccess(resultData);
}
......
......@@ -82,7 +82,7 @@ class utils360Sve extends AppServiceBase {
content: JSON.stringify(pushObj),//推送的参数信息
resultInfo: JSON.stringify(result),
returnType: '1',
logLevel: '1',
logLevel: 1,
opTitle: "推送360信息返回成功"
});
} else {
......
......@@ -121,7 +121,11 @@ class UtilsFqAliyunService extends AppServiceBase {
if (rtn.success && rtn.code == 200) {
return system.getResultSuccess(rtn.data, "推送成功");
} else {
return system.getResultFail(-1, `推送失败,失败原因11:${JSON.stringify(rtn)}`);
let errorMsg = "";
if (rtn.errorMessage && rtn.errorMessage.indexOf("订单产品查询出来产品与传递得产品数量不一致") >= 0) {
errorMsg = "订单产品查询出来产品与传递得产品数量不一致";
}
return system.getResultNewFail(-1, `推送失败,失败原因11:${JSON.stringify(rtn)}`, null, errorMsg);
}
} catch (e) {
const stackStr = e.stack ? e.stack : JSON.stringify(e);
......
......@@ -293,24 +293,9 @@ class UtilsOrderService extends AppServiceBase {
let arr = [];
let reArr = [];
for (let i = 0; i < data.length; i++) {
if (data[i].typeCode == '10202010202001') {
data[i].typeCode = 'zzsbzc';
}
if (data[i].typeCode == '10202010202002') {
data[i].typeCode = 'fzsbzc';
}
if (data[i].typeCode == '10202010202003') {
data[i].typeCode = 'dbsbzc';
}
if (data[i].typeCode == '10202010204002') {
data[i].typeCode = 'icpsq';
}
if (data[i].typeCode == '10202010204001') {
data[i].typeCode = 'edisq';
}
if ((temp != data[i].typeCode && temp != "")) {
if ((temp != data[i].pathName && temp != "")) {
let obj = {
type_code: temp,
pathName: temp,
data: arr
}
reArr.push(obj);
......@@ -321,10 +306,10 @@ class UtilsOrderService extends AppServiceBase {
count: data[i].count
}
arr.push(dArr);
temp = data[i].typeCode;
temp = data[i].pathName;
if (i == data.length - 1) {
let obj = {
type_code: temp,
pathName: temp,
data: arr
}
reArr.push(obj);
......@@ -1263,7 +1248,7 @@ class UtilsOrderService extends AppServiceBase {
};
this.utils360Sve.pushOrderStatus(pobj);
//钉钉机器人
this.dingClient.gatewayPushByChannel(params.orderNo, pobj.appInfo);
this.dingClient.gatewayPushTo360(params.orderNo);
}
opOrderResult.data = null;
return opOrderResult;
......@@ -1732,6 +1717,11 @@ class UtilsOrderService extends AppServiceBase {
var result = await this.restPostUrl(pobj, reqUrl);
return result;
}
async receiveAliTmStatus(pobj, actionBody) {
var reqUrl = this.centerOrderUrl + "action/order/springBoard";
var result = await this.restPostUrl(pobj, reqUrl);
return result;
}
}
module.exports = UtilsOrderService;
......@@ -153,6 +153,44 @@ class UtilsProductService extends AppServiceBase {
let result = await this.restPostUrl(pobj,url);
return result;
}
}
module.exports = UtilsProductService;
/**
* 根据path_name 聚合
* @param pobj
* @returns {Promise<{msg: string, data, bizmsg: *|string, status: number}|any>}
*/
async getAllPathName(pobj){
let url = settings.centerAppUrl() + 'action/opProduct/springBoard';
pobj.actionType = 'getAllPathName';
let result = await this.restPostUrl(pobj,url);
if(result.status !=0){
return system.getResultFail(-1,'获取数据失败,请稍后再试!');
}
let data = result.data;
let map = new Map();
for(let i =0;i<data.length;i++){
let item = data[i];
let strs = item.path_name.split('/');
let classOne = strs[1];
let classTwo = strs[2];
if(map.has(classOne)){
let val = map.get(classOne);
val.push(classTwo)
map.set(classOne,val);
}else{
let arr = [];
arr.push(classTwo)
map.set(classOne,arr);
}
}
let resultData = [];
map.forEach((v,k) =>{
let obj = {};
obj['key'] = k;
obj['data'] = v;
resultData.push(obj)
})
return system.getResult(resultData);
}
}
module.exports = UtilsProductService;
\ No newline at end of file
var fs = require("fs");
var objsettings = require("../config/objsettings");
var settings = require("../config/settings");
class System {
static declare(ns) {
var ar = ns.split('.');
......@@ -15,6 +16,7 @@ class System {
}
}
}
static register(key, ClassObj) {
if (System.objTable[key] != null) {
throw new Error("相同key的对象已经存在");
......@@ -25,6 +27,7 @@ class System {
return System.objTable[key];
}
static getResult(data, opmsg = "操作成功", req) {
return {
status: !data ? -1 : 0,
......@@ -33,9 +36,11 @@ class System {
bizmsg: req && req.session && req.session.bizmsg ? req.session.bizmsg : "empty"
};
}
static getErrResult2(errmsg) {
return this.getResult2(null, null, null, errmsg);
}
static getResult2(data, req, okmsg = "操作成功", errmsg = "操作失败") {
var result = {
status: 0,
......@@ -54,11 +59,12 @@ class System {
}
return result;
}
static getResult3(data, req, okmsg = "操作成功", errmsg = "操作失败") {
var total = data.total;
data = data.hits;
var sources = [];
data.forEach(function(d) {
data.forEach(function (d) {
sources.push(d._source);
})
var result = {
......@@ -80,20 +86,21 @@ class System {
}
return result;
}
static getResult4(j, req, okmsg = "操作成功", errmsg = "操作失败") {
var aggs = j.aggregations;
var codes_count = aggs.ncl_one_codes_count;
var bucketlist = codes_count.buckets;
var bucklist = [];
bucketlist.forEach(function(d) {
bucketlist.forEach(function (d) {
bucklist.push(d);
})
var data = j.hits;
var total = data.total;
var hit = data.hits;
var sources = [];
hit.forEach(function(d) {
hit.forEach(function (d) {
sources.push(d._source);
})
var result = {
......@@ -115,13 +122,14 @@ class System {
}
return result;
}
static getResultjuhe4(j, req, okmsg = "操作成功", errmsg = "操作失败") {
var aggs = j.aggregations;
var codes_count = aggs.ncl_one_codes_count;
var bucketlist = codes_count.buckets;
var bucklist = [];
bucketlist.forEach(function(d) {
bucketlist.forEach(function (d) {
bucklist.push(d);
})
var result = {
......@@ -135,44 +143,47 @@ class System {
}
return result;
}
static getResultjuhetwo(j, req, okmsg = "操作成功", errmsg = "操作失败") {
var aggs = j.aggregations;
var notice_count = aggs.notice_count;
var bucketlist = notice_count.buckets;
var bucklist = [];
bucketlist.forEach(function(d) {
var notice_issue = d.key;
var date = d.date_max.value;
var data = {
notice_issue: notice_issue,
date: date
}
bucklist.push(data);
})
var result = {
status: 0,
msg: okmsg,
buckets: bucklist,
};
if (!bucklist) {
result.status = -1;
result.msg = errmsg;
var aggs = j.aggregations;
var notice_count = aggs.notice_count;
var bucketlist = notice_count.buckets;
var bucklist = [];
bucketlist.forEach(function (d) {
var notice_issue = d.key;
var date = d.date_max.value;
var data = {
notice_issue: notice_issue,
date: date
}
return result;
bucklist.push(data);
})
var result = {
status: 0,
msg: okmsg,
buckets: bucklist,
};
if (!bucklist) {
result.status = -1;
result.msg = errmsg;
}
/**
* 请求返回成功
* @param {*} data 操作成功返回的数据
* @param {*} okmsg 操作成功的描述
*/
return result;
}
/**
* 请求返回成功
* @param {*} data 操作成功返回的数据
* @param {*} okmsg 操作成功的描述
*/
static getResultSuccess(data, okmsg = "success") {
return {
status: 0,
msg: okmsg,
data: data || "成功"
};
}
// 2020 0916 lin 新增返回格式 成功status为1
return {
status: 0,
msg: okmsg,
data: data || "成功"
};
}
// 2020 0916 lin 新增返回格式 成功status为1
static getResultRedisQueueSuccess(data, okmsg = "success") {
return {
status: 1,
......@@ -207,6 +218,24 @@ class System {
data: data,
};
}
/**
* 请求返回失败
* @param status
* @param errmsg
* @param data
* @param errorMsg
* @returns {{msg: string, data: string, status: number, errorMsg: *}}
*/
static getResultNewFail(status = -1, errmsg = "fail", data = "", errorMsg) {
return {
status: status,
msg: errmsg,
errorMsg: errorMsg,
data: data,
};
}
static getObject(objpath) {
var pathArray = objpath.split(".");
var packageName = pathArray[0];
......@@ -230,6 +259,7 @@ class System {
return System.register(objabspath, ClassObj);
}
}
static getUiConfig(appid) {
var configPath = settings.basepath + "/app/base/db/metadata/" + appid + "/index.js";
if (settings.env == "dev") {
......@@ -238,6 +268,7 @@ class System {
var configValue = require(configPath);
return configValue;
}
static getUiConfig2(appid) {
var configPath = settings.basepath + "/app/base/db/metadata/index.js";
// if(settings.env=="dev"){
......@@ -248,6 +279,7 @@ class System {
var configValue = require(configPath);
return configValue[appid];
}
static get_client_ip(req) {
var ip = req.headers['x-forwarded-for'] ||
req.ip ||
......@@ -296,7 +328,8 @@ class System {
}
}
}
Date.prototype.Format = function(fmt) { //author: meizz
Date.prototype.Format = function (fmt) { //author: meizz
var o = {
"M+": this.getMonth() + 1, //月份
"d+": this.getDate(), //日
......
......@@ -5,6 +5,7 @@ class dingClient {
this.execClient = system.getObject('util.execClient');
this.gatewayurl = "https://oapi.dingtalk.com/robot/send?access_token=2f1ada261ea84f6c621db487ac18d11eba8984202bd82adda8810770a8240572"
this.businessToFqUrl = "https://oapi.dingtalk.com/robot/send?access_token=9e215f0f1d77980ee6b39e88a82a7c6e5d290775f76d9a8346e97697f8df9788"
this.businessTo360Url = "https://oapi.dingtalk.com/robot/send?access_token=2947bdf6163288a5a5c654640e78ea718d21fcae6601efbb4edd53209abc1c45";
}
//推送峰擎异常提醒
......@@ -22,15 +23,14 @@ class dingClient {
}
//渠道钉钉提醒
async gatewayPushByChannel(orderNo, appInfo) {
let gatewayUrl = setttings.dingRobotUrl(appInfo.uapp_id);
if (settings.env != "dev" && gatewayUrl) {
let c = `注意提醒:${appInfo.app_name}->有订单待处理,订单号${orderNo},老板们加油,加油,加油 !!!`
async gatewayPushTo360(orderNo) {
if (process.env.APP_ENV != "dev") {
let c = `注意提醒:360云商机->有订单待处理,订单号${orderNo},老板们加油,加油,加油 !!!`
let t = new Date().toLocaleString()
this.execClient.execPost({
"msgtype": "text",
"text": {"content": t + c}
}, gatewayUrl).catch(err => {
}, this.businessTo360Url).catch(err => {
console.log(err)
});
}
......
......@@ -18,7 +18,7 @@ module.exports = {
"rtSubmitMaterial", "rtNotification", "rtSubmitSolution", "rtCloseNeed", "rtClosePlan",
"getParamsFor360", "addOrderWeb", "getPayRecords", "getLoginInfo", "putUserMobileByVcode",
"putUserPwdByMobile", "icpNotifyNew", "getOrderStatisticsByUappId", "getOrderStatisticsByProduct", "getOrdersComparison", "getOrdersComparisonList",
"importOrders", "importNeeds", "receiveAliTmOrder", "receiveAliTmOrderRefund",
"importOrders", "importNeeds", "receiveAliTmOrder", "receiveAliTmOrderRefund","receiveAliTmStatus",
//百度工商注册
"regGetInfoByChannelNeedNo", "submitRegNeed", "regFeedbackSubmit", "regOrderStatus", "regOrderClose",
"getSolutionByChannelOrderNo", "regSubmitSolution", "regNeedClose",
......
var settings = {
redis: {
host: "39.107.234.14",
port: 6379,
password: "123123",
host: "59.110.125.77",
port: 30479,
password: "havzMSYc3aBZXOjpG3",
db: 5,
},
database: {
......
......@@ -450,12 +450,6 @@ var settings = {
// 2020 1119 lin 正式环境已经给出,鲁班发的ip
return "http://139.196.159.202:8980/"
}
},
dingRobotUrl: function(uapp_id) {
if(uapp_id == 50){//360云商机
return "https://oapi.dingtalk.com/robot/send?access_token=2947bdf6163288a5a5c654640e78ea718d21fcae6601efbb4edd53209abc1c45";
}
return "";
}
};
module.exports = settings;
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