Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
smf-core
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 17e4623e
由
LN
编写于
2025-04-29 10:20:30 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
1.提示时barcode不对。2.Loading弹框增加状态列。
1 个父辈
9f0bcaf0
隐藏空白字符变更
内嵌
并排
正在显示
6 个修改的文件
包含
111 行增加
和
6 行删除
src/main/java/com/neotel/smfcore/core/device/handler/impl/RobotBoxHandler.java
src/main/java/com/neotel/smfcore/core/inList/service/po/InListItem.java
src/main/java/com/neotel/smfcore/custom/micron1053/loading/LoadingController.java
src/main/java/com/neotel/smfcore/custom/micron1053/loading/dto/MaterialDtialDto.java
src/main/java/com/neotel/smfcore/custom/micron1053/task/MicronDispatchController.java
修改记录.txt
src/main/java/com/neotel/smfcore/core/device/handler/impl/RobotBoxHandler.java
查看文件 @
17e4623
...
...
@@ -454,7 +454,7 @@ public class RobotBoxHandler extends BaseDeviceHandler {
}
errorMsg
=
MessageUtils
.
getText
(
"smfcore.error.barcode.exist"
,
new
String
[]{
barcode
.
getBarcode
(),
storage
.
getName
(),
hasPos
.
getPosName
()},
MessageUtils
.
getDefaultLocal
(),
"[{0}}]已在{1}}[{2}}]中"
);
errorMsg
=
"Serial No.(S)[
HZ001WZ.QV
] has been existing in KTS/WMS already"
;
errorMsg
=
"Serial No.(S)[
"
+
barcode
.
getBarcode
()+
"
] has been existing in KTS/WMS already"
;
resultMap
.
put
(
"result"
,
"96"
);
resultMap
.
put
(
"msg"
,
errorMsg
);
...
...
src/main/java/com/neotel/smfcore/core/inList/service/po/InListItem.java
查看文件 @
17e4623
...
...
@@ -124,6 +124,14 @@ public class InListItem extends BasePo implements Serializable {
return
state
.
equalsIgnoreCase
(
INITEM_STATUS
.
Fail
)
||
state
.
equalsIgnoreCase
(
INITEM_STATUS
.
XRayFail
);
}
/**
* 判断是否入库完成
*/
public
boolean
isPutEnd
()
{
// “Complete”表示物料已经成功存入料仓(物理上)并且成功更新至SAP/MAM系统(系统上)。“Incomplete”表示物料未成功存入料仓(物理上),且未成功更新至SAP/MAM系统(系统上)
return
state
.
equalsIgnoreCase
(
INITEM_STATUS
.
Success
);
}
/**
* 入库详情
*/
private
List
<
ItemReelInfo
>
reelLists
;
...
...
src/main/java/com/neotel/smfcore/custom/micron1053/loading/LoadingController.java
查看文件 @
17e4623
...
...
@@ -159,7 +159,7 @@ public class LoadingController {
for
(
int
i
=
1
;
i
<=
5
;
i
++
)
{
MaterialDtialDto
dto
=
new
MaterialDtialDto
(
"barcode"
+
i
,
"pn"
+
i
,
new
Date
(),
"proN"
+
i
,
233
,
7
,
8
,
"provider"
+
i
,
"batch"
+
i
,
"msl"
+
i
,
"posName"
+
i
,
""
,
state
);
233
,
7
,
8
,
"provider"
+
i
,
"batch"
+
i
,
"msl"
+
i
,
"posName"
+
i
,
""
,
state
,
i
%
2
);
dtos
.
add
(
dto
);
}
...
...
@@ -187,12 +187,17 @@ public class LoadingController {
}
try
{
if
(
is
)
{
int
putInState
=
0
;
if
(
item
.
isPutEnd
()){
putInState
=
1
;
}
MaterialDtialDto
dto
=
new
MaterialDtialDto
(
item
.
getRi
(),
item
.
getPN
(),
new
Date
(),
""
,
0
,
0
,
0
,
""
,
""
,
""
,
item
.
getPosName
(),
item
.
getNgMsg
(),
item
.
getState
());
0
,
0
,
0
,
""
,
""
,
""
,
item
.
getPosName
(),
item
.
getNgMsg
(),
item
.
getState
()
,
putInState
);
Barcode
code
=
barcodeManager
.
findByBarcode
(
item
.
getRi
());
if
(
code
!=
null
)
{
dto
=
new
MaterialDtialDto
(
code
.
getBarcode
(),
code
.
getPartNumber
(),
code
.
getExpireDate
(),
code
.
getProviderNumber
(),
code
.
getAmount
(),
code
.
getPlateSize
(),
code
.
getHeight
(),
code
.
getProvider
(),
code
.
getBatch
(),
code
.
getMsl
(),
code
.
getPosName
(),
item
.
getNgMsg
(),
item
.
getState
());
code
.
getAmount
(),
code
.
getPlateSize
(),
code
.
getHeight
(),
code
.
getProvider
(),
code
.
getBatch
(),
code
.
getMsl
(),
code
.
getPosName
(),
item
.
getNgMsg
(),
item
.
getState
()
,
putInState
);
}
else
{
try
{
...
...
@@ -200,7 +205,7 @@ public class LoadingController {
code
=
codeResolve
.
resolveOneValideBarcode
(
item
.
getRi
());
if
(
code
!=
null
){
dto
=
new
MaterialDtialDto
(
code
.
getBarcode
(),
code
.
getPartNumber
(),
code
.
getExpireDate
(),
code
.
getProviderNumber
(),
code
.
getAmount
(),
code
.
getPlateSize
(),
code
.
getHeight
(),
code
.
getProvider
(),
code
.
getBatch
(),
code
.
getMsl
(),
code
.
getPosName
(),
item
.
getNgMsg
(),
item
.
getState
());
code
.
getAmount
(),
code
.
getPlateSize
(),
code
.
getHeight
(),
code
.
getProvider
(),
code
.
getBatch
(),
code
.
getMsl
(),
code
.
getPosName
(),
item
.
getNgMsg
(),
item
.
getState
()
,
putInState
);
}
}
catch
(
Exception
ex
){
...
...
src/main/java/com/neotel/smfcore/custom/micron1053/loading/dto/MaterialDtialDto.java
查看文件 @
17e4623
...
...
@@ -50,4 +50,8 @@ public class MaterialDtialDto implements Serializable {
@ApiModelProperty
(
"状态"
)
private
String
state
;
@ApiModelProperty
(
"入仓状态,1=完成,0=未完成"
)
private
int
putInState
=
0
;
}
src/main/java/com/neotel/smfcore/custom/micron1053/task/MicronDispatchController.java
查看文件 @
17e4623
...
...
@@ -959,7 +959,7 @@ public class MicronDispatchController {
if
(
is
)
{
MaterialDtialDto
dto
=
new
MaterialDtialDto
(
selItem
.
getRi
(),
selItem
.
getPn
(),
new
Date
(),
""
,
selItem
.
getOutNum
(),
0
,
0
,
""
,
""
,
""
,
""
,
selItem
.
getExecutFailReason
(),
selItem
.
getStatus
());
selItem
.
getOutNum
(),
0
,
0
,
""
,
""
,
""
,
""
,
selItem
.
getExecutFailReason
(),
selItem
.
getStatus
()
,
0
);
dtos
.
add
(
dto
);
}
...
...
修改记录.txt
查看文件 @
17e4623
20250428
弹框加一列是否完成,入到仓位的料显示完成。否则未完成。
abort之后,直接发abort ,
ML5里面停止,没入完的料继续入库,入库完需要通知一次,然后能看到历史记录。
配置一个超时时间,0表示禁用,其他表示分钟。超时指定时间后,如果可以END直接结束。
Loading界面:当前有Loading时需要提示,最好再左侧菜单显示一个代办。
end是必须全部入库成功才能
20250421问题记录:
api启用后,如果没有点Loading,就不能入库:No Loading。
20250411问题:
1053smf修改:
1.GR按钮去掉
2.retry提示修改,提示内容使用返回的msg
3.有ng或者fail的时候不能点end.
//GR 去掉
//入库验证顺序:料仓有空位置 , 条码验证未过期, 并且库存中没有这盘料,前面验证完成然后再调用API001.
// retry提示太简单: 总共3个需要retry,提示 1/3 retry成功,2/3 retry 失败
// end:已经扫过的料需要入库完成,才可以end.
//物料过期的提示文字改下
//无可用库位的提示文本改下
//11D202508 是2025 年08周 第一天,生产日期
//9D 年月日,生产日期。
//2D,月日年,过期日期。
// abort 待确认。
// 前两盘已扫,第三盘未扫,然后点abort ,abort 后第三盘料还是入库了。
// 1.abort 时已经扫到的料,入库过程中的料需要ng
// 2.abort 时未扫到的料 不能在扫了,或者直接ng
//有fail的可以abort, 全部成功
// 只有全部成功才能end, 否则只能abort .
20241121问题:
1.RES015 存在但是没有自动挑料
2. 数据重复
3.lineID未显示。
abort 工单未关闭。
显示的工单名字不对。
20220225修改:
1.工单出库界面调整
2.增加:物料管理->物料入库菜 页面
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论