Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Z
zhichan
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
蒋勇
zhichan
Commits
072c7bb3
Commit
072c7bb3
authored
Nov 10, 2019
by
庄冰
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'igirl-channel' of gitlab.gongsibao.com:jiangyong/zhichan into igirl-channel
parents
bf4c109f
5a39c7e9
Show whitespace changes
Inline
Side-by-side
Showing
24 changed files
with
133 additions
and
13244 deletions
+133
-13244
igirl-channel/app/base/api/impl/action/tmOrder.js
+43
-26
igirl-channel/app/base/api/impl/action/tmTools.js
+9
-4
igirl-channel/app/base/api/impl/patent/chinaaffairsearch.js
+0
-67
igirl-channel/app/base/api/impl/patent/chinapatentsearch.js
+0
-1047
igirl-channel/app/base/api/impl/patent/cpatentaggregations.js
+0
-3497
igirl-channel/app/base/api/impl/patent/patentApi.js
+0
-1312
igirl-channel/app/base/api/impl/patent/wordpatentsearch.js
+0
-968
igirl-channel/app/base/api/impl/patent/wpatentaggregations.js
+0
-1688
igirl-channel/app/base/api/impl/tool/imghandle.js
+0
-421
igirl-channel/app/base/api/impl/tool/toolApi.js
+0
-472
igirl-channel/app/base/api/impl/tool/upload.js
+0
-68
igirl-channel/app/base/api/impl/trademark/gsbicsearch.js
+0
-1046
igirl-channel/app/base/api/impl/trademark/gsbtmsearch.js
+0
-1831
igirl-channel/app/base/api/impl/trademark/phonesearch.js
+0
-168
igirl-channel/app/base/api/impl/trademark/tmqueryApi.js
+0
-348
igirl-channel/app/base/api/impl/trademark/tmsearch.js
+0
-0
igirl-channel/app/base/api/impl/trademark/tmsubmitApi.js
+0
-65
igirl-channel/app/base/api/impl/trademark/tmtransactionApi.js
+0
-195
igirl-channel/app/base/db/cache/apiUserCache.js
+1
-1
igirl-channel/app/base/db/impl/dbapp/appproductDao.js
+27
-0
igirl-channel/app/base/db/impl/dborder/orderDao.js
+3
-0
igirl-channel/app/base/db/models/dborder/order.js
+1
-0
igirl-channel/app/base/service/impl/dborder/ordertmproductSve.js
+31
-20
igirl-channel/app/base/service/impl/trademark/toolSve.js
+18
-0
No files found.
igirl-channel/app/base/api/impl/action/tmOrder.js
View file @
072c7bb3
...
@@ -12,6 +12,7 @@ class TmOrderAPI extends APIBase {
...
@@ -12,6 +12,7 @@ class TmOrderAPI extends APIBase {
this
.
zcApiUrl
=
settings
.
reqZcApi
();
this
.
zcApiUrl
=
settings
.
reqZcApi
();
this
.
pushFqbossDataUrl
=
settings
.
pushFqbossDataUrl
();
this
.
pushFqbossDataUrl
=
settings
.
pushFqbossDataUrl
();
this
.
pushlogSve
=
system
.
getObject
(
"service.common.pushlogSve"
);
this
.
pushlogSve
=
system
.
getObject
(
"service.common.pushlogSve"
);
this
.
toolSve
=
system
.
getObject
(
"service.trademark.toolSve"
);
}
}
/**
/**
* 接口跳转-POST请求
* 接口跳转-POST请求
...
@@ -43,18 +44,34 @@ class TmOrderAPI extends APIBase {
...
@@ -43,18 +44,34 @@ class TmOrderAPI extends APIBase {
async
opActionProcess
(
action_process
,
action_type
,
action_body
,
pobj
,
req
)
{
async
opActionProcess
(
action_process
,
action_type
,
action_body
,
pobj
,
req
)
{
action_body
.
app
=
req
.
app
;
action_body
.
app
=
req
.
app
;
action_body
.
user
=
req
.
user
;
action_body
.
user
=
req
.
user
;
// action_body.app = { id: 1, appPayType: "00", appDataOpType: "00" };
// action_body.user = { id: 1, app_id: 1, nickname: "测试用户",channelUserId:"channelUserIdtest01" };
var
opResult
=
null
;
var
opResult
=
null
;
if
([
"subTmOrder"
,
"getTmOrderList"
,
"getTmOrderInfo"
,
"getTmApplyInfo"
,
"getTmNclList"
,
"getNeedInfo"
,
"tmConfirm"
,
"updateTmInfo"
,
"updateNclInfo"
,
"updateContacts"
,
"updateCustomerInfo"
,
"updateCustomerInfo"
].
indexOf
(
action_type
)
>=
0
)
{
if
(
!
action_body
.
channelUserId
)
{
return
system
.
getResult
(
null
,
"channelUserId is not empty"
);
}
}
switch
(
action_type
)
{
switch
(
action_type
)
{
// sy
// sy
case
"test"
:
//测试
case
"test"
:
//测试
opResult
=
system
.
getResultSuccess
(
null
,
"测试成功"
);
opResult
=
system
.
getResultSuccess
(
null
,
"测试成功"
);
break
;
break
;
case
"getChannelOrderInfo"
:
//获取渠道订单信息
case
"decryptStr"
:
//
opResult
=
await
this
.
ordertmproductSve
.
getChannelOrder
(
action_body
);
opResult
=
await
this
.
toolSve
.
decryptStr
(
req
.
app
,
action_body
.
opStr
);
opResult
.
itemCode
=
action_body
.
itemCode
||
""
;
break
;
opResult
.
channelParams
=
action_body
.
channelParams
||
""
;
case
"op1688ChannelPushOrder"
:
//处理渠道订单信息
opResult
=
await
this
.
ordertmproductSve
.
op1688ChannelPushOrder
(
action_body
);
if
(
opResult
.
status
==
0
)
{
opResult
.
data
=
null
;
var
encryptResult
=
await
this
.
toolSve
.
encryptStr
(
req
.
app
,
action_body
.
channelUserId
);
if
(
encryptResult
.
status
==
0
&&
encryptResult
.
data
&&
encryptResult
.
data
!=
"undefined"
)
{
opResult
.
data
=
encryptResult
.
data
;
}
}
break
;
case
"get1688ChannelOrderInfo"
:
//获取渠道订单信息
opResult
=
await
this
.
ordertmproductSve
.
get1688ChannelOrder
(
action_body
);
break
;
break
;
case
"subTmOrder"
:
//商标提报
case
"subTmOrder"
:
//商标提报
opResult
=
await
this
.
ordertmproductSve
.
addTmOrder
(
action_body
);
opResult
=
await
this
.
ordertmproductSve
.
addTmOrder
(
action_body
);
...
@@ -71,8 +88,8 @@ class TmOrderAPI extends APIBase {
...
@@ -71,8 +88,8 @@ class TmOrderAPI extends APIBase {
}
}
pobj
.
actionBody
[
"deliveryOrderNo"
]
=
opResult
.
data
.
deliveryOrderNo
;
pobj
.
actionBody
[
"deliveryOrderNo"
]
=
opResult
.
data
.
deliveryOrderNo
;
// await this.pushData(opResult, req, pobj);
// await this.pushData(opResult, req, pobj);
var
url
=
this
.
pushFqbossDataUrl
+
"api/channelaccessApi/createChannelOrder"
var
url
=
this
.
pushFqbossDataUrl
+
"api/channelaccessApi/createChannelOrder"
await
this
.
pushData2
(
opResult
,
req
,
pobj
,
url
);
await
this
.
pushData2
(
opResult
,
req
,
pobj
,
url
);
}
}
break
;
break
;
case
"getTmOrderList"
:
//商标交付列表
case
"getTmOrderList"
:
//商标交付列表
...
@@ -91,40 +108,40 @@ class TmOrderAPI extends APIBase {
...
@@ -91,40 +108,40 @@ class TmOrderAPI extends APIBase {
opResult
=
await
this
.
trademarkSve
.
updateTmInfo
(
action_body
);
opResult
=
await
this
.
trademarkSve
.
updateTmInfo
(
action_body
);
if
(
opResult
&&
opResult
.
status
==
0
)
{
if
(
opResult
&&
opResult
.
status
==
0
)
{
// await this.pushData(opResult, req, pobj);
// await this.pushData(opResult, req, pobj);
var
url
=
this
.
pushFqbossDataUrl
+
"api/channelaccessApi/updateChannelTmInfo"
var
url
=
this
.
pushFqbossDataUrl
+
"api/channelaccessApi/updateChannelTmInfo"
await
this
.
pushData2
(
opResult
,
req
,
pobj
,
url
);
await
this
.
pushData2
(
opResult
,
req
,
pobj
,
url
);
}
}
break
;
break
;
case
"updateNclInfo"
:
//修改商标订单-商标尼斯信息修改
case
"updateNclInfo"
:
//修改商标订单-商标尼斯信息修改
opResult
=
await
this
.
trademarkSve
.
updateNclInfo
(
action_body
);
opResult
=
await
this
.
trademarkSve
.
updateNclInfo
(
action_body
);
if
(
opResult
&&
opResult
.
status
==
0
)
{
if
(
opResult
&&
opResult
.
status
==
0
)
{
// await this.pushData(opResult, req, pobj);
// await this.pushData(opResult, req, pobj);
var
url
=
this
.
pushFqbossDataUrl
+
"api/channelaccessApi/updateChannelNclInfo"
var
url
=
this
.
pushFqbossDataUrl
+
"api/channelaccessApi/updateChannelNclInfo"
await
this
.
pushData2
(
opResult
,
req
,
pobj
,
url
);
await
this
.
pushData2
(
opResult
,
req
,
pobj
,
url
);
}
}
break
;
break
;
case
"updateContacts"
:
//修改商标订单-修改商标交付单联系人
case
"updateContacts"
:
//修改商标订单-修改商标交付单联系人
opResult
=
await
this
.
customercontactsSve
.
updateContacts
(
action_body
);
opResult
=
await
this
.
customercontactsSve
.
updateContacts
(
action_body
);
if
(
opResult
&&
opResult
.
status
==
0
)
{
if
(
opResult
&&
opResult
.
status
==
0
)
{
// await this.pushData(opResult, req, pobj);
// await this.pushData(opResult, req, pobj);
var
url
=
this
.
pushFqbossDataUrl
+
"api/channelaccessApi/updateChannelContacts"
var
url
=
this
.
pushFqbossDataUrl
+
"api/channelaccessApi/updateChannelContacts"
await
this
.
pushData2
(
opResult
,
req
,
pobj
,
url
);
await
this
.
pushData2
(
opResult
,
req
,
pobj
,
url
);
}
}
break
;
break
;
case
"updateCustomerInfo"
:
//修改商标订单-修改申请人信息
case
"updateCustomerInfo"
:
//修改商标订单-修改申请人信息
opResult
=
await
this
.
customerinfoSve
.
updateCustomerInfo
(
action_body
);
opResult
=
await
this
.
customerinfoSve
.
updateCustomerInfo
(
action_body
);
if
(
opResult
&&
opResult
.
status
==
0
)
{
if
(
opResult
&&
opResult
.
status
==
0
)
{
// await this.pushData(opResult, req, pobj);
// await this.pushData(opResult, req, pobj);
var
url
=
this
.
pushFqbossDataUrl
+
"api/channelaccessApi/updateChannelCustomerInfo"
var
url
=
this
.
pushFqbossDataUrl
+
"api/channelaccessApi/updateChannelCustomerInfo"
await
this
.
pushData2
(
opResult
,
req
,
pobj
,
url
);
await
this
.
pushData2
(
opResult
,
req
,
pobj
,
url
);
}
}
break
;
break
;
case
"updateOfficial"
:
//修改商标订单-修改交官文件
case
"updateOfficial"
:
//修改商标订单-修改交官文件
opResult
=
await
this
.
customerinfoSve
.
updateOfficial
(
action_body
);
opResult
=
await
this
.
customerinfoSve
.
updateOfficial
(
action_body
);
if
(
opResult
&&
opResult
.
status
==
0
)
{
if
(
opResult
&&
opResult
.
status
==
0
)
{
// await this.pushData(opResult, req, pobj);
// await this.pushData(opResult, req, pobj);
var
url
=
this
.
pushFqbossDataUrl
+
"api/channelaccessApi/updateChannelOfficial"
var
url
=
this
.
pushFqbossDataUrl
+
"api/channelaccessApi/updateChannelOfficial"
await
this
.
pushData2
(
opResult
,
req
,
pobj
,
url
);
await
this
.
pushData2
(
opResult
,
req
,
pobj
,
url
);
}
}
break
;
break
;
default
:
default
:
...
@@ -163,7 +180,7 @@ class TmOrderAPI extends APIBase {
...
@@ -163,7 +180,7 @@ class TmOrderAPI extends APIBase {
}
}
//数据推送fqboss
//数据推送fqboss
async
pushData2
(
opResult
,
req
,
pobj
,
url
)
{
async
pushData2
(
opResult
,
req
,
pobj
,
url
)
{
var
rc
=
system
.
getObject
(
"util.execClient"
);
var
rc
=
system
.
getObject
(
"util.execClient"
);
var
obj
=
pobj
.
actionBody
;
var
obj
=
pobj
.
actionBody
;
var
user
=
obj
.
user
;
var
user
=
obj
.
user
;
...
@@ -177,11 +194,11 @@ class TmOrderAPI extends APIBase {
...
@@ -177,11 +194,11 @@ class TmOrderAPI extends APIBase {
}
else
{
}
else
{
rtn
=
await
rc
.
execPost
(
obj
,
url
);
rtn
=
await
rc
.
execPost
(
obj
,
url
);
}
}
var
returnType
=
"0"
;
var
returnType
=
"0"
;
if
(
rtn
.
stdout
)
{
if
(
rtn
.
stdout
)
{
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
if
(
j
&&
j
.
code
==
1
)
{
if
(
j
&&
j
.
code
==
1
)
{
returnType
=
"1"
;
returnType
=
"1"
;
}
}
}
}
this
.
pushlogSve
.
createDb
({
this
.
pushlogSve
.
createDb
({
...
@@ -192,7 +209,7 @@ class TmOrderAPI extends APIBase {
...
@@ -192,7 +209,7 @@ class TmOrderAPI extends APIBase {
content
:
JSON
.
stringify
(
obj
),
content
:
JSON
.
stringify
(
obj
),
resultInfo
:
JSON
.
stringify
(
rtn
),
resultInfo
:
JSON
.
stringify
(
rtn
),
clientIp
:
req
.
clientIp
,
clientIp
:
req
.
clientIp
,
returnType
:
returnType
,
returnType
:
returnType
,
agent
:
req
.
uagent
,
agent
:
req
.
uagent
,
opTitle
:
"数据推送"
,
opTitle
:
"数据推送"
,
});
});
...
@@ -205,7 +222,7 @@ class TmOrderAPI extends APIBase {
...
@@ -205,7 +222,7 @@ class TmOrderAPI extends APIBase {
content
:
JSON
.
stringify
(
obj
),
content
:
JSON
.
stringify
(
obj
),
resultInfo
:
JSON
.
stringify
(
e
.
stack
),
resultInfo
:
JSON
.
stringify
(
e
.
stack
),
clientIp
:
req
.
clientIp
,
clientIp
:
req
.
clientIp
,
returnType
:
'0'
,
returnType
:
'0'
,
agent
:
req
.
uagent
,
agent
:
req
.
uagent
,
opTitle
:
"数据推送"
,
opTitle
:
"数据推送"
,
});
});
...
...
igirl-channel/app/base/api/impl/action/tmTools.js
View file @
072c7bb3
...
@@ -4,7 +4,6 @@ class TmToolsAPI extends APIBase {
...
@@ -4,7 +4,6 @@ class TmToolsAPI extends APIBase {
constructor
()
{
constructor
()
{
super
();
super
();
this
.
toolSve
=
system
.
getObject
(
"service.trademark.toolSve"
);
this
.
toolSve
=
system
.
getObject
(
"service.trademark.toolSve"
);
this
.
toolApi
=
system
.
getObject
(
"api.tool.toolApi"
);
}
}
/**
/**
* 接口跳转-POST请求
* 接口跳转-POST请求
...
@@ -22,10 +21,10 @@ class TmToolsAPI extends APIBase {
...
@@ -22,10 +21,10 @@ class TmToolsAPI extends APIBase {
var
result
=
null
;
var
result
=
null
;
switch
(
pobj
.
actionProcess
)
{
switch
(
pobj
.
actionProcess
)
{
case
"jd"
:
//京东
case
"jd"
:
//京东
result
=
await
this
.
opActionProcess
(
pobj
.
actionProcess
,
pobj
.
actionType
,
pobj
.
actionBody
);
result
=
await
this
.
opActionProcess
(
pobj
.
actionProcess
,
pobj
.
actionType
,
pobj
.
actionBody
,
req
);
break
;
break
;
case
"1688"
:
case
"1688"
:
result
=
await
this
.
opActionProcess
(
pobj
.
actionProcess
,
pobj
.
actionType
,
pobj
.
actionBody
);
result
=
await
this
.
opActionProcess
(
pobj
.
actionProcess
,
pobj
.
actionType
,
pobj
.
actionBody
,
req
);
break
;
break
;
default
:
default
:
result
=
system
.
getResult
(
null
,
"actionProcess参数错误"
);
result
=
system
.
getResult
(
null
,
"actionProcess参数错误"
);
...
@@ -33,13 +32,19 @@ class TmToolsAPI extends APIBase {
...
@@ -33,13 +32,19 @@ class TmToolsAPI extends APIBase {
}
}
return
result
;
return
result
;
}
}
async
opActionProcess
(
action_process
,
action_type
,
action_body
)
{
async
opActionProcess
(
action_process
,
action_type
,
action_body
,
req
)
{
var
opResult
=
null
;
var
opResult
=
null
;
switch
(
action_type
)
{
switch
(
action_type
)
{
// sy
// sy
case
"test"
:
//测试
case
"test"
:
//测试
opResult
=
system
.
getResultSuccess
(
null
,
"测试成功"
);
opResult
=
system
.
getResultSuccess
(
null
,
"测试成功"
);
break
;
break
;
case
"encryptStr"
:
//
opResult
=
await
this
.
toolSve
.
encryptStr
(
req
.
app
,
action_body
.
opStr
);
break
;
case
"decryptStr"
:
//
opResult
=
await
this
.
toolSve
.
decryptStr
(
req
.
app
,
action_body
.
opStr
);
break
;
case
"getOssConfig"
:
//
case
"getOssConfig"
:
//
opResult
=
await
this
.
toolSve
.
getOssConfig
();
opResult
=
await
this
.
toolSve
.
getOssConfig
();
break
;
break
;
...
...
igirl-channel/app/base/api/impl/patent/chinaaffairsearch.js
deleted
100644 → 0
View file @
bf4c109f
var
System
=
require
(
"../../../system"
);
var
settings
=
require
(
"../../../../config/settings"
);
const
querystring
=
require
(
'querystring'
);
const
ApiBase
=
require
(
"../../api.base"
);
class
ChinaAffairSearchApi
extends
ApiBase
{
constructor
(){
super
();
this
.
affairUrl
=
settings
.
reqEsAddrIc
()
+
"bigdata_patent_affair_op/_search"
;
};
buildDate
(
date
){
var
date
=
new
Date
(
date
);
var
time
=
Date
.
parse
(
date
);
time
=
time
/
1000
;
return
time
;
};
async
SearchbyFilingno
(
obj
){
//根据申请号查询并根据法律状态日期排序
var
pagesize
=
obj
.
pagesize
==
null
?
10
:
obj
.
pagesize
;
if
(
obj
.
page
==
null
){
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
page
-
1
)
*
obj
.
pagesize
);
}
var
filingno
=
obj
.
filingno
==
null
?
""
:
obj
.
filingno
;
if
(
filingno
==
""
){
return
{
status
:
-
1
,
msg
:
"传入申请号信息为空"
,
data
:
null
,
buckets
:
null
};
}
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
]
}
},
"sort"
:
[
{
"aff_date"
:
"asc"
}
]
};
var
param
=
{
"term"
:
{
"filing_no"
:
filingno
}
}
params
.
query
.
bool
.
must
.
push
(
param
);
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
affairUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
System
.
getResult2
(
j
.
hits
,
null
);
}
catch
(
e
){
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
};
}
module
.
exports
=
ChinaAffairSearchApi
;
\ No newline at end of file
igirl-channel/app/base/api/impl/patent/chinapatentsearch.js
deleted
100644 → 0
View file @
bf4c109f
var
System
=
require
(
"../../../system"
);
var
settings
=
require
(
"../../../../config/settings"
);
const
querystring
=
require
(
'querystring'
);
const
ApiBase
=
require
(
"../../api.base"
);
class
ChinaPatentSearchApi
extends
ApiBase
{
constructor
(){
super
();
this
.
patentUrl
=
settings
.
reqEsAddrIc
()
+
"bigdata_patent_op/_search"
;
};
buildDate
(
date
){
var
date
=
new
Date
(
date
);
var
time
=
Date
.
parse
(
date
);
time
=
time
/
1000
;
return
time
;
};
async
ObtainChinaPatentInfo
(
obj
){
console
.
log
(
"----------------api-ObtainChinaPatentInfo----------------"
);
console
.
log
(
obj
);
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
};
var
applynum
=
obj
.
applynum
==
null
?
""
:
obj
.
applynum
;
//专利申请号
if
(
applynum
!=
null
&&
applynum
!=
""
){
var
param
=
{
"term"
:
{
"filing_no"
:
applynum
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
publishnum
=
obj
.
publishnum
==
null
?
""
:
obj
.
publishnum
;
//专利公开号
if
(
publishnum
!=
null
&&
publishnum
!=
""
){
var
arr
=
publishnum
.
split
(
""
);
if
(
arr
[
arr
.
length
-
1
]
==
"A"
){
var
param
=
{
"term"
:
{
"pub_no"
:
publishnum
}
};
}
else
{
var
param
=
{
"term"
:
{
"gr_no"
:
publishnum
}
};
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
.
hits
};
}
catch
(
e
){
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
};
}
};
async
CommomSearchbyTitle
(
obj
){
//根据标题查询聚合
console
.
log
(
"--------CommomSearchbyTitle----------"
);
console
.
log
(
obj
);
var
pagesize
=
obj
.
pagesize
==
null
?
10
:
obj
.
pagesize
;
if
(
obj
.
page
==
null
){
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
page
-
1
)
*
obj
.
pagesize
);
}
var
title
=
obj
.
title
==
null
?
""
:
obj
.
title
;
if
(
title
==
""
){
return
{
status
:
-
1
,
msg
:
"传入标题信息为空"
,
data
:
null
,
buckets
:
null
};
}
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
from
,
"size"
:
pagesize
,
"_source"
:
[
"filing_no"
,
"filing_time"
,
"pub_no"
,
"pub_time"
,
"gr_no"
,
"gr_time"
,
"pub_type"
,
"applicant_name"
,
"inventor_name"
,
"filing_name"
,
"pub_status"
],
"aggregations"
:
{
"group_by_pub_type"
:
{
"terms"
:
{
"field"
:
"pub_type"
,
"size"
:
1000
}
},
"group_by_pub_status"
:
{
"terms"
:
{
"field"
:
"pub_status"
,
"size"
:
1000
}
},
"group_by_filing_year"
:
{
"terms"
:
{
"field"
:
"filing_year"
,
"size"
:
1000
,
"order"
:{
"_term"
:
"desc"
}
}
},
"group_by_pub_year"
:
{
"terms"
:
{
"field"
:
"pub_year"
,
"size"
:
1000
,
"order"
:{
"_term"
:
"desc"
}
}
}
}
};
var
param
=
{
"match"
:
{
"filing_name"
:
title
}
}
params
.
query
.
bool
.
must
.
push
(
param
);
var
pubtype
=
obj
.
pubtype
==
null
?
""
:
obj
.
pubtype
;
//专利类型
if
(
pubtype
!=
null
&&
pubtype
!=
""
){
param
=
{
"term"
:
{
"pub_type"
:
pubtype
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
pubstatus
=
obj
.
pubstatus
==
null
?
""
:
obj
.
pubstatus
;
//法律状态
if
(
pubstatus
!=
null
&&
pubstatus
!=
""
){
param
=
{
"term"
:
{
"pub_status"
:
pubstatus
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
filingyear
=
obj
.
filingyear
==
null
?
""
:
obj
.
filingyear
;
//申请年份
if
(
filingyear
!=
null
&&
filingyear
!=
""
){
param
=
{
"term"
:
{
"filing_year"
:
filingyear
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
pubyear
=
obj
.
pubyear
==
null
?
""
:
obj
.
pubyear
;
//公开年份
if
(
pubyear
!=
null
&&
pubyear
!=
""
){
param
=
{
"term"
:
{
"pub_year"
:
pubyear
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
){
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
CommomSearchbyFilingno
(
obj
){
//根据申请号查询聚合
var
pagesize
=
obj
.
pagesize
==
null
?
10
:
obj
.
pagesize
;
if
(
obj
.
page
==
null
){
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
page
-
1
)
*
obj
.
pagesize
);
}
var
filingno
=
obj
.
filingno
==
null
?
""
:
obj
.
filingno
;
if
(
filingno
==
""
){
return
{
status
:
-
1
,
msg
:
"传入的申请号信息为空"
,
data
:
null
,
buckets
:
null
};
}
else
{
filingno
=
filingno
.
replace
(
"CN"
,
""
).
replace
(
"cn"
,
""
).
replace
(
"."
,
""
);
if
(
filingno
.
length
==
13
){
filingno
=
filingno
.
substr
(
0
,
12
);
}
else
if
(
filingno
.
length
==
9
){
filingno
=
filingno
.
substr
(
0
,
8
);
}
}
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
from
,
"size"
:
pagesize
,
"_source"
:
[
"filing_no"
,
"filing_time"
,
"pub_no"
,
"pub_time"
,
"gr_no"
,
"gr_time"
,
"pub_type"
,
"applicant_name"
,
"inventor_name"
,
"filing_name"
,
"pub_status"
],
"aggregations"
:
{
"group_by_pub_type"
:
{
"terms"
:
{
"field"
:
"pub_type"
,
"size"
:
1000
}
},
"group_by_pub_status"
:
{
"terms"
:
{
"field"
:
"pub_status"
,
"size"
:
1000
}
},
"group_by_filing_year"
:
{
"terms"
:
{
"field"
:
"filing_year"
,
"size"
:
1000
,
"order"
:{
"_term"
:
"desc"
}
}
},
"group_by_pub_year"
:
{
"terms"
:
{
"field"
:
"pub_year"
,
"size"
:
1000
,
"order"
:{
"_term"
:
"desc"
}
}
}
}
};
var
param
=
{
"wildcard"
:
{
"filing_no"
:
"*"
+
filingno
+
"*"
}
}
params
.
query
.
bool
.
must
.
push
(
param
);
var
pubtype
=
obj
.
pubtype
==
null
?
""
:
obj
.
pubtype
;
//专利类型
if
(
pubtype
!=
null
&&
pubtype
!=
""
){
param
=
{
"term"
:
{
"pub_type"
:
pubtype
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
pubstatus
=
obj
.
pubstatus
==
null
?
""
:
obj
.
pubstatus
;
//法律状态
if
(
pubstatus
!=
null
&&
pubstatus
!=
""
){
param
=
{
"term"
:
{
"pub_status"
:
pubstatus
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
filingyear
=
obj
.
filingyear
==
null
?
""
:
obj
.
filingyear
;
//申请年份
if
(
filingyear
!=
null
&&
filingyear
!=
""
){
param
=
{
"term"
:
{
"filing_year"
:
filingyear
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
pubyear
=
obj
.
pubyear
==
null
?
""
:
obj
.
pubyear
;
//公开年份
if
(
pubyear
!=
null
&&
pubyear
!=
""
){
param
=
{
"term"
:
{
"pub_year"
:
pubyear
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
){
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
CommomSearchbyPubno
(
obj
){
//根据公开号查询聚合
var
pagesize
=
obj
.
pagesize
==
null
?
10
:
obj
.
pagesize
;
if
(
obj
.
page
==
null
){
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
page
-
1
)
*
obj
.
pagesize
);
}
var
pubno
=
obj
.
pubno
==
null
?
""
:
obj
.
pubno
;
if
(
pubno
==
""
){
return
{
status
:
-
1
,
msg
:
"传入的公开号信息为空"
,
data
:
null
,
buckets
:
null
};
}
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
from
,
"size"
:
pagesize
,
"_source"
:
[
"filing_no"
,
"filing_time"
,
"pub_no"
,
"pub_time"
,
"gr_no"
,
"gr_time"
,
"pub_type"
,
"applicant_name"
,
"inventor_name"
,
"filing_name"
,
"pub_status"
],
"aggregations"
:
{
"group_by_pub_type"
:
{
"terms"
:
{
"field"
:
"pub_type"
,
"size"
:
1000
}
},
"group_by_pub_status"
:
{
"terms"
:
{
"field"
:
"pub_status"
,
"size"
:
1000
}
},
"group_by_filing_year"
:
{
"terms"
:
{
"field"
:
"filing_year"
,
"size"
:
1000
,
"order"
:{
"_term"
:
"desc"
}
}
},
"group_by_pub_year"
:
{
"terms"
:
{
"field"
:
"pub_year"
,
"size"
:
1000
,
"order"
:{
"_term"
:
"desc"
}
}
}
}
};
var
param
=
{
"bool"
:
{
"should"
:
[
]
}
}
var
parr
=
{
"wildcard"
:
{
"pub_no"
:
"*"
+
pubno
+
"*"
}
}
param
.
bool
.
should
.
push
(
parr
)
parr
=
{
"wildcard"
:
{
"gr_no"
:
"*"
+
pubno
+
"*"
}
}
param
.
bool
.
should
.
push
(
parr
)
params
.
query
.
bool
.
must
.
push
(
param
);
var
pubtype
=
obj
.
pubtype
==
null
?
""
:
obj
.
pubtype
;
//专利类型
if
(
pubtype
!=
null
&&
pubtype
!=
""
){
param
=
{
"term"
:
{
"pub_type"
:
pubtype
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
pubstatus
=
obj
.
pubstatus
==
null
?
""
:
obj
.
pubstatus
;
//法律状态
if
(
pubstatus
!=
null
&&
pubstatus
!=
""
){
param
=
{
"term"
:
{
"pub_status"
:
pubstatus
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
filingyear
=
obj
.
filingyear
==
null
?
""
:
obj
.
filingyear
;
//申请年份
if
(
filingyear
!=
null
&&
filingyear
!=
""
){
param
=
{
"term"
:
{
"filing_year"
:
filingyear
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
pubyear
=
obj
.
pubyear
==
null
?
""
:
obj
.
pubyear
;
//公开年份
if
(
pubyear
!=
null
&&
pubyear
!=
""
){
param
=
{
"term"
:
{
"pub_year"
:
pubyear
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
){
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
CommomSearchbyApplicant
(
obj
){
//根据申请人查询聚合
var
pagesize
=
obj
.
pagesize
==
null
?
10
:
obj
.
pagesize
;
if
(
obj
.
page
==
null
){
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
page
-
1
)
*
obj
.
pagesize
);
}
var
applicant
=
obj
.
applicant
==
null
?
""
:
obj
.
applicant
;
if
(
applicant
==
""
){
return
{
status
:
-
1
,
msg
:
"传入的申请人信息为空"
,
data
:
null
,
buckets
:
null
};
}
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
from
,
"size"
:
pagesize
,
"_source"
:
[
"filing_no"
,
"filing_time"
,
"pub_no"
,
"pub_time"
,
"gr_no"
,
"gr_time"
,
"pub_type"
,
"applicant_name"
,
"inventor_name"
,
"filing_name"
,
"pub_status"
],
"aggregations"
:
{
"group_by_pub_type"
:
{
"terms"
:
{
"field"
:
"pub_type"
,
"size"
:
1000
}
},
"group_by_pub_status"
:
{
"terms"
:
{
"field"
:
"pub_status"
,
"size"
:
1000
}
},
"group_by_filing_year"
:
{
"terms"
:
{
"field"
:
"filing_year"
,
"size"
:
1000
,
"order"
:{
"_term"
:
"desc"
}
}
},
"group_by_pub_year"
:
{
"terms"
:
{
"field"
:
"pub_year"
,
"size"
:
1000
,
"order"
:{
"_term"
:
"desc"
}
}
}
}
};
var
param
=
{
"query_string"
:
{
"default_field"
:
"applicant_name"
,
"query"
:
"
\"
"
+
applicant
+
"
\"
"
}
}
params
.
query
.
bool
.
must
.
push
(
param
);
var
pubtype
=
obj
.
pubtype
==
null
?
""
:
obj
.
pubtype
;
//专利类型
if
(
pubtype
!=
null
&&
pubtype
!=
""
){
param
=
{
"term"
:
{
"pub_type"
:
pubtype
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
pubstatus
=
obj
.
pubstatus
==
null
?
""
:
obj
.
pubstatus
;
//法律状态
if
(
pubstatus
!=
null
&&
pubstatus
!=
""
){
param
=
{
"term"
:
{
"pub_status"
:
pubstatus
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
filingyear
=
obj
.
filingyear
==
null
?
""
:
obj
.
filingyear
;
//申请年份
if
(
filingyear
!=
null
&&
filingyear
!=
""
){
param
=
{
"term"
:
{
"filing_year"
:
filingyear
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
pubyear
=
obj
.
pubyear
==
null
?
""
:
obj
.
pubyear
;
//公开年份
if
(
pubyear
!=
null
&&
pubyear
!=
""
){
param
=
{
"term"
:
{
"pub_year"
:
pubyear
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
){
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
CommomSearchbyInventor
(
obj
){
//根据发明人查询聚合
var
pagesize
=
obj
.
pagesize
==
null
?
10
:
obj
.
pagesize
;
if
(
obj
.
page
==
null
){
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
page
-
1
)
*
obj
.
pagesize
);
}
var
inventor
=
obj
.
inventor
==
null
?
""
:
obj
.
inventor
;
if
(
inventor
==
""
){
return
{
status
:
-
1
,
msg
:
"传入的发明人信息为空"
,
data
:
null
,
buckets
:
null
};
}
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
from
,
"size"
:
pagesize
,
"_source"
:
[
"filing_no"
,
"filing_time"
,
"pub_no"
,
"pub_time"
,
"gr_no"
,
"gr_time"
,
"pub_type"
,
"applicant_name"
,
"inventor_name"
,
"filing_name"
,
"pub_status"
],
"aggregations"
:
{
"group_by_pub_type"
:
{
"terms"
:
{
"field"
:
"pub_type"
,
"size"
:
1000
}
},
"group_by_pub_status"
:
{
"terms"
:
{
"field"
:
"pub_status"
,
"size"
:
1000
}
},
"group_by_filing_year"
:
{
"terms"
:
{
"field"
:
"filing_year"
,
"size"
:
1000
,
"order"
:{
"_term"
:
"desc"
}
}
},
"group_by_pub_year"
:
{
"terms"
:
{
"field"
:
"pub_year"
,
"size"
:
1000
,
"order"
:{
"_term"
:
"desc"
}
}
}
}
};
var
param
=
{
"query_string"
:
{
"default_field"
:
"inventor_name"
,
"query"
:
"
\"
"
+
inventor
+
"
\"
"
}
}
params
.
query
.
bool
.
must
.
push
(
param
);
var
pubtype
=
obj
.
pubtype
==
null
?
""
:
obj
.
pubtype
;
//专利类型
if
(
pubtype
!=
null
&&
pubtype
!=
""
){
param
=
{
"term"
:
{
"pub_type"
:
pubtype
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
pubstatus
=
obj
.
pubstatus
==
null
?
""
:
obj
.
pubstatus
;
//法律状态
if
(
pubstatus
!=
null
&&
pubstatus
!=
""
){
param
=
{
"term"
:
{
"pub_status"
:
pubstatus
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
filingyear
=
obj
.
filingyear
==
null
?
""
:
obj
.
filingyear
;
//申请年份
if
(
filingyear
!=
null
&&
filingyear
!=
""
){
param
=
{
"term"
:
{
"filing_year"
:
filingyear
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
pubyear
=
obj
.
pubyear
==
null
?
""
:
obj
.
pubyear
;
//公开年份
if
(
pubyear
!=
null
&&
pubyear
!=
""
){
param
=
{
"term"
:
{
"pub_year"
:
pubyear
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
){
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
ChinaPatentSrearch
(
obj
){
//根据条件查询
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
};
}
catch
(
e
){
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
};
}
};
async
seniorSearch
(
obj
){
//高级检索,根据用户输入的不同多条件进行检索
var
pagesize
=
obj
.
pagesize
==
null
?
10
:
obj
.
pagesize
;
if
(
obj
.
page
==
null
){
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
page
-
1
)
*
obj
.
pagesize
);
}
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
from
,
"size"
:
pagesize
,
"_source"
:
[
"filing_no"
,
"filing_time"
,
"pub_no"
,
"pub_time"
,
"gr_no"
,
"gr_time"
,
"pub_type"
,
"applicant_name"
,
"inventor_name"
,
"filing_name"
,
"pub_status"
]
};
var
param
=
null
;
//对关键词
var
title
=
obj
.
title
==
null
?
""
:
obj
.
title
;
if
(
title
!=
null
&&
title
!=
""
){
param
=
{
"match"
:
{
"filing_name"
:
title
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
abstr
=
obj
.
abstr
==
null
?
""
:
obj
.
abstr
;
if
(
abstr
!=
null
&&
abstr
!=
""
){
param
=
{
"match"
:
{
"abstr_text"
:
abstr
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
filingno
=
obj
.
filingno
==
null
?
""
:
obj
.
filingno
;
if
(
filingno
!=
null
&&
filingno
!=
""
){
filingno
=
filingno
.
replace
(
"CN"
,
""
).
replace
(
"cn"
,
""
).
replace
(
"."
,
""
);
if
(
filingno
.
length
==
13
){
filingno
=
filingno
.
substr
(
0
,
12
);
}
else
if
(
filingno
.
length
==
9
){
filingno
=
filingno
.
substr
(
0
,
8
);
}
param
=
{
"term"
:
{
"filing_no"
:
filingno
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
pubno
=
obj
.
pubno
==
null
?
""
:
obj
.
pubno
;
if
(
pubno
!=
null
&&
pubno
!=
""
){
param
=
{
"bool"
:
{
"should"
:
[
]
}
}
var
parr
=
{
"term"
:
{
"pub_no"
:
pubno
}
}
param
.
bool
.
should
.
push
(
parr
)
parr
=
{
"term"
:
{
"gr_no"
:
pubno
}
}
param
.
bool
.
should
.
push
(
parr
)
params
.
query
.
bool
.
must
.
push
(
param
);
}
var
priorno
=
obj
.
priorno
==
null
?
""
:
obj
.
priorno
;
if
(
priorno
!=
null
&&
priorno
!=
""
){
param
=
{
"nested"
:
{
"path"
:
"prior_info"
,
"query"
:
{
"bool"
:
{
"must"
:
[
{
"term"
:
{
"prior_info.pri_no"
:
priorno
}}
]
}
}
}
};
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
appl
=
obj
.
applname
==
null
?
""
:
obj
.
applname
;
if
(
appl
!=
null
&&
appl
!=
""
){
param
=
{
"term"
:
{
"applicant_name.raw"
:
appl
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
inv
=
obj
.
invname
==
null
?
""
:
obj
.
invname
;
if
(
inv
!=
null
&&
inv
!=
""
){
param
=
{
"term"
:
{
"inventor_name.raw"
:
inv
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
ipc
=
obj
.
ipcno
==
null
?
""
:
obj
.
ipcno
;
if
(
ipc
!=
null
&&
ipc
!=
""
){
var
param
=
{
"term"
:
{
"other_ipc"
:
ipc
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
if
(
obj
.
filingdate1
!=
null
&&
obj
.
filingdate1
!=
""
){
var
filingdate1
=
obj
.
filingdate1
;
}
else
{
var
filingdate1
=
""
;
}
if
(
obj
.
filingdate2
!=
null
&&
obj
.
filingdate2
!=
""
){
var
filingdate2
=
obj
.
filingdate2
;
}
else
{
var
filingdate2
=
""
;
}
if
(
filingdate1
!=
""
||
filingdate2
!=
""
){
param
=
{
"range"
:
{
"filing_time"
:
{
}
}
};
if
(
filingdate1
!=
""
){
param
.
range
.
filing_time
[
"gte"
]
=
filingdate1
;
}
if
(
filingdate2
!=
""
){
param
.
range
.
filing_time
[
"lte"
]
=
filingdate2
;
}
params
.
query
.
bool
.
must
.
push
(
param
);
}
if
(
obj
.
pubdate1
!=
null
&&
obj
.
pubdate1
!=
""
){
var
pubdate1
=
obj
.
pubdate1
;
}
else
{
var
pubdate1
=
""
;
}
if
(
obj
.
pubdate2
!=
null
&&
obj
.
pubdate2
!=
""
){
var
pubdate2
=
obj
.
pubdate2
;
}
else
{
var
pubdate2
=
""
;
}
if
(
pubdate1
!=
""
||
pubdate2
!=
""
){
param
=
{
"range"
:
{
"pub_time"
:
{
}
}
};
if
(
pubdate1
!=
""
){
param
.
range
.
pub_time
[
"gte"
]
=
pubdate1
;
}
if
(
pubdate2
!=
""
){
param
.
range
.
pub_time
[
"lte"
]
=
pubdate2
;
}
params
.
query
.
bool
.
must
.
push
(
param
);
}
if
(
obj
.
grdate1
!=
null
&&
obj
.
grdate1
!=
""
){
var
grdate1
=
obj
.
grdate1
;
}
else
{
var
grdate1
=
""
;
}
if
(
obj
.
grdate2
!=
null
&&
obj
.
grdate2
!=
""
){
var
grdate2
=
obj
.
grdate2
;
}
else
{
var
grdate2
=
""
;
}
if
(
grdate1
!=
""
||
grdate2
!=
""
){
param
=
{
"range"
:
{
"gr_time"
:
{
}
}
};
if
(
grdate1
!=
""
){
param
.
range
.
gr_time
[
"gte"
]
=
grdate1
;
}
if
(
grdate2
!=
""
){
param
.
range
.
gr_time
[
"lte"
]
=
grdate2
;
}
params
.
query
.
bool
.
must
.
push
(
param
);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
System
.
getResult2
(
j
.
hits
,
null
);
}
catch
(
e
){
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
};
}
module
.
exports
=
ChinaPatentSearchApi
;
igirl-channel/app/base/api/impl/patent/cpatentaggregations.js
deleted
100644 → 0
View file @
bf4c109f
var
System
=
require
(
"../../../system"
);
var
settings
=
require
(
"../../../../config/settings"
);
const
querystring
=
require
(
'querystring'
);
const
ApiBase
=
require
(
"../../api.base"
);
class
CPatentAggregationsApi
extends
ApiBase
{
constructor
()
{
super
();
this
.
patentUrl
=
settings
.
reqEsAddrIc
()
+
"bigdata_patent_op/_search"
;
};
buildDate
(
date
)
{
var
date
=
new
Date
(
date
);
var
time
=
Date
.
parse
(
date
);
time
=
time
/
1000
;
return
time
;
};
async
ApplicantAggs
(
obj
)
{
//申请人排名聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"applicant_name.raw"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AppCountryAggs
(
obj
)
{
//申请人归属国聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"country_name"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
filingyearAggs
(
obj
)
{
//申请年份聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"filing_year"
,
"size"
:
20
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
PubTypeAggs
(
obj
)
{
//专利类型聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"pub_type"
,
"size"
:
20
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
};
if
(
obj
&&
obj
.
length
>
0
)
{
params
.
query
.
bool
.
must
=
obj
;
}
else
{
return
rtn
=
{
status
:
-
100
,
msg
:
"查询条件为空"
,
data
:
null
,
buckets
:
null
};
}
// for (var x in obj) {
// if (obj[x]) {
// params.query.bool.must.push(obj[x]);
// }
// }
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
PubstatusAggs
(
obj
)
{
//法律状态聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
20
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"pub_status"
,
"size"
:
20
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
PubstatusnowAggs
(
obj
)
{
//当前法律状态聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"pub_status_now"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
pubyearAggs
(
obj
)
{
//公开年份聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"pub_year"
,
"size"
:
20
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
pubmonthAggs
(
obj
)
{
//公开月份聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"pub_month"
,
"size"
:
12
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
filingmonthAggs
(
obj
)
{
//申请月份聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"filing_month"
,
"size"
:
12
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
grmonthAggs
(
obj
)
{
//授权月份聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"gr_month"
,
"size"
:
12
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
FmpubyearAggs
(
obj
)
{
//发明公开年份聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"bool"
:
{
"must_not"
:{
"exists"
:
{
"field"
:
"gr_no"
}}}}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"pub_year"
,
"size"
:
20
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
GryearAggs
(
obj
)
{
//授权年份年份聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"gr_year"
,
"size"
:
20
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
};
obj
.
push
({
"exists"
:
{
"field"
:
"gr_no"
}
});
params
.
query
.
bool
.
must
=
obj
;
// for (var x in obj) {
// if (obj[x]) {
// params.query.bool.must.push(obj[x]);
// }
// }
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AgencyAggs
(
obj
)
{
//代理机构聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"agency_name.raw"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
TitleAggs
(
obj
)
{
//标题聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"filing_name.raw"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
KeyWordAggs
(
obj
)
{
//关键词聚合聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"key_word"
,
"size"
:
40
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
// //日志记录
// logCtl.info({
// optitle: "专利关键词聚合聚合ES返回结果--info222",
// op: "/igirl-web/app/base/api/impl/cpatentaggregations.js/KeyWordAggs",
// content: "reqUrl=" + this.patentUrl + ",params.query.bool.must=" +
// JSON.stringify(params.query.bool.must) + ",params.query.bool.must.length=" +
// params.query.bool.must.length + ",obj参数:" + JSON.stringify(obj),
// clientIp: ""
// });
if
(
obj
&&
obj
.
length
>
0
)
{
params
.
query
.
bool
.
must
=
obj
;
}
else
{
return
rtn
=
{
status
:
-
100
,
msg
:
"参数错误"
,
data
:
null
,
buckets
:
null
};
}
// for (var x in obj) {
// if (obj[x] && obj[x] != null && obj[x] != "undefined") {
// params.query.bool.must = obj;
// }
// }
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
//日志记录
// logCtl.info({
// optitle: "专利关键词聚合聚合ES返回结果--info",
// op: "/igirl-web/app/base/api/impl/cpatentaggregations.js/KeyWordAggs",
// content: "reqUrl=" + this.patentUrl + ",参数:" + JSON.stringify(params) + ",result:" + rtn.stdout,
// clientIp: ""
// });
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
CategoryNameAggs
(
obj
)
{
//行业分类-门类聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"category_name"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
BroadNameAggs
(
obj
)
{
//行业分类-大类聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"broad_name"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
MiddleNameAggs
(
obj
)
{
//行业分类-中类聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"middle_name"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
SmallNameAggs
(
obj
)
{
//行业分类-小类聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"middle_name"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AgentAggs
(
obj
)
{
//代理人聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"agent_name1"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AppIpclcAggs
(
obj
)
{
//Ipc大类聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"large class"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AppIpclcMutiAggs
(
obj
)
{
//申请人Ipc大类聚合//Ipc小类聚合申请人Ipc大类聚合,业务逻辑,先查询申请排名前十的申请人,再加上前十申请人的条件查询排名前十的大类,再加上前十申请人条件和前十大类条件,多重聚合,这个是最后一次聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_appl"
:
{
"terms"
:
{
"field"
:
"applicant_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"large class"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AppIpcscAggs
(
obj
)
{
//Ipc小类聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"sub_class"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AppIpcscMutiAggs
(
obj
)
{
//Ipc小类聚合申请人Ipc小类聚合,业务逻辑,先查询申请排名前十的申请人,再加上前十申请人的条件查询排名前十的小类,再加上前十申请人条件和前十小类条件,多重聚合,这个是最后一次聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_appl"
:
{
"terms"
:
{
"field"
:
"applicant_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"sub_class"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AppIpclgAggs
(
obj
)
{
//Ipc大组聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"large_group"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AppIpclgMutiAggs
(
obj
)
{
//申请人Ipc大组聚合,业务逻辑,先查询申请排名前十的申请人,再加上前十申请人的条件查询排名前十的大组,再加上前十申请人条件和前十大组条件,多重聚合,这个是最后一次聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_appl"
:
{
"terms"
:
{
"field"
:
"applicant_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"large_group"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AppIpcAggs
(
obj
)
{
//Ipc聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"main_ipc"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AppIpcMutiAggs
(
obj
)
{
//申请人Ipc直属聚合,业务逻辑,先查询申请排名前十的申请人,再加上前十申请人的条件查询排名前十的IPC,再加上前十申请人条件和前十IPC条件,多重聚合,这个是最后一次聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_appl"
:
{
"terms"
:
{
"field"
:
"applicant_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"main_ipc"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AppPubtypeAggs
(
obj
)
{
//申请人专利类型聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_appl"
:
{
"terms"
:
{
"field"
:
"applicant_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_pubtype"
:
{
"terms"
:
{
"field"
:
"pub_type"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
if
(
obj
[
x
]){
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AppPubstatusAggs
(
obj
)
{
//申请人专利法律效力聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_appl"
:
{
"terms"
:
{
"field"
:
"applicant_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_pubstatus"
:
{
"terms"
:
{
"field"
:
"pub_status"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AppfilingyearAggs
(
obj
)
{
//申请人申请趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_appl"
:
{
"terms"
:
{
"field"
:
"applicant_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_filingyear"
:
{
"terms"
:
{
"field"
:
"filing_year"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AppfmsqAggs
(
obj
)
{
//申请人发明授权聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"exists"
:
{
"field"
:
"gr_no"
}}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"applicant_name.raw"
,
"size"
:
20
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
InventorAggs
(
obj
)
{
//发明人排名聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"inventor_name.raw"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
InvIpcMutiAggs
(
obj
)
{
//发明人Ipc直属聚合,业务逻辑,先查询申请排名前十的发明人,再加上前十发明人的条件查询排名前十的IPC,再加上前十发明人条件和前十IPC条件,多重聚合,这个是最后一次聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_inv"
:
{
"terms"
:
{
"field"
:
"inventor_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"main_ipc"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
InvPubtypeAggs
(
obj
)
{
//发明人专利类型聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_inv"
:
{
"terms"
:
{
"field"
:
"inventor_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_pubtype"
:
{
"terms"
:
{
"field"
:
"pub_type"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
InvPubstatusAggs
(
obj
)
{
//发明人专利法律效力聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_inv"
:
{
"terms"
:
{
"field"
:
"inventor_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_pubstatus"
:
{
"terms"
:
{
"field"
:
"pub_status"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
InvfilingyearAggs
(
obj
)
{
//发明人申请趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_inv"
:
{
"terms"
:
{
"field"
:
"inventor_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_filingyear"
:
{
"terms"
:
{
"field"
:
"filing_year"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
InvPubyearAggs
(
obj
)
{
//发明人公开趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_inv"
:
{
"terms"
:
{
"field"
:
"inventor_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_pubyear"
:
{
"terms"
:
{
"field"
:
"pub_year"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
ProvinceAggs
(
obj
)
{
//省份聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"exists"
:
{
"field"
:
"province_name"
}}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"province_name"
,
"size"
:
50
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
cityAggs
(
obj
)
{
//二级地市聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"exists"
:
{
"field"
:
"city_name"
}}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"city_name"
,
"size"
:
50
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
countyAggs
(
obj
)
{
//三级县市聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"exists"
:
{
"field"
:
"county_name"
}}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"county_name"
,
"size"
:
50
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
ForeignCountryAggs
(
obj
)
{
//外国在华申请聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"bool"
:
{
"must_not"
:
{
"term"
:
{
"country_name"
:
"中国"
}
}
}
}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"country_name"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
ForeignIpcAggs
(
obj
)
{
//外国在华IPC聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"bool"
:
{
"must_not"
:
{
"term"
:
{
"country_name"
:
"中国"
}
}
}
}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_country"
:
{
"terms"
:
{
"field"
:
"country_name"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"main_ipc"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
ForeignLcAggs
(
obj
)
{
//外国在华大类聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"bool"
:
{
"must_not"
:
{
"term"
:
{
"country_name"
:
"中国"
}
}
}
}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_country"
:
{
"terms"
:
{
"field"
:
"country_name"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"large class"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
ForeignScAggs
(
obj
)
{
//外国在华小类聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"bool"
:
{
"must_not"
:
{
"term"
:
{
"country_name"
:
"中国"
}
}
}
}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_country"
:
{
"terms"
:
{
"field"
:
"country_name"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"sub_class"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
ForeignLgAggs
(
obj
)
{
//外国在华大组聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"bool"
:
{
"must_not"
:
{
"term"
:
{
"country_name"
:
"中国"
}
}
}
}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_country"
:
{
"terms"
:
{
"field"
:
"country_name"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"large_group"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
IpcFilingyearAggs
(
obj
)
{
//IPC申请趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"main_ipc"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_year"
:
{
"terms"
:
{
"field"
:
"filing_year"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
IpcLgFilingyearAggs
(
obj
)
{
//IPC大组申请趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"large_group"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_year"
:
{
"terms"
:
{
"field"
:
"filing_year"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
IpcLcFilingyearAggs
(
obj
)
{
//IPC大类申请趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"large class"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_year"
:
{
"terms"
:
{
"field"
:
"filing_year"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
IpcScFilingyearAggs
(
obj
)
{
//IPC小类申请趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"sub_class"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_year"
:
{
"terms"
:
{
"field"
:
"filing_year"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
pubtypeFilingyearAggs
(
obj
)
{
//专利类型申请趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_type"
:
{
"terms"
:
{
"field"
:
"pub_type"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_year"
:
{
"terms"
:
{
"field"
:
"filing_year"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
pubtypePubyearAggs
(
obj
)
{
//专利类型公开趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_type"
:
{
"terms"
:
{
"field"
:
"pub_type"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_year"
:
{
"terms"
:
{
"field"
:
"pub_year"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AgencyPubtypeAggs
(
obj
)
{
//代理机构类型趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_agency"
:
{
"terms"
:
{
"field"
:
"agency_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_type"
:
{
"terms"
:
{
"field"
:
"pub_type"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AgencyFilingyearAggs
(
obj
)
{
//代理机构申请趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_agency"
:
{
"terms"
:
{
"field"
:
"agency_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_year"
:
{
"terms"
:
{
"field"
:
"filing_year"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AgencyPubyearAggs
(
obj
)
{
//代理机构公开趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_agency"
:
{
"terms"
:
{
"field"
:
"agency_name.raw"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_year"
:
{
"terms"
:
{
"field"
:
"pub_year"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AgencyIpcAggs
(
obj
)
{
//代理机构IPC趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_agency"
:
{
"terms"
:
{
"field"
:
"agency_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"main_ipc"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AgencyLcAggs
(
obj
)
{
//代理机构大类趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_agency"
:
{
"terms"
:
{
"field"
:
"agency_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"large class"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AgencyfmsqAggs
(
obj
)
{
//代理机构发明授权聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"exists"
:
{
"field"
:
"gr_no"
}}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"agency_name.raw"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AgencyScAggs
(
obj
)
{
//代理机构小类趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_agency"
:
{
"terms"
:
{
"field"
:
"agency_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"sub_class"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AgencyLgAggs
(
obj
)
{
//代理机构大组趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_agency"
:
{
"terms"
:
{
"field"
:
"agency_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"large_group"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AgentPubtypeAggs
(
obj
)
{
//代理人类型趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_agency"
:
{
"terms"
:
{
"field"
:
"agent_name1"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_type"
:
{
"terms"
:
{
"field"
:
"pub_type"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
provincePubstatusAggs
(
obj
,
areaname
,
type
)
{
//根据传的省|市|县信息不同类型聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_country"
:
{
"terms"
:
{
"field"
:
"province_name"
,
"size"
:
50
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
if
(
type
==
2
){
if
(
areaname
==
'北京市'
||
areaname
==
'天津市'
||
areaname
==
'重庆市'
||
areaname
==
'上海市'
)
{
params
.
aggregations
.
group_by_country
.
terms
.
field
=
"county_name"
;
}
else
{
params
.
aggregations
.
group_by_country
.
terms
.
field
=
"city_name"
;
}
}
else
if
(
type
==
3
||
type
==
4
){
params
.
aggregations
.
group_by_country
.
terms
.
field
=
"county_name"
;
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
}
module
.
exports
=
CPatentAggregationsApi
;
igirl-channel/app/base/api/impl/patent/patentApi.js
deleted
100644 → 0
View file @
bf4c109f
var
System
=
require
(
"../../../system"
);
var
settings
=
require
(
"../../../../config/settings"
);
const
ApiBase
=
require
(
"../../api.base"
);
var
pinyin
=
require
(
"pinyin"
);
class
patentApi
extends
ApiBase
{
constructor
(){
super
();
this
.
service
=
System
.
getObject
(
"service.patent.patentycSve"
);
this
.
GsbByChinaPatentSearchApi
=
System
.
getObject
(
"api.patent.chinapatentsearch"
);
this
.
GsbByWorldPatentSearchApi
=
System
.
getObject
(
"api.patent.wordpatentsearch"
);
this
.
GsbByChinaAffairSearchApi
=
System
.
getObject
(
"api.patent.chinaaffairsearch"
);
}
//专利价值评价
async
patentrank
(
pobj
,
obj
,
req
){
var
result
=
await
this
.
service
.
patentrank
(
obj
);
return
System
.
getResult2
(
result
,
null
);
}
//专利价值评价报告
async
obtainreport
(
pobj
,
obj
,
req
){
var
result
=
await
this
.
service
.
obtainreport
(
obj
);
return
System
.
getResult2
(
result
,
null
);
}
//申请人分析-申请人排名
async
applierRank
(
pobj
,
obj
,
req
)
{
var
result
=
await
this
.
service
.
applierRank
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
//申请人分析-申请人归属国分析
async
applierCity
(
pobj
,
obj
,
req
)
{
var
result
=
await
this
.
service
.
applierCity
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
//申请人分析-申请人IPC分析
async
applierIpc
(
pobj
,
obj
,
req
)
{
var
result
=
await
this
.
service
.
applierIpc
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
//申请人分析-申请人专利类型分布
async
applierPatenttype
(
pobj
,
obj
,
req
)
{
var
result
=
await
this
.
service
.
applierPatenttype
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
//申请人分析-申请人专利法律效力
async
applierPatentStatus
(
pobj
,
obj
,
req
)
{
var
result
=
await
this
.
service
.
applierPatentStatus
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
//申请人分析-申请人申请趋势分析
async
applierTrend
(
pobj
,
obj
,
req
)
{
var
result
=
await
this
.
service
.
applierTrend
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
//申请人分析-申请人发明授权率
async
applierAuthRate
(
pobj
,
obj
,
req
)
{
var
result
=
await
this
.
service
.
applierAuthRate
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
//发明人分析-发明人排名
async
inventorRank
(
pobj
,
obj
,
req
)
{
var
result
=
await
this
.
service
.
inventorRank
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
//发明人分析-主要发明人技术构成
async
mainInventorIpc
(
pobj
,
obj
,
req
)
{
var
result
=
await
this
.
service
.
mainInventorIpc
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
//发明人分析-主要发明人专利类型分布
async
mainInventorPatenttype
(
pobj
,
obj
,
req
)
{
var
result
=
await
this
.
service
.
mainInventorPatenttype
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
//发明人分析-主要发明人专利法律效力*/
async
mainInventorPatentstatus
(
pobj
,
obj
,
req
)
{
var
result
=
await
this
.
service
.
mainInventorPatentstatus
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
//发明人分析-主要发明人申请趋势
async
mainInventorApplyTrend
(
pobj
,
obj
,
req
)
{
var
result
=
await
this
.
service
.
mainInventorApplyTrend
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
//发明人分析-主要发明人公开趋势*/
async
mainInventorPublicTrend
(
pobj
,
obj
,
req
)
{
var
result
=
await
this
.
service
.
mainInventorPublicTrend
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
countrywidePatnet
(
pobj
,
obj
,
req
)
{
//*区域分析-全国专利分布
var
result
=
await
this
.
service
.
countrywidePatnet
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
everyCountryPatent
(
pobj
,
obj
,
req
)
{
//区域分析-各国专利分布
var
result
=
await
this
.
service
.
everyCountryPatent
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
foreignApplyInChina
(
pobj
,
obj
,
req
)
{
//区域分析-外国在华申请分布
var
result
=
await
this
.
service
.
foreignApplyInChina
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
mainCountryIpc
(
pobj
,
obj
,
req
)
{
//区域分析-主要国家IPC分布
var
result
=
await
this
.
service
.
mainCountryIpc
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
reportGeneration
(
pobj
,
obj
,
req
)
{
//导出报告
var
result
=
await
this
.
service
.
reportGeneration
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
mainCountryApplyTrend
(
pobj
,
obj
,
req
)
{
//区域分析-主要国家申请趋势
var
result
=
await
this
.
service
.
mainCountryApplyTrend
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
patentIpc
(
pobj
,
obj
,
req
)
{
//技术结构分析-专利IPC分析
var
result
=
await
this
.
service
.
patentIpc
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
wgsjPatent
(
pobj
,
obj
,
req
)
{
//技术结构分析-外观设计分类分析
var
result
=
await
this
.
service
.
wgsjPatent
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
foreignInChinaPatent
(
pobj
,
obj
,
req
)
{
//技术结构分析-外国在华专利IPC分布
var
result
=
await
this
.
service
.
foreignInChinaPatent
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
fmPatentIpc
(
pobj
,
obj
,
req
)
{
//技术结构分析-发明专利IPC 分布
var
result
=
await
this
.
service
.
fmPatentIpc
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
mainIpcTrend
(
pobj
,
obj
,
req
)
{
//技术结构分析-主要IPC趋势分析
var
result
=
await
this
.
service
.
mainIpcTrend
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
applyTrend
(
pobj
,
obj
,
req
)
{
//趋势分析-申请趋势
var
result
=
await
this
.
service
.
applyTrend
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
publicTrend
(
pobj
,
obj
,
req
)
{
//趋势分析-公开趋势
var
result
=
await
this
.
service
.
publicTrend
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
authorizeTrend
(
pobj
,
obj
,
req
)
{
//趋势分析-授权趋势
var
result
=
await
this
.
service
.
authorizeTrend
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
patenttypeStatus
(
pobj
,
obj
,
req
)
{
//法律状态分析-各专利类型分布
var
result
=
await
this
.
service
.
patenttypeStatus
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
statusEffect
(
pobj
,
obj
,
req
)
{
//法律状态分析-法律效力分布
var
result
=
await
this
.
service
.
statusEffect
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
nowStatus
(
pobj
,
obj
,
req
)
{
//法律状态分析-当前法律状态分布
var
result
=
await
this
.
service
.
nowStatus
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
authStatus
(
pobj
,
obj
,
req
)
{
//法律状态分析-授权状态分布
var
result
=
await
this
.
service
.
authStatus
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
everyApplyTrend
(
pobj
,
obj
,
req
)
{
//法律状态分析-各专利类型申请趋势
var
result
=
await
this
.
service
.
everyApplyTrend
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
everyPublicTrend
(
pobj
,
obj
,
req
)
{
//法律状态分析-各专利类型公开趋势
var
result
=
await
this
.
service
.
everyPublicTrend
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
agentRank
(
pobj
,
obj
,
req
)
{
//代理人/机构分析-代理机构排名
var
result
=
await
this
.
service
.
agentRank
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
agentApplyTrend
(
pobj
,
obj
,
req
)
{
//代理人/机构分析-代理机构专利申请趋势
var
result
=
await
this
.
service
.
agentApplyTrend
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
agentPatenttype
(
pobj
,
obj
,
req
)
{
//代理人/机构分析-代理机构专利类型分布
var
result
=
await
this
.
service
.
agentPatenttype
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
agentFmAuthorize
(
pobj
,
obj
,
req
)
{
//代理人/机构分析-代理机构发明授权率
var
result
=
await
this
.
service
.
agentFmAuthorize
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
agentIpc
(
pobj
,
obj
,
req
)
{
//代理人/机构分析-代理机构IPC分布
var
result
=
await
this
.
service
.
agentIpc
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
agentPersonRank
(
pobj
,
obj
,
req
)
{
//代理人/机构分析-代理人排名
var
result
=
await
this
.
service
.
agentPersonRank
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
mainAgentPatenttype
(
pobj
,
obj
,
req
){
//代理人/机构分析-主要代理人专利类型分布
var
result
=
await
this
.
service
.
mainAgentPatenttype
(
obj
);
return
System
.
getResult2
(
result
,
null
);
};
async
advancedsearch
(
pobj
,
obj
)
{
console
.
log
(
"--------------advancedsearch---------------"
);
console
.
log
(
obj
);
var
datalist
=
[];
var
patent1
=
[];
var
patent2
=
[];
var
total
=
0
;
var
total1
=
0
;
var
total2
=
0
;
var
range1
=
obj
.
range
.
china
.
join
();
var
database
=
""
;
if
(
range1
.
indexOf
(
"香港"
)
>=
0
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"HKPATENT"
;
}
else
{
database
=
database
+
"HKPATENT"
;
}
}
if
(
range1
.
indexOf
(
"台湾"
)
>=
0
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"TWZL"
;
}
else
{
database
=
database
+
"TWZL"
;
}
}
if
(
range1
.
indexOf
(
"澳门"
)
>=
0
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"MACZL"
;
}
else
{
database
=
database
+
"MACZL"
;
}
}
for
(
var
i
=
0
;
i
<
obj
.
range
.
main
.
length
;
i
++
)
{
if
(
obj
.
range
.
main
[
i
]
==
"EPO"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"EPPATENT"
;
}
else
{
database
=
database
+
"EPPATENT"
;
}
}
if
(
obj
.
range
.
main
[
i
]
==
"WIPO"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"WOPATENT"
;
}
else
{
database
=
database
+
"WOPATENT"
;
}
}
if
(
obj
.
range
.
main
[
i
]
==
"美国"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"USPATENT"
;
}
else
{
database
=
database
+
"USPATENT"
;
}
}
if
(
obj
.
range
.
main
[
i
]
==
"日本"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"JPPATENT"
;
}
else
{
database
=
database
+
"JPPATENT"
;
}
}
if
(
obj
.
range
.
main
[
i
]
==
"韩国"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"KRPATENT"
;
}
else
{
database
=
database
+
"KRPATENT"
;
}
}
if
(
obj
.
range
.
main
[
i
]
==
"英国"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"GBPATENT"
;
}
else
{
database
=
database
+
"GBPATENT"
;
}
}
if
(
obj
.
range
.
main
[
i
]
==
"法国"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"FRPATENT"
;
}
else
{
database
=
database
+
"FRPATENT"
;
}
}
if
(
obj
.
range
.
main
[
i
]
==
"德国"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"DEPATENT"
;
}
else
{
database
=
database
+
"DEPATENT"
;
}
}
if
(
obj
.
range
.
main
[
i
]
==
"俄罗斯"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"RUPATENT"
;
}
else
{
database
=
database
+
"RUPATENT"
;
}
}
if
(
obj
.
range
.
main
[
i
]
==
"瑞士"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"CHPATENT"
;
}
else
{
database
=
database
+
"CHPATENT"
;
}
}
}
for
(
var
i
=
0
;
i
<
obj
.
range
.
other
.
length
;
i
++
)
{
if
(
obj
.
range
.
other
[
i
]
==
"奥地利"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"ATPATENT"
;
}
else
{
database
=
database
+
"ATPATENT"
;
}
}
if
(
obj
.
range
.
other
[
i
]
==
"澳大利亚"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"AUPATENT"
;
}
else
{
database
=
database
+
"AUPATENT"
;
}
}
if
(
obj
.
range
.
other
[
i
]
==
"西班牙"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"ESPATENT"
;
}
else
{
database
=
database
+
"ESPATENT"
;
}
}
if
(
obj
.
range
.
other
[
i
]
==
"意大利"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"ITPATENT"
;
}
else
{
database
=
database
+
"ITPATENT"
;
}
}
if
(
obj
.
range
.
other
[
i
]
==
"加拿大"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"CAPATENT"
;
}
else
{
database
=
database
+
"CAPATENT"
;
}
}
if
(
obj
.
range
.
other
[
i
]
==
"瑞典"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"SEPATENT"
;
}
else
{
database
=
database
+
"SEPATENT"
;
}
}
}
if
(
range1
.
indexOf
(
"中国大陆"
)
>=
0
&&
database
.
length
!=
0
)
{
var
size
=
obj
.
pagesize
/
2
;
}
else
{
var
size
=
obj
.
pagesize
;
}
if
(
range1
.
indexOf
(
"中国大陆"
)
!=
-
1
)
{
console
.
log
(
"-----------------中国大陆--------"
);
var
data1
=
{
appKey
:
"9d9bcbb6a82f44dbbdb185afe28032bc"
,
pagesize
:
size
,
page
:
obj
.
currentpage
,
title
:
obj
.
patentname
,
abstr
:
obj
.
abstract
,
filingno
:
obj
.
applynum
,
pubno
:
obj
.
publishnum
,
priorno
:
obj
.
priornum
,
applname
:
obj
.
applier
,
invname
:
obj
.
inventor
,
ipcno
:
obj
.
ipc
,
filingdate1
:
obj
.
applydate1
,
filingdate2
:
obj
.
applydate2
,
pubdate1
:
obj
.
publishdate1
,
pubdate2
:
obj
.
publishdate2
,
grdate1
:
obj
.
grantdate1
,
grdate2
:
obj
.
grantdate2
};
var
patentinfo1
=
await
this
.
GsbByChinaPatentSearchApi
.
seniorSearch
(
data1
);
}
if
(
range1
.
indexOf
(
"香港"
)
!=
-
1
||
range1
.
indexOf
(
"澳门"
)
!=
-
1
||
range1
.
indexOf
(
"台湾"
)
!=
-
1
||
obj
.
range
.
main
.
length
!=
0
||
obj
.
range
.
other
.
length
!=
0
)
{
console
.
log
(
"-----------------国外--------"
);
var
data2
=
{
appKey
:
"9d9bcbb6a82f44dbbdb185afe28032bc"
,
pagesize
:
size
,
page
:
obj
.
currentpage
,
danames
:
database
,
title
:
obj
.
patentname
,
abstr
:
obj
.
abstract
,
filingno
:
obj
.
applynum
,
pubno
:
obj
.
publishnum
,
priorno
:
obj
.
priornum
,
applname
:
obj
.
applier
,
invname
:
obj
.
inventor
,
ipcno
:
obj
.
ipc
,
filingdate1
:
obj
.
applydate1
,
filingdate2
:
obj
.
applydate2
,
pubdate1
:
obj
.
publishdate1
,
pubdate2
:
obj
.
publishdate2
,
grdate1
:
obj
.
grantdate1
,
grdate2
:
obj
.
grantdate2
};
var
patentinfo2
=
await
this
.
GsbByWorldPatentSearchApi
.
seniorSearch
(
data2
);
}
if
(
patentinfo1
)
{
if
(
patentinfo1
.
status
==
0
)
{
console
.
log
(
"----------patentdata1-------------"
);
console
.
log
(
patentinfo1
);
total1
=
patentinfo1
.
data
.
total
;
var
patentdata1
=
patentinfo1
.
data
.
hits
;
for
(
var
i
=
0
;
i
<
patentinfo1
.
data
.
hits
.
length
;
i
++
)
{
var
publish_num
=
""
;
var
publish_date
=
""
;
if
(
patentinfo1
.
data
.
hits
[
i
].
_source
.
pub_type
==
"发明"
)
{
publish_num
=
patentinfo1
.
data
.
hits
[
i
].
_source
.
pub_no
;
publish_date
=
patentinfo1
.
data
.
hits
[
i
].
_source
.
pub_time
;
}
else
{
publish_num
=
patentinfo1
.
data
.
hits
[
i
].
_source
.
gr_no
;
publish_date
=
patentinfo1
.
data
.
hits
[
i
].
_source
.
gr_time
;
}
var
applierinfo
=
""
;
if
(
patentinfo1
.
data
.
hits
[
i
].
_source
.
applicant_name
!=
null
)
{
for
(
var
j
=
0
;
j
<
patentinfo1
.
data
.
hits
[
i
].
_source
.
applicant_name
.
length
;
j
++
)
{
if
(
applierinfo
)
{
applierinfo
=
applierinfo
+
","
+
patentinfo1
.
data
.
hits
[
i
].
_source
.
applicant_name
[
j
];
}
else
{
applierinfo
=
applierinfo
+
patentinfo1
.
data
.
hits
[
i
].
_source
.
applicant_name
[
j
];
}
}
}
var
inventorinfo
=
""
;
if
(
patentinfo1
.
data
.
hits
[
i
].
_source
.
inventor_name
!=
null
)
{
for
(
var
j
=
0
;
j
<
patentinfo1
.
data
.
hits
[
i
].
_source
.
inventor_name
.
length
;
j
++
)
{
if
(
inventorinfo
)
{
inventorinfo
=
inventorinfo
+
","
+
patentinfo1
.
data
.
hits
[
i
].
_source
.
inventor_name
[
j
];
}
else
{
inventorinfo
=
inventorinfo
+
patentinfo1
.
data
.
hits
[
i
].
_source
.
inventor_name
[
j
];
}
}
}
var
pubstatus
=
""
;
if
(
patentinfo1
.
data
.
hits
[
i
].
_source
.
pub_status
!=
null
)
{
pubstatus
=
patentinfo1
.
data
.
hits
[
i
].
_source
.
pub_status
;
}
var
item
=
{
applynum
:
patentinfo1
.
data
.
hits
[
i
].
_source
.
filing_no
,
publishnum
:
publish_num
,
patentname
:
patentinfo1
.
data
.
hits
[
i
].
_source
.
filing_name
,
applier
:
applierinfo
,
inventor
:
inventorinfo
,
applydate
:
patentinfo1
.
data
.
hits
[
i
].
_source
.
filing_time
,
publishdate
:
publish_date
,
articletype
:
patentinfo1
.
data
.
hits
[
i
].
_source
.
pub_type
,
pubstatus
:
pubstatus
}
patent1
.
push
(
item
);
}
}
}
if
(
patentinfo2
)
{
if
(
patentinfo2
.
status
==
0
)
{
console
.
log
(
"----------patentdata2-------------"
);
console
.
log
(
patentinfo2
);
total2
=
patentinfo2
.
data
.
total
;
var
patentdata2
=
patentinfo2
.
data
.
hits
;
for
(
var
i
=
0
;
i
<
patentinfo2
.
data
.
hits
.
length
;
i
++
)
{
var
applierinfo
=
""
;
if
(
patentinfo2
.
data
.
hits
[
i
].
_source
.
applicant_name
!=
null
)
{
for
(
var
j
=
0
;
j
<
patentinfo2
.
data
.
hits
[
i
].
_source
.
applicant_name
.
length
;
j
++
)
{
if
(
applierinfo
)
{
applierinfo
=
applierinfo
+
","
+
patentinfo2
.
data
.
hits
[
i
].
_source
.
applicant_name
[
j
];
}
else
{
applierinfo
=
applierinfo
+
patentinfo2
.
data
.
hits
[
i
].
_source
.
applicant_name
[
j
];
}
}
}
var
inventorinfo
=
""
;
if
(
patentinfo2
.
data
.
hits
[
i
].
_source
.
inventor_name
!=
null
)
{
for
(
var
j
=
0
;
j
<
patentinfo2
.
data
.
hits
[
i
].
_source
.
inventor_name
.
length
;
j
++
)
{
if
(
inventorinfo
)
{
inventorinfo
=
inventorinfo
+
","
+
patentinfo2
.
data
.
hits
[
i
].
_source
.
inventor_name
[
j
];
}
else
{
inventorinfo
=
inventorinfo
+
patentinfo2
.
data
.
hits
[
i
].
_source
.
inventor_name
[
j
];
}
}
}
var
item
=
{
applynum
:
patentinfo2
.
data
.
hits
[
i
].
_source
.
app_number
,
publishnum
:
patentinfo2
.
data
.
hits
[
i
].
_source
.
pub_number
,
patentname
:
patentinfo2
.
data
.
hits
[
i
].
_source
.
title_name
,
applier
:
applierinfo
,
inventor
:
inventorinfo
,
applydate
:
patentinfo2
.
data
.
hits
[
i
].
_source
.
app_date
,
publishdate
:
patentinfo2
.
data
.
hits
[
i
].
_source
.
pub_date
,
articletype
:
patentinfo2
.
data
.
hits
[
i
].
_source
.
pub_type
,
pubstatus
:
""
}
patent2
.
push
(
item
);
}
}
}
total
=
total1
+
total2
;
for
(
var
i
=
0
;
i
<
patent1
.
length
;
i
++
)
{
datalist
.
push
(
patent1
[
i
]);
}
for
(
var
i
=
0
;
i
<
patent2
.
length
;
i
++
)
{
datalist
.
push
(
patent2
[
i
]);
}
var
result
=
{
total
:
total
,
dataList
:
datalist
,
}
console
.
log
(
"----------result--------------"
);
console
.
log
(
result
);
return
System
.
getResult2
(
result
,
null
);
};
async
simplesearch
(
pobj
,
obj
)
{
console
.
log
(
"--------------obtainpatentinfo---------------"
);
console
.
log
(
obj
);
var
datalist1
=
{
patenttype
:
[],
status
:
[],
applydate
:
[],
publishdate
:
[]
};
var
datalist2
=
[];
var
juhe1
=
{
patenttype
:
[],
status
:
[],
applydate
:
[],
publishdate
:
[]
};
var
patent1
=
[];
var
juhe2
=
{
patenttype
:
[],
status
:
[],
applydate
:
[],
publishdate
:
[]
};
var
patent2
=
[];
var
range1
=
obj
.
range
.
china
.
join
();
var
database
=
""
;
var
total
=
0
;
var
total1
=
0
;
var
total2
=
0
;
if
(
range1
.
indexOf
(
"香港"
)
>=
0
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"HKPATENT"
;
}
else
{
database
=
database
+
"HKPATENT"
;
}
}
if
(
range1
.
indexOf
(
"台湾"
)
>=
0
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"TWZL"
;
}
else
{
database
=
database
+
"TWZL"
;
}
}
if
(
range1
.
indexOf
(
"澳门"
)
>=
0
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"MACZL"
;
}
else
{
database
=
database
+
"MACZL"
;
}
}
for
(
var
i
=
0
;
i
<
obj
.
range
.
main
.
length
;
i
++
)
{
if
(
obj
.
range
.
main
[
i
]
==
"EPO"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"EPPATENT"
;
}
else
{
database
=
database
+
"EPPATENT"
;
}
}
if
(
obj
.
range
.
main
[
i
]
==
"WIPO"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"WOPATENT"
;
}
else
{
database
=
database
+
"WOPATENT"
;
}
}
if
(
obj
.
range
.
main
[
i
]
==
"美国"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"USPATENT"
;
}
else
{
database
=
database
+
"USPATENT"
;
}
}
if
(
obj
.
range
.
main
[
i
]
==
"日本"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"JPPATENT"
;
}
else
{
database
=
database
+
"JPPATENT"
;
}
}
if
(
obj
.
range
.
main
[
i
]
==
"韩国"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"KRPATENT"
;
}
else
{
database
=
database
+
"KRPATENT"
;
}
}
if
(
obj
.
range
.
main
[
i
]
==
"英国"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"GBPATENT"
;
}
else
{
database
=
database
+
"GBPATENT"
;
}
}
if
(
obj
.
range
.
main
[
i
]
==
"法国"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"FRPATENT"
;
}
else
{
database
=
database
+
"FRPATENT"
;
}
}
if
(
obj
.
range
.
main
[
i
]
==
"德国"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"DEPATENT"
;
}
else
{
database
=
database
+
"DEPATENT"
;
}
}
if
(
obj
.
range
.
main
[
i
]
==
"俄罗斯"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"RUPATENT"
;
}
else
{
database
=
database
+
"RUPATENT"
;
}
}
if
(
obj
.
range
.
main
[
i
]
==
"瑞士"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"CHPATENT"
;
}
else
{
database
=
database
+
"CHPATENT"
;
}
}
}
for
(
var
i
=
0
;
i
<
obj
.
range
.
other
.
length
;
i
++
)
{
if
(
obj
.
range
.
other
[
i
]
==
"奥地利"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"ATPATENT"
;
}
else
{
database
=
database
+
"ATPATENT"
;
}
}
if
(
obj
.
range
.
other
[
i
]
==
"澳大利亚"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"AUPATENT"
;
}
else
{
database
=
database
+
"AUPATENT"
;
}
}
if
(
obj
.
range
.
other
[
i
]
==
"西班牙"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"ESPATENT"
;
}
else
{
database
=
database
+
"ESPATENT"
;
}
}
if
(
obj
.
range
.
other
[
i
]
==
"意大利"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"ITPATENT"
;
}
else
{
database
=
database
+
"ITPATENT"
;
}
}
if
(
obj
.
range
.
other
[
i
]
==
"加拿大"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"CAPATENT"
;
}
else
{
database
=
database
+
"CAPATENT"
;
}
}
if
(
obj
.
range
.
other
[
i
]
==
"瑞典"
)
{
if
(
database
)
{
database
=
database
+
"+"
+
"SEPATENT"
;
}
else
{
database
=
database
+
"SEPATENT"
;
}
}
}
if
(
range1
.
indexOf
(
"中国大陆"
)
>=
0
&&
database
.
length
!=
0
)
{
if
(
obj
.
status
==
""
&&
obj
.
patenttype
==
""
)
{
var
size
=
obj
.
pagesize
/
2
;
}
else
{
var
size
=
obj
.
pagesize
;
}
}
else
{
var
size
=
obj
.
pagesize
;
}
if
(
obj
.
lable
==
"patentname"
)
{
if
(
range1
.
indexOf
(
"中国大陆"
)
!=
-
1
)
{
console
.
log
(
"---------patentname---------中国大陆--------"
);
var
data1
=
{
appKey
:
"9d9bcbb6a82f44dbbdb185afe28032bc"
,
pagesize
:
size
,
page
:
obj
.
currentpage
,
title
:
obj
.
content
,
pubtype
:
obj
.
patenttype
,
pubstatus
:
obj
.
status
,
filingyear
:
obj
.
applydate
,
pubyear
:
obj
.
publishdate
};
console
.
log
(
"----------data1------------"
);
console
.
log
(
data1
);
var
patentinfo1
=
await
this
.
GsbByChinaPatentSearchApi
.
CommomSearchbyTitle
(
data1
);
}
if
(
range1
.
indexOf
(
"香港"
)
!=
-
1
||
range1
.
indexOf
(
"澳门"
)
!=
-
1
||
range1
.
indexOf
(
"台湾"
)
!=
-
1
||
obj
.
range
.
main
.
length
!=
0
||
obj
.
range
.
other
.
length
!=
0
)
{
console
.
log
(
"---------patentname---------国外--------"
);
var
data2
=
{
appKey
:
"9d9bcbb6a82f44dbbdb185afe28032bc"
,
pagesize
:
size
,
page
:
obj
.
currentpage
,
title
:
obj
.
content
,
danames
:
database
,
pubtype
:
obj
.
patenttype
,
pubstatus
:
obj
.
status
,
filingyear
:
obj
.
applydate
,
pubyear
:
obj
.
publishdate
};
console
.
log
(
"------------data2--------------"
);
console
.
log
(
data2
);
var
patentinfo2
=
await
this
.
GsbByWorldPatentSearchApi
.
CommomSearchbyTitle
(
data2
);
}
}
if
(
obj
.
lable
==
"applynum"
)
{
if
(
range1
.
indexOf
(
"中国大陆"
)
!=
-
1
)
{
console
.
log
(
"---------applynum---------中国大陆--------"
);
var
data1
=
{
appKey
:
"9d9bcbb6a82f44dbbdb185afe28032bc"
,
pagesize
:
size
,
page
:
obj
.
currentpage
,
filingno
:
obj
.
content
,
pubtype
:
obj
.
patenttype
,
pubstatus
:
obj
.
status
,
filingyear
:
obj
.
applydate
,
pubyear
:
obj
.
publishdate
};
var
patentinfo1
=
await
this
.
GsbByChinaPatentSearchApi
.
CommomSearchbyFilingno
(
data1
);
}
if
(
range1
.
indexOf
(
"香港"
)
!=
-
1
||
range1
.
indexOf
(
"澳门"
)
!=
-
1
||
range1
.
indexOf
(
"台湾"
)
!=
-
1
||
obj
.
range
.
main
.
length
!=
0
||
obj
.
range
.
other
.
length
!=
0
)
{
console
.
log
(
"---------applynum---------国外--------"
);
var
data2
=
{
appKey
:
"9d9bcbb6a82f44dbbdb185afe28032bc"
,
pagesize
:
size
,
page
:
obj
.
currentpage
,
filingno
:
obj
.
content
,
danames
:
database
,
pubtype
:
obj
.
patenttype
,
pubstatus
:
obj
.
status
,
filingyear
:
obj
.
applydate
,
pubyear
:
obj
.
publishdate
};
var
patentinfo2
=
await
this
.
GsbByWorldPatentSearchApi
.
CommomSearchbyFilingno
(
data2
);
}
}
if
(
obj
.
lable
==
"publishnum"
)
{
if
(
range1
.
indexOf
(
"中国大陆"
)
!=
-
1
)
{
console
.
log
(
"---------publishnum---------中国大陆--------"
);
var
data1
=
{
appKey
:
"9d9bcbb6a82f44dbbdb185afe28032bc"
,
pagesize
:
size
,
page
:
obj
.
currentpage
,
pubno
:
obj
.
content
,
pubtype
:
obj
.
patenttype
,
pubstatus
:
obj
.
status
,
filingyear
:
obj
.
applydate
,
pubyear
:
obj
.
publishdate
};
var
patentinfo1
=
await
this
.
GsbByChinaPatentSearchApi
.
CommomSearchbyPubno
(
data1
);
}
if
(
range1
.
indexOf
(
"香港"
)
!=
-
1
||
range1
.
indexOf
(
"澳门"
)
!=
-
1
||
range1
.
indexOf
(
"台湾"
)
!=
-
1
||
obj
.
range
.
main
.
length
!=
0
||
obj
.
range
.
other
.
length
!=
0
)
{
console
.
log
(
"---------publishnum---------国外--------"
);
var
data2
=
{
appKey
:
"9d9bcbb6a82f44dbbdb185afe28032bc"
,
pagesize
:
size
,
page
:
obj
.
currentpage
,
pubno
:
obj
.
content
,
danames
:
database
,
pubtype
:
obj
.
patenttype
,
pubstatus
:
obj
.
status
,
filingyear
:
obj
.
applydate
,
pubyear
:
obj
.
publishdate
};
var
patentinfo2
=
await
this
.
GsbByWorldPatentSearchApi
.
CommomSearchbyPubno
(
data2
);
}
}
if
(
obj
.
lable
==
"applier"
)
{
if
(
range1
.
indexOf
(
"中国大陆"
)
!=
-
1
)
{
console
.
log
(
"---------applier---------中国大陆--------"
);
var
data1
=
{
appKey
:
"9d9bcbb6a82f44dbbdb185afe28032bc"
,
pagesize
:
size
,
page
:
obj
.
currentpage
,
applicant
:
obj
.
content
,
pubtype
:
obj
.
patenttype
,
pubstatus
:
obj
.
status
,
filingyear
:
obj
.
applydate
,
pubyear
:
obj
.
publishdate
};
var
patentinfo1
=
await
this
.
GsbByChinaPatentSearchApi
.
CommomSearchbyApplicant
(
data1
);
}
if
(
range1
.
indexOf
(
"香港"
)
!=
-
1
||
range1
.
indexOf
(
"澳门"
)
!=
-
1
||
range1
.
indexOf
(
"台湾"
)
!=
-
1
||
obj
.
range
.
main
.
length
!=
0
||
obj
.
range
.
other
.
length
!=
0
)
{
console
.
log
(
"---------applier---------国外--------"
);
var
data2
=
{
appKey
:
"9d9bcbb6a82f44dbbdb185afe28032bc"
,
pagesize
:
size
,
page
:
obj
.
currentpage
,
applicant
:
obj
.
content
,
danames
:
database
,
pubtype
:
obj
.
patenttype
,
pubstatus
:
obj
.
status
,
filingyear
:
obj
.
applydate
,
pubyear
:
obj
.
publishdate
};
var
patentinfo2
=
await
this
.
GsbByWorldPatentSearchApi
.
CommomSearchbyApplicant
(
data2
);
}
}
if
(
obj
.
lable
==
"inventor"
)
{
if
(
range1
.
indexOf
(
"中国大陆"
)
!=
-
1
)
{
console
.
log
(
"---------inventor---------中国大陆--------"
);
var
data1
=
{
appKey
:
"9d9bcbb6a82f44dbbdb185afe28032bc"
,
pagesize
:
size
,
page
:
obj
.
currentpage
,
inventor
:
obj
.
content
,
pubtype
:
obj
.
patenttype
,
pubstatus
:
obj
.
status
,
filingyear
:
obj
.
applydate
,
pubyear
:
obj
.
publishdate
};
var
patentinfo1
=
await
this
.
GsbByChinaPatentSearchApi
.
CommomSearchbyInventor
(
data1
);
}
if
(
range1
.
indexOf
(
"香港"
)
!=
-
1
||
range1
.
indexOf
(
"澳门"
)
!=
-
1
||
range1
.
indexOf
(
"台湾"
)
!=
-
1
||
obj
.
range
.
main
.
length
!=
0
||
obj
.
range
.
other
.
length
!=
0
)
{
console
.
log
(
"---------inventor---------国外--------"
);
var
data2
=
{
appKey
:
"9d9bcbb6a82f44dbbdb185afe28032bc"
,
pagesize
:
size
,
page
:
obj
.
currentpage
,
inventor
:
obj
.
content
,
danames
:
database
,
pubtype
:
obj
.
patenttype
,
pubstatus
:
obj
.
status
,
filingyear
:
obj
.
applydate
,
pubyear
:
obj
.
publishdate
};
var
patentinfo2
=
await
this
.
GsbByWorldPatentSearchApi
.
CommomSearchbyInventor
(
data2
);
}
}
if
(
patentinfo1
)
{
if
(
patentinfo1
.
status
==
0
)
{
console
.
log
(
"----------patentdata1-------------"
);
console
.
log
(
patentinfo1
);
total1
=
patentinfo1
.
data
.
total
;
var
juhedata1
=
patentinfo1
.
buckets
;
for
(
var
i
=
0
;
i
<
patentinfo1
.
buckets
.
group_by_pub_type
.
buckets
.
length
;
i
++
)
{
if
(
patentinfo1
.
buckets
.
group_by_pub_type
.
buckets
[
i
].
key
==
"发明"
)
{
var
item
=
{
code
:
"发明"
,
lable
:
"发明申请"
,
num
:
patentinfo1
.
buckets
.
group_by_pub_type
.
buckets
[
i
].
doc_count
};
juhe1
.
patenttype
.
push
(
item
);
}
if
(
patentinfo1
.
buckets
.
group_by_pub_type
.
buckets
[
i
].
key
==
"实用新型"
)
{
var
item
=
{
code
:
"实用新型"
,
lable
:
"实用新型"
,
num
:
patentinfo1
.
buckets
.
group_by_pub_type
.
buckets
[
i
].
doc_count
};
juhe1
.
patenttype
.
push
(
item
);
}
if
(
patentinfo1
.
buckets
.
group_by_pub_type
.
buckets
[
i
].
key
==
"外观设计"
)
{
var
item
=
{
code
:
"外观设计"
,
lable
:
"外观设计"
,
num
:
patentinfo1
.
buckets
.
group_by_pub_type
.
buckets
[
i
].
doc_count
};
juhe1
.
patenttype
.
push
(
item
);
}
}
for
(
var
i
=
0
;
i
<
patentinfo1
.
buckets
.
group_by_pub_status
.
buckets
.
length
;
i
++
)
{
if
(
patentinfo1
.
buckets
.
group_by_pub_status
.
buckets
[
i
].
key
==
"有效"
)
{
var
item
=
{
code
:
"有效"
,
lable
:
"有效"
,
num
:
patentinfo1
.
buckets
.
group_by_pub_status
.
buckets
[
i
].
doc_count
};
juhe1
.
status
.
push
(
item
);
}
if
(
patentinfo1
.
buckets
.
group_by_pub_status
.
buckets
[
i
].
key
==
"在审"
)
{
var
item
=
{
code
:
"在审"
,
lable
:
"在审"
,
num
:
patentinfo1
.
buckets
.
group_by_pub_status
.
buckets
[
i
].
doc_count
};
juhe1
.
status
.
push
(
item
);
}
if
(
patentinfo1
.
buckets
.
group_by_pub_status
.
buckets
[
i
].
key
==
"无效"
)
{
var
item
=
{
code
:
"无效"
,
lable
:
"无效"
,
num
:
patentinfo1
.
buckets
.
group_by_pub_status
.
buckets
[
i
].
doc_count
};
juhe1
.
status
.
push
(
item
);
}
}
for
(
var
i
=
0
;
i
<
patentinfo1
.
buckets
.
group_by_filing_year
.
buckets
.
length
;
i
++
)
{
var
item
=
{
code
:
patentinfo1
.
buckets
.
group_by_filing_year
.
buckets
[
i
].
key
,
lable
:
patentinfo1
.
buckets
.
group_by_filing_year
.
buckets
[
i
].
key
+
"年"
,
num
:
patentinfo1
.
buckets
.
group_by_filing_year
.
buckets
[
i
].
doc_count
};
juhe1
.
applydate
.
push
(
item
);
}
for
(
var
i
=
0
;
i
<
patentinfo1
.
buckets
.
group_by_pub_year
.
buckets
.
length
;
i
++
)
{
var
item
=
{
code
:
patentinfo1
.
buckets
.
group_by_pub_year
.
buckets
[
i
].
key
,
lable
:
patentinfo1
.
buckets
.
group_by_pub_year
.
buckets
[
i
].
key
+
"年"
,
num
:
patentinfo1
.
buckets
.
group_by_pub_year
.
buckets
[
i
].
doc_count
};
juhe1
.
publishdate
.
push
(
item
);
}
var
patentdata1
=
patentinfo1
.
data
.
hits
;
for
(
var
i
=
0
;
i
<
patentinfo1
.
data
.
hits
.
length
;
i
++
)
{
var
publish_num
=
""
;
var
publish_date
=
""
;
if
(
patentinfo1
.
data
.
hits
[
i
].
_source
.
pub_type
==
"发明"
)
{
publish_num
=
patentinfo1
.
data
.
hits
[
i
].
_source
.
pub_no
;
publish_date
=
patentinfo1
.
data
.
hits
[
i
].
_source
.
pub_time
;
}
else
{
publish_num
=
patentinfo1
.
data
.
hits
[
i
].
_source
.
gr_no
;
publish_date
=
patentinfo1
.
data
.
hits
[
i
].
_source
.
gr_time
;
}
var
applierinfo
=
""
;
if
(
patentinfo1
.
data
.
hits
[
i
].
_source
.
applicant_name
!=
null
)
{
for
(
var
j
=
0
;
j
<
patentinfo1
.
data
.
hits
[
i
].
_source
.
applicant_name
.
length
;
j
++
)
{
if
(
applierinfo
)
{
applierinfo
=
applierinfo
+
","
+
patentinfo1
.
data
.
hits
[
i
].
_source
.
applicant_name
[
j
];
}
else
{
applierinfo
=
applierinfo
+
patentinfo1
.
data
.
hits
[
i
].
_source
.
applicant_name
[
j
];
}
}
}
var
inventorinfo
=
""
;
if
(
patentinfo1
.
data
.
hits
[
i
].
_source
.
inventor_name
!=
null
)
{
for
(
var
j
=
0
;
j
<
patentinfo1
.
data
.
hits
[
i
].
_source
.
inventor_name
.
length
;
j
++
)
{
if
(
inventorinfo
)
{
inventorinfo
=
inventorinfo
+
","
+
patentinfo1
.
data
.
hits
[
i
].
_source
.
inventor_name
[
j
];
}
else
{
inventorinfo
=
inventorinfo
+
patentinfo1
.
data
.
hits
[
i
].
_source
.
inventor_name
[
j
];
}
}
}
var
pubstatus
=
""
;
if
(
patentinfo1
.
data
.
hits
[
i
].
_source
.
pub_status
!=
null
)
{
pubstatus
=
patentinfo1
.
data
.
hits
[
i
].
_source
.
pub_status
;
}
var
item
=
{
applynum
:
patentinfo1
.
data
.
hits
[
i
].
_source
.
filing_no
,
publishnum
:
publish_num
,
patentname
:
patentinfo1
.
data
.
hits
[
i
].
_source
.
filing_name
,
applier
:
applierinfo
,
inventor
:
inventorinfo
,
applydate
:
patentinfo1
.
data
.
hits
[
i
].
_source
.
filing_time
,
publishdate
:
publish_date
,
articletype
:
patentinfo1
.
data
.
hits
[
i
].
_source
.
pub_type
,
pubstatus
:
pubstatus
}
patent1
.
push
(
item
);
}
}
};
if
(
patentinfo2
)
{
if
(
patentinfo2
.
status
==
0
)
{
console
.
log
(
"----------patentinfo2-------------"
);
console
.
log
(
patentinfo2
);
total2
=
patentinfo2
.
data
.
total
;
var
juhedata2
=
patentinfo2
.
buckets
;
for
(
var
i
=
0
;
i
<
patentinfo2
.
buckets
.
group_by_filing_year
.
buckets
.
length
;
i
++
)
{
var
item
=
{
code
:
patentinfo2
.
buckets
.
group_by_filing_year
.
buckets
[
i
].
key
,
lable
:
patentinfo2
.
buckets
.
group_by_filing_year
.
buckets
[
i
].
key
+
"年"
,
num
:
patentinfo2
.
buckets
.
group_by_filing_year
.
buckets
[
i
].
doc_count
};
juhe2
.
applydate
.
push
(
item
);
}
for
(
var
i
=
0
;
i
<
patentinfo2
.
buckets
.
group_by_pub_year
.
buckets
.
length
;
i
++
)
{
var
item
=
{
code
:
patentinfo2
.
buckets
.
group_by_pub_year
.
buckets
[
i
].
key
,
lable
:
patentinfo2
.
buckets
.
group_by_pub_year
.
buckets
[
i
].
key
+
"年"
,
num
:
patentinfo2
.
buckets
.
group_by_pub_year
.
buckets
[
i
].
doc_count
};
juhe2
.
publishdate
.
push
(
item
);
}
var
patentdata2
=
patentinfo2
.
data
.
hits
;
for
(
var
i
=
0
;
i
<
patentinfo2
.
data
.
hits
.
length
;
i
++
)
{
var
applierinfo
=
""
;
if
(
patentinfo2
.
data
.
hits
[
i
].
_source
.
applicant_name
!=
null
)
{
for
(
var
j
=
0
;
j
<
patentinfo2
.
data
.
hits
[
i
].
_source
.
applicant_name
.
length
;
j
++
)
{
if
(
applierinfo
)
{
applierinfo
=
applierinfo
+
","
+
patentinfo2
.
data
.
hits
[
i
].
_source
.
applicant_name
[
j
];
}
else
{
applierinfo
=
applierinfo
+
patentinfo2
.
data
.
hits
[
i
].
_source
.
applicant_name
[
j
];
}
}
}
var
inventorinfo
=
""
;
if
(
patentinfo2
.
data
.
hits
[
i
].
_source
.
inventor_name
!=
null
)
{
for
(
var
j
=
0
;
j
<
patentinfo2
.
data
.
hits
[
i
].
_source
.
inventor_name
.
length
;
j
++
)
{
if
(
inventorinfo
)
{
inventorinfo
=
inventorinfo
+
","
+
patentinfo2
.
data
.
hits
[
i
].
_source
.
inventor_name
[
j
];
}
else
{
inventorinfo
=
inventorinfo
+
patentinfo2
.
data
.
hits
[
i
].
_source
.
inventor_name
[
j
];
}
}
}
var
item
=
{
applynum
:
patentinfo2
.
data
.
hits
[
i
].
_source
.
app_number
,
publishnum
:
patentinfo2
.
data
.
hits
[
i
].
_source
.
pub_number
,
patentname
:
patentinfo2
.
data
.
hits
[
i
].
_source
.
title_name
,
applier
:
applierinfo
,
inventor
:
inventorinfo
,
applydate
:
patentinfo2
.
data
.
hits
[
i
].
_source
.
app_date
,
publishdate
:
patentinfo2
.
data
.
hits
[
i
].
_source
.
pub_date
,
articletype
:
patentinfo2
.
data
.
hits
[
i
].
_source
.
pub_type
,
pubstatus
:
""
}
patent2
.
push
(
item
);
}
}
}
total
=
total1
+
total2
;
datalist1
.
patenttype
=
juhe1
.
patenttype
;
datalist1
.
status
=
juhe1
.
status
;
datalist1
.
applydate
=
juhe2
.
applydate
;
for
(
var
i
=
0
;
i
<
juhe1
.
applydate
.
length
;
i
++
)
{
var
a
=
datalist1
.
applydate
.
findIndex
(
f
=>
f
.
code
==
juhe1
.
applydate
[
i
].
code
);
if
(
a
>
-
1
)
{
datalist1
.
applydate
[
a
].
num
=
datalist1
.
applydate
[
a
].
num
+
juhe1
.
applydate
[
i
].
num
;
}
else
{
var
item
=
{
code
:
juhe1
.
applydate
[
i
].
code
,
lable
:
juhe1
.
applydate
[
i
].
lable
,
num
:
juhe1
.
applydate
[
i
].
num
};
datalist1
.
applydate
.
push
(
item
);
}
}
datalist1
.
applydate
.
sort
(
this
.
compare
(
"code"
))
console
.
log
(
datalist1
.
applydate
);
datalist1
.
publishdate
=
juhe2
.
publishdate
;
for
(
var
i
=
0
;
i
<
juhe1
.
publishdate
.
length
;
i
++
)
{
var
a
=
datalist1
.
publishdate
.
findIndex
(
f
=>
f
.
code
==
juhe1
.
publishdate
[
i
].
code
);
if
(
a
>
-
1
)
{
datalist1
.
publishdate
[
a
].
num
=
datalist1
.
publishdate
[
a
].
num
+
juhe1
.
publishdate
[
i
].
num
;
}
else
{
var
item
=
{
code
:
juhe1
.
publishdate
[
i
].
code
,
lable
:
juhe1
.
publishdate
[
i
].
lable
,
num
:
juhe1
.
publishdate
[
i
].
num
};
datalist1
.
publishdate
.
push
(
item
);
}
}
datalist1
.
publishdate
.
sort
(
this
.
compare
(
"code"
))
for
(
var
i
=
0
;
i
<
patent1
.
length
;
i
++
)
{
datalist2
.
push
(
patent1
[
i
]);
}
for
(
var
i
=
0
;
i
<
patent2
.
length
;
i
++
)
{
datalist2
.
push
(
patent2
[
i
]);
}
var
result
=
{
total
:
total
,
dataList1
:
datalist1
,
dataList2
:
datalist2
}
console
.
log
(
"----------result--------------"
);
console
.
log
(
result
);
return
System
.
getResult2
(
result
,
null
);
};
compare
(
prop
)
{
return
function
(
obj1
,
obj2
)
{
var
val1
=
obj1
[
prop
];
var
val2
=
obj2
[
prop
];
if
(
!
isNaN
(
Number
(
val1
))
&&
!
isNaN
(
Number
(
val2
)))
{
val1
=
Number
(
val1
);
val2
=
Number
(
val2
);
}
if
(
val1
<
val2
)
{
return
1
;
}
else
if
(
val1
>
val2
)
{
return
-
1
;
}
else
{
return
0
;
}
}
};
async
obtainpatentinfo
(
pobj
,
obj
)
{
console
.
log
(
"--------------obtainpatentinfo---------------"
);
console
.
log
(
obj
);
var
result
=
{
patentname
:
""
,
patenttype
:
""
,
baseinfo
:
{},
lawstatus
:
[],
abstract
:
""
,
adstractpic
:
""
,
claim
:
""
,
instruction
:
""
,
figure
:
""
};
if
(
obj
.
publishnum
.
indexOf
(
"CN"
)
!=
-
1
)
{
console
.
log
(
"中国专利"
);
var
data
=
{
appKey
:
"9d9bcbb6a82f44dbbdb185afe28032bc"
,
applynum
:
obj
.
applynum
,
publishnum
:
obj
.
publishnum
};
var
patentinfo
=
await
this
.
GsbByChinaPatentSearchApi
.
ObtainChinaPatentInfo
(
data
);
console
.
log
(
"---------ctl----patentinfo-------------"
);
console
.
log
(
patentinfo
);
if
(
patentinfo
.
status
==
0
)
{
patentinfo
=
patentinfo
.
data
[
0
].
_source
;
console
.
log
(
"---------ctl----patentinfo-------------"
);
console
.
log
(
patentinfo
);
result
.
patentname
=
patentinfo
.
filing_name
;
result
.
patenttype
=
patentinfo
.
pub_type
;
if
(
patentinfo
.
other_ipc
)
{
var
otheripc
=
""
;
for
(
var
i
=
0
;
i
<
patentinfo
.
other_ipc
.
length
;
i
++
)
{
if
(
otheripc
)
{
otheripc
=
otheripc
+
","
+
patentinfo
.
other_ipc
[
i
];
}
else
{
otheripc
=
otheripc
+
patentinfo
.
other_ipc
[
i
];
}
}
}
var
publishdateinfo
=
""
;
if
(
obj
.
publishnum
==
patentinfo
.
pub_no
)
{
publishdateinfo
=
patentinfo
.
pub_time
;
}
if
(
obj
.
publishnum
==
patentinfo
.
gr_no
)
{
publishdateinfo
=
patentinfo
.
gr_time
;
};
if
(
patentinfo
.
applicant_name
)
{
var
applierinfo
=
""
;
for
(
var
i
=
0
;
i
<
patentinfo
.
applicant_name
.
length
;
i
++
)
{
if
(
applierinfo
)
{
applierinfo
=
applierinfo
+
","
+
patentinfo
.
applicant_name
[
i
];
}
else
{
applierinfo
=
applierinfo
+
patentinfo
.
applicant_name
[
i
];
}
}
}
if
(
patentinfo
.
inventor_name
)
{
var
inventorinfo
=
""
;
for
(
var
i
=
0
;
i
<
patentinfo
.
inventor_name
.
length
;
i
++
)
{
if
(
inventorinfo
)
{
inventorinfo
=
inventorinfo
+
","
+
patentinfo
.
inventor_name
[
i
];
}
else
{
inventorinfo
=
inventorinfo
+
patentinfo
.
inventor_name
[
i
];
}
}
}
var
agentinfo
=
""
if
(
patentinfo
.
agent_name1
)
{
if
(
patentinfo
.
agent_name2
)
{
agentinfo
=
patentinfo
.
agent_name1
+
patentinfo
.
agent_name2
;
}
else
{
agentinfo
=
patentinfo
.
agent_name1
;
}
}
result
.
baseinfo
=
{
applynum
:
patentinfo
.
filing_no
,
mainclassnum
:
patentinfo
.
main_ipc
,
applydate
:
patentinfo
.
filing_time
,
classnum
:
otheripc
,
publishnum
:
obj
.
publishnum
,
address
:
patentinfo
.
appl_address
,
publishdate
:
publishdateinfo
,
countrycode
:
patentinfo
.
country_code
,
applier
:
applierinfo
,
agent
:
agentinfo
,
inventor
:
inventorinfo
,
agency
:
patentinfo
.
agency_name
,
};
result
.
abstract
=
patentinfo
.
abstr_text
;
var
patentinfostring
=
JSON
.
stringify
(
patentinfo
);
if
(
patentinfostring
.
indexOf
(
"
\"
claim_text
\"
:"
)
!=
-
1
)
{
result
.
claim
=
patentinfo
.
claim_text
;
};
var
imgpathinfo
=
""
if
(
patentinfo
.
img_path
)
{
imgpathinfo
=
patentinfo
.
img_path
;
}
result
.
adstractpic
=
imgpathinfo
;
var
affdata
=
{
appKey
:
"9d9bcbb6a82f44dbbdb185afe28032bc"
,
filingno
:
obj
.
applynum
};
var
affairinfo
=
await
this
.
GsbByChinaAffairSearchApi
.
SearchbyFilingno
(
affdata
);
if
(
affairinfo
.
status
==
0
)
{
console
.
log
(
"---------ctl----affairinfo-------------"
);
affairinfo
.
data
.
hits
.
forEach
(
function
(
d
)
{
console
.
log
(
d
);
var
affobj
=
{
date
:
d
.
_source
.
aff_date
,
status
:
d
.
_source
.
aff_info
}
console
.
log
(
affobj
);
result
.
lawstatus
.
push
(
affobj
);
})
}
}
}
else
{
console
.
log
(
"外国专利"
);
var
data
=
{
appKey
:
"9d9bcbb6a82f44dbbdb185afe28032bc"
,
applynum
:
obj
.
applynum
,
publishnum
:
obj
.
publishnum
};
var
patentinfo
=
await
this
.
GsbByWorldPatentSearchApi
.
ObtainWorldPatentInfo
(
data
);
console
.
log
(
"---------ctl----patentinfo-------------"
);
console
.
log
(
patentinfo
);
if
(
patentinfo
.
status
==
0
)
{
patentinfo
=
patentinfo
.
data
[
0
].
_source
;
console
.
log
(
"---------ctl----patentinfo-------------"
);
console
.
log
(
patentinfo
);
result
.
patentname
=
patentinfo
.
title_name
;
result
.
patenttype
=
patentinfo
.
pub_type
;
if
(
patentinfo
.
other_ipc
)
{
var
otheripc
=
""
;
for
(
var
i
=
0
;
i
<
patentinfo
.
other_ipc
.
length
;
i
++
)
{
if
(
otheripc
)
{
otheripc
=
otheripc
+
","
+
patentinfo
.
other_ipc
[
i
];
}
else
{
otheripc
=
otheripc
+
patentinfo
.
other_ipc
[
i
];
}
}
}
if
(
patentinfo
.
applicant_name
)
{
var
applierinfo
=
""
;
for
(
var
i
=
0
;
i
<
patentinfo
.
applicant_name
.
length
;
i
++
)
{
if
(
applierinfo
)
{
applierinfo
=
applierinfo
+
","
+
patentinfo
.
applicant_name
[
i
];
}
else
{
applierinfo
=
applierinfo
+
patentinfo
.
applicant_name
[
i
];
}
}
}
if
(
patentinfo
.
inventor_name
)
{
var
inventorinfo
=
""
;
for
(
var
i
=
0
;
i
<
patentinfo
.
inventor_name
.
length
;
i
++
)
{
if
(
inventorinfo
)
{
inventorinfo
=
inventorinfo
+
","
+
patentinfo
.
inventor_name
[
i
];
}
else
{
inventorinfo
=
inventorinfo
+
patentinfo
.
inventor_name
[
i
];
}
}
}
result
.
baseinfo
=
{
applynum
:
patentinfo
.
app_number
,
mainclassnum
:
patentinfo
.
main_ipc
,
applydate
:
patentinfo
.
app_date
,
classnum
:
otheripc
,
publishnum
:
patentinfo
.
pub_number
,
address
:
patentinfo
.
addr_name
,
publishdate
:
patentinfo
.
pub_date
,
countrycode
:
""
,
applier
:
applierinfo
,
agent
:
patentinfo
.
agent_name
,
inventor
:
inventorinfo
,
agency
:
patentinfo
.
agency_name
,
};
result
.
abstract
=
patentinfo
.
abstr_text
;
result
.
claim
=
patentinfo
.
claim_text
;
var
imgpathinfo
=
""
if
(
patentinfo
.
img_path
)
{
imgpathinfo
=
patentinfo
.
img_path
;
}
result
.
adstractpic
=
imgpathinfo
;
}
}
return
System
.
getResult2
(
result
,
null
);
}
}
module
.
exports
=
patentApi
;
igirl-channel/app/base/api/impl/patent/wordpatentsearch.js
deleted
100644 → 0
View file @
bf4c109f
var
System
=
require
(
"../../../system"
);
var
settings
=
require
(
"../../../../config/settings"
);
const
querystring
=
require
(
'querystring'
);
const
ApiBase
=
require
(
"../../api.base"
);
class
WordPatentSearchApi
extends
ApiBase
{
constructor
(){
super
();
this
.
patentUrl
=
settings
.
reqEsAddrIc
()
+
"bigdata_world_patent_bib_op/_search"
;
};
buildDate
(
date
){
var
date
=
new
Date
(
date
);
var
time
=
Date
.
parse
(
date
);
time
=
time
/
1000
;
return
time
;
};
async
ObtainWorldPatentInfo
(
obj
){
console
.
log
(
"-----------------api-ObtainWorldPatentInfo----------------"
);
console
.
log
(
obj
);
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
};
var
applynum
=
obj
.
applynum
==
null
?
""
:
obj
.
applynum
;
//专利申请号
if
(
applynum
!=
null
&&
applynum
!=
""
){
var
param
=
{
"term"
:
{
"app_number"
:
applynum
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
publishnum
=
obj
.
publishnum
==
null
?
""
:
obj
.
publishnum
;
//专利申请号
if
(
publishnum
!=
null
&&
publishnum
!=
""
){
var
param
=
{
"term"
:
{
"pub_number"
:
publishnum
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
.
hits
};
}
catch
(
e
){
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
};
}
};
async
CommomSearchbyTitle
(
obj
){
//根据标题查询聚合
var
pagesize
=
obj
.
pagesize
==
null
?
10
:
obj
.
pagesize
;
if
(
obj
.
page
==
null
){
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
page
-
1
)
*
obj
.
pagesize
);
}
var
title
=
obj
.
title
==
null
?
""
:
obj
.
title
;
if
(
title
==
""
){
return
{
status
:
-
1
,
msg
:
"传入标题信息为空"
,
data
:
null
,
buckets
:
null
};
}
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
from
,
"size"
:
pagesize
,
"_source"
:
[
"app_number"
,
"app_date"
,
"pub_number"
,
"pub_type"
,
"pub_date"
,
"title_name"
,
"applicant_name"
,
"inventor_name"
],
"aggregations"
:
{
"group_by_filing_year"
:
{
"terms"
:
{
"field"
:
"app_year"
,
"size"
:
1000
,
"order"
:{
"_term"
:
"desc"
}
}
},
"group_by_pub_year"
:
{
"terms"
:
{
"field"
:
"pub_year"
,
"size"
:
1000
,
"order"
:{
"_term"
:
"desc"
}
}
}
}
};
var
param
=
{
"match"
:
{
"title_name"
:
title
.
toLowerCase
()
}
}
params
.
query
.
bool
.
must
.
push
(
param
);
var
dbnames
=
obj
.
danames
==
null
?
""
:
obj
.
danames
;
if
(
dbnames
!=
null
&&
dbnames
!=
""
){
var
dbarray
=
dbnames
.
split
(
'+'
);
param
=
{
"bool"
:
{
"should"
:
[]
}
}
dbarray
.
forEach
(
function
(
d
){
var
parr
=
{
"term"
:
{
"db_name"
:
d
}
}
param
.
bool
.
should
.
push
(
parr
)
})
params
.
query
.
bool
.
must
.
push
(
param
);
}
var
pubtype
=
obj
.
pubtype
==
null
?
""
:
obj
.
pubtype
;
//专利类型
if
(
pubtype
!=
null
&&
pubtype
!=
""
){
param
=
{
"term"
:
{
"pub_type"
:
pubtype
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
pubstatus
=
obj
.
pubstatus
==
null
?
""
:
obj
.
pubstatus
;
//法律状态
if
(
pubstatus
!=
null
&&
pubstatus
!=
""
){
param
=
{
"term"
:
{
"status_code"
:
pubstatus
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
filingyear
=
obj
.
filingyear
==
null
?
""
:
obj
.
filingyear
;
//申请年份
if
(
filingyear
!=
null
&&
filingyear
!=
""
){
param
=
{
"term"
:
{
"app_year"
:
filingyear
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
pubyear
=
obj
.
pubyear
==
null
?
""
:
obj
.
pubyear
;
//公开年份
if
(
pubyear
!=
null
&&
pubyear
!=
""
){
param
=
{
"term"
:
{
"pub_year"
:
pubyear
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
){
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
CommomSearchbyFilingno
(
obj
){
//根据申请号查询聚合
var
pagesize
=
obj
.
pagesize
==
null
?
10
:
obj
.
pagesize
;
if
(
obj
.
page
==
null
){
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
page
-
1
)
*
obj
.
pagesize
);
}
var
filingno
=
obj
.
filingno
==
null
?
""
:
obj
.
filingno
;
if
(
filingno
==
""
){
return
{
status
:
-
1
,
msg
:
"传入的申请号信息为空"
,
data
:
null
,
buckets
:
null
};
}
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
from
,
"size"
:
pagesize
,
"_source"
:
[
"app_number"
,
"app_date"
,
"pub_number"
,
"pub_type"
,
"pub_date"
,
"title_name"
,
"applicant_name"
,
"inventor_name"
],
"aggregations"
:
{
"group_by_filing_year"
:
{
"terms"
:
{
"field"
:
"app_year"
,
"size"
:
1000
,
"order"
:{
"_term"
:
"desc"
}
}
},
"group_by_pub_year"
:
{
"terms"
:
{
"field"
:
"pub_year"
,
"size"
:
1000
,
"order"
:{
"_term"
:
"desc"
}
}
}
}
};
var
param
=
{
"wildcard"
:
{
"app_number"
:
"*"
+
filingno
+
"*"
}
}
params
.
query
.
bool
.
must
.
push
(
param
);
var
dbnames
=
obj
.
danames
==
null
?
""
:
obj
.
danames
;
if
(
dbnames
!=
null
&&
dbnames
!=
""
){
var
dbarray
=
dbnames
.
split
(
'+'
);
param
=
{
"bool"
:
{
"should"
:
[]
}
}
dbarray
.
forEach
(
function
(
d
){
var
parr
=
{
"term"
:
{
"db_name"
:
d
}
}
param
.
bool
.
should
.
push
(
parr
)
})
params
.
query
.
bool
.
must
.
push
(
param
);
}
var
pubtype
=
obj
.
pubtype
==
null
?
""
:
obj
.
pubtype
;
//专利类型
if
(
pubtype
!=
null
&&
pubtype
!=
""
){
param
=
{
"term"
:
{
"pub_type"
:
pubtype
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
pubstatus
=
obj
.
pubstatus
==
null
?
""
:
obj
.
pubstatus
;
//法律状态
if
(
pubstatus
!=
null
&&
pubstatus
!=
""
){
param
=
{
"term"
:
{
"status_code"
:
pubstatus
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
filingyear
=
obj
.
filingyear
==
null
?
""
:
obj
.
filingyear
;
//申请年份
if
(
filingyear
!=
null
&&
filingyear
!=
""
){
param
=
{
"term"
:
{
"app_year"
:
filingyear
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
pubyear
=
obj
.
pubyear
==
null
?
""
:
obj
.
pubyear
;
//公开年份
if
(
pubyear
!=
null
&&
pubyear
!=
""
){
param
=
{
"term"
:
{
"pub_year"
:
pubyear
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
){
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
CommomSearchbyPubno
(
obj
){
//根据公开号查询聚合
var
pagesize
=
obj
.
pagesize
==
null
?
10
:
obj
.
pagesize
;
if
(
obj
.
page
==
null
){
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
page
-
1
)
*
obj
.
pagesize
);
}
var
pubno
=
obj
.
pubno
==
null
?
""
:
obj
.
pubno
;
if
(
pubno
==
""
){
return
{
status
:
-
1
,
msg
:
"传入的公开号信息为空"
,
data
:
null
,
buckets
:
null
};
}
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
from
,
"size"
:
pagesize
,
"_source"
:
[
"app_number"
,
"app_date"
,
"pub_number"
,
"pub_type"
,
"pub_date"
,
"title_name"
,
"applicant_name"
,
"inventor_name"
],
"aggregations"
:
{
"group_by_filing_year"
:
{
"terms"
:
{
"field"
:
"app_year"
,
"size"
:
1000
,
"order"
:{
"_term"
:
"desc"
}
}
},
"group_by_pub_year"
:
{
"terms"
:
{
"field"
:
"pub_year"
,
"size"
:
1000
,
"order"
:{
"_term"
:
"desc"
}
}
}
}
};
var
param
=
{
"wildcard"
:
{
"pub_number"
:
"*"
+
pubno
+
"*"
}
}
params
.
query
.
bool
.
must
.
push
(
param
);
var
dbnames
=
obj
.
danames
==
null
?
""
:
obj
.
danames
;
if
(
dbnames
!=
null
&&
dbnames
!=
""
){
var
dbarray
=
dbnames
.
split
(
'+'
);
param
=
{
"bool"
:
{
"should"
:
[]
}
}
dbarray
.
forEach
(
function
(
d
){
var
parr
=
{
"term"
:
{
"db_name"
:
d
}
}
param
.
bool
.
should
.
push
(
parr
)
})
params
.
query
.
bool
.
must
.
push
(
param
);
}
var
pubtype
=
obj
.
pubtype
==
null
?
""
:
obj
.
pubtype
;
//专利类型
if
(
pubtype
!=
null
&&
pubtype
!=
""
){
param
=
{
"term"
:
{
"pub_type"
:
pubtype
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
pubstatus
=
obj
.
pubstatus
==
null
?
""
:
obj
.
pubstatus
;
//法律状态
if
(
pubstatus
!=
null
&&
pubstatus
!=
""
){
param
=
{
"term"
:
{
"status_code"
:
pubstatus
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
filingyear
=
obj
.
filingyear
==
null
?
""
:
obj
.
filingyear
;
//申请年份
if
(
filingyear
!=
null
&&
filingyear
!=
""
){
param
=
{
"term"
:
{
"app_year"
:
filingyear
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
pubyear
=
obj
.
pubyear
==
null
?
""
:
obj
.
pubyear
;
//公开年份
if
(
pubyear
!=
null
&&
pubyear
!=
""
){
param
=
{
"term"
:
{
"pub_year"
:
pubyear
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
){
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
CommomSearchbyApplicant
(
obj
){
//根据申请人查询聚合
var
pagesize
=
obj
.
pagesize
==
null
?
10
:
obj
.
pagesize
;
if
(
obj
.
page
==
null
){
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
page
-
1
)
*
obj
.
pagesize
);
}
var
applicant
=
obj
.
applicant
==
null
?
""
:
obj
.
applicant
;
if
(
applicant
==
""
){
return
{
status
:
-
1
,
msg
:
"传入的申请人信息为空"
,
data
:
null
,
buckets
:
null
};
}
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
from
,
"size"
:
pagesize
,
"_source"
:
[
"app_number"
,
"app_date"
,
"pub_number"
,
"pub_type"
,
"pub_date"
,
"title_name"
,
"applicant_name"
,
"inventor_name"
],
"aggregations"
:
{
"group_by_filing_year"
:
{
"terms"
:
{
"field"
:
"app_year"
,
"size"
:
1000
,
"order"
:{
"_term"
:
"desc"
}
}
},
"group_by_pub_year"
:
{
"terms"
:
{
"field"
:
"pub_year"
,
"size"
:
1000
,
"order"
:{
"_term"
:
"desc"
}
}
}
}
};
var
param
=
{
"query_string"
:
{
"default_field"
:
"applicant_name"
,
"query"
:
"
\"
"
+
applicant
.
toLowerCase
()
+
"
\"
"
}
}
params
.
query
.
bool
.
must
.
push
(
param
);
var
dbnames
=
obj
.
danames
==
null
?
""
:
obj
.
danames
;
if
(
dbnames
!=
null
&&
dbnames
!=
""
){
var
dbarray
=
dbnames
.
split
(
'+'
);
param
=
{
"bool"
:
{
"should"
:
[]
}
}
dbarray
.
forEach
(
function
(
d
){
var
parr
=
{
"term"
:
{
"db_name"
:
d
}
}
param
.
bool
.
should
.
push
(
parr
)
})
params
.
query
.
bool
.
must
.
push
(
param
);
}
var
pubtype
=
obj
.
pubtype
==
null
?
""
:
obj
.
pubtype
;
//专利类型
if
(
pubtype
!=
null
&&
pubtype
!=
""
){
param
=
{
"term"
:
{
"pub_type"
:
pubtype
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
pubstatus
=
obj
.
pubstatus
==
null
?
""
:
obj
.
pubstatus
;
//法律状态
if
(
pubstatus
!=
null
&&
pubstatus
!=
""
){
param
=
{
"term"
:
{
"status_code"
:
pubstatus
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
filingyear
=
obj
.
filingyear
==
null
?
""
:
obj
.
filingyear
;
//申请年份
if
(
filingyear
!=
null
&&
filingyear
!=
""
){
param
=
{
"term"
:
{
"app_year"
:
filingyear
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
pubyear
=
obj
.
pubyear
==
null
?
""
:
obj
.
pubyear
;
//公开年份
if
(
pubyear
!=
null
&&
pubyear
!=
""
){
param
=
{
"term"
:
{
"pub_year"
:
pubyear
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
){
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
CommomSearchbyInventor
(
obj
){
//根据发明人查询聚合
var
pagesize
=
obj
.
pagesize
==
null
?
10
:
obj
.
pagesize
;
if
(
obj
.
page
==
null
){
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
page
-
1
)
*
obj
.
pagesize
);
}
var
inventor
=
obj
.
inventor
==
null
?
""
:
obj
.
inventor
;
if
(
inventor
==
""
){
return
{
status
:
-
1
,
msg
:
"传入的发明人信息为空"
,
data
:
null
,
buckets
:
null
};
}
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
from
,
"size"
:
pagesize
,
"_source"
:
[
"app_number"
,
"app_date"
,
"pub_number"
,
"pub_type"
,
"pub_date"
,
"title_name"
,
"applicant_name"
,
"inventor_name"
],
"aggregations"
:
{
"group_by_filing_year"
:
{
"terms"
:
{
"field"
:
"app_year"
,
"size"
:
1000
,
"order"
:{
"_term"
:
"desc"
}
}
},
"group_by_pub_year"
:
{
"terms"
:
{
"field"
:
"pub_year"
,
"size"
:
1000
,
"order"
:{
"_term"
:
"desc"
}
}
}
}
};
var
param
=
{
"query_string"
:
{
"default_field"
:
"inventor_name"
,
"query"
:
"
\"
"
+
inventor
.
toLowerCase
()
+
"
\"
"
}
}
params
.
query
.
bool
.
must
.
push
(
param
);
var
dbnames
=
obj
.
danames
==
null
?
""
:
obj
.
danames
;
if
(
dbnames
!=
null
&&
dbnames
!=
""
){
var
dbarray
=
dbnames
.
split
(
'+'
);
param
=
{
"bool"
:
{
"should"
:
[]
}
}
dbarray
.
forEach
(
function
(
d
){
var
parr
=
{
"term"
:
{
"db_name"
:
d
}
}
param
.
bool
.
should
.
push
(
parr
)
})
params
.
query
.
bool
.
must
.
push
(
param
);
}
var
pubtype
=
obj
.
pubtype
==
null
?
""
:
obj
.
pubtype
;
//专利类型
if
(
pubtype
!=
null
&&
pubtype
!=
""
){
param
=
{
"term"
:
{
"pub_type"
:
pubtype
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
pubstatus
=
obj
.
pubstatus
==
null
?
""
:
obj
.
pubstatus
;
//法律状态
if
(
pubstatus
!=
null
&&
pubstatus
!=
""
){
param
=
{
"term"
:
{
"status_code"
:
pubstatus
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
filingyear
=
obj
.
filingyear
==
null
?
""
:
obj
.
filingyear
;
//申请年份
if
(
filingyear
!=
null
&&
filingyear
!=
""
){
param
=
{
"term"
:
{
"app_year"
:
filingyear
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
pubyear
=
obj
.
pubyear
==
null
?
""
:
obj
.
pubyear
;
//公开年份
if
(
pubyear
!=
null
&&
pubyear
!=
""
){
param
=
{
"term"
:
{
"pub_year"
:
pubyear
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
){
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
seniorSearch
(
obj
){
//高级检索,根据用户输入的不同多条件进行检索
var
pagesize
=
obj
.
pagesize
==
null
?
10
:
obj
.
pagesize
;
if
(
obj
.
page
==
null
){
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
page
-
1
)
*
obj
.
pagesize
);
}
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
from
,
"size"
:
pagesize
,
"_source"
:
[
"app_number"
,
"app_date"
,
"pub_number"
,
"pub_type"
,
"pub_date"
,
"title_name"
,
"applicant_name"
,
"inventor_name"
]
};
var
param
=
null
;
//对库做判断
var
dbnames
=
obj
.
danames
==
null
?
""
:
obj
.
danames
;
if
(
dbnames
!=
null
&&
dbnames
!=
""
){
var
dbarray
=
dbnames
.
split
(
'+'
);
param
=
{
"bool"
:
{
"should"
:
[]
}
}
dbarray
.
forEach
(
function
(
d
){
var
parr
=
{
"term"
:
{
"db_name"
:
d
}
}
param
.
bool
.
should
.
push
(
parr
)
})
params
.
query
.
bool
.
must
.
push
(
param
);
}
//对关键词
var
title
=
obj
.
title
==
null
?
""
:
obj
.
title
;
if
(
title
!=
null
&&
title
!=
""
){
param
=
{
"match"
:
{
"title_name"
:
title
.
toLowerCase
()
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
abstr
=
obj
.
abstr
==
null
?
""
:
obj
.
abstr
;
if
(
abstr
!=
null
&&
abstr
!=
""
){
param
=
{
"match"
:
{
"abstr_text"
:
abstr
.
toLowerCase
()
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
filingno
=
obj
.
filingno
==
null
?
""
:
obj
.
filingno
;
if
(
filingno
!=
null
&&
filingno
!=
""
){
param
=
{
"term"
:
{
"app_number"
:
filingno
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
pubno
=
obj
.
pubno
==
null
?
""
:
obj
.
pubno
;
if
(
pubno
!=
null
&&
pubno
!=
""
){
param
=
{
"term"
:
{
"pub_number"
:
pubno
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
priorno
=
obj
.
priorno
==
null
?
""
:
obj
.
priorno
;
if
(
priorno
!=
null
&&
priorno
!=
""
){
param
=
{
"wildcard"
:
{
"prior_info"
:
priorno
+
"*"
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
appl
=
obj
.
applname
==
null
?
""
:
obj
.
applname
;
if
(
appl
!=
null
&&
appl
!=
""
){
param
=
{
"term"
:
{
"applicant_name.raw"
:
appl
.
toLowerCase
()
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
inv
=
obj
.
invname
==
null
?
""
:
obj
.
invname
;
if
(
inv
!=
null
&&
inv
!=
""
){
param
=
{
"term"
:
{
"inventor_name.raw"
:
inv
.
toLowerCase
()
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
ipc
=
obj
.
ipcno
==
null
?
""
:
obj
.
ipcno
;
if
(
ipc
!=
null
&&
ipc
!=
""
){
var
param
=
{
"term"
:
{
"other_ipc"
:
ipc
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
if
(
obj
.
filingdate1
!=
null
&&
obj
.
filingdate1
!=
""
){
var
filingdate1
=
obj
.
filingdate1
;
}
else
{
var
filingdate1
=
""
;
}
if
(
obj
.
filingdate2
!=
null
&&
obj
.
filingdate2
!=
""
){
var
filingdate2
=
obj
.
filingdate2
;
}
else
{
var
filingdate2
=
""
;
}
if
(
filingdate1
!=
""
||
filingdate2
!=
""
){
param
=
{
"range"
:
{
"app_date"
:
{
}
}
};
if
(
filingdate1
!=
""
){
param
.
range
.
app_date
[
"gte"
]
=
filingdate1
;
}
if
(
filingdate2
!=
""
){
param
.
range
.
app_date
[
"lte"
]
=
filingdate2
;
}
params
.
query
.
bool
.
must
.
push
(
param
);
}
if
(
obj
.
pubdate1
!=
null
&&
obj
.
pubdate1
!=
""
){
var
pubdate1
=
obj
.
pubdate1
;
}
else
{
var
pubdate1
=
""
;
}
if
(
obj
.
pubdate2
!=
null
&&
obj
.
pubdate2
!=
""
){
var
pubdate2
=
obj
.
pubdate2
;
}
else
{
var
pubdate2
=
""
;
}
if
(
pubdate1
!=
""
||
pubdate2
!=
""
){
param
=
{
"range"
:
{
"pub_date"
:
{
}
}
};
if
(
pubdate1
!=
""
){
param
.
range
.
pub_date
[
"gte"
]
=
pubdate1
;
}
if
(
pubdate2
!=
""
){
param
.
range
.
pub_date
[
"lte"
]
=
pubdate2
;
}
params
.
query
.
bool
.
must
.
push
(
param
);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
System
.
getResult2
(
j
.
hits
,
null
);
}
catch
(
e
){
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
};
}
module
.
exports
=
WordPatentSearchApi
;
igirl-channel/app/base/api/impl/patent/wpatentaggregations.js
deleted
100644 → 0
View file @
bf4c109f
var
System
=
require
(
"../../../system"
);
var
settings
=
require
(
"../../../../config/settings"
);
const
querystring
=
require
(
'querystring'
);
const
ApiBase
=
require
(
"../../api.base"
);
class
WPatentAggregationsApi
extends
ApiBase
{
constructor
()
{
super
();
this
.
patentUrl
=
settings
.
reqEsAddrIc
()
+
"bigdata_world_patent_bib_op/_search"
;
};
async
ApplicantAggs
(
obj
)
{
//申请人排名聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"applicant_name.raw"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AppCountryAggs
(
obj
)
{
//申请人归属国聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"applicant_country"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
filingyearAggs
(
obj
)
{
//申请年份聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"app_year"
,
"size"
:
20
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
pubyearAggs
(
obj
)
{
//公开年份聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"pub_year"
,
"size"
:
20
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
CountryAggs
(
obj
)
{
//各国专利聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"db_name"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AppIpclcAggs
(
obj
)
{
//Ipc大类聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"bool"
:
{
"must_not"
:
{
"wildcard"
:
{
"main_ipc"
:
"*-*"
}
}
}
}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"large class"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AppIpclcMutiAggs
(
obj
)
{
//申请人Ipc大类聚合//Ipc小类聚合申请人Ipc大类聚合,业务逻辑,先查询申请排名前十的申请人,再加上前十申请人的条件查询排名前十的大类,再加上前十申请人条件和前十大类条件,多重聚合,这个是最后一次聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"bool"
:
{
"must_not"
:
{
"wildcard"
:
{
"main_ipc"
:
"*-*"
}
}
}
}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_appl"
:
{
"terms"
:
{
"field"
:
"applicant_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"large class"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
CountryIpclcMutiAggs
(
obj
)
{
//各国Ipc大类聚合//Ipc小类聚合各国Ipc大类聚合,业务逻辑,,多重聚合,这个是最后一次聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"bool"
:
{
"must_not"
:
{
"wildcard"
:
{
"main_ipc"
:
"*-*"
}
}
}
}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_country"
:
{
"terms"
:
{
"field"
:
"db_name"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"large class"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AppIpcscAggs
(
obj
)
{
//Ipc小类聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"bool"
:
{
"must_not"
:
{
"wildcard"
:
{
"main_ipc"
:
"*-*"
}
}
}
}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"sub_class"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AppIpcscMutiAggs
(
obj
)
{
//Ipc小类聚合申请人Ipc小类聚合,业务逻辑,先查询申请排名前十的申请人,再加上前十申请人的条件查询排名前十的小类,再加上前十申请人条件和前十小类条件,多重聚合,这个是最后一次聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"bool"
:
{
"must_not"
:
{
"wildcard"
:
{
"main_ipc"
:
"*-*"
}
}
}
}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_appl"
:
{
"terms"
:
{
"field"
:
"applicant_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"sub_class"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
CountryIpcscMutiAggs
(
obj
)
{
//各国Ipc小类聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"bool"
:
{
"must_not"
:
{
"wildcard"
:
{
"main_ipc"
:
"*-*"
}
}
}
}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_country"
:
{
"terms"
:
{
"field"
:
"db_name"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"sub_class"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AppIpclgAggs
(
obj
)
{
//Ipc大组聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"bool"
:
{
"must_not"
:
{
"wildcard"
:
{
"main_ipc"
:
"*-*"
}
}
}
}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"large_group"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AppIpclgMutiAggs
(
obj
)
{
//申请人Ipc大组聚合,业务逻辑,先查询申请排名前十的申请人,再加上前十申请人的条件查询排名前十的大组,再加上前十申请人条件和前十大组条件,多重聚合,这个是最后一次聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"bool"
:
{
"must_not"
:
{
"wildcard"
:
{
"main_ipc"
:
"*-*"
}
}
}
}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_appl"
:
{
"terms"
:
{
"field"
:
"applicant_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"large_group"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
CountryIpclgMutiAggs
(
obj
)
{
//各国Ipc大组聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"bool"
:
{
"must_not"
:
{
"wildcard"
:
{
"main_ipc"
:
"*-*"
}
}
}
}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_country"
:
{
"terms"
:
{
"field"
:
"db_name"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"large_group"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AppIpcAggs
(
obj
)
{
//Ipc聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"bool"
:
{
"must_not"
:
{
"wildcard"
:
{
"main_ipc"
:
"*-*"
}
}
}
}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"main_ipc"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AppIpcMutiAggs
(
obj
)
{
//申请人Ipc直属聚合,业务逻辑,先查询申请排名前十的申请人,再加上前十申请人的条件查询排名前十的IPC,再加上前十申请人条件和前十IPC条件,多重聚合,这个是最后一次聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"bool"
:
{
"must_not"
:
{
"wildcard"
:
{
"main_ipc"
:
"*-*"
}
}
}
}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_appl"
:
{
"terms"
:
{
"field"
:
"applicant_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"main_ipc"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
CountryIpcMutiAggs
(
obj
)
{
//各国Ipc直属聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"bool"
:
{
"must_not"
:
{
"wildcard"
:
{
"main_ipc"
:
"*-*"
}
}
}
}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_country"
:
{
"terms"
:
{
"field"
:
"db_name"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"main_ipc"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
AppfilingyearAggs
(
obj
)
{
//申请人申请趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_appl"
:
{
"terms"
:
{
"field"
:
"applicant_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_filingyear"
:
{
"terms"
:
{
"field"
:
"app_year"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
InventorAggs
(
obj
)
{
//发明人排名聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"types"
:
{
"terms"
:
{
"field"
:
"inventor_name.raw"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
InvIpcMutiAggs
(
obj
)
{
//发明人Ipc直属聚合,业务逻辑,先查询申请排名前十的发明人,再加上前十发明人的条件查询排名前十的IPC,再加上前十发明人条件和前十IPC条件,多重聚合,这个是最后一次聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"bool"
:
{
"must_not"
:
{
"wildcard"
:
{
"main_ipc"
:
"*-*"
}
}
}
}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_inv"
:
{
"terms"
:
{
"field"
:
"inventor_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"main_ipc"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"desc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
InvfilingyearAggs
(
obj
)
{
//发明人申请趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_inv"
:
{
"terms"
:
{
"field"
:
"inventor_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_filingyear"
:
{
"terms"
:
{
"field"
:
"app_year"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
InvPubyearAggs
(
obj
)
{
//发明人公开趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_inv"
:
{
"terms"
:
{
"field"
:
"inventor_name.raw"
,
"size"
:
10
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_pubyear"
:
{
"terms"
:
{
"field"
:
"pub_year"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
CountryfilingyearAggs
(
obj
)
{
//国家申请趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_country"
:
{
"terms"
:
{
"field"
:
"db_name"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_filingyear"
:
{
"terms"
:
{
"field"
:
"app_year"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
IpcFilingyearAggs
(
obj
)
{
//IPC申请趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"bool"
:
{
"must_not"
:
{
"wildcard"
:
{
"main_ipc"
:
"*-*"
}
}
}
}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"main_ipc"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_year"
:
{
"terms"
:
{
"field"
:
"app_year"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
IpcLgFilingyearAggs
(
obj
)
{
//IPC大组申请趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"bool"
:
{
"must_not"
:
{
"wildcard"
:
{
"main_ipc"
:
"*-*"
}
}
}
}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"large_group"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_year"
:
{
"terms"
:
{
"field"
:
"filing_year"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
IpcLcFilingyearAggs
(
obj
)
{
//IPC大类申请趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"bool"
:
{
"must_not"
:
{
"wildcard"
:
{
"main_ipc"
:
"*-*"
}
}
}
}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"large class"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_year"
:
{
"terms"
:
{
"field"
:
"filing_year"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
async
IpcScFilingyearAggs
(
obj
)
{
//IPC小类申请趋势聚合
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"bool"
:
{
"must_not"
:
{
"wildcard"
:
{
"main_ipc"
:
"*-*"
}
}
}
}
]
}
},
"from"
:
0
,
"size"
:
1
,
"aggregations"
:
{
"group_by_ipc"
:
{
"terms"
:
{
"field"
:
"sub_class"
,
"size"
:
20
,
"order"
:
{
"_count"
:
"desc"
}
},
"aggregations"
:
{
"group_by_year"
:
{
"terms"
:
{
"field"
:
"filing_year"
,
"size"
:
10
,
"order"
:
{
"_term"
:
"asc"
}
}
}
}
}
}
};
for
(
var
x
in
obj
)
{
params
.
query
.
bool
.
must
.
push
(
obj
[
x
]);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
requrl
=
this
.
patentUrl
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
requrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
rtn
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
j
.
hits
,
buckets
:
j
.
aggregations
};
}
catch
(
e
)
{
return
rtn
=
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
,
buckets
:
null
};
}
};
}
module
.
exports
=
WPatentAggregationsApi
;
\ No newline at end of file
igirl-channel/app/base/api/impl/tool/imghandle.js
deleted
100644 → 0
View file @
bf4c109f
var
system
=
require
(
"../../../system"
)
const
uuidv4
=
require
(
'uuid/v4'
);
const
ApiBase
=
require
(
"../../api.base"
);
const
fs
=
require
(
"fs"
);
var
gm
=
require
(
"gm"
);
var
imageMagick
=
gm
.
subClass
({
imageMagick
:
true
});
const
puppeteer
=
require
(
'puppeteer'
);
class
ImageHandleApi
extends
ApiBase
{
constructor
(){
super
();
this
.
ossClient
=
system
.
getObject
(
"util.ossClient"
);
this
.
execClient
=
system
.
getObject
(
"util.execClient"
);
}
//生成委托书
async
makeDeleForTM
(
obj
){
var
urladdress
=
obj
.
url
;
const
browser
=
await
puppeteer
.
launch
({
args
:
[
'--no-sandbox'
],
timeout
:
5000
,
});
console
.
log
(
urladdress
);
const
page
=
await
browser
.
newPage
();
//await page.setExtraHTTPHeaders({"Content-Type":"text/html;charset:utf-8;"});
await
page
.
goto
(
urladdress
,{
"waitUntil"
:
'networkidle2'
});
await
page
.
waitFor
(
1000
);
var
uuid
=
uuidv4
();
var
u
=
uuid
.
replace
(
/
\-
/g
,
""
);
var
filekey
=
"zc_"
+
u
+
".pdf"
;
var
tmpfile
=
"/tmp/"
+
filekey
;
await
page
.
pdf
({
path
:
tmpfile
,
format
:
'A4'
});
var
rtn
=
await
this
.
ossClient
.
upfile
(
filekey
,
tmpfile
);
await
browser
.
close
();
fs
.
unlink
(
tmpfile
,
function
(
err
){});
return
system
.
getResult2
({
"url"
:
rtn
.
url
},
null
);
}
//商标营业执照处理,大小小于2M,宽高10-50cm
//身份证同营业执照处理
async
bzLicenseForTM
(
obj
){
console
.
log
(
obj
);
//命令行
//按照jpg路径参数下载jpg到临时目录,然后再转换
var
jpgpath
=
obj
.
jpgpath
;
var
basename
=
obj
.
jpgpath
.
substring
(
0
,
obj
.
jpgpath
.
lastIndexOf
(
"."
));
// var basename= await this.getUidStr(20,62);
var
jpgpathtmp
=
"/tmp/"
+
jpgpath
;
var
epspath
=
"/tmp/"
+
basename
+
".eps"
;
var
pdfpathKey
=
basename
+
".pdf"
;
var
pdfpath
=
"/tmp/"
+
basename
+
".pdf"
;
var
result
=
await
this
.
ossClient
.
downfile
(
jpgpath
);
// var downClient=system.getObject("util.restClient");
// var result=await downClient.execDownload(jpgpath,jpgpathtmp);
//转换为eps
var
cmd2eps
=
"jpeg2ps -p "
+
" a4 "
+
jpgpathtmp
+
" -o "
+
epspath
;
var
x
=
await
this
.
execClient
.
exec
(
cmd2eps
);
//转换为pdf
var
cmd2pdf
=
"ps2pdf -dDownsampleColorImages=true "
+
epspath
+
" "
+
pdfpath
;
var
y
=
await
this
.
execClient
.
exec
(
cmd2pdf
);
//上传 pdfpath 到ossClient
var
rtn
=
await
this
.
ossClient
.
upfile
(
pdfpathKey
,
pdfpath
);
fs
.
unlink
(
jpgpathtmp
,
function
(
err
){});
fs
.
unlink
(
epspath
,
function
(
err
){});
fs
.
unlink
(
pdfpath
,
function
(
err
){});
return
system
.
getResult2
({
"url"
:
rtn
.
url
},
null
);
}
//委托书小于2M 600-4000
async
deleForTM
(
obj
){
console
.
log
(
obj
);
//命令行
//按照jpg路径参数下载jpg到临时目录,然后再转换
var
jpgpath
=
obj
.
jpgpath
;
var
basename
=
obj
.
jpgpath
.
substring
(
0
,
obj
.
jpgpath
.
lastIndexOf
(
"."
));
var
jpgpathtmp
=
"/tmp/"
+
jpgpath
;
var
epspath
=
"/tmp/"
+
basename
+
".eps"
;
var
result
=
await
this
.
ossClient
.
downfile
(
jpgpath
);
//转换为eps
var
cmd2eps
=
"jpeg2ps -p "
+
" a4 -r 300 "
+
jpgpathtmp
+
" -o "
+
epspath
;
var
x
=
await
this
.
execClient
.
exec
(
cmd2eps
);
//再转换为jpeg
var
cmd2jpg
=
"eps2jpg -h 3800px -f "
+
epspath
;
var
y
=
await
this
.
execClient
.
exec
(
cmd2jpg
);
//上传 pdfpath 到ossClient
var
rtn
=
await
this
.
ossClient
.
upfile
(
jpgpath
,
jpgpathtmp
);
fs
.
unlink
(
jpgpathtmp
,
function
(
err
){});
fs
.
unlink
(
epspath
,
function
(
err
){});
return
system
.
getResult2
({
"url"
:
rtn
.
url
},
null
);
}
async
onLineMakeTM
(
obj
){
var
word
=
obj
.
word
;
var
fontsize
=
obj
.
fs
;
var
bs
=
obj
.
bs
;
var
uuid
=
uuidv4
();
var
u
=
uuid
.
replace
(
/
\-
/g
,
""
);
var
destfile
=
"zc_word2pic"
+
u
+
".jpg"
;
var
d
=
await
this
.
_onLineMakeTM
(
word
,
fontsize
,
bs
,
"/tmp/"
+
destfile
);
var
rtn
=
await
this
.
ossClient
.
upfile
(
destfile
,
d
);
fs
.
unlink
(
d
,
function
(
err
){});
return
system
.
getResult2
({
"url"
:
rtn
.
url
},
null
);
}
//在线生成商标图样,bs大小,fs字体尺寸
async
_onLineMakeTM
(
word
,
fs
,
bs
,
destfile
){
// var word=obj.word;
// var fs=obj.fs;
// var bs=obj.bs;
// var uuid=uuidv4();
// var u=uuid.replace(/\-/g,"");
// var destfile= "zc_word2pic"+u+".jpg";
var
p
=
new
Promise
(
function
(
resv
,
reject
){
imageMagick
(
bs
,
bs
,
"#fff"
)
.
font
(
__dirname
+
"/fonts/heiti.otf"
)
.
fontSize
(
fs
)
.
drawText
(
0
,
0
,
word
,
"center"
)
.
write
(
destfile
,
function
(
err
)
{
if
(
!
err
){
resv
(
destfile
);
}
else
{
reject
(
err
);
}
});
});
return
p
;
}
//商标图样,如果
//转换为黑白
//jpeg -g参数
async
toblack
(
obj
){
//下载
var
jpgpath
=
obj
.
jpgpath
;
var
basename
=
obj
.
jpgpath
.
substring
(
0
,
obj
.
jpgpath
.
lastIndexOf
(
"."
));
var
result
=
await
this
.
ossClient
.
downfile
(
jpgpath
);
var
jpgpathtmp
=
"/tmp/"
+
jpgpath
;
var
bkimgpath
=
"/tmp/bk"
+
basename
+
".jpg"
;
var
comimgpath
=
"/tmp/comimg"
+
basename
+
".jpg"
;
var
size
=
await
this
.
_getImgSize
(
jpgpathtmp
);
var
maxSize
=
Math
.
max
(
size
.
height
,
size
.
width
);
var
scale
=
0
;
//不缩放
if
(
maxSize
<
400
){
maxSize
=
500
;
scale
=
1
;
//放大
}
if
(
maxSize
>
1500
){
maxSize
=
1400
;
scale
=
1
;
//缩小
}
//生成背景图片
var
bkimg
=
await
this
.
_onMakeTmBkPic
(
maxSize
,
bkimgpath
);
//合成图像
var
comimg
=
await
this
.
_composeImg
(
scale
,
maxSize
,
jpgpathtmp
,
bkimgpath
,
comimgpath
);
var
grayimg
=
await
this
.
_grayImg
(
comimgpath
);
//上传覆盖元先的路径
var
rtn
=
await
this
.
ossClient
.
upfile
(
jpgpath
,
comimgpath
);
fs
.
unlink
(
jpgpathtmp
,
function
(
err
){});
fs
.
unlink
(
bkimgpath
,
function
(
err
){});
fs
.
unlink
(
comimgpath
,
function
(
err
){});
return
system
.
getResult2
({
"url"
:
rtn
.
url
},
null
);
}
//调整图样大小
async
adjustTMSize
(
obj
){
//下载
var
jpgpath
=
obj
.
jpgpath
;
var
basename
=
obj
.
jpgpath
.
substring
(
0
,
obj
.
jpgpath
.
lastIndexOf
(
"."
));
var
result
=
await
this
.
ossClient
.
downfile
(
jpgpath
);
var
jpgpathtmp
=
"/tmp/"
+
jpgpath
;
var
bkimgpath
=
"/tmp/bk"
+
basename
+
".jpg"
;
var
comimgpath
=
"/tmp/comimg"
+
basename
+
".jpg"
;
var
size
=
await
this
.
_getImgSize
(
jpgpathtmp
);
var
maxSize
=
Math
.
max
(
size
.
height
,
size
.
width
);
var
scale
=
0
;
//不缩放
if
(
maxSize
<
400
){
maxSize
=
500
;
scale
=
1
;
//放大
}
if
(
maxSize
>
1500
){
maxSize
=
1400
;
scale
=
1
;
//缩小
}
//生成背景图片
var
bkimg
=
await
this
.
_onMakeTmBkPic
(
maxSize
,
bkimgpath
);
//合成图像
var
comimg
=
await
this
.
_composeImg
(
scale
,
maxSize
,
jpgpathtmp
,
bkimgpath
,
comimgpath
);
//上传覆盖元先的路径
var
rtn
=
await
this
.
ossClient
.
upfile
(
jpgpath
,
comimgpath
);
fs
.
unlink
(
jpgpathtmp
,
function
(
err
){});
fs
.
unlink
(
bkimgpath
,
function
(
err
){});
fs
.
unlink
(
comimgpath
,
function
(
err
){});
return
system
.
getResult2
({
"url"
:
rtn
.
url
},
null
);
}
//获取图像尺寸
async
_getImgSize
(
srcImg
){
var
p
=
new
Promise
(
function
(
resv
,
reject
){
imageMagick
(
srcImg
)
.
size
(
function
(
err
,
size
)
{
if
(
!
err
){
resv
(
size
);
}
else
{
reject
(
err
);
}
});
});
return
p
;
}
//缩放图像
async
_grayImg
(
srcImg
){
var
p
=
new
Promise
(
function
(
resv
,
reject
){
imageMagick
(
srcImg
)
.
colorspace
(
"GRAY"
)
.
write
(
srcImg
,
function
(
err
)
{
if
(
!
err
){
resv
(
srcImg
);
}
else
{
reject
(
err
);
}
});
});
return
p
;
}
//缩放图像
async
_scaleImg
(
srcImg
,
w
,
h
){
var
p
=
new
Promise
(
function
(
resv
,
reject
){
imageMagick
(
srcImg
)
.
resize
(
w
,
h
)
.
write
(
srcImg
,
function
(
err
)
{
if
(
!
err
){
resv
(
srcImg
);
}
else
{
reject
(
err
);
}
});
});
return
p
;
}
//生成背景图片,bs大小
async
_onMakeTmBkPic
(
bs
,
destfile
){
var
p
=
new
Promise
(
function
(
resv
,
reject
){
imageMagick
(
bs
,
bs
,
"#fff"
)
.
write
(
destfile
,
function
(
err
)
{
if
(
!
err
){
resv
(
destfile
);
}
else
{
reject
(
err
);
}
});
});
return
p
;
}
//合成图片
async
_composeImg
(
scale
,
maxSize
,
srcImg
,
bakImg
,
destfile
){
var
self
=
this
;
var
p
=
new
Promise
(
async
function
(
resv
,
reject
){
if
(
scale
==
0
){
imageMagick
()
.
command
(
"composite"
)
.
in
(
"-gravity"
,
"center"
)
.
in
(
srcImg
)
.
in
(
bakImg
)
.
write
(
destfile
,
function
(
err
){
if
(
!
err
){
resv
(
destfile
);
}
else
{
reject
(
err
);
}
});
}
else
{
var
srcimg
=
await
self
.
_scaleImg
(
srcImg
,
maxSize
);
imageMagick
()
.
command
(
"composite"
)
.
in
(
"-gravity"
,
"center"
)
.
in
(
srcimg
)
.
in
(
bakImg
)
.
write
(
destfile
,
function
(
err
){
if
(
!
err
){
resv
(
destfile
);
}
else
{
reject
(
err
);
}
});
}
});
return
p
;
}
//合成图片
async
genPosterQrcodeImg
(
qrcode
,
bakImg
,
fileName
){
if
(
qrcode
.
lastIndexOf
(
"/"
)
!=
-
1
)
{
qrcode
=
qrcode
.
substring
(
qrcode
.
lastIndexOf
(
"/"
)
+
1
);
}
if
(
bakImg
.
lastIndexOf
(
"/"
)
!=
-
1
)
{
bakImg
=
bakImg
.
substring
(
bakImg
.
lastIndexOf
(
"/"
)
+
1
);
}
var
self
=
this
;
var
d1
=
await
this
.
ossClient
.
downfile
(
qrcode
);
var
d2
=
await
this
.
ossClient
.
downfile
(
bakImg
);
if
(
!
fileName
)
{
var
uuid
=
uuidv4
();
var
u
=
uuid
.
replace
(
/
\-
/g
,
""
);
fileName
=
"zc_"
+
u
+
".png"
;
}
var
qrcodeFile
=
"/tmp/"
+
qrcode
;
var
bakImgFile
=
"/tmp/"
+
bakImg
;
var
destfile
=
"/tmp/"
+
fileName
;
var
p
=
new
Promise
(
async
function
(
resv
,
reject
)
{
imageMagick
()
.
command
(
"composite"
)
.
in
(
"-gravity"
,
"SouthEast"
)
.
in
(
"-geometry"
,
"+20+20"
)
.
in
(
qrcodeFile
)
.
in
(
bakImgFile
)
.
write
(
destfile
,
async
function
(
err
){
if
(
!
err
){
// var rs = await self.ossClient.upfile(fileName, destfile);
// resv({
// "key": rs.name || "",
// "url": rs.url || ""
// });
resv
(
destfile
);
}
else
{
console
.
error
(
err
);
reject
(
err
);
}
// fs.unlink(qrcodeFile, function(err){});
// fs.unlink(bakImgFile, function(err){});
// fs.unlink(destfile, function(err){});
});
});
return
p
;
}
//标准商标图样上传(生成黑白商标,调整商标宽高 使其合规)
async
uploadStandardTm
(
obj
){
var
jpgpath
=
obj
.
jpgpath
;
// var basename=obj.jpgpath.substring(0,obj.jpgpath.lastIndexOf("."));
var
basename
=
await
this
.
getUidStr
(
20
,
62
)
+
".jpg"
;
var
destfile
=
"/tmp/"
+
basename
;
// var result=await this.ossClient.downfile(jpgpath);
var
downClient
=
system
.
getObject
(
"util.restClient"
);
var
result
=
await
downClient
.
execDownload
(
jpgpath
,
destfile
);
var
jpgpathtmp
=
"/tmp/"
+
basename
;
var
bkimgpath
=
"/tmp/bk"
+
basename
+
".jpg"
;
var
comimgpath
=
"/tmp/comimg"
+
basename
+
".jpg"
;
var
size
=
await
this
.
_getImgSize
(
jpgpathtmp
);
var
maxSize
=
Math
.
max
(
size
.
height
,
size
.
width
);
var
scale
=
0
;
//不缩放
if
(
maxSize
<
400
){
maxSize
=
500
;
scale
=
1
;
//放大
}
if
(
maxSize
>
1500
){
maxSize
=
1400
;
scale
=
1
;
//缩小
}
//生成背景图片
var
bkimg
=
await
this
.
_onMakeTmBkPic
(
maxSize
,
bkimgpath
);
//合成图像
var
comimg
=
await
this
.
_composeImg
(
scale
,
maxSize
,
jpgpathtmp
,
bkimgpath
,
comimgpath
);
//上传覆盖元先的路径
var
rtn
=
await
this
.
ossClient
.
upfile
(
jpgpath
,
comimgpath
);
fs
.
unlink
(
jpgpathtmp
,
function
(
err
){});
fs
.
unlink
(
bkimgpath
,
function
(
err
){});
// fs.unlink(comimgpath,function(err){});
var
grayimg
=
await
this
.
_grayImg
(
comimgpath
);
var
blackjpgpath
=
await
this
.
getUidStr
(
20
,
62
)
+
".jpg"
;
var
rtn2
=
await
this
.
ossClient
.
upfile
(
blackjpgpath
,
comimgpath
);
fs
.
unlink
(
comimgpath
,
function
(
err
){});
return
system
.
getResult2
({
"url"
:
rtn
.
url
,
"url2"
:
rtn2
.
url
},
null
);
}
async
getUidStr
(
len
,
radix
)
{
var
chars
=
'0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
.
split
(
''
);
var
uuid
=
[],
i
;
radix
=
radix
||
chars
.
length
;
if
(
len
)
{
for
(
i
=
0
;
i
<
len
;
i
++
)
uuid
[
i
]
=
chars
[
0
|
Math
.
random
()
*
radix
];
}
else
{
var
r
;
uuid
[
8
]
=
uuid
[
13
]
=
uuid
[
18
]
=
uuid
[
23
]
=
'-'
;
uuid
[
14
]
=
'4'
;
for
(
i
=
0
;
i
<
36
;
i
++
)
{
if
(
!
uuid
[
i
])
{
r
=
0
|
Math
.
random
()
*
16
;
uuid
[
i
]
=
chars
[(
i
==
19
)
?
(
r
&
0x3
)
|
0x8
:
r
];
}
}
}
return
uuid
.
join
(
''
);
}
}
module
.
exports
=
ImageHandleApi
;
// var t=new ImageHandleApi();
//
// t.makeDeleForTM({"url":"http://192.168.18.40:3000/mobile#/products/createwts/10711536633793138"}).then(d=>{
// console.log(d);
// });
// t.onLineMakeTM("hello","/tmp/a.jpg").then(f=>{
// console.log(f);
// });
// t.adjustTMSize({
// appKey:"wx76a324c5d201d1a4",
// jpgpath:"zc_1158153631265738720187173057387ban4.jpg"
// }).then(d=>{
// console.log(d);
// });
// t.toblack({
// appKey:"wx76a324c5d201d1a4",
// jpgpath:"zc_1158153631265738720187173057387ban4.jpg"
// }).then(d=>{
// console.log(d);
// });
// t._scaleImg("/tmp/a.jpg",400).then(d=>{
// console.log(d);
// });
// t._grayImg("/tmp/b.png").then(d=>{
// console.log(d);
// });
igirl-channel/app/base/api/impl/tool/toolApi.js
deleted
100644 → 0
View file @
bf4c109f
var
System
=
require
(
"../../../system"
)
const
crypto
=
require
(
'crypto'
);
var
xlsx
=
require
(
'node-xlsx'
);
var
fs
=
require
(
"fs"
);
var
accesskey
=
'DHmRtFlw2Zr3KaRwUFeiu7FWATnmla'
;
var
accessKeyId
=
'LTAIyAUK8AD04P5S'
;
var
settings
=
require
(
"../../../../config/settings"
);
const
logCtl
=
System
.
getObject
(
"web.common.oplogCtl"
);
const
ApiBase
=
require
(
"../../api.base"
);
class
ToolApi
extends
ApiBase
{
constructor
()
{
super
();
this
.
imghandleApi
=
System
.
getObject
(
"api.tool.imghandle"
);
this
.
gsbSearchApi
=
System
.
getObject
(
"api.trademark.gsbtmsearch"
);
this
.
gsbIcSearchApi
=
System
.
getObject
(
"api.trademark.gsbicsearch"
);
this
.
uploadApi
=
System
.
getObject
(
"api.tool.upload"
);
this
.
bytmsearch
=
System
.
getObject
(
"api.trademark.tmsearch"
);
this
.
ossClient
=
System
.
getObject
(
"util.ossClient"
);
this
.
appKeyStr
=
"wx76a324c5d201d1a4"
;
this
.
mailClient
=
System
.
getObject
(
"util.mailClient"
);
this
.
redisClient
=
System
.
getObject
(
"util.redisClient"
);
}
async
getUidStr
(
len
,
radix
)
{
var
chars
=
'0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
.
split
(
''
);
var
uuid
=
[],
i
;
radix
=
radix
||
chars
.
length
;
if
(
len
)
{
for
(
i
=
0
;
i
<
len
;
i
++
)
uuid
[
i
]
=
chars
[
0
|
Math
.
random
()
*
radix
];
}
else
{
var
r
;
uuid
[
8
]
=
uuid
[
13
]
=
uuid
[
18
]
=
uuid
[
23
]
=
'-'
;
uuid
[
14
]
=
'4'
;
for
(
i
=
0
;
i
<
36
;
i
++
)
{
if
(
!
uuid
[
i
])
{
r
=
0
|
Math
.
random
()
*
16
;
uuid
[
i
]
=
chars
[(
i
==
19
)
?
(
r
&
0x3
)
|
0x8
:
r
];
}
}
}
return
uuid
.
join
(
''
);
}
async
writeFile
(
filePath
,
dataBuffer
)
{
var
promise
=
new
Promise
(
function
(
resv
,
rej
)
{
fs
.
writeFile
(
filePath
,
dataBuffer
,
function
(
err
,
data
)
{
if
(
err
)
{
rej
(
err
);
// console.log(err);
}
else
{
resv
(
"success"
);
}
});
});
return
promise
;
}
//读取excel
async
readXlsx
(
srckey
)
{
var
path
=
await
this
.
uploadApi
.
downfile
(
srckey
);
console
.
log
(
path
);
console
.
log
(
"obj"
);
if
(
!
path
)
{
return
{
code
:
-
3
,
mag
:
"path为空"
}
}
var
obj
=
xlsx
.
parse
(
path
);
fs
.
unlink
(
path
,
e
=>
{
console
.
log
(
"fail"
);
});
if
(
obj
&&
obj
.
length
>
0
)
{
var
data
=
obj
[
0
].
data
;
if
(
data
&&
data
.
length
>
1
)
{
var
tmlist
=
[];
for
(
var
i
=
1
;
i
<
data
.
length
;
i
++
)
{
var
d
=
data
[
i
];
if
(
d
[
0
]
&&
d
[
0
]
!=
"undefined"
&&
d
[
1
]
&&
d
[
1
]
!=
"undefined"
)
{
var
o
=
{
ncl_type
:
d
[
0
],
tm_name
:
d
[
1
]
};
tmlist
.
push
(
o
);
}
}
// var wresult = await this.writeXlsx(tmlist);
// console.log(wresult);
// var r = await this.uploadApi.upfile(wresult.name,wresult.name);
// fs.unlink(wresult.path,e=>{
// console.log("fail");
// });
// console.log(r.url);
return
{
code
:
1
,
data
:
tmlist
};
}
else
{
return
{
code
:
-
1
,
mag
:
"文件数据为空"
}
}
}
else
{
return
{
code
:
-
2
,
mag
:
"文件解析失败"
}
}
}
async
writeXlsx
(
excelObj
)
{
var
data
=
[];
var
arr
=
[[
"类别"
,
"商标名称"
,
"结果"
,
"障碍备注"
]];
for
(
var
i
in
excelObj
)
{
var
value
=
excelObj
[
i
];
var
a
=
[];
var
tmnames
=
""
;
if
(
value
.
tmnames
&&
value
.
tmnames
.
length
>
0
)
{
tmnames
=
value
.
tmnames
.
join
(
';'
);
}
a
.
push
(
value
.
ncl_type
);
a
.
push
(
value
.
tm_name
);
a
.
push
(
value
.
ratetext
);
a
.
push
(
tmnames
);
arr
.
push
(
a
);
}
console
.
log
(
arr
);
var
buffer
=
xlsx
.
build
([
{
name
:
'sheet1'
,
data
:
arr
}
]);
var
fileName
=
await
this
.
getUidStr
(
12
,
62
);
fileName
=
fileName
+
"_"
+
new
Date
().
getTime
().
toString
();
//将文件内容插入新的文件中
var
a
=
await
fs
.
writeFileSync
(
'/tmp/'
+
fileName
+
'.xlsx'
,
buffer
,
{
'flag'
:
'w'
});
return
{
path
:
'/tmp/'
+
fileName
+
'.xlsx'
,
name
:
fileName
+
'.xlsx'
};
}
//智能分析 bycquerytm.html
async
bycznfx
(
obj
,
req
)
{
var
url
=
obj
.
url
;
if
(
!
url
)
{
return
{
code
:
-
1
,
mag
:
"文件地址为空"
}
}
var
srckey
=
url
.
split
(
"aliyuncs.com/"
)[
1
];
var
tmresult
=
await
this
.
readXlsx
(
srckey
);
if
(
tmresult
&&
tmresult
.
code
==
1
)
{
var
tmlist
=
tmresult
.
data
;
var
rtmlist
=
await
this
.
bytmsearch
.
tmncloneSearchs
({
tmlist
:
tmlist
});
console
.
log
(
rtmlist
);
if
(
rtmlist
&&
rtmlist
.
status
==
0
&&
rtmlist
.
data
)
{
var
wresult
=
await
this
.
writeXlsx
(
rtmlist
.
data
);
console
.
log
(
wresult
);
var
r
=
await
this
.
uploadApi
.
upfile
(
wresult
.
name
,
wresult
.
name
);
fs
.
unlink
(
wresult
.
path
,
e
=>
{
console
.
log
(
"fail"
);
});
console
.
log
(
r
.
url
);
// return { code: 1, data: r };
if
(
r
.
url
){
return
System
.
getResultSuccess
(
r
.
url
,
null
);
}
else
{
return
System
.
getResultFail
(
-
199
,
"计算通过率失败"
);
}
}
else
{
// return { code: -111, mag: "计算通过率失败" }
return
System
.
getResultFail
(
-
200
,
"计算通过率失败"
);
}
}
else
{
return
tmresult
}
}
//文字转图片
async
word2pic
(
o
,
req
)
{
// var app = req.session.app;
var
fs
=
180
;
if
(
o
.
word
&&
o
.
word
.
length
>
1
)
{
fs
=
480
/
o
.
word
.
length
;
}
var
obj
=
{
"word"
:
o
.
word
,
"fs"
:
fs
,
"bs"
:
500
,
};
var
url
=
settings
.
apiconfig
.
onLineMakeTMUrl
;
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
obj
,
url
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
j
;
}
catch
(
e
)
{
console
.
log
(
e
);
return
System
.
getResult2
(
null
,
null
);
}
}
//图片彩色转黑白
async
toblack
(
o
,
req
)
{
var
app
=
req
.
session
.
app
;
var
obj
=
{
"appKey"
:
this
.
appKeyStr
,
"jpgpath"
:
o
.
key
};
var
url
=
settings
.
apiconfig
.
toblackUrl
;
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
obj
,
url
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
j
;
}
catch
(
e
)
{
console
.
log
(
e
);
return
System
.
getResult2
(
null
,
null
);
}
}
//调整商标图样宽高
async
adjustTMSize
(
o
,
req
)
{
var
app
=
req
.
session
.
app
;
var
obj
=
{
"appKey"
:
this
.
appKeyStr
,
"jpgpath"
:
o
.
key
};
var
url
=
settings
.
apiconfig
.
adjustTMSizeUrl
;
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
obj
,
url
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
j
;
}
catch
(
e
)
{
console
.
log
(
e
);
return
System
.
getResult2
(
null
,
null
);
}
}
//创建委托书
async
createWTS
(
o
,
req
)
{
// var app = req.session.app;
var
obj
=
{
"appKey"
:
this
.
appKeyStr
,
"url"
:
o
.
url
};
var
result
=
await
this
.
imghandleApi
.
makeDeleForTM
(
obj
);
return
result
;
}
//营业执照、身份证明图片转pdf
async
pic2pdf
(
o
,
req
)
{
// var app = req.session.app;
var
obj
=
{
"appKey"
:
this
.
appKeyStr
,
"jpgpath"
:
o
.
key
};
var
url
=
settings
.
apiconfig
.
bzLicenseForTMUrl
;
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
obj
,
url
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
// var j = await this.imghandleApi.bzLicenseForTM(obj);
return
j
;
}
catch
(
e
)
{
console
.
log
(
e
);
return
System
.
getResult2
(
null
,
null
);
}
}
//调整委托书大小
async
adjustWTSSize
(
o
,
req
)
{
// var app = req.session.app;
var
obj
=
{
"appKey"
:
this
.
appKeyStr
,
"jpgpath"
:
o
.
key
};
var
url
=
settings
.
apiconfig
.
wtsUrl
;
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
obj
,
url
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
j
;
}
catch
(
e
)
{
console
.
log
(
e
);
return
System
.
getResult2
(
null
,
null
);
}
}
//通过名字查询尼斯信息
async
getNclByLikeName
(
o
,
req
)
{
var
obj
=
{
"name"
:
o
.
name
,
"appKey"
:
this
.
appKeyStr
};
var
result
=
await
this
.
gsbSearchApi
.
getNclByLikeName
(
obj
);
return
result
;
}
async
getNcl
(
queryobj
,
req
)
{
var
that
=
this
;
var
appkey
=
this
.
appKeyStr
;
var
result
=
{
rows
:
[],
count
:
0
};
var
sources
=
[];
var
nclcode
=
queryobj
.
nclcode
;
var
data
=
{
nclcode
:
nclcode
,
appKey
:
appkey
,
};
var
ncls
=
await
this
.
gsbSearchApi
.
getNcl
(
data
);
var
noCodeList
=
[];
if
(
ncls
.
status
==
0
)
{
result
.
count
=
ncls
.
total
;
var
d
=
ncls
.
data
;
for
(
var
i
=
0
;
i
<
d
.
length
;
i
++
)
{
var
c
=
d
[
i
];
var
source
=
{
code
:
""
,
name
:
""
,
fullname
:
""
,
pcode
:
""
,
disabled
:
false
};
source
.
code
=
c
.
code
;
source
.
pcode
=
c
.
pid
;
source
.
name
=
c
.
name
;
source
.
fullname
=
!
c
.
code
||
c
.
code
==
"undefined"
?
c
.
name
:
(
c
.
code
+
" "
+
c
.
name
);
if
(
c
.
level
==
1
)
{
source
.
type
=
1
;
}
if
(
!
c
.
code
||
c
.
code
==
"undefined"
)
{
noCodeList
.
push
(
source
);
}
else
{
sources
.
push
(
source
);
}
}
for
(
let
index
=
0
;
index
<
noCodeList
.
length
;
index
++
)
{
const
element
=
noCodeList
[
index
];
if
(
element
)
{
sources
.
push
(
element
);
}
}
result
.
rows
=
sources
;
}
return
System
.
getResult2
(
result
,
null
);
}
async
getCompanyInfoByLikeName
(
oo
,
o
,
req
)
{
var
appkey
=
this
.
appKeyStr
;
var
data
=
{
appKey
:
appkey
,
pagesize
:
5
,
page
:
0
,
companyName
:
o
.
likestr
,
};
var
company
=
await
this
.
gsbIcSearchApi
.
companynamesearch
(
data
);
if
(
company
.
status
==
0
)
{
return
{
data
:
company
.
data
.
list
};
}
else
{
return
{};
}
}
async
getEntregistryByCompanyName
(
o
,
req
)
{
var
appkey
=
this
.
appKeyStr
;
var
data
=
{
appKey
:
appkey
,
pagesize
:
1
,
page
:
0
,
companyName
:
o
.
companyName
,
};
var
company
=
await
this
.
gsbIcSearchApi
.
companynameonesearch
(
data
);
if
(
company
.
status
==
0
&&
company
.
data
.
totalSize
>
0
)
{
return
company
.
data
.
list
[
0
];
}
else
{
return
{};
}
}
async
getCropperPic
(
qobj
,
obj
,
req
)
{
var
that
=
this
;
var
base64
=
obj
.
base64
;
if
(
base64
)
{
if
(
base64
.
indexOf
(
";base64,"
)
>
0
)
{
base64
=
base64
.
split
(
";base64,"
)[
1
];
}
var
img
=
base64
;
var
uid
=
await
this
.
getUidStr
(
6
,
60
);
try
{
var
fileName
=
"zc_cropper"
+
new
Date
().
getTime
()
+
uid
+
".jpg"
;
var
filePath
=
'/tmp/'
+
fileName
;
var
dataBuffer
=
new
Buffer
(
img
,
'base64'
);
console
.
log
(
dataBuffer
);
var
result
=
null
;
var
r
=
await
this
.
writeFile
(
filePath
,
dataBuffer
);
if
(
r
==
"success"
)
{
var
result
=
await
that
.
ossClient
.
upfile
(
fileName
,
filePath
);
fs
.
unlink
(
filePath
,
e
=>
{
console
.
log
(
"fail"
);
});
return
System
.
getResultSuccess
(
result
.
url
,
null
);
}
else
{
return
System
.
getResultFail
(
-
100
,
"操作失败"
);
}
}
catch
(
e
)
{
return
System
.
getResultFail
(
-
200
,
"操作失败"
);
}
}
}
//标准商标图样上传(生成黑白商标,调整商标宽高 使其合规)
async
uploadStandardTm
(
o
,
req
)
{
// var app = req.session.app;
var
obj
=
{
"appKey"
:
this
.
appKeyStr
,
"jpgpath"
:
o
.
key
};
// var url = settings.apiconfig.uploadStandardTmUrl;
// var rc = System.getObject("util.execClient");
// var rtn = null;
try
{
// rtn = await rc.execPost(obj, url);
// var j = JSON.parse(rtn.stdout);
var
j
=
await
this
.
imghandleApi
.
uploadStandardTm
(
obj
);
return
j
;
}
catch
(
e
)
{
console
.
log
(
e
);
return
System
.
getResult2
(
null
,
null
);
}
}
//根据大类 名称查询尼斯
async
getNclByLikeNameAndNcl
(
qobj
,
o
,
req
)
{
var
obj
=
{
"name"
:
o
.
name
,
"appKey"
:
this
.
appKeyStr
,
};
if
(
o
.
ncls
&&
o
.
ncls
.
length
>
0
)
{
obj
[
"ncls"
]
=
o
.
ncls
;
}
var
result
=
await
this
.
gsbSearchApi
.
getNclByLikeName_new
(
obj
);
return
result
;
}
//生成企业监控报告
async
createMonitoringReport
(
obj
){
var
mycompanyname
=
obj
.
companyname
;
var
email
=
obj
.
email
;
if
(
!
mycompanyname
){
return
{
code
:
-
1
,
msg
:
"企业名称参数错误"
};
}
mycompanyname
=
await
this
.
getConvertSemiangleStr
(
mycompanyname
);
if
(
!
email
){
return
{
code
:
-
2
,
msg
:
"邮箱参数错误"
};
}
var
url
=
"http://43.247.184.92:8015/tmdoc/api/createdoc?mycompanyname="
+
encodeURIComponent
(
mycompanyname
);
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rc
.
execGet
({},
url
).
then
(
rtn
=>
{
var
j
=
rtn
.
stdout
;
console
.
log
(
"fanhui"
);
console
.
log
(
j
);
if
(
j
.
indexOf
(
"gsb-zc.oss-cn-beijing.aliyuncs.com"
)
>=
0
){
var
text
=
"企业监控报告"
;
var
html
=
'<a href="'
+
j
+
'">企业监控报告</a>'
var
result
=
this
.
mailClient
.
sendMsg
(
email
,
"企业监控报告"
,
null
,
html
,
null
,
null
,
[]);
//发送成功后result的值:250 Data Ok: queued as freedom
}
})
return
{
code
:
1
};
}
catch
(
e
)
{
console
.
log
(
e
);
return
{
code
:
-
200
,
msg
:
"操作失败"
};
}
}
async
getConvertSemiangleStr
(
str
)
{
var
result
=
""
;
var
len
=
str
.
length
;
for
(
var
i
=
0
;
i
<
len
;
i
++
)
{
var
cCode
=
str
.
charCodeAt
(
i
);
//全角与半角相差(除空格外):65248(十进制)
cCode
=
(
cCode
>=
0xFF01
&&
cCode
<=
0xFF5E
)
?
(
cCode
-
65248
)
:
cCode
;
//处理空格
cCode
=
(
cCode
==
0x03000
)
?
0x0020
:
cCode
;
result
+=
String
.
fromCharCode
(
cCode
);
}
return
result
;
}
async
getOssConfig
(){
return
this
.
uploadApi
.
getOssConfig
();
}
}
module
.
exports
=
ToolApi
;
// var a=await this.createMonitoringReport({companyname:companyname});
igirl-channel/app/base/api/impl/tool/upload.js
deleted
100644 → 0
View file @
bf4c109f
var
System
=
require
(
"../../../system"
)
const
crypto
=
require
(
'crypto'
);
var
fs
=
require
(
"fs"
);
var
accesskey
=
'DHmRtFlw2Zr3KaRwUFeiu7FWATnmla'
;
var
accessKeyId
=
'LTAIyAUK8AD04P5S'
;
var
url
=
"https://gsb-zc.oss-cn-beijing.aliyuncs.com"
;
class
UploadApi
{
constructor
(){
this
.
cmdPdf2HtmlPattern
=
"docker run -i --rm -v /tmp/:/pdf 0c pdf2htmlEX --zoom 1.3 '{fileName}'"
;
this
.
restS
=
System
.
getObject
(
"util.execClient"
);
this
.
cmdInsertToFilePattern
=
"sed -i 's/id=
\"
page-container
\"
/id=
\"
page-container
\"
contenteditable=
\"
true
\"
/'"
;
//sed -i 's/1111/&BBB/' /tmp/input.txt
//sed 's/{position}/{content}/g' {path}
}
async
getOssConfig
(){
var
policyText
=
{
"expiration"
:
"2119-12-31T16:00:00.000Z"
,
"conditions"
:[
[
"content-length-range"
,
0
,
1048576000
],
[
"starts-with"
,
"$key"
,
"zc"
]
]
};
var
b
=
new
Buffer
(
JSON
.
stringify
(
policyText
));
var
policyBase64
=
b
.
toString
(
'base64'
);
var
signature
=
crypto
.
createHmac
(
'sha1'
,
accesskey
).
update
(
policyBase64
).
digest
().
toString
(
'base64'
);
//base64
var
data
=
{
OSSAccessKeyId
:
accessKeyId
,
policy
:
policyBase64
,
Signature
:
signature
,
Bucket
:
'gsb-zc'
,
success_action_status
:
201
,
url
:
url
};
return
data
;
};
async
upfile
(
srckey
,
dest
){
var
oss
=
System
.
getObject
(
"util.ossClient"
);
var
result
=
await
oss
.
upfile
(
srckey
,
"/tmp/"
+
dest
);
return
result
;
};
async
downfile
(
srckey
){
var
oss
=
System
.
getObject
(
"util.ossClient"
);
var
downfile
=
await
oss
.
downfile
(
srckey
).
then
(
function
(){
downfile
=
"/tmp/"
+
srckey
;
return
downfile
;
});
return
downfile
;
};
async
pdf2html
(
obj
){
var
srckey
=
obj
.
key
;
var
downfile
=
await
this
.
downfile
(
srckey
);
var
cmd
=
this
.
cmdPdf2HtmlPattern
.
replace
(
/
\{
fileName
\}
/g
,
srckey
);
var
rtn
=
await
this
.
restS
.
exec
(
cmd
);
var
path
=
"/tmp/"
+
srckey
.
split
(
".pdf"
)[
0
]
+
".html"
;
var
a
=
await
this
.
insertToFile
(
path
);
fs
.
unlink
(
"/tmp/"
+
srckey
);
var
result
=
await
this
.
upfile
(
srckey
.
split
(
".pdf"
)[
0
]
+
".html"
,
srckey
.
split
(
".pdf"
)[
0
]
+
".html"
);
return
result
.
url
;
};
async
insertToFile
(
path
){
var
cmd
=
this
.
cmdInsertToFilePattern
+
" "
+
path
;
return
await
this
.
restS
.
exec
(
cmd
);
};
}
module
.
exports
=
UploadApi
;
igirl-channel/app/base/api/impl/trademark/gsbicsearch.js
deleted
100644 → 0
View file @
bf4c109f
var
System
=
require
(
"../../../system"
);
var
settings
=
require
(
"../../../../config/settings"
);
const
ApiBase
=
require
(
"../../api.base"
);
//const cyjAppKey="ccb00829347e4048833af213e502c8c5";
class
GsbIcSearchApi
extends
ApiBase
{
constructor
()
{
super
();
this
.
icmemberSearchUrl
=
settings
.
apiconfig
.
icmemberSearchUrl
(
settings
.
env
);
this
.
icshareholderSearchUrl
=
settings
.
apiconfig
.
icshareholderSearchUrl
(
settings
.
env
);
this
.
icinvestSearchUrl
=
settings
.
apiconfig
.
icinvestSearchUrl
(
settings
.
env
);
this
.
icchangeSearchUrl
=
settings
.
apiconfig
.
icchangeSearchUrl
(
settings
.
env
);
this
.
iccompanynameSearchUrl
=
settings
.
apiconfig
.
iccompanynameSearchUrl
(
settings
.
env
);
this
.
agencynameSearchUrl
=
settings
.
apiconfig
.
agencynameSearchUrl
(
settings
.
env
);
this
.
iccompanycodeSearchUrl
=
settings
.
apiconfig
.
iccompanycodeSearchUrl
(
settings
.
env
);
this
.
iccompanyNumSearchUrl
=
settings
.
apiconfig
.
iccompanyNumSearchUrl
(
settings
.
env
);
this
.
icbranchSearchUrl
=
settings
.
apiconfig
.
icbranchSearchUrl
(
settings
.
env
);
this
.
phonesearch
=
System
.
getObject
(
"api.trademark.phonesearch"
);
};
buildDate
(
date
)
{
var
date
=
new
Date
(
date
);
var
time
=
Date
.
parse
(
date
);
time
=
time
/
1000
;
return
time
;
};
async
membersearch
(
obj
)
{
var
companyName
=
obj
.
companyName
==
null
?
""
:
obj
.
companyName
;
companyName
=
await
this
.
getConvertSemiangleStr
(
companyName
);
var
pageSize
=
obj
.
pageSize
==
null
?
15
:
obj
.
pageSize
;
if
(
obj
.
currentPage
==
null
)
{
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
currentPage
-
1
)
*
obj
.
pageSize
);
}
var
reqUrl
=
this
.
icmemberSearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"term"
:
{
"company_name"
:
companyName
}
}
]
}
},
"from"
:
from
,
"size"
:
pageSize
,
"_source"
:
[
"member_name"
,
"member_position"
],
"aggs"
:
{
"models"
:
{
"terms"
:
{
"field"
:
"member_name"
},
"aggs"
:
{
"userdetail"
:
{
"top_hits"
:
{
"size"
:
10
,
"_source"
:
[
"member_position"
]
}
}
}
}
}
};
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
var
sources
=
[];
var
data
=
{
"result"
:
1
,
"totalSize"
:
j
.
hits
.
total
,
"pageSize"
:
pageSize
,
"currentPage"
:
obj
.
currentPage
-
1
,
"list"
:
sources
};
j
.
aggregations
.
models
.
buckets
.
forEach
(
function
(
c
)
{
var
po
=
[];
c
.
userdetail
.
hits
.
hits
.
forEach
(
function
(
d
)
{
po
.
push
(
d
.
_source
.
member_position
);
})
var
source
=
{
memberName
:
c
.
key
,
position
:
po
,
};
sources
.
push
(
source
);
});
var
a
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
data
};
return
a
;
}
catch
(
e
)
{
return
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
};
}
};
async
shareholdersearch
(
obj
)
{
var
companyName
=
obj
.
companyName
==
null
?
""
:
obj
.
companyName
;
companyName
=
await
this
.
getConvertSemiangleStr
(
companyName
);
var
pageSize
=
obj
.
pageSize
==
null
?
15
:
obj
.
pageSize
;
if
(
obj
.
currentPage
==
null
)
{
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
currentPage
-
1
)
*
obj
.
pageSize
);
}
var
reqUrl
=
this
.
icshareholderSearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"term"
:
{
"company_name"
:
companyName
}
}
]
}
},
"from"
:
from
,
"size"
:
pageSize
,
"_source"
:
[
"investor_name"
,
"subscribe_amount"
,
"subscribe_amount_type"
,
"subscribe_time"
,
"subscribe_type"
,
"paid_amount"
,
"paid_amount_type"
,
"paid_time"
,
"paid_type"
]
};
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
var
sources
=
[];
var
data
=
{
"result"
:
1
,
"totalSize"
:
j
.
hits
.
total
,
"pageSize"
:
pageSize
,
"currentPage"
:
obj
.
currentPage
-
1
,
"list"
:
sources
};
j
.
hits
.
hits
.
forEach
(
function
(
c
)
{
c
.
_source
.
subscribe_amount_type
=
(
c
.
_source
.
subscribe_amount_type
==
"null"
||
c
.
_source
.
subscribe_amount_type
==
null
)
?
""
:
c
.
_source
.
subscribe_amount_type
;
c
.
_source
.
paid_amount_type
=
(
c
.
_source
.
paid_amount_type
==
"null"
||
c
.
_source
.
paid_amount_type
==
null
)
?
""
:
c
.
_source
.
paid_amount_type
;
var
source
=
{
subcribe
:
c
.
_source
.
subscribe_amount
+
c
.
_source
.
subscribe_amount_type
,
shareholdersName
:
c
.
_source
.
investor_name
,
paidIn
:
c
.
_source
.
paid_amount
+
c
.
_source
.
paid_amount_type
,
};
sources
.
push
(
source
);
});
var
a
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
data
};
return
a
;
}
catch
(
e
)
{
return
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
};
}
};
async
investsearch
(
obj
)
{
var
companyName
=
obj
.
companyName
==
null
?
""
:
obj
.
companyName
;
companyName
=
await
this
.
getConvertSemiangleStr
(
companyName
);
var
pageSize
=
obj
.
pageSize
==
null
?
15
:
obj
.
pageSize
;
if
(
obj
.
currentPage
==
null
)
{
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
currentPage
-
1
)
*
obj
.
pageSize
);
}
var
reqUrl
=
this
.
icinvestSearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"term"
:
{
"company_name"
:
companyName
}
}
]
}
},
"from"
:
from
,
"size"
:
pageSize
,
"_source"
:
[
"invest_name"
,
"invest_person"
,
"invest_time"
,
"invest_capital"
,
"capital_type"
]
};
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
var
sources
=
[];
var
data
=
{
"result"
:
1
,
"totalSize"
:
j
.
hits
.
total
,
"pageSize"
:
pageSize
,
"currentPage"
:
obj
.
currentPage
-
1
,
"list"
:
sources
};
j
.
hits
.
hits
.
forEach
(
function
(
c
)
{
c
.
_source
.
subscribe_amount_type
=
(
c
.
_source
.
subscribe_amount_type
==
"null"
||
c
.
_source
.
subscribe_amount_type
==
null
)
?
""
:
c
.
_source
.
subscribe_amount_type
;
c
.
_source
.
paid_amount_type
=
(
c
.
_source
.
paid_amount_type
==
"null"
||
c
.
_source
.
paid_amount_type
==
null
)
?
""
:
c
.
_source
.
paid_amount_type
;
if
(
c
.
_source
.
invest_time
!=
null
)
{
var
time
=
new
Date
(
c
.
_source
.
invest_time
*
1000
);
c
.
_source
.
invest_time
=
time
.
toLocaleDateString
();
}
var
source
=
{
foundDt
:
c
.
_source
.
invest_time
,
companyName
:
c
.
_source
.
invest_name
,
registeredCapital
:
c
.
_source
.
invest_capital
+
c
.
_source
.
capital_type
,
legalPerson
:
c
.
_source
.
invest_person
,
};
sources
.
push
(
source
);
});
var
a
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
data
};
return
a
;
}
catch
(
e
)
{
return
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
};
}
};
async
changesearch
(
obj
)
{
var
companyName
=
obj
.
companyName
==
null
?
""
:
obj
.
companyName
;
companyName
=
await
this
.
getConvertSemiangleStr
(
companyName
);
var
pageSize
=
obj
.
pageSize
==
null
?
15
:
obj
.
pageSize
;
if
(
obj
.
currentPage
==
null
)
{
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
currentPage
-
1
)
*
obj
.
pageSize
);
}
var
reqUrl
=
this
.
icchangeSearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"term"
:
{
"company_name"
:
companyName
}
}
]
}
},
"from"
:
from
,
"size"
:
pageSize
,
"_source"
:
[
"change_item"
,
"change_time"
,
"change_before"
,
"change_after"
]
};
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
var
sources
=
[];
var
data
=
{
"result"
:
1
,
"totalSize"
:
j
.
hits
.
total
,
"pageSize"
:
pageSize
,
"currentPage"
:
obj
.
currentPage
-
1
,
"list"
:
sources
};
j
.
hits
.
hits
.
forEach
(
function
(
c
)
{
c
.
_source
.
subscribe_amount_type
=
(
c
.
_source
.
subscribe_amount_type
==
"null"
||
c
.
_source
.
subscribe_amount_type
==
null
)
?
""
:
c
.
_source
.
subscribe_amount_type
;
c
.
_source
.
paid_amount_type
=
(
c
.
_source
.
paid_amount_type
==
"null"
||
c
.
_source
.
paid_amount_type
==
null
)
?
""
:
c
.
_source
.
paid_amount_type
;
if
(
c
.
_source
.
change_time
!=
null
)
{
var
time3
=
new
Date
(
c
.
_source
.
change_time
*
1000
);
c
.
_source
.
change_time
=
time3
.
toLocaleDateString
();
}
var
source
=
{
changeEvent
:
c
.
_source
.
change_item
,
changeData
:
c
.
_source
.
change_time
,
changeBefore
:
c
.
_source
.
change_before
,
changeAfter
:
c
.
_source
.
change_after
,
};
sources
.
push
(
source
);
});
var
a
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
data
};
return
a
;
}
catch
(
e
)
{
return
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
};
}
};
async
companynamesearch
(
obj
)
{
var
companyName
=
obj
.
companyName
==
null
?
""
:
obj
.
companyName
;
companyName
=
await
this
.
getConvertSemiangleStr
(
companyName
);
var
pageSize
=
obj
.
pageSize
==
null
?
15
:
obj
.
pageSize
;
if
(
obj
.
currentPage
==
null
)
{
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
currentPage
-
1
)
*
obj
.
pageSize
);
}
var
reqUrl
=
this
.
iccompanynameSearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"query_string"
:
{
"default_field"
:
"company_name"
,
"query"
:
'
\
"'
+
companyName
+
'
\
"'
}
}
]
}
},
"from"
:
from
,
"size"
:
pageSize
,
"_source"
:
[
"company_id"
,
"company_province"
,
"company_domain"
,
"company_name"
,
"legal_person"
,
"reg_status"
,
"reg_unit"
,
"reg_capital"
,
"estibish_time"
,
"reg_location"
,
"credit_code"
],
"sort"
:
[
{
"reg_capital"
:
"desc"
}
]
};
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
var
sources
=
[];
var
data
=
{
"result"
:
1
,
"totalSize"
:
j
.
hits
.
total
,
"pageSize"
:
pageSize
,
"currentPage"
:
obj
.
currentPage
-
1
,
"list"
:
sources
};
j
.
hits
.
hits
.
forEach
(
function
(
c
)
{
if
(
c
.
_source
.
estibish_time
!=
null
)
{
var
time
=
new
Date
(
c
.
_source
.
estibish_time
*
1000
);
c
.
_source
.
estibish_time
=
time
.
toLocaleDateString
();
}
var
source
=
{
entId
:
c
.
_source
.
company_id
,
province
:
c
.
_source
.
company_province
,
domainEntName
:
c
.
_source
.
company_domain
,
entName
:
c
.
_source
.
company_name
,
entLegalperson
:
c
.
_source
.
legal_person
,
entStatus
:
c
.
_source
.
reg_status
,
capitalUnit
:
c
.
_source
.
reg_unit
,
capitalStandard
:
c
.
_source
.
reg_capital
,
foundedTime
:
c
.
_source
.
estibish_time
,
regLocation
:
c
.
_source
.
reg_location
,
creditCode
:
c
.
_source
.
credit_code
,
};
sources
.
push
(
source
);
});
j
.
hits
.
hits
=
data
;
var
a
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
data
};
return
a
;
}
catch
(
e
)
{
return
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
};
}
};
async
companynameonesearch
(
obj
)
{
var
companyName
=
obj
.
companyName
==
null
?
""
:
obj
.
companyName
;
companyName
=
await
this
.
getConvertSemiangleStr
(
companyName
);
var
pageSize
=
1
;
if
(
obj
.
currentPage
==
null
)
{
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
currentPage
-
1
)
*
obj
.
pageSize
);
}
var
reqUrl
=
this
.
iccompanynameSearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"term"
:
{
"company_name.raw"
:
companyName
}
}
]
}
},
"from"
:
from
,
"size"
:
pageSize
,
"_source"
:
[
"company_id"
,
"company_province"
,
"company_domain"
,
"legal_person"
,
"reg_status"
,
"reg_unit"
,
"reg_capital"
,
"estibish_time"
,
"credit_code"
,
"reg_number"
,
"org_number"
,
"company_type"
,
"reg_institute"
,
"reg_location"
,
"business_scope"
,
"approved_time"
,
"from_time"
,
"to_time"
,
"reg_unit"
]
};
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
var
sources
=
[];
var
data
=
{
"result"
:
1
,
"totalSize"
:
j
.
hits
.
total
,
"pageSize"
:
1
,
"currentPage"
:
obj
.
currentPage
-
1
,
"list"
:
sources
};
j
.
hits
.
hits
.
forEach
(
function
(
c
)
{
if
(
c
.
_source
.
approved_time
!=
null
)
{
var
time3
=
new
Date
(
c
.
_source
.
approved_time
*
1000
);
c
.
_source
.
approved_time
=
time3
.
toLocaleDateString
();
}
if
(
c
.
_source
.
from_time
!=
null
)
{
var
time3
=
new
Date
(
c
.
_source
.
from_time
*
1000
);
c
.
_source
.
from_time
=
time3
.
toLocaleDateString
();
}
if
(
c
.
_source
.
to_time
!=
null
)
{
var
time3
=
new
Date
(
c
.
_source
.
to_time
*
1000
);
c
.
_source
.
to_time
=
time3
.
toLocaleDateString
();
}
if
(
c
.
_source
.
estibish_time
!=
null
)
{
var
time3
=
new
Date
(
c
.
_source
.
estibish_time
*
1000
);
c
.
_source
.
estibish_time
=
time3
.
toLocaleDateString
();
}
var
source
=
{
name
:
c
.
_source
.
company_domain
,
legalRepresentative
:
c
.
_source
.
legal_person
,
managementState
:
c
.
_source
.
reg_status
,
registeredCapital
:
c
.
_source
.
reg_capital
+
c
.
_source
.
reg_unit
,
foundedTime
:
c
.
_source
.
estibish_time
,
creditCode
:
c
.
_source
.
credit_code
,
registrID
:
c
.
_source
.
reg_number
,
organizationCode
:
c
.
_source
.
org_number
,
companyType
:
c
.
_source
.
company_type
,
registerOffice
:
c
.
_source
.
reg_institute
,
businessAddress
:
c
.
_source
.
reg_location
,
scope
:
c
.
_source
.
business_scope
,
dateIssue
:
c
.
_source
.
approved_time
,
businessTerm
:
c
.
_source
.
from_time
+
"至"
+
c
.
_source
.
to_time
,
};
sources
.
push
(
source
);
});
var
a
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
data
};
return
a
;
}
catch
(
e
)
{
return
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
};
}
};
async
companyonesearch
(
obj
)
{
var
self
=
this
;
var
isVerify
=
obj
.
isVerify
||
1
;
if
(
isVerify
==
1
)
{
}
var
companyName
=
obj
.
companyName
==
null
?
""
:
obj
.
companyName
;
companyName
=
await
this
.
getConvertSemiangleStr
(
companyName
);
var
pageSize
=
1
;
if
(
obj
.
currentPage
==
null
)
{
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
currentPage
-
1
)
*
obj
.
pageSize
);
}
var
reqUrl
=
this
.
iccompanynameSearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"term"
:
{
"company_name.raw"
:
companyName
}
}
]
}
},
"from"
:
from
,
"size"
:
pageSize
,
"_source"
:
[
"company_id"
,
"company_province"
,
"company_domain"
,
"legal_person"
,
"reg_status"
,
"reg_unit"
,
"reg_capital"
,
"estibish_time"
,
"credit_code"
,
"reg_number"
,
"org_number"
,
"company_type"
,
"reg_institute"
,
"reg_location"
,
"business_scope"
,
"approved_time"
,
"from_time"
,
"to_time"
,
"reg_unit"
]
};
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
var
sources
=
[];
var
data
=
{
"result"
:
1
,
"totalSize"
:
j
.
hits
.
total
,
"pageSize"
:
1
,
"currentPage"
:
obj
.
currentPage
-
1
,
"list"
:
sources
};
for
(
var
k
=
0
;
k
<
j
.
hits
.
hits
.
length
;
k
++
)
{
var
c
=
j
.
hits
.
hits
[
k
];
if
(
c
.
_source
.
approved_time
!=
null
)
{
var
time3
=
new
Date
(
c
.
_source
.
approved_time
*
1000
);
c
.
_source
.
approved_time
=
time3
.
toLocaleDateString
();
}
if
(
c
.
_source
.
from_time
!=
null
)
{
var
time3
=
new
Date
(
c
.
_source
.
from_time
*
1000
);
c
.
_source
.
from_time
=
time3
.
toLocaleDateString
();
}
if
(
c
.
_source
.
to_time
!=
null
)
{
var
time3
=
new
Date
(
c
.
_source
.
to_time
*
1000
);
c
.
_source
.
to_time
=
time3
.
toLocaleDateString
();
}
if
(
c
.
_source
.
estibish_time
!=
null
)
{
var
time3
=
new
Date
(
c
.
_source
.
estibish_time
*
1000
);
c
.
_source
.
estibish_time
=
time3
.
toLocaleDateString
();
}
if
(
c
.
_source
.
company_domain
)
{
var
pobj
=
{
appKey
:
obj
.
appKey
,
companyName
:
c
.
_source
.
company_domain
}
var
phones
=
await
self
.
phonesearch
.
phoneNameSearch
(
pobj
);
if
(
phones
.
status
==
0
&&
phones
.
data
.
list
.
length
>
0
)
{
c
.
_source
.
tel_info
=
phones
.
data
.
list
[
0
].
_doc
.
phone_number
;
c
.
_source
.
email_info
=
phones
.
data
.
list
[
0
].
_doc
.
email
;
}
}
if
(
c
.
_source
.
reg_unit
==
null
)
{
c
.
_source
.
reg_unit
=
"万人民币"
;
}
if
(
c
.
_source
.
reg_capital
==
null
)
{
c
.
_source
.
reg_capital
=
"未公开"
;
c
.
_source
.
reg_unit
=
""
;
}
var
source
=
{
name
:
c
.
_source
.
company_domain
,
legalRepresentative
:
c
.
_source
.
legal_person
,
managementState
:
c
.
_source
.
reg_status
,
registeredCapital
:
c
.
_source
.
reg_capital
+
c
.
_source
.
reg_unit
,
foundedTime
:
c
.
_source
.
estibish_time
,
creditCode
:
c
.
_source
.
credit_code
,
registrID
:
c
.
_source
.
reg_number
,
organizationCode
:
c
.
_source
.
org_number
,
companyType
:
c
.
_source
.
company_type
,
registerOffice
:
c
.
_source
.
reg_institute
,
businessAddress
:
c
.
_source
.
reg_location
,
scope
:
c
.
_source
.
business_scope
,
dateIssue
:
c
.
_source
.
approved_time
,
businessTerm
:
c
.
_source
.
from_time
+
"至"
+
c
.
_source
.
to_time
,
tel_info
:
c
.
_source
.
tel_info
,
};
sources
.
push
(
source
);
}
var
a
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
data
};
return
a
;
}
catch
(
e
)
{
return
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
};
}
};
async
companymgetsearch
(
obj
)
{
var
self
=
this
;
var
companyNames
=
obj
.
companyNames
;
var
pageSize
=
obj
.
companyNames
.
length
;
if
(
obj
.
currentPage
==
null
)
{
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
currentPage
-
1
)
*
obj
.
pageSize
);
}
var
reqUrl
=
this
.
iccompanynameSearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"terms"
:
{
"company_name.raw"
:
companyNames
}
}
]
}
},
"from"
:
from
,
"size"
:
pageSize
,
"_source"
:
[
"company_domain"
,
"legal_person"
,
"reg_unit"
,
"reg_capital"
,
"approved_time"
,
"reg_location"
]
};
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
var
sources
=
[];
var
data
=
{
"result"
:
1
,
"totalSize"
:
j
.
hits
.
total
,
"pageSize"
:
pageSize
,
"currentPage"
:
obj
.
currentPage
-
1
,
"list"
:
sources
};
for
(
var
k
=
0
;
k
<
j
.
hits
.
hits
.
length
;
k
++
)
{
var
c
=
j
.
hits
.
hits
[
k
];
if
(
c
.
_source
.
approved_time
!=
null
)
{
var
time3
=
new
Date
(
c
.
_source
.
approved_time
*
1000
);
c
.
_source
.
approved_time
=
time3
.
toLocaleDateString
();
}
if
(
c
.
_source
.
company_domain
)
{
var
pobj
=
{
appKey
:
obj
.
appKey
,
companyName
:
c
.
_source
.
company_domain
}
var
phones
=
await
self
.
phonesearch
.
phoneNameSearch
(
pobj
);
if
(
phones
.
status
==
0
&&
phones
.
data
.
list
.
length
>
0
)
{
c
.
_source
.
tel_info
=
phones
.
data
.
list
[
0
].
_doc
.
phone_number
;
c
.
_source
.
email_info
=
phones
.
data
.
list
[
0
].
_doc
.
email
;
}
}
if
(
c
.
_source
.
reg_unit
==
null
)
{
c
.
_source
.
reg_unit
=
"万人民币"
;
}
if
(
c
.
_source
.
reg_capital
==
null
)
{
c
.
_source
.
reg_capital
=
"未公开"
;
c
.
_source
.
reg_unit
=
""
;
}
var
source
=
{
name
:
c
.
_source
.
company_domain
,
legalRepresentative
:
c
.
_source
.
legal_person
,
registeredCapital
:
c
.
_source
.
reg_capital
+
c
.
_source
.
reg_unit
,
tel_info
:
c
.
_source
.
tel_info
,
dateIssue
:
c
.
_source
.
approved_time
,
businessAddress
:
c
.
_source
.
reg_location
};
sources
.
push
(
source
);
}
var
a
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
data
};
return
a
;
}
catch
(
e
)
{
return
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
};
}
};
async
companycodesearch
(
obj
)
{
var
creditCode
=
obj
.
creditCode
==
null
?
""
:
obj
.
creditCode
;
var
pageSize
=
obj
.
pageSize
==
null
?
15
:
obj
.
pageSize
;
if
(
obj
.
currentPage
==
null
)
{
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
currentPage
-
1
)
*
obj
.
pageSize
);
}
var
reqUrl
=
this
.
iccompanycodeSearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"term"
:
{
"credit_code"
:
creditCode
}
}
]
}
},
"from"
:
from
,
"size"
:
pageSize
,
"_source"
:
[
"company_name"
,
"credit_code"
,
"reg_number"
,
"company_type"
,
"legal_person"
,
"reg_capital"
,
"reg_institute"
,
"reg_location"
,
"business_scope"
,
"org_number"
,
"reg_status"
,
"estibish_time"
,
"approved_time"
,
"from_time"
,
"to_time"
,
"reg_unit"
]
};
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
var
sources
=
[];
var
data
=
{
"result"
:
1
,
"totalSize"
:
j
.
hits
.
total
,
"pageSize"
:
pageSize
,
"currentPage"
:
obj
.
currentPage
-
1
,
"list"
:
sources
};
j
.
hits
.
hits
.
forEach
(
function
(
c
)
{
if
(
c
.
_source
.
approved_time
!=
null
)
{
var
time3
=
new
Date
(
c
.
_source
.
approved_time
*
1000
);
c
.
_source
.
approved_time
=
time3
.
toLocaleDateString
();
}
if
(
c
.
_source
.
from_time
!=
null
)
{
var
time3
=
new
Date
(
c
.
_source
.
from_time
*
1000
);
c
.
_source
.
from_time
=
time3
.
toLocaleDateString
();
}
if
(
c
.
_source
.
to_time
!=
null
)
{
var
time3
=
new
Date
(
c
.
_source
.
to_time
*
1000
);
c
.
_source
.
to_time
=
time3
.
toLocaleDateString
();
}
if
(
c
.
_source
.
estibish_time
!=
null
)
{
var
time3
=
new
Date
(
c
.
_source
.
estibish_time
*
1000
);
c
.
_source
.
estibish_time
=
time3
.
toLocaleDateString
();
}
var
source
=
{
name
:
c
.
_source
.
company_name
,
legalRepresentative
:
c
.
_source
.
legal_person
,
managementState
:
c
.
_source
.
reg_status
,
registeredCapital
:
c
.
_source
.
reg_capital
+
c
.
_source
.
reg_unit
,
foundedTime
:
c
.
_source
.
estibish_time
,
creditCode
:
c
.
_source
.
credit_code
,
registrID
:
c
.
_source
.
reg_number
,
organizationCode
:
c
.
_source
.
org_number
,
companyType
:
c
.
_source
.
company_type
,
registerOffice
:
c
.
_source
.
reg_institute
,
businessAddress
:
c
.
_source
.
reg_location
,
scope
:
c
.
_source
.
business_scope
,
dateIssue
:
c
.
_source
.
approved_time
,
businessTerm
:
c
.
_source
.
from_time
+
"至"
+
c
.
_source
.
to_time
,
};
sources
.
push
(
source
);
});
var
a
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
data
};
return
a
;
}
catch
(
e
)
{
return
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
};
}
};
async
companyNumsearch
(
obj
)
{
var
regNumber
=
obj
.
regNumber
==
null
?
""
:
obj
.
regNumber
;
var
pageSize
=
obj
.
pageSize
==
null
?
15
:
obj
.
pageSize
;
if
(
obj
.
currentPage
==
null
)
{
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
currentPage
-
1
)
*
obj
.
pageSize
);
}
var
reqUrl
=
this
.
iccompanyNumSearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"term"
:
{
"reg_number"
:
regNumber
}
}
]
}
},
"from"
:
from
,
"size"
:
pageSize
,
"_source"
:
[
"company_name"
,
"credit_code"
,
"reg_number"
,
"company_type"
,
"legal_person"
,
"reg_capital"
,
"reg_institute"
,
"reg_location"
,
"business_scope"
,
"org_number"
,
"reg_status"
,
"estibish_time"
,
"approved_time"
,
"from_time"
,
"to_time"
,
"reg_unit"
]
};
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
var
sources
=
[];
var
data
=
{
"result"
:
1
,
"totalSize"
:
j
.
hits
.
total
,
"pageSize"
:
pageSize
,
"currentPage"
:
obj
.
currentPage
-
1
,
"list"
:
sources
};
j
.
hits
.
hits
.
forEach
(
function
(
c
)
{
if
(
c
.
_source
.
approved_time
!=
null
)
{
var
time3
=
new
Date
(
c
.
_source
.
approved_time
*
1000
);
c
.
_source
.
approved_time
=
time3
.
toLocaleDateString
();
}
if
(
c
.
_source
.
from_time
!=
null
)
{
var
time3
=
new
Date
(
c
.
_source
.
from_time
*
1000
);
c
.
_source
.
from_time
=
time3
.
toLocaleDateString
();
}
if
(
c
.
_source
.
to_time
!=
null
)
{
var
time3
=
new
Date
(
c
.
_source
.
to_time
*
1000
);
c
.
_source
.
to_time
=
time3
.
toLocaleDateString
();
}
if
(
c
.
_source
.
estibish_time
!=
null
)
{
var
time3
=
new
Date
(
c
.
_source
.
estibish_time
*
1000
);
c
.
_source
.
estibish_time
=
time3
.
toLocaleDateString
();
}
var
source
=
{
name
:
c
.
_source
.
company_name
,
legalRepresentative
:
c
.
_source
.
legal_person
,
managementState
:
c
.
_source
.
reg_status
,
registeredCapital
:
c
.
_source
.
reg_capital
+
c
.
_source
.
reg_unit
,
foundedTime
:
c
.
_source
.
estibish_time
,
creditCode
:
c
.
_source
.
credit_code
,
registrID
:
c
.
_source
.
reg_number
,
organizationCode
:
c
.
_source
.
org_number
,
companyType
:
c
.
_source
.
company_type
,
registerOffice
:
c
.
_source
.
reg_institute
,
businessAddress
:
c
.
_source
.
reg_location
,
scope
:
c
.
_source
.
business_scope
,
dateIssue
:
c
.
_source
.
approved_time
,
foundation
:
c
.
_source
.
from_time
,
businessTerm
:
c
.
_source
.
from_time
+
"至"
+
c
.
_source
.
to_time
,
};
sources
.
push
(
source
);
});
var
a
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
data
};
return
a
;
}
catch
(
e
)
{
return
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
};
}
};
async
agencynameonesearch
(
obj
)
{
var
self
=
this
;
var
isVerify
=
obj
.
isVerify
||
1
;
if
(
isVerify
==
1
)
{
}
var
companyName
=
obj
.
companyName
==
null
?
""
:
obj
.
companyName
;
companyName
=
await
this
.
getConvertSemiangleStr
(
companyName
);
var
pageSize
=
obj
.
pageSize
==
null
?
10
:
obj
.
pageSize
;
if
(
obj
.
currentPage
==
null
)
{
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
currentPage
-
1
)
*
obj
.
pageSize
);
}
var
reqUrl
=
this
.
agencynameSearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"query_string"
:
{
"default_field"
:
"company_name"
,
"query"
:
'
\
"'
+
companyName
+
'
\
"'
}
}
]
}
},
"from"
:
from
,
"size"
:
pageSize
};
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
var
data
=
{
"result"
:
1
,
"totalSize"
:
j
.
hits
.
total
,
"pageSize"
:
1
,
"currentPage"
:
obj
.
currentPage
-
1
,
"list"
:
j
.
hits
.
hits
};
var
a
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
data
};
return
a
;
}
catch
(
e
)
{
return
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
};
}
};
async
branchsearch
(
obj
)
{
var
companyName
=
obj
.
companyName
==
null
?
""
:
obj
.
companyName
;
companyName
=
await
this
.
getConvertSemiangleStr
(
companyName
);
var
pageSize
=
obj
.
pageSize
==
null
?
15
:
obj
.
pageSize
;
if
(
obj
.
currentPage
==
null
)
{
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
currentPage
-
1
)
*
obj
.
pageSize
);
}
var
reqUrl
=
this
.
icbranchSearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"term"
:
{
"company_name"
:
companyName
}
}
]
}
},
"from"
:
from
,
"size"
:
pageSize
,
"_source"
:
[
"branch_name"
]
};
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
var
sources
=
[];
var
data
=
{
"result"
:
1
,
"totalSize"
:
j
.
hits
.
total
,
"pageSize"
:
pageSize
,
"currentPage"
:
obj
.
currentPage
-
1
,
"list"
:
sources
};
j
.
hits
.
hits
.
forEach
(
function
(
c
)
{
var
source
=
{
entName
:
c
.
_source
.
branch_name
,
};
sources
.
push
(
source
);
});
var
a
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
data
};
return
a
;
}
catch
(
e
)
{
return
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
};
}
};
async
getConvertSemiangleStr
(
str
)
{
var
result
=
""
;
str
=
str
.
replace
(
/
\s
+/g
,
""
);
var
len
=
str
.
length
;
for
(
var
i
=
0
;
i
<
len
;
i
++
)
{
var
cCode
=
str
.
charCodeAt
(
i
);
//全角与半角相差(除空格外):65248(十进制)
cCode
=
(
cCode
>=
0xFF01
&&
cCode
<=
0xFF5E
)
?
(
cCode
-
65248
)
:
cCode
;
//处理空格
cCode
=
(
cCode
==
0x03000
)
?
0x0020
:
cCode
;
result
+=
String
.
fromCharCode
(
cCode
);
}
return
result
;
};
}
module
.
exports
=
GsbIcSearchApi
;
// var capi=new GsbTmSearchApi();
// capi.xzSearch({}).then(function(result){
// console.log((result));
// }).catch(function(e){
// console.log(e);
// });
igirl-channel/app/base/api/impl/trademark/gsbtmsearch.js
deleted
100644 → 0
View file @
bf4c109f
var
System
=
require
(
"../../../system"
);
var
settings
=
require
(
"../../../../config/settings"
);
const
ApiBase
=
require
(
"../../api.base"
);
const
logCtl
=
System
.
getObject
(
"web.common.oplogCtl"
);
//const cyjAppKey="ccb00829347e4048833af213e502c8c5";
class
GsbTmSearchApi
extends
ApiBase
{
constructor
()
{
super
();
this
.
xzCompanyUrl
=
settings
.
apiconfig
.
xzCompanySearchUrl
(
settings
.
env
);
this
.
xzAllCompanyUrl
=
settings
.
apiconfig
.
xzAllCompanySearchUrl
(
settings
.
env
);
this
.
xzDetailUrl
=
settings
.
apiconfig
.
xzDetailSearchUrl
();
this
.
byslTmUrl
=
settings
.
apiconfig
.
byslTmUrl
();
this
.
tmSearchUrl
=
settings
.
apiconfig
.
tmSearchUrl
();
this
.
tmFlowUrl
=
settings
.
apiconfig
.
tmFlowUrl
();
this
.
tmNclUrl
=
settings
.
apiconfig
.
tmNclUrl
();
this
.
yyDetailUrl
=
settings
.
apiconfig
.
yyDetailSearchUrl
();
this
.
nclUrl
=
settings
.
apiconfig
.
nclUrl
();
this
.
agencycompanySearchUrl
=
settings
.
apiconfig
.
agencycompanySearchUrl
();
this
.
utilstmSve
=
System
.
getObject
(
"service.trademark.utilstmSve"
);
this
.
phonesearch
=
System
.
getObject
(
"api.trademark.phonesearch"
);
this
.
oplogDao
=
System
.
getObject
(
"db.common.oplogDao"
);
};
buildDate
(
date
)
{
var
date
=
new
Date
(
date
);
var
time
=
Date
.
parse
(
date
);
time
=
time
/
1000
;
return
time
;
};
async
xzSearch
(
obj
)
{
//续展查询-ok
var
self
=
this
;
var
type
=
obj
.
searchType
;
if
(
type
==
""
||
type
==
null
)
{
return
System
.
getResult2
(
null
,
null
);
}
var
companyName
=
obj
.
companyName
==
null
?
""
:
obj
.
companyName
;
var
addr
=
obj
.
address
==
null
?
""
:
obj
.
address
;
if
(
obj
.
startDate
==
null
||
obj
.
startDate
==
"null"
)
{
var
startTime
=
""
;
}
else
{
var
startTime
=
this
.
buildDate
(
obj
.
startDate
);
}
if
(
obj
.
endDate
==
null
||
obj
.
endDate
==
"null"
)
{
var
endTime
=
""
;
}
else
{
var
endTime
=
this
.
buildDate
(
obj
.
endDate
);
}
var
pagesize
=
obj
.
pageSize
==
null
?
15
:
obj
.
pageSize
;
if
(
obj
.
currentPage
==
null
)
{
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
currentPage
-
1
)
*
obj
.
pageSize
);
}
var
reqUrl
=
this
.
xzCompanyUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
// {
// "exists": {
// "field": "tel_info"
// }
// },
{
"term"
:
{
"tm_company_type"
:
type
}
}
],
"must_not"
:
[
{
"wildcard"
:
{
"terms"
:
"注销*"
}
},
{
"terms"
:
{
"status"
:
[
"吊销,已注销"
,
"吊销后注销"
,
"吊销,已注销"
,
"已注销"
]
}
}
]
}
},
"from"
:
from
,
"size"
:
pagesize
,
"_source"
:
[
"applicant_cn"
,
"applicant_en"
,
"applicant_cn_addr"
,
"applicant_en_addr"
,
"tel_info"
,
"email_info"
,
"status"
],
"sort"
:
[
{
"tm_end_day_max"
:
"desc"
},
{
"_id"
:
"asc"
}
]
};
if
(
companyName
!=
""
&&
companyName
!=
null
)
{
var
param
=
{
"wildcard"
:
{
"applicant_cn"
:
"*"
+
companyName
+
"*"
}
};
params
.
query
.
bool
.
must
.
push
(
param
);
}
if
(
addr
!=
""
&&
addr
!=
null
)
{
var
param
=
{
"wildcard"
:
{
"applicant_cn_addr"
:
"*"
+
addr
+
"*"
}
};
params
.
query
.
bool
.
must
.
push
(
param
);
}
if
(
startTime
!=
""
&&
startTime
!=
null
)
{
var
param
=
{
"range"
:
{
"tm_end_day_max"
:
{
"gte"
:
startTime
}
}
};
params
.
query
.
bool
.
must
.
push
(
param
);
}
if
(
endTime
!=
""
&&
endTime
!=
null
)
{
var
param
=
{
"range"
:
{
"tm_end_day_min"
:
{
"lt"
:
endTime
}
}
};
params
.
query
.
bool
.
must
.
push
(
param
);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
for
(
var
i
=
0
;
i
<
j
.
hits
.
hits
.
length
;
i
++
)
{
var
c
=
j
.
hits
.
hits
[
i
];
if
(
c
.
_source
.
applicant_cn
)
{
var
pobj
=
{
appKey
:
obj
.
appKey
,
companyName
:
c
.
_source
.
applicant_cn
}
var
phones
=
await
self
.
phonesearch
.
phoneNameSearch
(
pobj
);
if
(
phones
.
status
==
0
&&
phones
.
data
.
list
.
length
>
0
)
{
c
.
_source
.
tel_info
=
phones
.
data
.
list
[
0
].
_doc
.
phone_number
;
c
.
_source
.
email_info
=
phones
.
data
.
list
[
0
].
_doc
.
email
;
}
}
}
return
System
.
getResult3
(
j
.
hits
,
null
);
}
catch
(
e
)
{
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
};
async
xzallSearch
(
obj
)
{
//公司商机
var
companyName
=
obj
.
companyName
==
null
?
""
:
obj
.
companyName
;
var
addr
=
obj
.
address
==
null
?
""
:
obj
.
address
;
var
pagesize
=
obj
.
pageSize
==
null
?
15
:
obj
.
pageSize
;
if
(
obj
.
currentPage
==
null
)
{
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
currentPage
-
1
)
*
obj
.
pageSize
);
}
var
reqUrl
=
this
.
xzAllCompanyUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
],
"must_not"
:
[
{
"wildcard"
:
{
"terms"
:
"注销*"
}
},
{
"terms"
:
{
"status"
:
[
"吊销,已注销"
,
"吊销后注销"
,
"吊销,已注销"
,
"已注销"
]
}
}
]
}
},
"from"
:
from
,
"size"
:
pagesize
,
"_source"
:
[
"applicant_cn"
,
"applicant_cn_addr"
,
"applicant_en"
,
"applicant_en_addr"
,
"reg_property"
,
"reg_capital"
,
"status"
,
"total_num"
,
"tm_company_types"
],
"sort"
:
[
{
"total_num"
:
"desc"
},
{
"_id"
:
"asc"
}
]
};
if
(
companyName
!=
""
&&
companyName
!=
null
)
{
var
param
=
{
"wildcard"
:
{
"applicant_cn"
:
"*"
+
companyName
+
"*"
}
};
params
.
query
.
bool
.
must
.
push
(
param
);
}
if
(
addr
!=
""
&&
addr
!=
null
)
{
var
param
=
{
"wildcard"
:
{
"applicant_cn_addr"
:
"*"
+
addr
+
"*"
}
};
params
.
query
.
bool
.
must
.
push
(
param
);
}
console
.
log
(
param
);
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
System
.
getResult3
(
JSON
.
parse
(
rtn
.
stdout
).
hits
,
null
);
}
catch
(
e
)
{
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
};
async
xzSearchDetail
(
obj
)
{
//续展详情查询
var
type
=
obj
.
searchType
;
if
(
type
==
""
||
type
==
null
)
{
return
System
.
getResult2
(
null
,
null
);
}
if
(
obj
.
companyName
==
null
&&
obj
.
companyName
==
""
)
{
return
System
.
getResult2
(
null
,
null
);
}
var
companyName
=
obj
.
companyName
;
if
(
obj
.
startDate
==
null
)
{
var
startTime
=
""
;
}
else
{
var
startTime
=
this
.
buildDate
(
obj
.
startDate
);
}
if
(
obj
.
endDate
==
null
)
{
var
endTime
=
""
;
}
else
{
var
endTime
=
this
.
buildDate
(
obj
.
endDate
);
}
var
reqUrl
=
this
.
xzDetailUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"term"
:
{
"renewals_type"
:
type
}
},
{
"term"
:
{
"applicant_cn"
:
companyName
}
}
]
}
},
"from"
:
0
,
"size"
:
500
,
"_source"
:
[
"ncl_one_codes"
,
"tm_regist_num"
,
"tm_name"
,
"applicant_cn"
,
"applicant_cn_addr"
,
"tm_end_day"
,
"tm_agency"
],
"sort"
:
[
{
"tm_end_day"
:
"desc"
}
]
};
if
(
startTime
!=
""
||
endTime
!=
""
)
{
var
param
=
{
"range"
:
{
"busness_day"
:
{
}
}
};
if
(
startTime
!=
""
)
{
param
.
range
.
busness_day
[
"gte"
]
=
startTime
;
}
if
(
endTime
!=
""
)
{
param
.
range
.
busness_day
[
"lt"
]
=
endTime
;
}
params
.
query
.
bool
.
must
.
push
(
param
);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
System
.
getResult3
(
JSON
.
parse
(
rtn
.
stdout
).
hits
,
null
);
}
catch
(
e
)
{
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
};
async
yySearchDetail
(
obj
)
{
//异议详情查询-???
if
(
obj
.
companyName
==
null
&&
obj
.
companyName
==
""
)
{
return
System
.
getResult2
(
null
,
null
);
}
var
companyName
=
obj
.
companyName
;
if
(
obj
.
startDate
==
null
)
{
var
startTime
=
""
;
}
else
{
var
startTime
=
this
.
buildDate
(
obj
.
startDate
);
}
if
(
obj
.
endDate
==
null
)
{
var
endTime
=
""
;
}
else
{
var
endTime
=
this
.
buildDate
(
obj
.
endDate
);
}
var
reqUrl
=
this
.
yyDetailUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"term"
:
{
"registrant_name"
:
companyName
}
}
]
}
},
"from"
:
0
,
"size"
:
500
,
"_source"
:
[
"tm_regist_num"
,
"tm_name"
,
"registrant_name"
,
"registrant_addr"
,
"first_notice_day"
,
"first_notice_issue"
,
"first_notice_page_num"
,
"tm_agency"
],
"sort"
:
[
{
"first_notice_day"
:
"desc"
},
{
"_id"
:
"asc"
}
]
};
if
(
startTime
!=
""
||
endTime
!=
""
)
{
var
param
=
{
"range"
:
{
"first_notice_day"
:
{
}
}
};
if
(
startTime
!=
""
)
{
param
.
range
.
first_notice_day
[
"gte"
]
=
startTime
;
}
if
(
endTime
!=
""
)
{
param
.
range
.
first_notice_day
[
"lt"
]
=
endTime
;
}
params
.
query
.
bool
.
must
.
push
(
param
);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
System
.
getResult3
(
JSON
.
parse
(
rtn
.
stdout
).
hits
,
null
);
}
catch
(
e
)
{
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
};
async
byslSearch
(
obj
)
{
//不予受理查询-???
var
companyName
=
obj
.
companyName
==
null
?
""
:
obj
.
companyName
;
var
pagesize
=
obj
.
pageSize
==
null
?
15
:
obj
.
pageSize
;
if
(
obj
.
currentPage
==
null
)
{
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
currentPage
-
1
)
*
obj
.
pageSize
);
}
var
reqUrl
=
this
.
byslTmUrl
;
var
params
=
{
"query"
:
{
"match_all"
:
{}
},
"from"
:
from
,
"size"
:
pagesize
,
"_source"
:
[
"registrant_name"
,
"tm_regist_num"
,
"no_accepted_day"
,
"no_accepted_notice_issue"
,
"no_accepted_notice_page_num"
,
"link_url"
,
"registrant_addr"
],
"sort"
:
[
{
"no_accepted_day"
:
"desc"
},
{
"_id"
:
"asc"
}
]
};
if
(
companyName
!=
null
&&
companyName
!=
""
)
{
params
.
query
=
{
"bool"
:
{
"must"
:
[
{
"wildcard"
:
{
"registrant_name"
:
"*"
+
companyName
+
"*"
}
}
]
}
};
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
System
.
getResult3
(
JSON
.
parse
(
rtn
.
stdout
).
hits
,
null
);
}
catch
(
e
)
{
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
};
async
byslDetail
(
obj
)
{
//不予受理详情查询-???
if
(
obj
.
companyName
==
null
&&
obj
.
companyName
==
""
)
{
return
System
.
getResult2
(
null
,
null
);
}
var
companyName
=
obj
.
companyName
;
var
reqUrl
=
this
.
byslDetailUrl
;
var
params
=
{
"query"
:
{
"term"
:
{
"registrant_name"
:
companyName
}
},
"from"
:
0
,
"size"
:
500
,
"_source"
:
[
"registrant_name"
,
"tm_regist_num"
,
"no_accepted_day"
,
"no_accepted_notice_issue"
,
"no_accepted_notice_page_num"
,
"link_url"
],
"sort"
:
[
{
"no_accepted_day"
:
"desc"
},
{
"_id"
:
"asc"
}
]
};
if
(
companyName
!=
null
&&
companyName
!=
""
)
{
params
.
query
=
{
"bool"
:
{
"must"
:
[
{
"wildcard"
:
{
"registrant_name"
:
"*"
+
companyName
+
"*"
}
}
]
}
};
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
System
.
getResult3
(
JSON
.
parse
(
rtn
.
stdout
).
hits
,
null
);
}
catch
(
e
)
{
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
};
async
tmSearch
(
obj
)
{
//商标查询-ok
var
param
=
{
tm_name
:
obj
.
tmName
,
reg_num
:
obj
.
regNum
,
applicant_cn
:
obj
.
applicantCn
,
page_size
:
obj
.
pageSize
,
current_page
:
obj
.
currentPage
}
return
this
.
utilstmSve
.
tmSearch
(
param
,
"GsbTmSearchApi"
);
};
async
tmAccurateSearch
(
obj
)
{
//根据商标名称进行精准查询
var
tmName
=
obj
.
tmName
==
null
?
""
:
obj
.
tmName
;
var
sqlbtabkey
=
obj
.
sqlbtabkey
==
null
?
""
:
obj
.
sqlbtabkey
;
var
pagesize
=
obj
.
pagesize
==
null
?
15
:
obj
.
pagesize
;
if
(
obj
.
page
==
null
)
{
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
page
-
1
)
*
obj
.
pagesize
);
}
if
(
tmName
==
""
)
{
return
System
.
getResult2
(
null
,
null
);
}
var
reqUrl
=
this
.
tmSearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
from
,
"size"
:
pagesize
,
"_source"
:
[
"ncl_one_codes"
,
"status"
,
"tm_type"
,
"tm_regist_num"
,
"tm_name"
,
"tm_name_py"
,
"tm_name_en"
,
"apply_day"
,
"first_notice_day"
,
"original_regist_notice_day"
,
"first_notice_issue"
,
"first_notice_page_num"
,
"regist_notice_issue"
,
"regist_notice_page_num"
,
"tm_end_day"
,
"applicant_cn"
,
"original_applicant_cn"
,
"applicant_cn_addr"
,
"tm_agency"
,
"pic_url"
],
};
if
(
tmName
!=
null
&&
tmName
!=
""
)
{
var
param
=
{
"match"
:
{
"tm_name.raw"
:
tmName
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
if
(
sqlbtabkey
!=
""
&&
sqlbtabkey
!=
null
)
{
var
param
=
{
"term"
:
{
"ncl_one_codes"
:
sqlbtabkey
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
System
.
getResult3
(
j
.
hits
,
null
);
}
catch
(
e
)
{
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
};
async
tmAccurateJuheSearch
(
obj
)
{
//根据商标名称精准查询,对查询结果进行类别聚合
var
tmName
=
obj
.
tmName
==
null
?
""
:
obj
.
tmName
;
if
(
tmName
==
""
)
{
return
System
.
getResult2
(
null
,
null
);
}
var
reqUrl
=
this
.
tmSearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
{
"term"
:
{
"tm_name.raw"
:
tmName
}
}
}
},
"aggregations"
:
{
"ncl_one_codes_count"
:
{
"terms"
:
{
"field"
:
"ncl_one_codes"
,
"size"
:
45
,
}
}
}
};
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
System
.
getResultjuhe4
(
j
,
null
);
}
catch
(
e
)
{
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
};
async
tmNameSearch
(
obj
)
{
//根据商标名称模糊查询
var
tmName
=
obj
.
tmName
==
null
?
""
:
obj
.
tmName
;
var
sqlbtabkey
=
obj
.
sqlbtabkey
==
null
?
""
:
obj
.
sqlbtabkey
;
var
pagesize
=
obj
.
pagesize
==
null
?
15
:
obj
.
pagesize
;
if
(
obj
.
page
==
null
)
{
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
page
-
1
)
*
obj
.
pagesize
);
}
if
(
tmName
==
""
)
{
return
System
.
getResult2
(
null
,
null
);
}
var
reqUrl
=
this
.
tmSearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
from
,
"size"
:
pagesize
,
"_source"
:
[
"ncl_one_codes"
,
"status"
,
"tm_type"
,
"tm_regist_num"
,
"tm_name"
,
"tm_name_py"
,
"tm_name_en"
,
"apply_day"
,
"first_notice_day"
,
"original_regist_notice_day"
,
"first_notice_issue"
,
"first_notice_page_num"
,
"regist_notice_issue"
,
"regist_notice_page_num"
,
"tm_end_day"
,
"applicant_cn"
,
"original_applicant_cn"
,
"applicant_cn_addr"
,
"tm_agency"
,
"pic_url"
],
};
if
(
tmName
!=
null
&&
tmName
!=
""
)
{
var
param
=
{
"match"
:
{
"tm_name"
:
tmName
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
if
(
sqlbtabkey
!=
""
&&
sqlbtabkey
!=
null
)
{
var
param
=
{
"term"
:
{
"ncl_one_codes"
:
sqlbtabkey
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
System
.
getResult3
(
j
.
hits
,
null
);
}
catch
(
e
)
{
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
};
async
tmNamejuheSearch
(
obj
)
{
//根据商标名称模糊查询,对查询结果进行类别聚合
var
tmName
=
obj
.
tmName
==
null
?
""
:
obj
.
tmName
;
if
(
tmName
==
""
)
{
return
System
.
getResult2
(
null
,
null
);
}
var
reqUrl
=
this
.
tmSearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
{
"match"
:
{
"tm_name"
:
tmName
}
}
}
},
"aggregations"
:
{
"ncl_one_codes_count"
:
{
"terms"
:
{
"field"
:
"ncl_one_codes"
,
"size"
:
45
,
}
}
}
};
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
System
.
getResultjuhe4
(
j
,
null
);
}
catch
(
e
)
{
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
};
async
tmzchSearch
(
obj
)
{
//根据商标商标号精准查询
var
regNum
=
obj
.
regNum
==
null
?
""
:
obj
.
regNum
;
var
sqlbtabkey
=
obj
.
sqlbtabkey
==
null
?
""
:
obj
.
sqlbtabkey
;
var
pagesize
=
obj
.
pagesize
==
null
?
15
:
obj
.
pagesize
;
if
(
obj
.
page
==
null
)
{
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
page
-
1
)
*
obj
.
pagesize
);
}
if
(
regNum
==
""
)
{
return
System
.
getResult2
(
null
,
null
);
}
var
reqUrl
=
this
.
tmSearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
from
,
"size"
:
pagesize
,
"_source"
:
[
"ncl_one_codes"
,
"status"
,
"tm_type"
,
"tm_regist_num"
,
"tm_name"
,
"tm_name_py"
,
"tm_name_en"
,
"apply_day"
,
"first_notice_day"
,
"original_regist_notice_day"
,
"first_notice_issue"
,
"first_notice_page_num"
,
"regist_notice_issue"
,
"regist_notice_page_num"
,
"tm_end_day"
,
"applicant_cn"
,
"original_applicant_cn"
,
"applicant_cn_addr"
,
"tm_agency"
,
"pic_url"
],
};
if
(
regNum
!=
""
&&
regNum
!=
null
)
{
var
param
=
{
"regexp"
:
{
"tm_regist_num"
:
"[TG]{0,1}"
+
regNum
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
if
(
sqlbtabkey
!=
""
&&
sqlbtabkey
!=
null
)
{
var
param
=
{
"term"
:
{
"ncl_one_codes"
:
sqlbtabkey
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
System
.
getResult3
(
j
.
hits
,
null
);
}
catch
(
e
)
{
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
};
async
tmzchjuheSearch
(
obj
)
{
//根据商标商标号精准查询,对查询结果进行类别聚合
var
regNum
=
obj
.
regNum
==
null
?
""
:
obj
.
regNum
;
if
(
regNum
==
""
)
{
return
System
.
getResult2
(
null
,
null
);
}
var
reqUrl
=
this
.
tmSearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
{
"regexp"
:
{
"tm_regist_num"
:
"[TG]{0,1}"
+
regNum
}
}
}
},
"aggregations"
:
{
"ncl_one_codes_count"
:
{
"terms"
:
{
"field"
:
"ncl_one_codes"
,
"size"
:
45
,
}
}
}
};
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
System
.
getResultjuhe4
(
j
,
null
);
}
catch
(
e
)
{
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
};
async
tmzcrSearch
(
obj
)
{
//根据商标注册人模糊查询
var
applier
=
obj
.
applier
==
null
?
""
:
obj
.
applier
;
var
sqlbtabkey
=
obj
.
sqlbtabkey
==
null
?
""
:
obj
.
sqlbtabkey
;
var
pagesize
=
obj
.
pagesize
==
null
?
15
:
obj
.
pagesize
;
if
(
obj
.
page
==
null
)
{
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
page
-
1
)
*
obj
.
pagesize
);
}
if
(
applier
==
""
)
{
return
System
.
getResult2
(
null
,
null
);
}
var
reqUrl
=
this
.
tmSearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
from
,
"size"
:
pagesize
,
"_source"
:
[
"ncl_one_codes"
,
"status"
,
"tm_type"
,
"tm_regist_num"
,
"tm_name"
,
"tm_name_py"
,
"tm_name_en"
,
"apply_day"
,
"first_notice_day"
,
"original_regist_notice_day"
,
"first_notice_issue"
,
"first_notice_page_num"
,
"regist_notice_issue"
,
"regist_notice_page_num"
,
"tm_end_day"
,
"applicant_cn"
,
"original_applicant_cn"
,
"applicant_cn_addr"
,
"tm_agency"
,
"pic_url"
],
};
if
(
applier
!=
""
&&
applier
!=
null
)
{
var
param
=
{
"wildcard"
:
{
"applicant_cn"
:
"*"
+
applier
+
"*"
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
if
(
sqlbtabkey
!=
""
&&
sqlbtabkey
!=
null
)
{
var
param
=
{
"term"
:
{
"ncl_one_codes"
:
sqlbtabkey
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
System
.
getResult3
(
j
.
hits
,
null
);
}
catch
(
e
)
{
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
};
async
tmzcrjuheSearch
(
obj
)
{
//根据商标注册人模糊查询,对查询结果进行类别聚合
var
applier
=
obj
.
applier
==
null
?
""
:
obj
.
applier
;
if
(
applier
==
""
)
{
return
System
.
getResult2
(
null
,
null
);
}
var
reqUrl
=
this
.
tmSearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
{
"wildcard"
:
{
"applicant_cn"
:
"*"
+
applier
+
"*"
}
}
}
},
"aggregations"
:
{
"ncl_one_codes_count"
:
{
"terms"
:
{
"field"
:
"ncl_one_codes"
,
"size"
:
45
,
}
}
}
};
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
System
.
getResultjuhe4
(
j
,
null
);
}
catch
(
e
)
{
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
};
async
tmSearchByRegNum
(
obj
)
{
//商标查询(多注册号)-ok
var
reqUrl
=
this
.
tmSearchUrl
;
if
(
obj
.
regNums
==
null
||
obj
.
regNums
.
length
<
1
)
{
return
System
.
getResult2
(
null
,
null
);
}
var
pagesize
=
obj
.
pagesize
==
null
?
15
:
obj
.
pagesize
;
if
(
obj
.
page
==
null
)
{
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
page
-
1
)
*
obj
.
pagesize
);
}
var
regNums
=
obj
.
regNums
==
null
?
""
:
obj
.
regNums
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"exists"
:
{
"field"
:
"ncl_one_codes"
}
},
{
"terms"
:
{
"tm_regist_num"
:
regNums
}
}
]
}
},
"from"
:
from
,
"size"
:
pagesize
,
"_source"
:
[
"ncl_one_codes"
,
"status"
,
"tm_type"
,
"tm_regist_num"
,
"tm_name"
,
"tm_name_py"
,
"tm_name_en"
,
"apply_day"
,
"first_notice_day"
,
"original_regist_notice_day"
,
"first_notice_issue"
,
"first_notice_page_num"
,
"regist_notice_issue"
,
"regist_notice_page_num"
,
"tm_end_day"
,
"applicant_cn"
,
"original_applicant_cn"
,
"applicant_cn_addr"
,
"tm_agency"
,
"pic_url"
],
"sort"
:
[
{
"apply_day"
:
"desc"
},
{
"_id"
:
"asc"
}
]
};
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
System
.
getResult3
(
JSON
.
parse
(
rtn
.
stdout
).
hits
,
null
);
}
catch
(
e
)
{
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
};
async
getTmFlow
(
obj
)
{
//商标流程
var
param
=
{
reg_num
:
obj
.
regNum
}
return
this
.
utilstmSve
.
getTmFlow
(
param
,
"GsbTmSearchApi"
);
}
async
getTmNclSmallCodes
(
obj
)
{
//商标小类
var
param
=
{
reg_num
:
obj
.
regNum
,
nclone_code
:
obj
.
nclOneCode
}
return
this
.
utilstmSve
.
getTmNclSmallCodes
(
param
,
"GsbTmSearchApi"
);
}
async
getNcl
(
obj
)
{
//尼斯数据
var
nclcode
=
obj
.
nclcode
==
null
?
""
:
obj
.
nclcode
;
var
level
=
obj
.
level
==
null
?
""
:
obj
.
level
;
var
nclcodelist
=
obj
.
nclcodelist
||
null
;
var
reqUrl
=
this
.
nclUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
0
,
"size"
:
2000
,
"_source"
:
[
"pid"
,
"level"
,
"code"
,
"name"
],
"sort"
:
[
{
"code"
:
"asc"
}
]
};
if
(
nclcode
!=
null
&&
nclcode
!=
""
)
{
var
param
=
{
"term"
:
{
"pid"
:
nclcode
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
if
(
level
!=
null
&&
level
!=
""
&&
level
!=
'undefined'
)
{
var
param
=
{
"term"
:
{
"level"
:
level
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
if
(
nclcodelist
!=
null
)
{
var
param
=
{
"terms"
:
{
"code"
:
nclcodelist
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
var
postParam
=
rc
.
cmdPostPattern
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
System
.
getResult3
(
JSON
.
parse
(
rtn
.
stdout
).
hits
,
null
);
}
catch
(
e
)
{
var
nowTimeStr
=
(
new
Date
()).
Format
(
"yyyy-MM-dd hh:mm:ss"
);
var
tmpContent
=
"postParam:"
+
postParam
+
",地址:"
+
reqUrl
+
",错误:"
+
e
.
stack
;
if
(
tmpContent
.
length
>
3980
)
{
tmpContent
=
tmpContent
.
substring
(
0
,
3980
);
}
await
this
.
oplogDao
.
create
({
op
:
"/usr/node-dev/OMC/igirl-web/app/base/api/impl/gsbtmsearch.js/getNcl"
,
opTitle
:
nowTimeStr
+
":获取尼斯数据_error"
,
logLevel
:
"error"
,
content
:
tmpContent
,
opLogType
:
"other"
,
opLogStatus
:
"fail"
});
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
};
async
getNclByLikeName_new
(
obj
)
{
//尼斯数据
var
ncls
=
obj
.
ncls
||
null
;
var
name
=
obj
.
name
;
var
reqUrl
=
this
.
nclUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"should"
:
[]
}
},
"from"
:
0
,
"size"
:
2000
,
"_source"
:
[
"pid"
,
"level"
,
"code"
,
"name"
,
"belong_to_onecode"
],
"sort"
:
[
{
"belong_to_onecode"
:
"asc"
},
{
"code"
:
"asc"
}
]
};
if
(
name
!=
null
&&
name
!=
""
)
{
var
param1
=
{
"bool"
:
{
"must"
:
[
{
"term"
:
{
"level"
:
3
}
},
{
"query_string"
:
{
"default_field"
:
"name.raw"
,
"query"
:
"*"
+
name
+
"*"
}
}
]
}
};
var
param2
=
{
"bool"
:
{
"must"
:
[
{
"term"
:
{
"level"
:
3
}
},
{
"query_string"
:
{
"default_field"
:
"code"
,
"query"
:
"*"
+
name
+
"*"
}
}
]
}
};
if
(
ncls
&&
ncls
.
length
>
0
)
{
param1
.
bool
.
must
.
push
({
"terms"
:
{
"belong_to_onecode"
:
ncls
}
});
param2
.
bool
.
must
.
push
({
"terms"
:
{
"belong_to_onecode"
:
ncls
}
});
}
params
.
query
.
bool
.
should
.
push
(
param1
);
params
.
query
.
bool
.
should
.
push
(
param2
);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
var
tmpNclList
=
System
.
getResult3
(
j
.
hits
,
null
);
var
threeNclList
=
tmpNclList
.
data
;
if
(
threeNclList
==
null
||
threeNclList
.
length
<=
0
)
{
return
System
.
getResult3
(
j
.
hits
,
null
,
"数据为空"
);
}
var
oneMapNcl
=
{};
var
twoMapNcl
=
{};
var
nclCodeList
=
[];
//数据
var
oneNclList
=
[];
for
(
let
index
=
0
;
index
<
threeNclList
.
length
;
index
++
)
{
const
element
=
threeNclList
[
index
];
var
tmpTwoNclItem
=
{
//二级
code
:
element
.
pid
,
name
:
""
,
pcode
:
element
.
belong_to_onecode
,
type
:
1
,
children
:
[]
};
var
tmpThreeNclItem
=
{
//三级
code
:
element
.
code
,
name
:
element
.
name
,
pcode
:
element
.
pid
};
if
(
!
twoMapNcl
[
element
.
pid
])
{
twoMapNcl
[
element
.
pid
]
=
element
.
pid
;
nclCodeList
.
push
(
element
.
pid
);
}
//不存在二级
if
(
!
oneMapNcl
[
element
.
belong_to_onecode
])
{
oneMapNcl
[
element
.
belong_to_onecode
]
=
element
.
belong_to_onecode
;
nclCodeList
.
push
(
element
.
belong_to_onecode
);
tmpTwoNclItem
.
children
.
push
(
tmpThreeNclItem
);
var
tmponeNclItem
=
{
code
:
element
.
belong_to_onecode
,
name
:
""
,
pcode
:
""
,
type
:
1
,
children
:
[
tmpTwoNclItem
]
};
oneNclList
.
push
(
tmponeNclItem
);
}
//不存在一级
else
{
for
(
let
j
=
0
;
j
<
oneNclList
.
length
;
j
++
)
{
const
jItem
=
oneNclList
[
j
];
if
(
jItem
.
code
==
element
.
belong_to_onecode
)
{
var
twoCount
=
0
;
for
(
let
k
=
0
;
k
<
jItem
.
children
.
length
;
k
++
)
{
const
kItem
=
jItem
.
children
[
k
];
if
(
kItem
.
code
==
element
.
pid
)
{
oneNclList
[
j
].
children
[
k
].
children
.
push
(
tmpThreeNclItem
);
twoCount
++
;
break
;
}
//处理存在二级
}
if
(
twoCount
==
0
)
{
tmpTwoNclItem
.
children
.
push
(
tmpThreeNclItem
);
oneNclList
[
j
].
children
.
push
(
tmpTwoNclItem
);
}
//处理不存在二级
break
;
}
//处理存在的一级
}
}
//存在一级
}
//尼斯大类处理
var
tmpNclList
=
await
this
.
getNcl
({
nclcodelist
:
nclCodeList
,
appKey
:
obj
.
appKey
});
var
getNclList
=
tmpNclList
.
data
;
if
(
getNclList
==
null
||
getNclList
.
length
<=
0
)
{
return
System
.
getResult3
(
j
.
hits
,
null
,
"大类二类数据为空"
);
}
var
self
=
this
;
for
(
let
i
=
0
;
i
<
oneNclList
.
length
;
i
++
)
{
const
element
=
oneNclList
[
i
];
var
tOneNameItem
=
getNclList
.
filter
(
f
=>
f
.
code
==
element
.
code
);
if
(
tOneNameItem
&&
tOneNameItem
.
length
>
0
)
{
oneNclList
[
i
].
name
=
tOneNameItem
[
0
].
name
;
}
element
.
children
.
sort
(
self
.
keysort
(
'code'
,
false
));
for
(
let
n
=
0
;
n
<
element
.
children
.
length
;
n
++
)
{
const
nItem
=
element
.
children
[
n
];
var
tTwoNameItem
=
getNclList
.
filter
(
f
=>
f
.
code
==
nItem
.
code
);
if
(
tTwoNameItem
&&
tTwoNameItem
.
length
>
0
)
{
oneNclList
[
i
].
children
[
n
].
name
=
tTwoNameItem
[
0
].
name
;
//处理三级排序
var
yesCodeList
=
[];
var
noCodeList
=
[];
for
(
let
l
=
0
;
l
<
nItem
.
children
.
length
;
l
++
)
{
const
lItem
=
nItem
.
children
[
l
];
if
(
!
lItem
.
code
||
lItem
.
code
==
"undefined"
)
{
noCodeList
.
push
(
lItem
);
}
else
{
yesCodeList
.
push
(
lItem
);
}
}
//三级排序
if
(
noCodeList
.
length
>
0
)
{
yesCodeList
.
push
.
apply
(
yesCodeList
,
noCodeList
);
}
oneNclList
[
i
].
children
[
n
].
children
=
yesCodeList
;
}
}
//处理二级name
}
return
System
.
getResult2
(
oneNclList
,
null
);
}
catch
(
e
)
{
//日志记录
logCtl
.
error
({
optitle
:
"尼斯数据查询异常==error"
,
op
:
"base/api/impl/gsbtmsearch/getNclByLikeName_new"
,
content
:
e
.
stack
,
clientIp
:
""
});
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
}
/**
* 排序有倒序 对数组中的对象,按对象的key进行sortType排序
* @param key 数组中的对象为object,按object中的key进行排序
* @param sortType true为降序;false为升序
*/
keysort
(
key
,
sortType
)
{
return
function
(
a
,
b
)
{
return
sortType
?
~~
(
a
[
key
]
<
b
[
key
])
:
~~
(
a
[
key
]
>
b
[
key
]);
}
}
async
getNclByLikeName
(
obj
)
{
//尼斯数据
var
ncls
=
obj
.
ncls
||
null
;
var
name
=
obj
.
name
;
var
reqUrl
=
this
.
nclUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"should"
:
[]
}
},
"from"
:
0
,
"size"
:
2000
,
"_source"
:
[
"pid"
,
"level"
,
"code"
,
"name"
],
"sort"
:
[
{
"code"
:
"asc"
}
]
};
if
(
name
!=
null
&&
name
!=
""
)
{
var
param1
=
{
"bool"
:
{
"must"
:
[
{
"term"
:
{
"level"
:
3
}
},
{
"query_string"
:
{
"default_field"
:
"name.raw"
,
"query"
:
"*"
+
name
+
"*"
}
}
]
}
};
var
param2
=
{
"bool"
:
{
"must"
:
[
{
"term"
:
{
"level"
:
3
}
},
{
"term"
:
{
"code"
:
name
}
}
]
}
};
if
(
ncls
&&
ncls
.
length
>
0
)
{
param1
.
bool
.
must
.
push
({
"terms"
:
{
"belong_to_onecode"
:
ncls
}
});
param2
.
bool
.
must
.
push
({
"terms"
:
{
"belong_to_onecode"
:
ncls
}
});
}
params
.
query
.
bool
.
should
.
push
(
param1
);
params
.
query
.
bool
.
should
.
push
(
param2
);
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
var
tmpNclList
=
System
.
getResult3
(
j
.
hits
,
null
);
var
threeNclList
=
tmpNclList
.
data
;
if
(
threeNclList
==
null
||
threeNclList
.
length
<=
0
)
{
return
System
.
getResult3
(
j
.
hits
,
null
,
"数据为空"
);
}
//尼斯大类处理
var
tmpGetOneNclList
=
await
this
.
getNcl
({
level
:
1
,
appKey
:
obj
.
appKey
});
var
getOneNclList
=
tmpGetOneNclList
.
data
;
if
(
getOneNclList
==
null
||
getOneNclList
.
length
<=
0
)
{
return
System
.
getResult3
(
j
.
hits
,
null
,
"大类数据为空"
);
}
//尼斯二级类处理
var
tmpGetTwoNclList
=
await
this
.
getNcl
({
level
:
2
,
appKey
:
obj
.
appKey
});
var
getTwoNclList
=
tmpGetTwoNclList
.
data
;
if
(
getTwoNclList
==
null
||
getTwoNclList
.
length
<=
0
)
{
return
System
.
getResult3
(
j
.
hits
,
null
,
"二类数据为空"
);
}
var
oneNclList
=
[];
var
twoNclList
=
[];
var
newThreeNclList
=
[];
for
(
let
i
=
0
;
i
<
threeNclList
.
length
;
i
++
)
{
var
threeNcl
=
threeNclList
[
i
];
if
(
threeNcl
!=
null
)
{
var
tmpTwoNclFind
=
tmpTwoNclFind
=
getTwoNclList
.
find
(
f
=>
(
f
.
code
==
threeNcl
.
pid
));
if
(
tmpTwoNclFind
!=
null
)
{
//组建新的小类结构
var
tnewThreeNclItem
=
{
code
:
threeNcl
.
code
,
name
:
threeNcl
.
name
,
pcode
:
threeNcl
.
pid
};
newThreeNclList
.
push
(
tnewThreeNclItem
);
var
tmpOneNclFind
=
getOneNclList
.
find
(
f
=>
(
f
.
code
==
tmpTwoNclFind
.
pid
));
//赋值大类、二类数据
if
(
tmpOneNclFind
!=
null
)
{
var
oneNcli
=
await
oneNclList
.
findIndex
(
function
(
value
,
index
,
arr
)
{
return
value
.
code
==
tmpOneNclFind
.
code
;
});
if
(
oneNcli
<
0
)
{
oneNclList
.
push
(
tmpOneNclFind
);
}
var
twoNcli
=
await
twoNclList
.
findIndex
(
function
(
value
,
index
,
arr
)
{
return
value
.
code
==
tmpTwoNclFind
.
code
;
});
if
(
twoNcli
<
0
)
{
twoNclList
.
push
(
tmpTwoNclFind
);
}
}
}
}
}
if
(
oneNclList
.
length
<=
0
)
{
return
System
.
getResult3
(
j
.
hits
,
null
,
"遍历三类后大类数据为空"
);
}
if
(
twoNclList
.
length
<=
0
)
{
return
System
.
getResult3
(
j
.
hits
,
null
,
"遍历三类后二类数据为空"
);
}
oneNclList
.
sort
(
function
(
s1
,
s2
)
{
if
(
s1
.
code
>
s2
.
code
)
{
return
1
}
else
{
return
-
1
}
})
var
result
=
[];
for
(
let
k
=
0
;
k
<
oneNclList
.
length
;
k
++
)
{
var
tOneItem
=
oneNclList
[
k
];
if
(
tOneItem
!=
null
)
{
var
tParam
=
{
code
:
tOneItem
.
code
,
name
:
tOneItem
.
name
,
pcode
:
tOneItem
.
pid
,
children
:
await
this
.
setChildren
(
tOneItem
.
code
,
twoNclList
,
newThreeNclList
)
};
result
.
push
(
tParam
);
}
}
return
System
.
getResult2
(
result
,
null
);
}
catch
(
e
)
{
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
}
async
setChildren
(
oneCode
,
twoNclList
,
newThreeNclList
)
{
//遍历大类下的有数据的二类
var
tmpTwoNclList
=
twoNclList
.
filter
(
function
(
item
)
{
return
item
.
pid
==
oneCode
;
});
if
(
tmpTwoNclList
.
length
<=
0
)
{
return
null
;
}
var
tmpParams
=
[];
for
(
var
i
=
0
;
i
<
tmpTwoNclList
.
length
;
i
++
)
{
var
tmpOneItem
=
tmpTwoNclList
[
i
];
if
(
tmpOneItem
!=
null
)
{
var
param
=
{
code
:
tmpOneItem
.
code
,
name
:
tmpOneItem
.
name
,
pcode
:
tmpOneItem
.
pid
,
children
:
newThreeNclList
.
filter
(
function
(
item
)
{
return
item
.
pcode
==
tmpOneItem
.
code
;
})
};
tmpParams
.
push
(
param
);
}
}
return
tmpParams
;
}
async
imagesearch
(
obj
)
{
//图像检索结果进行查询
var
tmRegistNum
=
obj
.
tmRegistNum
==
null
?
""
:
obj
.
tmRegistNum
;
var
sqlbtabkey
=
obj
.
sqlbtabkey
==
null
?
""
:
obj
.
sqlbtabkey
;
if
(
tmRegistNum
==
""
&&
tmRegistNum
==
null
)
{
return
System
.
getResult2
(
null
,
null
);
}
var
reqUrl
=
this
.
tmSearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"_source"
:
[
"ncl_one_codes"
,
"status"
,
"tm_type"
,
"tm_regist_num"
,
"tm_name"
,
"tm_name_py"
,
"tm_name_en"
,
"apply_day"
,
"first_notice_day"
,
"original_regist_notice_day"
,
"first_notice_issue"
,
"first_notice_page_num"
,
"regist_notice_issue"
,
"regist_notice_page_num"
,
"tm_end_day"
,
"applicant_cn"
,
"original_applicant_cn"
,
"applicant_cn_addr"
,
"tm_agency"
,
"pic_url"
],
};
if
(
tmRegistNum
!=
""
&&
tmRegistNum
!=
null
)
{
var
param
=
{
"term"
:
{
"tm_regist_num"
:
tmRegistNum
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
if
(
sqlbtabkey
!=
""
&&
sqlbtabkey
!=
null
)
{
var
param
=
{
"term"
:
{
"ncl_one_codes"
:
sqlbtabkey
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
System
.
getResult3
(
j
.
hits
,
null
);
}
catch
(
e
)
{
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
}
async
imagesearchbycode
(
obj
)
{
//图像检索结果进行分类查询
var
tmRegistNumsAll
=
obj
.
tmRegistNumsAll
==
null
?
""
:
obj
.
tmRegistNumsAll
;
var
sqlbtabkey
=
obj
.
sqlbtabkey
==
null
?
""
:
obj
.
sqlbtabkey
;
var
pagesize
=
obj
.
pagesize
==
null
?
15
:
obj
.
pagesize
;
if
(
obj
.
page
==
null
)
{
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
page
-
1
)
*
obj
.
pagesize
);
}
var
reqUrl
=
this
.
tmSearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[]
}
},
"from"
:
from
,
"size"
:
pagesize
,
"_source"
:
[
"ncl_one_codes"
,
"status"
,
"tm_type"
,
"tm_regist_num"
,
"tm_name"
,
"tm_name_py"
,
"tm_name_en"
,
"apply_day"
,
"first_notice_day"
,
"original_regist_notice_day"
,
"first_notice_issue"
,
"first_notice_page_num"
,
"regist_notice_issue"
,
"regist_notice_page_num"
,
"tm_end_day"
,
"applicant_cn"
,
"original_applicant_cn"
,
"applicant_cn_addr"
,
"tm_agency"
,
"pic_url"
],
};
if
(
tmRegistNumsAll
.
length
>
0
&&
tmRegistNumsAll
!=
null
)
{
var
param
=
{
"terms"
:
{
"tm_regist_num"
:
tmRegistNumsAll
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
if
(
sqlbtabkey
!=
""
&&
sqlbtabkey
!=
null
)
{
var
param
=
{
"term"
:
{
"ncl_one_codes"
:
sqlbtabkey
}
}
params
.
query
.
bool
.
must
.
push
(
param
)
}
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
System
.
getResult3
(
j
.
hits
,
null
);
}
catch
(
e
)
{
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
}
async
imagesearchjuhe
(
obj
)
{
//图像检索结果进行聚合
var
tmRegistNumsAll
=
obj
.
tmRegistNumsAll
==
null
?
""
:
obj
.
tmRegistNumsAll
;
var
reqUrl
=
this
.
tmSearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
{
"terms"
:
{
"tm_regist_num"
:
tmRegistNumsAll
}
}
}
},
"aggregations"
:
{
"ncl_one_codes_count"
:
{
"terms"
:
{
"field"
:
"ncl_one_codes"
,
"size"
:
45
,
}
}
}
};
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
System
.
getResultjuhe4
(
j
,
null
);
}
catch
(
e
)
{
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
}
async
fqImageSearch
(
obj
)
{
var
tmRegistNum
=
obj
.
tmRegistNum
==
null
?
""
:
obj
.
tmRegistNum
;
if
(
tmRegistNum
==
""
||
tmRegistNum
==
null
)
{
return
System
.
getResult2
(
null
,
null
);
}
var
reqUrl
=
this
.
tmSearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
{
"term"
:
{
"tm_regist_num"
:
tmRegistNum
}
}
}
},
"_source"
:
[
"ncl_one_codes"
,
"status"
,
"tm_type"
,
"tm_regist_num"
,
"tm_name"
,
"tm_name_py"
,
"tm_name_en"
,
"apply_day"
,
"first_notice_day"
,
"original_regist_notice_day"
,
"first_notice_issue"
,
"first_notice_page_num"
,
"regist_notice_issue"
,
"regist_notice_page_num"
,
"tm_end_day"
,
"applicant_cn"
,
"original_applicant_cn"
,
"applicant_cn_addr"
,
"tm_agency"
,
"pic_url"
],
};
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
System
.
getResult3
(
j
.
hits
,
null
);
}
catch
(
e
)
{
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
}
async
getAgencyName
(
obj
)
{
//代理机构名称查询
var
companyName
=
obj
.
companyName
==
null
?
""
:
obj
.
companyName
;
companyName
=
await
this
.
getConvertSemiangleStr
(
companyName
);
var
pageSize
=
obj
.
pageSize
==
null
?
15
:
obj
.
pageSize
;
if
(
obj
.
currentPage
==
null
)
{
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
currentPage
-
1
)
*
obj
.
pageSize
);
}
var
reqUrl
=
this
.
agencycompanySearchUrl
;
var
params
=
{
"query"
:
{
"bool"
:
{
"must"
:
[
{
"term"
:
{
"company_name"
:
companyName
}
}
]
}
},
"from"
:
from
,
"size"
:
pageSize
,
"_source"
:
[
"company_name"
]
};
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
params
,
reqUrl
);
var
j
=
JSON
.
parse
(
rtn
.
stdout
);
return
System
.
getResult3
(
j
.
hits
,
null
);
}
catch
(
e
)
{
return
rtn
=
System
.
getResult2
(
null
,
null
);
}
}
async
getConvertSemiangleStr
(
str
)
{
var
result
=
""
;
str
=
str
.
replace
(
/
\s
+/g
,
""
);
var
len
=
str
.
length
;
for
(
var
i
=
0
;
i
<
len
;
i
++
)
{
var
cCode
=
str
.
charCodeAt
(
i
);
//全角与半角相差(除空格外):65248(十进制)
cCode
=
(
cCode
>=
0xFF01
&&
cCode
<=
0xFF5E
)
?
(
cCode
-
65248
)
:
cCode
;
//处理空格
cCode
=
(
cCode
==
0x03000
)
?
0x0020
:
cCode
;
result
+=
String
.
fromCharCode
(
cCode
);
}
return
result
;
};
}
module
.
exports
=
GsbTmSearchApi
;
// var capi=new GsbTmSearchApi();
// capi.xzSearch({}).then(function(result){
// console.log((result));
// }).catch(function(e){
// console.log(e);
// });
igirl-channel/app/base/api/impl/trademark/phonesearch.js
deleted
100644 → 0
View file @
bf4c109f
var
System
=
require
(
"../../../system"
);
var
settings
=
require
(
"../../../../config/settings"
);
const
ApiBase
=
require
(
"../../api.base"
);
var
ad
=
require
(
'../../mongo'
);
const
logCtl
=
System
.
getObject
(
"web.common.oplogCtl"
);
class
GsbMgSearchApi
extends
ApiBase
{
constructor
()
{
super
();
this
.
mgdbModel
=
System
.
getObject
(
"db.common.mgconnection"
).
getModel
(
"taierphones"
);
};
buildDate
(
date
)
{
var
date
=
new
Date
(
date
);
var
time
=
Date
.
parse
(
date
);
time
=
time
/
1000
;
return
time
;
};
async
phoneNameSearch
(
obj
)
{
var
companyName
=
obj
.
companyName
==
null
?
""
:
obj
.
companyName
;
companyName
=
await
this
.
getConvertSemiangleStr
(
companyName
);
var
pageSize
=
obj
.
pageSize
==
null
?
15
:
obj
.
pageSize
;
if
(
obj
.
currentPage
==
null
)
{
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
currentPage
-
1
)
*
obj
.
pageSize
);
}
var
skipnum
=
(
obj
.
currentPage
-
1
)
*
pageSize
;
var
params
=
{
"company_name"
:
companyName
}
var
opt
=
{
"_id"
:
0
};
var
rtn
=
null
;
var
list
=
{}
var
phone
=
[]
list
.
company_name
=
companyName
try
{
rtn
=
await
this
.
mgdbModel
.
find
(
params
,
opt
).
skip
(
skipnum
).
limit
(
pageSize
).
exec
()
var
data
=
{
"result"
:
1
,
"totalSize"
:
rtn
.
length
,
"pageSize"
:
pageSize
,
"currentPage"
:
obj
.
currentPage
-
1
,
"list"
:
rtn
};
var
a
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
data
};
return
a
;
}
catch
(
e
)
{
//日志记录
logCtl
.
error
({
optitle
:
"mg操作失败,通过公司名称查电话-error"
,
op
:
"base/api/impl/phonesearch/phoneNameSearch"
,
content
:
e
.
stack
,
clientIp
:
""
});
// console.log(e.stack, "mg操作失败");
return
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
};
}
}
async
phoneAdressSearch
(
obj
)
{
var
adress
=
obj
.
adress
==
null
?
""
:
obj
.
adress
;
adress
=
await
this
.
getConvertSemiangleStr
(
adress
);
var
pageSize
=
obj
.
pageSize
==
null
?
15
:
obj
.
pageSize
;
if
(
obj
.
currentPage
==
null
)
{
var
from
=
0
;
}
else
{
var
from
=
Number
((
obj
.
currentPage
-
1
)
*
obj
.
pageSize
);
}
var
skipnum
=
(
obj
.
currentPage
-
1
)
*
pageSize
;
var
params
=
{
"postal_address"
:
adress
}
var
opt
=
{
"_id"
:
0
};
var
rtn
=
null
;
try
{
rtn
=
await
this
.
mgdbModel
.
find
(
params
,
opt
).
skip
(
skipnum
).
limit
(
pageSize
).
exec
()
var
data
=
{
"result"
:
1
,
"totalSize"
:
rtn
.
length
,
"pageSize"
:
pageSize
,
"currentPage"
:
obj
.
currentPage
,
"list"
:
rtn
};
var
a
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
data
};
return
a
;
}
catch
(
e
)
{
//日志记录
logCtl
.
error
({
optitle
:
"mg操作失败,通过公司地址查电话-error"
,
op
:
"base/api/impl/phonesearch/phoneAdressSearch"
,
content
:
e
.
stack
,
clientIp
:
""
});
return
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
};
}
}
async
phoneNumSearch
(
obj
)
{
var
phoneNum
=
obj
.
phoneNum
==
null
?
""
:
obj
.
phoneNum
;
var
pageSize
=
obj
.
pageSize
==
null
?
15
:
obj
.
pageSize
;
// if (obj.currentPage == null) {
// var from = 0;
// } else {
// var from = Number((obj.currentPage - 1) * obj.pageSize);
// }
// var skipnum = (obj.currentPage - 1) * pageSize;
var
params
=
{
"phone_number"
:
phoneNum
}
var
opt
=
{
"_id"
:
0
};
var
rtn
=
null
;
var
list
=
{}
list
.
phoneNum
=
phoneNum
try
{
rtn
=
await
this
.
mgdbModel
.
find
(
params
,
opt
).
limit
(
20
).
exec
()
var
sources
=
[]
if
(
rtn
.
length
>
0
)
{
for
(
var
i
=
0
;
i
<
rtn
.
length
;
i
++
)
{
if
(
sources
.
indexOf
(
rtn
[
i
][
"company_name"
])
<
0
)
{
sources
.
push
(
rtn
[
i
][
"company_name"
])
}
}
}
var
data
=
{
"result"
:
1
,
"totalSize"
:
sources
.
length
,
"list"
:
sources
};
var
a
=
{
status
:
0
,
msg
:
"操作成功"
,
data
:
data
};
return
a
;
}
catch
(
e
)
{
//日志记录
logCtl
.
error
({
optitle
:
"mg操作失败,通过电话查公司名称-error"
,
op
:
"base/api/impl/phonesearch/phoneNumSearch"
,
content
:
e
.
stack
,
clientIp
:
""
});
// console.log(e.stack, "mg操作失败>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>");
return
{
status
:
-
1
,
msg
:
"操作失败"
,
data
:
null
};
}
}
async
getConvertSemiangleStr
(
str
)
{
var
result
=
""
;
str
=
str
.
replace
(
/
\s
+/g
,
""
);
var
len
=
str
.
length
;
for
(
var
i
=
0
;
i
<
len
;
i
++
)
{
var
cCode
=
str
.
charCodeAt
(
i
);
//全角与半角相差(除空格外):65248(十进制)
cCode
=
(
cCode
>=
0xFF01
&&
cCode
<=
0xFF5E
)
?
(
cCode
-
65248
)
:
cCode
;
//处理空格
cCode
=
(
cCode
==
0x03000
)
?
0x0020
:
cCode
;
result
+=
String
.
fromCharCode
(
cCode
);
}
return
result
;
};
}
module
.
exports
=
GsbMgSearchApi
;
igirl-channel/app/base/api/impl/trademark/tmqueryApi.js
deleted
100644 → 0
View file @
bf4c109f
var
System
=
require
(
"../../../system"
);
var
settings
=
require
(
"../../../../config/settings"
);
const
ApiBase
=
require
(
"../../api.base"
);
var
pinyin
=
require
(
"pinyin"
);
class
tmqueryApi
extends
ApiBase
{
constructor
(){
super
();
this
.
zcApiUrl
=
settings
.
reqZcApi
();
this
.
ichemingUrl
=
settings
.
apiconfig
.
ichemingUrl
();
this
.
GsbByTmSearchApi
=
System
.
getObject
(
"api.trademark.tmsearch"
);
this
.
utilstmSve
=
System
.
getObject
(
"service.trademark.utilstmSve"
);
// this.utilscontent=System.getObject("service.trademark.utilscontentfilterSve");
// this.gsbicsearch = System.getObject("api.trademark.gsbicsearch");
this
.
tm_type
=
{
P
:
"普通商标"
,
J
:
"集体商标"
,
Z
:
"证明商标"
,
T
:
"特殊商标"
};
this
.
tm_status
=
{
1
:
"申请中"
,
2
:
"已初审"
,
3
:
"已注册"
,
4
:
"已无效"
,
5
:
"其他"
};
// this.imageQueryUrl=settings.apiconfig.imageQueryUrl();
this
.
tm_gjfl
=
{
1
:
"01类 化学原料"
,
2
:
"02类 颜料油漆"
,
3
:
"03类 日化用品"
,
4
:
"04类 燃料油脂"
,
5
:
"05类 医药"
,
6
:
"06类 金属材料"
,
7
:
"07类 机械设备"
,
8
:
"08类 手工器械"
,
9
:
"09类 科学仪器"
,
10
:
"10类 医疗器械"
,
11
:
"11类 灯具空调"
,
12
:
"12类 运输工具"
,
13
:
"13类 军火烟火"
,
14
:
"14类 珠宝钟表"
,
15
:
"15类 乐器"
,
16
:
"16类 办公用品"
,
17
:
"17类 橡胶制品"
,
18
:
"18类 皮革皮具"
,
19
:
"19类 建筑材料"
,
20
:
"20类 家具"
,
21
:
"21类 厨房洁具"
,
22
:
"22类 绳网袋蓬"
,
23
:
"23类 纱线丝"
,
24
:
"24类 布料床单"
,
25
:
"25类 服装鞋帽"
,
26
:
"26类 钮扣拉链"
,
27
:
"27类 地毯席垫"
,
28
:
"28类 健身器材"
,
29
:
"29类 食品"
,
30
:
"30类 方便食品"
,
31
:
"31类 农林生鲜"
,
32
:
"32类 啤酒饮料"
,
33
:
"33类 酒"
,
34
:
"34类 烟草烟具"
,
35
:
"35类 广告销售"
,
36
:
"36类 金融物管"
,
37
:
"37类 建筑修理"
,
38
:
"38类 通讯服务"
,
39
:
"39类 运输贮藏"
,
40
:
"40类 材料加工"
,
41
:
"41类 教育娱乐"
,
42
:
"42类 科技服务"
,
43
:
"43类 餐饮住宿"
,
44
:
"44类 医疗园艺"
,
45
:
"45类 社会服务"
};
}
convertDate
(
time
){
if
(
time
==
null
){
return
""
;
}
var
date
=
new
Date
(
Number
(
time
*
1000
));
var
y
=
1900
+
date
.
getYear
();
var
m
=
"0"
+
(
date
.
getMonth
()
+
1
);
var
d
=
"0"
+
date
.
getDate
();
return
y
+
"-"
+
m
.
substring
(
m
.
length
-
2
,
m
.
length
)
+
"-"
+
d
.
substring
(
d
.
length
-
2
,
d
.
length
);
}
convertDate1
(
time
){
if
(
time
==
null
){
return
""
;
}
var
date
=
new
Date
(
Number
(
time
*
1000
));
var
y
=
1900
+
date
.
getYear
();
var
m
=
"0"
+
(
date
.
getMonth
()
+
4
);
var
d
=
"0"
+
date
.
getDate
();
return
y
+
"-"
+
m
.
substring
(
m
.
length
-
2
,
m
.
length
)
+
"-"
+
d
.
substring
(
d
.
length
-
2
,
d
.
length
);
}
//商标群组信息 参数:data = {reg_num:注册号-精确,nclone_code:大类号-精确}
async
getSbqz
(
data
){
var
tms
=
await
this
.
utilstmSve
.
getGroupNclNumList
(
data
);
var
that
=
this
;
var
sbqz
=
""
;
if
(
tms
.
status
==
0
&&
tms
.
data
.
exist
.
length
>
0
){
tms
.
data
.
exist
.
forEach
(
function
(
c
){
sbqz
+=
c
.
code
+
";"
;
});
}
return
sbqz
;
}
async
findTrademarkNameIndex
(
query
,
obj
){
//根据商标名称模糊查询,首次查询,
var
url
=
this
.
zcApiUrl
+
"api/trademark/tmqueryApi/findTrademarkNameIndex"
;
console
.
log
(
url
);
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
obj
,
url
);
var
data
=
JSON
.
parse
(
rtn
.
stdout
);
return
data
;
}
catch
(
e
){
return
System
.
getResult2
(
null
,
null
);
}
}
async
findTrademarkName
(
query
,
obj
){
//根据商标名称模糊查询
var
url
=
this
.
zcApiUrl
+
"api/trademark/tmqueryApi/findTrademarkName"
;
console
.
log
(
url
);
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
obj
,
url
);
var
data
=
JSON
.
parse
(
rtn
.
stdout
);
return
data
;
}
catch
(
e
){
return
System
.
getResult2
(
null
,
null
);
}
}
async
findTrademarkNameAccurate
(
query
,
obj
){
//通过商标名来进行精准查询
var
url
=
this
.
zcApiUrl
+
"api/trademark/tmqueryApi/findTrademarkNameAccurate"
;
console
.
log
(
url
);
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
obj
,
url
);
var
data
=
JSON
.
parse
(
rtn
.
stdout
);
return
data
;
}
catch
(
e
){
return
System
.
getResult2
(
null
,
null
);
}
}
async
findTrademarkzchAccurate
(
query
,
obj
){
//通过商标号来进行精准查询
var
url
=
this
.
zcApiUrl
+
"api/trademark/tmqueryApi/findTrademarkzchAccurate"
;
console
.
log
(
url
);
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
obj
,
url
);
var
data
=
JSON
.
parse
(
rtn
.
stdout
);
return
data
;
}
catch
(
e
){
return
System
.
getResult2
(
null
,
null
);
}
}
async
findTrademarkzcr
(
query
,
obj
){
//通过注册人模糊查询
var
url
=
this
.
zcApiUrl
+
"api/trademark/tmqueryApi/findTrademarkzcr"
;
console
.
log
(
url
);
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
obj
,
url
);
var
data
=
JSON
.
parse
(
rtn
.
stdout
);
return
data
;
}
catch
(
e
){
return
System
.
getResult2
(
null
,
null
);
}
}
async
imagequery
(
query
,
obj
){
//图像检索
var
url
=
this
.
zcApiUrl
+
"api/trademark/tmqueryApi/imagequery"
;
console
.
log
(
url
);
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
obj
,
url
);
var
data
=
JSON
.
parse
(
rtn
.
stdout
);
return
data
;
}
catch
(
e
){
return
System
.
getResult2
(
null
,
null
);
}
}
async
findImageSearch
(
query
,
obj
){
//图像检索查询,
var
url
=
this
.
zcApiUrl
+
"api/trademark/tmqueryApi/findImageSearch"
;
console
.
log
(
url
);
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
obj
,
url
);
var
data
=
JSON
.
parse
(
rtn
.
stdout
);
return
data
;
}
catch
(
e
){
return
System
.
getResult2
(
null
,
null
);
}
}
async
tradeMarkDetail
(
query
,
obj
){
//商标详情
var
url
=
this
.
zcApiUrl
+
"api/trademark/tmqueryApi/tradeMarkDetail"
;
console
.
log
(
url
);
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
obj
,
url
);
var
data
=
JSON
.
parse
(
rtn
.
stdout
);
return
data
;
}
catch
(
e
){
return
System
.
getResult2
(
null
,
null
);
}
}
async
nclFuwuSearch
(
query
,
obj
){
var
url
=
this
.
zcApiUrl
+
"api/trademark/tmqueryApi/nclFuwuSearch"
;
console
.
log
(
url
);
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
obj
,
url
);
var
data
=
JSON
.
parse
(
rtn
.
stdout
);
return
data
;
}
catch
(
e
){
return
System
.
getResult2
(
null
,
null
);
}
}
async
gettwoNcl
(
query
,
obj
){
var
url
=
this
.
zcApiUrl
+
"api/trademark/tmqueryApi/gettwoNcl"
;
console
.
log
(
url
);
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
obj
,
url
);
var
data
=
JSON
.
parse
(
rtn
.
stdout
);
return
data
;
}
catch
(
e
){
return
System
.
getResult2
(
null
,
null
);
}
}
async
noticequery
(
query
,
obj
){
var
url
=
this
.
zcApiUrl
+
"api/trademark/tmqueryApi/noticequery"
;
console
.
log
(
url
);
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
obj
,
url
);
var
data
=
JSON
.
parse
(
rtn
.
stdout
);
return
data
;
}
catch
(
e
){
return
System
.
getResult2
(
null
,
null
);
}
}
async
getNclDetail
(
query
,
obj
){
var
url
=
this
.
zcApiUrl
+
"api/trademark/tmqueryApi/getNclDetail"
;
console
.
log
(
url
);
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
obj
,
url
);
var
data
=
JSON
.
parse
(
rtn
.
stdout
);
return
data
;
}
catch
(
e
){
return
System
.
getResult2
(
null
,
null
);
}
}
async
aibynclone
(
obj
,
pobj
){
var
tmName
=
pobj
.
tmName
;
var
nclonecode
=
pobj
.
nclonecode
;
var
result
=
{};
if
(
tmName
==
null
||
tmName
==
''
||
tmName
==
'undefined'
)
{
result
=
{
code
:
-
1
,
msg
:
"参数错误"
,
data
:
null
};
}
var
rate
=
await
this
.
GsbByTmSearchApi
.
tmncloneSearch
(
pobj
);
result
=
{
code
:
1
,
msg
:
"成功"
,
data
:
rate
};
return
System
.
getResult2
(
result
,
null
);
}
async
rediscache
(
query
,
obj
){
var
result
=
{
redislist
:[]};
var
openId
=
obj
.
user
.
openId
var
mark
=
obj
.
mark
;
var
data
=
{
openId
:
openId
,
mark
:
mark
};
var
rediscache
=
await
this
.
GsbByTmSearchApi
.
opCache
(
data
);
console
.
log
(
rediscache
);
if
(
rediscache
.
code
==
1
){
result
.
redislist
=
rediscache
.
data
.
reverse
();
}
return
System
.
getResult2
(
result
,
null
);
}
async
noticesearch
(
query
,
obj
){
var
url
=
this
.
zcApiUrl
+
"api/trademark/tmqueryApi/noticesearch"
;
console
.
log
(
url
);
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
obj
,
url
);
var
data
=
JSON
.
parse
(
rtn
.
stdout
);
return
data
;
}
catch
(
e
){
return
System
.
getResult2
(
null
,
null
);
}
}
async
noticezcggsearch
(
query
,
obj
){
var
url
=
this
.
zcApiUrl
+
"api/trademark/tmqueryApi/noticezcggsearch"
;
console
.
log
(
url
);
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
obj
,
url
);
var
data
=
JSON
.
parse
(
rtn
.
stdout
);
return
data
;
}
catch
(
e
){
return
System
.
getResult2
(
null
,
null
);
}
}
async
sbzuixinsearch
(){
var
url
=
this
.
zcApiUrl
+
"api/trademark/tmqueryApi/sbzuixinsearch"
;
console
.
log
(
url
);
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
({},
url
);
var
data
=
JSON
.
parse
(
rtn
.
stdout
);
return
data
;
}
catch
(
e
){
return
System
.
getResult2
(
null
,
null
);
}
}
async
noticequeryTMZCSQ
(
query
,
obj
){
var
url
=
this
.
zcApiUrl
+
"api/trademark/tmqueryApi/noticequeryTMZCSQ"
;
console
.
log
(
url
);
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
obj
,
url
);
var
data
=
JSON
.
parse
(
rtn
.
stdout
);
return
data
;
}
catch
(
e
){
return
System
.
getResult2
(
null
,
null
);
}
}
//企业核名
async
icheming
(
query
,
obj
){
var
result
=
{};
var
cityname
=
obj
.
cityname
;
var
keyword
=
obj
.
keyword
;
var
btname
=
obj
.
btname
;
var
orgname
=
obj
.
orgname
;
var
sitcity
=
obj
.
sitcity
;
var
heming
=
{
"cityname"
:
cityname
,
"keyword"
:
keyword
,
"btname"
:
btname
,
"orgname"
:
orgname
,
"sitcity"
:
sitcity
}
var
url
=
this
.
ichemingUrl
;
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
heming
,
url
);
var
data
=
JSON
.
parse
(
rtn
.
stdout
);
console
.
log
(
"heming++++++++++++++++++++++++++++++++++++++++++++++++++++++"
);
console
.
log
(
data
);
return
System
.
getResult2
(
data
,
null
);
}
catch
(
e
){
console
.
log
(
e
);
return
System
.
getResult2
(
result
,
null
);
}
return
System
.
getResult2
(
result
,
null
);
}
async
getCompanyInfoNoUser
(
queryobj
,
obj
,
req
)
{
var
url
=
this
.
zcApiUrl
+
"api/trademark/tmqueryApi/getCompanyInfoNoUser"
;
console
.
log
(
url
);
var
rc
=
System
.
getObject
(
"util.execClient"
);
var
rtn
=
null
;
try
{
rtn
=
await
rc
.
execPost
(
obj
,
url
);
var
data
=
JSON
.
parse
(
rtn
.
stdout
);
return
data
;
}
catch
(
e
){
return
System
.
getResult2
(
null
,
null
);
}
}
}
module
.
exports
=
tmqueryApi
;
igirl-channel/app/base/api/impl/trademark/tmsearch.js
deleted
100644 → 0
View file @
bf4c109f
This source diff could not be displayed because it is too large. You can
view the blob
instead.
igirl-channel/app/base/api/impl/trademark/tmsubmitApi.js
deleted
100644 → 0
View file @
bf4c109f
var
System
=
require
(
"../../../system"
);
var
settings
=
require
(
"../../../../config/settings"
);
const
ApiBase
=
require
(
"../../api.base"
);
var
pinyin
=
require
(
"pinyin"
);
class
tmsubmitApi
extends
ApiBase
{
constructor
(){
super
();
this
.
tm_type
=
{
P
:
"普通商标"
,
J
:
"集体商标"
,
Z
:
"证明商标"
,
T
:
"特殊商标"
};
this
.
tm_status
=
{
1
:
"申请中"
,
2
:
"已初审"
,
3
:
"已注册"
,
4
:
"已无效"
,
5
:
"其他"
};
this
.
tm_gjfl
=
{
1
:
"01类 化学原料"
,
2
:
"02类 颜料油漆"
,
3
:
"03类 日化用品"
,
4
:
"04类 燃料油脂"
,
5
:
"05类 医药"
,
6
:
"06类 金属材料"
,
7
:
"07类 机械设备"
,
8
:
"08类 手工器械"
,
9
:
"09类 科学仪器"
,
10
:
"10类 医疗器械"
,
11
:
"11类 灯具空调"
,
12
:
"12类 运输工具"
,
13
:
"13类 军火烟火"
,
14
:
"14类 珠宝钟表"
,
15
:
"15类 乐器"
,
16
:
"16类 办公用品"
,
17
:
"17类 橡胶制品"
,
18
:
"18类 皮革皮具"
,
19
:
"19类 建筑材料"
,
20
:
"20类 家具"
,
21
:
"21类 厨房洁具"
,
22
:
"22类 绳网袋蓬"
,
23
:
"23类 纱线丝"
,
24
:
"24类 布料床单"
,
25
:
"25类 服装鞋帽"
,
26
:
"26类 钮扣拉链"
,
27
:
"27类 地毯席垫"
,
28
:
"28类 健身器材"
,
29
:
"29类 食品"
,
30
:
"30类 方便食品"
,
31
:
"31类 农林生鲜"
,
32
:
"32类 啤酒饮料"
,
33
:
"33类 酒"
,
34
:
"34类 烟草烟具"
,
35
:
"35类 广告销售"
,
36
:
"36类 金融物管"
,
37
:
"37类 建筑修理"
,
38
:
"38类 通讯服务"
,
39
:
"39类 运输贮藏"
,
40
:
"40类 材料加工"
,
41
:
"41类 教育娱乐"
,
42
:
"42类 科技服务"
,
43
:
"43类 餐饮住宿"
,
44
:
"44类 医疗园艺"
,
45
:
"45类 社会服务"
};
}
convertDate
(
time
){
if
(
time
==
null
){
return
""
;
}
var
date
=
new
Date
(
Number
(
time
*
1000
));
var
y
=
1900
+
date
.
getYear
();
var
m
=
"0"
+
(
date
.
getMonth
()
+
1
);
var
d
=
"0"
+
date
.
getDate
();
return
y
+
"-"
+
m
.
substring
(
m
.
length
-
2
,
m
.
length
)
+
"-"
+
d
.
substring
(
d
.
length
-
2
,
d
.
length
);
}
convertDate1
(
time
){
if
(
time
==
null
){
return
""
;
}
var
date
=
new
Date
(
Number
(
time
*
1000
));
var
y
=
1900
+
date
.
getYear
();
var
m
=
"0"
+
(
date
.
getMonth
()
+
4
);
var
d
=
"0"
+
date
.
getDate
();
return
y
+
"-"
+
m
.
substring
(
m
.
length
-
2
,
m
.
length
)
+
"-"
+
d
.
substring
(
d
.
length
-
2
,
d
.
length
);
}
/**
* 商标提交
* 1、检查渠道编码、用户编码、产品编码、渠道订单信息
* 2、根据渠道编码获取渠道信息,判断渠道是否存在
* 3、根据用户编码获取/创建用户信息
* 4、根据产品编码获取产品信息,判断产品是否存在
* 5、调用商标提报sve,返回结果
*/
async
tmsubmit
(
pobj
,
obj
){
}
/**
* 商标修改
* 1、检查渠道编码、用户编码、产品编码
* 2、根据渠道编码获取渠道信息,判断渠道是否存在
* 3、根据用户编码获取/创建用户信息
* 4、根据产品编码获取产品信息,判断产品是否存在
* 5、调用商标修改sve,返回结果
*/
async
tmedit
(
pobj
,
obj
){
}
/**
* 商标详情
*/
async
tmdetail
(
pobj
,
obj
){
}
}
module
.
exports
=
tmsubmitApi
;
igirl-channel/app/base/api/impl/trademark/tmtransactionApi.js
deleted
100644 → 0
View file @
bf4c109f
var
System
=
require
(
"../../../system"
);
var
settings
=
require
(
"../../../../config/settings"
);
const
ApiBase
=
require
(
"../../api.base"
);
var
pinyin
=
require
(
"pinyin"
);
class
tmtransactionApi
extends
ApiBase
{
constructor
(){
super
();
this
.
GsbByTmSearchApi
=
System
.
getObject
(
"api.trademark.tmsearch"
);
this
.
utilstmSve
=
System
.
getObject
(
"service.trademark.utilstmSve"
);
this
.
utilstmTransactionSve
=
System
.
getObject
(
"service.trademark.utilstmTransactionSve"
);
this
.
tm_status
=
{
1
:
"申请中"
,
2
:
"已初审"
,
3
:
"已注册"
,
4
:
"已无效"
,
5
:
"其他"
};
this
.
tm_gjfl
=
{
1
:
"01类 化学原料"
,
2
:
"02类 颜料油漆"
,
3
:
"03类 日化用品"
,
4
:
"04类 燃料油脂"
,
5
:
"05类 医药"
,
6
:
"06类 金属材料"
,
7
:
"07类 机械设备"
,
8
:
"08类 手工器械"
,
9
:
"09类 科学仪器"
,
10
:
"10类 医疗器械"
,
11
:
"11类 灯具空调"
,
12
:
"12类 运输工具"
,
13
:
"13类 军火烟火"
,
14
:
"14类 珠宝钟表"
,
15
:
"15类 乐器"
,
16
:
"16类 办公用品"
,
17
:
"17类 橡胶制品"
,
18
:
"18类 皮革皮具"
,
19
:
"19类 建筑材料"
,
20
:
"20类 家具"
,
21
:
"21类 厨房洁具"
,
22
:
"22类 绳网袋蓬"
,
23
:
"23类 纱线丝"
,
24
:
"24类 布料床单"
,
25
:
"25类 服装鞋帽"
,
26
:
"26类 钮扣拉链"
,
27
:
"27类 地毯席垫"
,
28
:
"28类 健身器材"
,
29
:
"29类 食品"
,
30
:
"30类 方便食品"
,
31
:
"31类 农林生鲜"
,
32
:
"32类 啤酒饮料"
,
33
:
"33类 酒"
,
34
:
"34类 烟草烟具"
,
35
:
"35类 广告销售"
,
36
:
"36类 金融物管"
,
37
:
"37类 建筑修理"
,
38
:
"38类 通讯服务"
,
39
:
"39类 运输贮藏"
,
40
:
"40类 材料加工"
,
41
:
"41类 教育娱乐"
,
42
:
"42类 科技服务"
,
43
:
"43类 餐饮住宿"
,
44
:
"44类 医疗园艺"
,
45
:
"45类 社会服务"
};
}
convertDate
(
time
){
if
(
time
==
null
){
return
""
;
}
var
date
=
new
Date
(
Number
(
time
*
1000
));
var
y
=
1900
+
date
.
getYear
();
var
m
=
"0"
+
(
date
.
getMonth
()
+
1
);
var
d
=
"0"
+
date
.
getDate
();
return
y
+
"-"
+
m
.
substring
(
m
.
length
-
2
,
m
.
length
)
+
"-"
+
d
.
substring
(
d
.
length
-
2
,
d
.
length
);
}
//商标交易检索
async
tmTransactionSearch
(
query
,
obj
){
console
.
log
(
"----------------------"
);
console
.
log
(
obj
);
var
result
=
{
rows
:[],
total
:
""
};
var
sources
=
[];
var
codes
=
[];
var
keyword
=
obj
.
keyword
;
var
tm_nclcode
=
obj
.
tm_nclcode
;
var
price_min
=
obj
.
min
;
var
price_max
=
obj
.
max
;
var
tm_structure
=
obj
.
tm_structure
;
if
(
obj
.
tm_word
==
'1-2个字'
){
var
tm_word
=
2
;
}
else
if
(
obj
.
tm_word
==
'3个字'
){
var
tm_word
=
3
;
}
else
if
(
obj
.
tm_word
==
'4个字'
){
var
tm_word
=
4
;
}
else
if
(
obj
.
tm_word
==
'5个字'
){
var
tm_word
=
5
;
}
else
if
(
obj
.
tm_word
==
'5个字以上'
){
var
tm_word
=
6
;
}
else
{
var
tm_word
=
''
;
}
var
order_field
=
''
;
if
(
obj
.
order
==
"价格"
){
order_field
=
"platform_quoted_price"
;
}
else
if
(
obj
.
order
==
"时间"
){
order_field
=
"created_at"
;
}
var
sort
=
obj
.
sort
;
var
pagesize
=
obj
.
pagesize
;
var
currentpage
=
obj
.
currentpage
;
var
data
=
{
keyword
:
keyword
,
tm_nclcode
:
tm_nclcode
,
price_min
:
price_min
,
price_max
:
price_max
,
tm_structure
:
tm_structure
,
tm_word
:
tm_word
,
order_field
:
order_field
,
sort
:
sort
,
pagesize
:
pagesize
,
currentpage
:
currentpage
};
console
.
log
(
"zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzjjjjjjjjjjjjjjjjjj"
);
console
.
log
(
data
);
var
that
=
this
;
var
tms
=
await
this
.
utilstmTransactionSve
.
tmTransactionSearch
(
data
);
//获取查询结果
// console.log(tms);
if
(
tms
.
status
==
0
){
result
.
total
=
tms
.
total
;
tms
.
data
.
forEach
(
function
(
tm
){
var
source
=
{
tm_name
:
tm
.
tm_name
,
//商标名称
platform_quoted_price
:
tm
.
platform_quoted_price
,
//平台售价
ncl_one_codes
:
tm
.
ncl_one_codes
,
//尼斯大类
ncl_one_codes_name
:
that
.
tm_gjfl
[
tm
.
ncl_one_codes
],
//国际分类名称
tm_regist_num
:
tm
.
tm_regist_num
,
//注册号
pic_url
:
tm
.
pic_url
,
//图片url
pic_url_user
:
tm
.
pic_url_user
//用户自己上传的图片url
}
sources
.
push
(
source
)
});
result
.
rows
=
sources
;
}
console
.
log
(
"=====================+++++++++++++++++++++++++"
);
// console.log(result);
return
System
.
getResult2
(
result
,
null
);
}
async
tmTransactionDetail
(
query
,
obj
){
//商标交易详情接口
console
.
log
(
obj
);
var
result
=
{
detail
:{}};
var
sbzch
=
obj
.
sbzch
;
var
gjfl
=
obj
.
gjfl
;
var
data
=
{
sbzch
:
sbzch
,
gjfl
:
gjfl
,
};
var
that
=
this
;
var
detailtms
=
await
this
.
GsbByTmSearchApi
.
tradeMarkDetailapi
(
data
);
var
ts
=
await
this
.
utilstmTransactionSve
.
tmTransactionDetailsve
(
data
);
//获取查询结果
var
data2
=
{
reg_num
:
sbzch
,
nclone_code
:
gjfl
}
var
qunzutms
=
await
this
.
utilstmSve
.
getGroupNclInfo
(
data2
);
var
spfwxmlist
=
[];
var
codelist
=
[];
if
(
qunzutms
.
status
==
0
){
qunzutms
.
data
.
exist
.
forEach
(
function
(
c
){
if
(
spfwxmlist
.
findIndex
(
f
=>
f
==
c
.
small_name
)
<
0
){
spfwxmlist
.
push
(
c
.
small_name
)
}
if
(
codelist
.
findIndex
(
f
=>
f
==
c
.
code
)
<
0
){
codelist
.
push
(
c
.
code
)
}
});
}
var
spfwxm
=
spfwxmlist
.
join
(
","
);
var
codes
=
codelist
.
join
(
","
);
var
sbmc
=
""
;
var
gjfl
=
""
;
var
gjflname
=
""
;
var
sbzch
=
""
;
var
sbzt
=
""
;
var
sqrq
=
""
;
var
csrq
=
""
;
var
zcrq
=
""
;
var
zcr
=
""
;
var
jzrq
=
""
;
var
yzcr
=
""
;
var
zcdz
=
""
;
var
dljg
=
""
;
var
logo
=
""
;
var
pic_url_user
=
""
;
var
platform_quoted_price
=
""
;
var
tm_introduction
=
""
;
if
(
detailtms
.
status
==
0
&&
detailtms
.
data
.
length
>
0
){
var
tm
=
detailtms
.
data
[
0
];
sbmc
=
tm
.
tm_name
;
//商标名称
gjfl
=
tm
.
ncl_one_codes
;
//国际分类
gjflname
=
that
.
tm_gjfl
[
tm
.
ncl_one_codes
];
//国际分类名称
sbzch
=
tm
.
tm_regist_num
;
//商标注册号
sbzt
=
that
.
tm_status
[
tm
.
status
];
//商标状态
sqrq
=
that
.
convertDate
(
tm
.
apply_day
);
//申请日期
csrq
=
that
.
convertDate
(
tm
.
first_notice_day
);
//初审日期
zcrq
=
that
.
convertDate
(
tm
.
original_regist_notice_day
);
//注册日期
zcr
=
tm
.
applicant_cn
;
//申请人
jzrq
=
that
.
convertDate
(
tm
.
tm_end_day
)
;
//截止日期
yzcr
=
tm
.
original_applicant_cn
;
//原申请人
zcdz
=
tm
.
applicant_cn_addr
;
//申请地址
dljg
=
tm
.
tm_agency
;
//代理机构
logo
=
tm
.
pic_url
;
//商标图样
}
if
(
ts
.
status
==
0
&&
ts
.
data
.
length
>
0
){
var
tm
=
ts
.
data
[
0
];
platform_quoted_price
=
tm
.
platform_quoted_price
;
//平台售价
tm_introduction
=
tm
.
tm_introduction
;
//商标简介
pic_url_user
=
tm
.
pic_url_user
;
//用户自己上传的图片url
}
result
.
detail
=
{
sbmc
:
sbmc
,
//商标名称
gjfl
:
gjfl
,
//国际分类
gjflname
:
gjflname
,
//国际分类名称
sbzch
:
sbzch
,
//商标注册号
sbzt
:
sbzt
,
//商标状态
sqrq
:
sqrq
,
//申请日期
csrq
:
csrq
,
//初审日期
zcrq
:
zcrq
,
//注册日期
zcr
:
zcr
,
//申请人
jzrq
:
jzrq
,
//截止日期
yzcr
:
yzcr
,
//原申请人
zcdz
:
zcdz
,
//申请地址
dljg
:
dljg
,
//代理机构
logo
:
logo
,
//商标图样
spfwxm
:
spfwxm
,
//商品/服务项
codes
:
codes
,
//群组
pic_url_user
:
pic_url_user
,
//用户自己上传的图片url
platform_quoted_price
:
platform_quoted_price
,
//平台售价
tm_introduction
:
tm_introduction
//商标简介
}
console
.
log
(
result
);
return
System
.
getResult2
(
result
,
null
);
}
}
module
.
exports
=
tmtransactionApi
;
igirl-channel/app/base/db/cache/apiUserCache.js
View file @
072c7bb3
...
@@ -42,7 +42,7 @@ class ApiUserCache extends CacheBase {
...
@@ -42,7 +42,7 @@ class ApiUserCache extends CacheBase {
app_id
:
selfAppInfo
.
data
.
id
,
app_id
:
selfAppInfo
.
data
.
id
,
channelUserId
:
channelUserId
,
channelUserId
:
channelUserId
,
channelUserName
:
actionBody
.
channelUserName
||
channelUserId
,
channelUserName
:
actionBody
.
channelUserName
||
channelUserId
,
userMoblie
:
actionBody
.
channelUserMoblie
||
"
15010
888888"
,
userMoblie
:
actionBody
.
channelUserMoblie
||
"
88888
888888"
,
nickname
:
actionBody
.
nickname
||
""
,
nickname
:
actionBody
.
nickname
||
""
,
orgName
:
actionBody
.
orgName
||
""
,
orgName
:
actionBody
.
orgName
||
""
,
orgPath
:
actionBody
.
orgPath
||
""
,
orgPath
:
actionBody
.
orgPath
||
""
,
...
...
igirl-channel/app/base/db/impl/dbapp/appproductDao.js
View file @
072c7bb3
...
@@ -31,5 +31,32 @@ class AppProductDao extends Dao {
...
@@ -31,5 +31,32 @@ class AppProductDao extends Dao {
raw
:
true
raw
:
true
});
});
}
}
async
findOneByChannelItemCode
(
channelItemCode
,
appId
)
{
return
this
.
model
.
findOne
({
where
:
{
channelItemCode
:
channelItemCode
,
app_id
:
appId
},
attributes
:
[
"id"
,
"app_id"
,
// 应用id
"itemCode"
,
// 产品编码
"itemName"
,
// 产品名称
"picUrl"
,
// 产品图片地址
"channelItemCode"
,
// 渠道产品编码
"channelItemName"
,
// 渠道产品名称
"status"
,
// 状态 0禁用 1启用
"verifyPrice"
,
// 是否验证价格 0不验证 1验证
"proPrice"
,
// 产品价格
"serviceCharge"
,
// 服务费
"publicExpense"
,
// 官费
"rateConfig"
,
// 税率
"discountsRateConfig"
,
// 优惠税率
"channelProfitRate"
,
// 渠道利润分成比率(只分订单中毛利润总额的分成)
"sort"
,
"productType_id"
,
"productOneType_id"
],
raw
:
true
});
}
}
}
module
.
exports
=
AppProductDao
;
module
.
exports
=
AppProductDao
;
igirl-channel/app/base/db/impl/dborder/orderDao.js
View file @
072c7bb3
...
@@ -97,7 +97,10 @@ class OrderDao extends Dao {
...
@@ -97,7 +97,10 @@ class OrderDao extends Dao {
},
},
attributes
:
[
"id"
,
attributes
:
[
"id"
,
"orderNo"
,
"orderNo"
,
"channelUserId"
,
"channelServiceNo"
,
"channelServiceNo"
,
"channelOrderNo"
,
"needNo"
,
"invoiceApplyStatus"
,
"invoiceApplyStatus"
,
"orderType"
,
"orderType"
,
"salesNum"
,
"salesNum"
,
...
...
igirl-channel/app/base/db/models/dborder/order.js
View file @
072c7bb3
...
@@ -40,6 +40,7 @@ module.exports = (db, DataTypes) => {
...
@@ -40,6 +40,7 @@ module.exports = (db, DataTypes) => {
channelProfitSum
:
DataTypes
.
DECIMAL
(
12
,
2
),
// 订单渠道分成毛利润总额((订单总额-官费总额)*渠道利润分成比率)
channelProfitSum
:
DataTypes
.
DECIMAL
(
12
,
2
),
// 订单渠道分成毛利润总额((订单总额-官费总额)*渠道利润分成比率)
pfSettleProfit
:
DataTypes
.
DECIMAL
(
12
,
2
),
// 平台结算渠道利润,0否,1是
pfSettleProfit
:
DataTypes
.
DECIMAL
(
12
,
2
),
// 平台结算渠道利润,0否,1是
opNotes
:
DataTypes
.
STRING
,
// 备注
opNotes
:
DataTypes
.
STRING
,
// 备注
notes
:
DataTypes
.
STRING
,
// 备注
appPayType
:{
appPayType
:{
type
:
DataTypes
.
ENUM
,
type
:
DataTypes
.
ENUM
,
values
:
Object
.
keys
(
uiconfig
.
config
.
pdict
.
app_pay_type
),
values
:
Object
.
keys
(
uiconfig
.
config
.
pdict
.
app_pay_type
),
...
...
igirl-channel/app/base/service/impl/dborder/ordertmproductSve.js
View file @
072c7bb3
...
@@ -16,7 +16,6 @@ class OrderTmProductService extends ServiceBase {
...
@@ -16,7 +16,6 @@ class OrderTmProductService extends ServiceBase {
this
.
tmofficialDao
=
system
.
getObject
(
"db.dbtrademark.tmofficialDao"
);
this
.
tmofficialDao
=
system
.
getObject
(
"db.dbtrademark.tmofficialDao"
);
this
.
userDao
=
system
.
getObject
(
"db.dbapp.appuserDao"
);
this
.
userDao
=
system
.
getObject
(
"db.dbapp.appuserDao"
);
}
}
//------------------------------------------创建订单-------------------开始-------------------------
//------------------------------------------创建订单-------------------开始-------------------------
async
addTmOrder
(
params
)
{
//创建商标订单信息
async
addTmOrder
(
params
)
{
//创建商标订单信息
...
@@ -351,30 +350,42 @@ class OrderTmProductService extends ServiceBase {
...
@@ -351,30 +350,42 @@ class OrderTmProductService extends ServiceBase {
}
}
//------------------------------------------创建订单--------------------结束------------------------
//------------------------------------------创建订单--------------------结束------------------------
async
getChannelOrder
(
action_body
)
{
async
op1688ChannelPushOrder
(
action_body
)
{
var
myDate
=
new
Date
();
return
system
.
getResultSuccess
();
var
quantity
=
action_body
.
quantity
||
1
;
}
if
(
action_body
.
app
&&
action_body
.
app
.
appPayType
==
"00"
)
{
action_body
.
payStatus
=
action_body
.
payStatus
||
"yfk"
;
async
get1688ChannelOrder
(
action_body
)
{
action_body
.
payTime
=
action_body
.
payTime
||
myDate
.
toLocaleString
();
//myDate.toLocaleString()获取日期与时间==="2018-11-5 17:40:21"
var
orderItem
=
await
this
.
orderDao
.
getItemByChannelServiceNo
(
action_body
.
channelOrderNo
,
action_body
.
app
.
id
);
if
(
!
orderItem
)
{
return
system
.
getResult
(
null
,
"暂无订单信息"
);
}
var
salesDiliverNum
=
Number
(
orderItem
.
salesNum
)
-
Number
(
orderItem
.
salesDiliverNum
);
if
(
salesDiliverNum
<=
0
)
{
return
system
.
getResult
(
null
,
"服务单交付数量有误,数量为:"
+
orderItem
.
salesNum
+
",已交付数量为:"
+
orderItem
.
salesDiliverNum
);
}
var
minitermDiliverNum
=
Number
(
orderItem
.
minitermNum
)
-
Number
(
orderItem
.
minitermDiliverNum
);
if
(
minitermDiliverNum
<=
0
)
{
return
system
.
getResult
(
null
,
"服务单交付小项数量有误,小项数量为:"
+
orderItem
.
minitermNum
+
",已交付小项数量为:"
+
orderItem
.
minitermDiliverNum
);
}
}
var
param
=
{
var
param
=
{
itemCode
:
orderItem
.
itemCode
,
channelParams
:
""
,
channelUser
:
{
channelUser
:
{
channelUserId
:
action_body
.
channelUserId
||
""
,
channelUserId
:
orderItem
.
channelUserId
||
""
,
channelUserName
:
action_body
.
channelUserName
||
""
,
channelUserName
:
""
,
channelUserMoblie
:
action_body
.
channelUserMoblie
||
""
,
channelUserMoblie
:
""
,
nickname
:
action_body
.
nickname
||
""
,
nickname
:
""
,
orgName
:
action_body
.
orgName
||
""
,
orgName
:
""
,
orgPath
:
action_body
.
orgPath
||
""
,
orgPath
:
""
,
},
},
channelOrder
:
{
channelOrder
:
{
channelServiceNo
:
action_body
.
channelServiceNo
||
""
,
channelServiceNo
:
orderItem
.
channelServiceNo
||
""
,
channelOrderNo
:
action_body
.
channelOrderNo
||
""
,
channelOrderNo
:
orderItem
.
channelOrderNo
||
""
,
needNo
:
action_body
.
needNo
||
""
,
needNo
:
orderItem
.
needNo
||
""
,
quantity
:
action_body
.
quantity
||
1
,
quantity
:
salesDiliverNum
,
nclCount
:
Number
(
action_body
.
quantity
||
1
)
*
10
,
nclCount
:
minitermDiliverNum
,
payStatus
:
action_body
.
p
ayStatus
||
""
,
payStatus
:
orderItem
.
orderP
ayStatus
||
""
,
payTime
:
action_body
.
payTime
||
""
,
payTime
:
orderItem
.
payTime
||
""
,
}
}
};
};
return
system
.
getResultSuccess
(
param
);
return
system
.
getResultSuccess
(
param
);
...
...
igirl-channel/app/base/service/impl/trademark/toolSve.js
View file @
072c7bb3
const
system
=
require
(
"../../../system"
);
const
system
=
require
(
"../../../system"
);
var
settings
=
require
(
"../../../../config/settings"
);
var
settings
=
require
(
"../../../../config/settings"
);
const
crypto
=
require
(
'crypto'
);
const
crypto
=
require
(
'crypto'
);
const
cryptoJS
=
require
(
"crypto-js"
);
var
fs
=
require
(
"fs"
);
var
fs
=
require
(
"fs"
);
var
accesskey
=
'DHmRtFlw2Zr3KaRwUFeiu7FWATnmla'
;
var
accesskey
=
'DHmRtFlw2Zr3KaRwUFeiu7FWATnmla'
;
var
accessKeyId
=
'LTAIyAUK8AD04P5S'
;
var
accessKeyId
=
'LTAIyAUK8AD04P5S'
;
...
@@ -172,6 +173,23 @@ class ToolService {
...
@@ -172,6 +173,23 @@ class ToolService {
return
system
.
getResultSuccess
(
data
);
return
system
.
getResultSuccess
(
data
);
};
};
//加密信息
async
encryptStr
(
app
,
opStr
)
{
let
keyHex
=
cryptoJS
.
enc
.
Utf8
.
parse
(
app
.
uappKey
);
let
ivHex
=
cryptoJS
.
enc
.
Utf8
.
parse
(
app
.
appSecret
.
substring
(
0
,
8
));
var
cipherStr
=
cryptoJS
.
TripleDES
.
encrypt
(
opStr
,
keyHex
,
{
iv
:
ivHex
}).
toString
();
return
system
.
getResultSuccess
(
cipherStr
);
}
//解密信息
async
decryptStr
(
app
,
opStr
)
{
let
keyHex
=
cryptoJS
.
enc
.
Utf8
.
parse
(
app
.
uappKey
);
let
ivHex
=
cryptoJS
.
enc
.
Utf8
.
parse
(
app
.
appSecret
.
substring
(
0
,
8
));
var
bytes
=
cryptoJS
.
TripleDES
.
decrypt
(
opStr
,
keyHex
,
{
iv
:
ivHex
});
var
plaintext
=
bytes
.
toString
(
cryptoJS
.
enc
.
Utf8
);
return
system
.
getResultSuccess
(
plaintext
);
}
}
}
module
.
exports
=
ToolService
;
module
.
exports
=
ToolService
;
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment