Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
smf-core
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 2f4317f0
由
sunke
编写于
2022-08-08 09:00:31 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
同一个工单有两个相同PN站位时出库通知只有一个站位的问题修正
转巴西出库 线边仓间入库
1 个父辈
c7cccdd3
隐藏空白字符变更
内嵌
并排
正在显示
17 个修改的文件
包含
67 行增加
和
44 行删除
src/main/java/com/neotel/smfcore/common/init/DataInitManager.java
src/main/java/com/neotel/smfcore/core/device/handler/impl/BaseDeviceHandler.java
src/main/java/com/neotel/smfcore/core/hik/enums/IN_OUT_TYPE.java
src/main/java/com/neotel/smfcore/core/hik/rest/SingleInController.java
src/main/java/com/neotel/smfcore/core/inList/service/po/InList.java
src/main/java/com/neotel/smfcore/core/inList/util/InListCache.java
src/main/java/com/neotel/smfcore/core/order/LiteOrderCache.java
src/main/java/com/neotel/smfcore/core/order/rest/OrderController.java
src/main/java/com/neotel/smfcore/core/order/service/po/LiteOrder.java
src/main/java/com/neotel/smfcore/core/outList/service/po/OutList.java
src/main/java/com/neotel/smfcore/core/outList/util/OutListCache.java
src/main/java/com/neotel/smfcore/core/system/rest/TaskController.java
src/main/java/com/neotel/smfcore/core/system/rest/bean/dto/TaskDto.java
src/main/java/com/neotel/smfcore/core/system/service/po/DataLog.java
src/main/java/com/neotel/smfcore/hikvision/HikApi.java
src/main/resources/config/application-dev.yml
src/main/resources/config/application.yml
src/main/java/com/neotel/smfcore/common/init/DataInitManager.java
查看文件 @
2f4317f
...
@@ -45,7 +45,7 @@ public class DataInitManager {
...
@@ -45,7 +45,7 @@ public class DataInitManager {
MainTimer
mainTimer
;
MainTimer
mainTimer
;
//@Value("${menu.show}")
//@Value("${menu.show}")
private
String
[]
menuShowList
=
new
String
[]{
"
productionLineReple"
,
"productionLineOut"
,
"interfaceException
"
};
private
String
[]
menuShowList
=
new
String
[]{
"
mslOut
"
};
//@Value("${menu.hide}")
//@Value("${menu.hide}")
private
String
[]
menuHideList
=
new
String
[]{};
private
String
[]
menuHideList
=
new
String
[]{};
...
...
src/main/java/com/neotel/smfcore/core/device/handler/impl/BaseDeviceHandler.java
查看文件 @
2f4317f
...
@@ -665,7 +665,7 @@ public class BaseDeviceHandler implements IDeviceHandler {
...
@@ -665,7 +665,7 @@ public class BaseDeviceHandler implements IDeviceHandler {
if
(
ObjectUtil
.
isNotEmpty
(
task
.
getSourceId
())&&
ObjectUtil
.
isNotEmpty
(
task
.
getSourceName
())&&
task
.
isOrderTask
()){
if
(
ObjectUtil
.
isNotEmpty
(
task
.
getSourceId
())&&
ObjectUtil
.
isNotEmpty
(
task
.
getSourceName
())&&
task
.
isOrderTask
()){
LiteOrder
liteOrder
=
liteOrderCache
.
findOrderByNo
(
task
.
getSourceName
());
LiteOrder
liteOrder
=
liteOrderCache
.
findOrderByNo
(
task
.
getSourceName
());
LiteOrderItem
item
=
liteOrder
.
getItemBy
Pn
(
task
.
getPartNumber
());
LiteOrderItem
item
=
liteOrder
.
getItemBy
Id
(
task
.
getSubSourceId
());
int
interceptFlag
=
task
.
isNeedSplitting
()?
1
:
0
;
int
interceptFlag
=
task
.
isNeedSplitting
()?
1
:
0
;
int
interceptQty
=
task
.
getNeedQty
();
int
interceptQty
=
task
.
getNeedQty
();
//工单出库出库完成,7.3排程发料过账接口
//工单出库出库完成,7.3排程发料过账接口
...
...
src/main/java/com/neotel/smfcore/core/hik/enums/IN_OUT_TYPE.java
查看文件 @
2f4317f
...
@@ -53,7 +53,7 @@ public class IN_OUT_TYPE {
...
@@ -53,7 +53,7 @@ public class IN_OUT_TYPE {
*/
*/
public
static
int
OUT_BETWEEN
=
3
;
public
static
int
OUT_BETWEEN
=
3
;
/**
/**
* 4,预留单出库(5转外协出库,6发运单出库,7成本中心领料)
* 4,预留单出库(5转外协出库,6发运单出库,7成本中心领料
,8转巴西出库
)
*/
*/
public
static
int
OUT_LIST
=
4
;
public
static
int
OUT_LIST
=
4
;
/**
/**
...
@@ -69,6 +69,10 @@ public class IN_OUT_TYPE {
...
@@ -69,6 +69,10 @@ public class IN_OUT_TYPE {
*/
*/
public
static
int
OUT_CENTRAL
=
7
;
public
static
int
OUT_CENTRAL
=
7
;
/**
/**
* 8转巴西出库
*/
public
static
int
OUT_BRAZIL
=
8
;
/**
* 10=工单出库
* 10=工单出库
*/
*/
public
static
int
OUT_ORDER
=
10
;
public
static
int
OUT_ORDER
=
10
;
...
@@ -108,6 +112,8 @@ public class IN_OUT_TYPE {
...
@@ -108,6 +112,8 @@ public class IN_OUT_TYPE {
detailTypeStr
=
"发运单出库"
;
detailTypeStr
=
"发运单出库"
;
}
else
if
(
detailType
==
107
){
}
else
if
(
detailType
==
107
){
detailTypeStr
=
"成本中心领料"
;
detailTypeStr
=
"成本中心领料"
;
}
else
if
(
detailType
==
108
){
detailTypeStr
=
"转巴西出库"
;
}
else
if
(
detailType
==
110
){
}
else
if
(
detailType
==
110
){
detailTypeStr
=
"工单出库"
;
detailTypeStr
=
"工单出库"
;
}
else
if
(
detailType
==
111
){
}
else
if
(
detailType
==
111
){
...
...
src/main/java/com/neotel/smfcore/core/hik/rest/SingleInController.java
查看文件 @
2f4317f
...
@@ -218,8 +218,7 @@ public class SingleInController {
...
@@ -218,8 +218,7 @@ public class SingleInController {
}
}
}
}
//判断料架是否有空位
//判断料架是否有空位
for
(
UsageItem
item
:
for
(
UsageItem
item
:
storage
.
getUsageMap
().
values
())
{
storage
.
getUsageMap
().
values
())
{
if
(
item
.
getH
()
==
barcode
.
getHeight
()
&&
item
.
getW
()
==
barcode
.
getPlateSize
())
{
if
(
item
.
getH
()
==
barcode
.
getHeight
()
&&
item
.
getW
()
==
barcode
.
getPlateSize
())
{
int
emptyCount
=
item
.
getTotalCount
()
-
item
.
getUsedCount
();
int
emptyCount
=
item
.
getTotalCount
()
-
item
.
getUsedCount
();
if
(
emptyCount
<=
0
){
if
(
emptyCount
<=
0
){
...
@@ -229,6 +228,12 @@ public class SingleInController {
...
@@ -229,6 +228,12 @@ public class SingleInController {
}
}
}
}
//线边间转储入库和退料入库需要获取数量
boolean
needGetQty
=
false
;
//01 退料 02 线边仓间入库
String
businessType
=
""
;
String
businessNo
=
""
;
//存储入库需要先验证入库单
//存储入库需要先验证入库单
if
(
inType
.
equals
(
5
))
{
if
(
inType
.
equals
(
5
))
{
if
(
ObjectUtil
.
isEmpty
(
docName
)){
if
(
ObjectUtil
.
isEmpty
(
docName
)){
...
@@ -239,17 +244,29 @@ public class SingleInController {
...
@@ -239,17 +244,29 @@ public class SingleInController {
if
(!
resultBean
.
isOkResult
())
{
if
(!
resultBean
.
isOkResult
())
{
return
resultBean
;
return
resultBean
;
}
}
InList
inList
=
inListCache
.
getInList
(
docName
);
if
(
inList
!=
null
){
if
(
inList
.
getDocType
()
==
4
){
//线边仓间入库
businessType
=
"01"
;
businessNo
=
docName
;
}
}
}
if
(
inType
.
equals
(
4
)){
businessType
=
"01"
;
}
}
//判断如果是退料入库,需要获取数量
//判断如果是退料入库,需要获取数量
if
(
inType
.
equals
(
4
))
{
if
(
!
businessType
.
isEmpty
(
))
{
int
num
=
HikApi
.
returnMaterialApi
(
SecurityUtils
.
getCurrentUsername
(),
barcode
.
getBarcode
());
int
num
=
HikApi
.
returnMaterialApi
(
SecurityUtils
.
getCurrentUsername
(),
barcode
.
getBarcode
()
,
businessType
,
businessNo
);
if
(
num
>
0
)
{
if
(
num
>
0
)
{
barcode
.
setAmount
(
num
);
barcode
.
setAmount
(
num
);
barcodeManager
.
saveBarcode
(
barcode
);
barcodeManager
.
saveBarcode
(
barcode
);
log
.
info
(
"
退料入库,
二维码 "
+
barcode
.
getBarcode
()
+
" 从接口获得新数量:"
+
num
+
",并更新"
);
log
.
info
(
"
入库
二维码 "
+
barcode
.
getBarcode
()
+
" 从接口获得新数量:"
+
num
+
",并更新"
);
}
else
{
}
else
{
throw
new
ValidateException
(
"smfcore.returnMaterialApi.error"
,
"
退料
入库:["
+
barcode
.
getBarcode
()
+
"]获取数量失败"
);
throw
new
ValidateException
(
"smfcore.returnMaterialApi.error"
,
"入库:["
+
barcode
.
getBarcode
()
+
"]获取数量失败"
);
}
}
}
else
{
}
else
{
//唯一码校验接口
//唯一码校验接口
...
...
src/main/java/com/neotel/smfcore/core/inList/service/po/InList.java
查看文件 @
2f4317f
...
@@ -30,7 +30,7 @@ public class InList extends BasePo implements Serializable {
...
@@ -30,7 +30,7 @@ public class InList extends BasePo implements Serializable {
private
int
status
=
INLIST_STATUS
.
WAIT
;
private
int
status
=
INLIST_STATUS
.
WAIT
;
/**
/**
* 单据类型(0物料凭证,1交货单,2预留单、3AGV任务单)
* 单据类型(0物料凭证,1交货单,2预留单、3AGV任务单
4线边仓间入库
)
*/
*/
private
Integer
docType
=-
1
;
private
Integer
docType
=-
1
;
...
...
src/main/java/com/neotel/smfcore/core/inList/util/InListCache.java
查看文件 @
2f4317f
...
@@ -127,9 +127,6 @@ public class InListCache {
...
@@ -127,9 +127,6 @@ public class InListCache {
}
}
InList
inList
=
getInList
(
inListName
);
InList
inList
=
getInList
(
inListName
);
if
(
inList
==
null
)
{
if
(
inList
==
null
)
{
inList
=
listManager
.
findByName
(
inListName
);
}
if
(
inList
==
null
)
{
return
ResultBean
.
newOkResult
(
""
);
return
ResultBean
.
newOkResult
(
""
);
}
}
...
...
src/main/java/com/neotel/smfcore/core/order/LiteOrderCache.java
查看文件 @
2f4317f
...
@@ -221,14 +221,8 @@ public class LiteOrderCache implements ITaskListener {
...
@@ -221,14 +221,8 @@ public class LiteOrderCache implements ITaskListener {
order
.
setOrderItems
(
items
);
order
.
setOrderItems
(
items
);
if
(!
order
.
isClosed
())
{
if
(!
order
.
isClosed
())
{
//工单未关闭的话,检查状态,全部都出完进行关闭
//工单未关闭的话,检查状态,全部都出完进行关闭
boolean
closed
=
true
;
boolean
allTaskFinished
=
order
.
isTaskReelOutEnd
();
for
(
LiteOrderItem
liteOrderItem
:
order
.
getOrderItems
())
{
if
(
allTaskFinished
)
{
if
(!
liteOrderItem
.
isOutFinished
())
{
closed
=
false
;
break
;
}
}
if
(
closed
)
{
order
.
finishedTasks
();
order
.
finishedTasks
();
//工单出库完成,调用7.11订单发料完成通知接口
//工单出库完成,调用7.11订单发料完成通知接口
boolean
result
=
HikApi
.
orderEndApi
(
order
.
getOperateUser
(),
order
.
getJobNo
());
boolean
result
=
HikApi
.
orderEndApi
(
order
.
getOperateUser
(),
order
.
getJobNo
());
...
@@ -505,6 +499,7 @@ public class LiteOrderCache implements ITaskListener {
...
@@ -505,6 +499,7 @@ public class LiteOrderCache implements ITaskListener {
if
(
component
.
getMinStoreNum
()>
0
&&
posList
.
size
()
<=
component
.
getMinStoreNum
()){
if
(
component
.
getMinStoreNum
()>
0
&&
posList
.
size
()
<=
component
.
getMinStoreNum
()){
needJieliao
=
true
;
needJieliao
=
true
;
}
}
log
.
info
(
"物料["
+
pn
+
"]贵重["
+
isGuizhong
+
"]可用库存数量:"
+
posList
.
size
()
+
" 截料设置数量:"
+
component
.
getMinStoreNum
()
+
" 是否需要截图:"
+
needJieliao
);
}
}
if
(
isGuizhong
||
needJieliao
){
if
(
isGuizhong
||
needJieliao
){
...
@@ -521,7 +516,7 @@ public class LiteOrderCache implements ITaskListener {
...
@@ -521,7 +516,7 @@ public class LiteOrderCache implements ITaskListener {
//如果需要截料,找最小的一盘
//如果需要截料,找最小的一盘
if
(
minAmountReelPos
!=
null
){
if
(
minAmountReelPos
!=
null
){
int
reelNeedNum
=
minAmountReelPos
.
getBarcode
().
getAmount
()
-
excessNum
;
int
reelNeedNum
=
minAmountReelPos
.
getBarcode
().
getAmount
()
-
excessNum
;
log
.
info
(
"需要对料盘["
+
minAmountReelPos
.
getBarcode
().
getBarcode
()+
"]进行截料,需求数量
"
);
log
.
info
(
"需要对料盘["
+
minAmountReelPos
.
getBarcode
().
getBarcode
()+
"]进行截料,需求数量
:"
+
reelNeedNum
);
jieliaoPosMap
.
put
(
minAmountReelPos
.
getPosName
(),
reelNeedNum
);
jieliaoPosMap
.
put
(
minAmountReelPos
.
getPosName
(),
reelNeedNum
);
}
}
}
}
...
@@ -629,7 +624,8 @@ public class LiteOrderCache implements ITaskListener {
...
@@ -629,7 +624,8 @@ public class LiteOrderCache implements ITaskListener {
}
}
cacheOrder
.
setTaskReelCount
(
taskReelCount
);
cacheOrder
.
setTaskReelCount
(
taskReelCount
);
cacheOrder
.
setTotalFinishedReelCount
(
0
);
cacheOrder
.
setFinishedReelCount
(
0
);
//cacheOrder.setTotalFinishedReelCount(0);
cacheOrder
.
setTotalTaskReelCount
(
cacheOrder
.
getTotalTaskReelCount
()+
taskReelCount
);
cacheOrder
.
setTotalTaskReelCount
(
cacheOrder
.
getTotalTaskReelCount
()+
taskReelCount
);
if
(
shortage
)
{
if
(
shortage
)
{
cacheOrder
.
setShortageOut
(
true
);
cacheOrder
.
setShortageOut
(
true
);
...
...
src/main/java/com/neotel/smfcore/core/order/rest/OrderController.java
查看文件 @
2f4317f
...
@@ -339,8 +339,7 @@ public class OrderController {
...
@@ -339,8 +339,7 @@ public class OrderController {
boolean
findOrder
=
false
;
boolean
findOrder
=
false
;
//只返回当前有任务的工单
//只返回当前有任务的工单
for
(
LiteOrder
order
:
for
(
LiteOrder
order
:
orderList
)
{
orderList
)
{
List
<
DataLog
>
tasks
=
getOrderTaskByUser
(
user
,
order
,
true
);
List
<
DataLog
>
tasks
=
getOrderTaskByUser
(
user
,
order
,
true
);
if
(
tasks
.
size
()
>
0
)
{
if
(
tasks
.
size
()
>
0
)
{
OrderDto
dto
=
orderMapper
.
toDto
(
order
);
OrderDto
dto
=
orderMapper
.
toDto
(
order
);
...
...
src/main/java/com/neotel/smfcore/core/order/service/po/LiteOrder.java
查看文件 @
2f4317f
...
@@ -225,8 +225,6 @@ public class LiteOrder extends BasePo implements Serializable {
...
@@ -225,8 +225,6 @@ public class LiteOrder extends BasePo implements Serializable {
* 结束当前的任务
* 结束当前的任务
*/
*/
public
void
finishedTasks
()
{
public
void
finishedTasks
()
{
//TODO 判断是否处于缺料状态,是的话修改状态
//TODO 判断是否处于缺料状态,是的话修改状态
if
(
shortageOut
!=
null
&&
getShortageOut
())
{
if
(
shortageOut
!=
null
&&
getShortageOut
())
{
boolean
allOk
=
true
;
boolean
allOk
=
true
;
...
@@ -298,6 +296,13 @@ public class LiteOrder extends BasePo implements Serializable {
...
@@ -298,6 +296,13 @@ public class LiteOrder extends BasePo implements Serializable {
this
.
taskReelCount
=
taskReelCount
;
this
.
taskReelCount
=
taskReelCount
;
}
}
public
boolean
isTaskReelOutEnd
(){
if
(
taskReelCount
>
0
){
return
finishedReelCount
>=
taskReelCount
;
}
return
false
;
}
public
void
setTotalTaskReelCount
(
int
totalReelCount
){
public
void
setTotalTaskReelCount
(
int
totalReelCount
){
if
(
totalReelCount
<
0
){
if
(
totalReelCount
<
0
){
totalReelCount
=
0
;
totalReelCount
=
0
;
...
@@ -353,10 +358,9 @@ public class LiteOrder extends BasePo implements Serializable {
...
@@ -353,10 +358,9 @@ public class LiteOrder extends BasePo implements Serializable {
}
}
public
LiteOrderItem
getItemByPn
(
String
partNumber
)
{
public
LiteOrderItem
getItemById
(
String
itemId
)
{
for
(
LiteOrderItem
item
:
for
(
LiteOrderItem
item
:
orderItems
)
{
orderItems
)
{
if
(
item
.
getId
().
equals
(
itemId
)){
if
(
item
.
getMaterialNo
().
equals
(
partNumber
)){
return
item
;
return
item
;
}
}
}
}
...
...
src/main/java/com/neotel/smfcore/core/outList/service/po/OutList.java
查看文件 @
2f4317f
...
@@ -72,6 +72,7 @@ public class OutList extends BasePo implements Serializable {
...
@@ -72,6 +72,7 @@ public class OutList extends BasePo implements Serializable {
* 1.转外协出库
* 1.转外协出库
* 2.发运单出库
* 2.发运单出库
* 3.成本中心领料
* 3.成本中心领料
* 4.转巴西出库
*/
*/
private
Integer
docType
=
0
;
private
Integer
docType
=
0
;
/**
/**
...
...
src/main/java/com/neotel/smfcore/core/outList/util/OutListCache.java
查看文件 @
2f4317f
...
@@ -334,6 +334,9 @@ public class OutListCache implements ITaskListener {
...
@@ -334,6 +334,9 @@ public class OutListCache implements ITaskListener {
}
else
if
(
docType
==
3
){
}
else
if
(
docType
==
3
){
//转外协出库,发运单出库,成本中心领料:对应4,预留单出库
//转外协出库,发运单出库,成本中心领料:对应4,预留单出库
task
.
setOutType
(
IN_OUT_TYPE
.
OUT_CENTRAL
);
//成本中心领料
task
.
setOutType
(
IN_OUT_TYPE
.
OUT_CENTRAL
);
//成本中心领料
}
else
if
(
docType
==
4
){
//转外协出库,发运单出库,成本中心领料:对应4,预留单出库
task
.
setOutType
(
IN_OUT_TYPE
.
OUT_BRAZIL
);
//转巴西出库
}
}
task
.
setLightColor
(
ORDER_COLOR
.
FIREBRICK
.
getRgb
());
//普通转储出库单 颜色:FIREBRICK
task
.
setLightColor
(
ORDER_COLOR
.
FIREBRICK
.
getRgb
());
//普通转储出库单 颜色:FIREBRICK
...
...
src/main/java/com/neotel/smfcore/core/system/rest/TaskController.java
查看文件 @
2f4317f
...
@@ -101,7 +101,7 @@ public class TaskController {
...
@@ -101,7 +101,7 @@ public class TaskController {
Query
query
=
QueryHelp
.
getQuery
(
criteria
);
Query
query
=
QueryHelp
.
getQuery
(
criteria
);
if
(
unEnd
)
{
if
(
unEnd
)
{
query
.
addCriteria
(
Criteria
.
where
(
"status"
).
nin
(
OP_STATUS
.
END
.
name
(),
OP_STATUS
.
FINISHED
.
name
()));
query
.
addCriteria
(
Criteria
.
where
(
"status"
).
nin
(
OP_STATUS
.
CANCEL
.
name
(),
OP_STATUS
.
END
.
name
(),
OP_STATUS
.
FINISHED
.
name
()));
}
else
if
(
finished
){
}
else
if
(
finished
){
query
.
addCriteria
(
Criteria
.
where
(
"status"
).
in
(
OP_STATUS
.
END
.
name
(),
OP_STATUS
.
FINISHED
.
name
()));
query
.
addCriteria
(
Criteria
.
where
(
"status"
).
in
(
OP_STATUS
.
END
.
name
(),
OP_STATUS
.
FINISHED
.
name
()));
}
}
...
...
src/main/java/com/neotel/smfcore/core/system/rest/bean/dto/TaskDto.java
查看文件 @
2f4317f
...
@@ -74,6 +74,8 @@ public class TaskDto implements Serializable {
...
@@ -74,6 +74,8 @@ public class TaskDto implements Serializable {
@ApiModelProperty
(
"详细出入库类型"
)
@ApiModelProperty
(
"详细出入库类型"
)
private
int
detailType
;
private
int
detailType
;
@ApiModelProperty
(
"详细出入库类型"
)
private
String
detailTypeStr
;
/**
/**
* 状态:OP_STATUS
* 状态:OP_STATUS
*/
*/
...
...
src/main/java/com/neotel/smfcore/core/system/service/po/DataLog.java
查看文件 @
2f4317f
...
@@ -348,7 +348,7 @@ public class DataLog extends BasePo implements Serializable {
...
@@ -348,7 +348,7 @@ public class DataLog extends BasePo implements Serializable {
public
boolean
isOutListTask
(){
public
boolean
isOutListTask
(){
if
(
OP
.
CHECKOUT
==
type
){
if
(
OP
.
CHECKOUT
==
type
){
if
(
outType
==
IN_OUT_TYPE
.
OUT_BETWEEN
||
outType
==
IN_OUT_TYPE
.
OUT_LIST
||
outType
==
IN_OUT_TYPE
.
OUT_TRANSFER
||
outType
==
IN_OUT_TYPE
.
OUT_SENDER
||
outType
==
IN_OUT_TYPE
.
OUT_CENTRAL
){
if
(
outType
==
IN_OUT_TYPE
.
OUT_BETWEEN
||
outType
==
IN_OUT_TYPE
.
OUT_LIST
||
outType
==
IN_OUT_TYPE
.
OUT_TRANSFER
||
outType
==
IN_OUT_TYPE
.
OUT_SENDER
||
outType
==
IN_OUT_TYPE
.
OUT_CENTRAL
||
outType
==
IN_OUT_TYPE
.
OUT_BRAZIL
){
return
true
;
return
true
;
}
}
}
}
...
...
src/main/java/com/neotel/smfcore/hikvision/HikApi.java
查看文件 @
2f4317f
...
@@ -73,7 +73,7 @@ public class HikApi {
...
@@ -73,7 +73,7 @@ public class HikApi {
* reqCode String 32 是 唯一请求号
* reqCode String 32 是 唯一请求号
* userCode String 32 是 操作人
* userCode String 32 是 操作人
* data docNo String 16 是 单据号
* data docNo String 16 是 单据号
* docType Integer 是 单据类型(0物料凭证,1交货单,2预留单、3AGV任务单)
* docType Integer 是 单据类型(0物料凭证,1交货单,2预留单、3AGV任务单
,4 线边仓间入库
)
* 返回结果 code Integer 结果码
* 返回结果 code Integer 结果码
* message String 64 结果描述
* message String 64 结果描述
* reqCode String 32 唯一请求号
* reqCode String 32 唯一请求号
...
@@ -92,7 +92,7 @@ public class HikApi {
...
@@ -92,7 +92,7 @@ public class HikApi {
Map
<
String
,
Object
>
dataMap
=
new
HashMap
<
String
,
Object
>();
Map
<
String
,
Object
>
dataMap
=
new
HashMap
<
String
,
Object
>();
dataMap
.
put
(
"docNo"
,
docNo
);
//单据号
dataMap
.
put
(
"docNo"
,
docNo
);
//单据号
dataMap
.
put
(
"docType"
,
docType
);
//单据类型(0物料凭证,1交货单,2预留单、3AGV任务单)
dataMap
.
put
(
"docType"
,
docType
);
//单据类型(0物料凭证,1交货单,2预留单、3AGV任务单
,4 线边仓间入库
)
// String data = JsonUtil.toJsonStr(dataMap);
// String data = JsonUtil.toJsonStr(dataMap);
...
@@ -240,16 +240,21 @@ public class HikApi {
...
@@ -240,16 +240,21 @@ public class HikApi {
* @param trayId 料盘ID
* @param trayId 料盘ID
* @return 根据退料唯一码获取退料数量
* @return 根据退料唯一码获取退料数量
*/
*/
public
static
int
returnMaterialApi
(
String
userName
,
String
trayId
){
public
static
int
returnMaterialApi
(
String
userName
,
String
trayId
,
String
businessType
,
String
businessNo
){
String
apiName
=
"Hik 退料唯一码数量获取接口 (returnMaterialApi): "
;
String
apiName
=
"Hik 退料唯一码数量获取接口 (returnMaterialApi): "
;
String
url
=
getUrl
(
config
.
addr_4_returnMaterialApi
,
"returnMaterialApi"
);
String
url
=
getUrl
(
config
.
addr_4_returnMaterialApi
,
"returnMaterialApi"
);
// data trayId String 41 是 料盘ID
// data trayId String 41 是 料盘ID
// flag String 4 是 SMF 亮灯货架
// flag String 4 是 SMF 亮灯货架
// businessType String 4 是 01 退料 02 线边仓间入库
// businessNo String 41 否 业务单号 businessType 02时,为物料凭证
Map
<
String
,
Object
>
dataMap
=
new
HashMap
<
String
,
Object
>();
Map
<
String
,
Object
>
dataMap
=
new
HashMap
<
String
,
Object
>();
dataMap
.
put
(
"trayId"
,
trayId
);
//料盘ID
dataMap
.
put
(
"trayId"
,
trayId
);
//料盘ID
dataMap
.
put
(
"flag"
,
"2"
);
//SMF 亮灯货架
dataMap
.
put
(
"flag"
,
"2"
);
//SMF 亮灯货架
dataMap
.
put
(
"businessType"
,
businessType
);
dataMap
.
put
(
"businessNo"
,
businessNo
);
// String data = JsonUtil.toJsonStr(dataMap);
// String data = JsonUtil.toJsonStr(dataMap);
// data String 41 是 料盘ID
// data String 41 是 料盘ID
...
...
src/main/resources/config/application-dev.yml
查看文件 @
2f4317f
#配置数据源
#配置数据源
spring
:
data
:
mongodb
:
host
:
localhost
# 主机地址
port
:
27017
# 端口
database
:
hikvision
# 数据库
# 登录相关配置
# 登录相关配置
login
:
login
:
# 登录缓存
# 登录缓存
...
...
src/main/resources/config/application.yml
查看文件 @
2f4317f
...
@@ -93,7 +93,7 @@ spring:
...
@@ -93,7 +93,7 @@ spring:
mongodb
:
mongodb
:
host
:
localhost
# 主机地址
host
:
localhost
# 主机地址
port
:
27017
# 端口
port
:
27017
# 端口
database
:
hikvision
# 数据库
database
:
hikvision
20220801
# 数据库
messages
:
messages
:
encoding
:
utf-8
encoding
:
utf-8
main
:
main
:
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论