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
0aa3d627
Commit
0aa3d627
authored
May 22, 2024
by
鲁鑫
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
根据SAP传过来的创建人编码,映射流程发起人
parent
328fa45d
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
97 additions
and
54 deletions
+97
-54
Org.js
huigou-xt/src/main/webapp/system/opm/organization/Org.js
+5
-2
sapPurchaseOrderDetail.jsp
...p/biz/topsun/sap/purchaseOrder/sapPurchaseOrderDetail.jsp
+1
-0
ResourceSearchController.java
...om/huigou/topsun/controller/ResourceSearchController.java
+5
-2
SapPurchaseApprovalApplicationImpl.java
.../application/impl/SapPurchaseApprovalApplicationImpl.java
+33
-19
SapPurchaseApproval.java
...psun/sap/purchaseApproval/domain/SapPurchaseApproval.java
+12
-0
SapPurchaseApprovalVo.java
...sap/purchaseApproval/domain/vo/SapPurchaseApprovalVo.java
+6
-0
SapPurchaseOrderApplicationImpl.java
...der/application/impl/SapPurchaseOrderApplicationImpl.java
+27
-7
SapPurchaseOrderController.java
.../purchaseOrder/controller/SapPurchaseOrderController.java
+4
-19
SapPurchaseOrder.java
...gou/topsun/sap/purchaseOrder/domain/SapPurchaseOrder.java
+3
-4
OrgSyncApplicationImpl.java
...psun/syncOrg/application/impl/OrgSyncApplicationImpl.java
+1
-1
No files found.
huigou-xt/src/main/webapp/system/opm/organization/Org.js
View file @
0aa3d627
...
...
@@ -612,10 +612,13 @@ function doSavePerson() {
var
param
=
{};
var
url
=
web_app
.
name
+
(
id
?
'/org/updatePerson.ajax'
:
'/org/insertPerson.ajax'
);
$
(
'#submitForm'
).
ajaxSubmit
({
url
:
url
,
param
:
param
,
success
:
function
()
{
Public
.
ajax
(
web_app
.
name
+
"/syncOrg/insertOrUpdatePersonToSap.ajax"
,{
code
:
$
(
"#code"
).
val
(),
flag
:
type
==
'S'
?
"U"
:
"I"
},
function
()
{
if
(
isSapPerson
==
"1"
){
Public
.
ajax
(
web_app
.
name
+
"/syncOrg/insertOrUpdatePersonToSap.ajax"
,{
code
:
$
(
"#code"
).
val
(),
flag
:
type
==
'S'
?
"U"
:
"I"
},
function
()
{
})}
refreshFlag
=
true
;
_self
.
close
();
}
)}
}
});
}
...
...
topsun-xt/src/main/webapp/biz/topsun/sap/purchaseOrder/sapPurchaseOrderDetail.jsp
View file @
0aa3d627
...
...
@@ -25,6 +25,7 @@
<x:hidden
name=
"personMemberId"
/>
<x:hidden
name=
"personMemberName"
/>
<x:hidden
name=
"statusId"
/>
<x:hidden
name=
"retpo"
/>
<div
class=
"hg-form-cols"
>
<div
class=
"hg-form-row"
>
<x:inputC
name=
"ebeln"
label=
"采购订单号码"
readonly=
"true"
labelCol=
"1"
fieldCol=
"2"
required=
"false"
/>
...
...
topsun/src/main/java/com/huigou/topsun/controller/ResourceSearchController.java
View file @
0aa3d627
...
...
@@ -108,6 +108,7 @@ public class ResourceSearchController {
public
Map
<
String
,
Object
>
sapMaterialSelect
(
SDO
sdo
)
throws
IOException
{
String
param
=
sdo
.
getString
(
"paramValue"
);
String
filterValue
=
sdo
.
getString
(
"filterValue"
);
String
mtart
=
sdo
.
getString
(
"mtart"
);
//如果传了刀模板具,就排除掉
SapDialogQuery
queryRequest
=
sdo
.
toObject
(
SapDialogQuery
.
class
);
queryRequest
.
setWerks
(
filterValue
);
List
<
Map
<
String
,
String
>>
mapList
=
sapMaterialApplication
.
getSapMaterial
(
queryRequest
);
...
...
@@ -122,10 +123,10 @@ public class ResourceSearchController {
// .collect(Collectors.toList());
// }
if
(
CollectionUtil
.
isNotEmpty
(
mapList
)){
if
(
StringUtil
.
isNotBlank
(
filterValue
)){
//固定条件过滤,比如选了工厂后,只能读取改工厂下的物料组
if
(
StringUtil
.
isNotBlank
(
mtart
)){
//固定条件过滤,比如选了工厂后,只能读取改工厂下的物料组
mapList
=
mapList
.
stream
()
.
filter
(
map
->
map
.
containsValue
(
filterValue
))
.
filter
(
map
->
!
map
.
containsValue
(
mtart
))
.
collect
(
Collectors
.
toList
());
}
}
...
...
@@ -147,6 +148,8 @@ public class ResourceSearchController {
new
QuerySchemeField
(
"工厂名称"
,
"NAME1"
,
"string"
,
160L
),
new
QuerySchemeField
(
"物料编码"
,
"MATNR"
,
"string"
,
140L
),
new
QuerySchemeField
(
"物料名称"
,
"MAKTX"
,
"string"
,
200L
),
new
QuerySchemeField
(
"物料分类"
,
"MTART"
,
"string"
,
100L
),
new
QuerySchemeField
(
"物料分类描述"
,
"MTBEZ"
,
"string"
,
200L
),
new
QuerySchemeField
(
"库存地点"
,
"LGFSB"
,
"string"
,
100L
),
new
QuerySchemeField
(
"库存地点名称"
,
"LGOBE"
,
"string"
,
200L
),
new
QuerySchemeField
(
"物料组"
,
"MATKL"
,
"string"
,
100L
),
...
...
topsun/src/main/java/com/huigou/topsun/sap/purchaseApproval/application/impl/SapPurchaseApprovalApplicationImpl.java
View file @
0aa3d627
package
com
.
huigou
.
topsun
.
sap
.
purchaseApproval
.
application
.
impl
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.alibaba.fastjson.JSON
;
import
com.fasterxml.jackson.core.type.TypeReference
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
...
...
@@ -29,6 +30,7 @@ import com.huigou.topsun.sap.purchaseOrder.domain.SapPurchaseOrder;
import
com.huigou.uasp.bmp.common.BizBillStatus
;
import
com.huigou.uasp.bmp.fn.CodeGenerator
;
import
com.huigou.uasp.bmp.operator.OperatorApplication
;
import
com.huigou.uasp.bmp.opm.domain.model.org.Org
;
import
com.huigou.uasp.bpm.FlowBroker
;
import
com.huigou.uasp.bpm.ProcessAction
;
import
com.huigou.uasp.bpm.ProcessStartModel
;
...
...
@@ -223,9 +225,19 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa
@Transactional
public
void
saveSapPurchaseApprovalVo
(
SapPurchaseApprovalDto
sapPurchaseApprovalDto
)
{
// SapPurchaseApproval sapPurchaseApprovalVo = new SapPurchaseApproval();
SapPurchaseApproval
purchaseApproval
=
sapPurchaseApprovalRepository
.
findAllByBanfn
(
sapPurchaseApprovalDto
.
getLsDeader
()
.
getBanfn
());
SapPurchaseApprovalVo
purchaseApprovalVo
=
sapPurchaseApprovalDto
.
getLsDeader
();
SapPurchaseApproval
purchaseApproval
=
sapPurchaseApprovalRepository
.
findAllByBanfn
(
purchaseApprovalVo
.
getBanfn
());
SapPurchaseApproval
sapPurchaseApproval
=
new
SapPurchaseApproval
();
//根据SAP传过来的创建人编码,映射流程发起人
String
ernam
=
purchaseApprovalVo
.
getErnam
();
Org
org
=
orgApplication
.
loadMainOrgByLoginName
(
ernam
);
if
(
ObjectUtil
.
isNotNull
(
org
)){
Operator
operator
=
operatorApplication
.
createOperatorByPersonMemberId
(
org
.
getId
());
ThreadLocalUtil
.
putOperator
(
operator
);
}
else
{
//throw new RuntimeException("未找到采购申请创建人:" + ernam);
}
//初始化用户信息
/* String createdById = "5EEB2DC861694A65933CB4CE9A8D870A@C18E23AAAA6940E09DF7C122332C51E0";
Operator operator = operatorApplication.createOperatorByPersonMemberId(createdById);
...
...
@@ -238,24 +250,9 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa
*/
//发起流程 05.11 lxh
BeanUtil
.
copyProperties
(
sapPurchaseApprovalDto
.
getLsDeader
(),
sapPurchaseApproval
);
// String nextCode = codeGenerator.getNextCode("sapPurchaseApproval");
// 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
)
{
}
else
{
//将存在的作废掉 05.11 lxh
purchaseApproval
.
setStatusId
(
BizBillStatus
.
ABORTED
.
getId
());
this
.
sapPurchaseApprovalRepository
.
save
(
purchaseApproval
);
}
List
<
SapPurchaseApprovalItemVo
>
approvalItemVoList
=
sapPurchaseApprovalDto
.
getItems
();
List
<
SapPurchaseApprovalItem
>
sapPurchaseApprovalItems
=
new
ArrayList
<>();
approvalItemVoList
.
forEach
(
approvalItemVo
->
{
for
(
SapPurchaseApprovalItemVo
approvalItemVo
:
approvalItemVoList
)
{
SapPurchaseApprovalItem
sapPurchaseApprovalItem
=
new
SapPurchaseApprovalItem
();
BeanUtil
.
copyProperties
(
approvalItemVo
,
sapPurchaseApprovalItem
);
SimpleDateFormat
dateFormat
=
new
SimpleDateFormat
(
"yyyyMMdd"
);
...
...
@@ -276,7 +273,24 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa
}
}
sapPurchaseApprovalItems
.
add
(
sapPurchaseApprovalItem
);
});
sapPurchaseApproval
.
setKnttp
(
approvalItemVo
.
getKnttp
());
//科目分配类别
sapPurchaseApproval
.
setEkgrp
(
approvalItemVo
.
getEkgrp
());
//采购组
}
// String nextCode = codeGenerator.getNextCode("sapPurchaseApproval");
// 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
)
{
}
else
{
//将存在的作废掉 05.11 lxh
purchaseApproval
.
setStatusId
(
BizBillStatus
.
ABORTED
.
getId
());
this
.
sapPurchaseApprovalRepository
.
save
(
purchaseApproval
);
}
sapPurchaseApprovalItemApplication
.
saveSapPurchaseApprovalItems
(
sapPurchaseApproval
.
getId
(),
sapPurchaseApprovalItems
);
}
...
...
topsun/src/main/java/com/huigou/topsun/sap/purchaseApproval/domain/SapPurchaseApproval.java
View file @
0aa3d627
...
...
@@ -43,6 +43,18 @@ public class SapPurchaseApproval extends FlowBillAbstractEntity {
@Column
(
name
=
"MESSAGE"
)
private
String
message
;
/**
* 科目分配类别
*/
@Column
(
name
=
"KNTTP"
)
private
String
knttp
;
/**
* 采购组
*/
@Column
(
name
=
"EKGRP"
)
private
String
ekgrp
;
private
static
final
long
serialVersionUID
=
1L
;
@Override
...
...
topsun/src/main/java/com/huigou/topsun/sap/purchaseApproval/domain/vo/SapPurchaseApprovalVo.java
View file @
0aa3d627
...
...
@@ -29,5 +29,11 @@ public class SapPurchaseApprovalVo implements Serializable {
@JsonProperty
(
"BATXT"
)
private
String
batxt
;
/**
* 负责创建对象的人员姓名
*/
@JsonProperty
(
"BNAME"
)
private
String
ernam
;
//private List<SapPurchaseApprovalItemVo> itemVos;
}
topsun/src/main/java/com/huigou/topsun/sap/purchaseOrder/application/impl/SapPurchaseOrderApplicationImpl.java
View file @
0aa3d627
package
com
.
huigou
.
topsun
.
sap
.
purchaseOrder
.
application
.
impl
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.fasterxml.jackson.core.type.TypeReference
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
com.huigou.context.Operator
;
...
...
@@ -27,6 +28,8 @@ import com.huigou.topsun.sap.purchaseOrder.repository.SapPurchaseOrderRepository
import
com.huigou.uasp.bmp.common.BizBillStatus
;
import
com.huigou.uasp.bmp.fn.CodeGenerator
;
import
com.huigou.uasp.bmp.operator.OperatorApplication
;
import
com.huigou.uasp.bmp.opm.application.OrgApplication
;
import
com.huigou.uasp.bmp.opm.domain.model.org.Org
;
import
com.huigou.uasp.bpm.FlowBroker
;
import
com.huigou.uasp.bpm.ProcessAction
;
import
com.huigou.uasp.bpm.ProcessStartModel
;
...
...
@@ -68,6 +71,8 @@ public class SapPurchaseOrderApplicationImpl extends FlowBroker implements SapPu
@Autowired
private
MannualStartWorkApplication
mannualStartWorkApplication
;
@Autowired
private
OrgApplication
orgApplication
;
@Override
protected
String
saveBizAndApprovalData
()
{
...
...
@@ -205,6 +210,28 @@ public class SapPurchaseOrderApplicationImpl extends FlowBroker implements SapPu
//数据第一次接收,创建流程任务
SapPurchaseOrder
sapPurchaseOrder
=
new
SapPurchaseOrder
();
BeanUtil
.
copyProperties
(
sapPurchaseOrderVo
,
sapPurchaseOrder
);
String
ernam
=
sapPurchaseOrderVo
.
getErnam
();
Org
org
=
orgApplication
.
loadMainOrgByLoginName
(
ernam
);
if
(
ObjectUtil
.
isNotNull
(
org
)){
Operator
operator
=
operatorApplication
.
createOperatorByPersonMemberId
(
org
.
getId
());
ThreadLocalUtil
.
putOperator
(
operator
);
}
else
{
//throw new RuntimeException("未找到采购订单创建人:" + ernam);
}
//String createdById = "5EEB2DC861694A65933CB4CE9A8D870A@C18E23AAAA6940E09DF7C122332C51E0";
List
<
SapPurchaseOrderItemVo
>
ltItems
=
sapPurchaseOrderDto
.
getLtItems
();
List
<
SapPurchaseOrderItem
>
purchaseOrderItems
=
new
ArrayList
<>();
String
retpo
=
""
;
for
(
SapPurchaseOrderItemVo
approvalItemVo
:
ltItems
)
{
SapPurchaseOrderItem
sapPurchaseApprovalItem
=
new
SapPurchaseOrderItem
();
BeanUtil
.
copyProperties
(
approvalItemVo
,
sapPurchaseApprovalItem
);
purchaseOrderItems
.
add
(
sapPurchaseApprovalItem
);
if
(
"X"
.
equals
(
approvalItemVo
.
getRetpo
())){
retpo
=
"X"
;
}
}
sapPurchaseOrder
.
setRetpo
(
retpo
);
//初始化用户信息
/* String createdById = "5EEB2DC861694A65933CB4CE9A8D870A@C18E23AAAA6940E09DF7C122332C51E0";
Operator operator = operatorApplication.createOperatorByPersonMemberId(createdById);
...
...
@@ -242,13 +269,6 @@ public class SapPurchaseOrderApplicationImpl extends FlowBroker implements SapPu
purchaseOrderId = purchaseOrder.getId();*/
}
// lxh 04.28
List
<
SapPurchaseOrderItemVo
>
ltItems
=
sapPurchaseOrderDto
.
getLtItems
();
List
<
SapPurchaseOrderItem
>
purchaseOrderItems
=
new
ArrayList
<>();
ltItems
.
forEach
(
approvalItemVo
->
{
SapPurchaseOrderItem
sapPurchaseApprovalItem
=
new
SapPurchaseOrderItem
();
BeanUtil
.
copyProperties
(
approvalItemVo
,
sapPurchaseApprovalItem
);
purchaseOrderItems
.
add
(
sapPurchaseApprovalItem
);
});
sapPurchaseOrderItemApplication
.
saveSapPurchaseOrderItems
(
purchaseOrderId
,
purchaseOrderItems
);
}
...
...
topsun/src/main/java/com/huigou/topsun/sap/purchaseOrder/controller/SapPurchaseOrderController.java
View file @
0aa3d627
package
com
.
huigou
.
topsun
.
sap
.
purchaseOrder
.
controller
;
import
com.fasterxml.jackson.core.JsonProcessingException
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
com.fasterxml.jackson.databind.SerializationFeature
;
import
com.huigou.context.Operator
;
import
com.huigou.context.OrgUnit
;
import
com.huigou.topsun.sap.acceptanceFormAck.domain.SapAcceptanceFormAck
;
import
com.huigou.topsun.sap.purchaseApproval.domain.query.SapPurchaseApprovalItemQueryRequest
;
import
com.huigou.topsun.sap.purchaseOrder.application.SapPurchaseOrderApplication
;
import
com.huigou.topsun.sap.purchaseOrder.application.SapPurchaseOrderItemApplication
;
import
com.huigou.topsun.sap.purchaseOrder.domain.SapPurchaseOrder
;
import
com.huigou.topsun.sap.purchaseOrder.domain.SapPurchaseOrderItem
;
import
com.huigou.topsun.sap.purchaseOrder.domain.query.SapPurchaseOrderItemQueryRequest
;
import
com.huigou.topsun.sap.purchaseOrder.domain.query.SapPurchaseOrderQueryRequest
;
import
com.huigou.topsun.sap.purchaseOrder.domain.vo.SapPurchaseOrderDto
;
import
com.huigou.topsun.sap.purchaseOrder.domain.vo.SapPurchaseOrderVo
;
import
com.huigou.topsun.util.MyBaseUtil
;
import
com.huigou.uasp.annotation.ControllerMapping
;
import
com.huigou.uasp.annotation.SkipAuth
;
import
com.huigou.uasp.bmp.common.BizBillStatus
;
import
com.huigou.uasp.client.CommonController
;
import
com.huigou.util.SDO
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.ResponseBody
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
java.io.BufferedReader
;
import
java.io.IOException
;
import
java.io.InputStream
;
import
java.io.InputStreamReader
;
import
java.nio.charset.StandardCharsets
;
import
java.text.SimpleDateFormat
;
import
java.util.HashMap
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
/**
* @Auther: xin.lu
...
...
@@ -46,6 +29,7 @@ import java.util.stream.Collectors;
@Controller
@ControllerMapping
(
"/sapPurchaseOrder"
)
public
class
SapPurchaseOrderController
extends
CommonController
{
private
final
static
Logger
LOG
=
LoggerFactory
.
getLogger
(
SapPurchaseOrderController
.
class
);
@Resource
private
SapPurchaseOrderItemApplication
sapPurchaseOrderItemApplication
;
@Resource
...
...
@@ -59,6 +43,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
);
//System.out.println(sapPurchaseOrderDto);
this
.
sapPurchaseOrderApplication
.
saveSapPurchaseOrderDto
(
sapPurchaseOrderDto
);
...
...
topsun/src/main/java/com/huigou/topsun/sap/purchaseOrder/domain/SapPurchaseOrder.java
View file @
0aa3d627
...
...
@@ -4,10 +4,7 @@ import com.fasterxml.jackson.annotation.JsonProperty;
import
com.huigou.data.domain.model.FlowBillAbstractEntity
;
import
lombok.Data
;
import
javax.persistence.Column
;
import
javax.persistence.Entity
;
import
javax.persistence.Id
;
import
javax.persistence.Table
;
import
javax.persistence.*
;
import
java.io.Serializable
;
import
java.util.Date
;
...
...
@@ -147,6 +144,8 @@ public class SapPurchaseOrder extends FlowBillAbstractEntity {
// */
// @Column(name = "SYSTEM")
// private String system;
@Column
(
name
=
"retpo"
)
private
String
retpo
;
@Override
protected
String
getCodeRuleId
()
{
...
...
topsun/src/main/java/com/huigou/topsun/syncOrg/application/impl/OrgSyncApplicationImpl.java
View file @
0aa3d627
...
...
@@ -95,7 +95,7 @@ public class OrgSyncApplicationImpl extends BaseApplication implements OrgSyncAp
epOrgVo
.
setOrgVoList
(
orgVoList
);
epOrgVo
.
setOrgPersonVoList
(
orgPersonVoList
);
epOrgVo
.
setPersonVoList
(
personVoList
);
LOG
.
info
(
DateUtil
.
getDateFormat
(
new
Date
())+
"====同步的组织结构数据===={}"
,
epOrgVo
);
//
LOG.info(DateUtil.getDateFormat(new Date())+"====同步的组织结构数据===={}",epOrgVo);
return
epOrgVo
;
}
...
...
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