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
e95a1f5a
Commit
e95a1f5a
authored
Mar 07, 2024
by
鲁鑫
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
SAP源发的采购申请审批接口
parent
757220f6
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
119 additions
and
22 deletions
+119
-22
sapPurchaseApprovalDetail.js
.../topsun/sap/purchaseApproval/sapPurchaseApprovalDetail.js
+1
-1
sapPurchaseApprovalDetail.jsp
...topsun/sap/purchaseApproval/sapPurchaseApprovalDetail.jsp
+2
-2
sapPurchaseApprovalList.js
...iz/topsun/sap/purchaseApproval/sapPurchaseApprovalList.js
+4
-2
SapPurchaseApprovalApplication.java
...eApproval/application/SapPurchaseApprovalApplication.java
+2
-1
SapPurchaseApprovalApplicationImpl.java
.../application/impl/SapPurchaseApprovalApplicationImpl.java
+28
-10
SapPurchaseApprovalController.java
...aseApproval/controller/SapPurchaseApprovalController.java
+13
-2
SapPurchaseApproval.java
...psun/sap/purchaseApproval/domain/SapPurchaseApproval.java
+11
-0
SapPurchaseApprovalDto.java
...ap/purchaseApproval/domain/vo/SapPurchaseApprovalDto.java
+21
-0
SapPurchaseApprovalItemVo.java
...purchaseApproval/domain/vo/SapPurchaseApprovalItemVo.java
+32
-3
SapPurchaseApprovalVo.java
...sap/purchaseApproval/domain/vo/SapPurchaseApprovalVo.java
+5
-1
No files found.
topsun-xt/src/main/webapp/biz/topsun/sap/purchaseApproval/sapPurchaseApprovalDetail.js
View file @
e95a1f5a
...
...
@@ -39,7 +39,7 @@ function initItemGrid() {
checkbox
:
true
,
usePager
:
true
,
rownumbers
:
true
,
enabledEdit
:
tru
e
,
enabledEdit
:
fals
e
,
fixedCellHeight
:
true
,
selectRowButtonOnly
:
true
,
//autoApplyNextEditor:false,
...
...
topsun-xt/src/main/webapp/biz/topsun/sap/purchaseApproval/sapPurchaseApprovalDetail.jsp
View file @
e95a1f5a
...
...
@@ -28,8 +28,8 @@
<x:hidden
name=
"bsart"
/>
<div
class=
"hg-form-cols"
>
<div
class=
"hg-form-row"
>
<x:inputC
name=
"banfn"
label=
"采购申请号"
readonly=
"
fals
e"
labelCol=
"1"
fieldCol=
"2"
required=
"true"
/>
<x:inputC
name=
"batxt"
label=
"采购申请类型描述"
readonly=
"
false"
labelCol=
"1"
fieldCol=
"2"
required=
"tru
e"
/>
<x:inputC
name=
"banfn"
label=
"采购申请号"
readonly=
"
tru
e"
labelCol=
"1"
fieldCol=
"2"
required=
"true"
/>
<x:inputC
name=
"batxt"
label=
"采购申请类型描述"
readonly=
"
true"
labelCol=
"1"
fieldCol=
"2"
required=
"fals
e"
/>
</div>
</div>
<div
id=
"maingrid"
></div>
...
...
topsun-xt/src/main/webapp/biz/topsun/sap/purchaseApproval/sapPurchaseApprovalList.js
View file @
e95a1f5a
...
...
@@ -11,7 +11,7 @@ function initUI() {
function
initPurchaseListGrid
()
{
var
toolbarOptions
=
UICtrl
.
getDefaultToolbarOptions
({
addHandler
:
addHandler
,
//
addHandler: addHandler,
});
purchaseApprovalGridManager
=
UICtrl
.
grid
(
'#purchaseApprovalGrid'
,
{
columns
:
[
...
...
@@ -20,6 +20,8 @@ function initPurchaseListGrid() {
,
{
display
:
"需求跟踪编号"
,
name
:
"billCode"
,
width
:
150
,
minWidth
:
60
,
type
:
"string"
,
align
:
"center"
}
,
{
display
:
"采购申请类型描述"
,
name
:
"batxt"
,
width
:
150
,
minWidth
:
60
,
type
:
"string"
,
align
:
"center"
}
,
{
display
:
"采购申请编号"
,
name
:
"banfn"
,
width
:
150
,
minWidth
:
60
,
type
:
"string"
,
align
:
"center"
}
,
{
display
:
"消息类型"
,
name
:
"type"
,
width
:
100
,
minWidth
:
60
,
type
:
"string"
,
align
:
"center"
}
,
{
display
:
"消息文本"
,
name
:
"message"
,
width
:
200
,
minWidth
:
60
,
type
:
"string"
,
align
:
"center"
}
],
dataAction
:
'server'
,
url
:
web_app
.
name
+
'/sapPurchaseApproval/slicedSapPurchaseApprovalList.ajax?'
,
...
...
@@ -72,7 +74,7 @@ function viewHandler(id) {
UICtrl
.
addTabItem
({
tabid
:
'viewPurchase'
+
id
,
text
:
'查看采购申请'
,
url
:
web_app
.
name
+
'/sapPurchaseApproval/showSapPurchaseApprovalDetail.job?bizId='
+
id
url
:
web_app
.
name
+
'/sapPurchaseApproval/showSapPurchaseApprovalDetail.job?
isReadOnly=true&
bizId='
+
id
});
}
...
...
topsun/src/main/java/com/huigou/topsun/sap/purchaseApproval/application/SapPurchaseApprovalApplication.java
View file @
e95a1f5a
...
...
@@ -2,6 +2,7 @@ package com.huigou.topsun.sap.purchaseApproval.application;
import
com.huigou.topsun.sap.purchaseApproval.domain.SapPurchaseApproval
;
import
com.huigou.topsun.sap.purchaseApproval.domain.query.SapPurchaseApprovalQueryRequest
;
import
com.huigou.topsun.sap.purchaseApproval.domain.vo.SapPurchaseApprovalDto
;
import
com.huigou.topsun.sap.purchaseApproval.domain.vo.SapPurchaseApprovalVo
;
import
java.util.Map
;
...
...
@@ -20,5 +21,5 @@ public interface SapPurchaseApprovalApplication {
SapPurchaseApproval
loadSapPurchaseApproval
(
String
id
);
void
saveSapPurchaseApprovalVo
(
SapPurchaseApproval
Vo
sapPurchaseApprovalV
o
);
void
saveSapPurchaseApprovalVo
(
SapPurchaseApproval
Dto
sapPurchaseApprovalDt
o
);
}
topsun/src/main/java/com/huigou/topsun/sap/purchaseApproval/application/impl/SapPurchaseApprovalApplicationImpl.java
View file @
e95a1f5a
...
...
@@ -14,6 +14,7 @@ import com.huigou.topsun.sap.purchaseApproval.application.SapPurchaseApprovalIte
import
com.huigou.topsun.sap.purchaseApproval.domain.SapPurchaseApproval
;
import
com.huigou.topsun.sap.purchaseApproval.domain.SapPurchaseApprovalItem
;
import
com.huigou.topsun.sap.purchaseApproval.domain.query.SapPurchaseApprovalQueryRequest
;
import
com.huigou.topsun.sap.purchaseApproval.domain.vo.SapPurchaseApprovalDto
;
import
com.huigou.topsun.sap.purchaseApproval.domain.vo.SapPurchaseApprovalItemVo
;
import
com.huigou.topsun.sap.purchaseApproval.domain.vo.SapPurchaseApprovalVo
;
import
com.huigou.topsun.sap.purchaseApproval.repository.SapPurchaseApprovalRepository
;
...
...
@@ -24,9 +25,7 @@ import com.huigou.uasp.bpm.FlowBroker;
import
com.huigou.uasp.bpm.ProcessAction
;
import
com.huigou.uasp.bpm.ProcessStartModel
;
import
com.huigou.uasp.bpm.engine.application.WorkflowApplication
;
import
com.huigou.util.ClassHelper
;
import
com.huigou.util.Constants
;
import
com.huigou.util.SDO
;
import
com.huigou.util.*
;
import
org.activiti.engine.delegate.DelegateExecution
;
import
org.activiti.engine.delegate.DelegateTask
;
import
org.activiti.engine.runtime.ProcessInstance
;
...
...
@@ -35,10 +34,9 @@ import org.springframework.stereotype.Service;
import
org.springframework.transaction.annotation.Transactional
;
import
javax.annotation.Resource
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.text.ParseException
;
import
java.text.SimpleDateFormat
;
import
java.util.*
;
/**
* @Auther: xin.lu
...
...
@@ -158,9 +156,9 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa
@Override
@Transactional
public
void
saveSapPurchaseApprovalVo
(
SapPurchaseApproval
Vo
sapPurchaseApprovalV
o
)
{
public
void
saveSapPurchaseApprovalVo
(
SapPurchaseApproval
Dto
sapPurchaseApprovalDt
o
)
{
SapPurchaseApproval
sapPurchaseApproval
=
new
SapPurchaseApproval
();
BeanUtil
.
copyProperties
(
sapPurchaseApproval
Vo
,
sapPurchaseApproval
);
BeanUtil
.
copyProperties
(
sapPurchaseApproval
Dto
.
getLsDeader
()
,
sapPurchaseApproval
);
//初始化用户信息
String
createdById
=
"5EEB2DC861694A65933CB4CE9A8D870A@C18E23AAAA6940E09DF7C122332C51E0"
;
Operator
operator
=
operatorApplication
.
createOperatorByPersonMemberId
(
createdById
);
...
...
@@ -171,11 +169,28 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa
sapPurchaseApproval
.
setId
(
bizId
);
sapPurchaseApproval
=
this
.
sapPurchaseApprovalRepository
.
save
(
sapPurchaseApproval
);
List
<
SapPurchaseApprovalItemVo
>
approvalItemVoList
=
sapPurchaseApproval
Vo
.
getItemVo
s
();
List
<
SapPurchaseApprovalItemVo
>
approvalItemVoList
=
sapPurchaseApproval
Dto
.
getItem
s
();
List
<
SapPurchaseApprovalItem
>
sapPurchaseApprovalItems
=
new
ArrayList
<>();
approvalItemVoList
.
forEach
(
approvalItemVo
->{
SapPurchaseApprovalItem
sapPurchaseApprovalItem
=
new
SapPurchaseApprovalItem
();
BeanUtil
.
copyProperties
(
approvalItemVo
,
sapPurchaseApprovalItem
);
SimpleDateFormat
dateFormat
=
new
SimpleDateFormat
(
"yyyyMMdd"
);
if
(
StringUtil
.
isNotBlank
(
approvalItemVo
.
getLfdat
())){
try
{
Date
parse
=
dateFormat
.
parse
(
approvalItemVo
.
getLfdat
());
sapPurchaseApprovalItem
.
setLfdat
(
parse
);
}
catch
(
ParseException
e
)
{
throw
new
RuntimeException
(
e
);
}
}
if
(
StringUtil
.
isNotBlank
(
approvalItemVo
.
getBadat
())){
try
{
Date
parse
=
dateFormat
.
parse
(
approvalItemVo
.
getBadat
());
sapPurchaseApprovalItem
.
setBadat
(
parse
);
}
catch
(
ParseException
e
)
{
throw
new
RuntimeException
(
e
);
}
}
sapPurchaseApprovalItems
.
add
(
sapPurchaseApprovalItem
);
});
sapPurchaseApprovalItemApplication
.
saveSapPurchaseApprovalItems
(
sapPurchaseApproval
.
getId
(),
sapPurchaseApprovalItems
);
...
...
@@ -236,6 +251,9 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa
if
(!
"S"
.
equals
(
resultMap
.
get
(
"TYPE"
)))
{
throw
new
RuntimeException
(
"数据传输失败,请稍后手动重试!"
+
resultMap
.
get
(
"MESSAGE"
));
}
sapPurchaseApproval
.
setType
((
String
)
resultMap
.
get
(
"TYPE"
));
sapPurchaseApproval
.
setMessage
((
String
)
resultMap
.
get
(
"MESSAGE"
));
sapPurchaseApprovalRepository
.
save
(
sapPurchaseApproval
);
}
catch
(
Exception
e
)
{
throw
new
RuntimeException
(
"数据传输失败请检查数据后重试!"
+
e
.
getMessage
());
}
...
...
topsun/src/main/java/com/huigou/topsun/sap/purchaseApproval/controller/SapPurchaseApprovalController.java
View file @
e95a1f5a
...
...
@@ -2,9 +2,11 @@ package com.huigou.topsun.sap.purchaseApproval.controller;
import
com.huigou.context.Operator
;
import
com.huigou.context.OrgUnit
;
import
com.huigou.topsun.sap.common.DefaultHttpClient
;
import
com.huigou.topsun.sap.purchaseApproval.application.SapPurchaseApprovalApplication
;
import
com.huigou.topsun.sap.purchaseApproval.domain.SapPurchaseApproval
;
import
com.huigou.topsun.sap.purchaseApproval.domain.query.SapPurchaseApprovalQueryRequest
;
import
com.huigou.topsun.sap.purchaseApproval.domain.vo.SapPurchaseApprovalDto
;
import
com.huigou.topsun.sap.purchaseApproval.domain.vo.SapPurchaseApprovalVo
;
import
com.huigou.uasp.annotation.ControllerMapping
;
import
com.huigou.uasp.annotation.SkipAuth
;
...
...
@@ -12,6 +14,8 @@ import com.huigou.uasp.bmp.common.BizBillStatus;
import
com.huigou.uasp.client.CommonController
;
import
com.huigou.util.JSONUtil
;
import
com.huigou.util.SDO
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.http.MediaType
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.web.bind.annotation.*
;
...
...
@@ -28,6 +32,7 @@ import java.util.Map;
@Controller
@ControllerMapping
(
"/sapPurchaseApproval"
)
public
class
SapPurchaseApprovalController
extends
CommonController
{
private
final
static
Logger
LOG
=
LoggerFactory
.
getLogger
(
SapPurchaseApprovalController
.
class
);
@Resource
private
SapPurchaseApprovalApplication
sapPurchaseApprovalApplication
;
@Override
...
...
@@ -38,12 +43,18 @@ public class SapPurchaseApprovalController extends CommonController {
@SkipAuth
@RequestMapping
(
value
=
"/getSapPurchaseApproval"
)
@ResponseBody
public
HashMap
<
String
,
Object
>
getSapPurchaseApproval
(
@RequestBody
SapPurchaseApproval
Vo
sapPurchaseApprovalV
o
){
public
HashMap
<
String
,
Object
>
getSapPurchaseApproval
(
@RequestBody
SapPurchaseApproval
Dto
sapPurchaseApprovalDt
o
){
//SDO sdo = this.getSDO();
this
.
sapPurchaseApprovalApplication
.
saveSapPurchaseApprovalVo
(
sapPurchaseApprovalVo
);
HashMap
<
String
,
Object
>
messageMap
=
new
HashMap
<>();
messageMap
.
put
(
"Message_Status"
,
"S"
);
messageMap
.
put
(
"Message_Text"
,
"成功"
);
LOG
.
info
(
"SAP采购申请审批数据=={}"
,
sapPurchaseApprovalDto
);
try
{
this
.
sapPurchaseApprovalApplication
.
saveSapPurchaseApprovalVo
(
sapPurchaseApprovalDto
);
}
catch
(
RuntimeException
e
){
messageMap
.
put
(
"Message_Status"
,
"E"
);
messageMap
.
put
(
"Message_Text"
,
e
);
}
return
messageMap
;
}
...
...
topsun/src/main/java/com/huigou/topsun/sap/purchaseApproval/domain/SapPurchaseApproval.java
View file @
e95a1f5a
...
...
@@ -32,6 +32,17 @@ public class SapPurchaseApproval extends FlowBillAbstractEntity {
@Column
(
name
=
"BATXT"
)
private
String
batxt
;
/**
* 消息类型
*/
@Column
(
name
=
"TYPE"
)
private
String
type
;
/**
* 消息内容
*/
@Column
(
name
=
"MESSAGE"
)
private
String
message
;
private
static
final
long
serialVersionUID
=
1L
;
@Override
...
...
topsun/src/main/java/com/huigou/topsun/sap/purchaseApproval/domain/vo/SapPurchaseApprovalDto.java
0 → 100644
View file @
e95a1f5a
package
com
.
huigou
.
topsun
.
sap
.
purchaseApproval
.
domain
.
vo
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.util.List
;
/**
* @Auther: xin.lu
* @Date: 2024/03/07/15:04
* @Description:
*/
@Data
public
class
SapPurchaseApprovalDto
implements
Serializable
{
@JsonProperty
(
"LS_HEADER"
)
private
SapPurchaseApprovalVo
lsDeader
;
@JsonProperty
(
"LT_ITEMS"
)
private
List
<
SapPurchaseApprovalItemVo
>
items
;
}
topsun/src/main/java/com/huigou/topsun/sap/purchaseApproval/domain/vo/SapPurchaseApprovalItemVo.java
View file @
e95a1f5a
package
com
.
huigou
.
topsun
.
sap
.
purchaseApproval
.
domain
.
vo
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
lombok.Data
;
import
java.math.BigDecimal
;
import
java.text.ParseException
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
/**
...
...
@@ -16,132 +19,158 @@ public class SapPurchaseApprovalItemVo {
/**
* 项目编号(已删除(EBAN-LOEKZ=X)者不传EP;已结清(EBAN-EBAKZ=X)者也不传(结清指已全部转为采购订单))
*/
@JsonProperty
(
"BNFPO"
)
private
String
bnfpo
;
/**
* 项目类别
*/
@JsonProperty
(
"PSTYP"
)
private
String
pstyp
;
/**
* 项目类别描述
*/
@JsonProperty
(
"PTEXT"
)
private
String
ptext
;
/**
* 科目分配类别
*/
@JsonProperty
(
"KNTTP"
)
private
String
knttp
;
/**
* 科目分配类别描述
*/
@JsonProperty
(
"KNTTX"
)
private
String
knttx
;
/**
* 物料号
*/
@JsonProperty
(
"MATNR"
)
private
String
matnr
;
/**
* 物料描述
*/
@JsonProperty
(
"TXZ01"
)
private
String
txz01
;
/**
* 物料组
*/
@JsonProperty
(
"MATKL"
)
private
String
matkl
;
/**
* 物料组描述
*/
@JsonProperty
(
"WGBEZ"
)
private
String
wgbez
;
/**
* 采购申请数量
*/
@JsonProperty
(
"MENGE"
)
private
BigDecimal
menge
;
/**
* 采购申请计量单位
*/
@JsonProperty
(
"MEINS"
)
private
String
meins
;
/**
* 单位描述
*/
@JsonProperty
(
"MSEHL"
)
private
String
msehl
;
/**
* 要求交货日期
*/
@Json
Format
(
pattern
=
"yyyy-MM-dd
"
)
private
Date
lfdat
;
@Json
Property
(
"LFDAT
"
)
private
String
lfdat
;
/**
* 工厂
*/
@JsonProperty
(
"WERKS"
)
private
String
werks
;
/**
* 名称
*/
@JsonProperty
(
"NAME1"
)
private
String
name1
;
/**
* 库存地点
*/
@JsonProperty
(
"LGORT"
)
private
String
lgort
;
/**
* 库存地点的描述
*/
@JsonProperty
(
"LGOBE"
)
private
String
lgobe
;
/**
* 采购组
*/
@JsonProperty
(
"EKGRP"
)
private
String
ekgrp
;
/**
* 采购组描述
*/
@JsonProperty
(
"EKNAM"
)
private
String
eknam
;
/**
* 评估价格
*/
@JsonProperty
(
"PREIS"
)
private
BigDecimal
preis
;
/**
* 价格单位
*/
@JsonProperty
(
"PEINH"
)
private
String
peinh
;
/**
* 币种
*/
@JsonProperty
(
"WAERS"
)
private
String
waers
;
/**
* 评估金额
*/
@JsonProperty
(
"RLWRT"
)
private
BigDecimal
rlwrt
;
/**
* 0需求(请求)日期
*/
private
Date
badat
;
@JsonProperty
(
"BADAT"
)
//@JsonFormat(pattern = "yyyy-MM-dd")
private
String
badat
;
/**
* 负责创建对象的人员姓名
*/
@JsonProperty
(
"ERNAM"
)
private
String
ernam
;
/**
* 完整的人员名称
*/
@JsonProperty
(
"NAME_TEXT"
)
private
String
nameText
;
}
\ No newline at end of file
topsun/src/main/java/com/huigou/topsun/sap/purchaseApproval/domain/vo/SapPurchaseApprovalVo.java
View file @
e95a1f5a
package
com
.
huigou
.
topsun
.
sap
.
purchaseApproval
.
domain
.
vo
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
lombok.Data
;
import
java.io.Serializable
;
...
...
@@ -13,17 +14,20 @@ import java.util.List;
*/
@Data
public
class
SapPurchaseApprovalVo
implements
Serializable
{
@JsonProperty
(
"BANFN"
)
private
String
banfn
;
/**
* 采购申请类型(只传输四种:NB、ZNB1、ZNB2和ZSTR)
*/
@JsonProperty
(
"BSART"
)
private
String
bsart
;
/**
* 采购申请类型描述
*/
@JsonProperty
(
"BATXT"
)
private
String
batxt
;
private
List
<
SapPurchaseApprovalItemVo
>
itemVos
;
//
private List<SapPurchaseApprovalItemVo> itemVos;
}
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