Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
D
device-back
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
1
议题
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
Matrix
device-back
Commits
b5ee39c8
提交
b5ee39c8
authored
11月 11, 2021
作者:
zjm
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix(单位模块): 优化了单位和区域修改排序的方法
优化了单位和区域修改排序的方法
上级
4f2dd92c
显示空白字符变更
内嵌
并排
正在显示
4 个修改的文件
包含
85 行增加
和
0 行删除
+85
-0
AreaExhibitionCache.java
...a/com/tykj/dev/device/user/cache/AreaExhibitionCache.java
+14
-0
UnitsCache.java
.../main/java/com/tykj/dev/device/user/cache/UnitsCache.java
+13
-0
AreaExhibitionServiceImpl.java
.../user/subject/service/impl/AreaExhibitionServiceImpl.java
+31
-0
UnitsServiceImpl.java
...ev/device/user/subject/service/impl/UnitsServiceImpl.java
+27
-0
没有找到文件。
dev-user/src/main/java/com/tykj/dev/device/user/cache/AreaExhibitionCache.java
浏览文件 @
b5ee39c8
...
@@ -42,6 +42,20 @@ public class AreaExhibitionCache {
...
@@ -42,6 +42,20 @@ public class AreaExhibitionCache {
return
new
ArrayList
<>(
idMap
.
values
());
return
new
ArrayList
<>(
idMap
.
values
());
}
}
/**
* 查询大于等新序号,小于原序号
* @return
*/
public
List
<
AreaExhibition
>
findListGeNewAndLtOriginal
(
Integer
newOrder
,
Integer
OriginalOrder
){
return
new
ArrayList
<>(
idMap
.
values
()).
stream
().
filter
(
areaExhibition
->
(
areaExhibition
.
getOrders
()>=
newOrder
)
&&(
areaExhibition
.
getOrders
()
<
OriginalOrder
)).
collect
(
Collectors
.
toList
());
}
/**
* 查询大于原序号,小于等于新序号
*/
public
List
<
AreaExhibition
>
findListLgOriginalAndLeNew
(
Integer
newOrder
,
Integer
OriginalOrder
){
return
new
ArrayList
<>(
idMap
.
values
()).
stream
().
filter
(
areaExhibition
->
(
areaExhibition
.
getOrders
()<=
newOrder
)
&&(
areaExhibition
.
getOrders
()
>
OriginalOrder
)).
collect
(
Collectors
.
toList
());
}
/**
/**
* 根据区域id查询下级以及
* 根据区域id查询下级以及
*/
*/
...
...
dev-user/src/main/java/com/tykj/dev/device/user/cache/UnitsCache.java
浏览文件 @
b5ee39c8
...
@@ -42,6 +42,19 @@ public class UnitsCache {
...
@@ -42,6 +42,19 @@ public class UnitsCache {
return
new
ArrayList
<>(
idMap
.
values
()).
stream
().
filter
(
units
->
units
.
getExhibitionId
().
equals
(
areaExhibitionId
)).
collect
(
Collectors
.
toList
());
return
new
ArrayList
<>(
idMap
.
values
()).
stream
().
filter
(
units
->
units
.
getExhibitionId
().
equals
(
areaExhibitionId
)).
collect
(
Collectors
.
toList
());
}
}
/**
* 查询大于等新序号,小于原序号
* @return
*/
public
List
<
Units
>
findListGeNewAndLtOriginal
(
Integer
newOrder
,
Integer
OriginalOrder
){
return
new
ArrayList
<>(
idMap
.
values
()).
stream
().
filter
(
units
->
(
units
.
getShowOrder
()>=
newOrder
)
&&(
units
.
getShowOrder
()
<
OriginalOrder
)).
collect
(
Collectors
.
toList
());
}
/**
* 查询大于原序号,小于等于新序号
*/
public
List
<
Units
>
findListLgOriginalAndLeNew
(
Integer
newOrder
,
Integer
OriginalOrder
){
return
new
ArrayList
<>(
idMap
.
values
()).
stream
().
filter
(
units
->
(
units
.
getShowOrder
()<=
newOrder
)
&&(
units
.
getShowOrder
()
>
OriginalOrder
)).
collect
(
Collectors
.
toList
());
}
public
UnitsCache
refresh
(
List
<
Units
>
unitsList
){
public
UnitsCache
refresh
(
List
<
Units
>
unitsList
){
this
.
idMap
=
unitsList
.
stream
().
collect
(
Collectors
.
toMap
(
Units:
:
getUnitId
,
Function
.
identity
()));
this
.
idMap
=
unitsList
.
stream
().
collect
(
Collectors
.
toMap
(
Units:
:
getUnitId
,
Function
.
identity
()));
...
...
dev-user/src/main/java/com/tykj/dev/device/user/subject/service/impl/AreaExhibitionServiceImpl.java
浏览文件 @
b5ee39c8
...
@@ -4,6 +4,7 @@ import com.tykj.dev.device.user.cache.AreaExhibitionCache;
...
@@ -4,6 +4,7 @@ import com.tykj.dev.device.user.cache.AreaExhibitionCache;
import
com.tykj.dev.device.user.subject.dao.AreaExhibitionDao
;
import
com.tykj.dev.device.user.subject.dao.AreaExhibitionDao
;
import
com.tykj.dev.device.user.subject.entity.Area
;
import
com.tykj.dev.device.user.subject.entity.Area
;
import
com.tykj.dev.device.user.subject.entity.AreaExhibition
;
import
com.tykj.dev.device.user.subject.entity.AreaExhibition
;
import
com.tykj.dev.device.user.subject.entity.Units
;
import
com.tykj.dev.device.user.subject.service.AreaExhibitionService
;
import
com.tykj.dev.device.user.subject.service.AreaExhibitionService
;
import
com.tykj.dev.misc.exception.ApiException
;
import
com.tykj.dev.misc.exception.ApiException
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
@@ -55,11 +56,41 @@ public class AreaExhibitionServiceImpl implements AreaExhibitionService {
...
@@ -55,11 +56,41 @@ public class AreaExhibitionServiceImpl implements AreaExhibitionService {
@Override
@Override
public
AreaExhibition
save
(
AreaExhibition
areaExhibition
)
{
public
AreaExhibition
save
(
AreaExhibition
areaExhibition
)
{
if
(
areaExhibition
.
getId
()==
null
){
areaExhibition
.
setOrders
(
areaExhibitionCache
.
findAll
().
size
()+
1
);
}
else
{
AreaExhibition
oldAreaExhibition
=
areaExhibitionCache
.
findById
(
areaExhibition
.
getId
());
int
count
=
areaExhibitionCache
.
findAll
().
size
();
if
(!
oldAreaExhibition
.
getOrders
().
equals
(
areaExhibition
.
getOrders
())){
if
(
count
<
areaExhibition
.
getOrders
()){
areaExhibition
.
setOrders
(
count
+
1
);
}
else
{
sortingAreaExhibition
(
areaExhibition
.
getOrders
(),
oldAreaExhibition
.
getOrders
());
}
}
}
AreaExhibition
areaExhibition1
=
areaExhibitionDao
.
save
(
areaExhibition
);
AreaExhibition
areaExhibition1
=
areaExhibitionDao
.
save
(
areaExhibition
);
areaExhibitionCache
.
refresh
(
areaExhibitionDao
.
findAll
());
areaExhibitionCache
.
refresh
(
areaExhibitionDao
.
findAll
());
return
areaExhibition1
;
return
areaExhibition1
;
}
}
private
void
sortingAreaExhibition
(
Integer
originalOrder
,
Integer
newOrder
){
List
<
AreaExhibition
>
areaExhibitions
;
if
(
originalOrder
>
newOrder
){
areaExhibitions
=
areaExhibitionCache
.
findListGeNewAndLtOriginal
(
newOrder
,
originalOrder
);
areaExhibitions
.
forEach
(
areaExhibition
->
areaExhibition
.
setOrders
(
areaExhibition
.
getOrders
()+
1
)
);
}
else
{
areaExhibitions
=
areaExhibitionCache
.
findListLgOriginalAndLeNew
(
newOrder
,
originalOrder
);
areaExhibitions
.
forEach
(
areaExhibition
->
areaExhibition
.
setOrders
(
areaExhibition
.
getOrders
()-
1
)
);
}
areaExhibitionCache
.
refresh
(
areaExhibitionDao
.
saveAll
(
areaExhibitions
));
}
@Override
@Override
public
boolean
delete
(
Integer
id
)
{
public
boolean
delete
(
Integer
id
)
{
return
false
;
return
false
;
...
...
dev-user/src/main/java/com/tykj/dev/device/user/subject/service/impl/UnitsServiceImpl.java
浏览文件 @
b5ee39c8
...
@@ -501,6 +501,7 @@ public class UnitsServiceImpl implements UnitsService {
...
@@ -501,6 +501,7 @@ public class UnitsServiceImpl implements UnitsService {
//创建单位ub 区域id绑定为b
//创建单位ub 区域id绑定为b
units
.
setAreaId
(
area
.
getId
());
units
.
setAreaId
(
area
.
getId
());
units
.
setType
(
levelToType
(
unitsAddVo
.
getLevel
()));
units
.
setType
(
levelToType
(
unitsAddVo
.
getLevel
()));
units
.
setShowOrder
(
unitsCache
.
findAll
().
size
()+
1
);
unitsDao
.
save
(
units
);
unitsDao
.
save
(
units
);
unitsCache
.
refresh
(
unitsDao
.
findAll
());
unitsCache
.
refresh
(
unitsDao
.
findAll
());
areaCache
.
refresh
(
areaDao
.
findAll
());
areaCache
.
refresh
(
areaDao
.
findAll
());
...
@@ -544,12 +545,38 @@ public class UnitsServiceImpl implements UnitsService {
...
@@ -544,12 +545,38 @@ public class UnitsServiceImpl implements UnitsService {
areaDao
.
save
(
oldArea
);
areaDao
.
save
(
oldArea
);
}
}
}
}
if
(!
unitsOld
.
getShowOrder
().
equals
(
units
.
getShowOrder
())){
int
count
=
unitsCache
.
findAll
().
size
();
if
(
units
.
getShowOrder
()>
count
){
units
.
setShowOrder
(
count
+
1
);
}
else
{
sortingUnit
(
unitsOld
.
getShowOrder
(),
units
.
getShowOrder
());
}
}
unitsDao
.
save
(
units
);
unitsDao
.
save
(
units
);
unitsCache
.
refresh
(
unitsDao
.
findAll
());
unitsCache
.
refresh
(
unitsDao
.
findAll
());
areaCache
.
refresh
(
areaDao
.
findAll
());
areaCache
.
refresh
(
areaDao
.
findAll
());
return
units
;
return
units
;
}
}
private
void
sortingUnit
(
Integer
originalOrder
,
Integer
newOrder
){
List
<
Units
>
unitsList
;
if
(
originalOrder
>
newOrder
){
unitsList
=
unitsCache
.
findListGeNewAndLtOriginal
(
newOrder
,
originalOrder
);
unitsList
.
forEach
(
units
->
units
.
setShowOrder
(
units
.
getShowOrder
()+
1
)
);
}
else
{
unitsList
=
unitsCache
.
findListLgOriginalAndLeNew
(
newOrder
,
originalOrder
);
unitsList
.
forEach
(
units
->
units
.
setShowOrder
(
units
.
getShowOrder
()-
1
)
);
}
unitsCache
.
refresh
(
unitsDao
.
saveAll
(
unitsList
));
}
/**
/**
* 工具类
* 工具类
* @return 单位类型
* @return 单位类型
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论