Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
smf-core
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit bfbf7ece
由
zshaohui
编写于
2025-10-20 14:38:53 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
1.nexim增加配置项,是否注册did信息
2.nexim获取did信息,挪到入库验证之前
1 个父辈
cdb1f9c7
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
11 个修改的文件
包含
120 行增加
和
13 行删除
src/main/java/com/neotel/smfcore/custom/nexim/NeximApi.java
src/main/java/com/neotel/smfcore/custom/nexim/bean/DIdInfo.java
src/main/java/com/neotel/smfcore/custom/nexim/bean/NeximConfig.java
src/main/java/com/neotel/smfcore/custom/nexim/controller/NeximController.java
src/main/resources/messages.properties
src/main/resources/messages_de_DE.properties
src/main/resources/messages_en_US.properties
src/main/resources/messages_fr_FR.properties
src/main/resources/messages_ja_JP.properties
src/main/resources/messages_zh_CN.properties
src/main/resources/messages_zh_TW.properties
src/main/java/com/neotel/smfcore/custom/nexim/NeximApi.java
查看文件 @
bfbf7ec
此文件的差异被折叠,
点击展开。
src/main/java/com/neotel/smfcore/custom/nexim/bean/DIdInfo.java
0 → 100644
查看文件 @
bfbf7ec
package
com
.
neotel
.
smfcore
.
custom
.
nexim
.
bean
;
import
lombok.Data
;
@Data
public
class
DIdInfo
{
// 唯一标识
private
String
did
;
// 零件编号(空值)
private
String
partNumber
;
// 零件条形码
private
String
partBarcode
;
// 原始零件条形码
private
String
originalPartBarcode
;
// 数量
private
Integer
quantity
;
// 包装类型
private
String
packageType
;
// 零件出库警告标识
private
Integer
partsoutWarning
;
// 拼接警告标识
private
Integer
splicingWarning
;
// 供应商名称
private
String
vendorName
;
// 批次名称
private
String
lotName
;
// 日期编码
private
String
dateCode
;
// 区域(空值)
private
String
area
;
// 存放位置
private
String
location
;
// 机器(空值)
private
String
machine
;
// 模块编号
private
Integer
module
;
// 阶段编号
private
Integer
stageNo
;
// 槽位编号
private
Integer
slotNo
;
// 创建人
private
String
createdUser
;
// 创建时间
private
String
createdDate
;
// 更新人
private
String
updatedUser
;
// 更新时间
private
String
updatedDate
;
// 干燥状态(未开封)
private
String
dryStatus
;
// 箱寿命(空值)
private
String
boxLife
;
// 备注
private
String
memo
;
// 照明等级(空值)
private
String
lightingClass
;
// 照明限制
private
Integer
lightingLimit
;
// 备注1(空值)
private
String
note1
;
// 备注2(空值)
private
String
note2
;
// 备注3(空值)
private
String
note3
;
// 备注4(空值)
private
String
note4
;
// 是否使用拼接
private
Boolean
useSplicing
;
// 是否使用托盘包装
private
Boolean
useTrayPackage
;
// 托盘堆叠数量
private
Integer
trayStackCount
;
// 托盘拾取位置X坐标
private
Integer
trayPickupPositionX
;
// 托盘拾取位置Y坐标
private
Integer
trayPickupPositionY
;
// 托盘尺寸X
private
Integer
traySizeX
;
// 托盘尺寸Y
private
Integer
traySizeY
;
// floor寿命(空值)
private
String
floorLife
;
}
\ No newline at end of file
\ No newline at end of file
src/main/java/com/neotel/smfcore/custom/nexim/bean/NeximConfig.java
查看文件 @
bfbf7ec
...
@@ -13,5 +13,6 @@ public class NeximConfig {
...
@@ -13,5 +13,6 @@ public class NeximConfig {
private
String
lastUpdateTime
=
""
;
private
String
lastUpdateTime
=
""
;
private
String
inputEto
=
""
;
private
String
inputEto
=
""
;
private
String
outputEtn
=
""
;
private
String
outputEtn
=
""
;
private
boolean
registerDid
=
false
;
private
int
time
=
10
;
private
int
time
=
10
;
}
}
src/main/java/com/neotel/smfcore/custom/nexim/controller/NeximController.java
查看文件 @
bfbf7ec
...
@@ -2,6 +2,7 @@ package com.neotel.smfcore.custom.nexim.controller;
...
@@ -2,6 +2,7 @@ package com.neotel.smfcore.custom.nexim.controller;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSON
;
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.utils.StringUtils
;
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.barcode.utils.CodeResolve
;
import
com.neotel.smfcore.core.barcode.utils.CodeResolve
;
...
@@ -10,6 +11,7 @@ import com.neotel.smfcore.core.order.LiteOrderCache;
...
@@ -10,6 +11,7 @@ import com.neotel.smfcore.core.order.LiteOrderCache;
import
com.neotel.smfcore.core.order.service.po.LiteOrder
;
import
com.neotel.smfcore.core.order.service.po.LiteOrder
;
import
com.neotel.smfcore.core.order.service.po.LiteOrderItem
;
import
com.neotel.smfcore.core.order.service.po.LiteOrderItem
;
import
com.neotel.smfcore.custom.nexim.NeximApi
;
import
com.neotel.smfcore.custom.nexim.NeximApi
;
import
com.neotel.smfcore.custom.nexim.bean.DIdInfo
;
import
com.neotel.smfcore.custom.nexim.bean.NeximConfig
;
import
com.neotel.smfcore.custom.nexim.bean.NeximConfig
;
import
com.neotel.smfcore.custom.nexim.bean.dto.NeximConfigDto
;
import
com.neotel.smfcore.custom.nexim.bean.dto.NeximConfigDto
;
import
com.neotel.smfcore.custom.nexim.config.NeximCacheConfig
;
import
com.neotel.smfcore.custom.nexim.config.NeximCacheConfig
;
...
@@ -63,6 +65,7 @@ public class NeximController {
...
@@ -63,6 +65,7 @@ public class NeximController {
config
.
setTime
(
newConfig
.
getTime
());
config
.
setTime
(
newConfig
.
getTime
());
config
.
setUserName
(
newConfig
.
getUserName
());
config
.
setUserName
(
newConfig
.
getUserName
());
config
.
setPassword
(
newConfig
.
getPassword
());
config
.
setPassword
(
newConfig
.
getPassword
());
config
.
setRegisterDid
(
newConfig
.
isRegisterDid
());
dataCache
.
updateCache
(
NeximCacheConfig
.
NeximConfig_Cache_Name
,
config
);
dataCache
.
updateCache
(
NeximCacheConfig
.
NeximConfig_Cache_Name
,
config
);
return
ResultBean
.
newOkResult
(
""
);
return
ResultBean
.
newOkResult
(
""
);
}
}
...
@@ -88,7 +91,7 @@ public class NeximController {
...
@@ -88,7 +91,7 @@ public class NeximController {
dto
.
setEtoUpdateDateStr
(
getUpdateDate
(
config
.
getInputEto
()));
dto
.
setEtoUpdateDateStr
(
getUpdateDate
(
config
.
getInputEto
()));
dto
.
setUserName
(
config
.
getUserName
());
dto
.
setUserName
(
config
.
getUserName
());
dto
.
setPassword
(
config
.
getPassword
());
dto
.
setPassword
(
config
.
getPassword
());
dto
.
setRegisterDid
(
config
.
isRegisterDid
());
return
ResultBean
.
newOkResult
(
dto
);
return
ResultBean
.
newOkResult
(
dto
);
}
}
...
@@ -100,15 +103,21 @@ public class NeximController {
...
@@ -100,15 +103,21 @@ public class NeximController {
if
(
StringUtils
.
isEmpty
(
code
))
{
if
(
StringUtils
.
isEmpty
(
code
))
{
return
ResultBean
.
newErrorResult
(-
1
,
"smfcore.valueCanotNull"
,
"{0}不能为空"
,
new
String
[]{
"code"
});
return
ResultBean
.
newErrorResult
(-
1
,
"smfcore.valueCanotNull"
,
"{0}不能为空"
,
new
String
[]{
"code"
});
}
}
//获取did信息
DIdInfo
inventoryDid
=
neximApi
.
getInventoryDid
(
code
);
if
(
inventoryDid
!=
null
){
return
ResultBean
.
newOkResult
(
""
);
}
if
(!
neximApi
.
enableRegisterDid
()){
throw
new
ValidateException
(
"smf.nexim.getInventoryFaile"
,
"获取did信息失败:[{0}]"
,
new
String
[]{
""
});
}
Barcode
barcode
=
codeResolve
.
resolveCode
(
code
);
Barcode
barcode
=
codeResolve
.
resolveCode
(
code
);
if
(
barcode
==
null
)
{
if
(
barcode
==
null
)
{
return
ResultBean
.
newErrorResult
(-
1
,
"smfcore.error.barcode.invalid"
,
"{0}不是有效的条码"
,
new
String
[]{
code
});
return
ResultBean
.
newErrorResult
(-
1
,
"smfcore.error.barcode.invalid"
,
"{0}不是有效的条码"
,
new
String
[]{
code
});
}
}
boolean
hasDid
=
neximApi
.
registerNewDid
(
barcode
);
String
accessToken
=
neximApi
.
getAccessToken
();
if
(!
hasDid
)
{
boolean
hasDid
=
neximApi
.
inventoryHasDid
(
barcode
.
getBarcode
(),
accessToken
);
return
ResultBean
.
newErrorResult
(-
1
,
""
,
""
);
if
(!
hasDid
){
neximApi
.
registerNewDid
(
barcode
,
accessToken
);
}
}
return
ResultBean
.
newOkResult
(
""
);
return
ResultBean
.
newOkResult
(
""
);
}
}
...
...
src/main/resources/messages.properties
查看文件 @
bfbf7ec
...
@@ -439,3 +439,5 @@ smfcore.auth.expire=\u6388\u6743\u5DF2\u8FC7\u671F
...
@@ -439,3 +439,5 @@ smfcore.auth.expire=\u6388\u6743\u5DF2\u8FC7\u671F
smfcore.order.slotNum
=
\u
7AD9
\u
4F4D
\u
7F16
\u
53F7
smfcore.order.slotNum
=
\u
7AD9
\u
4F4D
\u
7F16
\u
53F7
smfcore.reelPosMove.paramerror
=
\u
53C2
\u6570\u
4E0D
\u
5B8C
\u6574
smfcore.reelPosMove.paramerror
=
\u
53C2
\u6570\u
4E0D
\u
5B8C
\u6574
smfcore.reelPosMove.posIsNull
=
\u
5E93
\u
4F4D[{1}]
\u
4E3A
\u
7A7A
smfcore.reelPosMove.posIsNull
=
\u
5E93
\u
4F4D[{1}]
\u
4E3A
\u
7A7A
smf.nexim.getInventoryFaile
=
\u
83B7
\u
53D6did
\u
4FE1
\u
606F
\u5931\u
8D25:[{0}]
smfcore.registerdid.false
=
[{0}]
\u
6CE8
\u
518Cdid
\u5931\u
8D25:[{1}]
src/main/resources/messages_de_DE.properties
查看文件 @
bfbf7ec
...
@@ -426,4 +426,6 @@ smfcore.virtual.boxInPos=[{0}] befindet sich bereits im Lagerplatz [{1}]. Bitte
...
@@ -426,4 +426,6 @@ smfcore.virtual.boxInPos=[{0}] befindet sich bereits im Lagerplatz [{1}]. Bitte
smfcore.virtual.quantityError
=
Die zu entnehmende Menge sollte [{0}] betragen
smfcore.virtual.quantityError
=
Die zu entnehmende Menge sollte [{0}] betragen
smfcode.virtual.enter
=
Bitte scannen Sie den Barcode oder geben Sie ihn ein und best
\u
00E4tigen Sie mit Enter
smfcode.virtual.enter
=
Bitte scannen Sie den Barcode oder geben Sie ihn ein und best
\u
00E4tigen Sie mit Enter
smfcore.auth.expire
=
Die Autorisierung ist abgelaufen
smfcore.auth.expire
=
Die Autorisierung ist abgelaufen
smfcore.order.slotNum
=
Standnummer
\ No newline at end of file
\ No newline at end of file
smfcore.order.slotNum
=
Standnummer
smf.nexim.getInventoryFaile
=
Fehler beim Abrufen der did-Information: [{0}]
smfcore.registerdid.false
=
[{0}] Registrierung von did fehlgeschlagen:[{1}]
\ No newline at end of file
\ No newline at end of file
src/main/resources/messages_en_US.properties
查看文件 @
bfbf7ec
...
@@ -427,4 +427,6 @@ smfcore.virtual.boxInPos=[{0}] is already in location [{1}]. Please remove it fi
...
@@ -427,4 +427,6 @@ smfcore.virtual.boxInPos=[{0}] is already in location [{1}]. Please remove it fi
smfcore.virtual.quantityError
=
The quantity to be removed should be [{0}]
smfcore.virtual.quantityError
=
The quantity to be removed should be [{0}]
smfcode.virtual.enter
=
Please scan or enter the barcode, then press Enter
smfcode.virtual.enter
=
Please scan or enter the barcode, then press Enter
smfcore.auth.expire
=
Authorization has expired
smfcore.auth.expire
=
Authorization has expired
smfcore.order.slotNum
=
Station Number
\ No newline at end of file
\ No newline at end of file
smfcore.order.slotNum
=
Station Number
smf.nexim.getInventoryFaile
=
Failed to retrieve did information: [{0}]
smfcore.registerdid.false
=
[{0}] Failed to register did:[{1}]
\ No newline at end of file
\ No newline at end of file
src/main/resources/messages_fr_FR.properties
查看文件 @
bfbf7ec
...
@@ -426,4 +426,6 @@ smfcore.virtual.boxInPos=[{0}] est d\u00E9j\u00E0 dans l'emplacement [{1}]. Veui
...
@@ -426,4 +426,6 @@ smfcore.virtual.boxInPos=[{0}] est d\u00E9j\u00E0 dans l'emplacement [{1}]. Veui
smfcore.virtual.quantityError
=
La quantit
\u
00E9
\u
00E0 retirer doit
\u
00EAtre [{0}]
smfcore.virtual.quantityError
=
La quantit
\u
00E9
\u
00E0 retirer doit
\u
00EAtre [{0}]
smfcode.virtual.enter
=
Veuillez scanner ou saisir le code-barres, puis appuyer sur Entr
\u
00E9e
smfcode.virtual.enter
=
Veuillez scanner ou saisir le code-barres, puis appuyer sur Entr
\u
00E9e
smfcore.auth.expire
=
L'autorisation a expir
\u
00E9
smfcore.auth.expire
=
L'autorisation a expir
\u
00E9
smfcore.order.slotNum
=
num
\u
00E9ro de position
\ No newline at end of file
\ No newline at end of file
smfcore.order.slotNum
=
num
\u
00E9ro de position
smf.nexim.getInventoryFaile
=
\u
00C9chec de r
\u
00E9cup
\u
00E9ration des informations did:[{0}]
smfcore.registerdid.false
=
[{0}]
\u
00C9chec de l'enregistrement de did:[{1}]
\ No newline at end of file
\ No newline at end of file
src/main/resources/messages_ja_JP.properties
查看文件 @
bfbf7ec
...
@@ -422,5 +422,7 @@ smfcore.equipment.view.ncgroup=Neo Counter
...
@@ -422,5 +422,7 @@ smfcore.equipment.view.ncgroup=Neo Counter
smfcore.virtual.boxInPos
=
[{0}]
\u
306F
\u
65E2
\u
306B
\u
30ED
\u
30B1
\u
30FC
\u
30B7
\u
30E7
\u
30F3 [{1}]
\u
306B
\u3042\u
308A
\u
307E
\u3059\u3002\u5148\u
306B
\u
53D6
\u
308A
\u
51FA
\u3057\u3066\u
304F
\u3060\u3055\u3044
smfcore.virtual.boxInPos
=
[{0}]
\u
306F
\u
65E2
\u
306B
\u
30ED
\u
30B1
\u
30FC
\u
30B7
\u
30E7
\u
30F3 [{1}]
\u
306B
\u3042\u
308A
\u
307E
\u3059\u3002\u5148\u
306B
\u
53D6
\u
308A
\u
51FA
\u3057\u3066\u
304F
\u3060\u3055\u3044
smfcore.virtual.quantityError
=
\u
53D6
\u
308A
\u
51FA
\u3057\u6570\u
91CF
\u
306F[{0}]
\u3067\u3042\u
308B
\u
5FC5
\u8981\u
304C
\u3042\u
308A
\u
307E
\u3059
smfcore.virtual.quantityError
=
\u
53D6
\u
308A
\u
51FA
\u3057\u6570\u
91CF
\u
306F[{0}]
\u3067\u3042\u
308B
\u
5FC5
\u8981\u
304C
\u3042\u
308A
\u
307E
\u3059
smfcode.virtual.enter
=
\u
30D0
\u
30FC
\u
30B3
\u
30FC
\u
30C9
\u3092\u
30B9
\u
30AD
\u
30E3
\u
30F3
\u3001\u
307E
\u
305F
\u
306F
\u5165\u
529B
\u
5F8C
\u3001
Enter
\u
30AD
\u
30FC
\u3092\u
62BC
\u3057\u3066\u
304F
\u3060\u3055\u3044
smfcode.virtual.enter
=
\u
30D0
\u
30FC
\u
30B3
\u
30FC
\u
30C9
\u3092\u
30B9
\u
30AD
\u
30E3
\u
30F3
\u3001\u
307E
\u
305F
\u
306F
\u5165\u
529B
\u
5F8C
\u3001
Enter
\u
30AD
\u
30FC
\u3092\u
62BC
\u3057\u3066\u
304F
\u3060\u3055\u3044
smfcore.auth.expire
=
\u
8A8D
\u
8A3C
\u
304C
\u
671F
\u9650\u5207\u
308C
\u3067\u3059
smfcore.order.slotNum
=
\u
30B9
\u
30BF
\u
30F3
\u
30C9
\u
756A
\u
53F7
\ No newline at end of file
\ No newline at end of file
smfcore.auth.expire
=
\u
8A8D
\u
8A3C
\u
304C
\u
671F
\u9650\u5207\u
308C
\u3067\u3059
smfcore.order.slotNum
=
\u
30B9
\u
30BF
\u
30F3
\u
30C9
\u
756A
\u
53F7
smf.nexim.getInventoryFaile
=
did
\u
60C5
\u5831\u
306E
\u
53D6
\u
5F97
\u
306B
\u5931\u6557\u3057\u
307E
\u3057\u
305F: [{0}]
smfcore.registerdid.false
=
[{0}] did
\u
306E
\u
767B
\u9332\u
306B
\u5931\u6557\u3057\u
307E
\u3057\u
305F:[{1}]
\ No newline at end of file
\ No newline at end of file
src/main/resources/messages_zh_CN.properties
查看文件 @
bfbf7ec
...
@@ -423,4 +423,6 @@ smfcore.virtual.boxInPos=[{0}]\u5DF2\u5728\u5E93\u4F4D[{1}]\u4E2D,\u8BF7\u5148\u
...
@@ -423,4 +423,6 @@ smfcore.virtual.boxInPos=[{0}]\u5DF2\u5728\u5E93\u4F4D[{1}]\u4E2D,\u8BF7\u5148\u
smfcore.virtual.quantityError
=
\u
53D6
\u
51FA
\u6570\u
91CF
\u
5E94
\u
4E3A[{0}]
smfcore.virtual.quantityError
=
\u
53D6
\u
51FA
\u6570\u
91CF
\u
5E94
\u
4E3A[{0}]
smfcode.virtual.enter
=
\u
8BF7
\u
626B
\u
63CF
\u6216\u
8F93
\u5165\u6761\u7801\u
540E
\u6309\u
56DE
\u
8F66
\u
786E
\u
8BA4
smfcode.virtual.enter
=
\u
8BF7
\u
626B
\u
63CF
\u6216\u
8F93
\u5165\u6761\u7801\u
540E
\u6309\u
56DE
\u
8F66
\u
786E
\u
8BA4
smfcore.auth.expire
=
\u6388\u6743\u
5DF2
\u
8FC7
\u
671F
smfcore.auth.expire
=
\u6388\u6743\u
5DF2
\u
8FC7
\u
671F
smfcore.order.slotNum
=
\u
7AD9
\u
4F4D
\u
7F16
\u
53F7
\ No newline at end of file
\ No newline at end of file
smfcore.order.slotNum
=
\u
7AD9
\u
4F4D
\u
7F16
\u
53F7
smf.nexim.getInventoryFaile
=
\u
83B7
\u
53D6did
\u
4FE1
\u
606F
\u5931\u
8D25:[{0}]
smfcore.registerdid.false
=
[{0}]
\u
6CE8
\u
518Cdid
\u5931\u
8D25:[{1}]
\ No newline at end of file
\ No newline at end of file
src/main/resources/messages_zh_TW.properties
查看文件 @
bfbf7ec
...
@@ -423,4 +423,6 @@ smfcore.virtual.boxInPos=[{0}]\u5DF2\u5728\u5EAB\u4F4D[{1}]\u4E2D,\u8ACB\u5148\u
...
@@ -423,4 +423,6 @@ smfcore.virtual.boxInPos=[{0}]\u5DF2\u5728\u5EAB\u4F4D[{1}]\u4E2D,\u8ACB\u5148\u
smfcore.virtual.quantityError
=
\u
53D6
\u
51FA
\u6578\u
91CF
\u
61C9
\u
70BA[{0}]
smfcore.virtual.quantityError
=
\u
53D6
\u
51FA
\u6578\u
91CF
\u
61C9
\u
70BA[{0}]
smfcode.virtual.enter
=
\u
8ACB
\u6383\u
63CF
\u6216\u
8F38
\u5165\u
689D
\u
78BC
\u
5F8C
\u6309\u
56DE
\u
8ECA
\u
78BA
\u
8A8D
smfcode.virtual.enter
=
\u
8ACB
\u6383\u
63CF
\u6216\u
8F38
\u5165\u
689D
\u
78BC
\u
5F8C
\u6309\u
56DE
\u
8ECA
\u
78BA
\u
8A8D
smfcore.auth.expire
=
\u6388\u
6B0A
\u
5DF2
\u
904E
\u
671F
smfcore.auth.expire
=
\u6388\u
6B0A
\u
5DF2
\u
904E
\u
671F
smfcore.order.slotNum
=
\u
7AD9
\u
4F4D
\u
7DE8
\u
865F
\ No newline at end of file
\ No newline at end of file
smfcore.order.slotNum
=
\u
7AD9
\u
4F4D
\u
7DE8
\u
865F
smf.nexim.getInventoryFaile
=
\u
53D6
\u
5F97 did
\u
8CC7
\u
8A0A
\u5931\u6557
:[{0}]
smfcore.registerdid.false
=
[{0}]
\u
8A3B
\u
518Adid
\u5931\u6557
:[{1}]
\ No newline at end of file
\ No newline at end of file
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论