Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
smf-core
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 967875a1
由
zshaohui
编写于
2024-09-24 15:21:20 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
1.迈征对接功能提交
1 个父辈
f18b2cc3
显示空白字符变更
内嵌
并排
正在显示
18 个修改的文件
包含
175 行增加
和
107 行删除
src/main/java/com/neotel/smfcore/core/order/LiteOrderCache.java
src/main/java/com/neotel/smfcore/core/order/service/po/ItemOutDetail.java
src/main/java/com/neotel/smfcore/core/order/service/po/LiteOrder.java
src/main/java/com/neotel/smfcore/core/order/service/po/LiteOrderItem.java
src/main/java/com/neotel/smfcore/core/system/service/po/DataLog.java
src/main/java/com/neotel/smfcore/custom/lizhen/innerBox/rest/InnerBoxRestController.java
src/main/java/com/neotel/smfcore/custom/lizhen/innerBox/util/StorageExportUtil.java
src/main/java/com/neotel/smfcore/custom/lizhen/kafka/service/KafkaService.java
src/main/java/com/neotel/smfcore/custom/lizhen/third/maicheng/api/MaiZhengApi.java
src/main/java/com/neotel/smfcore/custom/lizhen/third/maicheng/bean/AskReelBox.java
src/main/java/com/neotel/smfcore/custom/lizhen/third/maicheng/bean/AskReelBoxList.java
src/main/java/com/neotel/smfcore/custom/lizhen/third/maicheng/bean/AskReelIDStateRequest.java
src/main/java/com/neotel/smfcore/custom/lizhen/third/maicheng/bean/AskReelIDStateResponse.java
src/main/java/com/neotel/smfcore/custom/lizhen/third/maicheng/bean/AskReelIDStateResponseList.java
src/main/java/com/neotel/smfcore/custom/lizhen/third/maicheng/controller/MaiZhengController.java
src/main/java/com/neotel/smfcore/custom/lizhen/third/maicheng/controller/MaiZhengDeviceController.java
src/main/java/com/neotel/smfcore/custom/lizhen/third/maicheng/util/MaiZhengUtil.java
src/main/resources/config/application-prod.yml
src/main/java/com/neotel/smfcore/core/order/LiteOrderCache.java
查看文件 @
967875a
...
@@ -20,6 +20,7 @@ import com.neotel.smfcore.core.order.enums.LITEORDER_STATUS;
...
@@ -20,6 +20,7 @@ import com.neotel.smfcore.core.order.enums.LITEORDER_STATUS;
import
com.neotel.smfcore.core.order.enums.ORDER_COLOR
;
import
com.neotel.smfcore.core.order.enums.ORDER_COLOR
;
import
com.neotel.smfcore.core.order.service.manager.ILiteOrderItemManager
;
import
com.neotel.smfcore.core.order.service.manager.ILiteOrderItemManager
;
import
com.neotel.smfcore.core.order.service.manager.ILiteOrderManager
;
import
com.neotel.smfcore.core.order.service.manager.ILiteOrderManager
;
import
com.neotel.smfcore.core.order.service.po.ItemOutDetail
;
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.core.storage.bean.InventoryItem
;
import
com.neotel.smfcore.core.storage.bean.InventoryItem
;
...
@@ -168,6 +169,12 @@ public class LiteOrderCache {
...
@@ -168,6 +169,12 @@ public class LiteOrderCache {
for
(
LiteOrder
order
:
for
(
LiteOrder
order
:
liteOrders
)
{
liteOrders
)
{
//迈征工单不自动出库,其他接口通知出库
if
(
order
.
isMaiZheng
()){
continue
;
}
if
(
order
.
isNew
()
||
order
.
isTaskFinished
())
{
if
(
order
.
isNew
()
||
order
.
isTaskFinished
())
{
if
(
order
.
isTaskFinished
()
&&
order
.
isMaiZheng
()){
if
(
order
.
isTaskFinished
()
&&
order
.
isMaiZheng
()){
...
@@ -344,6 +351,15 @@ public class LiteOrderCache {
...
@@ -344,6 +351,15 @@ public class LiteOrderCache {
liteOrderItem
.
setTotalOutNum
(
liteOrderItem
.
getTotalOutNum
()
+
task
.
getNum
());
liteOrderItem
.
setTotalOutNum
(
liteOrderItem
.
getTotalOutNum
()
+
task
.
getNum
());
liteOrderItem
.
setTotalOutReelCount
(
liteOrderItem
.
getTotalOutReelCount
()
+
1
);
liteOrderItem
.
setTotalOutReelCount
(
liteOrderItem
.
getTotalOutReelCount
()
+
1
);
liteOrderItem
.
setOutReelList
(
task
.
getBarcode
());
liteOrderItem
.
setOutReelList
(
task
.
getBarcode
());
//同时设置详情
ItemOutDetail
detail
=
new
ItemOutDetail
();
detail
.
setReelNew
(
task
.
getBarcode
());
detail
.
setReelNewLong
(
task
.
getFullCode
());
detail
.
setX
(
task
.
getX
());
detail
.
setY
(
task
.
getY
());
liteOrderItem
.
setOutDetailList
(
detail
);
liteOrderItem
.
setPositionList
(
task
.
getPosName
());
liteOrderItem
.
setPositionList
(
task
.
getPosName
());
liteOrderItem
=
liteOrderItemManager
.
save
(
liteOrderItem
);
liteOrderItem
=
liteOrderItemManager
.
save
(
liteOrderItem
);
}
}
...
...
src/main/java/com/neotel/smfcore/core/order/service/po/ItemOutDetail.java
0 → 100644
查看文件 @
967875a
package
com
.
neotel
.
smfcore
.
core
.
order
.
service
.
po
;
import
lombok.Data
;
@Data
public
class
ItemOutDetail
{
private
String
reelNew
;
private
String
reelNewLong
;
private
String
x
;
private
String
y
;
}
src/main/java/com/neotel/smfcore/core/order/service/po/LiteOrder.java
查看文件 @
967875a
...
@@ -166,15 +166,11 @@ public class LiteOrder extends BasePo implements Serializable {
...
@@ -166,15 +166,11 @@ public class LiteOrder extends BasePo implements Serializable {
//迈征额外参数
//迈征额外参数
private
String
guid
;
private
String
repoOrder
;
private
String
processType
;
private
String
cacheID
;
private
String
cacheIndex
;
private
String
reelBoxID
;
private
String
cacheSlot
;
private
String
recvIndex
;
private
String
count
;
private
String
count
;
private
String
dia
;
private
String
startTime
;
private
String
startTime
;
private
String
reelBoxId
;
...
...
src/main/java/com/neotel/smfcore/core/order/service/po/LiteOrderItem.java
查看文件 @
967875a
...
@@ -231,6 +231,7 @@ public class LiteOrderItem extends BasePo implements Serializable ,Comparable<Li
...
@@ -231,6 +231,7 @@ public class LiteOrderItem extends BasePo implements Serializable ,Comparable<Li
*/
*/
private
List
<
String
>
outReelList
;
private
List
<
String
>
outReelList
;
private
List
<
ItemOutDetail
>
outDetailList
;
private
String
width
;
private
String
width
;
...
@@ -256,6 +257,13 @@ public class LiteOrderItem extends BasePo implements Serializable ,Comparable<Li
...
@@ -256,6 +257,13 @@ public class LiteOrderItem extends BasePo implements Serializable ,Comparable<Li
outReelList
.
add
(
reel
);
outReelList
.
add
(
reel
);
}
}
public
void
setOutDetailList
(
ItemOutDetail
detail
)
{
if
(
outDetailList
==
null
){
outDetailList
=
new
ArrayList
<>();
}
outDetailList
.
add
(
detail
);
}
public
void
setPositionList
(
String
position
)
{
public
void
setPositionList
(
String
position
)
{
if
(
positionList
==
null
){
if
(
positionList
==
null
){
positionList
=
new
ArrayList
<>();
positionList
=
new
ArrayList
<>();
...
...
src/main/java/com/neotel/smfcore/core/system/service/po/DataLog.java
查看文件 @
967875a
...
@@ -362,6 +362,12 @@ public class DataLog extends BasePo implements Serializable {
...
@@ -362,6 +362,12 @@ public class DataLog extends BasePo implements Serializable {
*/
*/
private
int
height
=
0
;
private
int
height
=
0
;
//迈征的 弹夹 x,y坐标
private
String
x
;
private
String
y
;
//完整条码
private
String
fullCode
;
/**
/**
* 出口位置
* 出口位置
...
...
src/main/java/com/neotel/smfcore/custom/lizhen/innerBox/rest/InnerBoxRestController.java
查看文件 @
967875a
...
@@ -99,7 +99,9 @@ public class InnerBoxRestController {
...
@@ -99,7 +99,9 @@ public class InnerBoxRestController {
String
hSerial
=
request
.
getParameter
(
"hSerial"
);
//工单序号
String
hSerial
=
request
.
getParameter
(
"hSerial"
);
//工单序号
String
outlet
=
request
.
getParameter
(
"outlet"
);
//出口位置
String
outlet
=
request
.
getParameter
(
"outlet"
);
//出口位置
String
boxSide
=
request
.
getParameter
(
"boxSide"
);
//料箱隔口
String
boxSide
=
request
.
getParameter
(
"boxSide"
);
//料箱隔口
log
.
info
(
"IA 出库更新任务状态--barcode:{},status:{},loc:{},hSerial:{},outlet:{},boxSide:{},cid:{},outlet:{}"
,
code
,
status
,
loc
,
hSerial
,
outlet
,
boxSide
,
cid
,
outlet
);
String
x
=
request
.
getParameter
(
"x"
);
String
y
=
request
.
getParameter
(
"y"
);
log
.
info
(
"IA 出库更新任务状态--barcode:{},status:{},loc:{},hSerial:{},outlet:{},boxSide:{},cid:{},outlet:{},x:{},y:{}"
,
code
,
status
,
loc
,
hSerial
,
outlet
,
boxSide
,
cid
,
outlet
,
x
,
y
);
CodeBean
codeBean
=
codeResolve
.
resolveSingleCode
(
code
);
CodeBean
codeBean
=
codeResolve
.
resolveSingleCode
(
code
);
Barcode
barcode
=
codeBean
.
getBarcode
();
Barcode
barcode
=
codeBean
.
getBarcode
();
...
@@ -134,6 +136,14 @@ public class InnerBoxRestController {
...
@@ -134,6 +136,14 @@ public class InnerBoxRestController {
outFromPos
(
opTask
);
outFromPos
(
opTask
);
}
}
opTask
.
setStatus
(
status
);
opTask
.
setStatus
(
status
);
if
(
StringUtils
.
isNotEmpty
(
x
)){
opTask
.
setX
(
x
);
}
if
(
StringUtils
.
isNotEmpty
(
y
)){
opTask
.
setY
(
y
);
}
opTask
.
setFullCode
(
barcode
.
getFullCode
());
taskService
.
moveTaskToFinished
(
opTask
);
taskService
.
moveTaskToFinished
(
opTask
);
//清理锁定库位
//清理锁定库位
ReelLockPosUtil
.
removeReelLockPosInfo
(
code
);
ReelLockPosUtil
.
removeReelLockPosInfo
(
code
);
...
...
src/main/java/com/neotel/smfcore/custom/lizhen/innerBox/util/StorageExportUtil.java
查看文件 @
967875a
...
@@ -62,7 +62,7 @@ public class StorageExportUtil {
...
@@ -62,7 +62,7 @@ public class StorageExportUtil {
//出料口名称
//出料口名称
private
final
static
List
<
String
>
exportStrArr
=
Arrays
.
asList
(
"UM_2"
,
"UM_3"
,
"UM_4"
,
"UM_5"
);
private
final
static
List
<
String
>
exportStrArr
=
Arrays
.
asList
(
"UM_
1"
,
"UM_
2"
,
"UM_3"
,
"UM_4"
,
"UM_5"
);
//料仓前缀
//料仓前缀
public
static
final
String
EXPORT_PREFIX
=
"Storage_Export"
;
public
static
final
String
EXPORT_PREFIX
=
"Storage_Export"
;
...
...
src/main/java/com/neotel/smfcore/custom/lizhen/kafka/service/KafkaService.java
查看文件 @
967875a
...
@@ -71,6 +71,8 @@ public class KafkaService {
...
@@ -71,6 +71,8 @@ public class KafkaService {
//故障
//故障
boolean
fault
=
false
;
boolean
fault
=
false
;
String
ip
=
""
;
List
<
Map
<
String
,
String
>>
msgList
=
new
ArrayList
<>();
List
<
Map
<
String
,
String
>>
msgList
=
new
ArrayList
<>();
for
(
Storage
storage
:
storages
)
{
for
(
Storage
storage
:
storages
)
{
if
(
machineId
.
equals
(
storage
.
getMachineId
()))
{
if
(
machineId
.
equals
(
storage
.
getMachineId
()))
{
...
@@ -85,6 +87,7 @@ public class KafkaService {
...
@@ -85,6 +87,7 @@ public class KafkaService {
fault
=
true
;
fault
=
true
;
}
}
}
}
ip
=
statusBean
.
getClientIp
();
String
msg
=
statusBean
.
getMsg
();
String
msg
=
statusBean
.
getMsg
();
String
errorCode
=
statusBean
.
getErrorCode
();
String
errorCode
=
statusBean
.
getErrorCode
();
if
(
StringUtils
.
isNotBlank
(
msg
)
&&
StringUtils
.
isNotBlank
(
errorCode
))
{
if
(
StringUtils
.
isNotBlank
(
msg
)
&&
StringUtils
.
isNotBlank
(
errorCode
))
{
...
@@ -124,7 +127,7 @@ public class KafkaService {
...
@@ -124,7 +127,7 @@ public class KafkaService {
status
.
setMachineID
(
machineId
);
status
.
setMachineID
(
machineId
);
status
.
setTopicType
(
KafkaConfig
.
MACHINESTATUS_TOPIC
);
status
.
setTopicType
(
KafkaConfig
.
MACHINESTATUS_TOPIC
);
status
.
setCurrentStatus
(
currentStatus
);
status
.
setCurrentStatus
(
currentStatus
);
status
.
setClientIP
(
""
);
status
.
setClientIP
(
ip
);
if
(
msgList
!=
null
&&
!
msgList
.
isEmpty
())
{
if
(
msgList
!=
null
&&
!
msgList
.
isEmpty
())
{
for
(
Map
<
String
,
String
>
map
:
msgList
)
{
for
(
Map
<
String
,
String
>
map
:
msgList
)
{
...
@@ -336,7 +339,7 @@ public class KafkaService {
...
@@ -336,7 +339,7 @@ public class KafkaService {
machineStatus
.
setCurrentStatus
(
currentStatus
);
machineStatus
.
setCurrentStatus
(
currentStatus
);
machineStatus
.
setErrorCode
(
equipMsg
.
getErrorCode
());
machineStatus
.
setErrorCode
(
equipMsg
.
getErrorCode
());
machineStatus
.
setErrorMsg
(
equipMsg
.
getMsg
());
machineStatus
.
setErrorMsg
(
equipMsg
.
getMsg
());
machineStatus
.
setClientIP
(
""
);
machineStatus
.
setClientIP
(
statusBean
.
getClientIp
()
);
String
statusStr
=
JSON
.
toJSONString
(
machineStatus
);
String
statusStr
=
JSON
.
toJSONString
(
machineStatus
);
log
.
info
(
"出料口主题为:"
+
KafkaConfig
.
MACHINESTATUS_TOPIC
+
"内容为:"
+
statusStr
);
log
.
info
(
"出料口主题为:"
+
KafkaConfig
.
MACHINESTATUS_TOPIC
+
"内容为:"
+
statusStr
);
ListenableFuture
future
=
kafkaTemplate
.
send
(
KafkaConfig
.
MACHINESTATUS_TOPIC
,
statusStr
);
ListenableFuture
future
=
kafkaTemplate
.
send
(
KafkaConfig
.
MACHINESTATUS_TOPIC
,
statusStr
);
...
@@ -351,7 +354,7 @@ public class KafkaService {
...
@@ -351,7 +354,7 @@ public class KafkaService {
machineStatus
.
setCurrentStatus
(
currentStatus
);
machineStatus
.
setCurrentStatus
(
currentStatus
);
machineStatus
.
setErrorCode
(
""
);
machineStatus
.
setErrorCode
(
""
);
machineStatus
.
setErrorMsg
(
""
);
machineStatus
.
setErrorMsg
(
""
);
machineStatus
.
setClientIP
(
""
);
machineStatus
.
setClientIP
(
statusBean
.
getClientIp
()
);
String
statusStr
=
JSON
.
toJSONString
(
machineStatus
);
String
statusStr
=
JSON
.
toJSONString
(
machineStatus
);
log
.
info
(
"出料口主题为:"
+
KafkaConfig
.
MACHINESTATUS_TOPIC
+
"内容为:"
+
statusStr
);
log
.
info
(
"出料口主题为:"
+
KafkaConfig
.
MACHINESTATUS_TOPIC
+
"内容为:"
+
statusStr
);
ListenableFuture
future
=
kafkaTemplate
.
send
(
KafkaConfig
.
MACHINESTATUS_TOPIC
,
statusStr
);
ListenableFuture
future
=
kafkaTemplate
.
send
(
KafkaConfig
.
MACHINESTATUS_TOPIC
,
statusStr
);
...
...
src/main/java/com/neotel/smfcore/custom/lizhen/third/maicheng/api/MaiZhengApi.java
查看文件 @
967875a
...
@@ -57,7 +57,7 @@ public class MaiZhengApi {
...
@@ -57,7 +57,7 @@ public class MaiZhengApi {
public
String
transReelBox
(
LiteOrder
liteOrder
)
{
public
String
transReelBox
(
LiteOrder
liteOrder
)
{
Map
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
/*
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("GUID", liteOrder.getGuid());
paramMap.put("GUID", liteOrder.getGuid());
paramMap.put("CacheIndex", liteOrder.getCacheIndex());
paramMap.put("CacheIndex", liteOrder.getCacheIndex());
paramMap.put("CacheSlot", liteOrder.getCacheSlot());
paramMap.put("CacheSlot", liteOrder.getCacheSlot());
...
@@ -96,14 +96,18 @@ public class MaiZhengApi {
...
@@ -96,14 +96,18 @@ public class MaiZhengApi {
} catch (Exception e) {
} catch (Exception e) {
log.error("智能仓储备料完成后请求发料报错:" + e.getMessage());
log.error("智能仓储备料完成后请求发料报错:" + e.getMessage());
return e.getMessage();
return e.getMessage();
}
}*/
return
""
;
}
}
public
void
prepareReelBox
(
String
guid
,
String
result
)
{
public
void
prepareReelBox
(
String
repoOrder
,
String
result
,
String
startTime
)
{
Map
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
Map
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
paramMap
.
put
(
"GUID"
,
guid
);
paramMap
.
put
(
"RepoOrder"
,
repoOrder
);
paramMap
.
put
(
"Result"
,
result
);
paramMap
.
put
(
"StartTime"
,
startTime
);
if
(
"OK"
.
equals
(
result
))
{
paramMap
.
put
(
"Result"
,
true
);
}
log
.
info
(
"仓储回复可以开始备料入参为:"
+
JSON
.
toJSONString
(
paramMap
));
log
.
info
(
"仓储回复可以开始备料入参为:"
+
JSON
.
toJSONString
(
paramMap
));
try
{
try
{
...
@@ -116,7 +120,8 @@ public class MaiZhengApi {
...
@@ -116,7 +120,8 @@ public class MaiZhengApi {
public
void
workIdCancelApi
(
String
guid
)
{
public
void
workIdCancelApi
(
String
guid
)
{
Map
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
Map
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
paramMap
.
put
(
"GUID"
,
guid
);
paramMap
.
put
(
"RepoOrder"
,
guid
);
paramMap
.
put
(
"Reason"
,
"工单异常,手动取消"
);
log
.
info
(
"仓储请求取消工单入参为:"
+
JSON
.
toJSONString
(
paramMap
));
log
.
info
(
"仓储请求取消工单入参为:"
+
JSON
.
toJSONString
(
paramMap
));
try
{
try
{
String
resultStr
=
HttpHelper
.
postJson
(
workIdCancleApi
,
paramMap
);
String
resultStr
=
HttpHelper
.
postJson
(
workIdCancleApi
,
paramMap
);
...
...
src/main/java/com/neotel/smfcore/custom/lizhen/third/maicheng/bean/AskReelBox.java
查看文件 @
967875a
...
@@ -6,13 +6,10 @@ import java.util.List;
...
@@ -6,13 +6,10 @@ import java.util.List;
@Data
@Data
public
class
AskReelBox
{
public
class
AskReelBox
{
private
String
GUID
;
private
String
RepoOrder
;
private
String
ProcessType
;
private
String
CacheID
;
private
String
CacheIndex
;
private
String
ReelBoxID
;
private
String
CacheSlot
;
private
String
RecvIndex
;
private
String
Count
;
private
String
Count
;
private
String
Dia
;
private
String
StartTime
;
private
String
StartTime
;
private
List
<
AskReelBoxList
>
List
;
private
List
<
AskReelBoxList
>
List
;
}
}
src/main/java/com/neotel/smfcore/custom/lizhen/third/maicheng/bean/AskReelBoxList.java
查看文件 @
967875a
...
@@ -26,8 +26,4 @@ public class AskReelBoxList {
...
@@ -26,8 +26,4 @@ public class AskReelBoxList {
private
String
VENDOR
;
private
String
VENDOR
;
private
String
Pitch
;
private
String
Pitch
;
private
String
Num
;
private
String
Num
;
private
String
Width
;
private
String
Dia
;
private
String
REQ_REEL
;
private
String
REQ_QTY
;
}
}
src/main/java/com/neotel/smfcore/custom/lizhen/third/maicheng/bean/AskReelIDStateRequest.java
查看文件 @
967875a
...
@@ -9,7 +9,7 @@ import java.util.List;
...
@@ -9,7 +9,7 @@ import java.util.List;
@Data
@Data
public
class
AskReelIDStateRequest
{
public
class
AskReelIDStateRequest
{
private
String
Guid
;
private
String
SessionID
;
private
String
Count
;
private
String
Count
;
...
...
src/main/java/com/neotel/smfcore/custom/lizhen/third/maicheng/bean/AskReelIDStateResponse.java
查看文件 @
967875a
...
@@ -10,8 +10,8 @@ import java.util.List;
...
@@ -10,8 +10,8 @@ import java.util.List;
@Data
@Data
public
class
AskReelIDStateResponse
{
public
class
AskReelIDStateResponse
{
@JSONField
(
name
=
"
Guid
"
)
@JSONField
(
name
=
"
SessionID
"
)
private
String
Guid
;
private
String
SessionID
;
@JSONField
(
name
=
"Count"
)
@JSONField
(
name
=
"Count"
)
private
String
Count
;
private
String
Count
;
...
...
src/main/java/com/neotel/smfcore/custom/lizhen/third/maicheng/bean/AskReelIDStateResponseList.java
查看文件 @
967875a
...
@@ -15,6 +15,6 @@ public class AskReelIDStateResponseList {
...
@@ -15,6 +15,6 @@ public class AskReelIDStateResponseList {
private
String
State
;
private
String
State
;
@JSONField
(
name
=
"WorkID"
)
@JSONField
(
name
=
"WorkID"
)
private
String
WorkID
;
private
String
RepoOrder
;
}
}
src/main/java/com/neotel/smfcore/custom/lizhen/third/maicheng/controller/MaiZhengController.java
查看文件 @
967875a
...
@@ -94,9 +94,9 @@ public class MaiZhengController {
...
@@ -94,9 +94,9 @@ public class MaiZhengController {
public
Map
<
String
,
String
>
askReelBox
(
@RequestBody
AskReelBox
askReelBox
)
{
public
Map
<
String
,
String
>
askReelBox
(
@RequestBody
AskReelBox
askReelBox
)
{
log
.
info
(
"收到迈征请求数据为:"
+
JSON
.
toJSONString
(
askReelBox
));
log
.
info
(
"收到迈征请求数据为:"
+
JSON
.
toJSONString
(
askReelBox
));
String
result
=
"OK"
;
String
result
=
"OK"
;
askReelBoxMap
.
put
(
askReelBox
.
get
GUID
(),
askReelBox
);
askReelBoxMap
.
put
(
askReelBox
.
get
RepoOrder
(),
askReelBox
);
Map
<
String
,
String
>
resultMap
=
new
HashMap
<>();
Map
<
String
,
String
>
resultMap
=
new
HashMap
<>();
resultMap
.
put
(
"
GUID"
,
askReelBox
.
getGUID
());
resultMap
.
put
(
"
RepoOrder"
,
askReelBox
.
getRepoOrder
());
resultMap
.
put
(
"Result"
,
result
);
resultMap
.
put
(
"Result"
,
result
);
return
resultMap
;
return
resultMap
;
}
}
...
@@ -111,8 +111,9 @@ public class MaiZhengController {
...
@@ -111,8 +111,9 @@ public class MaiZhengController {
if
(
askReelBoxMap
!=
null
&&
!
askReelBoxMap
.
isEmpty
())
{
if
(
askReelBoxMap
!=
null
&&
!
askReelBoxMap
.
isEmpty
())
{
for
(
Map
.
Entry
<
String
,
AskReelBox
>
entry
:
askReelBoxMap
.
entrySet
())
{
for
(
Map
.
Entry
<
String
,
AskReelBox
>
entry
:
askReelBoxMap
.
entrySet
())
{
log
.
info
(
"开始处理:"
+
entry
.
getKey
()
+
"的数据"
);
log
.
info
(
"开始处理:"
+
entry
.
getKey
()
+
"的数据"
);
String
result
=
createMaiZhengOrder
(
entry
.
getKey
(),
entry
.
getValue
());
AskReelBox
askReelBox
=
entry
.
getValue
();
maiZhengApi
.
prepareReelBox
(
entry
.
getKey
(),
result
);
String
result
=
createMaiZhengOrder
(
entry
.
getKey
(),
askReelBox
);
maiZhengApi
.
prepareReelBox
(
entry
.
getKey
(),
result
,
askReelBox
.
getStartTime
());
log
.
info
(
"处理结束:"
+
entry
.
getKey
()
+
"的数据,结果为:"
+
result
);
log
.
info
(
"处理结束:"
+
entry
.
getKey
()
+
"的数据,结果为:"
+
result
);
}
}
askReelBoxMap
.
clear
();
askReelBoxMap
.
clear
();
...
@@ -142,14 +143,11 @@ public class MaiZhengController {
...
@@ -142,14 +143,11 @@ public class MaiZhengController {
if
(
liteOrder
==
null
)
{
if
(
liteOrder
==
null
)
{
liteOrder
=
new
LiteOrder
();
liteOrder
=
new
LiteOrder
();
}
}
liteOrder
.
setOrderNo
(
askReelBox
.
getGUID
());
liteOrder
.
setOrderNo
(
askReelBox
.
getRepoOrder
());
liteOrder
.
setGuid
(
askReelBox
.
getGUID
());
liteOrder
.
setCacheID
(
askReelBox
.
getCacheID
());
liteOrder
.
setCacheIndex
(
askReelBox
.
getCacheIndex
());
liteOrder
.
setRepoOrder
(
askReelBox
.
getRepoOrder
());
liteOrder
.
setCacheSlot
(
askReelBox
.
getCacheSlot
());
liteOrder
.
setReelBoxID
(
askReelBox
.
getReelBoxID
());
liteOrder
.
setRecvIndex
(
askReelBox
.
getRecvIndex
());
liteOrder
.
setCount
(
askReelBox
.
getCount
());
liteOrder
.
setCount
(
askReelBox
.
getCount
());
liteOrder
.
setReelBoxId
(
StorageExportUtil
.
getMaizhengExport
());
liteOrder
.
setDia
(
askReelBox
.
getDia
());
liteOrder
.
setStartTime
(
askReelBox
.
getStartTime
());
liteOrder
.
setStartTime
(
askReelBox
.
getStartTime
());
liteOrder
.
setMaiZheng
(
true
);
liteOrder
.
setMaiZheng
(
true
);
...
@@ -173,8 +171,6 @@ public class MaiZhengController {
...
@@ -173,8 +171,6 @@ public class MaiZhengController {
item
.
setSubSlot
(
box
.
getSUBSLOT
());
item
.
setSubSlot
(
box
.
getSUBSLOT
());
item
.
setPn
(
box
.
getPARTNUMBER
());
item
.
setPn
(
box
.
getPARTNUMBER
());
item
.
setReel
(
box
.
getREEL
());
item
.
setReel
(
box
.
getREEL
());
item
.
setWidth
(
box
.
getWidth
());
item
.
setDia
(
box
.
getDia
());
item
.
setOrderId
(
liteOrder
.
getId
());
item
.
setOrderId
(
liteOrder
.
getId
());
item
.
setOrderNo
(
liteOrder
.
getOrderNo
());
item
.
setOrderNo
(
liteOrder
.
getOrderNo
());
...
@@ -200,7 +196,7 @@ public class MaiZhengController {
...
@@ -200,7 +196,7 @@ public class MaiZhengController {
log
.
info
(
"收到迈征请求指定Reel的位置:"
+
JSON
.
toJSONString
(
request
));
log
.
info
(
"收到迈征请求指定Reel的位置:"
+
JSON
.
toJSONString
(
request
));
String
guid
=
request
.
getGuid
();
String
sessionID
=
request
.
getSessionID
();
String
count
=
request
.
getCount
();
String
count
=
request
.
getCount
();
List
<
AskReelIDStateResponseList
>
responseList
=
new
ArrayList
<>();
List
<
AskReelIDStateResponseList
>
responseList
=
new
ArrayList
<>();
...
@@ -210,7 +206,7 @@ public class MaiZhengController {
...
@@ -210,7 +206,7 @@ public class MaiZhengController {
AskReelIDStateResponseList
reelIDResponse
=
new
AskReelIDStateResponseList
();
AskReelIDStateResponseList
reelIDResponse
=
new
AskReelIDStateResponseList
();
reelIDResponse
.
setState
(
"0"
);
reelIDResponse
.
setState
(
"0"
);
reelIDResponse
.
setReelID
(
reelId
);
reelIDResponse
.
setReelID
(
reelId
);
reelIDResponse
.
set
WorkID
(
""
);
reelIDResponse
.
set
RepoOrder
(
""
);
//判断是否在库存中
//判断是否在库存中
StoragePos
storagePos
=
storagePosManager
.
getByBarcode
(
reelId
);
StoragePos
storagePos
=
storagePosManager
.
getByBarcode
(
reelId
);
if
(
storagePos
!=
null
)
{
if
(
storagePos
!=
null
)
{
...
@@ -223,7 +219,7 @@ public class MaiZhengController {
...
@@ -223,7 +219,7 @@ public class MaiZhengController {
if
(!
dataLog
.
isCancel
()
&&
StringUtils
.
isNotBlank
(
dataLog
.
getSourceId
())
&&
dataLog
.
isCheckOutTask
())
{
if
(!
dataLog
.
isCancel
()
&&
StringUtils
.
isNotBlank
(
dataLog
.
getSourceId
())
&&
dataLog
.
isCheckOutTask
())
{
log
.
info
(
reelId
+
":已经绑定工单发出,工单号为:"
+
dataLog
.
getSourceName
());
log
.
info
(
reelId
+
":已经绑定工单发出,工单号为:"
+
dataLog
.
getSourceName
());
reelIDResponse
.
setState
(
"2"
);
reelIDResponse
.
setState
(
"2"
);
reelIDResponse
.
set
WorkID
(
dataLog
.
getSourceName
());
reelIDResponse
.
set
RepoOrder
(
dataLog
.
getSourceName
());
}
}
}
}
}
}
...
@@ -231,7 +227,7 @@ public class MaiZhengController {
...
@@ -231,7 +227,7 @@ public class MaiZhengController {
}
}
AskReelIDStateResponse
response
=
new
AskReelIDStateResponse
();
AskReelIDStateResponse
response
=
new
AskReelIDStateResponse
();
response
.
set
Guid
(
guid
);
response
.
set
SessionID
(
sessionID
);
response
.
setCount
(
count
);
response
.
setCount
(
count
);
response
.
setList
(
responseList
);
response
.
setList
(
responseList
);
log
.
info
(
JSON
.
toJSONString
(
response
));
log
.
info
(
JSON
.
toJSONString
(
response
));
...
...
src/main/java/com/neotel/smfcore/custom/lizhen/third/maicheng/controller/MaiZhengDeviceController.java
查看文件 @
967875a
...
@@ -3,9 +3,12 @@ package com.neotel.smfcore.custom.lizhen.third.maicheng.controller;
...
@@ -3,9 +3,12 @@ package com.neotel.smfcore.custom.lizhen.third.maicheng.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.utils.StringUtils
;
import
com.neotel.smfcore.common.utils.StringUtils
;
import
com.neotel.smfcore.core.order.LiteOrderCache
;
import
com.neotel.smfcore.core.order.service.manager.ILiteOrderManager
;
import
com.neotel.smfcore.core.order.service.manager.ILiteOrderManager
;
import
com.neotel.smfcore.core.order.service.po.ItemOutDetail
;
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.core.system.service.po.DataLog
;
import
com.neotel.smfcore.core.system.util.TaskService
;
import
com.neotel.smfcore.core.system.util.TaskService
;
import
com.neotel.smfcore.custom.lizhen.innerBox.bean.StorageExport
;
import
com.neotel.smfcore.custom.lizhen.innerBox.bean.StorageExport
;
import
com.neotel.smfcore.custom.lizhen.innerBox.util.StorageExportUtil
;
import
com.neotel.smfcore.custom.lizhen.innerBox.util.StorageExportUtil
;
...
@@ -18,10 +21,8 @@ import org.springframework.beans.factory.annotation.Autowired;
...
@@ -18,10 +21,8 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.ArrayList
;
import
java.util.*
;
import
java.util.HashMap
;
import
java.util.stream.Collectors
;
import
java.util.List
;
import
java.util.Map
;
@Slf4j
@Slf4j
@RestController
@RestController
...
@@ -38,6 +39,9 @@ public class MaiZhengDeviceController {
...
@@ -38,6 +39,9 @@ public class MaiZhengDeviceController {
@Autowired
@Autowired
private
MaiZhengApi
maiZhengApi
;
private
MaiZhengApi
maiZhengApi
;
@Autowired
private
LiteOrderCache
liteOrderCache
;
@ApiOperation
(
"请求迈征是否可以运送"
)
@ApiOperation
(
"请求迈征是否可以运送"
)
@RequestMapping
(
"/transReelBox"
)
@RequestMapping
(
"/transReelBox"
)
@AnonymousAccess
@AnonymousAccess
...
@@ -73,7 +77,7 @@ public class MaiZhengDeviceController {
...
@@ -73,7 +77,7 @@ public class MaiZhengDeviceController {
String
material
=
export
.
getMaterial
();
String
material
=
export
.
getMaterial
();
if
(
StringUtils
.
isNotBlank
(
material
)){
if
(
StringUtils
.
isNotBlank
(
material
)){
liteOrder
.
setReelBoxId
(
material
);
//
liteOrder.setReelBoxId(material);
}
}
//请求迈征的接口,是否可以放入
//请求迈征的接口,是否可以放入
...
@@ -91,54 +95,87 @@ public class MaiZhengDeviceController {
...
@@ -91,54 +95,87 @@ public class MaiZhengDeviceController {
@ApiOperation
(
"获取迈征请求数据"
)
@ApiOperation
(
"获取迈征请求数据"
)
@RequestMapping
(
"/getTransReelBoxData"
)
@RequestMapping
(
"/getTransReelBoxData"
)
@AnonymousAccess
@AnonymousAccess
public
ResultBean
getTransReelBoxData
(
String
exportStr
)
{
public
ResultBean
getTransReelBoxData
(
String
orderNo
)
{
StorageExport
export
=
StorageExportUtil
.
getExport
(
exportStr
+
StorageExportUtil
.
OUT_STATION
);
log
.
info
(
exportStr
+
"获取到出料口信息为:"
+
JSON
.
toJSONString
(
export
));
String
hSerial
=
export
.
getHSerial
();
if
(
StringUtils
.
isBlank
(
hSerial
))
{
return
ResultBean
.
newErrorResult
(-
1
,
"smfcore.valueNotExist"
,
"{0}[{1}]不存在"
,
new
String
[]{
exportStr
,
"hSerial"
});
}
LiteOrder
liteOrder
=
liteOrderManager
.
findByOrderNo
(
hSerial
);
if
(
StringUtils
.
isEmpty
(
orderNo
)){
if
(
liteOrder
==
null
)
{
return
ResultBean
.
newErrorResult
(-
1
,
""
,
"工单号不能为空"
);
return
ResultBean
.
newErrorResult
(-
1
,
"smfcore.valueNotExist"
,
"{0}[{1}]不存在"
,
new
String
[]{
"orderNo"
,
hSerial
});
}
}
String
material
=
export
.
getMaterial
(
);
LiteOrder
liteOrder
=
liteOrderManager
.
findByOrderNo
(
orderNo
);
if
(
StringUtils
.
isNotBlank
(
material
)
)
{
if
(
liteOrder
==
null
)
{
liteOrder
.
setReelBoxId
(
material
);
return
ResultBean
.
newErrorResult
(-
1
,
"smfcore.valueNotExist"
,
"{0}[{1}]不存在"
,
new
String
[]{
"orderNo"
,
orderNo
}
);
}
}
Map
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
Map
<
String
,
Object
>
paramMap
=
new
HashMap
<>();
paramMap
.
put
(
"GUID"
,
liteOrder
.
getGuid
());
paramMap
.
put
(
"RepoOrder"
,
liteOrder
.
getOrderNo
());
paramMap
.
put
(
"CacheIndex"
,
liteOrder
.
getCacheIndex
());
paramMap
.
put
(
"Count"
,
liteOrder
.
getCount
());
paramMap
.
put
(
"CacheSlot"
,
liteOrder
.
getCacheSlot
());
paramMap
.
put
(
"CacheID"
,
liteOrder
.
getCacheID
());
paramMap
.
put
(
"RecvIndex"
,
liteOrder
.
getRecvIndex
());
paramMap
.
put
(
"ReelBoxID"
,
liteOrder
.
getReelBoxID
());
paramMap
.
put
(
"Count"
,
liteOrder
.
getCount
());
paramMap
.
put
(
"StartTime"
,
liteOrder
.
getStartTime
());
paramMap
.
put
(
"ReelBoxID"
,
liteOrder
.
getReelBoxId
());
paramMap
.
put
(
"Dia"
,
liteOrder
.
getDia
());
paramMap
.
put
(
"StartTime"
,
liteOrder
.
getStartTime
());
List
<
Map
<
String
,
Object
>>
list
=
new
ArrayList
<>();
List
<
Map
<
String
,
Object
>>
list
=
new
ArrayList
<>();
List
<
LiteOrderItem
>
orderItemList
=
liteOrder
.
getOrderItems
();
List
<
LiteOrderItem
>
orderItemList
=
liteOrder
.
getOrderItems
();
for
(
LiteOrderItem
orderItem
:
orderItemList
)
{
for
(
LiteOrderItem
orderItem
:
orderItemList
)
{
List
<
String
>
outReelList
=
orderItem
.
getOutRee
lList
();
List
<
ItemOutDetail
>
outDetailList
=
orderItem
.
getOutDetai
lList
();
if
(
out
ReelList
!=
null
&&
!
outReelList
.
isEmpty
())
{
if
(
out
DetailList
!=
null
&&
!
outDetailList
.
isEmpty
())
{
for
(
int
i
=
0
;
i
<
outReelList
.
size
();
i
++
)
{
for
(
ItemOutDetail
detail
:
outDetailList
)
{
Map
<
String
,
Object
>
itemM
ap
=
new
HashMap
<>();
Map
<
String
,
Object
>
m
ap
=
new
HashMap
<>();
itemMap
.
put
(
"Position"
,
orderItem
.
getPositionList
().
get
(
i
));
map
.
put
(
"PARTNUMBER"
,
orderItem
.
getPn
(
));
itemMap
.
put
(
"PARTNUMBER"
,
orderItem
.
getPn
());
map
.
put
(
"ReelNewLong"
,
detail
.
getReelNewLong
());
itemMap
.
put
(
"REEL"
,
orderItem
.
getReel
());
map
.
put
(
"ReelNew"
,
detail
.
getReelNew
());
itemMap
.
put
(
"REELNew"
,
outReelList
.
get
(
i
));
map
.
put
(
"ReelOld"
,
orderItem
.
getReel
(
));
itemMap
.
put
(
"Width"
,
orderItem
.
getWidth
());
map
.
put
(
"X"
,
detail
.
getX
());
itemMap
.
put
(
"Dia"
,
orderItem
.
getDia
());
map
.
put
(
"Y"
,
detail
.
getY
());
list
.
add
(
itemM
ap
);
list
.
add
(
m
ap
);
}
}
}
}
}
}
paramMap
.
put
(
"List"
,
list
);
paramMap
.
put
(
"List"
,
list
);
return
ResultBean
.
newOkResult
(
paramMap
);
return
ResultBean
.
newOkResult
(
paramMap
);
}
}
@ApiOperation
(
"流水线通知服务器出库"
)
@RequestMapping
(
"/mBoxReady"
)
@AnonymousAccess
public
ResultBean
mBoxReady
(
String
boxBarcode
)
{
//获取迈征出料口信息
StorageExport
export
=
StorageExportUtil
.
getExport
(
StorageExportUtil
.
getMaizhengExport
());
log
.
info
(
"流水线通知服务器出库:"
+
StorageExportUtil
.
getMaizhengExport
()+
"获取到的出料口信息为:"
+
JSON
.
toJSONString
(
export
)+
"料串为:"
+
boxBarcode
);
int
remainCount
=
0
;
String
orderNo
=
export
.
getHSerial
();
if
(
StringUtils
.
isNotEmpty
(
orderNo
))
{
List
<
DataLog
>
allTasks
=
taskService
.
getAllTasks
();
for
(
DataLog
dataLog
:
allTasks
)
{
if
(
orderNo
.
equals
(
dataLog
.
getSourceName
())){
if
(!
dataLog
.
isCancel
()
&&
!
dataLog
.
isFinished
()){
remainCount
++;
}
}
}
}
if
(
remainCount
>
0
){
return
ResultBean
.
newErrorResult
(-
1
,
""
,
orderNo
+
"正在执行,剩余数量为:"
+
remainCount
);
}
//获取是迈征的,新建的工单
List
<
LiteOrder
>
maiZhengOrderList
=
new
ArrayList
<>();
for
(
LiteOrder
order
:
liteOrderCache
.
getAllLiteOrder
())
{
if
(
order
.
isMaiZheng
()
&&
order
.
isNew
()){
maiZhengOrderList
.
add
(
order
);
}
}
if
(
maiZhengOrderList
==
null
||
maiZhengOrderList
.
isEmpty
()){
return
ResultBean
.
newErrorResult
(-
1
,
""
,
"没有需要执行的迈征工单"
);
}
//按时间进行排序,获取到第一个
maiZhengOrderList
=
maiZhengOrderList
.
stream
().
sorted
(
Comparator
.
comparing
(
LiteOrder
::
getCreateDate
)).
collect
(
Collectors
.
toList
());
LiteOrder
liteOrder
=
maiZhengOrderList
.
get
(
0
);
liteOrderCache
.
checkOutLiteOrder
(
liteOrder
.
getOrderNo
(),
false
,
StorageExportUtil
.
getMaizhengExport
());
return
ResultBean
.
newOkResult
(
""
);
}
}
}
src/main/java/com/neotel/smfcore/custom/lizhen/third/maicheng/util/MaiZhengUtil.java
查看文件 @
967875a
...
@@ -49,24 +49,7 @@ public class MaiZhengUtil {
...
@@ -49,24 +49,7 @@ public class MaiZhengUtil {
}
}
}
}
//判断是否一盘没出
boolean
hasOut
=
false
;
List
<
LiteOrderItem
>
orderItems
=
liteOrder
.
getOrderItems
();
for
(
LiteOrderItem
orderItem
:
orderItems
)
{
if
(
orderItem
.
getTotalOutReelCount
()
>
0
){
hasOut
=
true
;
break
;
}
}
if
(!
hasOut
){
maiZhengApi
.
workIdCancelApi
(
orderNo
);
}
else
{
if
(
liteOrder
.
isTransReelBox
()){
maiZhengApi
.
workIdCancelApi
(
orderNo
);
maiZhengApi
.
workIdCancelApi
(
orderNo
);
}
else
{
throw
new
ValidateException
(
""
,
"工单:"
+
orderNo
+
"当前料串未拉走,不允许关闭"
);
}
}
}
}
}
}
}
}
src/main/resources/config/application-prod.yml
查看文件 @
967875a
...
@@ -77,8 +77,8 @@ file:
...
@@ -77,8 +77,8 @@ file:
#迈征配置
#迈征配置
maizheng
:
maizheng
:
stationStatusApi
:
#http://10.190.196.124:8300/API/MZSM
stationStatusApi
:
#http://10.190.196.124:8300/API/MZSM
export
:
#MU3
_1
export
:
UM
_1
transReelBoxApi
:
#http://10.190.196.124:52232/API/TransReelBoxAuto
transReelBoxApi
:
#http://10.190.196.124:52232/API/TransReelBoxAuto
prepareReelBoxApi
:
#http://10.190.196.124:52232/API/PrepareReelBoxAuto
prepareReelBoxApi
:
http://10.68.16.52:52231/API/Repo/PrepareReelBox
workIdCancleApi
:
#http://10.190.196.124:52232/API/workID
Cancle
workIdCancleApi
:
http://10.68.16.52:52231/API/Repo/RepoOrder
Cancle
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论