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
d3fa653a
Commit
d3fa653a
authored
Mar 04, 2025
by
1650842865
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
采购申请审批中是存货转移类型的,审批完成后,创建跨工厂存货调拨,并推送到SAP创建订单
parent
3210ea34
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
385 additions
and
28 deletions
+385
-28
sapPurchaseApprovalDetail.js
.../topsun/sap/purchaseApproval/sapPurchaseApprovalDetail.js
+4
-0
sapStockTransfersDetail.jsp
...bapp/biz/topsun/sap/transfers/sapStockTransfersDetail.jsp
+1
-1
SapPurchaseApplication.java
...psun/sap/purchase/application/SapPurchaseApplication.java
+3
-0
SapPurchaseApplicationImpl.java
...purchase/application/impl/SapPurchaseApplicationImpl.java
+35
-0
SapPurchaseController.java
...topsun/sap/purchase/controller/SapPurchaseController.java
+31
-0
SapPurchaseItemDto.java
...gou/topsun/sap/purchase/domain/vo/SapPurchaseItemDto.java
+132
-0
SapPurchaseApprovalApplicationImpl.java
.../application/impl/SapPurchaseApprovalApplicationImpl.java
+14
-0
SapPurchaseApprovalItem.java
.../sap/purchaseApproval/domain/SapPurchaseApprovalItem.java
+18
-0
SapPurchaseApprovalItemVo.java
...purchaseApproval/domain/vo/SapPurchaseApprovalItemVo.java
+20
-0
SapStockTransfersApplication.java
...p/transfers/application/SapStockTransfersApplication.java
+9
-0
SapStockTransfersApplicationImpl.java
...rs/application/impl/SapStockTransfersApplicationImpl.java
+108
-26
SapStockTransfers.java
...huigou/topsun/sap/transfers/domain/SapStockTransfers.java
+7
-1
SapStockTransfersVO.java
...u/topsun/sap/transfers/domain/vo/SapStockTransfersVO.java
+3
-0
No files found.
topsun-xt/src/main/webapp/biz/topsun/sap/purchaseApproval/sapPurchaseApprovalDetail.js
View file @
d3fa653a
...
...
@@ -3,6 +3,10 @@ $(function () {
$
(
"#toolBar"
).
toolBar
(
"enable"
,
"forceAbortTask"
);
initItemGrid
();
bindEvent
();
var
batxt
=
$
(
"#batxt"
).
val
();
if
(
"库存转储"
==
batxt
){
$
(
"#billTitle .subject"
).
html
(
batxt
)
}
});
function
bindEvent
()
{
...
...
topsun-xt/src/main/webapp/biz/topsun/sap/transfers/sapStockTransfersDetail.jsp
View file @
d3fa653a
...
...
@@ -14,7 +14,7 @@
<x:hidden
name=
"billCode"
/>
<x:hidden
name=
"lifnr"
/>
<x:hidden
name=
"bsart"
value=
"zub"
/>
<x:hidden
name=
"banfn"
/>
<x:hidden
name=
"fillinDate"
type=
"datetime"
/>
<x:hidden
name=
"fullId"
/>
<x:hidden
name=
"organId"
/>
...
...
topsun/src/main/java/com/huigou/topsun/sap/purchase/application/SapPurchaseApplication.java
View file @
d3fa653a
...
...
@@ -2,6 +2,7 @@ package com.huigou.topsun.sap.purchase.application;
import
com.huigou.topsun.sap.purchase.domain.SapPurchase
;
import
com.huigou.topsun.sap.purchase.domain.query.SapPurchaseQueryRequest
;
import
com.huigou.topsun.sap.purchase.domain.vo.SapPurchaseItemDto
;
import
java.util.Map
;
...
...
@@ -20,4 +21,6 @@ public interface SapPurchaseApplication {
SapPurchase
loadSapPurchase
(
String
id
);
String
revokeApproval
(
String
id
);
SapPurchase
saveEPPurchaseItem
(
SapPurchase
sapPurchase
,
SapPurchaseItemDto
sapPurchaseItemDto
);
}
topsun/src/main/java/com/huigou/topsun/sap/purchase/application/impl/SapPurchaseApplicationImpl.java
View file @
d3fa653a
package
com
.
huigou
.
topsun
.
sap
.
purchase
.
application
.
impl
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.huigou.cache.SystemCache
;
import
com.huigou.context.Operator
;
import
com.huigou.context.ThreadLocalUtil
;
import
com.huigou.data.domain.model.CommonDomainConstants
;
import
com.huigou.data.query.model.QueryDescriptor
;
import
com.huigou.data.query.model.QueryModel
;
...
...
@@ -16,11 +19,14 @@ import com.huigou.topsun.sap.purchase.application.SapPurchaseItemApplication;
import
com.huigou.topsun.sap.purchase.domain.SapPurchase
;
import
com.huigou.topsun.sap.purchase.domain.SapPurchaseItem
;
import
com.huigou.topsun.sap.purchase.domain.query.SapPurchaseQueryRequest
;
import
com.huigou.topsun.sap.purchase.domain.vo.SapPurchaseItemDto
;
import
com.huigou.topsun.sap.purchase.domain.vo.SapPurchaseItemVo
;
import
com.huigou.topsun.sap.purchase.domain.vo.SapPurchaseVo
;
import
com.huigou.topsun.sap.purchase.repository.SapPurchaseRepository
;
import
com.huigou.topsun.sap.common.domain.SapResult
;
import
com.huigou.uasp.bmp.common.BizBillStatus
;
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.util.ClassHelper
;
import
com.huigou.util.DateUtil
;
...
...
@@ -57,6 +63,8 @@ public class SapPurchaseApplicationImpl extends FlowBroker implements SapPurchas
private
MannualStartWorkApplication
mannualStartWorkApplication
;
@Autowired
private
DataPermissionApplication
dataPermissionApplication
;
@Autowired
private
OperatorApplication
operatorApplication
;
@Override
protected
String
saveBizAndApprovalData
()
{
...
...
@@ -329,5 +337,32 @@ public class SapPurchaseApplicationImpl extends FlowBroker implements SapPurchas
return
newSapPurchase
.
getId
();
}
@Override
public
SapPurchase
saveEPPurchaseItem
(
SapPurchase
sapPurchase
,
SapPurchaseItemDto
sapPurchaseItemDto
)
{
//创建主表
//根据SAP传过来的创建人编码,映射流程发起人
String
afnam
=
sapPurchaseItemDto
.
getAfnam
();
Org
org
=
orgApplication
.
loadMainOrgByLoginName
(
afnam
);
String
acceptPersonCode
=
SystemCache
.
getParameter
(
"acceptPersonCode"
,
String
.
class
);
if
(
ObjectUtil
.
isNull
(
org
)){
org
=
orgApplication
.
loadMainOrgByLoginName
(
acceptPersonCode
);
}
if
(
ObjectUtil
.
isNotNull
(
org
)){
Operator
operator
=
operatorApplication
.
createOperatorByPersonMemberId
(
org
.
getId
());
ThreadLocalUtil
.
putOperator
(
operator
);
}
//设置默认值,并保存
sapPurchase
.
setBsart
(
"ZNE2"
);
sapPurchase
.
setKnttp
(
"K"
);
String
id
=
mannualStartWorkApplication
.
startWorkflow
(
sapPurchase
,
PROCESS_DEFINITION_KEY
,
"sapPurchase"
);
//转换明细,保存
SapPurchaseItem
sapPurchaseItem
=
new
SapPurchaseItem
();
BeanUtil
.
copyProperties
(
sapPurchaseItemDto
,
sapPurchaseItem
);
List
<
SapPurchaseItem
>
itemList
=
new
ArrayList
<>();
itemList
.
add
(
sapPurchaseItem
);
this
.
sapPurchaseItemApplication
.
saveSapPurchaseItems
(
id
,
itemList
);
return
sapPurchase
;
}
}
topsun/src/main/java/com/huigou/topsun/sap/purchase/controller/SapPurchaseController.java
View file @
d3fa653a
...
...
@@ -7,14 +7,24 @@ import com.huigou.topsun.common.BillStatus;
import
com.huigou.topsun.sap.purchase.application.SapPurchaseApplication
;
import
com.huigou.topsun.sap.purchase.domain.SapPurchase
;
import
com.huigou.topsun.sap.purchase.domain.query.SapPurchaseQueryRequest
;
import
com.huigou.topsun.sap.purchase.domain.vo.SapPurchaseItemDto
;
import
com.huigou.topsun.sap.purchaseApproval.controller.SapPurchaseApprovalController
;
import
com.huigou.topsun.sap.purchaseApproval.domain.vo.SapPurchaseApprovalDto
;
import
com.huigou.topsun.sap.sapApplication.application.SapDictionaryApplication
;
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.JSONUtil
;
import
com.huigou.util.SDO
;
import
com.huigou.util.StringUtil
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
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
java.io.IOException
;
...
...
@@ -32,6 +42,7 @@ import java.util.stream.Collectors;
@Controller
@ControllerMapping
(
"/sapPurchase"
)
public
class
SapPurchaseController
extends
CommonController
{
private
final
static
Logger
LOG
=
LoggerFactory
.
getLogger
(
SapPurchaseController
.
class
);
@Override
protected
String
getPagePath
()
{
return
"/biz/topsun/sap/purchase/"
;
...
...
@@ -149,4 +160,24 @@ public class SapPurchaseController extends CommonController {
}
return
packGridDataAndResult
(
mapList
);
}
@SkipAuth
@RequestMapping
(
value
=
"/getEPPurchaseItem"
)
@ResponseBody
public
HashMap
<
String
,
Object
>
getEPPurchaseItem
(
@RequestBody
SapPurchaseItemDto
sapPurchaseItemDto
){
HashMap
<
String
,
Object
>
messageMap
=
new
HashMap
<>();
LOG
.
info
(
"EP打样采购申请数据=={}"
,
JSONUtil
.
toString
(
sapPurchaseItemDto
));
SapPurchase
sapPurchase
=
new
SapPurchase
();
try
{
sapPurchase
=
this
.
sapPurchaseApplication
.
saveEPPurchaseItem
(
sapPurchase
,
sapPurchaseItemDto
);
messageMap
.
put
(
"CODE"
,
"S"
);
messageMap
.
put
(
"MSG"
,
"成功"
);
messageMap
.
put
(
"DATA"
,
sapPurchase
.
getBillCode
());
}
catch
(
RuntimeException
e
){
messageMap
.
put
(
"CODE"
,
"E"
);
messageMap
.
put
(
"MSG"
,
e
.
getMessage
());
messageMap
.
put
(
"DATA"
,
JSONUtil
.
toString
(
sapPurchaseItemDto
));
}
return
messageMap
;
}
}
topsun/src/main/java/com/huigou/topsun/sap/purchase/domain/vo/SapPurchaseItemDto.java
0 → 100644
View file @
d3fa653a
package
com
.
huigou
.
topsun
.
sap
.
purchase
.
domain
.
vo
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
lombok.Data
;
import
javax.persistence.Column
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
/**
* @Auther: xin.lu
* @Date: 2024/01/02/14:07
* @Description:
*/
@Data
public
class
SapPurchaseItemDto
implements
Serializable
{
/**
* 短文本
*/
@JsonProperty
(
"TXZ01"
)
private
String
txz01
;
/**
* 工厂
*/
@JsonProperty
(
"WERKS"
)
private
String
werks
;
/**
* 工厂名称
*/
@JsonProperty
(
"NAME1"
)
private
String
name1
;
/**
* 申购项次号
*/
@JsonProperty
(
"BANPO"
)
private
Integer
bnfpo
;
/**
* 项次类别
*/
@JsonProperty
(
"PSTYP"
)
private
String
pstyp
;
/**
* 物料组
*/
@JsonProperty
(
"MATKL"
)
private
String
matkl
;
/**
* 申购数量
*/
@JsonProperty
(
"BUMNG"
)
private
BigDecimal
menge
;
/**
* 申购数量单位
*/
@JsonProperty
(
"MEINS"
)
private
String
meins
;
/**
* 申购数量单位
*/
@JsonProperty
(
"MEINS_NAME"
)
private
String
meinsName
;
/**
* 申请人
*/
@JsonProperty
(
"AFNAM"
)
private
String
afnam
;
/**
* 科目分配类别
*/
@JsonProperty
(
"KNTTP"
)
private
String
knttp
;
/**
* 成本中心
*/
@JsonProperty
(
"KOSTL"
)
private
String
kostl
;
/**
* 采购组
*/
@JsonProperty
(
"EKGRP"
)
private
String
ekgrp
;
/**
* 采购组
*/
@JsonProperty
(
"EKGRP_NAME"
)
private
String
ekgrpName
;
/**
* 要求交货日期
*/
@JsonProperty
(
"LFDAT"
)
private
String
lfdat
;
/**
* 创建日期
*/
@JsonProperty
(
"ERDAT"
)
private
String
erdat
;
/**
* 评估价格
*/
@JsonProperty
(
"NETWR"
)
private
BigDecimal
preis
;
/**
* 币种
*/
@JsonProperty
(
"WAERS"
)
private
String
waers
;
/**
* 币种描述
*/
@JsonProperty
(
"WAERS_NAME"
)
private
String
waersName
;
}
topsun/src/main/java/com/huigou/topsun/sap/purchaseApproval/application/impl/SapPurchaseApprovalApplicationImpl.java
View file @
d3fa653a
...
...
@@ -30,6 +30,7 @@ import com.huigou.topsun.sap.purchaseApproval.domain.vo.SapPurchaseApprovalItemV
import
com.huigou.topsun.sap.purchaseApproval.domain.vo.SapPurchaseApprovalVo
;
import
com.huigou.topsun.sap.purchaseApproval.repository.SapPurchaseApprovalRepository
;
import
com.huigou.topsun.sap.purchaseOrder.domain.SapPurchaseOrder
;
import
com.huigou.topsun.sap.transfers.application.SapStockTransfersApplication
;
import
com.huigou.uasp.bmp.common.BizBillStatus
;
import
com.huigou.uasp.bmp.fn.CodeGenerator
;
import
com.huigou.uasp.bmp.operator.OperatorApplication
;
...
...
@@ -76,6 +77,8 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa
private
OperatorApplication
operatorApplication
;
@Autowired
private
MannualStartWorkApplication
mannualStartWorkApplication
;
@Autowired
private
SapStockTransfersApplication
sapStockTransfersApplication
;
@Override
protected
String
saveBizAndApprovalData
()
{
...
...
@@ -295,6 +298,11 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa
sapPurchaseApprovalItems
.
add
(
sapPurchaseApprovalItem
);
sapPurchaseApproval
.
setKnttp
(
approvalItemVo
.
getKnttp
());
//科目分配类别
sapPurchaseApproval
.
setEkgrp
(
approvalItemVo
.
getEkgrp
());
//采购组
//采购申请是库存转储时,修改表头采购申请类型描述
if
(
"7"
.
equals
(
sapPurchaseApprovalItem
.
getPstyp
())){
sapPurchaseApproval
.
setBatxt
(
sapPurchaseApprovalItem
.
getPtext
());
}
}
//knttp审批要素没有值时,赋值0,防止发起流程时报错
if
(
StringUtil
.
isBlank
(
sapPurchaseApproval
.
getKnttp
())){
...
...
@@ -483,6 +491,12 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa
sapPurchaseApprovalRepository
.
save
(
sapPurchaseApproval
);
sapMutualEpLogApplication
.
saveSapMutualEpLog
(
resultMap
);
}
//根据明细的项目类别判断是不是库存转储
SapPurchaseApprovalItem
sapPurchaseApprovalItem
=
approvalItemList
.
get
(
0
);
if
(
"7"
.
equals
(
sapPurchaseApprovalItem
.
getPstyp
())){
sapStockTransfersApplication
.
createSapStockTransfersFromPurchaseApproval
(
sapPurchaseApproval
,
approvalItemList
);
}
}
@Override
...
...
topsun/src/main/java/com/huigou/topsun/sap/purchaseApproval/domain/SapPurchaseApprovalItem.java
View file @
d3fa653a
...
...
@@ -178,5 +178,23 @@ public class SapPurchaseApprovalItem extends AbstractEntity {
@Column
(
name
=
"NAME_TEXT"
)
private
String
nameText
;
/**
* 库存转储供货工厂
*/
@Column
(
name
=
"RESWK"
)
private
String
reswk
;
/**
* 采购组织
*/
@Column
(
name
=
"EKORG"
)
private
String
ekorg
;
/**
* 公司代码
*/
@Column
(
name
=
"BUKRS"
)
private
String
bukrs
;
private
static
final
long
serialVersionUID
=
1L
;
}
\ No newline at end of file
topsun/src/main/java/com/huigou/topsun/sap/purchaseApproval/domain/vo/SapPurchaseApprovalItemVo.java
View file @
d3fa653a
...
...
@@ -173,4 +173,24 @@ public class SapPurchaseApprovalItemVo {
@JsonProperty
(
"NAME_TEXT"
)
private
String
nameText
;
/**
* 库存转储供货工厂
*/
@JsonProperty
(
"RESWK"
)
private
String
reswk
;
/**
* 采购组织
*/
@JsonProperty
(
"EKORG"
)
private
String
ekorg
;
/**
* 公司代码
*/
@JsonProperty
(
"BUKRS"
)
private
String
bukrs
;
}
\ No newline at end of file
topsun/src/main/java/com/huigou/topsun/sap/transfers/application/SapStockTransfersApplication.java
View file @
d3fa653a
...
...
@@ -2,6 +2,9 @@ package com.huigou.topsun.sap.transfers.application;
import
com.huigou.topsun.sap.permit.domain.SapPermit
;
import
com.huigou.topsun.sap.permit.domain.query.SapPermitQueryRequest
;
import
com.huigou.topsun.sap.purchase.domain.SapPurchaseItem
;
import
com.huigou.topsun.sap.purchaseApproval.domain.SapPurchaseApproval
;
import
com.huigou.topsun.sap.purchaseApproval.domain.SapPurchaseApprovalItem
;
import
com.huigou.topsun.sap.transfers.domain.SapStockTransfers
;
import
com.huigou.topsun.sap.transfers.domain.query.SapStockTransfersQueryRequest
;
...
...
@@ -24,5 +27,11 @@ public interface SapStockTransfersApplication {
void
deleteByIds
(
List
<
String
>
ids
);
/**
* 创建存货转移单
* @param sapPurchaseApprovalItems
*/
void
createSapStockTransfersFromPurchaseApproval
(
SapPurchaseApproval
sapPurchaseApproval
,
List
<
SapPurchaseApprovalItem
>
sapPurchaseApprovalItems
);
// List<TmpPermitData> importExcelData(String batchNumber) ;
}
topsun/src/main/java/com/huigou/topsun/sap/transfers/application/impl/SapStockTransfersApplicationImpl.java
View file @
d3fa653a
This diff is collapsed.
Click to expand it.
topsun/src/main/java/com/huigou/topsun/sap/transfers/domain/SapStockTransfers.java
View file @
d3fa653a
...
...
@@ -12,7 +12,7 @@ import java.util.Date;
/**
* @Auther: LXH
* @Date: 2024/03/28/10:45
* @Description:
放行条
* @Description:
SAP存货转移单
*/
@Table
(
name
=
"sap_stock_transfers"
)
@Entity
...
...
@@ -76,6 +76,12 @@ public class SapStockTransfers extends FlowBillAbstractEntity {
@Column
(
name
=
"message"
)
private
String
message
;
/**
* 采购申请号
*/
@Column
(
name
=
"BANFN"
)
private
String
banfn
;
@Override
protected
String
getCodeRuleId
()
{
return
"sapStockTransfers"
;
...
...
topsun/src/main/java/com/huigou/topsun/sap/transfers/domain/vo/SapStockTransfersVO.java
View file @
d3fa653a
...
...
@@ -37,6 +37,9 @@ public class SapStockTransfersVO {
@JsonProperty
(
"BUKRS"
)
private
String
burks
;
@JsonProperty
(
"BANFN"
)
private
String
banfn
;
@JsonProperty
(
"ITEM"
)
private
List
<
SapStockTransfersItemVO
>
item
;
...
...
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