Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
smf-core
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit ef8b865b
由
LN
编写于
2024-07-26 11:20:24 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
入库单挑料修改
1 个父辈
5b78e07e
显示空白字符变更
内嵌
并排
正在显示
2 个修改的文件
包含
11 行增加
和
10 行删除
src/main/java/com/neotel/smfcore/custom/luxsan_sp/controller/SpAgvDeviceClientController.java
src/main/java/com/neotel/smfcore/custom/luxsan_sp/util/SpareNoCache.java
src/main/java/com/neotel/smfcore/custom/luxsan_sp/controller/SpAgvDeviceClientController.java
查看文件 @
ef8b865
...
@@ -464,7 +464,7 @@ public class SpAgvDeviceClientController {
...
@@ -464,7 +464,7 @@ public class SpAgvDeviceClientController {
storagePos
.
setBarcode
(
barcode
);
storagePos
.
setBarcode
(
barcode
);
storagePosManager
.
save
(
storagePos
);
storagePosManager
.
save
(
storagePos
);
log
.
info
(
"出库完成,
清空仓位: "
+
storagePos
.
getId
()
+
"["
+
storagePos
.
getPosName
()
+
"]
"
);
log
.
info
(
"出库完成,
更改库位: "
+
storagePos
.
getId
()
+
"["
+
storagePos
.
getPosName
()
+
"]中barcode["
+
barcode
.
getBarcode
()+
"]状态为:OUT_NORMAL
"
);
//更新缓存中的库存信息
//更新缓存中的库存信息
dataCache
.
updateInventory
(
storagePos
,
barcode
);
dataCache
.
updateInventory
(
storagePos
,
barcode
);
...
...
src/main/java/com/neotel/smfcore/custom/luxsan_sp/util/SpareNoCache.java
查看文件 @
ef8b865
...
@@ -181,7 +181,7 @@ public class SpareNoCache {
...
@@ -181,7 +181,7 @@ public class SpareNoCache {
log
.
info
(
"开始执行 入库单 ["
+
orderNo
+
"] "
);
log
.
info
(
"开始执行 入库单 ["
+
orderNo
+
"] "
);
List
<
StoragePos
>
needOutPos
=
new
ArrayList
<>();
Map
<
String
,
StoragePos
>
needOutPos
=
new
HashMap
<>();
List
<
String
>
storageIdList
=
new
ArrayList
<>();
List
<
String
>
storageIdList
=
new
ArrayList
<>();
for
(
Storage
storage
:
dataCache
.
getAllStorage
().
values
())
{
for
(
Storage
storage
:
dataCache
.
getAllStorage
().
values
())
{
storageIdList
.
add
(
storage
.
getId
());
storageIdList
.
add
(
storage
.
getId
());
...
@@ -209,7 +209,7 @@ public class SpareNoCache {
...
@@ -209,7 +209,7 @@ public class SpareNoCache {
}
}
boxBarcode
.
setOut
(
false
);
boxBarcode
.
setOut
(
false
);
boxBarcode
.
setStatus
(
BARCODE_STATUS
.
IN_STORE
);
boxBarcode
.
setStatus
(
BARCODE_STATUS
.
IN_STORE
);
needOutPos
.
add
(
pos
);
needOutPos
.
put
(
pos
.
getPosName
(),
pos
);
}
else
{
}
else
{
noPnDetial
.
add
(
detail
);
noPnDetial
.
add
(
detail
);
...
@@ -231,7 +231,7 @@ public class SpareNoCache {
...
@@ -231,7 +231,7 @@ public class SpareNoCache {
//查找准备出库的料箱中是否有空格口
//查找准备出库的料箱中是否有空格口
StoragePos
emptyPos
=
null
;
StoragePos
emptyPos
=
null
;
for
(
StoragePos
exPos
:
for
(
StoragePos
exPos
:
needOutPos
)
{
needOutPos
.
values
()
)
{
int
subCount
=
SpBoxUtil
.
GetBoxSubCount
(
exPos
.
getBarcode
().
getBarcode
());
int
subCount
=
SpBoxUtil
.
GetBoxSubCount
(
exPos
.
getBarcode
().
getBarcode
());
if
(
exPos
.
getBarcode
().
getSubCodeList
().
size
()
<
subCount
)
{
if
(
exPos
.
getBarcode
().
getSubCodeList
().
size
()
<
subCount
)
{
emptyPos
=
exPos
;
emptyPos
=
exPos
;
...
@@ -248,6 +248,8 @@ public class SpareNoCache {
...
@@ -248,6 +248,8 @@ public class SpareNoCache {
List
<
Barcode
>
subL
=
emptyBox
.
getSubCodeList
();
List
<
Barcode
>
subL
=
emptyBox
.
getSubCodeList
();
subL
.
add
(
newPn
);
subL
.
add
(
newPn
);
emptyBox
.
setSubCodeList
(
subL
);
emptyBox
.
setSubCodeList
(
subL
);
emptyPos
.
setBarcode
(
emptyBox
);
needOutPos
.
put
(
emptyPos
.
getPosName
(),
emptyPos
);
log
.
info
(
"入库单"
+
orderNo
+
", Pn="
+
pn
+
",使用料箱的空格口="
+
emptyPos
.
getPosName
()
+
",料箱号="
+
emptyBox
.
getBarcode
()
+
",格口号="
+
newPn
.
getBarcode
()
+
",需要入库数量="
+
detail
.
getInQty
());
log
.
info
(
"入库单"
+
orderNo
+
", Pn="
+
pn
+
",使用料箱的空格口="
+
emptyPos
.
getPosName
()
+
",料箱号="
+
emptyBox
.
getBarcode
()
+
",格口号="
+
newPn
.
getBarcode
()
+
",需要入库数量="
+
detail
.
getInQty
());
}
else
{
}
else
{
...
@@ -274,7 +276,8 @@ public class SpareNoCache {
...
@@ -274,7 +276,8 @@ public class SpareNoCache {
emptyBox
.
setSubCodeList
(
subL
);
emptyBox
.
setSubCodeList
(
subL
);
emptyBox
.
setOut
(
false
);
emptyBox
.
setOut
(
false
);
emptyBox
.
setStatus
(
BARCODE_STATUS
.
IN_STORE
);
emptyBox
.
setStatus
(
BARCODE_STATUS
.
IN_STORE
);
needOutPos
.
add
(
emptyPos
);
emptyPos
.
setBarcode
(
emptyBox
);
needOutPos
.
put
(
emptyPos
.
getPosName
(),
emptyPos
);
log
.
info
(
"入库单"
+
orderNo
+
", Pn="
+
pn
+
","
+
type
+
"查找到有空格口料箱="
+
emptyPos
.
getPosName
()
+
",料箱号="
+
emptyBox
.
getBarcode
()
+
",格口号="
+
newPn
.
getBarcode
()
+
",需要入库数量="
+
detail
.
getInQty
());
log
.
info
(
"入库单"
+
orderNo
+
", Pn="
+
pn
+
","
+
type
+
"查找到有空格口料箱="
+
emptyPos
.
getPosName
()
+
",料箱号="
+
emptyBox
.
getBarcode
()
+
",格口号="
+
newPn
.
getBarcode
()
+
",需要入库数量="
+
detail
.
getInQty
());
break
;
break
;
...
@@ -288,16 +291,14 @@ public class SpareNoCache {
...
@@ -288,16 +291,14 @@ public class SpareNoCache {
}
}
//开始生成出库任务
//开始生成出库任务
int
index
=
1
;
int
index
=
1
;
for
(
StoragePos
pos
:
needOutPos
for
(
StoragePos
pos
:
needOutPos
.
values
()
)
{
)
{
Barcode
barcode
=
pos
.
getBarcode
();
Barcode
barcode
=
pos
.
getBarcode
();
log
.
info
(
"入库单"
+
orderNo
+
", 为库位="
+
pos
.
getPosName
()
+
",料箱="
+
barcode
.
getBarcode
()
+
"生成出库任务:"
+
index
);
log
.
info
(
"入库单"
+
orderNo
+
", 为库位="
+
pos
.
getPosName
()
+
",料箱="
+
barcode
.
getBarcode
()
+
"生成出库任务:"
+
index
);
// 库位置空
pos
.
setBarcode
(
barcode
);
barcode
.
setPosName
(
null
);
pos
.
setBarcode
(
null
);
barcodeManager
.
save
(
barcode
);
barcodeManager
.
save
(
barcode
);
//
barcodeManager.saveBarcode(barcode);
barcodeManager
.
saveBarcode
(
barcode
);
storagePosManager
.
save
(
pos
);
storagePosManager
.
save
(
pos
);
Storage
storage
=
dataCache
.
getStorageById
(
pos
.
getStorageId
());
Storage
storage
=
dataCache
.
getStorageById
(
pos
.
getStorageId
());
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论