Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
T
topsun-bpm
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
鲁鑫
topsun-bpm
Commits
1a847e99
Commit
1a847e99
authored
Jun 19, 2024
by
鲁鑫
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
物料导入;采购订单审批优化;采购申请审批优化
parent
6b061492
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
1063 additions
and
31 deletions
+1063
-31
nonProdApplyDeptList.js
...ebapp/biz/topsun/sap/nonProdApply/nonProdApplyDeptList.js
+1
-1
nonProdApplyList.js
...in/webapp/biz/topsun/sap/nonProdApply/nonProdApplyList.js
+10
-2
nonProdApplyList.jsp
...n/webapp/biz/topsun/sap/nonProdApply/nonProdApplyList.jsp
+2
-1
nonProdApplyNext.jsp
...n/webapp/biz/topsun/sap/nonProdApply/nonProdApplyNext.jsp
+1
-1
suppliersDataList.js
...main/webapp/biz/topsun/sap/suppliers/suppliersDataList.js
+2
-2
NonProdApplyDeptApplicationImpl.java
...ply/application/impl/NonProdApplyDeptApplicationImpl.java
+4
-1
NonProdMaterialDataExcelImport.java
...pply/application/impl/NonProdMaterialDataExcelImport.java
+23
-0
NonProdApplyBaseInfo.java
.../topsun/sap/nonProdApply/domain/NonProdApplyBaseInfo.java
+1
-1
TmpNonProdMaterialDataImport.java
...sap/nonProdApply/domain/TmpNonProdMaterialDataImport.java
+949
-0
TmpNonProdMaterialDataImportRepository.java
...ly/repository/TmpNonProdMaterialDataImportRepository.java
+15
-0
SapPurchaseApprovalApplicationImpl.java
.../application/impl/SapPurchaseApprovalApplicationImpl.java
+26
-9
SapPurchaseApprovalController.java
...aseApproval/controller/SapPurchaseApprovalController.java
+1
-1
SapPurchaseApprovalRepository.java
...aseApproval/repository/SapPurchaseApprovalRepository.java
+3
-1
SapPurchaseOrderApplicationImpl.java
...der/application/impl/SapPurchaseOrderApplicationImpl.java
+20
-9
SapPurchaseOrderController.java
.../purchaseOrder/controller/SapPurchaseOrderController.java
+2
-1
SapPurchaseOrderRepository.java
.../purchaseOrder/repository/SapPurchaseOrderRepository.java
+3
-1
No files found.
topsun-xt/src/main/webapp/biz/topsun/sap/nonProdApply/nonProdApplyDeptList.js
View file @
1a847e99
...
...
@@ -104,7 +104,7 @@ function doView(id) {
// function next(){
// UICtrl.addTabItem({
// tabid: 'showNonProdApplyNext',
// text: "非产品/非
本
成品类物料主数据维护申请详情",
// text: "非产品/非
半
成品类物料主数据维护申请详情",
// url: web_app.name + '/sapNonProdApply/forwardNonProdApplyNext.do?isDetailPage=true'
// });
// }
\ No newline at end of file
topsun-xt/src/main/webapp/biz/topsun/sap/nonProdApply/nonProdApplyList.js
View file @
1a847e99
...
...
@@ -64,7 +64,8 @@ function loadNonProdApplyListGrid() {
}
extendedHandler
(
result
.
id
,
result
.
matnr
);;
}
}
},
impExcelDataHandler
:{
id
:
'impExcelData'
,
img
:
'fa-table'
,
text
:
'导入数据'
,
click
:
impExcelDataHandler
},
/* publishHandler: {id: 'publishData', text: '数据发布', img: 'fa-map', className: 'btn-gray',
click: function () {
...
...
@@ -250,10 +251,17 @@ function publishDatas(message, id) {
});
}
//从EXCEL导入数据
function
impExcelDataHandler
(){
ExcelImpManager
.
showImpDialog
(
'导入'
,
'materialData'
,
new
Date
().
getTime
(),
function
(){
reloadGrid
();
});
}
// function next(){
// UICtrl.addTabItem({
// tabid: 'showNonProdApplyNext',
// text: "非产品/非
本
成品类物料主数据维护申请详情",
// text: "非产品/非
半
成品类物料主数据维护申请详情",
// url: web_app.name + '/sapNonProdApply/forwardNonProdApplyNext.do?isDetailPage=true'
// });
// }
\ No newline at end of file
topsun-xt/src/main/webapp/biz/topsun/sap/nonProdApply/nonProdApplyList.jsp
View file @
1a847e99
...
...
@@ -3,7 +3,8 @@
<%@ taglib
uri=
"http://java.sun.com/jsp/jstl/core"
prefix=
"c"
%>
<html>
<head>
<x:base
include=
"layout,dialog,grid,tree,combox,commonTree"
/>
<x:base
include=
"layout,dialog,grid,tree,combox,commonTree,date,attachment"
/>
<x:script
src=
"/system/excelimport/AssignCodeImp.js"
/>
<x:script
src=
'/biz/topsun/sap/nonProdApply/nonProdApplyList.js'
/>
</head>
<body>
...
...
topsun-xt/src/main/webapp/biz/topsun/sap/nonProdApply/nonProdApplyNext.jsp
View file @
1a847e99
...
...
@@ -18,7 +18,7 @@
<div
class=
"container-fluid"
style=
"padding: 10px;"
>
<c:if
test=
"
${
applyType
==
0
||
applyType
==
3
}
"
>
<x:billTitle
title=
"非产品/非
本
成品类物料基本信息维护"
needStatus=
"false"
needPerson=
"true"
/>
<x:billTitle
title=
"非产品/非
半
成品类物料基本信息维护"
needStatus=
"false"
needPerson=
"true"
/>
</c:if>
<c:if
test=
"
${
applyType
==
1
}
"
>
<x:billTitle
title=
"非产品/非半成品类物料变更基本信息维护"
needStatus=
"false"
needPerson=
"true"
/>
...
...
topsun-xt/src/main/webapp/biz/topsun/sap/suppliers/suppliersDataList.js
View file @
1a847e99
...
...
@@ -27,7 +27,7 @@ function loadSuppliersDataListGrid() {
UICtrl.addTabItem({
tabid: 'showNonProdApplyNext'+result.id,
text: "非产品/非
本
成品类物料主数据维护申请详情",
text: "非产品/非
半
成品类物料主数据维护申请详情",
url: web_app.name + '/sapNonProdApplyNext/forwardNonProdApplyNext.do?bizId='+result.id
});
}
...
...
@@ -210,7 +210,7 @@ function showUpdateDialog(id) {
// function next(){
// UICtrl.addTabItem({
// tabid: 'showNonProdApplyNext',
// text: "非产品/非
本
成品类物料主数据维护申请详情",
// text: "非产品/非
半
成品类物料主数据维护申请详情",
// url: web_app.name + '/sapNonProdApply/forwardNonProdApplyNext.do?isDetailPage=true'
// });
// }
...
...
topsun/src/main/java/com/huigou/topsun/sap/nonProdApply/application/impl/NonProdApplyDeptApplicationImpl.java
View file @
1a847e99
...
...
@@ -323,7 +323,10 @@ public class NonProdApplyDeptApplicationImpl extends BaseApplication implements
String
result
=
defaultHttpClient
.
execute
(
mapList
,
url
);
List
<
Map
<
String
,
Object
>>
resultList
=
objectMapper
.
readValue
(
result
,
new
TypeReference
<
List
<
Map
<
String
,
Object
>>>()
{
});
Map
<
String
,
Object
>
returnMap
=
resultList
.
get
(
1
);
Map
<
String
,
Object
>
returnMap
=
resultList
.
get
(
0
);
if
(
"2"
.
equals
(
returnMap
.
get
(
"TYPE"
))){
returnMap
=
resultList
.
get
(
1
);
}
mapCopy
(
backMap
,
returnMap
);
// resultMap.put("businessType", busiType);
// resultMap.put("parameter", JSON.toJSONString(map));
...
...
topsun/src/main/java/com/huigou/topsun/sap/nonProdApply/application/impl/NonProdMaterialDataExcelImport.java
0 → 100644
View file @
1a847e99
package
com
.
huigou
.
topsun
.
sap
.
nonProdApply
.
application
.
impl
;
import
com.huigou.topsun.sap.nonProdApply.domain.TmpNonProdMaterialDataImport
;
import
com.huigou.topsun.sap.nonProdApply.repository.TmpNonProdMaterialDataImportRepository
;
import
com.huigou.uasp.tool.dataimport.application.ExcelImportInterface
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
@Service
(
"nonProdMaterialDataExcelImport"
)
public
class
NonProdMaterialDataExcelImport
implements
ExcelImportInterface
{
@Autowired
private
TmpNonProdMaterialDataImportRepository
tmpNonProdMaterialDataImportRepository
;
@Override
public
void
executeImport
(
String
batchNumber
)
{
List
<
TmpNonProdMaterialDataImport
>
dataImportList
=
tmpNonProdMaterialDataImportRepository
.
findByBatchNumber
(
batchNumber
);
}
}
topsun/src/main/java/com/huigou/topsun/sap/nonProdApply/domain/NonProdApplyBaseInfo.java
View file @
1a847e99
...
...
@@ -10,7 +10,7 @@ import javax.persistence.*;
import
java.util.Date
;
/**
* 非产品/非
本
成品类物料主数据维护申请基础表
* 非产品/非
半
成品类物料主数据维护申请基础表
* @TableName non_prod_apply_base_info
*/
@Table
(
name
=
"sap_non_prod_apply_base_info"
)
...
...
topsun/src/main/java/com/huigou/topsun/sap/nonProdApply/domain/TmpNonProdMaterialDataImport.java
0 → 100644
View file @
1a847e99
This diff is collapsed.
Click to expand it.
topsun/src/main/java/com/huigou/topsun/sap/nonProdApply/repository/TmpNonProdMaterialDataImportRepository.java
0 → 100644
View file @
1a847e99
package
com
.
huigou
.
topsun
.
sap
.
nonProdApply
.
repository
;
import
com.huigou.topsun.sap.nonProdApply.domain.TmpNonProdMaterialDataImport
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
java.util.List
;
/**
* @Auther: xin.lu
* @Date: 2024/06/17/14:54
* @Description:
*/
public
interface
TmpNonProdMaterialDataImportRepository
extends
JpaRepository
<
TmpNonProdMaterialDataImport
,
String
>
{
List
<
TmpNonProdMaterialDataImport
>
findByBatchNumber
(
String
batchNumber
);
}
topsun/src/main/java/com/huigou/topsun/sap/purchaseApproval/application/impl/SapPurchaseApprovalApplicationImpl.java
View file @
1a847e99
...
...
@@ -45,11 +45,13 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.util.Assert
;
import
org.springframework.util.CollectionUtils
;
import
javax.annotation.Resource
;
import
java.text.ParseException
;
import
java.text.SimpleDateFormat
;
import
java.util.*
;
import
java.util.stream.Collectors
;
/**
* @Auther: xin.lu
...
...
@@ -226,7 +228,8 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa
public
void
saveSapPurchaseApprovalVo
(
SapPurchaseApprovalDto
sapPurchaseApprovalDto
)
{
// SapPurchaseApproval sapPurchaseApprovalVo = new SapPurchaseApproval();
SapPurchaseApprovalVo
purchaseApprovalVo
=
sapPurchaseApprovalDto
.
getLsDeader
();
SapPurchaseApproval
purchaseApproval
=
sapPurchaseApprovalRepository
.
findAllByBanfn
(
purchaseApprovalVo
.
getBanfn
());
List
<
SapPurchaseApproval
>
purchaseApprovalList
=
sapPurchaseApprovalRepository
.
findAllByBanfn
(
purchaseApprovalVo
.
getBanfn
());
String
purchaseApprovalId
=
""
;
SapPurchaseApproval
sapPurchaseApproval
=
new
SapPurchaseApproval
();
//根据SAP传过来的创建人编码,映射流程发起人
String
ernam
=
purchaseApprovalVo
.
getErnam
();
...
...
@@ -280,18 +283,32 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa
// sapPurchaseApproval.setBillCode(nextCode);
// sapPurchaseApproval = mannualStartWorkflow(sapPurchaseApproval);
// purchaseOrderId = sapPurchaseApproval.getId();
String
pId
=
mannualStartWorkApplication
.
startWorkflow
(
sapPurchaseApproval
,
PROCESS_DEFINITION_KEY
,
"sapPurchaseApproval"
);
sapPurchaseApproval
=
this
.
sapPurchaseApprovalRepository
.
findOne
(
pId
);
if
(
purchaseApproval
==
null
)
{
if
(
CollectionUtils
.
isEmpty
(
purchaseApprovalList
))
{
purchaseApprovalId
=
mannualStartWorkApplication
.
startWorkflow
(
sapPurchaseApproval
,
PROCESS_DEFINITION_KEY
,
"sapPurchaseApproval"
);
}
else
{
//将存在的作废掉 05.11 lxh
purchaseApproval
.
setStatusId
(
BizBillStatus
.
ABORTED
.
getId
());
this
.
sapPurchaseApprovalRepository
.
save
(
purchaseApproval
);
}
for
(
SapPurchaseApproval
purchaseApproval
:
purchaseApprovalList
)
{
//将存在的作废掉 05.11 lxh
//终止状态不管
//审批完成的,SAP撤审触发,终止审批完成的,并发起新的流程
if
(
purchaseApproval
.
getStatusId
()
==
BizBillStatus
.
COMPLETED
.
getId
()){
purchaseApproval
.
setStatusId
(
BizBillStatus
.
ABORTED
.
getId
());
purchaseApprovalId
=
mannualStartWorkApplication
.
startWorkflow
(
sapPurchaseApproval
,
PROCESS_DEFINITION_KEY
,
"sapPurchaseApproval"
);
}
sapPurchaseApprovalItemApplication
.
saveSapPurchaseApprovalItems
(
sapPurchaseApproval
.
getId
(),
sapPurchaseApprovalItems
);
//在审批中,更新明细数据的(先删除,再新增)
if
(
purchaseApproval
.
getStatusId
()
==
BizBillStatus
.
APPROVING
.
getId
()){
List
<
SapPurchaseApprovalItem
>
itemList
=
sapPurchaseApprovalItemApplication
.
querySapPurchaseApprovalItems
(
purchaseApproval
.
getId
());
List
<
String
>
collect
=
itemList
.
stream
().
map
(
SapPurchaseApprovalItem:
:
getId
).
collect
(
Collectors
.
toList
());
sapPurchaseApprovalItemApplication
.
deleteByIds
(
collect
);
purchaseApprovalId
=
purchaseApproval
.
getId
();
}
this
.
sapPurchaseApprovalRepository
.
save
(
purchaseApproval
);
}
}
sapPurchaseApprovalItemApplication
.
saveSapPurchaseApprovalItems
(
purchaseApprovalId
,
sapPurchaseApprovalItems
);
}
/*public String startProcessInstance(String processDefinitionKey,Map<String, Object> formData){
...
...
topsun/src/main/java/com/huigou/topsun/sap/purchaseApproval/controller/SapPurchaseApprovalController.java
View file @
1a847e99
...
...
@@ -49,7 +49,7 @@ public class SapPurchaseApprovalController extends CommonController {
messageMap
.
put
(
"Message_Status"
,
"S"
);
messageMap
.
put
(
"Message_Text"
,
"成功"
);
messageMap
.
put
(
"NUMBER"
,
sapPurchaseApprovalDto
.
getLsDeader
().
getBanfn
());
LOG
.
info
(
"SAP采购申请审批数据=={}"
,
sapPurchaseApprovalDto
);
LOG
.
info
(
"SAP采购申请审批数据=={}"
,
JSONUtil
.
toString
(
sapPurchaseApprovalDto
)
);
try
{
this
.
sapPurchaseApprovalApplication
.
saveSapPurchaseApprovalVo
(
sapPurchaseApprovalDto
);
}
catch
(
RuntimeException
e
){
...
...
topsun/src/main/java/com/huigou/topsun/sap/purchaseApproval/repository/SapPurchaseApprovalRepository.java
View file @
1a847e99
...
...
@@ -4,6 +4,8 @@ import com.huigou.topsun.sap.purchaseApproval.domain.SapPurchaseApproval;
import
com.huigou.topsun.sap.purchaseOrder.domain.SapPurchaseOrder
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
java.util.List
;
/**
* @Auther: xin.lu
* @Date: 2024/01/09/19:00
...
...
@@ -11,5 +13,5 @@ import org.springframework.data.jpa.repository.JpaRepository;
*/
public
interface
SapPurchaseApprovalRepository
extends
JpaRepository
<
SapPurchaseApproval
,
String
>
{
SapPurchaseApproval
findAllByBanfn
(
String
banfn
);
List
<
SapPurchaseApproval
>
findAllByBanfn
(
String
banfn
);
}
topsun/src/main/java/com/huigou/topsun/sap/purchaseOrder/application/impl/SapPurchaseOrderApplicationImpl.java
View file @
1a847e99
...
...
@@ -47,6 +47,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.util.Assert
;
import
org.springframework.util.CollectionUtils
;
import
javax.annotation.Resource
;
import
java.util.*
;
...
...
@@ -205,7 +206,7 @@ public class SapPurchaseOrderApplicationImpl extends FlowBroker implements SapPu
@Transactional
public
void
saveSapPurchaseOrderDto
(
SapPurchaseOrderDto
sapPurchaseOrderDto
)
{
SapPurchaseOrderVo
sapPurchaseOrderVo
=
sapPurchaseOrderDto
.
getLsHeader
();
SapPurchaseOrder
purchaseOrder
=
sapPurchaseOrderRepository
.
findAllByEbeln
(
sapPurchaseOrderVo
.
getEbeln
());
List
<
SapPurchaseOrder
>
purchaseOrders
=
sapPurchaseOrderRepository
.
findAllByEbeln
(
sapPurchaseOrderVo
.
getEbeln
());
String
purchaseOrderId
=
""
;
//数据第一次接收,创建流程任务
SapPurchaseOrder
sapPurchaseOrder
=
new
SapPurchaseOrder
();
...
...
@@ -247,18 +248,28 @@ public class SapPurchaseOrderApplicationImpl extends FlowBroker implements SapPu
// String nextCode = codeGenerator.getNextCode("sapPurchaseOrder");
// sapPurchaseOrder.setBillCode(nextCode);
// sapPurchaseOrder =mannualStartWorkflow(sapPurchaseOrder);
String
pId
=
mannualStartWorkApplication
.
startWorkflow
(
sapPurchaseOrder
,
PROCESS_DEFINITION_KEY
,
"sapPurchaseOrder"
);
sapPurchaseOrder
=
this
.
sapPurchaseOrderRepository
.
findOne
(
pId
);
purchaseOrderId
=
sapPurchaseOrder
.
getId
();
// sapPurchaseOrder = this.sapPurchaseOrderRepository.save(sapPurchaseOrder);
// purchaseOrderId = sapPurchaseOrder.getId();
if
(
purchaseOrder
==
null
)
{
//存在也新建 04.28注释的 05.11 把存在的作废掉
if
(
CollectionUtils
.
isEmpty
(
purchaseOrders
))
{
//存在也新建 04.28注释的 05.11 把存在的作废掉
purchaseOrderId
=
mannualStartWorkApplication
.
startWorkflow
(
sapPurchaseOrder
,
PROCESS_DEFINITION_KEY
,
"sapPurchaseOrder"
);
}
else
{
//将存在的作废掉 05.11 lxh
purchaseOrder
.
setStatusId
(
BizBillStatus
.
ABORTED
.
getId
());
this
.
sapPurchaseOrderRepository
.
save
(
purchaseOrder
);
for
(
SapPurchaseOrder
purchaseOrder
:
purchaseOrders
)
{
//终止状态不管
//审批完成的,SAP撤审触发,终止审批完成的,并发起新的流程
if
(
purchaseOrder
.
getStatusId
()
==
BizBillStatus
.
COMPLETED
.
getId
()){
purchaseOrder
.
setStatusId
(
BizBillStatus
.
ABORTED
.
getId
());
purchaseOrderId
=
mannualStartWorkApplication
.
startWorkflow
(
sapPurchaseOrder
,
PROCESS_DEFINITION_KEY
,
"sapPurchaseOrder"
);
}
//在审批中,更新明细数据的(先删除,再新增)
if
(
purchaseOrder
.
getStatusId
()
==
BizBillStatus
.
APPROVING
.
getId
()){
List
<
SapPurchaseOrderItem
>
itemList
=
sapPurchaseOrderItemApplication
.
getPurchaseOrderItems
(
purchaseOrder
.
getId
());
sapPurchaseOrderItemApplication
.
deletePurchaseOrderItems
(
itemList
);
purchaseOrderId
=
purchaseOrder
.
getId
();
}
this
.
sapPurchaseOrderRepository
.
save
(
purchaseOrder
);
}
//数据第n次接收覆盖上一次数据
/* BeanUtil.copyProperties(sapPurchaseOrderVo, purchaseOrder);
...
...
topsun/src/main/java/com/huigou/topsun/sap/purchaseOrder/controller/SapPurchaseOrderController.java
View file @
1a847e99
...
...
@@ -9,6 +9,7 @@ import com.huigou.topsun.sap.purchaseOrder.domain.vo.SapPurchaseOrderDto;
import
com.huigou.uasp.annotation.ControllerMapping
;
import
com.huigou.uasp.annotation.SkipAuth
;
import
com.huigou.uasp.client.CommonController
;
import
com.huigou.util.JSONUtil
;
import
com.huigou.util.SDO
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
...
...
@@ -43,7 +44,7 @@ public class SapPurchaseOrderController extends CommonController {
@RequestMapping
(
value
=
"/getSapPurchaseOrder"
,
consumes
=
"application/json; charset=UTF-8"
,
produces
=
"application/json; charset=UTF-8"
)
@ResponseBody
public
HashMap
<
String
,
Object
>
getSapPurchaseOrder
(
@RequestBody
SapPurchaseOrderDto
sapPurchaseOrderDto
){
LOG
.
info
(
"SAP采购订单审批数据=={}"
,
sapPurchaseOrderDto
);
LOG
.
info
(
"SAP采购订单审批数据=={}"
,
JSONUtil
.
toString
(
sapPurchaseOrderDto
)
);
//System.out.println(sapPurchaseOrderDto);
HashMap
<
String
,
Object
>
messageMap
=
new
HashMap
<>();
messageMap
.
put
(
"Message_Status"
,
"S"
);
...
...
topsun/src/main/java/com/huigou/topsun/sap/purchaseOrder/repository/SapPurchaseOrderRepository.java
View file @
1a847e99
...
...
@@ -3,6 +3,8 @@ package com.huigou.topsun.sap.purchaseOrder.repository;
import
com.huigou.topsun.sap.purchaseOrder.domain.SapPurchaseOrder
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
java.util.List
;
/**
* @Auther: xin.lu
* @Date: 2024/01/09/19:00
...
...
@@ -10,5 +12,5 @@ import org.springframework.data.jpa.repository.JpaRepository;
*/
public
interface
SapPurchaseOrderRepository
extends
JpaRepository
<
SapPurchaseOrder
,
String
>
{
SapPurchaseOrder
findAllByEbeln
(
String
ebeln
);
List
<
SapPurchaseOrder
>
findAllByEbeln
(
String
ebeln
);
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment