Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
P
pica-cloud-account
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
1
合并请求
1
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
Close sidebar
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
com.pica.cloud.account
pica-cloud-account
提交
a53d1252
提交
a53d1252
编写于
11月 22, 2021
作者:
zhehao.chen
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'release' into 'master'
Release See merge request
!82
上级
c90d493a
d3c1e73c
流水线
#39645
已失败 于阶段
变更
14
流水线
1
隐藏空白字符变更
内嵌
并排
正在显示
14 个修改的文件
包含
116 行增加
和
9 行删除
+116
-9
pom.xml
client/pom.xml
+1
-1
AccountInfoClient.java
.../pica/cloud/account/account/client/AccountInfoClient.java
+3
-0
AccountInfoController.java
...ount/account/server/controller/AccountInfoController.java
+9
-0
TokenController.java
...ud/account/account/server/controller/TokenController.java
+10
-6
AccountWeChatInfoMapper.java
...ccount/account/server/mapper/AccountWeChatInfoMapper.java
+2
-0
DoctorMapper.java
...ica/cloud/account/account/server/mapper/DoctorMapper.java
+6
-0
TokenService.java
...ca/cloud/account/account/server/service/TokenService.java
+2
-0
WechatService.java
...a/cloud/account/account/server/service/WechatService.java
+2
-0
DoctorServiceImpl.java
...ccount/account/server/service/impl/DoctorServiceImpl.java
+1
-1
LoginServiceImpl.java
...account/account/server/service/impl/LoginServiceImpl.java
+1
-1
TokenServiceImpl.java
...account/account/server/service/impl/TokenServiceImpl.java
+42
-0
WechatServiceImpl.java
...ccount/account/server/service/impl/WechatServiceImpl.java
+17
-0
AccountWeChatInfoEntityMapper.xml
.../main/resources/mybatis/AccountWeChatInfoEntityMapper.xml
+8
-0
DoctorMapper.xml
server/src/main/resources/mybatis/DoctorMapper.xml
+12
-0
未找到文件。
client/pom.xml
浏览文件 @
a53d1252
...
@@ -11,7 +11,7 @@
...
@@ -11,7 +11,7 @@
<groupId>
com.pica.cloud.account
</groupId>
<groupId>
com.pica.cloud.account
</groupId>
<artifactId>
pica-cloud-account-client
</artifactId>
<artifactId>
pica-cloud-account-client
</artifactId>
<version>
1.0.
5.3
</version>
<version>
1.0.
6
</version>
<name>
pica-cloud-account-client
</name>
<name>
pica-cloud-account-client
</name>
<packaging>
jar
</packaging>
<packaging>
jar
</packaging>
...
...
client/src/main/java/com/pica/cloud/account/account/client/AccountInfoClient.java
浏览文件 @
a53d1252
...
@@ -40,5 +40,8 @@ public interface AccountInfoClient {
...
@@ -40,5 +40,8 @@ public interface AccountInfoClient {
@GetMapping
(
value
=
"/account/info/doctor/union"
)
@GetMapping
(
value
=
"/account/info/doctor/union"
)
PicaResponse
<
DoctorUnionResp
>
getDoctorByUnionid
(
@RequestParam
(
value
=
"unionid"
)
String
unionid
);
PicaResponse
<
DoctorUnionResp
>
getDoctorByUnionid
(
@RequestParam
(
value
=
"unionid"
)
String
unionid
);
@GetMapping
(
value
=
"/account/info/doctor/openid"
)
PicaResponse
<
Integer
>
getDoctorByOpenid
(
@RequestParam
(
value
=
"openid"
)
String
openid
);
}
}
server/src/main/java/com/pica/cloud/account/account/server/controller/AccountInfoController.java
浏览文件 @
a53d1252
...
@@ -80,4 +80,13 @@ public class AccountInfoController extends AccountBaseController {
...
@@ -80,4 +80,13 @@ public class AccountInfoController extends AccountBaseController {
DoctorUnionResp
personalInfoDto
=
wechatService
.
getDoctorByUnionid
(
unionid
);
DoctorUnionResp
personalInfoDto
=
wechatService
.
getDoctorByUnionid
(
unionid
);
return
PicaResponse
.
toResponse
(
personalInfoDto
);
return
PicaResponse
.
toResponse
(
personalInfoDto
);
}
}
@ApiOperation
(
value
=
"根据openid查看医生id"
)
@GetMapping
(
value
=
"/doctor/openid"
,
produces
=
"application/json;charset=UTF-8"
)
public
PicaResponse
<
Integer
>
getDoctorByOpenid
(
@RequestParam
(
value
=
"openid"
)
String
openid
)
{
Integer
doctorId
=
wechatService
.
getDoctorByOpenid
(
openid
);
return
PicaResponse
.
toResponse
(
doctorId
);
}
}
}
server/src/main/java/com/pica/cloud/account/account/server/controller/TokenController.java
浏览文件 @
a53d1252
...
@@ -2,13 +2,13 @@ package com.pica.cloud.account.account.server.controller;
...
@@ -2,13 +2,13 @@ package com.pica.cloud.account.account.server.controller;
import
com.pica.cloud.account.account.server.service.TokenService
;
import
com.pica.cloud.account.account.server.service.TokenService
;
import
com.pica.cloud.foundation.entity.PicaResponse
;
import
com.pica.cloud.foundation.entity.PicaResponse
;
import
com.pica.cloud.foundation.utils.entity.PicaAdmin
;
import
com.pica.cloud.foundation.utils.entity.PicaUser
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.RequestHeader
;
import
springfox.documentation.annotations.ApiIgnore
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.Map
;
import
java.util.Map
;
...
@@ -42,6 +42,10 @@ public class TokenController extends AccountBaseController {
...
@@ -42,6 +42,10 @@ public class TokenController extends AccountBaseController {
return
PicaResponse
.
toResponse
();
return
PicaResponse
.
toResponse
();
}
}
@ApiIgnore
@GetMapping
(
value
=
"/token/remove"
)
public
PicaResponse
removeToken
(
@RequestParam
(
"timestamp"
)
Long
timestamp
)
{
tokenService
.
removeToken
(
timestamp
);
return
PicaResponse
.
toResponse
();
}
}
}
server/src/main/java/com/pica/cloud/account/account/server/mapper/AccountWeChatInfoMapper.java
浏览文件 @
a53d1252
...
@@ -15,6 +15,8 @@ public interface AccountWeChatInfoMapper {
...
@@ -15,6 +15,8 @@ public interface AccountWeChatInfoMapper {
*/
*/
AccountWeChatInfoEntity
selectByUnionId
(
String
id
);
AccountWeChatInfoEntity
selectByUnionId
(
String
id
);
AccountWeChatInfoEntity
selectByOpenId
(
String
openId
);
int
deleteByPrimaryKey
(
Integer
id
);
int
deleteByPrimaryKey
(
Integer
id
);
int
insert
(
AccountWeChatInfoEntity
record
);
int
insert
(
AccountWeChatInfoEntity
record
);
...
...
server/src/main/java/com/pica/cloud/account/account/server/mapper/DoctorMapper.java
浏览文件 @
a53d1252
...
@@ -8,6 +8,7 @@ import com.pica.cloud.account.account.server.model.WechatInfoDto;
...
@@ -8,6 +8,7 @@ import com.pica.cloud.account.account.server.model.WechatInfoDto;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.Param
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.List
;
...
@@ -122,4 +123,9 @@ public interface DoctorMapper {
...
@@ -122,4 +123,9 @@ public interface DoctorMapper {
DoctorUnionResp
getDoctorByAcctId
(
Long
acctId
);
DoctorUnionResp
getDoctorByAcctId
(
Long
acctId
);
List
<
Integer
>
selectIdByParams
(
@Param
(
"fromId"
)
Integer
fromId
,
@Param
(
"toId"
)
Integer
toId
,
@Param
(
"loginTime"
)
Date
loginTime
);
String
selectIdByOpenId
(
String
openId
);
}
}
\ No newline at end of file
server/src/main/java/com/pica/cloud/account/account/server/service/TokenService.java
浏览文件 @
a53d1252
...
@@ -13,4 +13,6 @@ public interface TokenService {
...
@@ -13,4 +13,6 @@ public interface TokenService {
void
tokenContinueTime
(
String
token
,
Integer
sourceType
,
Integer
seconds
);
void
tokenContinueTime
(
String
token
,
Integer
sourceType
,
Integer
seconds
);
/** 删除token */
void
removeToken
(
Long
timestamp
);
}
}
server/src/main/java/com/pica/cloud/account/account/server/service/WechatService.java
浏览文件 @
a53d1252
...
@@ -18,4 +18,6 @@ public interface WechatService {
...
@@ -18,4 +18,6 @@ public interface WechatService {
DoctorUnionResp
getDoctorByUnionid
(
String
unionid
);
DoctorUnionResp
getDoctorByUnionid
(
String
unionid
);
Integer
getDoctorByOpenid
(
String
openId
);
}
}
server/src/main/java/com/pica/cloud/account/account/server/service/impl/DoctorServiceImpl.java
浏览文件 @
a53d1252
...
@@ -183,7 +183,7 @@ public class DoctorServiceImpl implements DoctorService {
...
@@ -183,7 +183,7 @@ public class DoctorServiceImpl implements DoctorService {
doctor
.
setModifyId
(
doctorId
.
intValue
());
doctor
.
setModifyId
(
doctorId
.
intValue
());
doctor
.
setCreatId
(
doctorId
.
intValue
());
doctor
.
setCreatId
(
doctorId
.
intValue
());
doctor
.
setCreatTime
(
currentTime
);
doctor
.
setCreatTime
(
currentTime
);
doctor
.
setModifyTime
(
new
Date
()
);
doctor
.
setModifyTime
(
currentTime
);
doctor
.
setRegisterSource
(
AccountTypeEnum
.
DEVICE_TYPE_ADMIN
.
getCode
());
doctor
.
setRegisterSource
(
AccountTypeEnum
.
DEVICE_TYPE_ADMIN
.
getCode
());
doctor
.
setDeleteFlag
(
1
);
doctor
.
setDeleteFlag
(
1
);
doctorMapper
.
insertSelective
(
doctor
);
doctorMapper
.
insertSelective
(
doctor
);
...
...
server/src/main/java/com/pica/cloud/account/account/server/service/impl/LoginServiceImpl.java
浏览文件 @
a53d1252
...
@@ -1097,7 +1097,7 @@ public class LoginServiceImpl implements LoginService {
...
@@ -1097,7 +1097,7 @@ public class LoginServiceImpl implements LoginService {
tokenUtils
.
tokenContinueTime
(
loginUser
.
getToken
(),
oldUser
.
getLoginFrom
(),
0
);
tokenUtils
.
tokenContinueTime
(
loginUser
.
getToken
(),
oldUser
.
getLoginFrom
(),
0
);
//记录登录日志
//记录登录日志
LogLoginEntity
entity
=
AccountLogEntityUtils
.
getLogLoginEntity
(
LogLoginEntity
entity
=
AccountLogEntityUtils
.
getLogLoginEntity
(
Integer
.
valueOf
(
String
.
valueOf
(
loginUser
.
getAcctId
())
),
loginUser
.
getAcctId
(
),
oldUser
.
getLoginPlatform
(),
oldUser
.
getLoginFrom
(),
oldUser
.
getLoginPlatform
(),
oldUser
.
getLoginFrom
(),
AccountTypeEnum
.
LOGIN_WE_CHAT
.
getCode
(),
AccountTypeEnum
.
LOGIN_WE_CHAT
.
getCode
(),
oldUser
.
getLoginIp
(),
oldUser
.
getLoginIp
(),
...
...
server/src/main/java/com/pica/cloud/account/account/server/service/impl/TokenServiceImpl.java
浏览文件 @
a53d1252
package
com
.
pica
.
cloud
.
account
.
account
.
server
.
service
.
impl
;
package
com
.
pica
.
cloud
.
account
.
account
.
server
.
service
.
impl
;
import
com.pica.cloud.account.account.server.constants.Constants
;
import
com.pica.cloud.account.account.server.constants.Constants
;
import
com.pica.cloud.account.account.server.mapper.DoctorMapper
;
import
com.pica.cloud.account.account.server.service.TokenService
;
import
com.pica.cloud.account.account.server.service.TokenService
;
import
com.pica.cloud.account.account.server.util.TokenUtils
;
import
com.pica.cloud.account.account.server.util.TokenUtils
;
import
com.pica.cloud.foundation.redis.ICacheClient
;
import
com.pica.cloud.foundation.redis.ICacheClient
;
import
com.pica.cloud.foundation.utils.entity.PicaUser
;
import
com.pica.cloud.foundation.utils.entity.PicaUser
;
import
com.pica.cloud.foundation.utils.utils.CommonUtil
;
import
com.pica.cloud.foundation.utils.utils.CommonUtil
;
import
com.pica.cloud.foundation.utils.utils.date.D
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
@@ -16,6 +18,7 @@ import org.springframework.util.CollectionUtils;
...
@@ -16,6 +18,7 @@ import org.springframework.util.CollectionUtils;
import
org.springframework.util.StringUtils
;
import
org.springframework.util.StringUtils
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
import
java.util.UUID
;
import
java.util.UUID
;
...
@@ -40,6 +43,9 @@ public class TokenServiceImpl implements TokenService {
...
@@ -40,6 +43,9 @@ public class TokenServiceImpl implements TokenService {
@Qualifier
(
"accountThreadPool"
)
@Qualifier
(
"accountThreadPool"
)
private
ThreadPoolTaskExecutor
threadPoolTaskExecutor
;
private
ThreadPoolTaskExecutor
threadPoolTaskExecutor
;
@Autowired
private
DoctorMapper
doctorMapper
;
@Override
@Override
public
String
getToken
(
Map
<
String
,
Object
>
headersMap
)
{
public
String
getToken
(
Map
<
String
,
Object
>
headersMap
)
{
String
mobile
=
new
StringBuilder
(
"9"
).
append
(
CommonUtil
.
getRandom
(
10
)).
toString
();
String
mobile
=
new
StringBuilder
(
"9"
).
append
(
CommonUtil
.
getRandom
(
10
)).
toString
();
...
@@ -90,4 +96,40 @@ public class TokenServiceImpl implements TokenService {
...
@@ -90,4 +96,40 @@ public class TokenServiceImpl implements TokenService {
return
;
return
;
}
}
@Override
public
void
removeToken
(
Long
timestamp
)
{
//new Thread(() -> {
try
{
Date
lastLoginTime
=
new
Date
(
timestamp
);
for
(
Integer
fromDoctorId
=
0
;
fromDoctorId
<
1000412091
;
fromDoctorId
+=
10000
)
{
logger
.
info
(
"start remove token: {}"
,
fromDoctorId
);
List
<
Integer
>
doctorIdList
=
doctorMapper
.
selectIdByParams
(
fromDoctorId
,
fromDoctorId
+
10000
,
lastLoginTime
);
if
(
CollectionUtils
.
isEmpty
(
doctorIdList
))
{
Thread
.
sleep
(
2000
);
continue
;
}
removeTokenByDoctorIdList
(
doctorIdList
);
logger
.
info
(
"remove token done: {} {}"
,
fromDoctorId
,
doctorIdList
.
size
());
}
}
catch
(
Exception
ex
)
{
// ingnore
}
//});
}
private
void
removeTokenByDoctorIdList
(
List
<
Integer
>
doctorIdList
)
throws
Exception
{
for
(
Integer
doctorId
:
doctorIdList
)
{
String
key1
=
String
.
format
(
"token-doctor-%d-app"
,
doctorId
);
String
key2
=
String
.
format
(
"token-doctor-%d"
,
doctorId
);
String
key3
=
redisClient
.
get
(
key1
);
redisClient
.
del
(
key1
);
redisClient
.
del
(
key2
);
if
(!
StringUtils
.
isEmpty
(
key3
))
{
redisClient
.
del
(
key3
);
}
Thread
.
sleep
(
10
);
}
}
}
}
server/src/main/java/com/pica/cloud/account/account/server/service/impl/WechatServiceImpl.java
浏览文件 @
a53d1252
...
@@ -98,4 +98,21 @@ public class WechatServiceImpl implements WechatService {
...
@@ -98,4 +98,21 @@ public class WechatServiceImpl implements WechatService {
}
}
return
doctorUnionfoModel
;
return
doctorUnionfoModel
;
}
}
@Override
public
Integer
getDoctorByOpenid
(
String
openId
)
{
AccountWeChatInfoEntity
entity
=
weChatInfoMapper
.
selectByOpenId
(
openId
);
String
unionId
=
""
;
if
(
StringUtil
.
isNotNull
(
entity
))
{
unionId
=
entity
.
getUnionid
();
}
else
{
unionId
=
doctorMapper
.
selectIdByOpenId
(
openId
);
}
DoctorUnionResp
doctorUnionfoModel
=
getDoctorByUnionid
(
unionId
);
if
(
StringUtil
.
isNotNull
(
doctorUnionfoModel
))
{
return
doctorUnionfoModel
.
getDoctorId
();
}
return
null
;
}
}
}
server/src/main/resources/mybatis/AccountWeChatInfoEntityMapper.xml
浏览文件 @
a53d1252
...
@@ -48,6 +48,14 @@
...
@@ -48,6 +48,14 @@
limit 1
limit 1
</select>
</select>
<select
id=
"selectByOpenId"
resultMap=
"BaseResultMap"
parameterType=
"java.lang.String"
>
select
<include
refid=
"Base_Column_List"
/>
from account_wechat_info
where openid = #{openId} and delete_flag = 1
limit 1
</select>
<select
id=
"selectBatchByUnionId"
resultMap=
"BaseResultMap"
parameterType=
"java.util.List"
>
<select
id=
"selectBatchByUnionId"
resultMap=
"BaseResultMap"
parameterType=
"java.util.List"
>
select
select
<include
refid=
"Base_Column_List"
/>
<include
refid=
"Base_Column_List"
/>
...
...
server/src/main/resources/mybatis/DoctorMapper.xml
浏览文件 @
a53d1252
...
@@ -1093,4 +1093,16 @@
...
@@ -1093,4 +1093,16 @@
where d.acct_id = #{acctId} and d.delete_flag = 1
where d.acct_id = #{acctId} and d.delete_flag = 1
</select>
</select>
<select
id=
"selectIdByParams"
parameterType=
"java.util.Map"
resultType=
"java.lang.Integer"
>
select id from p_doctor
where id
>
= #{fromId}
and id
<
= #{toId}
and last_login_time
<
= #{loginTime}
</select>
<select
id=
"selectIdByOpenId"
parameterType=
"java.lang.String"
resultType=
"java.lang.String"
>
select unionid from p_wechat_doctor
where openid = #{openId} and delete_flag = 1
limit 1
</select>
</mapper>
</mapper>
\ No newline at end of file
写
预览
Markdown
格式
0%
请重试
or
附加一个文件
附加文件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录