Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
D
device-back
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
1
议题
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
Matrix
device-back
Commits
9e0843ef
提交
9e0843ef
authored
11月 23, 2022
作者:
ozoz
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat(check): 新增过滤退役和维修中的选项
上级
9f335a8b
隐藏空白字符变更
内嵌
并排
正在显示
6 个修改的文件
包含
168 行增加
和
56 行删除
+168
-56
DeviceCheckController.java
...device/confirmcheck/controller/DeviceCheckController.java
+19
-21
ExamController.java
...kj/dev/device/confirmcheck/controller/ExamController.java
+23
-30
DeviceCheckDetail.java
.../device/confirmcheck/entity/domain/DeviceCheckDetail.java
+2
-2
DeviceCheckStatDao.java
...ev/device/confirmcheck/repository/DeviceCheckStatDao.java
+2
-3
CheckScreenService.java
...j/dev/device/confirmcheck/service/CheckScreenService.java
+12
-0
CheckScreenServiceImpl.java
...ice/confirmcheck/service/impl/CheckScreenServiceImpl.java
+110
-0
没有找到文件。
dev-confirmcheck/src/main/java/com/tykj/dev/device/confirmcheck/controller/DeviceCheckController.java
浏览文件 @
9e0843ef
...
@@ -490,26 +490,25 @@ public class DeviceCheckController {
...
@@ -490,26 +490,25 @@ public class DeviceCheckController {
List
<
DeviceLibrary
>
devInLib
=
devLib
.
get
(
true
);
List
<
DeviceLibrary
>
devInLib
=
devLib
.
get
(
true
);
List
<
DeviceLibrary
>
devNotInLib
=
devLib
.
get
(
false
);
List
<
DeviceLibrary
>
devNotInLib
=
devLib
.
get
(
false
);
// TODO: 2022/11/15
Integer
filter
=
detail
.
getFilter
();
// Integer filter = detail.getFilter();
if
(
filter
==
null
)
{
// if (filter == null) {
filter
=
0
;
// filter = 0;
}
// }
switch
(
filter
)
{
// switch (filter) {
case
1
:
// case 1:
devInLib
=
devInLib
.
stream
().
filter
(
o
->
o
.
getLifeStatus
()
!=
4
).
collect
(
toList
());
// devInLib = devInLib.stream().filter(o -> o.getLifeStatus() != 4).collect(toList());
devNotInLib
=
devNotInLib
.
stream
().
filter
(
o
->
o
.
getLifeStatus
()
!=
4
).
collect
(
toList
());
// devNotInLib = devNotInLib.stream().filter(o -> o.getLifeStatus() != 4).collect(toList());
break
;
// break;
case
2
:
// case 2:
devInLib
=
devInLib
.
stream
().
filter
(
o
->
o
.
getLifeStatus
()
!=
16
).
collect
(
toList
());
// devInLib = devInLib.stream().filter(o -> o.getLifeStatus() != 16).collect(toList());
devNotInLib
=
devNotInLib
.
stream
().
filter
(
o
->
o
.
getLifeStatus
()
!=
16
).
collect
(
toList
());
// devNotInLib = devNotInLib.stream().filter(o -> o.getLifeStatus() != 16).collect(toList());
break
;
// break;
case
3
:
// case 3:
devInLib
=
devInLib
.
stream
().
filter
(
o
->
o
.
getLifeStatus
()
!=
4
).
filter
(
o
->
o
.
getLifeStatus
()
!=
16
).
collect
(
toList
());
// devInLib = devInLib.stream().filter(o -> o.getLifeStatus() != 4).filter(o -> o.getLifeStatus() != 16).collect(toList());
devNotInLib
=
devNotInLib
.
stream
().
filter
(
o
->
o
.
getLifeStatus
()
!=
4
).
filter
(
o
->
o
.
getLifeStatus
()
!=
16
).
collect
(
toList
());
// devNotInLib = devNotInLib.stream().filter(o -> o.getLifeStatus() != 4).filter(o -> o.getLifeStatus() != 16).collect(toList());
break
;
// break;
default
:
// default:
}
// }
// 特殊单位处理 if DetailId = x , 则补充添加 name=[],[]单位的装备进来
// 特殊单位处理 if DetailId = x , 则补充添加 name=[],[]单位的装备进来
...
@@ -892,7 +891,6 @@ public class DeviceCheckController {
...
@@ -892,7 +891,6 @@ public class DeviceCheckController {
public
ResponseEntity
<
ResultObj
>
checkUserA
(
@PathVariable
Integer
id
,
public
ResponseEntity
<
ResultObj
>
checkUserA
(
@PathVariable
Integer
id
,
@RequestParam
int
assignUserId
,
@RequestParam
int
assignUserId
,
@RequestParam
String
checkResult
,
@RequestParam
String
checkResult
,
// todo
@RequestParam
String
terminalInfo
,
@RequestParam
String
terminalInfo
,
@RequestBody
DetailVo
detailVo
)
{
@RequestBody
DetailVo
detailVo
)
{
// 获取参数
// 获取参数
...
...
dev-confirmcheck/src/main/java/com/tykj/dev/device/confirmcheck/controller/ExamController.java
浏览文件 @
9e0843ef
...
@@ -184,9 +184,8 @@ public class ExamController {
...
@@ -184,9 +184,8 @@ public class ExamController {
0
,
list
0
,
list
);
);
// TODO: 2022/11/15
startExam
(
checkExamVo
,
false
,
filter
);
// startExam(checkExamVo, false, filter);
// startExam(checkExamVo, false);
startExam
(
checkExamVo
,
false
);
return
ResponseEntity
.
ok
(
"发起核查成功"
);
return
ResponseEntity
.
ok
(
"发起核查成功"
);
}
}
...
@@ -202,8 +201,8 @@ public class ExamController {
...
@@ -202,8 +201,8 @@ public class ExamController {
@ApiOperation
(
value
=
"发起检查"
,
notes
=
"手动发起核查,需要指定参数"
)
@ApiOperation
(
value
=
"发起检查"
,
notes
=
"手动发起核查,需要指定参数"
)
@PostMapping
(
"/confirm/startExam"
)
@PostMapping
(
"/confirm/startExam"
)
public
ResponseEntity
<
ResultObj
>
startExam
(
@RequestBody
CheckExamVo
ceVo
,
public
ResponseEntity
<
ResultObj
>
startExam
(
@RequestBody
CheckExamVo
ceVo
,
@RequestParam
(
defaultValue
=
"true"
,
required
=
false
)
boolean
isExam
@RequestParam
(
defaultValue
=
"true"
,
required
=
false
)
boolean
isExam
,
//
@RequestParam(defaultValue = "0", required = false) Integer filter
@RequestParam
(
defaultValue
=
"0"
,
required
=
false
)
Integer
filter
)
{
)
{
// 获取需要处理的代管单位集合
// 获取需要处理的代管单位集合
...
@@ -277,21 +276,20 @@ public class ExamController {
...
@@ -277,21 +276,20 @@ public class ExamController {
.
filter
(
d
->
d
.
getLifeStatus
()
!=
2
&&
d
.
getLifeStatus
()
!=
14
);
.
filter
(
d
->
d
.
getLifeStatus
()
!=
2
&&
d
.
getLifeStatus
()
!=
14
);
Map
<
String
,
List
<
DeviceLibrary
>>
devNotInLib
=
new
HashMap
<>();
Map
<
String
,
List
<
DeviceLibrary
>>
devNotInLib
=
new
HashMap
<>();
// TODO: 2022/11/15
switch
(
filter
)
{
// switch (filter) {
case
1
:
// case 1:
// 维修状态 4
// // 维修状态 4
devNotInLib
=
deviceLibraryStream
.
filter
(
d
->
d
.
getLifeStatus
()
!=
4
).
collect
(
groupingBy
(
DeviceLibrary:
:
getOwnUnit
));
// devNotInLib = deviceLibraryStream.filter(d -> d.getLifeStatus() != 4).collect(groupingBy(DeviceLibrary::getOwnUnit));
break
;
// break;
case
2
:
// case 2:
// 过滤退役中 16
// // 过滤退役中 16
devNotInLib
=
deviceLibraryStream
.
filter
(
d
->
d
.
getLifeStatus
()
!=
16
).
collect
(
groupingBy
(
DeviceLibrary:
:
getOwnUnit
));
// devNotInLib = deviceLibraryStream.filter(d -> d.getLifeStatus() != 16).collect(groupingBy(DeviceLibrary::getOwnUnit));
break
;
// break;
case
3
:
// case 3:
devNotInLib
=
deviceLibraryStream
.
filter
(
d
->
d
.
getLifeStatus
()
!=
16
).
filter
(
d
->
d
.
getLifeStatus
()
!=
4
).
collect
(
groupingBy
(
DeviceLibrary:
:
getOwnUnit
));
// devNotInLib = deviceLibraryStream.filter(d -> d.getLifeStatus() != 16).filter(d -> d.getLifeStatus() != 4).collect(groupingBy(DeviceLibrary::getOwnUnit));
break
;
// break;
default
:
// default:
}
// }
// 3 如果是省级账户发起的检查,需要构建省局、省直属、市级的统计任务
// 3 如果是省级账户发起的检查,需要构建省局、省直属、市级的统计任务
// 3-1 核查/检查,创建省局单位的账单及详情
// 3-1 核查/检查,创建省局单位的账单及详情
...
@@ -348,8 +346,7 @@ public class ExamController {
...
@@ -348,8 +346,7 @@ public class ExamController {
devNotInLib
.
getOrDefault
(
unit
.
getName
(),
new
ArrayList
<>()));
devNotInLib
.
getOrDefault
(
unit
.
getName
(),
new
ArrayList
<>()));
unitDetailDoc
.
setVar2
(
String
.
valueOf
(
CHECK_DETAIL_CITY_0
.
id
));
unitDetailDoc
.
setVar2
(
String
.
valueOf
(
CHECK_DETAIL_CITY_0
.
id
));
// TODO: 2022/11/15
unitDetailDoc
.
setFilter
(
filter
);
// unitDetailDoc.setFilter(filter);
DeviceCheckDetail
detail
=
detailRepo
.
save
(
unitDetailDoc
);
DeviceCheckDetail
detail
=
detailRepo
.
save
(
unitDetailDoc
);
detailIds
.
add
(
detail
.
getId
());
detailIds
.
add
(
detail
.
getId
());
// 将id放入统计中去 model -> areaName -> detailId
// 将id放入统计中去 model -> areaName -> detailId
...
@@ -413,8 +410,7 @@ public class ExamController {
...
@@ -413,8 +410,7 @@ public class ExamController {
devNotInLib
.
getOrDefault
(
unit
.
getName
(),
new
ArrayList
<>()));
devNotInLib
.
getOrDefault
(
unit
.
getName
(),
new
ArrayList
<>()));
unitDetailDoc
.
setVar2
(
String
.
valueOf
(
CHECK_DETAIL_CITY_0
.
id
));
unitDetailDoc
.
setVar2
(
String
.
valueOf
(
CHECK_DETAIL_CITY_0
.
id
));
// TODO: 2022/11/15
unitDetailDoc
.
setFilter
(
filter
);
// unitDetailDoc.setFilter(filter);
DeviceCheckDetail
detail
=
detailRepo
.
save
(
unitDetailDoc
);
DeviceCheckDetail
detail
=
detailRepo
.
save
(
unitDetailDoc
);
detailIds
.
add
(
detail
.
getId
());
detailIds
.
add
(
detail
.
getId
());
...
@@ -481,8 +477,7 @@ public class ExamController {
...
@@ -481,8 +477,7 @@ public class ExamController {
devNotInLib
.
getOrDefault
(
unit
.
getName
(),
new
ArrayList
<>()));
devNotInLib
.
getOrDefault
(
unit
.
getName
(),
new
ArrayList
<>()));
unitDetailDoc
.
setVar2
(
String
.
valueOf
(
CHECK_DETAIL_CITY_0
.
id
));
unitDetailDoc
.
setVar2
(
String
.
valueOf
(
CHECK_DETAIL_CITY_0
.
id
));
// TODO: 2022/11/15
unitDetailDoc
.
setFilter
(
filter
);
// unitDetailDoc.setFilter(filter);
DeviceCheckDetail
detail
=
detailRepo
.
save
(
unitDetailDoc
);
DeviceCheckDetail
detail
=
detailRepo
.
save
(
unitDetailDoc
);
detailIds
.
add
(
detail
.
getId
());
detailIds
.
add
(
detail
.
getId
());
...
@@ -558,8 +553,7 @@ public class ExamController {
...
@@ -558,8 +553,7 @@ public class ExamController {
devNotInLib
.
getOrDefault
(
qu
.
getName
(),
new
ArrayList
<>()));
devNotInLib
.
getOrDefault
(
qu
.
getName
(),
new
ArrayList
<>()));
unitDetailDoc
.
setVar2
(
qu
.
getLevel
()
==
2
?
String
.
valueOf
(
CHECK_DETAIL_CITY_0
.
id
)
:
String
.
valueOf
(
CHECK_DETAIL_REGION_0
.
id
));
unitDetailDoc
.
setVar2
(
qu
.
getLevel
()
==
2
?
String
.
valueOf
(
CHECK_DETAIL_CITY_0
.
id
)
:
String
.
valueOf
(
CHECK_DETAIL_REGION_0
.
id
));
// TODO: 2022/11/15
unitDetailDoc
.
setFilter
(
filter
);
// unitDetailDoc.setFilter(filter);
DeviceCheckDetail
detail
=
detailRepo
.
save
(
unitDetailDoc
);
DeviceCheckDetail
detail
=
detailRepo
.
save
(
unitDetailDoc
);
detailIds
.
add
(
detail
.
getId
());
detailIds
.
add
(
detail
.
getId
());
...
@@ -611,8 +605,7 @@ public class ExamController {
...
@@ -611,8 +605,7 @@ public class ExamController {
devNotInLib
.
getOrDefault
(
unit
.
getName
(),
new
ArrayList
<>()));
devNotInLib
.
getOrDefault
(
unit
.
getName
(),
new
ArrayList
<>()));
unitDetailDoc
.
setVar2
(
String
.
valueOf
(
CHECK_DETAIL_REGION_0
.
id
));
unitDetailDoc
.
setVar2
(
String
.
valueOf
(
CHECK_DETAIL_REGION_0
.
id
));
// TODO: 2022/11/15
unitDetailDoc
.
setFilter
(
filter
);
// unitDetailDoc.setFilter(filter);
DeviceCheckDetail
detail
=
detailRepo
.
save
(
unitDetailDoc
);
DeviceCheckDetail
detail
=
detailRepo
.
save
(
unitDetailDoc
);
detailIds
.
add
(
detail
.
getId
());
detailIds
.
add
(
detail
.
getId
());
...
...
dev-confirmcheck/src/main/java/com/tykj/dev/device/confirmcheck/entity/domain/DeviceCheckDetail.java
浏览文件 @
9e0843ef
...
@@ -175,8 +175,8 @@ public class DeviceCheckDetail extends BaseEntity {
...
@@ -175,8 +175,8 @@ public class DeviceCheckDetail extends BaseEntity {
@Column
(
name
=
"checkE_name"
)
@Column
(
name
=
"checkE_name"
)
private
String
checkEName
=
""
;
private
String
checkEName
=
""
;
//
@ApiModelProperty(value = "非在库装备过滤条件;1_过滤维修;2_过滤退役中;3_过滤维修和退役")
@ApiModelProperty
(
value
=
"非在库装备过滤条件;1_过滤维修;2_过滤退役中;3_过滤维修和退役"
)
//
private Integer filter;
private
Integer
filter
;
/**
/**
* 用于生成市级的核查详情账单的构造函数
* 用于生成市级的核查详情账单的构造函数
...
...
dev-confirmcheck/src/main/java/com/tykj/dev/device/confirmcheck/repository/DeviceCheckStatDao.java
浏览文件 @
9e0843ef
...
@@ -2,9 +2,8 @@ package com.tykj.dev.device.confirmcheck.repository;
...
@@ -2,9 +2,8 @@ package com.tykj.dev.device.confirmcheck.repository;
import
com.tykj.dev.device.confirmcheck.entity.domain.DeviceCheckStat
;
import
com.tykj.dev.device.confirmcheck.entity.domain.DeviceCheckStat
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.data.jpa.repository.JpaSpecificationExecutor
;
import
java.util.List
;
import
java.util.Optional
;
/**
/**
* DeviceCheckStatRepo.
* DeviceCheckStatRepo.
...
@@ -12,6 +11,6 @@ import java.util.Optional;
...
@@ -12,6 +11,6 @@ import java.util.Optional;
* @author Matrix <xhyrzldf@gmail.com>
* @author Matrix <xhyrzldf@gmail.com>
* @since 2020/8/16 at 5:26 下午
* @since 2020/8/16 at 5:26 下午
*/
*/
public
interface
DeviceCheckStatDao
extends
JpaRepository
<
DeviceCheckStat
,
Integer
>
{
public
interface
DeviceCheckStatDao
extends
JpaRepository
<
DeviceCheckStat
,
Integer
>
,
JpaSpecificationExecutor
<
DeviceCheckStat
>
{
}
}
dev-confirmcheck/src/main/java/com/tykj/dev/device/confirmcheck/service/CheckScreenService.java
0 → 100644
浏览文件 @
9e0843ef
package
com
.
tykj
.
dev
.
device
.
confirmcheck
.
service
;
/**
* 装备大屏-核查相关service
*
* @author ozoz
* @date 2022/11/22
**/
public
interface
CheckScreenService
{
}
dev-confirmcheck/src/main/java/com/tykj/dev/device/confirmcheck/service/impl/CheckScreenServiceImpl.java
0 → 100644
浏览文件 @
9e0843ef
package
com
.
tykj
.
dev
.
device
.
confirmcheck
.
service
.
impl
;
import
com.github.wenhao.jpa.PredicateBuilder
;
import
com.github.wenhao.jpa.Specifications
;
import
com.tykj.dev.config.domin.CheckUnitInfo
;
import
com.tykj.dev.device.confirmcheck.entity.domain.DeviceCheckDetail
;
import
com.tykj.dev.device.confirmcheck.entity.domain.DeviceCheckStat
;
import
com.tykj.dev.device.confirmcheck.repository.DeviceCheckDetailDao
;
import
com.tykj.dev.device.confirmcheck.repository.DeviceCheckStatDao
;
import
com.tykj.dev.device.confirmcheck.service.CheckScreenService
;
import
com.tykj.dev.device.task.repository.TaskDao
;
import
com.tykj.dev.device.task.subject.domin.Task
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.domain.Sort
;
import
org.springframework.data.jpa.domain.Specification
;
import
org.springframework.stereotype.Service
;
import
java.time.LocalDateTime
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
/**
* @author ozoz
* @date 2022/11/22
**/
@Service
@Slf4j
public
class
CheckScreenServiceImpl
implements
CheckScreenService
{
@Autowired
private
DeviceCheckDetailDao
detailDao
;
@Autowired
private
TaskDao
taskDao
;
@Autowired
private
DeviceCheckStatDao
statDao
;
public
void
statMapData
()
{
PredicateBuilder
<
DeviceCheckStat
>
and
=
Specifications
.
and
();
LocalDateTime
now
=
LocalDateTime
.
now
();
and
.
ge
(
"endTime"
,
now
);
and
.
le
(
"endTIme"
,
now
.
plusDays
(
2
));
// 查询到所有快过期到统计任务
List
<
DeviceCheckStat
>
statList
=
statDao
.
findAll
(
and
.
build
());
// 查询task,所有的顶级任务
List
<
Task
>
tasks
=
taskDao
.
findAllById
(
statList
.
parallelStream
().
map
(
DeviceCheckStat:
:
getId
).
collect
(
Collectors
.
toList
()))
.
parallelStream
().
filter
(
o
->
o
.
getParentTaskId
()
!=
0
).
collect
(
Collectors
.
toList
());
List
<
CheckUnitInfo
>
rs
=
new
ArrayList
<>();
for
(
Task
task
:
tasks
)
{
List
<
Task
>
secondTasks
=
taskDao
.
findAllByParentTaskId
(
task
.
getId
());
for
(
Task
secondTask
:
secondTasks
)
{
if
(
secondTask
.
getBusinessType
()
==
8
)
{
CheckUnitInfo
c
=
CheckFill
(
initCheckUnitInfo
(
task
),
secondTask
);
rs
.
add
(
c
);
}
else
{
List
<
Task
>
threeTasks
=
taskDao
.
findAllByParentTaskId
(
secondTask
.
getId
());
for
(
Task
threeTask
:
threeTasks
)
{
if
(
threeTask
.
getBusinessType
()
==
8
)
{
CheckUnitInfo
c
=
CheckFill
(
initCheckUnitInfo
(
task
),
threeTask
);
rs
.
add
(
c
);
}
}
}
}
}
}
private
CheckUnitInfo
initCheckUnitInfo
(
Task
task
)
{
CheckUnitInfo
checkUnitInfo
=
new
CheckUnitInfo
();
DeviceCheckStat
deviceCheckStat
=
statDao
.
findById
(
task
.
getId
()).
orElse
(
new
DeviceCheckStat
());
checkUnitInfo
.
setStartTime
(
deviceCheckStat
.
getStartTime
());
checkUnitInfo
.
setEndTime
(
deviceCheckStat
.
getEndTime
());
checkUnitInfo
.
setUnitId
(
task
.
getOwnUnit
());
// 判断是检查还是核查
if
(
"check"
.
equals
(
task
.
getCustomInfo
()))
{
checkUnitInfo
.
setType
(
1
);
}
else
if
(
"exam"
.
equals
(
task
.
getCustomInfo
()))
{
checkUnitInfo
.
setType
(
2
);
}
return
checkUnitInfo
;
}
private
CheckUnitInfo
CheckFill
(
CheckUnitInfo
checkUnitInfo
,
Task
task
)
{
DeviceCheckDetail
detail
=
detailDao
.
findById
(
task
.
getBillId
()).
orElse
(
new
DeviceCheckDetail
());
checkUnitInfo
.
setBillId
(
task
.
getBillId
());
if
(
detail
.
getUserAId
()
!=
null
)
{
checkUnitInfo
.
setCheckOneInfo
(
1
);
}
if
(
detail
.
getUserBId
()
!=
null
)
{
checkUnitInfo
.
setCheckTwoInfo
(
1
);
}
if
(
detail
.
getUserCId
()
!=
null
)
{
checkUnitInfo
.
setCheckThreeInfo
(
1
);
}
return
checkUnitInfo
;
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论