切换导航条
此项目
正在载入...
登录
message_bus
/
message_bus_service
·
提交
转到一个项目
GitLab
转到群组
项目
活动
文件
提交
管道
0
构建
0
图表
里程碑
问题
0
合并请求
0
成员
标记
维基
派生
网络
创建新的问题
下载为
邮件补丁
差异文件
浏览文件
作者
王勇
5 years ago
提交
8585cf932b6577652ab450c738a41e031f7916e8
1 个父辈
f0d02756
编辑用户关系,完成
显示空白字符变更
内嵌
并排对比
正在显示
4 个修改的文件
包含
118 行增加
和
4 行删除
src/main/java/com/sunyo/wlpt/message/bus/service/mapper/UserInfoMapper.java
src/main/java/com/sunyo/wlpt/message/bus/service/service/impl/UserInfoServiceImpl.java
src/main/resources/mapper/ElasticSearchInfoMapper.xml
src/main/resources/mapper/UserInfoMapper.xml
src/main/java/com/sunyo/wlpt/message/bus/service/mapper/UserInfoMapper.java
查看文件 @
8585cf9
...
...
@@ -24,6 +24,13 @@ public interface UserInfoMapper {
int
deleteByPrimaryKey
(
String
id
);
/**
* 批量删除
* @param ids id数组
* @return
*/
int
batchRemoveByIds
(
String
[]
ids
);
/**
* insert record to table
*
* @param record the record
...
...
src/main/java/com/sunyo/wlpt/message/bus/service/service/impl/UserInfoServiceImpl.java
查看文件 @
8585cf9
...
...
@@ -27,6 +27,7 @@ import org.springframework.transaction.annotation.Transactional;
import
javax.annotation.Resource
;
import
java.io.IOException
;
import
java.net.URISyntaxException
;
import
java.util.Arrays
;
import
java.util.List
;
import
java.util.concurrent.TimeoutException
;
...
...
@@ -220,14 +221,112 @@ public class UserInfoServiceImpl implements UserInfoService {
}
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
,
propagation
=
Propagation
.
REQUIRED
)
public
ResultJson
updateByPrimaryKeySelective
(
UserInfo
userInfo
)
{
if
(
StringUtil
.
isNullOrEmpty
(
userInfo
.
getId
()))
{
String
id
=
userInfo
.
getId
();
String
username
=
userInfo
.
getUsername
();
String
serverName
=
userInfo
.
getServerName
();
String
virtualHostId
=
userInfo
.
getVirtualHostId
();
String
div
=
","
;
if
(
StringUtil
.
isNullOrEmpty
(
id
)
||
StringUtil
.
isNullOrEmpty
(
username
)
||
StringUtil
.
isNullOrEmpty
(
serverName
))
{
return
new
ResultJson
<>(
"400"
,
"该用户不存在"
);
}
ResultJson
validateResult
=
validateUser
(
userInfo
);
int
num
=
userInfoMapper
.
updateByPrimaryKeySelective
(
userInfo
);
// id是1个
if
(!
id
.
contains
(
div
))
{
// 根据id,获取到没有选择之前的详细信息
UserInfo
oldUserInfo
=
userInfoMapper
.
selectByPrimaryKey
(
id
);
String
oldVirtualHostId
=
oldUserInfo
.
getVirtualHostId
();
// id是1个,虚拟主机id是1个
if
(!
virtualHostId
.
contains
(
div
))
{
if
(
virtualHostId
.
equals
(
oldVirtualHostId
))
{
return
new
ResultJson
<>(
"200"
,
"修改用户信息,成功"
);
}
else
{
userInfo
.
setVirtualHostId
(
virtualHostId
);
userInfo
.
setVirtualHostName
(
virtualHostService
.
selectByPrimaryKey
(
virtualHostId
).
getVirtualHostName
());
return
userInfoMapper
.
updateByPrimaryKeySelective
(
userInfo
)
>
0
?
new
ResultJson
<>(
"200"
,
"修改用户信息,成功"
)
:
new
ResultJson
<>(
"500"
,
"修改用户信息,失败"
);
}
}
// id是1个,虚拟主机id是多个
else
{
int
num
=
0
;
String
[]
vHostIds
=
virtualHostId
.
split
(
div
);
List
<
String
>
vHostIdList
=
Arrays
.
asList
(
vHostIds
);
// 选择的虚拟主机id,包含原来的id
if
(
vHostIdList
.
contains
(
oldVirtualHostId
))
{
for
(
String
vHostId
:
vHostIdList
)
{
if
(
vHostId
.
equals
(
oldVirtualHostId
))
{
continue
;
}
VirtualHost
virtualHost
=
virtualHostService
.
selectByPrimaryKey
(
vHostId
);
if
(
virtualHost
==
null
)
{
continue
;
}
userInfo
.
setId
(
IdUtils
.
generateId
());
userInfo
.
setVirtualHostId
(
vHostId
);
userInfo
.
setVirtualHostName
(
virtualHostService
.
selectByPrimaryKey
(
vHostId
).
getVirtualHostName
());
num
+=
userInfoMapper
.
insertSelective
(
userInfo
);
}
return
num
>
0
?
new
ResultJson
<>(
"200"
,
"修改用户信息,成功"
)
:
new
ResultJson
<>(
"500"
,
"修改用户信息,失败"
);
}
else
{
for
(
String
vHostId
:
vHostIdList
)
{
VirtualHost
virtualHost
=
virtualHostService
.
selectByPrimaryKey
(
vHostId
);
if
(
virtualHost
==
null
)
{
continue
;
}
userInfo
.
setId
(
IdUtils
.
generateId
());
userInfo
.
setVirtualHostId
(
vHostId
);
userInfo
.
setVirtualHostName
(
virtualHostService
.
selectByPrimaryKey
(
vHostId
).
getVirtualHostName
());
num
+=
userInfoMapper
.
insertSelective
(
userInfo
);
}
userInfoMapper
.
deleteByPrimaryKey
(
id
);
return
num
>
0
?
new
ResultJson
<>(
"200"
,
"修改用户信息,成功"
)
:
new
ResultJson
<>(
"500"
,
"修改用户信息,失败"
);
}
}
}
// id是多个
List
<
UserInfo
>
userInfoList
=
userInfoMapper
.
selectByUsernameAndServerName
(
username
,
serverName
);
int
num
=
0
;
// 虚拟主机id是一个
if
(!
virtualHostId
.
contains
(
div
))
{
String
[]
deleteIds
=
new
String
[
userInfoList
.
size
()];
for
(
int
i
=
0
;
i
<
userInfoList
.
size
();
i
++)
{
deleteIds
[
i
]
=
userInfoList
.
get
(
i
).
getId
();
}
userInfoMapper
.
batchRemoveByIds
(
deleteIds
);
userInfo
.
setId
(
IdUtils
.
generateId
());
userInfo
.
setVirtualHostId
(
virtualHostId
);
userInfo
.
setVirtualHostName
(
virtualHostService
.
selectByPrimaryKey
(
virtualHostId
).
getVirtualHostName
());
num
=
userInfoMapper
.
insertSelective
(
userInfo
);
}
// 虚拟主机id是多个
else
{
String
[]
deleteIds
=
new
String
[
userInfoList
.
size
()];
for
(
int
i
=
0
;
i
<
userInfoList
.
size
();
i
++)
{
deleteIds
[
i
]
=
userInfoList
.
get
(
i
).
getId
();
}
userInfoMapper
.
batchRemoveByIds
(
deleteIds
);
String
[]
virtualHostIds
=
virtualHostId
.
split
(
div
);
for
(
int
i
=
0
;
i
<
virtualHostIds
.
length
;
i
++)
{
VirtualHost
virtualHost
=
virtualHostService
.
selectByPrimaryKey
(
virtualHostIds
[
i
]);
if
(
virtualHost
==
null
)
{
continue
;
}
userInfo
.
setId
(
IdUtils
.
generateId
());
userInfo
.
setVirtualHostId
(
virtualHostIds
[
i
]);
userInfo
.
setVirtualHostName
(
virtualHost
.
getVirtualHostName
());
num
+=
userInfoMapper
.
insertSelective
(
userInfo
);
}
}
return
num
>
0
?
new
ResultJson
<>(
"200"
,
"修改用户信息,成功"
)
:
new
ResultJson
<>(
"500"
,
"修改用户信息,失败"
);
...
...
src/main/resources/mapper/ElasticSearchInfoMapper.xml
查看文件 @
8585cf9
...
...
@@ -84,7 +84,7 @@
from elastic_search_info
where id in
<foreach
collection=
"array"
open=
"("
close=
")"
separator=
","
item=
"id"
>
#{id
}
#{id,jdbcType=VARCHAR
}
</foreach>
</delete>
...
...
src/main/resources/mapper/UserInfoMapper.xml
查看文件 @
8585cf9
...
...
@@ -62,6 +62,14 @@
from user_info
where virtual_host_name = #{virtualHostName,jdbcType=VARCHAR}
</delete>
<delete
id=
"batchRemoveByIds"
parameterType=
"java.lang.String"
>
delete
from user_info
where id in
<foreach
collection=
"array"
open=
"("
close=
")"
separator=
","
item=
"id"
>
#{id,jdbcType=VARCHAR}
</foreach>
</delete>
<insert
id=
"insert"
parameterType=
"com.sunyo.wlpt.message.bus.service.domain.UserInfo"
>
...
...
请
注册
或
登录
后发表评论