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
3539ed33
Commit
3539ed33
authored
Oct 07, 2023
by
李秀明
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix(equip): 装备信息卡接口数据修改
parent
937b4a5d
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
292 additions
and
54 deletions
+292
-54
EquipmentDetail.java
...om/yeejoin/equipmanage/common/entity/EquipmentDetail.java
+24
-0
EquipmentSpecific.java
.../yeejoin/equipmanage/common/entity/EquipmentSpecific.java
+14
-8
QRCodeUtil.java
...java/com/yeejoin/equipmanage/common/utils/QRCodeUtil.java
+40
-2
EquipmentDetailController.java
...oin/equipmanage/controller/EquipmentDetailController.java
+6
-24
EquipmentDetailMapper.java
...com/yeejoin/equipmanage/mapper/EquipmentDetailMapper.java
+3
-0
EquipmentSpecificMapper.java
...m/yeejoin/equipmanage/mapper/EquipmentSpecificMapper.java
+8
-6
IEquipmentDetailService.java
.../yeejoin/equipmanage/service/IEquipmentDetailService.java
+7
-1
IEquipmentSpecificSerivce.java
...eejoin/equipmanage/service/IEquipmentSpecificSerivce.java
+2
-0
EquipmentDetailServiceImpl.java
.../equipmanage/service/impl/EquipmentDetailServiceImpl.java
+144
-4
EquipmentSpecificSerivceImpl.java
...quipmanage/service/impl/EquipmentSpecificSerivceImpl.java
+9
-4
EquipmentDetailMapper.xml
...equip/src/main/resources/mapper/EquipmentDetailMapper.xml
+14
-0
EquipmentSpecificMapper.xml
...uip/src/main/resources/mapper/EquipmentSpecificMapper.xml
+21
-5
No files found.
amos-boot-module/amos-boot-module-api/amos-boot-module-equip-api/src/main/java/com/yeejoin/equipmanage/common/entity/EquipmentDetail.java
View file @
3539ed33
...
...
@@ -185,4 +185,28 @@ public class EquipmentDetail extends BaseEntity {
@TableField
(
exist
=
false
)
private
List
<
UploadFile
>
operation
;
@TableField
(
exist
=
false
)
@ApiModelProperty
(
"二维码图片Base64"
)
private
String
qrCodeImage
;
@TableField
(
exist
=
false
)
@ApiModelProperty
(
"到期应报废日期"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
)
private
Date
scrapDate
;
@TableField
(
exist
=
false
)
@ApiModelProperty
(
"剩余服役天数"
)
private
Integer
remainingDays
;
@TableField
(
exist
=
false
)
@ApiModelProperty
(
"上次维修时间"
)
private
Date
lastRepairTime
;
@TableField
(
exist
=
false
)
@ApiModelProperty
(
"下次维修时间"
)
private
Date
nextRepairTime
;
@TableField
(
exist
=
false
)
@ApiModelProperty
(
"实时信号"
)
private
String
signal
;
}
amos-boot-module/amos-boot-module-api/amos-boot-module-equip-api/src/main/java/com/yeejoin/equipmanage/common/entity/EquipmentSpecific.java
View file @
3539ed33
...
...
@@ -10,6 +10,8 @@ import io.swagger.annotations.ApiModelProperty;
import
lombok.Data
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Map
;
/**
* @author ZeHua Li
...
...
@@ -60,7 +62,7 @@ public class EquipmentSpecific extends BaseEntity {
@ApiModelProperty
(
value
=
"所属单位id(来源于平台)"
)
@TableField
(
"agency_id"
)
private
String
agencyId
;
@ApiModelProperty
(
value
=
"所属单位名称(来源于平台)"
)
@TableField
(
"agency_name"
)
private
String
agencyName
;
...
...
@@ -72,23 +74,23 @@ public class EquipmentSpecific extends BaseEntity {
@ApiModelProperty
(
value
=
"队伍名称(冗余字段来源于平台)"
)
@TableField
(
"team_name"
)
private
String
teamName
;
@ApiModelProperty
(
value
=
"实时指标名称"
)
@TableField
(
"realtime_iot_index_name"
)
private
String
realtimeIotIndexName
;
@ApiModelProperty
(
value
=
"实时指标编码"
)
@TableField
(
"realtime_iot_index_key"
)
private
String
realtimeIotIndexKey
;
@ApiModelProperty
(
value
=
"实时指标值"
)
@TableField
(
"realtime_iot_index_value"
)
private
String
realtimeIotIndexValue
;
@ApiModelProperty
(
value
=
"实时指标id(wl_equipment_specific_index_id)"
)
@TableField
(
"realtime_iot_es_index_id"
)
private
Long
realtimeIotEsIndexId
;
@ApiModelProperty
(
value
=
"指标id(wl_equipment_index_id)"
)
@TableField
(
"realtime_iot_index_id"
)
private
Long
realtimeIotIndexId
;
...
...
@@ -96,12 +98,12 @@ public class EquipmentSpecific extends BaseEntity {
@ApiModelProperty
(
value
=
"实时指标更新时间"
)
@TableField
(
"realtime_iot_index_update_date"
)
private
Date
realtimeIotIndexUpdateDate
;
@ApiModelProperty
(
value
=
"物联设备实时状态,默认0表示正常(绿色#00ff00),1为故障类(黄色 #ffd500),2为火警类(红色#ff0000)"
)
@TableField
(
"equip_status"
)
private
String
equipStatus
=
"0"
;
@ApiModelProperty
(
value
=
"完整二维码"
)
@TableField
(
exist
=
false
)
private
String
fullqrCode
;
...
...
@@ -186,4 +188,8 @@ public class EquipmentSpecific extends BaseEntity {
@ApiModelProperty
(
value
=
"指标单位"
)
@TableField
(
exist
=
false
)
private
String
unit
;
@ApiModelProperty
(
value
=
"指标参数"
)
@TableField
(
exist
=
false
)
private
List
<
Map
<
String
,
Object
>>
indexParameter
;
}
amos-boot-module/amos-boot-module-api/amos-boot-module-equip-api/src/main/java/com/yeejoin/equipmanage/common/utils/QRCodeUtil.java
View file @
3539ed33
...
...
@@ -169,12 +169,26 @@ public class QRCodeUtil {
* @return String 图片base64
*/
public
static
String
genQrCodeBase64PngWithWord
(
String
text
,
int
width
,
int
height
,
String
word
,
int
wordHeight
)
{
return
genQrCodeBase64PngWithWord
(
text
,
width
,
height
,
word
,
wordHeight
,
-
1
);
}
/**
* 生成带文字说明的二维码
*
* @param text 二维码内容
* @param width 二维码宽度
* @param height 二维码高度
* @param word 二维码下方文字说明
* @param wordHeight 二维码下方文字高度
* @return String 图片base64
*/
public
static
String
genQrCodeBase64PngWithWord
(
String
text
,
int
width
,
int
height
,
String
word
,
int
wordHeight
,
int
type
)
{
ByteArrayOutputStream
outputStream
;
Base64
.
Encoder
encoder
;
try
{
QRCodeWriter
qrCodeWriter
=
new
QRCodeWriter
();
BitMatrix
bitMatrix
=
qrCodeWriter
.
encode
(
text
,
BarcodeFormat
.
QR_CODE
,
width
,
height
);
BufferedImage
image
=
MatrixToImageWriter
.
toBufferedImage
(
bitMatrix
);
BufferedImage
image
=
type
==
-
1
?
MatrixToImageWriter
.
toBufferedImage
(
bitMatrix
)
:
toBufferedImage
(
bitMatrix
,
type
);
BufferedImage
outImage
=
null
;
if
(
StringUtils
.
isNotBlank
(
word
))
{
outImage
=
new
BufferedImage
(
width
,
wordHeight
,
BufferedImage
.
TYPE_4BYTE_ABGR
);
...
...
@@ -191,7 +205,7 @@ public class QRCodeUtil {
//长度过长就截取超出二维码宽度部分换行
if
(
strWidth
>
width
)
{
String
serialNum1
=
word
.
substring
(
0
,
grow
);
String
serialNum2
=
word
.
substring
(
grow
,
word
.
length
()
);
String
serialNum2
=
word
.
substring
(
grow
);
outg
.
drawString
(
serialNum1
,
5
,
image
.
getHeight
()
+
(
outImage
.
getHeight
()
-
image
.
getHeight
())
/
2
);
BufferedImage
outImage2
=
new
BufferedImage
(
width
,
wordHeight
,
BufferedImage
.
TYPE_4BYTE_ABGR
);
Graphics2D
outg2
=
outImage2
.
createGraphics
();
...
...
@@ -262,6 +276,30 @@ public class QRCodeUtil {
return
null
;
}
/**
* image流数据处理
*/
private
static
BufferedImage
toBufferedImage
(
BitMatrix
matrix
,
Integer
type
)
{
int
width
=
matrix
.
getWidth
();
int
height
=
matrix
.
getHeight
();
BufferedImage
image
=
new
BufferedImage
(
width
,
height
,
BufferedImage
.
TYPE_INT_RGB
);
for
(
int
x
=
0
;
x
<
width
;
x
++)
{
for
(
int
y
=
0
;
y
<
height
;
y
++)
{
if
(
1
==
type
)
{
// 红色
image
.
setRGB
(
x
,
y
,
matrix
.
get
(
x
,
y
)
?
0xDD4747
:
0xFFFFFFFF
);
}
else
if
(
2
==
type
)
{
// 黄色
image
.
setRGB
(
x
,
y
,
matrix
.
get
(
x
,
y
)
?
0xEE854E
:
0xFFFFFFFF
);
}
else
{
// 绿色
image
.
setRGB
(
x
,
y
,
matrix
.
get
(
x
,
y
)
?
0x2DBD8D
:
0xFFFFFFFF
);
}
}
}
return
image
;
}
public
static
void
main
(
String
[]
args
)
{
System
.
out
.
println
(
genQrCodeBase64Png
(
"101"
,
100
,
100
));
System
.
out
.
println
(
genQrCodeBase64PngWithWord
(
"101"
,
100
,
100
,
"sd"
,
100
));
...
...
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/controller/EquipmentDetailController.java
View file @
3539ed33
package
com
.
yeejoin
.
equipmanage
.
controller
;
import
com.alibaba.fastjson.JSONObject
;
import
com.baomidou.mybatisplus.core.conditions.Wrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.boot.biz.common.bo.ReginParams
;
import
com.yeejoin.amos.boot.biz.common.dto.OrgMenuDto
;
...
...
@@ -15,6 +17,7 @@ import com.yeejoin.equipmanage.common.entity.*;
import
com.yeejoin.equipmanage.common.entity.vo.EquipmentDetailDownloadVO
;
import
com.yeejoin.equipmanage.common.enums.EquipQrcodeColorEnum
;
import
com.yeejoin.equipmanage.common.enums.ExcelEnums
;
import
com.yeejoin.equipmanage.common.enums.FileTypeEnum
;
import
com.yeejoin.equipmanage.common.enums.SourceTypeEnum
;
import
com.yeejoin.equipmanage.common.utils.*
;
import
com.yeejoin.equipmanage.common.vo.EquipmentDate
;
...
...
@@ -27,6 +30,7 @@ import com.yeejoin.equipmanage.utils.ExcelUtil;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiParam
;
import
liquibase.pro.packaged.S
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -34,6 +38,7 @@ import org.springframework.beans.factory.annotation.Value;
import
org.springframework.context.annotation.Lazy
;
import
org.springframework.http.MediaType
;
import
org.springframework.scheduling.annotation.Async
;
import
org.springframework.util.CollectionUtils
;
import
org.springframework.util.ObjectUtils
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.multipart.MultipartFile
;
...
...
@@ -216,29 +221,7 @@ public class EquipmentDetailController extends AbstractBaseController {
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"根据id查询"
,
notes
=
"根据id查询"
)
public
EquipmentDate
selectequipmentDateById
(
@RequestParam
Long
id
,
@RequestParam
(
required
=
false
)
Long
stockDetailId
)
{
EquipmentDate
equipmentDate
=
new
EquipmentDate
();
EquipmentSpecific
equipmentSpecific
=
equipmentSpecificSerivce
.
getById
(
id
);
equipmentSpecific
.
setFullqrCode
(
"01#"
+
equipmentSpecific
.
getQrCode
());
EquipmentDetail
equipmentDetail
=
iEquipmentDetailService
.
getOneById
(
equipmentSpecific
.
getEquipmentDetailId
());
StockDetail
stockDetail
=
null
;
if
(
stockDetailId
!=
null
)
{
//解决灭火药剂,有多个货位状态问题
stockDetail
=
stockDetailMapper
.
selectById
(
stockDetailId
);
equipmentSpecific
.
setStockDetail
(
stockDetail
);
}
else
{
//消防装备默认分支
List
<
StockDetail
>
stockDetails
=
stockDetailMapper
.
selectList
(
new
LambdaQueryWrapper
<
StockDetail
>().
eq
(
StockDetail:
:
getEquipmentSpecificId
,
id
));
if
(!
stockDetails
.
isEmpty
())
{
stockDetail
=
stockDetails
.
get
(
0
);
equipmentSpecific
.
setStockDetail
(
stockDetail
);
}
}
if
(
stockDetail
!=
null
)
{
equipmentSpecific
.
setStock
(
iStockService
.
getById
(
stockDetail
.
getStockId
()));
}
equipmentDate
.
setEquipmentDetail
(
equipmentDetail
);
equipmentDate
.
setEquipmentSpecific
(
equipmentSpecific
);
return
equipmentDate
;
return
iEquipmentDetailService
.
getEquipmentBasicInformation
(
id
,
stockDetailId
);
}
@RequestMapping
(
value
=
"/selectequipmentDateByCode"
,
method
=
RequestMethod
.
GET
)
...
...
@@ -828,5 +811,4 @@ public class EquipmentDetailController extends AbstractBaseController {
PermissionInterceptorContext
.
setDataAuthRule
(
"fire_equip_info"
);
return
ResponseHelper
.
buildResponse
(
reginParams
);
}
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/mapper/EquipmentDetailMapper.java
View file @
3539ed33
...
...
@@ -8,6 +8,7 @@ import org.apache.ibatis.annotations.Mapper;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
import
java.util.Map
;
/**
* Mapper 接口
...
...
@@ -37,4 +38,6 @@ public interface EquipmentDetailMapper extends BaseMapper<EquipmentDetail> {
String
checkDelete
(
Long
id
);
List
<
Long
>
getWareId
(
@Param
(
"id"
)
Long
id
);
Map
<
String
,
Object
>
selectEquipScrapDate
(
@Param
(
"id"
)
Long
id
);
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/mapper/EquipmentSpecificMapper.java
View file @
3539ed33
...
...
@@ -68,9 +68,9 @@ public interface EquipmentSpecificMapper extends BaseMapper<EquipmentSpecific> {
List
<
PointTreeVo
>
getSceList
(
@Param
(
"orgCode"
)
String
orgCode
);
List
<
EquipmentSpecificIndex
>
getEquipMentStatus
(
@Param
(
"id"
)
String
id
);
List
<
EquipmentSpecificIndex
>
getEquipIndexLatestStatus
();
/**
* 根据画布id获取画布绑定设备最新指标状态
* @param sceneId
...
...
@@ -249,7 +249,7 @@ public interface EquipmentSpecificMapper extends BaseMapper<EquipmentSpecific> {
List
<
Map
<
String
,
String
>>
getStationInfo
();
List
<
Map
<
String
,
Object
>>
getFireMonitorInfo
(
@Param
(
"equipmentId"
)
Long
fireEquipmentId
,
@Param
(
"list"
)
String
[]
strings
);
List
<
Map
<
String
,
Object
>>
getFirePumpInfo
(
@Param
(
"list"
)
String
[]
strings
,
@Param
(
"bizOrgCode"
)
String
bizOrgCode
);
...
...
@@ -281,7 +281,7 @@ public interface EquipmentSpecificMapper extends BaseMapper<EquipmentSpecific> {
Map
<
String
,
Object
>
getStationCode
(
@Param
(
"id"
)
Long
id
);
EquipmentSpecific
getEquipSpecificEntityByCode
(
@Param
(
"code"
)
String
code
);
Integer
updateEquipSpecificStatus
(
String
status
,
String
id
);
String
getEquipStatusList
(
@Param
(
"id"
)
String
id
);
...
...
@@ -311,12 +311,14 @@ public interface EquipmentSpecificMapper extends BaseMapper<EquipmentSpecific> {
IPage
<
EquipTypeImgAmountVO
>
getMonitoringUnitList
(
@Param
(
"page"
)
IPage
page
,
@Param
(
"equipTypeAmountPage"
)
EquipTypeAmountPageDTO
equipTypeAmountPage
);
List
<
Map
<
String
,
Object
>>
getMonitoringCount
(
String
bizOrgCode
);
String
getEquipIdByCheckInputId
(
@Param
(
value
=
"id"
)
String
id
);
Map
<
String
,
Object
>
getMonitoringEquip
(
String
id
);
Map
<
String
,
Object
>
getMonitoringOther
(
String
id
);
void
updateEquipQrCode
(
List
<
String
>
ids
,
String
status
);
String
selectEquipRealtimeSignal
(
@Param
(
value
=
"id"
)
long
id
);
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/service/IEquipmentDetailService.java
View file @
3539ed33
...
...
@@ -5,8 +5,10 @@ import com.baomidou.mybatisplus.extension.service.IService;
import
com.yeejoin.amos.boot.biz.common.dto.OrgMenuDto
;
import
com.yeejoin.equipmanage.common.entity.EquProperty
;
import
com.yeejoin.equipmanage.common.entity.EquipmentDetail
;
import
com.yeejoin.equipmanage.common.vo.EquipmentDate
;
import
java.util.List
;
import
java.util.Map
;
/**
* 服务类
...
...
@@ -27,7 +29,7 @@ public interface IEquipmentDetailService extends IService<EquipmentDetail> {
boolean
removeOneById
(
long
id
);
Page
<
EquipmentDetail
>
page
(
Page
<
EquipmentDetail
>
pageBean
,
String
category
);
boolean
removeBatchById
(
List
<
Long
>
idList
);
boolean
quotaUpdate
(
List
<
EquProperty
>
e
);
...
...
@@ -36,4 +38,8 @@ public interface IEquipmentDetailService extends IService<EquipmentDetail> {
String
checkDelete
(
List
<
Long
>
ids
);
List
<
OrgMenuDto
>
companyDeptTree
();
Map
<
String
,
Object
>
getEquipScrapDate
(
long
id
);
EquipmentDate
getEquipmentBasicInformation
(
Long
id
,
Long
stockDetailId
);
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/service/IEquipmentSpecificSerivce.java
View file @
3539ed33
...
...
@@ -294,4 +294,6 @@ public interface IEquipmentSpecificSerivce extends IService<EquipmentSpecific> {
* 赋码
*/
void
updateEquipQrCode
(
List
<
Map
<
String
,
String
>>
ids
,
String
status
);
String
getEquipRealtimeSignal
(
long
id
);
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/service/impl/EquipmentDetailServiceImpl.java
View file @
3539ed33
...
...
@@ -2,8 +2,10 @@ package com.yeejoin.equipmanage.service.impl;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.baomidou.mybatisplus.core.conditions.Wrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.yeejoin.amos.boot.biz.common.dto.OrgMenuDto
;
...
...
@@ -11,19 +13,23 @@ import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import
com.yeejoin.equipmanage.common.entity.*
;
import
com.yeejoin.equipmanage.common.enums.BillContentEnum
;
import
com.yeejoin.equipmanage.common.enums.FileTypeEnum
;
import
com.yeejoin.equipmanage.common.utils.DateUtils
;
import
com.yeejoin.equipmanage.common.utils.QRCodeUtil
;
import
com.yeejoin.equipmanage.common.utils.StringUtil
;
import
com.yeejoin.equipmanage.common.vo.EquipmentDate
;
import
com.yeejoin.equipmanage.mapper.*
;
import
com.yeejoin.equipmanage.service.*
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.context.annotation.Lazy
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.CollectionUtils
;
import
org.springframework.util.ObjectUtils
;
import
org.typroject.tyboot.core.foundation.utils.Bean
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.text.ParseException
;
import
java.text.SimpleDateFormat
;
import
java.util.*
;
import
java.util.stream.Collectors
;
/**
...
...
@@ -63,6 +69,24 @@ public class EquipmentDetailServiceImpl extends ServiceImpl<EquipmentDetailMappe
@Autowired
private
IUnitService
iUnitService
;
@Autowired
private
IFireFightingSystemService
fireFightingSystemService
;
@Autowired
private
IStockDetailService
stockDetailService
;
@Autowired
@Lazy
private
IStockService
stockService
;
@Autowired
@Lazy
private
IEquipmentSpecificSerivce
equipmentSpecificService
;
@Autowired
private
IEquipmentIndexService
equipmentIndexService
;
@Lazy
@Autowired
private
IUploadFileService
iUploadFileService
;
...
...
@@ -137,6 +161,7 @@ public class EquipmentDetailServiceImpl extends ServiceImpl<EquipmentDetailMappe
manufacturerInfo
.
setImg
(
manufacturerInfo
.
getImg
());
}
equipmentDetail
.
setManufacturerInfo
(
manufacturerInfo
);
equipmentDetail
.
setManufacturerName
(
Objects
.
isNull
(
manufacturerInfo
)
?
""
:
manufacturerInfo
.
getName
());
equipmentDetail
.
setImg
(
getEquipFileList
(
id
,
FileTypeEnum
.
image
.
toString
()));
equipmentDetail
.
setVideo
(
getEquipFileList
(
id
,
FileTypeEnum
.
video
.
toString
()));
equipmentDetail
.
setCertification
(
getEquipFileList
(
id
,
FileTypeEnum
.
certificate
.
toString
()));
...
...
@@ -311,5 +336,120 @@ public class EquipmentDetailServiceImpl extends ServiceImpl<EquipmentDetailMappe
return
jcsRemoteService
.
getCompanyDeptTreeWithAuth
(
authKey
,
null
);
}
/**
* @param id
* @return
*/
@Override
public
Map
<
String
,
Object
>
getEquipScrapDate
(
long
id
)
{
return
equipmentDetailMapper
.
selectEquipScrapDate
(
id
);
}
/**
* 获取装备基本信息
*/
@Override
public
EquipmentDate
getEquipmentBasicInformation
(
Long
id
,
Long
stockDetailId
)
{
EquipmentDate
equipmentDate
=
new
EquipmentDate
();
EquipmentSpecific
equipmentSpecific
=
equipmentSpecificService
.
getById
(
id
);
equipmentSpecific
.
setFullqrCode
(
"01#"
+
equipmentSpecific
.
getQrCode
());
EquipmentDetail
equipmentDetail
=
this
.
getOneById
(
equipmentSpecific
.
getEquipmentDetailId
());
StockDetail
stockDetail
=
null
;
if
(
stockDetailId
!=
null
)
{
//解决灭火药剂,有多个货位状态问题
stockDetail
=
stockDetailService
.
getById
(
stockDetailId
);
equipmentSpecific
.
setStockDetail
(
stockDetail
);
}
else
{
//消防装备默认分支
List
<
StockDetail
>
stockDetails
=
stockDetailService
.
list
(
new
LambdaQueryWrapper
<
StockDetail
>().
eq
(
StockDetail:
:
getEquipmentSpecificId
,
id
));
if
(!
stockDetails
.
isEmpty
())
{
stockDetail
=
stockDetails
.
get
(
0
);
equipmentSpecific
.
setStockDetail
(
stockDetail
);
}
}
if
(
stockDetail
!=
null
)
{
equipmentSpecific
.
setStock
(
stockService
.
getById
(
stockDetail
.
getStockId
()));
}
// 到期应报废日期
Map
<
String
,
Object
>
scrapInfo
=
this
.
getEquipScrapDate
(
id
);
if
(
Objects
.
nonNull
(
scrapInfo
))
{
SimpleDateFormat
dateFormat
=
new
SimpleDateFormat
(
"yyyy-MM-dd"
);
String
planScrapDate
=
scrapInfo
.
getOrDefault
(
"planScrapDate"
,
""
).
toString
();
if
(
Objects
.
nonNull
(
planScrapDate
))
{
try
{
equipmentDetail
.
setScrapDate
(
dateFormat
.
parse
(
planScrapDate
));
}
catch
(
ParseException
e
)
{
log
.
error
(
"时间格式异常:"
,
e
);
}
}
// 剩余服役天数 = 报废日期 - 当前日期
String
scrapDate
=
scrapInfo
.
getOrDefault
(
"scrapDate"
,
""
).
toString
();
if
(
Objects
.
nonNull
(
scrapDate
))
{
Date
nowDate
=
DateUtils
.
getDateNow
();
try
{
Date
date
=
dateFormat
.
parse
(
scrapDate
);
int
i
=
DateUtils
.
dateBetween
(
date
,
nowDate
);
equipmentDetail
.
setRemainingDays
(
i
);
}
catch
(
ParseException
e
)
{
log
.
error
(
"时间格式异常:"
,
e
);
}
}
}
// 实时信号
String
signal
=
equipmentSpecificService
.
getEquipRealtimeSignal
(
id
);
equipmentDetail
.
setSignal
(
Objects
.
nonNull
(
signal
)
?
signal
:
"-"
);
// 二维码
String
equipStatus
=
equipmentSpecific
.
getEquipStatus
();
int
type
=
Objects
.
equals
(
equipStatus
,
"0"
)
?
3
:
1
;
String
qrCodeImage
=
QRCodeUtil
.
genQrCodeBase64PngWithWord
(
equipmentSpecific
.
getQrCode
(),
200
,
200
,
equipmentSpecific
.
getQrCode
(),
200
,
type
);
equipmentDetail
.
setQrCodeImage
(
qrCodeImage
);
// 消防系统
FireFightingSystemEntity
fireFightingSystem
=
fireFightingSystemService
.
getOneById
(
Long
.
valueOf
(
equipmentSpecific
.
getSystemId
()));
equipmentSpecific
.
setSystemName
(
Objects
.
isNull
(
fireFightingSystem
)
?
""
:
fireFightingSystem
.
getName
());
// } // 1640241257290686465
// 装备分类
Equipment
equipment
=
equipmentDetail
.
getEquipment
();
if
(
Objects
.
nonNull
(
equipment
))
{
EquipmentCategory
equipmentCategory
=
equipment
.
getEquipmentCategory
();
equipmentDetail
.
setCategoryName
(
equipmentCategory
.
getName
());
}
// 装备单位
if
(!
ObjectUtils
.
isEmpty
(
equipmentSpecific
.
getRealtimeIotIndexId
())){
EquipmentIndex
equipmentIndex
=
equipmentIndexService
.
getById
(
equipmentSpecific
.
getRealtimeIotIndexId
());
equipmentSpecific
.
setIsTrend
(
equipmentIndex
.
getIsTrend
());
equipmentSpecific
.
setUnit
(
equipmentIndex
.
getUnit
());
}
// 查询指标参数
Wrapper
<
EquipmentSpecificIndex
>
equipmentSpecificIndexWrapper
=
Wrappers
.<
EquipmentSpecificIndex
>
lambdaQuery
().
eq
(
EquipmentSpecificIndex:
:
getEquipmentSpecificId
,
id
);
List
<
EquipmentSpecificIndex
>
equipIndexList
=
equipmentSpecificIndexSerivce
.
list
(
equipmentSpecificIndexWrapper
);
List
<
Map
<
String
,
Object
>>
indexMaps
=
new
ArrayList
<>();
if
(!
CollectionUtils
.
isEmpty
(
equipIndexList
))
{
equipIndexList
.
forEach
(
v
->
{
Map
<
String
,
Object
>
indexMap
=
new
LinkedHashMap
<>();
indexMap
.
put
(
"equipmentIndexName"
,
v
.
getEquipmentIndexName
());
indexMap
.
put
(
"indexValue"
,
handleIndexValue
(
v
.
getValue
()));
indexMaps
.
add
(
indexMap
);
});
}
equipmentSpecific
.
setIndexParameter
(
indexMaps
);
equipmentDate
.
setEquipmentDetail
(
equipmentDetail
);
equipmentDate
.
setEquipmentSpecific
(
equipmentSpecific
);
return
equipmentDate
;
}
private
String
handleIndexValue
(
Object
indexValue
)
{
if
(!
ObjectUtils
.
isEmpty
(
indexValue
))
{
String
val
=
String
.
valueOf
(
indexValue
).
toUpperCase
();
switch
(
val
)
{
case
"TRUE"
:
return
"是"
;
case
"FALSE"
:
return
"否"
;
default
:
return
val
;
}
}
return
""
;
}
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-equip-biz/src/main/java/com/yeejoin/equipmanage/service/impl/EquipmentSpecificSerivceImpl.java
View file @
3539ed33
...
...
@@ -94,7 +94,7 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM
IStockBillDetailService
stockBillDetailService
;
@Autowired
IStockBillService
stockBillService
;
@Autowired
EquipmentSpecificAlarmMapper
equipmentSpecificAlarmMapper
;
@Autowired
...
...
@@ -203,7 +203,7 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM
@Value
(
"${systemctl.sync.switch}"
)
private
Boolean
syncSwitch
;
@Value
(
"${window.vedioFormat}"
)
String
vedioFormat
;
...
...
@@ -1082,7 +1082,7 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM
}
}
public
void
delEquipmentSpecificSyncData
(
Long
id
){
//数据同步
syncDataService
.
syncDeletedEquipmentSpecific
(
Arrays
.
asList
(
id
));
...
...
@@ -1690,7 +1690,7 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM
// 已入库
this
.
baseMapper
.
deleteEquipDataByStockDetailId
(
stockDetail
.
getId
(),
specificId
);
}
if
(
syncSwitch
)
{
//数据同步
delEquipmentSpecificSyncData
(
specificId
);
...
...
@@ -2192,4 +2192,9 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM
idxFeign
.
cleanQrcode
(
specificIndexId
,
equipId
,
"equip"
);
}
}
@Override
public
String
getEquipRealtimeSignal
(
long
id
)
{
return
equipmentSpecificMapper
.
selectEquipRealtimeSignal
(
id
);
}
}
amos-boot-system-equip/src/main/resources/mapper/EquipmentDetailMapper.xml
View file @
3539ed33
...
...
@@ -170,4 +170,18 @@
or parent_id = #{id}
)
</select>
<select
id=
"selectEquipScrapDate"
resultType=
"java.util.Map"
>
SELECT
DATE_ADD(DATE_FORMAT(ed.production_date, '%Y-%m-%d'), INTERVAL e.expiry_date YEAR) AS planScrapDate,
spd.create_date AS scrapDate
FROM
wl_equipment_specific es
LEFT JOIN wl_equipment_detail ed ON ed.id = es.equipment_detail_id
LEFT JOIN wl_equipment e ON e.id = ed.equipment_id
LEFT JOIN wl_stock_detail skd ON skd.equipment_detail_id = es.equipment_detail_id
LEFT JOIN wl_scrap_detail spd ON spd.stock_detail_id = skd.id
WHERE
es.id = #{id}
</select>
</mapper>
amos-boot-system-equip/src/main/resources/mapper/EquipmentSpecificMapper.xml
View file @
3539ed33
...
...
@@ -305,7 +305,7 @@
AND value is not null
ORDER BY spein.update_date DESC
</select>
<select
id=
"getEquipIndexLatestStatus"
resultType=
"com.yeejoin.equipmanage.common.entity.EquipmentSpecificIndex"
>
SELECT
equipindex.`value`,
...
...
@@ -346,7 +346,7 @@
equipindex.equipment_specific_id = es.id
AND equipindex.equipment_index_id = ei.id
</select>
<select
id=
"getStatusAll"
resultType=
"java.util.HashMap"
>
select COUNT(id) num, wl_video_equipment_specific.equipment_specific_id as id from wl_video_equipment_specific where find_in_set(
...
...
@@ -392,7 +392,7 @@
)
)
</select>
<select
id=
"getEquipmentIotCodeLists"
resultType=
"String"
>
SELECT
iot_code
...
...
@@ -1192,7 +1192,7 @@
AND
<foreach collection="vo.codes" item="item" index="index" open="(" close=")" separator=" AND ">
ec.`code` NOT LIKE CONCAT(#{item}, '%')
</foreach>
</foreach>
</if> -->
<if
test=
"vo.teamId != null and vo.teamId != ''"
>
AND es.`team_id` = #{vo.teamId}
...
...
@@ -1420,7 +1420,7 @@
</if>
</where>
</select>
<select
id=
"getEquipSpeInfo"
resultType=
"Map"
>
SELECT
es.id,
...
...
@@ -2692,4 +2692,19 @@
</foreach>
</update>
<select
id=
"selectEquipRealtimeSignal"
resultType=
"string"
>
SELECT
ei.type_name AS typeName
FROM
wl_equipment_specific_index esi
RIGHT JOIN wl_equipment_index ei ON ei.id = esi.equipment_index_id
WHERE
esi.equipment_specific_id = #{id}
AND esi.`value` = 'true'
AND esi.is_alarm = 1
ORDER BY
esi.update_date DESC
LIMIT 1
</select>
</mapper>
\ No newline at end of file
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