Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
smf-core
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 5753fa92
由
LN
编写于
2022-04-12 11:52:38 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
设备互联功能
1 个父辈
37215eb9
显示空白字符变更
内嵌
并排
正在显示
13 个修改的文件
包含
94 行增加
和
7 行删除
src/main/java/com/neotel/smfcore/core/equipment/bean/EquipMsg.java
src/main/java/com/neotel/smfcore/core/equipment/bean/EquipStatusBean.java
src/main/java/com/neotel/smfcore/core/equipment/handler/impl/BaseEquipHandler.java
src/main/java/com/neotel/smfcore/core/equipment/rest/EquipViewController.java
src/main/java/com/neotel/smfcore/core/message/service/po/Message.java
src/main/java/com/neotel/smfcore/core/message/util/DeviceMessageUtil.java
src/main/java/com/neotel/smfcore/core/system/util/DevicesStatusUtil.java
src/main/resources/config/application.yml
src/main/resources/messages.properties
src/main/resources/messages_en_US.properties
src/main/resources/messages_ja_JP.properties
src/main/resources/messages_zh_CN.properties
src/main/resources/messages_zh_TW.properties
src/main/java/com/neotel/smfcore/core/equipment/bean/EquipMsg.java
查看文件 @
5753fa9
package
com
.
neotel
.
smfcore
.
core
.
equipment
.
bean
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.neotel.smfcore.core.language.util.MessageUtils
;
import
lombok.Data
;
import
lombok.ToString
;
import
java.util.Locale
;
@ToString
@Data
public
class
EquipMsg
{
...
...
@@ -27,4 +31,18 @@ public class EquipMsg {
* 参数
*/
private
String
[]
msgParams
;
public
String
getShowMsg
(
Locale
locale
)
{
//提示信息国际化
if
(
ObjectUtil
.
isEmpty
(
getMsgCode
()))
{
return
this
.
msg
;
}
else
{
String
code
=
this
.
msgCode
;
if
(!
code
.
startsWith
(
MessageUtils
.
smfcore
))
{
code
=
MessageUtils
.
smfcore
+
"."
+
this
.
msgCode
;
}
String
newMsg
=
MessageUtils
.
getText
(
code
,
getMsgParams
(),
locale
,
getMsg
());
return
newMsg
;
}
}
}
src/main/java/com/neotel/smfcore/core/equipment/bean/EquipStatusBean.java
查看文件 @
5753fa9
...
...
@@ -2,6 +2,7 @@ package com.neotel.smfcore.core.equipment.bean;
import
com.google.common.base.Strings
;
import
com.neotel.smfcore.core.equipment.enums.EquipmentType
;
import
com.neotel.smfcore.core.message.enums.MessageType
;
import
lombok.Data
;
import
lombok.ToString
;
...
...
@@ -20,7 +21,7 @@ public class EquipStatusBean implements Serializable {
*/
private
String
type
=
EquipmentType
.
AUTO
.
name
();
/**
* 设备状态
* 设备状态
0=离线,1=正常运行中, 2=急停
*/
private
int
status
;
/**
...
...
@@ -94,4 +95,14 @@ public class EquipStatusBean implements Serializable {
data
.
put
(
key
,
valueStr
);
}
public
EquipMsg
getMsgByType
(
String
type
){
for
(
EquipMsg
msg
:
getMsgList
()){
if
(
msg
.
getType
().
equals
(
type
)){
return
msg
;
}
}
return
null
;
}
}
src/main/java/com/neotel/smfcore/core/equipment/handler/impl/BaseEquipHandler.java
查看文件 @
5753fa9
package
com
.
neotel
.
smfcore
.
core
.
equipment
.
handler
.
impl
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.neotel.smfcore.core.equipment.bean.EquipMsg
;
import
com.neotel.smfcore.core.equipment.bean.EquipStatusBean
;
import
com.neotel.smfcore.core.equipment.enums.EquipmentType
;
import
com.neotel.smfcore.core.equipment.handler.IEquipmentHandler
;
...
...
@@ -28,15 +30,39 @@ public class BaseEquipHandler implements IEquipmentHandler {
try
{
//判断是否刚刚上线
EquipStatusBean
b
ean
=
EquipStatusUtil
.
getStatusBean
(
statusBean
.
getCid
());
if
(
b
ean
==
null
)
{
EquipStatusBean
preB
ean
=
EquipStatusUtil
.
getStatusBean
(
statusBean
.
getCid
());
if
(
preB
ean
==
null
)
{
DeviceMessageUtil
.
addOnlineMessage
(
statusBean
.
getCid
(),
""
,
statusBean
.
getClientIp
());
// EquipStatusUtil.updateClientMsg(statusBean.getCid(), "", "", "", null);
}
else
if
(
bean
.
timeOut
()
&&
(
b
ean
.
getOfflineTime
()
>
-
1
))
{
}
else
if
(
preBean
.
timeOut
()
&&
(
preB
ean
.
getOfflineTime
()
>
-
1
))
{
DeviceMessageUtil
.
addOnlineMessage
(
statusBean
.
getCid
(),
""
,
statusBean
.
getClientIp
());
// EquipStatusUtil.updateClientMsg(statusBean.getCid(), "", "", "", null);
}
//记录提示信息
if
(
statusBean
.
getMsgList
()!=
null
){
for
(
EquipMsg
msg
:
statusBean
.
getMsgList
())
{
//判断是否有内容
//判断消息是否有内容
if
(
ObjectUtil
.
isNotEmpty
(
msg
.
getMsg
())||
ObjectUtil
.
isNotEmpty
(
msg
.
getMsgCode
())){
boolean
newMsg
=
true
;
//和上个消息是否一样
if
(
preBean
!=
null
){
EquipMsg
preMsg
=
preBean
.
getMsgByType
(
msg
.
getType
());
if
(
preMsg
!=
null
){
if
(
msg
.
getMsgCode
().
equals
(
preMsg
.
getMsgCode
())&&
msg
.
getMsg
().
equals
(
preMsg
.
getMsg
())){
newMsg
=
false
;
}
}
}
if
(
newMsg
){
DeviceMessageUtil
.
addDeviceMessage
(
statusBean
.
getCid
(),
msg
.
getType
(),
msg
.
getModule
(),
msg
.
getMsgCode
(),
msg
.
getMsg
(),
msg
.
getMsgParams
());
}
}
}
}
EquipStatusUtil
.
updateStatusBean
(
statusBean
);
// }
...
...
src/main/java/com/neotel/smfcore/core/equipment/rest/EquipViewController.java
查看文件 @
5753fa9
package
com
.
neotel
.
smfcore
.
core
.
equipment
.
rest
;
import
com.neotel.smfcore.core.device.util.EquipmentCache
;
import
com.neotel.smfcore.core.equipment.bean.EquipMsg
;
import
com.neotel.smfcore.core.equipment.bean.EquipStatusBean
;
import
com.neotel.smfcore.core.equipment.bean.EquipStatusDto
;
import
com.neotel.smfcore.core.equipment.service.po.Equipment
;
;
import
com.neotel.smfcore.core.message.enums.MessageType
;
import
com.neotel.smfcore.core.system.util.EquipStatusUtil
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.RequiredArgsConstructor
;
...
...
@@ -16,6 +20,7 @@ import org.springframework.web.bind.annotation.RestController;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.Locale
;
import
java.util.Map
;
...
...
@@ -34,11 +39,27 @@ public class EquipViewController {
@PreAuthorize
(
"@el.check('equipmentView:info')"
)
public
List
<
EquipStatusDto
>
info
(
HttpServletRequest
servletRequest
)
{
Locale
locale
=
servletRequest
.
getLocale
();
List
<
EquipStatusDto
>
resultList
=
new
ArrayList
<>();
Map
<
String
,
Equipment
>
allEquipList
=
equipmentCache
.
getAllEquipment
();
for
(
Equipment
equip
:
allEquipList
.
values
())
{
EquipStatusDto
dto
=
new
EquipStatusDto
(
equip
.
getId
(),
equip
.
getName
(),
equip
.
getCid
(),
false
,
0
,
""
,
equip
.
getType
());
EquipStatusBean
bean
=
EquipStatusUtil
.
getStatusBean
(
equip
.
getCid
());
if
(
bean
!=
null
){
if
(
bean
.
timeOut
()){
dto
.
setOnLine
(
false
);
}
else
{
dto
.
setOnLine
(
true
);
if
(
bean
.
getMsgList
()!=
null
){
for
(
EquipMsg
msg
:
bean
.
getMsgList
()){
if
(
msg
.
getType
().
equals
(
MessageType
.
ERROR
.
name
())){
dto
.
setMsg
(
msg
.
getShowMsg
(
locale
));
}
}
}
}
}
resultList
.
add
(
dto
);
}
return
resultList
;
...
...
src/main/java/com/neotel/smfcore/core/message/service/po/Message.java
查看文件 @
5753fa9
...
...
@@ -27,6 +27,10 @@ public class Message extends BasePo implements Serializable {
Message
message
=
new
Message
(
deviceName
,
deviceId
,
module
,
type
.
name
(),
msgCode
,
msg
,
msgParams
,
null
,
null
,
""
);
return
message
;
}
public
static
Message
newMsg
(
String
type
,
String
deviceName
,
String
deviceId
,
String
module
,
String
msgCode
,
String
msg
,
String
[]
msgParams
){
Message
message
=
new
Message
(
deviceName
,
deviceId
,
module
,
type
,
msgCode
,
msg
,
msgParams
,
null
,
null
,
""
);
return
message
;
}
/**
* 设备名称
*/
...
...
src/main/java/com/neotel/smfcore/core/message/util/DeviceMessageUtil.java
查看文件 @
5753fa9
...
...
@@ -52,7 +52,7 @@ public class DeviceMessageUtil {
}
public
static
void
add
ErrorMessage
(
String
cid
,
String
moudle
,
String
msgCode
,
String
msg
,
String
[]
msgParam
)
{
public
static
void
add
DeviceMessage
(
String
cid
,
String
msgType
,
String
moudle
,
String
msgCode
,
String
msg
,
String
[]
msgParam
)
{
Storage
storage
=
dataCache
.
getStorage
(
cid
);
if
(
storage
!=
null
)
{
String
code
=
msgCode
;
...
...
src/main/java/com/neotel/smfcore/core/system/util/DevicesStatusUtil.java
查看文件 @
5753fa9
...
...
@@ -3,6 +3,7 @@ package com.neotel.smfcore.core.system.util;
import
cn.hutool.core.util.ObjectUtil
;
import
com.google.common.collect.Maps
;
import
com.neotel.smfcore.core.device.bean.StatusBean
;
import
com.neotel.smfcore.core.message.enums.MessageType
;
import
com.neotel.smfcore.core.message.util.DeviceMessageUtil
;
import
lombok.extern.slf4j.Slf4j
;
...
...
@@ -71,7 +72,7 @@ public class DevicesStatusUtil {
}
}
if
(
newMsg
){
DeviceMessageUtil
.
add
ErrorMessage
(
cid
,
""
,
msgCode
,
clientMsg
,
msgParam
);
DeviceMessageUtil
.
add
DeviceMessage
(
cid
,
MessageType
.
ERROR
.
name
()
,
""
,
msgCode
,
clientMsg
,
msgParam
);
}
}
...
...
src/main/resources/config/application.yml
查看文件 @
5753fa9
...
...
@@ -34,4 +34,4 @@ rsa:
app
:
version
:
'
@project.version@'
\ No newline at end of file
version
:
'
1.23.0211'
\ No newline at end of file
src/main/resources/messages.properties
查看文件 @
5753fa9
...
...
@@ -251,6 +251,8 @@ smfcore.safetyInventory.stockReel=\u5E93\u5B58\u76D8\u6570
smfcore.safetyInventory.supplementReel
=
\u8865\u5145\u
76D8
\u6570
smfcore.safetyInventory.amount
=
\u6700\u
5C0F
\u5305\u
88C5
smfcore.component.storeError
=
\u
8BF7
\u
8F93
\u5165\u
6B63
\u
786E
\u7684\u
5E93
\u
5B58
\u
FF0C
\u6700\u
5C0F
\u
5E93
\u
5B58<=
\u
5B89
\u5168\u
5E93
\u
5B58<=
\u6700\u5927\u
5E93
\u
5B58
smfcore.equipmentView
=
\u
8BBE
\u5907\u
4E92
\u8054
#smfclient.nlp.onlyOneTray=\u4E0D\u53EF\u540C\u65F6\u653E\u5165\u591A\u76D8\u7269\u6599:{0}
#smfclient.nlp.cannotFindPos={0}\u672A\u627E\u5230\u5E93\u4F4D:{1}
#smfclient.nlp.inputOk={0}\u5165\u5E93\u5230{1}\u6210\u529F
...
...
src/main/resources/messages_en_US.properties
查看文件 @
5753fa9
...
...
@@ -252,4 +252,5 @@ smfcore.safetyInventory.stockReel=Reel QTY
smfcore.safetyInventory.supplementReel
=
Number of additional plates
smfcore.safetyInventory.amount
=
Amount
smfcore.component.storeError
=
Please enter the correct stock, minimum stock <= safety stock <= maximum stock
smfcore.equipmentView
=
Equipment connected
src/main/resources/messages_ja_JP.properties
查看文件 @
5753fa9
...
...
@@ -251,4 +251,5 @@ smfcore.safetyInventory.stockReel=\u76E4\u6578
smfcore.safetyInventory.supplementReel
=
\u
8FFD
\u
52A0
\u
30D7
\u
30EC
\u
30FC
\u
30C8
\u
679A
\u6570
smfcore.safetyInventory.amount
=
\u6578\u
91CF
smfcore.component.storeError
=
\u
6B63
\u3057\u3044\u5728\u
5EAB
\u3092\u5165\u
529B
\u3057\u3066\u
304F
\u3060\u3055\u3044\u3001\u6700\u
5C0F
\u5728\u
5EAB
\u2266\u
5B89
\u5168\u5728\u
5EAB
\u2266\u6700\u5927\u5728\u
5EAB
smfcore.equipmentView
=
\u
8BBE
\u5907\u
4E92
\u8054
src/main/resources/messages_zh_CN.properties
查看文件 @
5753fa9
...
...
@@ -251,3 +251,4 @@ smfcore.safetyInventory.stockReel=\u5E93\u5B58\u76D8\u6570
smfcore.safetyInventory.supplementReel
=
\u8865\u5145\u
76D8
\u6570
smfcore.safetyInventory.amount
=
\u6700\u
5C0F
\u5305\u
88C5
smfcore.component.storeError
=
\u
8BF7
\u
8F93
\u5165\u
6B63
\u
786E
\u7684\u
5E93
\u
5B58
\u
FF0C
\u6700\u
5C0F
\u
5E93
\u
5B58<=
\u
5B89
\u5168\u
5E93
\u
5B58<=
\u6700\u5927\u
5E93
\u
5B58
smfcore.equipmentView
=
\u
8BBE
\u5907\u
4E92
\u8054
src/main/resources/messages_zh_TW.properties
查看文件 @
5753fa9
...
...
@@ -251,3 +251,4 @@ smfcore.safetyInventory.stockReel=\u5EAB\u5B58\u76E4\u6578
smfcore.safetyInventory.supplementReel
=
\u
88DC
\u5145\u
76E4
\u6578
smfcore.safetyInventory.amount
=
\u6700\u
5C0F
\u5305\u
88DD
smfcore.component.storeError
=
\u
8ACB
\u
8F38
\u5165\u
6B63
\u
78BA
\u7684\u
5EAB
\u
5B58
\u
FF0C
\u6700\u
5C0F
\u
5EAB
\u
5B58<=
\u
5B89
\u5168\u
5EAB
\u
5B58<=
\u6700\u5927\u
5EAB
\u
5B58
smfcore.equipmentView
=
\u
8A2D
\u5099\u
4E92
\u
806F
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论