Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
J
jyzb_platformV2
概览
Overview
Details
Activity
Cycle Analytics
版本库
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
问题
0
Issues
0
列表
Board
标记
里程碑
合并请求
0
Merge Requests
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
Snippets
成员
Members
Collapse sidebar
Close sidebar
活动
图像
聊天
创建新问题
作业
提交
Issue Boards
Open sidebar
赵剑炜
jyzb_platformV2
Commits
68c1dacb
Commit
68c1dacb
authored
Mar 05, 2024
by
李小惠
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'develop' of
http://gitlab.sothing.top/843502640/jyzb_platformV2
into develop-lxh
parents
550ee063
6cd6f563
隐藏空白字符变更
内嵌
并排
正在显示
5 个修改的文件
包含
146 行增加
和
17 行删除
+146
-17
WarehouseReq.java
jyzb-api/src/main/java/com/junmp/jyzb/api/bean/query/WarehouseReq.java
+0
-1
WsWarehouseReq.java
jyzb-api/src/main/java/com/junmp/jyzb/api/util/WsWarehouseReq.java
+17
-7
WarehouseServiceImpl.java
jyzb-biz/src/main/java/com/junmp/jyzb/service/impl/WarehouseServiceImpl.java
+2
-2
WarehouseWebSocketServer.java
jyzb-biz/src/main/java/com/junmp/jyzb/websocket/WarehouseWebSocketServer.java
+5
-7
WarehouseWebSocketServer.java.orig
jyzb-biz/src/main/java/com/junmp/jyzb/websocket/WarehouseWebSocketServer.java.orig
+122
-0
没有找到文件。
jyzb-api/src/main/java/com/junmp/jyzb/api/bean/query/WarehouseReq.java
View file @
68c1dacb
...
...
@@ -16,7 +16,6 @@ public class WarehouseReq extends BaseRequest {
@NotBlank
(
message
=
"仓库主键不能为空"
,
groups
=
{
updateStatus
.
class
,
delete
.
class
,
detail
.
class
})
private
String
id
;
//查询仓库设备时使用
private
String
warehouseId
;
private
String
name
;
private
String
location
;
...
...
jyzb-api/src/main/java/com/junmp/jyzb/api/util/WsWarehouseReq.java
View file @
68c1dacb
...
...
@@ -10,20 +10,30 @@ import java.util.List;
public
class
WsWarehouseReq
{
@JsonProperty
(
"deviceId"
)
private
String
deviceId
;
@JsonProperty
(
"orgId"
)
private
String
orgId
;
@JsonProperty
(
"onlineState"
)
private
String
onlineState
;
@JsonProperty
(
"warehouseId"
)
private
String
warehouseId
;
@JsonProperty
(
"orgId"
)
private
String
orgId
;
@JsonProperty
(
"warehouse"
)
private
List
<
warehouse
>
warehouse
;
@JsonProperty
(
"warehouseDevs"
)
private
List
<
warehouseDevs
>
warehouseDevs
;
@Data
// 内部类表示box
public
static
class
warehouse
{
@JsonProperty
(
"warehouseId"
)
private
String
warehouseId
;
@JsonProperty
(
"warehouseName"
)
private
String
warehouseName
;
@JsonProperty
(
"warehouseDev"
)
private
List
<
warehouseDev
>
warehouseDev
;
}
@Data
// 内部类表示box
public
static
class
warehouseDev
s
{
public
static
class
warehouseDev
{
@JsonProperty
(
"devId"
)
private
String
devId
;
...
...
jyzb-biz/src/main/java/com/junmp/jyzb/service/impl/WarehouseServiceImpl.java
View file @
68c1dacb
...
...
@@ -78,10 +78,10 @@ public class WarehouseServiceImpl extends ServiceImpl<WarehouseMapper,Warehouse>
public
WsWarehouseReq
CheckState
(
WarehouseReq
req
)
{
WsWarehouseReq
warehouseReq
=
new
WsWarehouseReq
();
String
deviceData
=
redisCache
.
get
(
req
.
get
WarehouseId
());
String
deviceData
=
redisCache
.
get
(
req
.
get
OrgId
().
toString
());
if
(
ObjectUtil
.
isNull
(
deviceData
))
{
warehouseReq
.
set
WarehouseId
(
req
.
getWarehouseId
());
warehouseReq
.
set
OrgId
(
req
.
getOrgId
().
toString
());
warehouseReq
.
setOnlineState
(
"false"
);
}
else
...
...
jyzb-biz/src/main/java/com/junmp/jyzb/websocket/WarehouseWebSocketServer.java
View file @
68c1dacb
...
...
@@ -73,23 +73,21 @@ public class WarehouseWebSocketServer implements WebSocketServerListener {
String
text
=
protocol
.
readText
();
ObjectMapper
objectMapper
=
new
ObjectMapper
();
WsWarehouseReq
deviceData
=
objectMapper
.
readValue
(
text
,
WsWarehouseReq
.
class
);
String
warehouseId
=
deviceData
.
getWarehouseId
();
deviceData
.
getOrgId
();
String
redisExist
=
redisCache
.
get
(
warehouseId
);
deviceData
.
getOrgId
();
String
orgId
=
deviceData
.
getOrgId
();
String
redisExist
=
redisCache
.
get
(
orgId
);
if
(
redisExist
!=
null
)
//已有存在数据
{
String
jsonData
=
objectMapper
.
writeValueAsString
(
deviceData
);
redisCache
.
put
(
warehouse
Id
,
jsonData
);
redisCache
.
put
(
org
Id
,
jsonData
);
}
else
{
String
channel
=
protocol
.
requestMessage
().
getChannelId
();
String
jsonData
=
objectMapper
.
writeValueAsString
(
deviceData
);
redisCache
.
put
(
warehouse
Id
,
jsonData
);
redisCache
.
put
(
channel
,
warehouse
Id
);
redisCache
.
put
(
org
Id
,
jsonData
);
redisCache
.
put
(
channel
,
org
Id
);
}
protocol
.
response
(
"true"
);
...
...
jyzb-biz/src/main/java/com/junmp/jyzb/websocket/WarehouseWebSocketServer.java.orig
0 → 100644
View file @
68c1dacb
package
com
.
junmp
.
jyzb
.
websocket
;
import
cn
.
hutool
.
core
.
date
.
DateTime
;
import
cn
.
hutool
.
core
.
util
.
ObjectUtil
;
import
cn
.
hutool
.
core
.
util
.
StrUtil
;
import
cn
.
hutool
.
extra
.
spring
.
SpringUtil
;
import
com
.
alibaba
.
fastjson2
.
JSON
;
import
com
.
baomidou
.
mybatisplus
.
core
.
conditions
.
query
.
LambdaQueryWrapper
;
import
com
.
fasterxml
.
jackson
.
core
.
JsonProcessingException
;
import
com
.
fasterxml
.
jackson
.
databind
.
ObjectMapper
;
import
com
.
junmp
.
iot
.
server
.
ws
.
WebSocketServerListener
;
import
com
.
junmp
.
iot
.
server
.
ws
.
impl
.
DefaultWebSocketServerProtocol
;
import
com
.
junmp
.
junmpProcess
.
redis
.
FlowRedisCache
;
import
com
.
junmp
.
jyzb
.
api
.
util
.
WsCabinetReq
;
import
com
.
junmp
.
jyzb
.
api
.
util
.
WsWarehouseReq
;
import
com
.
junmp
.
jyzb
.
cache
.
DeviceRedisCache
;
import
com
.
junmp
.
jyzb
.
cache
.
OnlineRedisCache
;
import
com
.
junmp
.
jyzb
.
entity
.
Cabinet
;
import
com
.
junmp
.
jyzb
.
entity
.
CabinetBox
;
import
com
.
junmp
.
jyzb
.
entity
.
Temp
.
OnlineState
;
import
com
.
junmp
.
jyzb
.
service
.
CabinetService
;
import
com
.
junmp
.
jyzb
.
utils
.
DateTimeUtil
;
import
com
.
junmp
.
v2
.
ws
.
api
.
enums
.
ClientMsgType
;
import
com
.
junmp
.
v2
.
ws
.
api
.
enums
.
ServerMsgType
;
import
com
.
junmp
.
v2
.
ws
.
api
.
enums
.
SysMsgTypeEnum
;
import
com
.
junmp
.
v2
.
ws
.
api
.
message
.
WsCallbackApi
;
import
com
.
junmp
.
v2
.
ws
.
api
.
session
.
bean
.
WsSession
;
import
com
.
junmp
.
v2
.
ws
.
bean
.
WsMsgDto
;
import
com
.
junmp
.
v2
.
ws
.
channel
.
WsSessionContainer
;
import
com
.
junmp
.
v2
.
ws
.
message
.
WsMessageHandle
;
import
com
.
junmp
.
v2
.
ws
.
session
.
WsSessionHandle
;
import
io
.
jsonwebtoken
.
JwtException
;
import
lombok
.
SneakyThrows
;
import
lombok
.
extern
.
slf4j
.
Slf4j
;
import
org
.
slf4j
.
Logger
;
import
org
.
slf4j
.
LoggerFactory
;
import
org
.
springframework
.
stereotype
.
Component
;
import
javax
.
annotation
.
Resource
;
import
javax
.
websocket
.*;
import
javax
.
websocket
.
server
.
PathParam
;
import
javax
.
websocket
.
server
.
ServerEndpoint
;
import
java
.
io
.
IOException
;
import
java
.
time
.
Instant
;
import
java
.
util
.
ArrayList
;
import
java
.
util
.
Collection
;
import
java
.
util
.
List
;
import
java
.
util
.
Map
;
import
java
.
util
.
concurrent
.
ConcurrentHashMap
;
import
java
.
util
.
stream
.
Collectors
;
@
Component
@
Slf4j
public
class
WarehouseWebSocketServer
implements
WebSocketServerListener
{
//
private
static
final
Logger
log
=
LoggerFactory
.
getLogger
(
com
.
junmp
.
v2
.
ws
.
server
.
ScreenWebSocketServer
.
class
);
@
Resource
public
CabinetService
cabinetService
;
@
Resource
private
DeviceRedisCache
redisCache
;
@
Override
public
String
uri
()
{
return
"/device/ws"
;
}
@
SneakyThrows
@
Override
public
void
onText
(
DefaultWebSocketServerProtocol
protocol
)
{
try
{
String
text
=
protocol
.
readText
();
ObjectMapper
objectMapper
=
new
ObjectMapper
();
WsWarehouseReq
deviceData
=
objectMapper
.
readValue
(
text
,
WsWarehouseReq
.
class
);
String
orgId
=
deviceData
.
getOrgId
();
deviceData
.
getOrgId
();
if
(
redisExist
!=null)//已有存在数据
{
String
jsonData
=
objectMapper
.
writeValueAsString
(
deviceData
);
if
(
redisExist
!=null)//已有存在数据
{
String
jsonData
=
objectMapper
.
writeValueAsString
(
deviceData
);
redisCache
.
put
(
orgId
,
jsonData
);
}
else
{
String
channel
=
protocol
.
requestMessage
().
getChannelId
();
String
jsonData
=
objectMapper
.
writeValueAsString
(
deviceData
);
redisCache
.
put
(
orgId
,
jsonData
);
redisCache
.
put
(
channel
,
orgId
);
}
protocol
.
response
(
"true"
);
}
catch
(
Exception
e
)
{
protocol
.
response
(
"false"
);
}
}
@
Override
public
void
onClose
(
DefaultWebSocketServerProtocol
protocol
)
{
String
channel
=
protocol
.
requestMessage
().
getChannelId
();
String
orgId
=
redisCache
.
get
(
channel
);
redisCache
.
remove
(
channel
);
redisCache
.
remove
(
orgId
);
WebSocketServerListener
.
super
.
onClose
(
protocol
);
}
@
Override
public
void
onBinary
(
DefaultWebSocketServerProtocol
protocol
)
{
WebSocketServerListener
.
super
.
onBinary
(
protocol
);
}
}
\ No newline at end of file
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论