Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
QisdaNew
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 54a89560
由
sunke
编写于
2020-03-17 15:42:11 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
出库到料架逻辑优化
1 个父辈
002c9fad
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
34 行增加
和
10 行删除
myproject/src/main/java/com/myproject/bean/qisda/InquiryShelfBean.java
myproject/src/main/java/com/myproject/bean/qisda/InquiryShelfBean.java
查看文件 @
54a8956
...
...
@@ -89,6 +89,7 @@ public class InquiryShelfBean {
if
(!
canOut
){
log
.
info
(
"未完成的大料数量["
+
unFinishedBigTaskCount
+
"]已可放满下一料架"
+
nextShelf
.
tempRfid
()+
"["
+
emptyLocCount
+
"],大料任务["
+
task
.
getBarcode
()+
"]暂停出库"
);
}
return
canOut
;
}
}
}
...
...
@@ -285,7 +286,7 @@ public class InquiryShelfBean {
String
cShelf
=
StorageConstants
.
SHEFL_TYPE
.
C
;
ShelfInfo
packageCShelf
=
getOrAddShelfInfo
(
hSerial
,
cShelf
);
int
packageCLoc
=
packageCShelf
.
addLimitLoc
(
barcode
,
StorageConstants
.
REEL_TYPE
.
PACKAGE
);
log
.
info
(
"包装料预留C型料架:工单"
+
outItem
.
getSo
()+
"["
+
outItem
.
getSlotlocation
()+
"]"
+
outItem
.
getPn
()+
"添加架位["
+
emptyShelfInfo
.
tempRfid
()
+
"]["
+
packageCLoc
+
"]=["
+
packageCShelf
.
tempRfid
()
+
"]["
+
loc
+
"]="
+
barcode
);
log
.
info
(
"包装料预留C型料架:工单"
+
outItem
.
getSo
()+
"["
+
outItem
.
getSlotlocation
()+
"]"
+
outItem
.
getPn
()+
"添加架位["
+
packageCShelf
.
tempRfid
()
+
"]["
+
packageCLoc
+
"]=["
+
emptyShelfInfo
.
tempRfid
()
+
"]["
+
loc
+
"]="
+
barcode
);
}
}
else
{
int
loc
=
emptyShelfInfo
.
addEmptyLoc
();
...
...
@@ -520,31 +521,54 @@ public class InquiryShelfBean {
String
hSerial
=
appendInfo
.
gethSerial
();
Map
<
String
,
ShelfInfo
>
shelfMap
=
hSerialShelfMap
.
get
(
hSerial
);
if
(
shelfMap
!=
null
){
//该料架是否已经绑定过
ShelfInfo
bindedShelf
=
findSameShelf
(
hSerial
,
rfid
);
if
(
appendInfo
.
isFirstReelAction
()){
//首盘料,要按位置放
for
(
ShelfInfo
shelfInfo
:
shelfMap
.
values
())
{
boolean
putInResult
=
shelfInfo
.
putInLimitLoc
(
rfid
,
loc
,
barcode
);
if
(
bindedShelf
!=
null
){
//已经绑定过
boolean
putInResult
=
bindedShelf
.
putInLimitLoc
(
rfid
,
loc
,
barcode
);
if
(
putInResult
){
updateShelfInfo
(
shelfInfo
);
log
.
info
(
"首盘料["
+
task
.
getBarcode
()+
"]
更新料架"
+
rfid
+
"["
+
loc
+
"]缓存
成功"
);
updateShelfInfo
(
bindedShelf
);
log
.
info
(
"首盘料["
+
task
.
getBarcode
()+
"]
使用料架"
+
rfid
+
"["
+
loc
+
"]缓存更新
成功"
);
return
true
;
}
}
else
{
for
(
ShelfInfo
shelfInfo
:
shelfMap
.
values
())
{
boolean
putInResult
=
shelfInfo
.
putInLimitLoc
(
rfid
,
loc
,
barcode
);
if
(
putInResult
){
updateShelfInfo
(
shelfInfo
);
log
.
info
(
"首盘料["
+
task
.
getBarcode
()+
"]使用新料架"
+
rfid
+
"["
+
loc
+
"]缓存更新成功"
);
return
true
;
}
}
}
}
else
{
//非首盘
for
(
ShelfInfo
shelfInfo
:
shelfMap
.
values
())
{
boolean
putInResult
=
shelfInfo
.
putInLoc
(
rfid
,
loc
,
barcode
);
if
(
bindedShelf
!=
null
){
//已经绑定过
boolean
putInResult
=
bindedShelf
.
putInLoc
(
rfid
,
loc
,
barcode
);
if
(
putInResult
){
updateShelfInfo
(
shelfInfo
);
log
.
info
(
"物料["
+
task
.
getBarcode
()+
"]
更新料架"
+
rfid
+
"["
+
loc
+
"]缓存
成功"
);
updateShelfInfo
(
bindedShelf
);
log
.
info
(
"物料["
+
task
.
getBarcode
()+
"]
使用料架"
+
rfid
+
"["
+
loc
+
"]缓存更新
成功"
);
return
true
;
}
}
else
{
for
(
ShelfInfo
shelfInfo
:
shelfMap
.
values
())
{
boolean
putInResult
=
shelfInfo
.
putInLoc
(
rfid
,
loc
,
barcode
);
if
(
putInResult
){
updateShelfInfo
(
shelfInfo
);
log
.
info
(
"物料["
+
task
.
getBarcode
()+
"]使用新料架"
+
rfid
+
"["
+
loc
+
"]缓存更新成功"
);
return
true
;
}
}
}
}
}
else
{
log
.
info
(
"未找到["
+
hSerial
+
"]相关料架"
);
}
log
.
error
(
"物料["
+
task
.
getBarcode
()+
"]("
+
task
.
getAppendInfo
().
getTempRfid
()+
"["
+
task
.
getAppendInfo
().
getRfidLoc
()+
"])
更新料架"
+
rfid
+
"["
+
loc
+
"]缓存
失败"
);
log
.
error
(
"物料["
+
task
.
getBarcode
()+
"]("
+
task
.
getAppendInfo
().
getTempRfid
()+
"["
+
task
.
getAppendInfo
().
getRfidLoc
()+
"])
料架"
+
rfid
+
"["
+
loc
+
"]缓存更新
失败"
);
return
false
;
}
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论