Commit 30ec4abc by 任晓松

商标数据聚合

parent a08584b7
......@@ -2238,5 +2238,178 @@ class tmqueryApi extends ApiBase {
}
return System.getResult2(result,null);
}
//通过商标名来进行精准查询,商标注册地域/大类分布
async findTrademarkNameAccuratejuhe(query,obj){
var result={province_counts:[],ncl_counts:[]};
var tmName=obj.tmName==null?"":obj.tmName;
tmName=tmName.replace(/[&\|\\\*^%$#@\-]/g,"");
var data={
tmName:tmName
};
var tmsjuheprovince = await this.GsbByTmSearchApi.tmAccuratejuheprovinceSearch(data);//根据商标province聚合
var tmsjuhencl = await this.GsbByTmSearchApi.tmAccuratejuhenclSearch(data);//根据商标ncl聚合
var that=this;
if(tmsjuheprovince.status==0){
var sum = 0;
var pros =[];
for(var i in tmsjuheprovince.buckets){
if(that.province.indexOf(tmsjuheprovince.buckets[i].key)>=0){
var ss = {
"province":tmsjuheprovince.buckets[i].key,
"count":tmsjuheprovince.buckets[i].doc_count
}
sum +=tmsjuheprovince.buckets[i].doc_count;
pros.push(ss);
}
}
console.log(pros);
for(var k=0;k<pros.length;k++){
var percent = parseInt(100*(pros[k].count/sum));
var pp = {
"province":pros[k].province,
"count":pros[k].count,
"percent":percent+"%"
}
result.province_counts.push(pp);
}
}
if(tmsjuhencl.status==0){
var sum =0;
var ncllist =[];
tmsjuhencl.buckets.forEach(function(buck){
var ncl={
"key":buck.key,
"keycount":buck.doc_count,
};
sum +=buck.doc_count;
ncllist.push(ncl);
});
for(var k=0;k<ncllist.length;k++){
var percent = parseInt(100*(ncllist[k].keycount/sum));
var nn = {
"code":that.tm_gjfl[ncllist[k].key],
"count":ncllist[k].keycount,
"percent":percent+"%"
}
result.ncl_counts.push(nn);
}
}
return System.getResult2(result,null);
}
//通过商标名来进行模糊查询,商标注册地域/大类分布
async findTrademarkNamejuhe(query,obj){
var result={province_counts:[],ncl_counts:[]};
var tmName=obj.tmName==null?"":obj.tmName;
tmName=tmName.replace(/[&\|\\\*^%$#@\-]/g,"");
var js="js";
var bz="bz";
var tyc="";
var py="";
var xjz="";
var dx="dx";
var tycdata=[];
var xjzdata=[];
var contain="contain";
//按商标检索条件进行参数---'拼音', '同义词', '形近字', '换序',"左匹配","右匹配"
if("同义词"=="同义词"){
tyc="tyc";
var objd={
name:tmName
}
var tms=await this.utilscontent.getSynonymsList(objd);
if(tms.code==1){
tycdata=tms.data;
}
}
if("拼音"=="拼音"){
py="py";
var pynamelist=pinyin(tmName,{
heteronym: true,
style: pinyin.STYLE_NORMAL,
});
var pp=[];
console.log(pynamelist);
pynamelist.forEach(function(c){
pp.push(c[0]);
});
var pyname=pp.join("");
}
if("形近字"=="形近字"){
xjz="xjz";
var objd={
name:tmName
}
var tms=await this.utilscontent.getSimilarList(objd);
// console.log("--------------------------------------");
// console.log(tms.data);
if(tms.code==1){
xjzdata=tms.data;
}
}
var data={
tmName:tmName,
js:js,
bz:bz,
tyc:tyc,
tycdata:tycdata,
py:py,
pyname:pyname,
xjz:xjz,
xjzdata:xjzdata,
dx:dx,
contain:contain
};
var tmsjuheprovince = await this.GsbByTmSearchApi.tmNamejuheprovinceSearch(data);//根据商标province聚合
var tmsjuhencl = await this.GsbByTmSearchApi.tmNamejuhenclSearch(data);//根据商标ncl聚合
var that=this;
if(tmsjuheprovince.status==0){
var sum = 0;
var pros =[];
for(var i in tmsjuheprovince.buckets){
if(that.province.indexOf(tmsjuheprovince.buckets[i].key)>=0){
var ss = {
"province":tmsjuheprovince.buckets[i].key,
"count":tmsjuheprovince.buckets[i].doc_count
}
sum +=tmsjuheprovince.buckets[i].doc_count;
pros.push(ss);
}
}
for(var k=0;k<pros.length;k++){
var percent = parseInt(100*(pros[k].count/sum));
var pp = {
"province":pros[k].province,
"count":pros[k].count,
"percent":percent+"%"
}
result.province_counts.push(pp);
}
}
if(tmsjuhencl.status==0){
var sum =0;
var ncllist =[];
tmsjuhencl.buckets.forEach(function(buck){
var ncl={
"key":buck.key,
"keycount":buck.doc_count,
};
sum +=buck.doc_count;
ncllist.push(ncl);
});
for(var k=0;k<ncllist.length;k++){
var percent = parseInt(100*(ncllist[k].keycount/sum));
var nn = {
"code":that.tm_gjfl[ncllist[k].key],
"count":ncllist[k].keycount,
"percent":percent+"%"
}
result.ncl_counts.push(nn);
}
}
return System.getResult2(result,null);
}
}
module.exports = tmqueryApi;
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