Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
M
mini-wms
概览
Overview
Details
Activity
Cycle Analytics
版本库
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
问题
0
Issues
0
列表
Board
标记
里程碑
合并请求
0
Merge Requests
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
Snippets
成员
Members
Collapse sidebar
Close sidebar
活动
图像
聊天
创建新问题
作业
提交
Issue Boards
Open sidebar
周海峰
mini-wms
Commits
73933aeb
Commit
73933aeb
authored
Dec 23, 2025
by
zhangtw
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
入库新增按照单号批次号入库类型分组
parent
1a8aa820
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
23 行增加
和
4 行删除
+23
-4
ruoyi-inventory/src/main/java/com/ruoyi/inventory/service/impl/InboundOrdersServiceImpl.java
+23
-4
没有找到文件。
ruoyi-inventory/src/main/java/com/ruoyi/inventory/service/impl/InboundOrdersServiceImpl.java
View file @
73933aeb
...
...
@@ -187,7 +187,7 @@ public class InboundOrdersServiceImpl implements IInboundOrdersService
*/
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
<
T
>
String
importInboundOrders
(
List
<
T
>
inboundOrdersList
,
Integer
isUpdateSupport
,
String
operName
,
Integer
orderType
)
{
public
<
T
>
String
importInboundOrders
(
List
<
T
>
inboundOrdersList
,
Integer
isUpdateSupport
,
String
operName
,
Integer
orderType
Id
)
{
if
(
StringUtils
.
isNull
(
inboundOrdersList
)
||
inboundOrdersList
.
size
()
==
0
)
{
throw
new
ServiceException
(
"导入数据不能为空!"
);
}
...
...
@@ -230,6 +230,13 @@ public class InboundOrdersServiceImpl implements IInboundOrdersService
.
map
(
Object:
:
toString
)
.
map
(
String:
:
trim
)
.
orElse
(
""
);
// 反射获取getOrderType方法
Method
getOrderType
=
vo
.
getClass
().
getMethod
(
"getOrderType"
);
String
orderType
=
Optional
.
ofNullable
(
getOrderType
.
invoke
(
vo
))
.
map
(
Object:
:
toString
)
.
map
(
String:
:
trim
)
.
orElse
(
""
);
// 反射调用setOrderId方法回写处理后的单号
Method
setOrderIdMethod
=
vo
.
getClass
().
getMethod
(
"setOrderId"
,
String
.
class
);
...
...
@@ -237,6 +244,9 @@ public class InboundOrdersServiceImpl implements IInboundOrdersService
// 反射调用setBatchId方法回写处理后的批次号
Method
setBatchIdMethod
=
vo
.
getClass
().
getMethod
(
"setBatchId"
,
String
.
class
);
setBatchIdMethod
.
invoke
(
vo
,
batchId
);
// 反射调用setOrderTypeMethod方法回写处理后的orderType
Method
setOrderTypeMethod
=
vo
.
getClass
().
getMethod
(
"setOrderType"
,
String
.
class
);
setOrderTypeMethod
.
invoke
(
vo
,
orderType
);
}
catch
(
Exception
e
)
{
throw
new
ServiceException
(
"实体类缺少orderId的getter/setter方法"
+
e
);
}
...
...
@@ -261,6 +271,7 @@ public class InboundOrdersServiceImpl implements IInboundOrdersService
try
{
Method
getOrderIdMethod
=
vo
.
getClass
().
getMethod
(
"getOrderId"
);
Method
getBatchIdMethod
=
vo
.
getClass
().
getMethod
(
"getBatchId"
);
Method
getOrderType
=
vo
.
getClass
().
getMethod
(
"getOrderType"
);
return
Optional
.
ofNullable
(
getOrderIdMethod
.
invoke
(
vo
))
.
map
(
Object:
:
toString
)
.
map
(
String:
:
trim
)
...
...
@@ -269,7 +280,12 @@ public class InboundOrdersServiceImpl implements IInboundOrdersService
Optional
.
ofNullable
(
getBatchIdMethod
.
invoke
(
vo
))
.
map
(
Object:
:
toString
)
.
map
(
String:
:
trim
)
.
orElse
(
""
);
.
orElse
(
""
)
+
"--"
+
Optional
.
ofNullable
(
getOrderType
.
invoke
(
vo
))
.
map
(
Object:
:
toString
)
.
map
(
String:
:
trim
)
.
orElse
(
""
);
}
catch
(
Exception
e
)
{
throw
new
ServiceException
(
"分组获取orderId失败"
+
e
);
}
...
...
@@ -287,11 +303,13 @@ public class InboundOrdersServiceImpl implements IInboundOrdersService
String
orderKey
=
entry
.
getKey
();
String
orderId
=
""
;
String
batchId
=
""
;
String
orderType
=
""
;
try
{
orderId
=
orderKey
.
split
(
"--"
)[
0
];
batchId
=
orderKey
.
split
(
"--"
)[
1
];
orderType
=
orderKey
.
split
(
"--"
)[
2
];
}
catch
(
IndexOutOfBoundsException
e
){
throw
new
ServiceException
(
"请检查表头单号和批次号是否正确?"
);
throw
new
ServiceException
(
"请检查表头单号和批次号
和订单类型
是否正确?"
);
}
List
<
T
>
voList
=
entry
.
getValue
();
InboundOrders
mainDO
=
null
;
...
...
@@ -305,6 +323,7 @@ public class InboundOrdersServiceImpl implements IInboundOrdersService
InboundOrders
query
=
new
InboundOrders
();
query
.
setOrderId
(
orderId
);
query
.
setBatchId
(
batchId
);
query
.
setOrderType
(
orderType
);
List
<
InboundOrders
>
existMain
=
inboundOrdersMapper
.
selectInboundOrdersList
(
query
);
if
(
existMain
!=
null
&&
!
existMain
.
isEmpty
())
{
...
...
@@ -322,7 +341,7 @@ public class InboundOrdersServiceImpl implements IInboundOrdersService
mainDO
.
setUpdateBy
(
operId
);
mainDO
.
setUpdateTime
(
now
);
mainDO
.
setUpdateUserCode
(
operId
);
mainDO
.
setOrderTypeId
(
Optional
.
ofNullable
(
orderType
).
map
(
String:
:
valueOf
).
orElse
(
""
));
mainDO
.
setOrderTypeId
(
Optional
.
ofNullable
(
orderType
Id
).
map
(
String:
:
valueOf
).
orElse
(
""
));
// 更新主表
inboundOrdersMapper
.
updateInboundOrders
(
mainDO
);
totalMainSuccess
++;
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论