Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
smf-core
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit a82eaf3c
由
sunke
编写于
2022-08-22 11:54:58 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
大陆料加接口修改
MIMO料仓优先出库任务BUG
1 个父辈
c7b4efd6
隐藏空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
45 行增加
和
20 行删除
src/main/java/com/neotel/smfcore/core/barcode/service/manager/impl/BarcodeManagerImpl.java
src/main/java/com/neotel/smfcore/core/device/handler/impl/MimoBoxHandler.java
src/main/java/com/neotel/smfcore/custom/dalu/DaLuApi.java
src/main/java/com/neotel/smfcore/core/barcode/service/manager/impl/BarcodeManagerImpl.java
查看文件 @
a82eaf3
...
...
@@ -118,7 +118,7 @@ public class BarcodeManagerImpl implements IBarcodeManager {
Component
component
=
componentManager
.
findByPartNumberAndProvider
(
resources
.
getPartNumber
(),
resources
.
getProvider
());
if
(
component
==
null
){
//未找到对应供应商的物料,如果有无供应商的物料,更改并使用
log
.
info
(
"找到供应商信息为空的档案,修改档案的供应商信息"
+
resources
.
getProvider
());
log
.
info
(
"
未
找到供应商信息为空的档案,修改档案的供应商信息"
+
resources
.
getProvider
());
component
=
componentManager
.
findByPartNumberAndProvider
(
resources
.
getPartNumber
(),
null
);
}
...
...
src/main/java/com/neotel/smfcore/core/device/handler/impl/MimoBoxHandler.java
查看文件 @
a82eaf3
...
...
@@ -96,15 +96,18 @@ public class MimoBoxHandler extends BaseDeviceHandler {
DataLog
singleOutTask
=
null
;
for
(
DataLog
queueTask
:
queueTasks
)
{
if
(
queueTask
.
isCheckOutTask
()){
if
(
cid
.
equals
(
queueTask
.
getCid
())
&&
queueTask
.
isExecuting
())
{
excuttingOutTaskNum
++;
}
if
(
queueTask
.
isSingleOut
())
{
//单盘优先出库
if
(
singleOutTask
==
null
||
queueTask
.
getCreateDate
().
before
(
singleOutTask
.
getCreateDate
()))
{
singleOutTask
=
queueTask
;
if
(
cid
.
equals
(
queueTask
.
getCid
()))
{
if
(
queueTask
.
isExecuting
()){
excuttingOutTaskNum
++;
}
if
(
queueTask
.
isSingleOut
()
&&
queueTask
.
isWait
())
{
//单盘优先出库
if
(
singleOutTask
==
null
||
queueTask
.
getCreateDate
().
before
(
singleOutTask
.
getCreateDate
()))
{
singleOutTask
=
queueTask
;
}
}
}
}
}
//已经有2个出库任务在执行,不再发了
...
...
src/main/java/com/neotel/smfcore/custom/dalu/DaLuApi.java
查看文件 @
a82eaf3
...
...
@@ -3,9 +3,13 @@ package com.neotel.smfcore.custom.dalu;
import
com.google.common.base.Strings
;
import
com.neotel.smfcore.common.exception.ValidateException
;
import
com.neotel.smfcore.common.utils.HttpHelper
;
import
com.neotel.smfcore.core.api.bean.CodeValidateParam
;
import
com.neotel.smfcore.core.api.listener.DefaultSmfApiListener
;
import
com.neotel.smfcore.core.barcode.bean.CodeBean
;
import
com.neotel.smfcore.core.barcode.service.manager.IComponentManager
;
import
com.neotel.smfcore.core.barcode.service.po.Barcode
;
import
com.neotel.smfcore.core.barcode.service.po.Component
;
import
com.neotel.smfcore.core.barcode.utils.CodeResolve
;
import
com.neotel.smfcore.core.system.service.po.DataLog
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -29,6 +33,8 @@ public class DaLuApi extends DefaultSmfApiListener {
*/
@Autowired
private
CodeResolve
codeResolve
;
@Autowired
private
IComponentManager
componentManager
;
@Override
...
...
@@ -37,43 +43,59 @@ public class DaLuApi extends DefaultSmfApiListener {
}
/**
*
* 1092感应料架对条码进行补全
* PN:PA2C7363430200,SP:V702043942,RI:3SSX00010346575,QTY:Q30NAR000
* 截取补全后条码:00000A2C7363430200@0702043942@SX00010346575 (料号补全至18位,供应商代码补全至10位,Package 13位不变)
* @param barcode
* @param inCheckUrl
* @param params
* @return
* @throws ValidateException
*/
@Override
public
Barcode
canPutIn
(
String
inCheckUrl
,
Barcode
barcode
)
throws
ValidateException
{
String
pn
=
barcode
.
getPartNumber
();
public
Barcode
canPutInBeforeResolve
(
String
inCheckUrl
,
CodeValidateParam
params
)
throws
ValidateException
{
Barcode
resolveBarcode
=
codeResolve
.
resolveCode
(
params
.
getCode
());
if
(
resolveBarcode
==
null
){
throw
new
ValidateException
(
"smfcore.error.barcode.invalid"
,
"{0}不是有效的条码"
,
new
String
[]{
params
.
getCode
()});
}
String
pn
=
resolveBarcode
.
getPartNumber
();
String
newPn
=
pn
;
int
pnLength
=
pn
.
length
();
for
(
int
i
=
0
;
i
<
18
-
pnLength
;
i
++)
{
newPn
=
"0"
+
newPn
;
}
String
sp
=
b
arcode
.
getProvider
();
String
sp
=
resolveB
arcode
.
getProvider
();
String
newSp
=
sp
;
int
spLength
=
sp
.
length
();
for
(
int
i
=
0
;
i
<
10
-
spLength
;
i
++)
{
newSp
=
"0"
+
newSp
;
}
String
reelId
=
newPn
+
"@"
+
newSp
+
"@"
+
b
arcode
.
getBarcode
();
String
reelId
=
newPn
+
"@"
+
newSp
+
"@"
+
resolveB
arcode
.
getBarcode
();
log
.
info
(
"开始对条码进行补全,料号由"
+
pn
+
"补全为"
+
newPn
+
", 供应商由"
+
sp
+
"补全为"
+
newSp
+
" 补全后唯一码为:"
+
reelId
);
Barcode
dbBarcode
=
barcodeManager
.
findByBarcode
(
reelId
);
if
(
dbBarcode
==
null
){
//修改原来的条码
log
.
info
(
"修改原来条码信息为:"
+
reelId
);
barcode
.
setBarcode
(
reelId
);
barcode
=
barcodeManager
.
saveBarcode
(
barcode
);
resolveBarcode
.
setBarcode
(
reelId
);
Component
component
=
componentManager
.
findByPartNumberAndProvider
(
resolveBarcode
.
getPartNumber
(),
resolveBarcode
.
getProvider
());
if
(
component
==
null
){
log
.
info
(
"自动添加["
+
resolveBarcode
.
getPartNumber
()+
"]["
+
resolveBarcode
.
getProvider
()+
"]的档案信息"
);
component
=
new
Component
();
component
.
setPartNumber
(
resolveBarcode
.
getPartNumber
());
component
.
setAmount
(
resolveBarcode
.
getAmount
());
component
.
setPlateSize
(
1
);
component
.
setHeight
(
1
);
component
.
setName
(
resolveBarcode
.
getPartNumber
());
component
.
setProvider
(
resolveBarcode
.
getProvider
());
componentManager
.
save
(
component
);
}
resolveBarcode
=
barcodeManager
.
saveBarcode
(
resolveBarcode
);
}
else
{
//使用数据库的,删除生成的
log
.
info
(
"删除原来条码信息:"
+
barcode
.
getBarcode
()+
"["
+
barcode
.
getId
()+
"]"
);
barcodeManager
.
delete
(
barcode
);
barcode
=
dbBarcode
;
resolveBarcode
=
dbBarcode
;
}
return
b
arcode
;
return
resolveB
arcode
;
}
@Override
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论