Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
smf-core
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit cb09c08a
由
LN
编写于
2024-05-21 09:30:30 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
韩华接口修改
1 个父辈
7155d3d7
隐藏空白字符变更
内嵌
并排
正在显示
4 个修改的文件
包含
73 行增加
和
43 行删除
src/main/java/com/neotel/smfcore/core/dashboard/first/FirstDashboardController.java
src/main/java/com/neotel/smfcore/custom/hanwha/handler/HanwhaApiHandler.java
src/main/java/com/neotel/smfcore/custom/hanwha/handler/TMSCommunicator.java
src/main/java/com/neotel/smfcore/custom/hanwha/handler/bean/TMSPos.java
src/main/java/com/neotel/smfcore/core/dashboard/first/FirstDashboardController.java
查看文件 @
cb09c08
...
...
@@ -152,7 +152,11 @@ public class FirstDashboardController {
}
else
{
dto
.
setType
(
1
);
}
int
usage
=
(
storage
.
getTotalSlots
()
-
storage
.
getEmptySlots
())
*
100
/
storage
.
getTotalSlots
();
int
v
=
storage
.
getTotalSlots
();
if
(
v
==
0
){
v
=
1
;
}
int
usage
=
(
storage
.
getTotalSlots
()
-
storage
.
getEmptySlots
())
*
100
/
v
;
dto
.
setUsage
(
usage
);
int
inCount
=
getTodayInOutCount
(
storage
.
getId
(),
inOutDataList
,
true
);
...
...
src/main/java/com/neotel/smfcore/custom/hanwha/handler/HanwhaApiHandler.java
查看文件 @
cb09c08
...
...
@@ -46,33 +46,35 @@ public class HanwhaApiHandler extends BaseSmfApiListener {
@Override
public
void
inTaskStatusChange
(
String
inNotifyUrl
,
DataLog
task
)
{
if
(!
task
.
isPutInTask
())
{
return
;
}
if
(
task
.
isFinished
())
{
if
(
task
.
isPutInTask
())
{
List
<
TMSPartReelPos
>
list
=
new
ArrayList
<>();
TMSPartReelPos
bean
=
TMSPartReelPos
.
newBean
(
task
.
getPartNumber
(),
task
.
getBarcode
(),
task
.
getNum
(),
task
.
getCid
(),
task
.
getPosName
(),
1
,
task
.
getUpdateDate
().
getTime
(),
-
1
);
list
.
add
(
bean
);
log
.
info
(
"barcode["
+
task
.
getBarcode
()+
"],pn["
+
task
.
getPartNumber
()+
"],posName["
+
task
.
getPosName
()+
"]入库完成,调用 RequestSyncPartReelPosInfo"
);
tmsApis
.
RequestSyncPartReelPosInfo
(
0
,
list
);
List
<
TMSPartReelPos
>
list
=
new
ArrayList
<>();
TMSPartReelPos
bean
=
TMSPartReelPos
.
newBean
(
task
.
getPartNumber
(),
task
.
getBarcode
(),
task
.
getNum
(),
task
.
getCid
(),
task
.
getPosName
(),
1
,
task
.
getUpdateDate
().
getTime
(),
-
1
);
list
.
add
(
bean
);
}
log
.
info
(
"barcode["
+
task
.
getBarcode
()
+
"],pn["
+
task
.
getPartNumber
()
+
"],posName["
+
task
.
getPosName
()
+
"]入库完成,调用 RequestSyncPartReelPosInfo"
);
tmsApis
.
RequestSyncPartReelPosInfo
(
0
,
list
);
}
}
@Override
public
void
outTaskStatusChange
(
String
outNotifyUrl
,
DataLog
task
)
{
if
(!
task
.
isCheckOutTask
())
{
return
;
}
if
(
task
.
isFinished
())
{
if
(
task
.
isCheckOutTask
())
{
List
<
TMSPartReelPos
>
list
=
new
ArrayList
<>();
TMSPartReelPos
bean
=
TMSPartReelPos
.
newBean
(
task
.
getPartNumber
(),
task
.
getBarcode
(),
task
.
getNum
(),
task
.
getCid
(),
task
.
getPosName
(),
2
,
-
1
,
task
.
getUpdateDate
().
getTime
());
list
.
add
(
bean
);
List
<
TMSPartReelPos
>
list
=
new
ArrayList
<>();
TMSPartReelPos
bean
=
TMSPartReelPos
.
newBean
(
task
.
getPartNumber
(),
task
.
getBarcode
(),
task
.
getNum
(),
task
.
getCid
(),
task
.
getPosName
(),
2
,
-
1
,
task
.
getUpdateDate
().
getTime
());
list
.
add
(
bean
);
log
.
info
(
"barcode["
+
task
.
getBarcode
()
+
"],pn["
+
task
.
getPartNumber
()
+
"],posName["
+
task
.
getPosName
()
+
"]出库完成,调用 RequestSyncPartReelPosInfo"
);
tmsApis
.
RequestSyncPartReelPosInfo
(
0
,
list
);
log
.
info
(
"barcode["
+
task
.
getBarcode
()
+
"],pn["
+
task
.
getPartNumber
()
+
"],posName["
+
task
.
getPosName
()
+
"]出库完成,调用 RequestSyncPartReelPosInfo"
);
tmsApis
.
RequestSyncPartReelPosInfo
(
0
,
list
);
}
else
if
(
task
.
isCancel
())
{
//如果是工单料需要发送
}
}
}
...
...
src/main/java/com/neotel/smfcore/custom/hanwha/handler/TMSCommunicator.java
查看文件 @
cb09c08
...
...
@@ -7,6 +7,7 @@ import java.time.LocalDateTime;
import
java.time.format.DateTimeFormatter
;
import
java.util.*
;
import
cn.hutool.core.convert.Convert
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.neotel.smfcore.common.exception.ApiException
;
import
com.neotel.smfcore.common.exception.ValidateException
;
...
...
@@ -89,7 +90,7 @@ public class TMSCommunicator implements WsMsgReceivedListener {
return
gRequestID
++;
}
@PostConstruct
public
void
init
()
{
public
void
init
()
{
host
=
dataCache
.
getConfigCache
(
"hanwha.host"
,
host
);
String
webPortStr
=
dataCache
.
getConfigCache
(
"hanwha.webPort"
,
configWebPort
);
String
apiPortStr
=
dataCache
.
getConfigCache
(
"hanwha.apiPort"
,
configApiPort
);
...
...
@@ -504,7 +505,7 @@ public class TMSCommunicator implements WsMsgReceivedListener {
List
<
LiteOrderItem
>
liteOrderItems
=
new
ArrayList
<>();
int
index
=
0
;
for
(
String
pn
:
partItem
)
{
int
count
=
partCount
.
get
(
index
);
int
count
=
Convert
.
toInt
(
partCount
.
get
(
index
)
);
if
(
ObjectUtil
.
isNotEmpty
(
pn
)
&&
count
>
0
)
{
LiteOrderItem
item
=
new
LiteOrderItem
();
item
.
setPn
(
pn
);
...
...
@@ -532,8 +533,8 @@ public class TMSCommunicator implements WsMsgReceivedListener {
if
(
curroNum
>
item
.
getNeedNum
())
{
requestNum
=
task
.
getNum
()
-
(
curroNum
-
item
.
getNeedNum
());
}
TMSPart
p
=
TMSPart
.
newBean
(
task
.
getPartNumber
(),
task
.
getBarcode
(),
requestNum
,
task
.
getNum
(),
TMS_Code
.
CODE_
1010
,
task
.
getCid
(),
task
.
getPosName
());
log
.
info
(
"RequestDeliveryOrder pn="
+
task
.
getPartNumber
()+
",出库
结果:code="
+
TMS_Code
.
CODE_1010
+
",posName="
+
task
.
getPosName
()+
",barcode="
+
task
.
getBarcode
());
TMSPart
p
=
TMSPart
.
newBean
(
task
.
getPartNumber
(),
task
.
getBarcode
(),
requestNum
,
task
.
getNum
(),
TMS_Code
.
CODE_
2011
,
task
.
getCid
(),
task
.
getPosName
());
log
.
info
(
"RequestDeliveryOrder pn="
+
task
.
getPartNumber
()+
",出库
成功:code="
+
TMS_Code
.
CODE_2011
+
",posName="
+
task
.
getPosName
()+
",barcode="
+
task
.
getBarcode
());
parts
.
add
(
p
);
}
}
...
...
@@ -551,7 +552,7 @@ public class TMSCommunicator implements WsMsgReceivedListener {
}
catch
(
Exception
exception
)
{
log
.
error
(
"RequestDeliveryOrder error:"
+
exception
.
toString
());
log
.
error
(
"RequestDeliveryOrder error:"
+
exception
.
getMessage
());
}
ResponseDeliveryOrder
(
requestID
,
new
ArrayList
<>(),
""
);
}
...
...
@@ -612,8 +613,8 @@ public class TMSCommunicator implements WsMsgReceivedListener {
for
(
DataLog
task
:
dataLogs
)
{
if
(
task
.
isCheckOutTask
()
&&
task
.
getSourceName
().
equals
(
liteOrder
.
getOrderNo
())
&&
task
.
getBarcode
().
equals
(
item
.
getRi
()))
{
posResultMap
.
put
(
task
.
getPosName
(),
TMS_Code
.
CODE_
1010
);
//状态改为开始送货
log
.
info
(
"RequestDeliveryOrderByLocation : cid="
+
task
.
getCid
()+
", pos="
+
task
.
getPosName
()+
",出库成功,code="
+
TMS_Code
.
CODE_
1010
);
posResultMap
.
put
(
task
.
getPosName
(),
TMS_Code
.
CODE_
2011
);
//状态改为开始送货
log
.
info
(
"RequestDeliveryOrderByLocation : cid="
+
task
.
getCid
()+
", pos="
+
task
.
getPosName
()+
",出库成功,code="
+
TMS_Code
.
CODE_
2011
);
break
;
}
}
...
...
@@ -682,8 +683,8 @@ public class TMSCommunicator implements WsMsgReceivedListener {
for
(
DataLog
task
:
dataLogs
)
{
if
(
task
.
isCheckOutTask
()
&&
task
.
getSourceName
().
equals
(
liteOrder
.
getOrderNo
())
&&
task
.
getBarcode
().
equals
(
item
.
getRi
()))
{
posResultMap
.
put
(
task
.
getBarcode
(),
TMS_Code
.
CODE_
1010
);
//状态改为开始送货
log
.
info
(
"RequestDeliveryOrderByLocation : ri="
+
task
.
getBarcode
()+
", 出库成功,code="
+
TMS_Code
.
CODE_
1010
);
posResultMap
.
put
(
task
.
getBarcode
(),
TMS_Code
.
CODE_
2011
);
//状态改为开始送货
log
.
info
(
"RequestDeliveryOrderByLocation : ri="
+
task
.
getBarcode
()+
", 出库成功,code="
+
TMS_Code
.
CODE_
2011
);
break
;
}
}
...
...
@@ -724,14 +725,37 @@ public class TMSCommunicator implements WsMsgReceivedListener {
log
.
info
(
"RequestUpdateDeliveryReserveState : reserveCodes="
+
JsonUtil
.
toJsonStr
(
reserveCodes
)+
",resultCodes="
+
JsonUtil
.
toJsonStr
(
resultCodes
)+
" 返回结果"
);
if
(
reserveCodes
!=
null
&&
resultCodes
!=
null
&&
reserveCodes
.
size
()==
resultCodes
.
size
())
{
Collection
<
DataLog
>
dataLogCollections
=
taskService
.
getQueueTasks
();
for
(
int
i
=
0
;
i
<
reserveCodes
.
size
();
i
++){
String
reserveCode
=
reserveCodes
.
get
(
i
);
Integer
code
=
resultCodes
.
get
(
i
)
;
Integer
code
=
Convert
.
toInt
(
resultCodes
.
get
(
i
))
;
String
result
=
code
+
""
;
TMSReserve
tmsReserve
=
new
TMSReserve
();
tmsReserve
.
setReserveCode
(
reserveCode
);
tmsReserve
.
setPartList
(
new
ArrayList
<>());
tmsReserve
.
setResultCode
(
code
+
""
);
//如果code=2012,取消对应的出库任务
if
(
code
.
equals
(
TMS_Code
.
CODE_2012
)){
result
=
TMS_Code
.
CODE_2014
;
//查找对应的出库任务
for
(
DataLog
task
:
dataLogCollections
)
{
if
(
task
.
isCheckOutTask
()&&
task
.
getBarcode
().
equals
(
reserveCode
)
){
//判断任务是否可取消
boolean
cancelResult
=
taskService
.
cancelTask
(
task
.
getId
());
if
(
cancelResult
){
result
=
TMS_Code
.
CODE_2020
;
}
log
.
info
(
"RequestUpdateDeliveryReserveState 取消出库任务barcode:"
+
task
.
getBarcode
()+
", taskID:"
+
task
.
getId
()+
"成功"
);
break
;
}
}
}
tmsReserve
.
setResultCode
(
result
);
ReserveList
.
add
(
tmsReserve
);
}
}
...
...
src/main/java/com/neotel/smfcore/custom/hanwha/handler/bean/TMSPos.java
查看文件 @
cb09c08
...
...
@@ -37,20 +37,20 @@ public class TMSPos implements Serializable {
}
//posName=rowId_colId
int
index
=
posName
.
indexOf
(
'_'
);
if
(
index
>
0
){
setRowID
(
posName
.
substring
(
0
,
index
-
1
));
setColID
(
posName
.
substring
(
index
+
1
,
posName
.
length
()-
1
));
}
// String[] posArray = posName.split("_");
// if (posArray.length >= 2) {
// try {
// setColID(posArray[posArray.length - 1]);
// setRowID(posArray[posArray.length - 2]);
// } catch (Exception ex) {
// log.error("解析位置的行列失败 " + posName + "," + ex.toString());
// }
// int index=posName.indexOf('_');
// if(index>0){
// setRowID(posName.substring(0,index-1));
// setColID(posName.substring(index+1,posName.length()-1));
// }
String
[]
posArray
=
posName
.
split
(
"_"
);
if
(
posArray
.
length
>=
2
)
{
try
{
setColID
(
posArray
[
posArray
.
length
-
1
]);
setRowID
(
posArray
[
posArray
.
length
-
2
]);
}
catch
(
Exception
ex
)
{
log
.
error
(
"解析位置的行列失败 "
+
posName
+
","
+
ex
.
toString
());
}
}
}
}
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论