Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
smf-core
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 216f6313
由
LN
编写于
2025-01-09 14:25:30 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
dispatch增加detial
1 个父辈
f6735d05
显示空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
91 行增加
和
9 行删除
src/main/java/com/neotel/smfcore/custom/micron1053/task/MicronDispatchController.java
src/main/java/com/neotel/smfcore/custom/micron1053/task/MicronDispatchController.java
查看文件 @
216f631
...
@@ -11,6 +11,10 @@ import com.neotel.smfcore.core.device.enums.OP_STATUS;
...
@@ -11,6 +11,10 @@ import com.neotel.smfcore.core.device.enums.OP_STATUS;
import
com.neotel.smfcore.core.device.util.DataCache
;
import
com.neotel.smfcore.core.device.util.DataCache
;
import
com.neotel.smfcore.core.order.LiteOrderCache
;
import
com.neotel.smfcore.core.order.LiteOrderCache
;
import
com.neotel.smfcore.core.order.enums.LITEORDER_STATUS
;
import
com.neotel.smfcore.core.order.enums.LITEORDER_STATUS
;
import
com.neotel.smfcore.core.order.rest.bean.dto.OrderDto
;
import
com.neotel.smfcore.core.order.rest.bean.dto.OrderItemDto
;
import
com.neotel.smfcore.core.order.rest.bean.mapstruct.OrderItemMapper
;
import
com.neotel.smfcore.core.order.rest.bean.mapstruct.OrderMapper
;
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.LiteOrder
;
import
com.neotel.smfcore.core.order.service.po.LiteOrder
;
...
@@ -20,6 +24,7 @@ import com.neotel.smfcore.core.storage.enums.CHECKOUT_TYPE;
...
@@ -20,6 +24,7 @@ import com.neotel.smfcore.core.storage.enums.CHECKOUT_TYPE;
import
com.neotel.smfcore.core.storage.rest.dto.TacticsOutDto
;
import
com.neotel.smfcore.core.storage.rest.dto.TacticsOutDto
;
import
com.neotel.smfcore.core.storage.service.manager.IStoragePosManager
;
import
com.neotel.smfcore.core.storage.service.manager.IStoragePosManager
;
import
com.neotel.smfcore.core.storage.service.po.StoragePos
;
import
com.neotel.smfcore.core.storage.service.po.StoragePos
;
import
com.neotel.smfcore.core.system.bean.OrderSetting
;
import
com.neotel.smfcore.core.system.service.manager.IDataLogManager
;
import
com.neotel.smfcore.core.system.service.manager.IDataLogManager
;
import
com.neotel.smfcore.core.system.service.po.DataLog
;
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
;
...
@@ -69,8 +74,6 @@ public class MicronDispatchController {
...
@@ -69,8 +74,6 @@ public class MicronDispatchController {
private
final
FileProperties
properties
;
private
final
FileProperties
properties
;
@Autowired
@Autowired
private
LiteOrderCache
liteOrderCache
;
private
LiteOrderCache
liteOrderCache
;
@Autowired
private
DispatchItemMapper
dispatchItemMapper
;
@Autowired
@Autowired
private
OrderFileWatch
orderFileWatch
;
private
OrderFileWatch
orderFileWatch
;
...
@@ -78,8 +81,12 @@ public class MicronDispatchController {
...
@@ -78,8 +81,12 @@ public class MicronDispatchController {
@Autowired
@Autowired
private
TaskService
taskService
;
private
TaskService
taskService
;
@Autowired
private
final
OrderMapper
orderMapper
;
@Autowired
@Autowired
private
final
OrderItemMapper
orderItemMapper
;
@Autowired
private
IStoragePosManager
storagePosManager
;
private
IStoragePosManager
storagePosManager
;
private
String
Mode_RACK
=
"RACK"
;
private
String
Mode_RACK
=
"RACK"
;
...
@@ -959,11 +966,86 @@ public class MicronDispatchController {
...
@@ -959,11 +966,86 @@ public class MicronDispatchController {
}
}
// public List<LiteOrderItem> getLiteOrderItemList(String mode) {
@ApiOperation
(
"查看工单详情"
)
// LiteOrder order=getOrderByMode(mode);
@PostMapping
(
"/orderDetial"
)
// if(order!=null){
@AnonymousAccess
// return order.getOrderItems();
public
OrderDto
detial
(
@RequestBody
Map
<
String
,
Object
>
params
)
{
// }
String
mode
=
params
.
get
(
"mode"
).
toString
();
// return null;
log
.
info
(
" abort :mode="
+
mode
);
// }
LiteOrder
liteOrder
=
getOrderByMode
(
mode
);
TaskDto
taskDto
=
getTaskDtoByMode
(
mode
);
if
(
liteOrder
==
null
||
taskDto
==
null
)
{
throw
new
ValidateException
(
"smfcore.valueCanotNull"
,
"{0}不能为空"
,
new
String
[]{
"orderNo"
});
}
return
toOrderDto
(
liteOrder
);
}
private
OrderDto
toOrderDto
(
LiteOrder
liteOrder
)
{
OrderSetting
orderSetting
=
dataCache
.
getOrderSetting
();
OrderDto
dto
=
orderMapper
.
toDto
(
liteOrder
);
List
<
LiteOrderItem
>
orderItemDtos
=
liteOrder
.
getOrderItems
();
List
<
OrderItemDto
>
dtos
=
new
ArrayList
<>();
List
<
Map
<
String
,
StoragePos
>>
allPosLists
=
dataCache
.
getAllUsedPosMap
();;
for
(
LiteOrderItem
item
:
orderItemDtos
)
{
OrderItemDto
orderItemDto
=
orderItemMapper
.
toDto
(
item
);
if
(
orderSetting
.
getAppendData
()
!=
null
&&
orderSetting
.
getAppendData
().
size
()
>
0
&&
orderItemDto
.
getAppendData
()
!=
null
&&
orderItemDto
.
getAppendData
().
size
()
>
0
)
{
Map
<
String
,
String
>
newMap
=
new
HashMap
<>();
for
(
String
key
:
orderItemDto
.
getAppendData
().
keySet
())
{
String
v
=
orderItemDto
.
appendData
.
getOrDefault
(
key
,
""
);
String
title
=
orderSetting
.
getAppendData
().
getOrDefault
(
key
,
""
);
newMap
.
put
(
title
,
v
);
}
orderItemDto
.
setAppendData
(
newMap
);
}
//设置库存数量,库存盘数
int
inventoryReelCount
=
0
;
int
inventoryQty
=
0
;
try
{
for
(
Map
<
String
,
StoragePos
>
list
:
allPosLists
)
{
for
(
StoragePos
pos
:
list
.
values
())
{
//如果已锁定,直接跳过
if
(
pos
.
isLocked
()){
continue
;
}
boolean
isItemPos
=
false
;
if
(
ObjectUtil
.
isNotEmpty
(
item
.
getRi
()))
{
if
(
pos
.
getBarcode
().
getBarcode
().
equals
(
item
.
getRi
()))
{
isItemPos
=
true
;
}
}
else
if
(
ObjectUtil
.
isNotEmpty
(
item
.
getPn
()))
{
if
(
ObjectUtil
.
isNotEmpty
(
pos
.
getBarcode
().
getPartNumber
())
&&
pos
.
getBarcode
().
getPartNumber
().
startsWith
(
item
.
getPn
()))
{
isItemPos
=
true
;
}
}
else
if
(
ObjectUtil
.
isNotEmpty
(
item
.
getMpn
()))
{
if
(
ObjectUtil
.
isNotEmpty
(
pos
.
getBarcode
().
getMpn
())
&&
pos
.
getBarcode
().
getMpn
().
equals
(
item
.
getMpn
()))
{
isItemPos
=
true
;
}
}
if
(
isItemPos
)
{
inventoryReelCount
+=
1
;
inventoryQty
+=
pos
.
getBarcode
().
getAmount
();
}
}
}
}
catch
(
Exception
ex
)
{
log
.
error
(
"error:"
+
ex
.
toString
());
}
orderItemDto
.
setInventoryQty
(
inventoryQty
);
orderItemDto
.
setInventoryReelCount
(
inventoryReelCount
);
dtos
.
add
(
orderItemDto
);
}
dto
.
setOrderItems
(
dtos
);
dto
.
setCurrTaskCount
(
liteOrderCache
.
getOrderTaskCount
(
liteOrder
.
getOrderNo
()));
return
dto
;
}
}
}
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论