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
a3afd5ce
Commit
a3afd5ce
authored
Jul 31, 2020
by
王勇飞
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'center-manage' of gitlab.gongsibao.com:jiangyong/zhichan into center-manage
parents
1a3d9817
4cbf927b
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
136 additions
and
93 deletions
+136
-93
center-manage/app/base/controller/impl/auth/userCtl.js
+20
-16
center-manage/app/base/service/impl/auth/userSve.js
+24
-24
center-manage/app/base/service/sve.base.js
+92
-53
No files found.
center-manage/app/base/controller/impl/auth/userCtl.js
View file @
a3afd5ce
...
...
@@ -7,32 +7,36 @@ class UserCtl extends CtlBase {
constructor
()
{
super
(
"auth"
,
CtlBase
.
getServiceName
(
UserCtl
));
}
async
logout
(
pobj
,
qobj
,
req
){
let
rtn
=
await
this
.
service
.
logout
(
pobj
)
async
logout
(
pobj
,
qobj
,
req
)
{
let
rtn
=
await
this
.
service
.
logout
(
pobj
)
return
system
.
getResult
(
rtn
)
}
async
pmgetUserByCode
(
pobj
,
qobj
,
req
){
let
code
=
pobj
.
code
let
rtn
=
await
this
.
service
.
pmgetUserByCode
(
code
)
async
pmgetUserByCode
(
pobj
,
qobj
,
req
)
{
let
code
=
pobj
.
code
let
rtn
=
await
this
.
service
.
pmgetUserByCode
(
code
)
return
system
.
getResult
(
rtn
)
}
async
loginApp
(
pobj
,
qobj
,
req
){
let
appkey
=
pobj
.
fromAppKey
let
uname
=
pobj
.
username
let
rtn
=
await
this
.
service
.
loginApp
(
appkey
,
uname
)
async
loginApp
(
pobj
,
qobj
,
req
)
{
let
appkey
=
pobj
.
fromAppKey
let
uname
=
pobj
.
username
let
rtn
=
await
this
.
service
.
loginApp
(
appkey
,
uname
)
return
system
.
getResult
(
rtn
);
}
async
resetPassword
(
pobj
,
qobj
,
req
){
await
this
.
service
.
resetPassword
(
req
.
xctx
.
username
,
pobj
.
onepassword
)
async
resetPassword
(
pobj
,
qobj
,
req
)
{
try
{
await
this
.
service
.
resetPassword
(
req
.
xctx
.
username
,
pobj
.
onepassword
)
return
system
.
getResult
({});
}
catch
(
err
)
{
return
system
.
getResult
(
null
,
err
.
message
)
}
async
allowOrNot
(
pobj
,
qobj
,
req
){
await
this
.
service
.
updateByWhere
({
isEnabled
:
!
pobj
.
isEnabled
},{
company_id
:
pobj
.
company_id
})
}
async
allowOrNot
(
pobj
,
qobj
,
req
)
{
await
this
.
service
.
updateByWhere
({
isEnabled
:
!
pobj
.
isEnabled
},
{
company_id
:
pobj
.
company_id
})
return
system
.
getResult
({});
}
async
allowOrNotToOne
(
pobj
,
qobj
,
req
){
await
this
.
service
.
updateByWhere
({
isEnabled
:
!
pobj
.
isEnabled
},{
id
:
pobj
.
curid
})
async
allowOrNotToOne
(
pobj
,
qobj
,
req
)
{
await
this
.
service
.
updateByWhere
({
isEnabled
:
!
pobj
.
isEnabled
},
{
id
:
pobj
.
curid
})
return
system
.
getResult
({});
}
async
initNewInstance
(
queryobj
,
req
)
{
...
...
@@ -64,7 +68,7 @@ class UserCtl extends CtlBase {
return
rtn
;
}
async
create
(
p
,
q
,
req
){
async
create
(
p
,
q
,
req
)
{
//检查是否有用户名和密码
if
(
!
p
.
userName
)
{
return
system
.
getResult
(
null
,
"请检查用户名和密码是否存在"
)
...
...
center-manage/app/base/service/impl/auth/userSve.js
View file @
a3afd5ce
...
...
@@ -9,11 +9,11 @@ class UserService extends ServiceBase {
this
.
roleDao
=
system
.
getObject
(
"db.auth.roleDao"
);
this
.
authS
=
system
.
getObject
(
"service.auth.authSve"
);
}
async
pmgetUserByCode
(
code
)
{
async
pmgetUserByCode
(
code
)
{
let
ux
=
await
this
.
cacheManager
[
"CodeCache"
].
getCache
(
code
);
return
ux
;
}
async
loginApp
(
appkey
,
uname
)
{
async
loginApp
(
appkey
,
uname
)
{
let
rtn
=
{}
let
app
=
await
this
.
cacheManager
[
"AppCache"
].
cache
(
appkey
);
let
userLogined
=
await
this
.
cacheManager
[
"UserCache"
].
cache
(
uname
);
...
...
@@ -38,7 +38,7 @@ class UserService extends ServiceBase {
//和租户绑定同一家公司
//按照用户名和密码进行注册
//控制器端检查用户名和密码非空
async
registerByTantent
(
p
,
q
)
{
async
registerByTantent
(
p
,
q
)
{
// 需要默认添加访客角色,为了控制单点从平台登录时看到的菜单和功能
if
(
p
.
roles
&&
p
.
roles
.
length
>
0
)
{
if
(
p
.
roles
.
indexOf
(
settings
.
pmroleid
[
"pr"
])
<
0
)
{
...
...
@@ -51,7 +51,7 @@ class UserService extends ServiceBase {
}
//应用的自由用户注册,无需验证,需要前端头设置公司KEY
async
pmregisterByFreeUser
(
p
,
q
)
{
async
pmregisterByFreeUser
(
p
,
q
)
{
p
.
rolecodes
=
[
settings
.
pmroleid
[
"pr"
]];
let
rtn
=
await
this
.
pmregister
(
p
,
q
)
return
rtn
;
...
...
@@ -60,7 +60,7 @@ class UserService extends ServiceBase {
//平台租户注册接口方法
//控制器端检查用户名和密码非空
async
pmregister
(
p
,
q
)
{
async
pmregister
(
p
,
q
)
{
var
self
=
this
;
let
tmppwd
=
p
.
password
;
if
(
!
tmppwd
)
{
...
...
@@ -134,7 +134,7 @@ class UserService extends ServiceBase {
}
});
}
async
logout
(
pobj
)
{
async
logout
(
pobj
)
{
await
this
.
cacheManager
[
"UserCache"
].
invalidate
(
pobj
.
username
);
return
{}
}
...
...
@@ -142,7 +142,7 @@ class UserService extends ServiceBase {
//登录接口封装kong-url
//登录路由放行
//p里面含有appkey,company_id,userName,password
async
pmlogin
(
p
,
q
,
req
)
{
async
pmlogin
(
p
,
q
,
req
)
{
var
self
=
this
;
//先要按照用户名,在统一账户中查找存在性
//如果不存在
...
...
@@ -186,7 +186,7 @@ class UserService extends ServiceBase {
}
})
}
async
getUserInfo
(
uname
)
{
async
getUserInfo
(
uname
)
{
// let userfind = await this.dao.model.findOne({
// where: { userName: uname, app_id: settings.pmappid },
// attributes: ['userName', 'nickName',"headUrl",'isSuper','isAdmin'],
...
...
@@ -207,7 +207,7 @@ class UserService extends ServiceBase {
//自由用户的电话登录和注册
//需要存在公司KEY
async
pmloginByVCodeForFreeUser
(
p
,
q
)
{
async
pmloginByVCodeForFreeUser
(
p
,
q
)
{
p
.
rolecodes
=
[
settings
.
pmroleid
[
"pr"
]];
let
rtn
=
await
this
.
pmloginByVCode
(
p
,
q
,
req
)
return
system
.
getResult
(
rtn
);
...
...
@@ -216,7 +216,7 @@ class UserService extends ServiceBase {
//平台租户注册与登录
//用户验证码登录
//
async
pmloginByVCode
(
p
,
q
,
req
)
{
async
pmloginByVCode
(
p
,
q
,
req
)
{
var
rtn
=
{}
//检查传递过来的手机验证码是否与缓存的一致
let
mobile
=
p
.
mobile
;
...
...
@@ -261,19 +261,19 @@ class UserService extends ServiceBase {
//不一致那么就
}
//发送手机验证码并缓存
async
sendVCode
(
p
,
q
,
req
)
{
async
sendVCode
(
p
,
q
,
req
)
{
let
mobile
=
p
.
mobile
;
let
vcodeobj
=
await
this
.
cacheManager
[
"VCodeCache"
].
cache
(
mobile
,
null
,
60
);
return
vcodeobj
.
vcode
;
}
async
reSendVCode
(
p
,
q
,
req
)
{
async
reSendVCode
(
p
,
q
,
req
)
{
let
mobile
=
p
.
mobile
;
await
this
.
cacheManager
[
"VCodeCache"
].
invalidate
(
mobile
);
let
vcodeobj
=
await
this
.
cacheManager
[
"VCodeCache"
].
cache
(
mobile
,
null
,
60
);
return
vcodeobj
.
vcode
;
}
//修改中心密码
async
cmodifypwd
(
uname
,
newpwd
,
cmpid
)
{
async
cmodifypwd
(
uname
,
newpwd
,
cmpid
)
{
try
{
let
rtn
=
await
system
.
postJsonTypeReq
(
UserService
.
consumerUrl
(
uname
),
{
tags
:
[
"cmp_"
+
cmpid
,
"pass_"
+
newpwd
]
},
"PATCH"
)
console
.
log
(
rtn
)
...
...
@@ -287,7 +287,7 @@ class UserService extends ServiceBase {
}
}
//创建统一账号及jwt身份
async
cregister
(
uname
,
cmpid
,
pass
,
uid
)
{
async
cregister
(
uname
,
cmpid
,
pass
,
uid
)
{
try
{
var
rtn2
=
null
;
let
rtn
=
await
system
.
postJsonTypeReq
(
UserService
.
newConsumerUrl
(),
{
username
:
uname
,
custom_id
:
uid
,
tags
:
[
"cmp_"
+
cmpid
,
"pass_"
+
pass
]
})
...
...
@@ -309,7 +309,7 @@ class UserService extends ServiceBase {
}
//plkey--对应消费者jwt身份的key,插件解码token后,获取iss-key,查询出身份,利用
//身份中的secret验证签名
async
jwtsign
(
plkey
,
secretstr
,
opts
)
{
async
jwtsign
(
plkey
,
secretstr
,
opts
)
{
let
promise
=
new
Promise
(
function
(
resv
,
rej
)
{
jwt
.
sign
({
exp
:
Math
.
floor
(
Date
.
now
()
/
1000
)
+
(
60
*
60
),
iss
:
plkey
},
secretstr
,
opts
,
function
(
err
,
rtn
)
{
if
(
err
)
{
...
...
@@ -322,13 +322,13 @@ class UserService extends ServiceBase {
return
promise
;
}
//只要登录 生成新的访问jwttoken
async
cmakejwt
(
key
,
secret
,
opts
)
{
async
cmakejwt
(
key
,
secret
,
opts
)
{
var
token
=
await
this
.
jwtsign
(
key
,
secret
,
opts
);
return
token
;
}
//删除统一账号
async
cunregister
(
uname
)
{
async
cunregister
(
uname
)
{
try
{
let
rtn
=
await
system
.
delReq
(
UserService
.
consumerUrl
(
uname
))
if
(
rtn
.
statusCode
==
204
)
{
...
...
@@ -342,16 +342,16 @@ class UserService extends ServiceBase {
//登录统一账号
async
clogin
(
uname
)
{
async
clogin
(
uname
)
{
//检查是否存在重名
}
//按用户名查询统一用户
async
findCUser
(
uname
)
{
async
findCUser
(
uname
)
{
}
async
resetPassword
(
uname
,
pwd
)
{
let
inpassword
=
this
.
getEncryptStr
(
pwd
);
async
resetPassword
(
uname
,
pwd
)
{
let
inpassword
=
this
.
getEncryptStr
(
pwd
,
true
);
var
self
=
this
;
return
this
.
db
.
transaction
(
async
function
(
t
)
{
let
up
=
await
self
.
dao
.
updateByWhere
({
password
:
inpassword
},
{
userName
:
uname
},
t
);
...
...
@@ -368,7 +368,7 @@ class UserService extends ServiceBase {
});
}
//修改
async
update
(
qobj
,
tm
=
null
)
{
async
update
(
qobj
,
tm
=
null
)
{
var
self
=
this
;
return
this
.
db
.
transaction
(
async
function
(
t
)
{
delete
qobj
[
'company_id'
]
...
...
@@ -390,7 +390,7 @@ class UserService extends ServiceBase {
* @param {*} productCatName 产品类型名称
* @param {*} regionName 区域
*/
async
getBizUserForBizChance
(
clientMobile
,
spName
,
productCatName
,
regionName
)
{
async
getBizUserForBizChance
(
clientMobile
,
spName
,
productCatName
,
regionName
)
{
var
self
=
this
clientMobile
=
clientMobile
+
"_"
+
spName
+
"_"
+
regionName
+
"_"
+
productCatName
//按照服务商名字查询到公司,按照公司查询出users,条件是可以接受派单任务,并且技能标签含有,产品类别名称
...
...
@@ -470,7 +470,7 @@ class UserService extends ServiceBase {
* @param {*} skucode 最小销售货品编码,来自渠道上架的码
* @param {*} regionName 区域
*/
async
getBizUserForDelivery
(
xclientMobile
,
spName
,
productCatName
,
skucode
,
regionName
)
{
async
getBizUserForDelivery
(
xclientMobile
,
spName
,
productCatName
,
skucode
,
regionName
)
{
let
clientMobile
=
'fordeliver'
+
xclientMobile
+
"_"
+
spName
+
"_"
+
regionName
+
"_"
+
productCatName
var
self
=
this
//按照服务商名字查询到公司,按照公司查询出users,条件是可以接受派单任务,并且技能标签含有,产品类别名称
...
...
center-manage/app/base/service/sve.base.js
View file @
a3afd5ce
...
...
@@ -7,19 +7,58 @@ class ServiceBase {
//this.dbf=system.getObject("db.connection");
this
.
db
=
system
.
getObject
(
"db.common.connection"
).
getCon
();
this
.
cacheManager
=
system
.
getObject
(
"db.common.cacheManager"
);
console
.
log
(
">>>>>>>>>>>>>>.."
,
daoName
)
console
.
log
(
">>>>>>>>>>>>>>.."
,
daoName
)
this
.
daoName
=
daoName
;
this
.
dao
=
system
.
getObject
(
"db."
+
gname
+
"."
+
daoName
);
this
.
restS
=
system
.
getObject
(
"util.restClient"
);
this
.
md5
=
require
(
"MD5"
);
}
getEncryptStr
(
str
)
{
/**
*
* @param {*} str
* @param {*} isComplexVerification 是否复杂验证
*/
getEncryptStr
(
str
,
isComplexVerification
)
{
if
(
!
str
)
{
throw
new
Error
(
"字符串不能为空"
);
}
if
(
isComplexVerification
)
{
this
.
complexVerification
(
str
)
}
var
md5
=
this
.
md5
(
str
+
"_"
+
settings
.
salt
);
return
md5
.
toString
().
toLowerCase
();
}
complexVerification
(
str
)
{
let
rC
=
{
lW
:
'[a-z]'
,
//小写字母
uW
:
'[A-Z]'
,
//大写字母
nW
:
'[0-9]'
,
//汉字
sW
:
'[
\\
u0020-
\\
u002F
\\
u003A-
\\
u0040
\\
u005B-
\\
u0060
\\
u007B-
\\
u007E]'
//特殊字符
};
let
Reg
=
(
str
,
rStr
)
=>
{
let
reg
=
new
RegExp
(
rStr
);
if
(
reg
.
test
(
str
))
return
true
;
else
return
false
;
}
if
(
str
.
length
<
8
)
{
throw
new
Error
(
'密码不得小于8位'
)
}
else
{
var
tR
=
{
l
:
Reg
(
str
,
rC
.
lW
),
u
:
Reg
(
str
,
rC
.
uW
),
n
:
Reg
(
str
,
rC
.
nW
),
s
:
Reg
(
str
,
rC
.
sW
)
};
if
((
tR
.
l
&&
tR
.
u
&&
tR
.
n
)
||
(
tR
.
l
&&
tR
.
u
&&
tR
.
s
)
||
(
tR
.
s
&&
tR
.
u
&&
tR
.
n
)
||
(
tR
.
s
&&
tR
.
l
&&
tR
.
n
))
{
//密码符合要求
return
true
;
}
else
{
throw
new
Error
(
"您的密码必须含有“小写字母”、“大写字母”、“数字”、“特殊符号”中的任意三种"
);
}
}
}
getUUID
()
{
var
uuid
=
uuidv4
();
var
u
=
uuid
.
replace
(
/
\-
/g
,
""
);
...
...
@@ -27,8 +66,8 @@ class ServiceBase {
}
static
getDaoName
(
ClassObj
)
{
console
.
log
(
">>>>>>>>>>>>>>>>>>>>>>>>>>>.."
);
let
rtnstr
=
ClassObj
[
"name"
].
substring
(
0
,
ClassObj
[
"name"
].
lastIndexOf
(
"Service"
)).
toLowerCase
()
+
"Dao"
;
console
.
log
(
">>>>>>>>>>>>>>>>>>>>>>>>>>>.."
,
rtnstr
);
let
rtnstr
=
ClassObj
[
"name"
].
substring
(
0
,
ClassObj
[
"name"
].
lastIndexOf
(
"Service"
)).
toLowerCase
()
+
"Dao"
;
console
.
log
(
">>>>>>>>>>>>>>>>>>>>>>>>>>>.."
,
rtnstr
);
return
rtnstr
;
}
async
findAndCountAll
(
obj
)
{
...
...
@@ -79,7 +118,7 @@ class ServiceBase {
返回20位业务订单号
prefix:业务前缀
*/
async
getBusUid
(
prefix
)
{
async
getBusUid
(
prefix
)
{
prefix
=
(
prefix
||
""
);
if
(
prefix
)
{
prefix
=
prefix
.
toUpperCase
();
...
...
@@ -97,7 +136,7 @@ class ServiceBase {
len:返回长度
radix:参与计算的长度,最大为62
*/
async
getUidInfo
(
len
,
radix
)
{
async
getUidInfo
(
len
,
radix
)
{
var
chars
=
'0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
.
split
(
''
);
//长度62,到yz长度为长36
var
uuid
=
[],
i
;
radix
=
radix
||
chars
.
length
;
...
...
@@ -118,102 +157,102 @@ class ServiceBase {
}
//kong统一处理
//统一注册组件
async
cformregister
(
opurl
,
opts
)
{
try
{
let
rtn
=
await
system
.
post3wFormTypeReq
(
opurl
,
opts
)
async
cformregister
(
opurl
,
opts
)
{
try
{
let
rtn
=
await
system
.
post3wFormTypeReq
(
opurl
,
opts
)
console
.
log
(
rtn
);
if
(
rtn
.
statusCode
==
409
)
{
if
(
rtn
.
statusCode
==
409
)
{
//return new Error("已经存在相同的统一账号名称!");
return
null
;
}
if
(
rtn
.
statusCode
==
201
)
{
if
(
rtn
.
statusCode
==
201
)
{
return
rtn
.
data
;
}
else
{
}
else
{
throw
new
Error
(
rtn
.
data
);
}
}
catch
(
e
)
{
}
catch
(
e
)
{
console
.
log
(
e
);
return
null
;
}
}
async
cget
(
opurl
){
let
rtn
=
await
system
.
getReq
(
opurl
)
async
cget
(
opurl
)
{
let
rtn
=
await
system
.
getReq
(
opurl
)
return
rtn
;
}
async
cjsonregister
(
opurl
,
opts
)
{
try
{
let
rtn
=
await
system
.
postJsonTypeReq
(
opurl
,
opts
)
console
.
log
(
",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"
,
rtn
);
if
(
rtn
.
statusCode
==
409
)
{
async
cjsonregister
(
opurl
,
opts
)
{
try
{
let
rtn
=
await
system
.
postJsonTypeReq
(
opurl
,
opts
)
console
.
log
(
",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"
,
rtn
);
if
(
rtn
.
statusCode
==
409
)
{
//return new Error("已经存在相同的统一账号名称!");
return
null
;
}
if
(
rtn
.
statusCode
==
201
)
{
if
(
rtn
.
statusCode
==
201
)
{
return
rtn
.
data
;
}
else
{
}
else
{
throw
new
Error
(
rtn
.
data
);
}
return
null
;
}
catch
(
e
)
{
}
catch
(
e
)
{
console
.
log
(
e
);
return
null
;
}
}
async
cjsonupate
(
opurl
,
opts
)
{
try
{
let
rtn
=
await
system
.
postJsonTypeReq
(
opurl
,
opts
,
"PATCH"
)
console
.
log
(
",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"
,
rtn
);
if
(
rtn
.
statusCode
==
409
)
{
async
cjsonupate
(
opurl
,
opts
)
{
try
{
let
rtn
=
await
system
.
postJsonTypeReq
(
opurl
,
opts
,
"PATCH"
)
console
.
log
(
",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"
,
rtn
);
if
(
rtn
.
statusCode
==
409
)
{
//return new Error("已经存在相同的统一账号名称!");
return
null
;
}
if
(
rtn
.
statusCode
==
201
)
{
if
(
rtn
.
statusCode
==
201
)
{
return
rtn
.
data
;
}
else
{
}
else
{
throw
new
Error
(
rtn
.
data
);
}
return
null
;
}
catch
(
e
)
{
}
catch
(
e
)
{
console
.
log
(
e
);
return
null
;
}
}
async
cdel
(
opurl
){
try
{
let
rtn
=
await
system
.
delReq
(
opurl
)
if
(
rtn
.
statusCode
==
204
)
{
async
cdel
(
opurl
)
{
try
{
let
rtn
=
await
system
.
delReq
(
opurl
)
if
(
rtn
.
statusCode
==
204
)
{
return
{};
}
else
{
}
else
{
throw
new
Error
(
rtn
.
data
);
}
}
catch
(
e
)
{
}
catch
(
e
)
{
console
.
log
(
e
);
return
null
;
}
}
static
bindPluginUrl
(
rname
){
return
settings
.
kongurl
()
+
"routes/"
+
rname
+
"/plugins"
;
static
bindPluginUrl
(
rname
)
{
return
settings
.
kongurl
()
+
"routes/"
+
rname
+
"/plugins"
;
}
static
newRouteUrl
(
sname
){
return
settings
.
kongurl
()
+
"services/"
+
sname
+
"/routes"
;
static
newRouteUrl
(
sname
)
{
return
settings
.
kongurl
()
+
"services/"
+
sname
+
"/routes"
;
}
static
newServiceUrl
(){
return
settings
.
kongurl
()
+
"services"
;
static
newServiceUrl
()
{
return
settings
.
kongurl
()
+
"services"
;
}
static
newConsumerUrl
(){
return
settings
.
kongurl
()
+
"consumers"
;
static
newConsumerUrl
()
{
return
settings
.
kongurl
()
+
"consumers"
;
}
static
newJwtCredUrl
(
consumername
){
return
settings
.
kongurl
()
+
"consumers/"
+
consumername
+
"/jwt"
;
static
newJwtCredUrl
(
consumername
)
{
return
settings
.
kongurl
()
+
"consumers/"
+
consumername
+
"/jwt"
;
}
static
serviceUrl
(
sname
){
return
settings
.
kongurl
()
+
"services/"
+
sname
;
static
serviceUrl
(
sname
)
{
return
settings
.
kongurl
()
+
"services/"
+
sname
;
}
static
routeUrl
(
rname
){
return
settings
.
kongurl
()
+
"routes/"
+
rname
;
static
routeUrl
(
rname
)
{
return
settings
.
kongurl
()
+
"routes/"
+
rname
;
}
static
consumerUrl
(
consumerName
){
return
settings
.
kongurl
()
+
"consumers/"
+
consumerName
;
static
consumerUrl
(
consumerName
)
{
return
settings
.
kongurl
()
+
"consumers/"
+
consumerName
;
}
}
module
.
exports
=
ServiceBase
;
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