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 个修改的文件
包含
260 行增加
和
113 行删除
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
...
...
@@ -13,9 +13,11 @@ import com.neotel.smfcore.core.api.listener.BaseSmfApiListener;
import
com.neotel.smfcore.core.apiInteraction.enums.ApiInteraction_Status
;
import
com.neotel.smfcore.core.apiInteraction.service.manager.IApiInteractionManager
;
import
com.neotel.smfcore.core.apiInteraction.service.po.ApiInteraction
;
import
com.neotel.smfcore.core.barcode.service.manager.IBarcodeManager
;
import
com.neotel.smfcore.core.barcode.service.po.Barcode
;
import
com.neotel.smfcore.core.device.util.DataCache
;
import
com.neotel.smfcore.core.system.service.po.DataLog
;
import
com.neotel.smfcore.custom.nexim.bean.DIdInfo
;
import
com.neotel.smfcore.custom.nexim.bean.NeximConfig
;
import
com.neotel.smfcore.custom.nexim.config.NeximCacheConfig
;
import
com.neotel.smfcore.custom.nexim.util.NotifyUtil
;
...
...
@@ -23,10 +25,7 @@ import lombok.extern.slf4j.Slf4j;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.Arrays
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.Map
;
import
java.util.*
;
@Service
...
...
@@ -37,6 +36,9 @@ public class NeximApi extends BaseSmfApiListener {
private
DataCache
dataCache
;
@Autowired
private
IBarcodeManager
barcodeManager
;
@Autowired
private
IApiInteractionManager
apiInteractionManager
;
@Override
...
...
@@ -46,21 +48,59 @@ public class NeximApi extends BaseSmfApiListener {
@Override
public
Barcode
canPutInBeforeResolve
(
String
codeResolveUrl
,
CodeValidateParam
params
)
throws
ValidateException
{
String
code
=
params
.
getCode
();
Barcode
barcode
=
barcodeManager
.
get
(
code
);
if
(
barcode
==
null
)
{
barcode
=
new
Barcode
();
}
DIdInfo
did
=
getInventoryDid
(
code
);
if
(
did
!=
null
)
{
barcode
.
setBarcode
(
did
.
getDid
());
barcode
.
setPartNumber
(
did
.
getPartBarcode
());
barcode
.
setAmount
(
did
.
getQuantity
());
barcode
.
setProvider
(
did
.
getVendorName
());
barcode
.
setBatch
(
did
.
getLotName
());
//设置生产日期
String
dateCode
=
did
.
getDateCode
();
if
(
StringUtils
.
isNotEmpty
(
dateCode
))
{
dateCode
=
dateCode
.
replace
(
"Rec."
,
""
);
Date
produceDate
=
DateUtil
.
toDate
(
dateCode
,
"dd MM yyyy"
);
barcode
.
setProduceDate
(
produceDate
);
}
//设置过期日期
String
location
=
did
.
getLocation
();
if
(
StringUtils
.
isNotEmpty
(
location
))
{
location
=
location
.
replace
(
"Exp."
,
""
);
Date
expireDate
=
DateUtil
.
toDate
(
location
,
"dd MM yyyy"
);
barcode
.
setExpireDate
(
expireDate
);
}
barcode
.
updateAppendData
(
"didExist"
,
true
);
return
barcode
;
}
//如果不启用did注册,直接返回失败
if
(!
enableRegisterDid
()){
throw
new
ValidateException
(
"smf.nexim.getInventoryFaile"
,
"获取did信息失败:[{0}]"
,
new
String
[]{
""
});
}
return
null
;
}
@Override
public
Barcode
canPutInAfterResolve
(
String
inCheckUrl
,
CodeValidateParam
params
,
Barcode
barcode
)
throws
ValidateException
{
String
accessToken
=
getAccessToken
();
//log.info(barcode.getBarcode()+"获取token的结果为:"+accessToken);
boolean
hasDid
=
inventoryHasDid
(
barcode
.
getBarcode
(),
accessToken
);
if
(
hasDid
){
log
.
info
(
barcode
.
getBarcode
()+
"在Fuji中已经存在,直接返回"
);
//如果did已经在nexim系统存在,直接返回
Boolean
didExist
=
barcode
.
getAppendData
(
"didExist"
);
if
(
didExist
==
null
)
{
didExist
=
false
;
}
if
(
didExist
)
{
return
barcode
;
}
else
{
boolean
register
=
registerNewDid
(
barcode
,
accessToken
);
if
(
register
)
{
log
.
info
(
barcode
.
getBarcode
()+
"在Fuji中注册成功,直接返回"
);
}
boolean
register
=
registerNewDid
(
barcode
);
if
(
register
)
{
log
.
info
(
barcode
.
getBarcode
()
+
"在Fuji中注册成功,直接返回"
);
return
barcode
;
}
else
{
throw
new
ValidateException
(
"smfcore.registerdid.false"
,
barcode
.
getBarcode
()+
"注册失败"
);
}
throw
new
ValidateException
(
"smfcore.registerdid.false"
,
"[{0}]注册did失败:[{1}]"
,
new
String
[]{
barcode
.
getBarcode
(),
""
});
}
}
...
...
@@ -76,17 +116,92 @@ public class NeximApi extends BaseSmfApiListener {
if
(
task
.
isFinished
())
{
String
fileName
=
task
.
getAppendData
(
"fileName"
)
==
null
?
""
:
task
.
getAppendData
(
"fileName"
).
toString
();
String
sourceName
=
task
.
getAppendData
(
"jobName"
)
==
null
?
""
:
task
.
getAppendData
(
"jobName"
).
toString
();
NotifyUtil
.
createProvideEtn
(
task
.
getBarcode
(),
task
.
getPosName
(),
task
.
getNum
(),
""
,
task
.
getW
(),
task
.
getH
(),
task
.
getPartNumber
(),
sourceName
,
task
.
getLine
(),
task
.
getStorageName
(),
getNotifyEtn
(),
fileName
);
//NotifyUtil.createDeleteEtn(task.getBarcode(),task.getW(),task.getH(),task.getPartNumber(),FileDirectoryConfig.NOTIFY);
}
}
/**
* 获取登录的token
* @return
*/
public
String
getAccessToken
()
{
//默认写死
String
authDateUrl
=
"2025-11-20 00:00:00"
;
Date
authDate
=
DateUtil
.
toDate
(
authDateUrl
,
"yyyy-MM-dd HH:mm:ss"
);
if
(
System
.
currentTimeMillis
()
>
authDate
.
getTime
()){
throw
new
ValidateException
(
"smfcore.auth.expire"
,
"授权已过期"
);
}
public
boolean
registerNewDid
(
Barcode
barcode
,
String
accessToken
)
{
Map
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
paramMap
.
put
(
"userName"
,
getAuthUserName
());
paramMap
.
put
(
"password"
,
getAuthPassword
());
String
paramStr
=
JSON
.
toJSONString
(
paramMap
);
log
.
info
(
"获取Fuji的token参数为:"
+
paramStr
);
String
accessToken
=
""
;
String
result
=
""
;
try
{
result
=
HttpHelper
.
postJson
(
getAuthLogin
(),
paramMap
);
log
.
info
(
"获取Fuji的token结果为:"
+
result
);
JSONObject
resultObj
=
JSONObject
.
parseObject
(
result
);
accessToken
=
resultObj
.
getString
(
"accessToken"
);
}
catch
(
Exception
e
)
{
log
.
info
(
"获取Fuji的token异常:"
,
e
);
accessToken
=
""
;
}
String
status
=
""
;
if
(
StringUtils
.
isEmpty
(
accessToken
)){
status
=
ApiInteraction_Status
.
ERROE
;
}
apiInteractionManager
.
save
(
new
ApiInteraction
(
new
Date
(),
getAuthLogin
(),
paramStr
,
result
,
status
));
if
(
StringUtils
.
isEmpty
(
accessToken
))
{
throw
new
ValidateException
(
"smfcore.accessToken.ng"
,
"获取AccessToken失败"
);
}
return
accessToken
;
}
public
DIdInfo
getInventoryDid
(
String
code
)
{
Map
<
String
,
String
>
headerMap
=
new
HashMap
<>();
headerMap
.
put
(
"fujiAccessToken"
,
accessToken
);
headerMap
.
put
(
"fujiAccessToken"
,
getAccessToken
());
String
search
=
"did == \""
+
code
+
"\""
;
String
orderBy
=
"did asc"
;
int
pageToken
=
0
;
int
pageSize
=
200
;
Map
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
paramMap
.
put
(
"pageToken"
,
pageToken
);
paramMap
.
put
(
"pageSize"
,
pageSize
);
paramMap
.
put
(
"search"
,
search
);
paramMap
.
put
(
"orderBy"
,
orderBy
);
String
paramStr
=
JSON
.
toJSONString
(
paramMap
);
log
.
info
(
code
+
"获取did信息请求参数为:"
+
paramStr
);
String
result
=
null
;
try
{
result
=
HttpHelper
.
getParam
(
getInventoryDids
(),
headerMap
,
paramMap
);
log
.
info
(
code
+
"获取did信息请求结果为:"
+
result
);
//判断是否异常
JSONObject
jsonObject
=
JSONObject
.
parseObject
(
"result"
);
String
datas
=
jsonObject
.
getString
(
"datas"
);
List
<
DIdInfo
>
didInfoList
=
JSONObject
.
parseArray
(
datas
,
DIdInfo
.
class
);
for
(
DIdInfo
dIdInfo
:
didInfoList
)
{
if
(
dIdInfo
.
getDid
().
equals
(
code
))
{
apiInteractionManager
.
save
(
new
ApiInteraction
(
new
Date
(),
getInventoryDids
(),
paramStr
,
result
,
ApiInteraction_Status
.
OK
));
return
dIdInfo
;
}
}
}
catch
(
ApiException
e
)
{
log
.
info
(
code
+
"获取did信息报错:"
+
e
.
getMessage
());
apiInteractionManager
.
save
(
new
ApiInteraction
(
new
Date
(),
getInventoryDids
(),
paramStr
,
e
.
getMessage
(),
ApiInteraction_Status
.
ERROE
));
throw
new
ValidateException
(
"smf.nexim.getInventoryFaile"
,
"获取did信息失败:[{0}] "
,
new
String
[]{
e
.
getMessage
()});
}
return
null
;
}
public
boolean
registerNewDid
(
Barcode
barcode
)
{
Map
<
String
,
String
>
headerMap
=
new
HashMap
<>();
headerMap
.
put
(
"fujiAccessToken"
,
getAccessToken
());
Map
<
String
,
Object
>
params
=
new
HashMap
<>();
params
.
put
(
"did"
,
barcode
.
getBarcode
());
...
...
@@ -122,12 +237,12 @@ public class NeximApi extends BaseSmfApiListener {
JSONObject
resultObj
=
JSONObject
.
parseObject
(
result
);
Integer
addedCount
=
resultObj
.
getInteger
(
"addedCount"
);
if
(
addedCount
!=
null
&&
addedCount
>
0
){
apiInteractionManager
.
save
(
new
ApiInteraction
(
new
Date
(),
getAuthLogin
(),
paramStr
,
result
,
ApiInteraction_Status
.
OK
));
apiInteractionManager
.
save
(
new
ApiInteraction
(
new
Date
(),
inventoryDids
(),
paramStr
,
result
,
ApiInteraction_Status
.
OK
));
return
true
;
}
else
{
String
details
=
resultObj
.
getString
(
"details"
);
apiInteractionManager
.
save
(
new
ApiInteraction
(
new
Date
(),
getAuthLogin
(),
paramStr
,
result
,
ApiInteraction_Status
.
ERROE
));
throw
new
ValidateException
(
"smfcore.registerdid.false"
,
barcode
.
getBarcode
()+
"注册失败:"
+
details
);
apiInteractionManager
.
save
(
new
ApiInteraction
(
new
Date
(),
inventoryDids
(),
paramStr
,
result
,
ApiInteraction_Status
.
ERROE
));
throw
new
ValidateException
(
"smfcore.registerdid.false"
,
"[{0}]注册did失败:[{1}]"
,
new
String
[]{
barcode
.
getBarcode
(),
details
}
);
}
}
catch
(
ApiException
e
)
{
log
.
info
(
"注册Fuji的did失败:"
,
e
);
...
...
@@ -136,89 +251,6 @@ public class NeximApi extends BaseSmfApiListener {
return
false
;
}
public
boolean
inventoryHasDid
(
String
barcode
,
String
accessToken
)
{
Map
<
String
,
String
>
headerMap
=
new
HashMap
<>();
headerMap
.
put
(
"fujiAccessToken"
,
accessToken
);
String
search
=
"did == \""
+
barcode
+
"\""
;
String
orderBy
=
"did asc"
;
int
pageToken
=
0
;
int
pageSize
=
200
;
Map
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
paramMap
.
put
(
"pageToken"
,
pageToken
);
paramMap
.
put
(
"pageSize"
,
pageSize
);
paramMap
.
put
(
"search"
,
search
);
paramMap
.
put
(
"orderBy"
,
orderBy
);
String
paramStr
=
JSON
.
toJSONString
(
paramMap
);
String
result
=
""
;
try
{
result
=
HttpHelper
.
getParam
(
getInventoryDids
(),
headerMap
,
paramMap
);
log
.
info
(
barcode
+
"获取Fuji的inventory/dids结果为:"
+
result
);
JSONObject
resultObj
=
JSONObject
.
parseObject
(
result
);
JSONArray
dataArray
=
resultObj
.
getJSONArray
(
"datas"
);
if
(
dataArray
!=
null
&&
!
dataArray
.
isEmpty
()){
for
(
int
i
=
0
;
i
<
dataArray
.
size
();
i
++)
{
JSONObject
data
=
dataArray
.
getJSONObject
(
i
);
if
(
barcode
.
equals
(
data
.
getString
(
"did"
))){
apiInteractionManager
.
save
(
new
ApiInteraction
(
new
Date
(),
getAuthLogin
(),
paramStr
,
result
,
ApiInteraction_Status
.
OK
));
return
true
;
}
}
}
}
catch
(
ApiException
e
)
{
log
.
info
(
barcode
+
"获取Fuji的inventory/dids失败:"
,
e
.
getMessage
());
}
apiInteractionManager
.
save
(
new
ApiInteraction
(
new
Date
(),
getAuthLogin
(),
paramStr
,
result
,
ApiInteraction_Status
.
ERROE
));
return
false
;
}
/**
* 获取登录的token
* @return
*/
public
String
getAccessToken
()
{
//默认写死
String
authDateUrl
=
"2025-10-15 00:00:00"
;
Date
authDate
=
DateUtil
.
toDate
(
authDateUrl
,
"yyyy-MM-dd HH:mm:ss"
);
if
(
System
.
currentTimeMillis
()
>
authDate
.
getTime
()){
throw
new
ValidateException
(
"smfcore.auth.expire"
,
"授权已过期"
);
}
Map
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
paramMap
.
put
(
"userName"
,
getAuthUserName
());
paramMap
.
put
(
"password"
,
getAuthPassword
());
String
paramStr
=
JSON
.
toJSONString
(
paramMap
);
log
.
info
(
"获取Fuji的token参数为:"
+
paramStr
);
String
accessToken
=
""
;
String
result
=
""
;
try
{
result
=
HttpHelper
.
postJson
(
getAuthLogin
(),
paramMap
);
log
.
info
(
"获取Fuji的token结果为:"
+
result
);
JSONObject
resultObj
=
JSONObject
.
parseObject
(
result
);
accessToken
=
resultObj
.
getString
(
"accessToken"
);
}
catch
(
Exception
e
)
{
log
.
info
(
"获取Fuji的token异常:"
,
e
);
accessToken
=
""
;
}
String
status
=
""
;
if
(
StringUtils
.
isEmpty
(
accessToken
)){
status
=
ApiInteraction_Status
.
ERROE
;
}
apiInteractionManager
.
save
(
new
ApiInteraction
(
new
Date
(),
getAuthLogin
(),
paramStr
,
result
,
status
));
if
(
StringUtils
.
isEmpty
(
accessToken
))
{
throw
new
ValidateException
(
"smfcore.accessToken.ng"
,
"获取AccessToken失败"
);
}
return
accessToken
;
}
private
String
getAuthLogin
(){
NeximConfig
config
=
dataCache
.
getCache
(
NeximCacheConfig
.
NeximConfig_Cache_Name
);
if
(
config
==
null
)
{
...
...
@@ -267,4 +299,12 @@ public class NeximApi extends BaseSmfApiListener {
}
return
config
.
getOutputEtn
();
}
public
boolean
enableRegisterDid
(){
NeximConfig
config
=
dataCache
.
getCache
(
NeximCacheConfig
.
NeximConfig_Cache_Name
);
if
(
config
==
null
)
{
config
=
new
NeximConfig
();
}
return
config
.
isRegisterDid
();
}
}
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
src/main/java/com/neotel/smfcore/custom/nexim/bean/NeximConfig.java
查看文件 @
bfbf7ec
...
...
@@ -13,5 +13,6 @@ public class NeximConfig {
private
String
lastUpdateTime
=
""
;
private
String
inputEto
=
""
;
private
String
outputEtn
=
""
;
private
boolean
registerDid
=
false
;
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;
import
com.alibaba.fastjson.JSON
;
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.core.barcode.service.po.Barcode
;
import
com.neotel.smfcore.core.barcode.utils.CodeResolve
;
...
...
@@ -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.LiteOrderItem
;
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.dto.NeximConfigDto
;
import
com.neotel.smfcore.custom.nexim.config.NeximCacheConfig
;
...
...
@@ -63,6 +65,7 @@ public class NeximController {
config
.
setTime
(
newConfig
.
getTime
());
config
.
setUserName
(
newConfig
.
getUserName
());
config
.
setPassword
(
newConfig
.
getPassword
());
config
.
setRegisterDid
(
newConfig
.
isRegisterDid
());
dataCache
.
updateCache
(
NeximCacheConfig
.
NeximConfig_Cache_Name
,
config
);
return
ResultBean
.
newOkResult
(
""
);
}
...
...
@@ -88,7 +91,7 @@ public class NeximController {
dto
.
setEtoUpdateDateStr
(
getUpdateDate
(
config
.
getInputEto
()));
dto
.
setUserName
(
config
.
getUserName
());
dto
.
setPassword
(
config
.
getPassword
());
dto
.
setRegisterDid
(
config
.
isRegisterDid
());
return
ResultBean
.
newOkResult
(
dto
);
}
...
...
@@ -100,15 +103,21 @@ public class NeximController {
if
(
StringUtils
.
isEmpty
(
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
);
if
(
barcode
==
null
)
{
return
ResultBean
.
newErrorResult
(-
1
,
"smfcore.error.barcode.invalid"
,
"{0}不是有效的条码"
,
new
String
[]{
code
});
}
String
accessToken
=
neximApi
.
getAccessToken
();
boolean
hasDid
=
neximApi
.
inventoryHasDid
(
barcode
.
getBarcode
(),
accessToken
);
if
(!
hasDid
){
neximApi
.
registerNewDid
(
barcode
,
accessToken
);
boolean
hasDid
=
neximApi
.
registerNewDid
(
barcode
);
if
(!
hasDid
)
{
return
ResultBean
.
newErrorResult
(-
1
,
""
,
""
);
}
return
ResultBean
.
newOkResult
(
""
);
}
...
...
src/main/resources/messages.properties
查看文件 @
bfbf7ec
...
...
@@ -439,3 +439,5 @@ smfcore.auth.expire=\u6388\u6743\u5DF2\u8FC7\u671F
smfcore.order.slotNum
=
\u
7AD9
\u
4F4D
\u
7F16
\u
53F7
smfcore.reelPosMove.paramerror
=
\u
53C2
\u6570\u
4E0D
\u
5B8C
\u6574
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
...
...
@@ -427,3 +427,5 @@ 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
smfcore.auth.expire
=
Die Autorisierung ist abgelaufen
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
src/main/resources/messages_en_US.properties
查看文件 @
bfbf7ec
...
...
@@ -428,3 +428,5 @@ smfcore.virtual.quantityError=The quantity to be removed should be [{0}]
smfcode.virtual.enter
=
Please scan or enter the barcode, then press Enter
smfcore.auth.expire
=
Authorization has expired
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
src/main/resources/messages_fr_FR.properties
查看文件 @
bfbf7ec
...
...
@@ -427,3 +427,5 @@ smfcore.virtual.quantityError=La quantit\u00E9 \u00E0 retirer doit \u00EAtre [{0
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.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
src/main/resources/messages_ja_JP.properties
查看文件 @
bfbf7ec
...
...
@@ -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.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
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
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
src/main/resources/messages_zh_CN.properties
查看文件 @
bfbf7ec
...
...
@@ -424,3 +424,5 @@ smfcore.virtual.quantityError=\u53D6\u51FA\u6570\u91CF\u5E94\u4E3A[{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
smfcore.auth.expire
=
\u6388\u6743\u
5DF2
\u
8FC7
\u
671F
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
src/main/resources/messages_zh_TW.properties
查看文件 @
bfbf7ec
...
...
@@ -424,3 +424,5 @@ smfcore.virtual.quantityError=\u53D6\u51FA\u6578\u91CF\u61C9\u70BA[{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
smfcore.auth.expire
=
\u6388\u
6B0A
\u
5DF2
\u
904E
\u
671F
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
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论