Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
amos-boot-biz
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
项目统一框架
amos-boot-biz
Commits
ff3abd7b
Commit
ff3abd7b
authored
Apr 01, 2024
by
zhangsen
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
任务23711 关键数据消防水池可用时间功能开发
parent
2f4001fc
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
62 additions
and
14 deletions
+62
-14
SupervisionConfigureController.java
...quipmanage/controller/SupervisionConfigureController.java
+55
-10
FormInstanceEquipServiceImpl.java
...quipmanage/service/impl/FormInstanceEquipServiceImpl.java
+1
-1
FireFightingSystemMapper.xml
...ip/src/main/resources/mapper/FireFightingSystemMapper.xml
+6
-3
No files found.
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/controller/SupervisionConfigureController.java
View file @
ff3abd7b
...
...
@@ -3,14 +3,17 @@ package com.yeejoin.equipmanage.controller;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONArray
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.boot.biz.common.bo.ReginParams
;
import
com.yeejoin.equipmanage.common.entity.EquipmentSpecificIndex
;
import
com.yeejoin.equipmanage.common.entity.FormInstanceEquip
;
import
com.yeejoin.equipmanage.common.enums.IndexStatusEnum
;
import
com.yeejoin.equipmanage.common.utils.*
;
import
com.yeejoin.equipmanage.config.PersonIdentify
;
import
com.yeejoin.equipmanage.fegin.IotFeign
;
import
com.yeejoin.equipmanage.mapper.FireFightingSystemMapper
;
import
com.yeejoin.equipmanage.mapper.FormInstanceEquipMapper
;
import
com.yeejoin.equipmanage.service.*
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
...
...
@@ -66,6 +69,9 @@ public class SupervisionConfigureController extends AbstractBaseController {
@Value
(
"${equipment.pressurepump.start}"
)
private
String
pressurePumpStart
;
@Autowired
private
FormInstanceEquipMapper
formInstanceEquipMapper
;
@PersonIdentify
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
...
...
@@ -106,17 +112,56 @@ public class SupervisionConfigureController extends AbstractBaseController {
}
else
{
m
.
put
(
"levelAbs"
,
transResult
.
get
(
"abs"
));
}
if
(
m
.
containsKey
(
"pumpDeviceId"
)
&&
!
ObjectUtils
.
isEmpty
(
m
.
get
(
"pumpDeviceId"
)))
{
List
<
String
>
pumpDeviceIds
=
Arrays
.
asList
(
m
.
get
(
"pumpDeviceId"
).
toString
().
split
(
","
));
LambdaQueryWrapper
<
FormInstanceEquip
>
wrapper
=
new
LambdaQueryWrapper
<>();
wrapper
.
in
(
FormInstanceEquip:
:
getInstanceId
,
pumpDeviceIds
);
wrapper
.
eq
(
FormInstanceEquip:
:
getFieldName
,
"outputFlowRate"
);
List
<
FormInstanceEquip
>
formInstanceEquips
=
formInstanceEquipMapper
.
selectList
(
wrapper
);
Map
<
Long
,
String
>
collect
=
formInstanceEquips
.
stream
().
collect
(
Collectors
.
toMap
(
FormInstanceEquip:
:
getInstanceId
,
FormInstanceEquip:
:
getFieldValue
));
List
<
String
>
dataInfo
=
new
ArrayList
<>();
int
i
=
1
;
double
addFlowRate
=
0.0
;
List
<
Map
<
String
,
Object
>>
info
=
new
ArrayList
<>();
for
(
String
pumpDeviceId
:
pumpDeviceIds
)
{
HashMap
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"pumpDeviceId"
,
pumpDeviceId
);
map
.
put
(
"outputFlowRate"
,
collect
.
getOrDefault
(
Long
.
valueOf
(
pumpDeviceId
),
"0"
));
info
.
add
(
map
);
}
// 计算可使用时间:储水量(L) / 出口流量(L/s), 单位为小时
float
outputFlowRate
=
Float
.
parseFloat
(
m
.
getOrDefault
(
"outputFlowRate"
,
"0"
).
toString
());
if
(
levelAbsLiter
.
compareTo
(
new
BigDecimal
(
0
))
!=
0
&&
outputFlowRate
!=
0
)
{
double
availableSeconds
=
levelAbsLiter
.
divide
(
new
BigDecimal
(
outputFlowRate
),
0
,
RoundingMode
.
HALF_UP
).
doubleValue
();
double
availableHours
=
availableSeconds
/
3600.0
;
m
.
put
(
"availableTime"
,
String
.
format
(
"%.1fh"
,
availableHours
));
// 启动一台时
m
.
put
(
"availableTimeOnStartTwo"
,
String
.
format
(
"%.1fh"
,
availableHours
/
2
));
// 启动两台时
}
else
{
m
.
put
(
"availableTime"
,
"--"
);
m
.
put
(
"availableTimeOnStartTwo"
,
"--"
);
// 按流量排序
Collections
.
sort
(
info
,
new
Comparator
<
Map
<
String
,
Object
>>()
{
@Override
public
int
compare
(
Map
<
String
,
Object
>
o1
,
Map
<
String
,
Object
>
o2
)
{
Float
bl1
=
Float
.
valueOf
(
o1
.
get
(
"outputFlowRate"
).
toString
());
Float
bl2
=
Float
.
valueOf
(
o2
.
get
(
"outputFlowRate"
).
toString
());
return
bl2
.
compareTo
(
bl1
);
}
});
for
(
Map
<
String
,
Object
>
map
:
info
)
{
String
message
=
"启动%s台消防泵可使用时间≈%s"
;
String
availableTimeFirst
=
"0.0"
;
// 计算可使用时间:储水量(L) / 出口流量(L/s), 单位为小时
float
outputFlowRate
=
Float
.
parseFloat
(
map
.
getOrDefault
(
"outputFlowRate"
,
"0"
).
toString
());
addFlowRate
=
outputFlowRate
+
addFlowRate
;
if
(
levelAbsLiter
.
compareTo
(
new
BigDecimal
(
0
))
!=
0
&&
addFlowRate
!=
0
)
{
double
availableSeconds
=
levelAbsLiter
.
divide
(
BigDecimal
.
valueOf
(
addFlowRate
),
0
,
RoundingMode
.
HALF_UP
).
doubleValue
();
double
availableHours
=
availableSeconds
/
3600.0
;
message
=
String
.
format
(
message
,
i
,
String
.
format
(
"%.1fh"
,
availableHours
));
// 启动一台时
availableTimeFirst
=
String
.
format
(
"%.1fh"
,
availableHours
);
}
else
{
message
=
String
.
format
(
message
,
i
,
"--"
);
availableTimeFirst
=
"--"
;
}
dataInfo
.
add
(
message
);
if
(
i
==
1
)
{
m
.
put
(
"availableTime"
,
availableTimeFirst
);
}
i
++;
}
m
.
put
(
"availableTimeInfo"
,
dataInfo
);
}
}
}
...
...
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/service/impl/FormInstanceEquipServiceImpl.java
View file @
ff3abd7b
...
...
@@ -52,7 +52,7 @@ public class FormInstanceEquipServiceImpl extends ServiceImpl<FormInstanceEquipM
@Autowired
private
Sequence
sequence
;
final
static
String
[]
list
=
{
"92031900"
,
"92011000"
,
"92010700"
,
"92032000"
};
final
static
String
[]
list
=
{
"92031900"
,
"92011000"
,
"92010700"
,
"92032000"
,
"92010600"
};
private
final
String
CODE
=
"code"
;
...
...
amos-boot-system-equip/src/main/resources/mapper/FireFightingSystemMapper.xml
View file @
ff3abd7b
...
...
@@ -4923,7 +4923,8 @@
ec.image,
r.resource_type,
r.sequence_nbr,
wes.code
wes.code,
ifnull(rp.pump_device_id, '') as pumpDeviceId
FROM
cb_water_resource r
LEFT JOIN cb_water_resource_pool rp ON rp.resource_id = r.sequence_nbr
...
...
@@ -4953,7 +4954,8 @@
a.image,
a.resource_type,
a.sequence_nbr,
a.code
a.code,
a.pumpDeviceId
FROM
(
SELECT
...
...
@@ -4982,7 +4984,8 @@
r.resource_type,
r.sequence_nbr,
rp.level_device_id,
wes.code
wes.code,
ifnull(rp.pump_device_id, '') as pumpDeviceId
FROM
cb_water_resource r
LEFT JOIN cb_water_resource_pool rp ON rp.resource_id = r.sequence_nbr
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment