Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
smf-core
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit eea4ba51
由
LN
编写于
2026-03-27 15:34:50 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
appendCid自动保存
1 个父辈
4d927bb1
隐藏空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
55 行增加
和
4 行删除
src/main/java/com/neotel/smfcore/core/device/bean/StatusBean.java
src/main/java/com/neotel/smfcore/core/device/rest/DeviceController.java
src/main/java/com/neotel/smfcore/core/kanban/rest/BoxKanbanController.java
src/main/java/com/neotel/smfcore/core/device/bean/StatusBean.java
查看文件 @
eea4ba5
...
@@ -43,6 +43,10 @@ public class StatusBean {
...
@@ -43,6 +43,10 @@ public class StatusBean {
*客户端IP
*客户端IP
*/
*/
private
String
clientIp
;
private
String
clientIp
;
/**
* 附属CID
*/
private
String
appendCid
;
/// <summary>
/// <summary>
/// 操作相关数据,
/// 操作相关数据,
/// op=1时,客户端发送 code 二维码给服务器,服务器返回时有:posId库位编号,plateW:料盘宽度,plateH:料盘高度
/// op=1时,客户端发送 code 二维码给服务器,服务器返回时有:posId库位编号,plateW:料盘宽度,plateH:料盘高度
...
...
src/main/java/com/neotel/smfcore/core/device/rest/DeviceController.java
查看文件 @
eea4ba5
...
@@ -27,6 +27,7 @@ import com.neotel.smfcore.core.inList.enums.INITEM.INITEM_STATUS;
...
@@ -27,6 +27,7 @@ import com.neotel.smfcore.core.inList.enums.INITEM.INITEM_STATUS;
import
com.neotel.smfcore.core.inList.service.po.InList
;
import
com.neotel.smfcore.core.inList.service.po.InList
;
import
com.neotel.smfcore.core.message.util.DeviceMessageUtil
;
import
com.neotel.smfcore.core.message.util.DeviceMessageUtil
;
import
com.neotel.smfcore.core.order.service.po.LiteOrder
;
import
com.neotel.smfcore.core.order.service.po.LiteOrder
;
import
com.neotel.smfcore.core.storage.service.manager.IStorageManager
;
import
com.neotel.smfcore.core.storage.service.manager.IStoragePosManager
;
import
com.neotel.smfcore.core.storage.service.manager.IStoragePosManager
;
import
com.neotel.smfcore.core.storage.service.po.StoragePos
;
import
com.neotel.smfcore.core.storage.service.po.StoragePos
;
import
com.neotel.smfcore.core.system.service.dao.IAlarmInfoDao
;
import
com.neotel.smfcore.core.system.service.dao.IAlarmInfoDao
;
...
@@ -74,6 +75,9 @@ public class DeviceController {
...
@@ -74,6 +75,9 @@ public class DeviceController {
private
IStoragePosManager
storagePosManager
;
private
IStoragePosManager
storagePosManager
;
@Autowired
@Autowired
private
IStorageManager
storageManager
;
@Autowired
private
IBarcodeManager
barcodeManager
;
private
IBarcodeManager
barcodeManager
;
@Autowired
@Autowired
...
@@ -105,6 +109,30 @@ public class DeviceController {
...
@@ -105,6 +109,30 @@ public class DeviceController {
log
.
error
(
"料仓cid: ["
+
cid
+
"]不存在"
);
log
.
error
(
"料仓cid: ["
+
cid
+
"]不存在"
);
EnLog
.
error
(
"Storage cid: ["
+
cid
+
"] does not exist"
);
EnLog
.
error
(
"Storage cid: ["
+
cid
+
"] does not exist"
);
return
null
;
return
null
;
}
try
{
String
appendCid
=
statusBean
.
getFromData
(
"appendCid"
);
if
(
ObjectUtil
.
isNotEmpty
(
appendCid
)){
statusBean
.
setAppendCid
(
appendCid
);
}
//判断是否需要更改附属CID
if
(
ObjectUtil
.
isNotEmpty
(
statusBean
.
getAppendCid
())){
boolean
needsave
=
false
;
if
(
ObjectUtil
.
isEmpty
(
storage
.
getAppendCid
())
){
needsave
=
true
;
log
.
info
(
"料仓["
+
cid
+
"] 更改 appendCid ="
+
statusBean
.
getAppendCid
());
}
else
if
(
!(
storage
.
getAppendCid
().
equals
(
statusBean
.
getAppendCid
()))){
needsave
=
true
;
log
.
info
(
"料仓["
+
cid
+
"] 更改 appendCid ="
+
statusBean
.
getAppendCid
()+
", 原来 appendCid ="
+
storage
.
getAppendCid
());
}
if
(
needsave
)
{
storage
.
setAppendCid
(
statusBean
.
getAppendCid
());
storageManager
.
save
(
storage
);
dataCache
.
reloadStorage
(
storage
,
storage
.
getCid
());
}
}
}
catch
(
Exception
ex
){
log
.
error
(
"更改cid=的appendId出错:"
+
ex
.
toString
());
}
}
synchronized
(
storage
)
{
synchronized
(
storage
)
{
String
deviceType
=
storage
.
getType
();
String
deviceType
=
storage
.
getType
();
...
...
src/main/java/com/neotel/smfcore/core/kanban/rest/BoxKanbanController.java
查看文件 @
eea4ba5
...
@@ -5,10 +5,7 @@ import com.google.common.base.Strings;
...
@@ -5,10 +5,7 @@ import com.google.common.base.Strings;
import
com.neotel.smfcore.common.bean.PageData
;
import
com.neotel.smfcore.common.bean.PageData
;
import
com.neotel.smfcore.common.bean.ResultBean
;
import
com.neotel.smfcore.common.bean.ResultBean
;
import
com.neotel.smfcore.common.exception.ValidateException
;
import
com.neotel.smfcore.common.exception.ValidateException
;
import
com.neotel.smfcore.common.utils.Constants
;
import
com.neotel.smfcore.common.utils.*
;
import
com.neotel.smfcore.common.utils.QueryHelp
;
import
com.neotel.smfcore.common.utils.SecurityUtils
;
import
com.neotel.smfcore.common.utils.StringUtils
;
import
com.neotel.smfcore.core.barcode.service.po.Barcode
;
import
com.neotel.smfcore.core.barcode.service.po.Barcode
;
import
com.neotel.smfcore.core.device.bean.BoxStatusBean
;
import
com.neotel.smfcore.core.device.bean.BoxStatusBean
;
import
com.neotel.smfcore.core.device.bean.StatusBean
;
import
com.neotel.smfcore.core.device.bean.StatusBean
;
...
@@ -380,6 +377,28 @@ public class BoxKanbanController {
...
@@ -380,6 +377,28 @@ public class BoxKanbanController {
throw
new
ValidateException
(
"smfcore.posNotExist"
,
"仓位不存在"
);
throw
new
ValidateException
(
"smfcore.posNotExist"
,
"仓位不存在"
);
}
}
@ApiOperation
(
"打开或者关闭ng门"
)
@RequestMapping
(
"api/boxkanban/boxNgDoorOp"
)
@AnonymousAccess
public
ResultBean
boxNgDoorOp
(
@RequestBody
Map
<
String
,
Object
>
paramList
)
{
log
.
info
(
"{}收到数据为:{}"
,
"boxNgDoorOp"
,
JsonUtil
.
toJsonStr
(
paramList
));
String
cid
=
paramList
.
get
(
"cid"
).
toString
();
String
opValue
=
paramList
.
get
(
"opValue"
).
toString
();
String
opKey
=
paramList
.
get
(
"opKey"
).
toString
();
StatusBean
statusBean
=
DevicesStatusUtil
.
getStatusBean
(
cid
);
if
(
statusBean
==
null
||
statusBean
.
timeOut
())
{
//return ResultBean.newErrorResult(1, "smfcore.duo.offline", "设备{0}离线", new String[]{cid});
}
if
(
ObjectUtil
.
isNotEmpty
(
opKey
))
{
String
openLock
=
statusBean
.
getData
().
getOrDefault
(
opKey
,
""
);
if
(
openLock
.
equals
(
"enable"
))
{
log
.
info
(
"boxDoorOp:cid="
+
cid
+
","
+
opKey
+
"="
+
opValue
);
DevicesStatusUtil
.
addOp
(
cid
,
opKey
,
opValue
);
return
ResultBean
.
newOkResult
(
"smfcore.msg.ok"
,
"操作成功"
);
}
}
return
ResultBean
.
newErrorResult
(
2
,
"smfcore.msg.op.fail"
,
"操作失败"
);
}
private
BoxKanbanDto
getKanBan
(
List
<
DataLog
>
allTasks
,
Locale
local
)
{
private
BoxKanbanDto
getKanBan
(
List
<
DataLog
>
allTasks
,
Locale
local
)
{
int
allCount
=
allTasks
.
size
();
int
allCount
=
allTasks
.
size
();
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论