Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
phsl
/
api
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Members
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
a8077cd6
authored
Jun 02, 2026
by
renyizhao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
创建new api账号到获取令牌
parent
682c7f39
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
516 additions
and
6 deletions
+516
-6
computility-module-apihub/computility-module-apihub-biz/src/main/java/com/luhu/computility/module/apihub/config/ApiOrderConfig.java
+3
-6
computility-module-apihub/computility-module-apihub-biz/src/main/java/com/luhu/computility/module/apihub/config/ApihubConfig.java
+10
-0
computility-module-apihub/computility-module-apihub-biz/src/main/java/com/luhu/computility/module/apihub/config/NewApiProperties.java
+28
-0
computility-module-apihub/computility-module-apihub-biz/src/main/java/com/luhu/computility/module/apihub/controller/admin/newapi/AiTokenRespVO.java
+18
-0
computility-module-apihub/computility-module-apihub-biz/src/main/java/com/luhu/computility/module/apihub/controller/admin/newapi/NewApiResponse.java
+19
-0
computility-module-apihub/computility-module-apihub-biz/src/main/java/com/luhu/computility/module/apihub/controller/admin/newapi/NewApiTokenItemVO.java
+32
-0
computility-module-apihub/computility-module-apihub-biz/src/main/java/com/luhu/computility/module/apihub/controller/admin/newapi/NewApiTokenPageVO.java
+18
-0
computility-module-apihub/computility-module-apihub-biz/src/main/java/com/luhu/computility/module/apihub/controller/admin/newapi/NewApiUserVO.java
+20
-0
computility-module-apihub/computility-module-apihub-biz/src/main/java/com/luhu/computility/module/apihub/controller/app/AppAiTokenController.java
+101
-0
computility-module-apihub/computility-module-apihub-biz/src/main/java/com/luhu/computility/module/apihub/service/newapi/AiTokenService.java
+217
-0
computility-module-apihub/computility-module-apihub-biz/src/main/java/com/luhu/computility/module/apihub/service/newapi/NewApiClient.java
+0
-0
computility-module-member/src/main/java/com/luhu/computility/module/member/dal/dataobject/user/MemberUserDO.java
+22
-0
computility-module-member/src/main/java/com/luhu/computility/module/member/service/user/MemberUserService.java
+13
-0
computility-module-member/src/main/java/com/luhu/computility/module/member/service/user/MemberUserServiceImpl.java
+13
-0
computility-server/src/main/resources/application-local.yaml
+2
-0
No files found.
computility-module-apihub/computility-module-apihub-biz/src/main/java/com/luhu/computility/module/apihub/config/ApiOrderConfig.java
View file @
a8077cd6
...
...
@@ -3,11 +3,7 @@ package com.luhu.computility.module.apihub.config;
import
org.springframework.boot.context.properties.EnableConfigurationProperties
;
import
org.springframework.context.annotation.Configuration
;
/**
* @author LeeYan9
* @since 2022-09-15
*/
@Configuration
@EnableConfigurationProperties
(
ApiOrderProperties
.
class
)
@EnableConfigurationProperties
(
{
ApiOrderProperties
.
class
,
NewApiProperties
.
class
}
)
public
class
ApiOrderConfig
{
}
}
\ No newline at end of file
computility-module-apihub/computility-module-apihub-biz/src/main/java/com/luhu/computility/module/apihub/config/ApihubConfig.java
0 → 100644
View file @
a8077cd6
package
com
.
luhu
.
computility
.
module
.
apihub
.
config
;
import
org.springframework.boot.context.properties.EnableConfigurationProperties
;
import
org.springframework.context.annotation.Configuration
;
@Configuration
@EnableConfigurationProperties
({
ApiOrderProperties
.
class
})
public
class
ApihubConfig
{
}
\ No newline at end of file
computility-module-apihub/computility-module-apihub-biz/src/main/java/com/luhu/computility/module/apihub/config/NewApiProperties.java
0 → 100644
View file @
a8077cd6
package
com
.
luhu
.
computility
.
module
.
apihub
.
config
;
import
org.springframework.boot.context.properties.ConfigurationProperties
;
@ConfigurationProperties
(
prefix
=
"computility.new-api"
)
public
class
NewApiProperties
{
private
String
baseUrl
=
"http://localhost:3000"
;
private
String
adminToken
;
public
String
getBaseUrl
()
{
return
baseUrl
;
}
public
void
setBaseUrl
(
String
baseUrl
)
{
this
.
baseUrl
=
baseUrl
;
}
public
String
getAdminToken
()
{
return
adminToken
;
}
public
void
setAdminToken
(
String
adminToken
)
{
this
.
adminToken
=
adminToken
;
}
}
\ No newline at end of file
computility-module-apihub/computility-module-apihub-biz/src/main/java/com/luhu/computility/module/apihub/controller/admin/newapi/AiTokenRespVO.java
0 → 100644
View file @
a8077cd6
package
com
.
luhu
.
computility
.
module
.
apihub
.
controller
.
admin
.
newapi
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public
class
AiTokenRespVO
{
private
Boolean
success
;
private
Boolean
hasToken
;
private
String
apiKey
;
private
String
message
;
}
\ No newline at end of file
computility-module-apihub/computility-module-apihub-biz/src/main/java/com/luhu/computility/module/apihub/controller/admin/newapi/NewApiResponse.java
0 → 100644
View file @
a8077cd6
package
com
.
luhu
.
computility
.
module
.
apihub
.
controller
.
admin
.
newapi
;
import
cn.hutool.http.HttpResponse
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public
class
NewApiResponse
<
T
>
{
private
Boolean
success
;
private
String
message
;
private
T
data
;
private
HttpResponse
httpResponse
;
}
\ No newline at end of file
computility-module-apihub/computility-module-apihub-biz/src/main/java/com/luhu/computility/module/apihub/controller/admin/newapi/NewApiTokenItemVO.java
0 → 100644
View file @
a8077cd6
package
com
.
luhu
.
computility
.
module
.
apihub
.
controller
.
admin
.
newapi
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
lombok.experimental.SuperBuilder
;
@Data
@SuperBuilder
@NoArgsConstructor
@AllArgsConstructor
public
class
NewApiTokenItemVO
{
private
Long
id
;
private
Long
userId
;
private
String
key
;
private
Integer
status
;
private
String
name
;
private
Long
createdTime
;
private
Long
accessedTime
;
private
Integer
expiredTime
;
private
Integer
remainQuota
;
private
Boolean
unlimitedQuota
;
private
Boolean
modelLimitsEnabled
;
private
String
modelLimits
;
private
String
allowIps
;
private
Double
usedQuota
;
private
String
group
;
private
Boolean
crossGroupRetry
;
private
Object
deletedAt
;
}
\ No newline at end of file
computility-module-apihub/computility-module-apihub-biz/src/main/java/com/luhu/computility/module/apihub/controller/admin/newapi/NewApiTokenPageVO.java
0 → 100644
View file @
a8077cd6
package
com
.
luhu
.
computility
.
module
.
apihub
.
controller
.
admin
.
newapi
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public
class
NewApiTokenPageVO
{
private
Integer
page
;
private
Integer
pageSize
;
private
Integer
total
;
private
java
.
util
.
List
<
NewApiTokenItemVO
>
items
;
}
\ No newline at end of file
computility-module-apihub/computility-module-apihub-biz/src/main/java/com/luhu/computility/module/apihub/controller/admin/newapi/NewApiUserVO.java
0 → 100644
View file @
a8077cd6
package
com
.
luhu
.
computility
.
module
.
apihub
.
controller
.
admin
.
newapi
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public
class
NewApiUserVO
{
private
Integer
id
;
private
String
username
;
private
String
displayName
;
private
Integer
status
;
private
String
group
;
private
Integer
role
;
}
\ No newline at end of file
computility-module-apihub/computility-module-apihub-biz/src/main/java/com/luhu/computility/module/apihub/controller/app/AppAiTokenController.java
0 → 100644
View file @
a8077cd6
package
com
.
luhu
.
computility
.
module
.
apihub
.
controller
.
app
;
import
com.luhu.computility.framework.security.core.util.SecurityFrameworkUtils
;
import
com.luhu.computility.module.apihub.controller.admin.newapi.AiTokenRespVO
;
import
com.luhu.computility.module.apihub.service.newapi.AiTokenService
;
import
com.luhu.computility.module.member.dal.dataobject.user.MemberUserDO
;
import
com.luhu.computility.module.member.service.user.MemberUserService
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
@Slf4j
@RestController
@RequestMapping
(
"/app/ai-token"
)
public
class
AppAiTokenController
{
@Resource
private
AiTokenService
aiTokenService
;
@Resource
private
MemberUserService
memberUserService
;
@PostMapping
(
"/get"
)
public
AiTokenRespVO
getToken
()
{
Long
userId
=
SecurityFrameworkUtils
.
getLoginUserId
();
log
.
info
(
"[获取令牌] userId={}"
,
userId
);
MemberUserDO
user
=
memberUserService
.
getUser
(
userId
);
if
(
user
==
null
)
{
log
.
warn
(
"[获取令牌] 用户不存在, userId={}"
,
userId
);
return
AiTokenRespVO
.
builder
()
.
success
(
false
)
.
message
(
"用户不存在"
)
.
build
();
}
log
.
info
(
"[获取令牌] 用户信息: newapiUsername={}, newapiPassword={}, newapiUserId={}, newapiAccessToken={}, newapiKey={}"
,
user
.
getNewapiUsername
(),
user
.
getNewapiPassword
()
!=
null
?
"***"
:
null
,
user
.
getNewapiUserId
(),
user
.
getNewapiAccessToken
()
!=
null
?
"***"
:
null
,
user
.
getNewapiKey
()
!=
null
?
"***"
:
null
);
AiTokenService
.
AiTokenResult
result
=
aiTokenService
.
getOrCreateToken
(
user
.
getId
(),
user
.
getNewapiUsername
(),
user
.
getNewapiPassword
(),
user
.
getNewapiUserId
(),
user
.
getNewapiAccessToken
(),
user
.
getNewapiKey
()
);
log
.
info
(
"[获取令牌] 结果: success={}, hasToken={}, apiKey={}, message={}"
,
result
.
getSuccess
(),
result
.
getHasToken
(),
result
.
getApiKey
()
!=
null
?
"***"
:
null
,
result
.
getMessage
());
if
(
Boolean
.
TRUE
.
equals
(
result
.
getSuccess
())
||
result
.
getNewApiUserId
()
!=
null
||
result
.
getNewApiUsername
()
!=
null
)
{
log
.
info
(
"[获取令牌] 更新用户NewAPI信息"
);
memberUserService
.
updateNewApiInfo
(
userId
,
result
.
getNewApiUserId
()
!=
null
?
result
.
getNewApiUserId
()
:
user
.
getNewapiUserId
(),
result
.
getNewApiAccessToken
()
!=
null
?
result
.
getNewApiAccessToken
()
:
user
.
getNewapiAccessToken
(),
result
.
getApiKey
()
!=
null
?
result
.
getApiKey
()
:
user
.
getNewapiKey
(),
result
.
getNewApiUsername
()
!=
null
?
result
.
getNewApiUsername
()
:
user
.
getNewapiUsername
(),
result
.
getNewApiPassword
()
!=
null
?
result
.
getNewApiPassword
()
:
user
.
getNewapiPassword
()
);
}
return
AiTokenRespVO
.
builder
()
.
success
(
result
.
getSuccess
())
.
hasToken
(
result
.
getHasToken
())
.
apiKey
(
result
.
getApiKey
())
.
message
(
result
.
getMessage
())
.
build
();
}
@GetMapping
(
"/info"
)
public
AiTokenRespVO
getTokenInfo
()
{
Long
userId
=
SecurityFrameworkUtils
.
getLoginUserId
();
log
.
info
(
"[查询令牌] userId={}"
,
userId
);
MemberUserDO
user
=
memberUserService
.
getUser
(
userId
);
if
(
user
==
null
)
{
log
.
warn
(
"[查询令牌] 用户不存在, userId={}"
,
userId
);
return
AiTokenRespVO
.
builder
()
.
success
(
false
)
.
message
(
"用户不存在"
)
.
build
();
}
boolean
hasToken
=
user
.
getNewapiKey
()
!=
null
&&
!
user
.
getNewapiKey
().
isEmpty
();
log
.
info
(
"[查询令牌] hasToken={}, apiKey={}"
,
hasToken
,
hasToken
?
"***"
:
null
);
return
AiTokenRespVO
.
builder
()
.
success
(
true
)
.
hasToken
(
hasToken
)
.
apiKey
(
user
.
getNewapiKey
())
.
build
();
}
}
\ No newline at end of file
computility-module-apihub/computility-module-apihub-biz/src/main/java/com/luhu/computility/module/apihub/service/newapi/AiTokenService.java
0 → 100644
View file @
a8077cd6
This diff is collapsed.
Click to expand it.
computility-module-apihub/computility-module-apihub-biz/src/main/java/com/luhu/computility/module/apihub/service/newapi/NewApiClient.java
0 → 100644
View file @
a8077cd6
This diff is collapsed.
Click to expand it.
computility-module-member/src/main/java/com/luhu/computility/module/member/dal/dataobject/user/MemberUserDO.java
View file @
a8077cd6
...
...
@@ -142,5 +142,27 @@ public class MemberUserDO extends TenantBaseDO {
*/
private
Long
groupId
;
// ========== NewAPI 相关信息 ==========
/**
* NewAPI 用户ID
*/
private
Long
newapiUserId
;
/**
* NewAPI 访问令牌
*/
private
String
newapiAccessToken
;
/**
* NewAPI API Key
*/
private
String
newapiKey
;
/**
* NewAPI 用户名
*/
private
String
newapiUsername
;
/**
* NewAPI 密码
*/
private
String
newapiPassword
;
}
computility-module-member/src/main/java/com/luhu/computility/module/member/service/user/MemberUserService.java
View file @
a8077cd6
...
...
@@ -194,4 +194,17 @@ public interface MemberUserService {
*/
boolean
updateUserPoint
(
Long
userId
,
Integer
point
);
/**
* 更新用户的NewAPI相关信息
*
* @param userId 用户编号
* @param newapiUserId NewAPI用户ID
* @param newapiAccessToken NewAPI访问令牌
* @param newapiKey NewAPI密钥
* @param newapiUsername NewAPI用户名
* @param newapiPassword NewAPI密码
*/
void
updateNewApiInfo
(
Long
userId
,
Long
newapiUserId
,
String
newapiAccessToken
,
String
newapiKey
,
String
newapiUsername
,
String
newapiPassword
);
}
computility-module-member/src/main/java/com/luhu/computility/module/member/service/user/MemberUserServiceImpl.java
View file @
a8077cd6
...
...
@@ -319,4 +319,17 @@ public class MemberUserServiceImpl implements MemberUserService {
return
true
;
}
@Override
public
void
updateNewApiInfo
(
Long
userId
,
Long
newapiUserId
,
String
newapiAccessToken
,
String
newapiKey
,
String
newapiUsername
,
String
newapiPassword
)
{
memberUserMapper
.
updateById
(
MemberUserDO
.
builder
()
.
id
(
userId
)
.
newapiUserId
(
newapiUserId
)
.
newapiAccessToken
(
newapiAccessToken
)
.
newapiKey
(
newapiKey
)
.
newapiUsername
(
newapiUsername
)
.
newapiPassword
(
newapiPassword
)
.
build
());
}
}
computility-server/src/main/resources/application-local.yaml
View file @
a8077cd6
...
...
@@ -211,6 +211,8 @@ wx:
# 芋道配置项,设置当前项目所有自定义的配置
computility
:
new-api
:
base-url
:
http://172.25.164.0:3000
captcha
:
enable
:
false
# 本地环境,暂时关闭图片验证码,方便登录等接口的测试;
security
:
...
...
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