Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
D
device-back
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
1
议题
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
Matrix
device-back
Commits
231bb82f
提交
231bb82f
authored
11月 23, 2021
作者:
ljj234
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
refactor: 修改核查模块(重构)
上级
0bc0f828
显示空白字符变更
内嵌
并排
正在显示
6 个修改的文件
包含
162 行增加
和
77 行删除
+162
-77
DeviceCheckController.java
...device/confirmcheck/controller/DeviceCheckController.java
+23
-4
ExamController.java
...kj/dev/device/confirmcheck/controller/ExamController.java
+74
-32
DeviceCheckDetail.java
.../device/confirmcheck/entity/domain/DeviceCheckDetail.java
+1
-1
CheckDetailVo.java
...tykj/dev/device/confirmcheck/entity/vo/CheckDetailVo.java
+9
-0
ConfirmCheckServiceImpl.java
...ce/confirmcheck/service/impl/ConfirmCheckServiceImpl.java
+54
-39
TaskServiceImpl.java
...om/tykj/dev/device/task/service/impl/TaskServiceImpl.java
+1
-1
没有找到文件。
dev-confirmcheck/src/main/java/com/tykj/dev/device/confirmcheck/controller/DeviceCheckController.java
浏览文件 @
231bb82f
...
...
@@ -610,9 +610,12 @@ public class DeviceCheckController {
// 这里只显示detail任务
if
(
child
.
getBusinessType
()
==
CONFIRM_CHECK_STAT
.
id
)
{
String
[]
split
=
child
.
getTitle
().
split
(
"]"
);
ledList
.
add
(
LinkExamDetail
.
builder
()
.
examName
(
""
)
.
examUser
(
""
)
.
checkResult
(
"无误"
)
.
checkUnit
(
unitsRepo
.
findById
(
child
.
getOwnUnit
()).
get
().
getName
(
))
.
checkUnit
(
split
[
0
].
replace
(
"["
,
""
))
.
checkSituation
(
"211"
)
.
id
(
child
.
getBillId
())
.
remark
(
1
)
...
...
@@ -1180,6 +1183,7 @@ public class DeviceCheckController {
@RequestParam
String
checkResult
,
@RequestBody
DetailVo
detailVo
)
{
// 0:待核查,1:审核失败,2:核查完成
List
<
FileRet
>
checkFiles
=
detailVo
.
getCheckFiles
();
DevLibVo
devLibVo
=
detailVo
.
getDevLibVo
();
...
...
@@ -1259,6 +1263,8 @@ public class DeviceCheckController {
/**
* 市人员审核区自查数据的接口
*
* 市 审核 区
*
* @param detailId
* @param pass 是否通过 true - 通过 ,false - 未通过
* @return
...
...
@@ -1275,7 +1281,7 @@ public class DeviceCheckController {
if
(
pass
)
{
// 通过的话就推进任务进度,合并数据
log
.
info
(
"[核查模块] 市专管员审核通过,结束 {} 区的自查任务并汇总数据"
,
unitsRepo
.
findById
(
currentDetail
.
getCheckUnitId
()).
get
().
getName
());
taskService
.
moveTo
Next
(
currentTask
);
taskService
.
moveTo
Special
(
currentTask
,
END
);
Integer
userId
=
authenticationUtils
.
getAuthentication
().
getCurrentUserInfo
().
getUserId
();
currentDetail
.
setUserCId
(
userId
);
currentDetail
=
detailRepo
.
save
(
currentDetail
);
...
...
@@ -1308,6 +1314,14 @@ public class DeviceCheckController {
taskService
.
update
(
fatherTask
);
}
TaskBto
granderFatherTask
=
taskService
.
get
(
fatherTask
.
getParentTaskId
());
if
(
END
.
id
.
equals
(
granderFatherTask
.
getBillStatus
())
||
CHECK_SHUT_DOWN
.
id
.
equals
(
granderFatherTask
.
getBillStatus
()))
{
granderFatherTask
.
setBillStatus
(
StatusEnum
.
CHECK_EXAM_STAT_1
.
id
);
taskService
.
update
(
granderFatherTask
);
}
// 撤销时恢复省的统计任务
return
ResponseEntity
.
ok
(
"回退成功!回滚该任务到初始状态,id = "
+
currentTask
.
getId
());
}
...
...
@@ -1786,7 +1800,12 @@ public class DeviceCheckController {
return
level
==
1
;
}
// todo
/**
* 拼接待办,如[unit]title
* @param units unit
* @param title title
* @return [unit]title
*/
private
String
getUnitDateString
(
Units
units
,
String
title
)
{
return
"["
+
units
.
getUnitDesc
()
+
"]"
+
title
;
...
...
@@ -2058,7 +2077,7 @@ public class DeviceCheckController {
detailIdList
.
add
(
c1
.
getBillId
());
}
if
(
c1
.
getCustomInfo
().
equals
(
"exam"
))
{
if
(
c1
.
getCustomInfo
().
equals
(
"exam"
)
||
c1
.
getCustomInfo
().
equals
(
"check"
)
)
{
if
(!(
c1
.
getBillStatus
().
equals
(
END
.
id
)
||
c1
.
getBillStatus
().
equals
(
CHECK_SHUT_DOWN
.
id
)))
{
examIsDone
=
false
;
}
...
...
dev-confirmcheck/src/main/java/com/tykj/dev/device/confirmcheck/controller/ExamController.java
浏览文件 @
231bb82f
...
...
@@ -36,6 +36,7 @@ import com.tykj.dev.device.user.subject.service.UnitsService;
import
com.tykj.dev.device.user.subject.service.UserService
;
import
com.tykj.dev.device.user.util.AuthenticationUtils
;
import
com.tykj.dev.misc.base.ResultObj
;
import
com.tykj.dev.misc.exception.ApiException
;
import
com.tykj.dev.misc.utils.JacksonUtil
;
import
com.tykj.dev.socket.MyWebSocket
;
import
io.swagger.annotations.Api
;
...
...
@@ -124,6 +125,24 @@ public class ExamController {
@Autowired
private
UnitsService
unitsService
;
@GetMapping
(
"/check/confirm/escrow"
)
@ApiOperation
(
value
=
"判断task是否为代管单位的详情任务"
)
public
ResponseEntity
judgeEscrowUnit
(
@RequestParam
Integer
billId
,
@RequestParam
Integer
type
)
{
Task
task
=
taskRepo
.
findByBillIdAndBusinessType
(
billId
,
type
).
get
();
if
(
task
.
getTitle
().
contains
(
"[省直属单位]"
))
{
return
ResponseEntity
.
ok
(
ImmutableMap
.
of
(
"msg"
,
true
));
}
if
(
"-1"
.
equals
(
task
.
getExhibit
())
&&
task
.
getBusinessType
()
==
8
&&
unitsService
.
isProvUnit
(
task
.
getOwnUnit
()))
{
return
ResponseEntity
.
ok
(
ImmutableMap
.
of
(
"msg"
,
true
));
}
return
ResponseEntity
.
ok
(
ImmutableMap
.
of
(
"msg"
,
false
));
}
@GetMapping
(
"/escrow/unit"
)
@ApiOperation
(
value
=
"查询所有的代管单位,true_过滤无装备的单位,false_不过滤无装备的单位"
)
public
ResponseEntity
findEscrowUnit
(
@RequestParam
(
defaultValue
=
"false"
)
boolean
filter
)
{
...
...
@@ -156,14 +175,15 @@ public class ExamController {
@GetMapping
(
"/confirm/unit"
)
@ApiOperation
(
value
=
"查询默认的可以被核查单位的清单(省本直,省直属,市局),同时过滤掉那些已经被代管的单位"
)
public
ResponseEntity
findDefaultUnits
(
@RequestParam
(
defaultValue
=
"false"
)
boolean
isExam
,
@RequestParam
(
defaultValue
=
"1"
)
Integer
unitId
)
{
if
(
unitsService
.
isProvUnit
(
unitId
)){
public
ResponseEntity
findDefaultUnits
(
@RequestParam
(
defaultValue
=
"false"
)
boolean
isExam
)
{
Integer
unitId
=
authenticationUtils
.
getAuthentication
().
getCurrentUserInfo
().
getUnitsId
();
if
(
unitsService
.
isProvUnit
(
unitId
))
{
Map
<
Integer
,
List
<
Units
>>
checkUnit
=
checkUnitService
.
findCheckUnit
(
isExam
);
// 需要去除掉被托管的单位
return
ResponseEntity
.
ok
(
new
ResultObj
<>(
checkUnit
));
}
else
{
return
ResponseEntity
.
ok
(
new
ResultObj
<>(
ImmutableMap
.
of
(
1
,
unitsService
.
findBySubordinateNotOneself
(
unitId
))));
return
ResponseEntity
.
ok
(
new
ResultObj
<>(
ImmutableMap
.
of
(
1
,
unitsService
.
findBySubordinateNotOneself
(
authenticationUtils
.
getAuthentication
().
getCurrentUserInfo
().
getUnitsId
()
))));
}
}
...
...
@@ -179,10 +199,10 @@ public class ExamController {
CheckExamVo
checkExamVo
=
new
CheckExamVo
(
ccVO
.
getTitle
(),
ccVO
.
getEndTime
(),
ccVO
.
getUnitId
(),
0
,
list
0
,
list
);
startExam
(
checkExamVo
,
false
);
startExam
(
checkExamVo
,
false
);
return
ResponseEntity
.
ok
(
"发起核查成功"
);
}
...
...
@@ -273,8 +293,12 @@ public class ExamController {
// 3 如果是省级账户发起的检查,需要构建省局、省直属、市级的统计任务
// 3-1 创建省局单位的账单及详情
if
(
checkTypeNum
(
ceVo
.
getDetail
().
get
(
0
).
getUnitIds
(),
1
))
{
// 3-1 核查/检查,创建省局单位的账单及详情
List
<
Integer
>
proList
=
checkedUnits
.
stream
()
.
filter
(
o
->
(
o
.
getLevel
()
==
1
&&
o
.
getType
()
==
1
)
||
(
o
.
getLevel
()
==
1
&&
o
.
getType
()
==
2
))
.
map
(
Units:
:
getUnitId
).
collect
(
toList
());
if
(
checkUnitService
.
findExistDevice
(
proList
).
size
()
!=
0
)
{
// 3-1-1 创建省局单位的统计账单
DeviceCheckStat
proStat
=
new
DeviceCheckStat
(
ceVo
.
getTitle
(),
""
,
LocalDateTime
.
now
(),
ceVo
.
getEndTime
().
atStartOfDay
(),
...
...
@@ -297,11 +321,17 @@ public class ExamController {
taskBtoPro
=
taskService
.
start
(
taskBtoPro
);
// 3-1-3 构建省级单位的自查账单及任务
List
<
Units
>
unitsPro
=
checkedUnits
.
stream
()
List
<
Integer
>
unitsProIds
=
checkedUnits
.
stream
()
.
filter
(
o
->
(
o
.
getLevel
()
==
1
&&
o
.
getType
()
==
2
)
||
(
o
.
getType
()
==
1
&&
o
.
getLevel
()
==
1
))
.
map
(
Units:
:
getUnitId
)
.
collect
(
toList
());
List
<
Units
>
unitsPro
=
unitsRepo
.
findAllById
(
checkUnitService
.
findExistDevice
(
unitsProIds
));
if
(
isExam
)
{
unitsPro
=
unitsPro
.
stream
().
filter
(
o
->
!(
o
.
getLevel
()
==
1
&&
o
.
getType
()
==
1
)).
collect
(
toList
());
}
log
.
info
(
"[核查] 生成省局统计及详情:{}"
,
unitsPro
.
toString
()
);
log
.
info
(
"[核查] 生成省局统计及详情:{}"
,
unitsPro
);
for
(
Units
unit
:
unitsPro
)
{
...
...
@@ -335,17 +365,20 @@ public class ExamController {
}
}
// 3-2 创建省直属单位的账单及详情
if
(
checkTypeNum
(
ceVo
.
getDetail
().
get
(
0
).
getUnitIds
(),
2
))
{
// 3-1-1 创建省直单位的统计账单
// 3-2 核查/检查,创建省直属单位的账单及详情
List
<
Integer
>
escList
=
checkedUnits
.
stream
()
.
filter
(
o
->
o
.
getEscrow
()
==
1
)
.
map
(
Units:
:
getUnitId
).
collect
(
toList
());
if
(
checkUnitService
.
findExistDevice
(
escList
).
size
()
!=
0
)
{
// 3-2-1 创建省直单位的统计账单
DeviceCheckStat
esStat
=
new
DeviceCheckStat
(
ceVo
.
getTitle
(),
""
,
LocalDateTime
.
now
(),
ceVo
.
getEndTime
().
atStartOfDay
(),
"[]"
,
0
,
0
,
"默认检查"
);
esStat
.
setCheckType
(
isExam
?
CheckType
.
CT_EXAM
:
CheckType
.
CT_CHECK
);
DeviceCheckStat
esStatSave
=
statRepo
.
save
(
esStat
);
// 3-
1
-2 构建省直单位的任务
// 3-
2
-2 构建省直单位的任务
TaskBto
taskBtoEs
=
new
Task
(
CHECK_EXAM_STAT_1
.
id
,
"[省直属单位]"
+
"省直单位检查任务"
,
"[省直属单位]"
+
ceVo
.
getTitle
()
,
cityStatTask
.
getId
(),
".0."
,
CONFIRM_CHECK_STAT
.
id
,
esStatSave
.
getId
(),
// 省直单位的检查任务应该给省里
unitsRepo
.
findAllByTypeAndLevel
(
1
,
1
).
get
(
0
).
getUnitId
()).
parse2Bto
();
...
...
@@ -356,10 +389,11 @@ public class ExamController {
taskBtoEs
.
setCurrentPoint
(
1
);
taskBtoEs
=
taskService
.
start
(
taskBtoEs
);
// 3-
1
-3 构建省直单位的自查账单及任务
// 3-
2
-3 构建省直单位的自查账单及任务
List
<
Units
>
unitsEs
=
checkedUnits
.
stream
().
filter
(
o
->
o
.
getEscrow
()
==
1
).
collect
(
toList
());
unitsEs
=
unitsRepo
.
findAllById
(
checkUnitService
.
findExistDevice
(
unitsEs
.
stream
().
map
(
Units:
:
getUnitId
).
collect
(
toList
())));
log
.
info
(
"[核查] 生成省直属统计及详情:{}"
,
unitsEs
.
toString
());
log
.
info
(
"[核查] 生成省直属统计及详情:{}"
,
unitsEs
.
toString
());
for
(
Units
unit
:
unitsEs
)
{
...
...
@@ -393,14 +427,21 @@ public class ExamController {
}
}
// 3-3 创建市单位的账单及详情,并且发起单位为省局
// 3-3 检查,创建市单位的账单及详情,并且发起单位为省局
if
(
isExam
&&
checkTypeNum
(
ceVo
.
getDetail
().
get
(
0
).
getUnitIds
(),
3
)
&&
(
ceVo
.
getUnitId
().
equals
(
unitsRepo
.
findAllByTypeAndLevel
(
1
,
1
).
get
(
0
).
getUnitId
())))
{
List
<
Units
>
unitsEs
=
checkedUnits
.
stream
().
filter
(
o
->
o
.
getLevel
()
==
2
).
collect
(
toList
());
unitsEs
=
unitsRepo
.
findAllById
(
checkUnitService
.
findExistDevice
(
unitsEs
.
stream
().
map
(
Units:
:
getUnitId
).
collect
(
toList
())));
log
.
info
(
"[exam] 省级单位对市级单位发起检查,被检查的市级单位为:{}"
,
unitsEs
.
stream
().
map
(
Units:
:
getName
).
collect
(
toList
()).
toString
());
if
(
unitsEs
.
size
()
!=
0
)
{
// 3-1-1 创建市里的的统计账单
DeviceCheckStat
ciyStat
=
new
DeviceCheckStat
(
ceVo
.
getTitle
(),
""
,
LocalDateTime
.
now
(),
ceVo
.
getEndTime
().
atStartOfDay
(),
"[]"
,
0
,
0
,
"默认检查"
);
ciyStat
.
setCheckType
(
isExam
?
CheckType
.
CT_EXAM
:
CheckType
.
CT_CHECK
);
ciyStat
.
setCheckType
(
CheckType
.
CT_EXAM
);
DeviceCheckStat
cityStatSave
=
statRepo
.
save
(
ciyStat
);
// 3-1-2 构建市单位的任务
...
...
@@ -414,13 +455,10 @@ public class ExamController {
taskBtoCity
.
getInvolveUserIdList
().
add
(
0
);
taskBtoCity
.
setCurrentPoint
(
1
);
taskBtoCity
.
setExhibit
(
"-1"
);
taskBtoCity
=
taskService
.
start
(
taskBtoCity
);
log
.
info
(
"[check] 市级统计任务的状态是:{}"
,
taskBtoCity
.
getBillStatus
());
TaskBto
start
=
taskService
.
start
(
taskBtoCity
);
// 3-1-3 构建市单位的自查账单及任务
List
<
Units
>
unitsEs
=
checkedUnits
.
stream
().
filter
(
o
->
o
.
getLevel
()
==
2
).
collect
(
toList
());
log
.
info
(
"[核查] 检查,生成市统计及详情:{}"
,
unitsEs
.
toString
());
for
(
Units
unit
:
unitsEs
)
{
...
...
@@ -441,7 +479,7 @@ public class ExamController {
TaskBto
checkedTask
=
new
TaskBto
(
CHECK_DETAIL_CITY_0
.
id
,
getUnitDateString
(
unit
,
ceVo
.
getTitle
()),
taskBtoCity
.
getId
(),
start
.
getId
(),
addNode
(
taskBtoCity
.
getNodeIdDetail
(),
taskBtoCity
.
getId
()),
CONFIRM_CHECK_DETAIL
.
id
,
detail
.
getId
(),
...
...
@@ -451,14 +489,16 @@ public class ExamController {
checkedTask
.
setCustomInfo
(
"manual"
);
taskService
.
start
(
checkedTask
);
}
}
}
// 3-4
(before) 核查时
对市县进行核查的逻辑,需判断是否勾选了市级单位
if
(!
isExam
&&
(
checkedUnits
.
stream
().
anyMatch
(
o
->
o
.
getLevel
()
==
2
)))
{
// 3-4
核查,
对市县进行核查的逻辑,需判断是否勾选了市级单位
if
(!
isExam
&&
(
checkedUnits
.
stream
().
anyMatch
(
o
->
o
.
getLevel
()
==
2
)))
{
// 找到市相关的单位,包括市本级以及下级单位
List
<
Units
>
units
=
checkedUnits
.
stream
().
filter
(
o
->
o
.
getLevel
()
==
2
).
collect
(
toList
());
log
.
info
(
"[核查] 核查,生成市的统计及详情:{}"
,
units
.
toString
());
log
.
info
(
"[核查] 核查,生成市的统计及详情:{}"
,
units
.
toString
());
for
(
Units
unit
:
units
)
{
...
...
@@ -487,6 +527,7 @@ public class ExamController {
// 检查变为待办
taskBtoCity
.
getInvolveUserIdList
().
add
(
0
);
taskBtoCity
.
setCurrentPoint
(
1
);
log
.
info
(
"[check] 核查创建市统计,状态为:{}"
,
taskBtoCity
.
getBillStatus
());
taskBtoCity
=
taskService
.
start
(
taskBtoCity
);
// 2.创建单位的详情及任务
...
...
@@ -529,19 +570,19 @@ public class ExamController {
// 判断当前登录用户是否为市级
Optional
<
Units
>
byId
=
unitsRepo
.
findById
(
authenticationUtils
.
getAuthentication
().
getCurrentUserInfo
().
getUnitsId
());
boolean
cityExam
=
false
;
if
(
byId
.
isPresent
()){
if
(
byId
.
get
().
getLevel
()
==
2
&&
byId
.
get
().
getType
()
==
1
)
{
if
(
byId
.
isPresent
())
{
if
(
byId
.
get
().
getLevel
()
==
2
&&
byId
.
get
().
getType
()
==
1
)
{
cityExam
=
true
;
}
}
// 3-
4
创建区单位的账单及详情,只有市发起检查时才触发这里的代码
// 3-
5 检查,
创建区单位的账单及详情,只有市发起检查时才触发这里的代码
if
(
checkTypeNum
(
ceVo
.
getDetail
().
get
(
0
).
getUnitIds
(),
4
)
&&
isExam
&&
cityExam
)
{
// a 构建区单位的自查账单及任务
List
<
Units
>
unitsEs
=
checkedUnits
.
stream
().
filter
(
o
->
o
.
getLevel
()
==
3
).
collect
(
toList
());
log
.
info
(
"[核查] 检查,生成区的统计及详情:{}"
,
unitsEs
.
toString
());
log
.
info
(
"[核查] 检查,生成区的统计及详情:{}"
,
unitsEs
.
toString
());
for
(
Units
unit
:
unitsEs
)
{
...
...
@@ -618,6 +659,7 @@ public class ExamController {
*/
private
boolean
checkTypeNum
(
List
<
Integer
>
unitIds
,
Integer
tag
)
{
boolean
rs
=
false
;
// tag: 0_处理核查时的省局,1_处理检查时的省局 2_处理省直属 3_处理市
...
...
dev-confirmcheck/src/main/java/com/tykj/dev/device/confirmcheck/entity/domain/DeviceCheckDetail.java
浏览文件 @
231bb82f
...
...
@@ -161,7 +161,7 @@ public class DeviceCheckDetail extends BaseEntity {
@Transient
private
List
<
FileRet
>
checkFileList
=
new
ArrayList
<>();
@ApiModelProperty
(
value
=
"
手持终端信息字段
"
)
@ApiModelProperty
(
value
=
"
checkC
"
)
@Column
(
name
=
"checkC_name"
)
private
String
checkCName
=
""
;
...
...
dev-confirmcheck/src/main/java/com/tykj/dev/device/confirmcheck/entity/vo/CheckDetailVo.java
浏览文件 @
231bb82f
...
...
@@ -6,6 +6,7 @@ import lombok.AllArgsConstructor;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.persistence.Column
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
...
...
@@ -85,6 +86,14 @@ public class CheckDetailVo {
@ApiModelProperty
(
value
=
"上级审核人id"
)
private
Integer
userCId
;
/**
* 审核人
*/
@ApiModelProperty
(
value
=
"checkC"
)
@Column
(
name
=
"checkC_name"
)
private
String
checkCName
=
""
;
/**
* 核查时间
*/
...
...
dev-confirmcheck/src/main/java/com/tykj/dev/device/confirmcheck/service/impl/ConfirmCheckServiceImpl.java
浏览文件 @
231bb82f
...
...
@@ -18,6 +18,7 @@ import com.tykj.dev.device.confirmcheck.repository.DeviceCheckBillDao;
import
com.tykj.dev.device.confirmcheck.repository.DeviceCheckDetailDao
;
import
com.tykj.dev.device.confirmcheck.repository.DeviceCheckPeriodDao
;
import
com.tykj.dev.device.confirmcheck.repository.DeviceCheckStatDao
;
import
com.tykj.dev.device.confirmcheck.service.CheckUnitService
;
import
com.tykj.dev.device.confirmcheck.service.ConfirmCheckService
;
import
com.tykj.dev.device.confirmcheck.utils.ObjTransUtil
;
import
com.tykj.dev.device.library.repository.DeviceLibraryDao
;
...
...
@@ -32,6 +33,7 @@ import com.tykj.dev.device.user.subject.dao.UnitsDao;
import
com.tykj.dev.device.user.subject.entity.Area
;
import
com.tykj.dev.device.user.subject.entity.Units
;
import
com.tykj.dev.device.user.subject.entity.User
;
import
com.tykj.dev.device.user.subject.service.UnitsService
;
import
com.tykj.dev.device.user.subject.service.UserService
;
import
com.tykj.dev.misc.exception.ApiException
;
import
com.tykj.dev.misc.utils.JacksonUtil
;
...
...
@@ -76,6 +78,9 @@ import static java.util.stream.Collectors.*;
@Service
public
class
ConfirmCheckServiceImpl
implements
ConfirmCheckService
,
CommandLineRunner
{
@Autowired
private
UnitsService
unitsService
;
@Autowired
private
DeviceCheckStatDao
statDao
;
...
...
@@ -263,7 +268,7 @@ public class ConfirmCheckServiceImpl implements ConfirmCheckService, CommandLine
List
<
CheckDeviceStatVo
>
countyVo
=
regionMap
.
get
(
true
);
// 市级数据
Map
<
String
,
CheckDeviceStatVo
>
map
=
regionMap
.
get
(
false
).
stream
()
.
collect
(
toMap
(
d
->
d
.
getDeviceModel
()
+
d
.
getDeviceName
(),
Function
.
identity
()));
.
collect
(
toMap
(
d
->
d
.
getDeviceModel
()
+
d
.
getDeviceName
(),
Function
.
identity
()));
//查找区域数据内的父级地区(即市),将数据count数据add进去(通过两次get),将areaList数据也加进去
...
...
@@ -272,8 +277,8 @@ public class ConfirmCheckServiceImpl implements ConfirmCheckService, CommandLine
String
cityName
=
areaCache
.
findFatherByName
(
couName
).
getName
();
//把相同型号与名字的的区级的数据merge到市级即可,没有的话改个名加进去
Integer
cityStatId
=
areaStatIdMap
.
get
(
cityName
);
map
.
computeIfPresent
(
v
.
getDeviceModel
()
+
v
.
getDeviceName
(),
(
k
,
value
)
->
value
.
reduce
(
v
,
cityName
,
cityStatId
));
map
.
computeIfAbsent
(
v
.
getDeviceModel
()
+
v
.
getDeviceName
(),
k
->
{
map
.
computeIfPresent
(
v
.
getDeviceModel
()
+
v
.
getDeviceName
(),
(
k
,
value
)
->
value
.
reduce
(
v
,
cityName
,
cityStatId
));
map
.
computeIfAbsent
(
v
.
getDeviceModel
()
+
v
.
getDeviceName
(),
k
->
{
v
.
getAreaStatList
().
forEach
(
area
->
area
.
setAreaName
(
cityName
));
return
v
;
});
...
...
@@ -300,7 +305,7 @@ public class ConfirmCheckServiceImpl implements ConfirmCheckService, CommandLine
List
<
CheckDeviceStatVo
>
cityStatVo
=
new
ArrayList
<>();
statVoListCopy2
.
stream
()
.
filter
(
stat
->
cityNames
.
contains
(
stat
.
getAreaStatList
().
get
(
0
).
getAreaName
()))
.
collect
(
Collectors
.
groupingBy
(
d
->
d
.
getDeviceModel
()
+
d
.
getDeviceName
(),
reducing
(
CheckDeviceStatVo:
:
reduce
)))
.
collect
(
Collectors
.
groupingBy
(
d
->
d
.
getDeviceModel
()
+
d
.
getDeviceName
(),
reducing
(
CheckDeviceStatVo:
:
reduce
)))
.
forEach
((
k
,
v
)
->
cityStatVo
.
add
(
v
.
get
()));
csd
.
setStatInfo
(
JacksonUtil
.
toJSon
(
cityStatVo
));
}
...
...
@@ -312,57 +317,67 @@ public class ConfirmCheckServiceImpl implements ConfirmCheckService, CommandLine
/**
* 根据关键字查询报告列表
*
* @return {@link CheckStatTableVo} 's List
*/
@Override
public
Page
<
CheckStatTableVo
>
findAllStatTable
(
CheckBillSelectVo
checkBillSelectVo
)
{
//过滤出顶级节点 过滤逻辑是1.自己就是父节点2.自己的customInfo = exam or check
List
<
TaskBto
>
topStatList
=
taskService
.
findBillType
(
7
);
List
<
Integer
>
topIdList
=
topStatList
.
stream
()
.
filter
(
taskBto
->
taskBto
.
getParentTaskId
().
equals
(
0
)
||
taskBto
.
getParentTaskId
()
==
null
||
taskBto
.
getCustomInfo
().
equals
(
"exam"
))
.
filter
(
taskBto
->
{
if
(
unitsService
.
isProvUnit
(
checkBillSelectVo
.
getUnitId
()))
{
return
(
taskBto
.
getParentTaskId
().
equals
(
0
)
||
taskBto
.
getParentTaskId
()
==
null
)
&&
(
"exam"
.
equals
(
taskBto
.
getCustomInfo
())
||
"check"
.
equals
(
taskBto
.
getCustomInfo
()));
}
else
{
return
taskBto
.
getBusinessType
()
==
7
&&
taskBto
.
getOwnUnit
().
equals
(
checkBillSelectVo
.
getUnitId
());
}
})
.
map
(
TaskBto:
:
getBillId
)
.
collect
(
toList
());
List
<
CheckStatTableVo
>
tableVos
=
statDao
.
findAll
(
checkBillSelectVo
.
getPageable
().
getSort
()).
stream
()
.
filter
(
deviceCheckStat
->
!
"[]"
.
equals
(
deviceCheckStat
.
getStatInfo
()))
.
map
(
objTransUtil:
:
stat2TableVo
)
.
filter
(
vo
->
keywordFilter
(
vo
,
checkBillSelectVo
.
getKeyword
()))
.
filter
(
v
->
topIdList
.
contains
(
v
.
getId
()))
.
filter
(
v1
->
unitIdFilter
(
v1
,
checkBillSelectVo
.
getUnitId
()))
.
filter
(
v
->
topIdList
.
contains
(
v
.
getId
()))
.
filter
(
v1
->
unitIdFilter
(
v1
,
checkBillSelectVo
.
getUnitId
()))
.
collect
(
Collectors
.
toList
());
//市级需要添加详情账单信息
Units
unit
=
unitsRepo
.
findById
(
checkBillSelectVo
.
getUnitId
()).
get
();
if
(
unit
.
getLevel
()
==
2
)
{
Specification
<
DeviceCheckDetail
>
pred
=
Specifications
.<
DeviceCheckDetail
>
and
()
.
eq
(
"checkUnitId"
,
checkBillSelectVo
.
getUnitId
())
.
build
();
List
<
CheckDetailVo
>
detailVoList
=
detailRepo
.
findAll
(
pred
).
stream
()
.
map
(
transUtil:
:
CheckDetailDo2Vo
)
.
collect
(
toList
());
List
<
CheckStatTableVo
>
cityDetailToStatList
=
detailVoList
.
stream
().
map
(
checkDetailVo
->
{
CheckStatTableVo
checkStatTableVo
=
new
CheckStatTableVo
();
checkStatTableVo
.
setId
(
checkDetailVo
.
getId
());
String
[]
titles
=
checkDetailVo
.
getTitle
().
split
(
"\\%\\^\\&"
);
if
(
titles
.
length
>
1
)
{
checkStatTableVo
.
setTitle
(
titles
[
1
]);
}
checkStatTableVo
.
setShowType
(
1
);
checkStatTableVo
.
setCreateTime
(
TimestampUtil
.
dateToLocalDateTime
(
checkDetailVo
.
getCheckTime
()));
//设置完成情况
List
<
TaskUserVo
>
taskUserVos
=
taskService
.
findByBillIdAndBusinessType
(
checkDetailVo
.
getId
(),
8
)
.
stream
().
map
(
Task:
:
parse2Bto
).
map
(
TaskBto:
:
toVo
).
collect
(
toList
());
if
(
taskUserVos
.
size
()
==
1
)
{
checkStatTableVo
.
setCompletion
(
taskUserVos
.
get
(
0
).
getStatus
());
}
return
checkStatTableVo
;
}).
collect
(
toList
());
tableVos
.
addAll
(
cityDetailToStatList
);
}
return
PageUtil
.
getPerPage
(
checkBillSelectVo
.
getPage
(),
checkBillSelectVo
.
getSize
(),
tableVos
,
checkBillSelectVo
.
getPageable
());
// Units unit = unitsRepo.findById(checkBillSelectVo.getUnitId()).get();
// if (unit.getLevel() == 2) {
// Specification<DeviceCheckDetail> pred = Specifications.<DeviceCheckDetail>and()
// .eq("checkUnitId", checkBillSelectVo.getUnitId())
// .build();
// List<CheckDetailVo> detailVoList = detailRepo.findAll(pred).stream()
// .map(transUtil::CheckDetailDo2Vo)
// .collect(toList());
// List<CheckStatTableVo> cityDetailToStatList = detailVoList.stream().map(checkDetailVo -> {
// CheckStatTableVo checkStatTableVo = new CheckStatTableVo();
// checkStatTableVo.setId(checkDetailVo.getId());
// String[] titles = checkDetailVo.getTitle().split("\\%\\^\\&");
// if (titles.length > 1) {
// checkStatTableVo.setTitle(titles[1]);
// }
//
// checkStatTableVo.setShowType(1);
// checkStatTableVo.setCreateTime(TimestampUtil.dateToLocalDateTime(checkDetailVo.getCheckTime()));
// //设置完成情况
// List<TaskUserVo> taskUserVos = taskService.findByBillIdAndBusinessType(checkDetailVo.getId(), 8)
// .stream().map(Task::parse2Bto).map(TaskBto::toVo).collect(toList());
// if (taskUserVos.size() == 1) {
// checkStatTableVo.setCompletion(taskUserVos.get(0).getStatus());
// }
// return checkStatTableVo;
// }).collect(toList());
// tableVos.addAll(cityDetailToStatList);
// }
return
PageUtil
.
getPerPage
(
checkBillSelectVo
.
getPage
(),
checkBillSelectVo
.
getSize
(),
tableVos
,
checkBillSelectVo
.
getPageable
());
}
...
...
@@ -537,7 +552,7 @@ public class ConfirmCheckServiceImpl implements ConfirmCheckService, CommandLine
if
(
unitId
==
null
)
{
return
true
;
}
else
{
TaskBto
taskBto
=
taskService
.
findByBillIdAndBusinessTypeIsNotCustomInfo
(
vo
.
getId
(),
7
);
TaskBto
taskBto
=
taskService
.
findByBillIdAndBusinessTypeIsNotCustomInfo
(
vo
.
getId
(),
7
);
List
<
Integer
>
userIds
=
userService
.
findAllByUnite
(
unitId
).
stream
().
map
(
User:
:
getUserId
).
collect
(
toList
());
userIds
.
retainAll
(
taskBto
.
getInvolveUserIdList
());
return
taskBto
.
getOwnUnit
().
equals
(
unitId
);
...
...
dev-task/src/main/java/com/tykj/dev/device/task/service/impl/TaskServiceImpl.java
浏览文件 @
231bb82f
...
...
@@ -1268,7 +1268,7 @@ public class TaskServiceImpl implements TaskService {
.
filter
(
o
->
{
if
(
o
.
getExhibit
()
==
null
)
{
return
true
;
}
else
return
!
o
.
getExhibit
().
equals
(
"-1"
);
}
else
{
return
!
o
.
getExhibit
().
equals
(
"-1"
);}
})
.
map
(
Task:
:
parse2Bto
)
.
collect
(
Collectors
.
toList
());
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论