Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
smf-core
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit a258290f
由
LN
编写于
2024-05-22 17:37:57 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
钢网料架无法亮灯问题
1 个父辈
cb09c08a
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
87 行增加
和
1 行删除
src/main/java/com/neotel/smfcore/core/device/handler/impl/NLSShelfHandler.java
src/main/java/com/neotel/smfcore/core/device/handler/impl/NLSShelfHandler.java
查看文件 @
a258290
package
com
.
neotel
.
smfcore
.
core
.
device
.
handler
.
impl
;
import
com.neotel.smfcore.common.utils.StringUtils
;
import
com.neotel.smfcore.core.device.bean.StatusBean
;
import
com.neotel.smfcore.core.device.enums.OP_STATUS
;
import
com.neotel.smfcore.core.order.enums.ORDER_COLOR
;
import
com.neotel.smfcore.core.storage.enums.DeviceType
;
import
com.neotel.smfcore.core.system.bean.OrderSetting
;
import
com.neotel.smfcore.core.system.service.po.DataLog
;
import
com.neotel.smfcore.core.system.util.DevicesStatusUtil
;
import
io.swagger.annotations.Api
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.stereotype.Service
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.*
;
@Api
(
tags
=
"SHELF: NLS(扫码钢网料架)"
)
@Slf4j
public
class
NLSShelfHandler
extends
NLShelfHandler
{
@Service
public
class
NLSShelfHandler
extends
BaseDeviceHandler
{
@Override
public
StatusBean
handleClientRequest
(
StatusBean
statusBean
,
HttpServletRequest
request
)
{
statusBean
.
setClientIp
(
request
.
getRemoteHost
());
handleMsg
(
statusBean
);
statusBean
=
saveAlarmAndHumidity
(
statusBean
);
OrderSetting
orderSetting
=
dataCache
.
getOrderSetting
();
boolean
openZhiYin
=
orderSetting
.
getShelfLightType
().
equals
(
1
);
Map
<
String
,
List
<
DataLog
>>
outMap
=
new
HashMap
<>();
if
(
statusBean
!=
null
)
{
String
cid
=
statusBean
.
getCid
();
List
<
DataLog
>
finishedTasks
=
taskService
.
getFinishedTasks
();
for
(
DataLog
finishedTask
:
finishedTasks
)
{
if
(
finishedTask
.
getCid
().
equals
(
cid
)
&&
finishedTask
.
isCheckOutTask
()
&&
finishedTask
.
isCancel
()){
//取消的任务,需要关灯
taskService
.
removeFinishedTask
(
finishedTask
);
statusBean
.
addData
(
"close"
,
finishedTask
.
getPosName
());
}
}
Map
<
String
,
String
>
opMap
=
DevicesStatusUtil
.
getAndRemoveOp
(
statusBean
.
getCid
());
statusBean
.
addOp
(
opMap
);
}
//亮灯
Collection
<
DataLog
>
queueTasks
=
taskService
.
getQueueTasks
(
statusBean
.
getCid
());
for
(
DataLog
queueTask
:
queueTasks
)
{
if
(!
openZhiYin
||
StringUtils
.
isBlank
(
queueTask
.
getSourceId
()))
{
if
(
queueTask
.
isWait
())
{
String
rgb
=
queueTask
.
getLightColor
();
ORDER_COLOR
color
=
ORDER_COLOR
.
fromRgb
(
rgb
);
if
(
color
==
null
)
{
if
(
queueTask
.
isPutInTask
())
{
color
=
ORDER_COLOR
.
FORESTGREEN
;
}
else
{
color
=
ORDER_COLOR
.
BLUE
;
}
}
queueTask
.
setStatus
(
OP_STATUS
.
EXECUTING
.
name
());
taskService
.
updateQueueTask
(
queueTask
);
statusBean
.
addData
(
"open"
,
queueTask
.
getPosName
()
+
"="
+
color
.
name
());
log
.
info
(
"库位["
+
queueTask
.
getPosName
()
+
"]["
+
queueTask
.
getType
()
+
"]+亮灯:"
+
color
.
name
());
}
}
else
{
if
(
queueTask
.
isWait
()
||
queueTask
.
isExecuting
())
{
List
<
DataLog
>
dataLogList
=
outMap
.
get
(
queueTask
.
getSourceId
());
if
(
dataLogList
==
null
)
{
dataLogList
=
new
ArrayList
<>();
}
dataLogList
.
add
(
queueTask
);
outMap
.
put
(
queueTask
.
getSourceId
(),
dataLogList
);
}
}
}
List
<
DataLog
>
dataLogs
=
getLightGuideTask
(
outMap
,
statusBean
.
getCid
());
for
(
DataLog
task
:
dataLogs
)
{
if
(
StringUtils
.
isBlank
(
task
.
getLightColor
())){
task
.
setLightColor
(
ORDER_COLOR
.
BLUE
.
getRgb
());
}
String
colorName
=
ORDER_COLOR
.
fromRgb
(
task
.
getLightColor
()).
name
();
statusBean
.
addData
(
"open"
,
task
.
getPosName
()
+
"="
+
colorName
);
log
.
info
(
"库位["
+
task
.
getPosName
()
+
"]["
+
task
.
getType
()
+
"]+亮灯:"
+
colorName
);
}
return
statusBean
;
}
@Override
public
DeviceType
getDeviceType
()
{
return
DeviceType
.
NLS
;
}
}
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论