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
77dd1fb4
Commit
77dd1fb4
authored
Jan 17, 2024
by
wanghang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
费用报销 流程
parent
f94403b2
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
26 changed files
with
2170 additions
and
363 deletions
+2170
-363
costReimbursement.js
...app/biz/topsun/sap/costReimbursement/costReimbursement.js
+503
-0
costReimbursement.jsp
...pp/biz/topsun/sap/costReimbursement/costReimbursement.jsp
+71
-0
costReimbursementList.js
...biz/topsun/sap/costReimbursement/costReimbursementList.js
+108
-0
costReimbursementList.jsp
...iz/topsun/sap/costReimbursement/costReimbursementList.jsp
+28
-0
nonProdApplyNext.js
...in/webapp/biz/topsun/sap/nonProdApply/nonProdApplyNext.js
+17
-110
nonProdApplyNext.jsp
...n/webapp/biz/topsun/sap/nonProdApply/nonProdApplyNext.jsp
+218
-218
statsIndicatorsList.js
...app/biz/topsun/sap/statsIndicators/statsIndicatorsList.js
+2
-2
WorkflowApplicationImplOverride.java
...m/huigou/topsun/base/WorkflowApplicationImplOverride.java
+0
-2
ActiveStatus.java
...om/huigou/topsun/base/bsnMessage/domain/ActiveStatus.java
+18
-0
BsnMessage.java
.../com/huigou/topsun/base/bsnMessage/domain/BsnMessage.java
+10
-11
SapCostReimbursementApplication.java
...ursement/application/SapCostReimbursementApplication.java
+27
-0
SapCostReimbursementDetailApplication.java
...nt/application/SapCostReimbursementDetailApplication.java
+14
-0
SapCostReimbursementApplicationImpl.java
...application/impl/SapCostReimbursementApplicationImpl.java
+204
-0
SapCostReimbursementDetailApplicationImpl.java
...ation/impl/SapCostReimbursementDetailApplicationImpl.java
+31
-0
SapCostReimbursementController.java
...mbursement/controller/SapCostReimbursementController.java
+102
-0
SapCostReimbursement.java
...un/sap/costReimbursement/domain/SapCostReimbursement.java
+139
-0
SapCostReimbursementDetail.java
.../costReimbursement/domain/SapCostReimbursementDetail.java
+367
-0
SapCostReimbursementQueryRequest.java
...sement/domain/query/SapCostReimbursementQueryRequest.java
+119
-0
SapCostReimbursementDetailRepository.java
...ment/repostiory/SapCostReimbursementDetailRepository.java
+11
-0
SapCostReimbursementRepository.java
...mbursement/repostiory/SapCostReimbursementRepository.java
+9
-0
NonProdApplyDeptApplication.java
...nonProdApply/application/NonProdApplyDeptApplication.java
+1
-0
NonProdApplyDeptApplicationImpl.java
...ply/application/impl/NonProdApplyDeptApplicationImpl.java
+37
-12
NonProdApplyNextController.java
...p/nonProdApply/controller/NonProdApplyNextController.java
+7
-8
test.java
...a/com/huigou/topsun/sap/nonProdApply/controller/test.java
+4
-0
sapCostReimbursementProc.bpmn
...resources/config/bpm/topsun/sapCostReimbursementProc.bpmn
+111
-0
costReimbursement.xml
...config/topsun/sap/costReimbursement/costReimbursement.xml
+12
-0
No files found.
topsun-xt/src/main/webapp/biz/topsun/sap/costReimbursement/costReimbursement.js
0 → 100644
View file @
77dd1fb4
This diff is collapsed.
Click to expand it.
topsun-xt/src/main/webapp/biz/topsun/sap/costReimbursement/costReimbursement.jsp
0 → 100644
View file @
77dd1fb4
<%@ page
language=
"java"
contentType=
"text/html; charset=utf-8"
%>
<%@taglib
uri=
"/WEB-INF/taglib.tld"
prefix=
"x"
%>
<%@ taglib
uri=
"http://java.sun.com/jsp/jstl/core"
prefix=
"c"
%>
<html>
<head>
<x:base
include=
"layout,dialog,grid,tree,combox,commonTree,date"
/>
<x:script
src=
'/biz/topsun/sap/costReimbursement/costReimbursement.js'
/>
</head>
<body>
<div
class=
"container-fluid"
style=
"padding: 10px;"
>
<x:billTitle
title=
"费用报销申请"
needStatus=
"false"
needPerson=
"true"
/>
<form
class=
"hg-form"
method=
"post"
action=
""
id=
"submitForm"
>
<x:hidden
name=
"id"
/>
<x:hidden
name=
"billCode"
/>
<x:hidden
name=
"fillinDate"
type=
"datetime"
/>
<x:hidden
name=
"fullId"
/>
<x:hidden
name=
"organId"
/>
<x:hidden
name=
"organName"
/>
<x:hidden
name=
"deptId"
/>
<x:hidden
name=
"deptName"
/>
<x:hidden
name=
"positionId"
/>
<x:hidden
name=
"positionName"
/>
<x:hidden
name=
"personMemberId"
/>
<x:hidden
name=
"personMemberName"
/>
<div
class=
"hg-form-cols"
>
<div
class=
"hg-form-row"
>
<x:inputC
name=
"kokrs"
required=
"false"
label=
"EP流程单号"
labelCol=
"2"
maxLength=
"64"
fieldCol=
"2"
/>
<x:inputC
name=
"usnam"
required=
"false"
label=
"付款申请创建日期"
labelCol=
"2"
fieldCol=
"2"
/>
<x:inputC
name=
"zepFtype"
required=
"false"
label=
"EP付款申请类别"
labelCol=
"2"
maxLength=
"64"
fieldCol=
"2"
wrapper=
"date"
/>
<x:inputC
name=
"zepFtypename"
required=
"false"
label=
"EP付款申请类别名称"
labelCol=
"2"
maxLength=
"64"
fieldCol=
"2"
wrapper=
"date"
/>
<x:inputC
name=
"bukrs"
required=
"false"
label=
"公司代码"
labelCol=
"2"
fieldCol=
"2"
/>
<x:inputC
name=
"butxt"
required=
"false"
label=
"公司代码名称"
labelCol=
"2"
fieldCol=
"2"
/>
<x:inputC
name=
"zepDepart"
required=
"false"
label=
"EP部门代码"
labelCol=
"2"
fieldCol=
"2"
/>
<x:inputC
name=
"zepDepartname"
required=
"false"
label=
"EP部门名称"
labelCol=
"2"
fieldCol=
"2"
/>
<x:inputC
name=
"zepAppli"
required=
"false"
label=
"EP流程申请人代码"
labelCol=
"2"
fieldCol=
"2"
/>
<x:inputC
name=
"zepAppliname"
required=
"false"
label=
"EP流程申请人"
labelCol=
"2"
fieldCol=
"2"
/>
<x:inputC
name=
"zepFcrdate"
required=
"false"
label=
"付款申请创建日期"
labelCol=
"2"
fieldCol=
"2"
/>
<x:inputC
name=
"zepNo"
required=
"false"
label=
"EP流程单号"
labelCol=
"2"
fieldCol=
"2"
/>
<x:inputC
name=
"zepTxt"
required=
"false"
label=
"付款申请内容"
labelCol=
"2"
fieldCol=
"2"
/>
<x:inputC
name=
"zepFtamount"
required=
"false"
label=
"申请总金额(本位币)"
labelCol=
"2"
fieldCol=
"2"
/>
<x:inputC
name=
"zepFttax"
required=
"false"
label=
"申请总税额(本位币)"
labelCol=
"2"
fieldCol=
"2"
/>
<x:inputC
name=
"zepFtamount1"
required=
"false"
label=
"申请总金额"
labelCol=
"2"
fieldCol=
"2"
/>
<x:inputC
name=
"zepFttax1"
required=
"false"
label=
"申请总税额"
labelCol=
"2"
fieldCol=
"2"
/>
<x:inputC
name=
"zepPtamount"
required=
"false"
label=
"审批总金额(本位币)"
labelCol=
"2"
fieldCol=
"2"
/>
<x:inputC
name=
"zepPttax"
required=
"false"
label=
" 审批总税额(本位币)"
labelCol=
"2"
fieldCol=
"2"
/>
<x:inputC
name=
"zepPtamount1"
required=
"false"
label=
"审批总金额"
labelCol=
"2"
fieldCol=
"2"
/>
<x:inputC
name=
"zepPttax1"
required=
"false"
label=
"审批总税额"
labelCol=
"2"
fieldCol=
"2"
/>
</div>
</div>
<div
class=
"blank_div clearfix"
></div>
<div
id=
"reimbursementApplierGrid"
style=
"margin: 2px;"
>
</div>
<div
class=
"blank_div clearfix"
></div>
<div
id=
"financialAuditGrid"
style=
"margin: 2px;"
>
</div>
<div
class=
"blank_div clearfix"
></div>
<div
id=
"capitalPostGrid"
style=
"margin: 2px;"
>
</div>
</div>
</form>
</body>
</html>
topsun-xt/src/main/webapp/biz/topsun/sap/costReimbursement/costReimbursementList.js
0 → 100644
View file @
77dd1fb4
var
gridManager
=
null
;
$
(
document
).
ready
(
function
()
{
initializateUI
();
loadGrid
();
})
function
initializateUI
()
{
UICtrl
.
layout
(
"#layout"
,
{
leftWidth
:
3
});
}
function
loadGrid
()
{
var
toolbarOptions
=
UICtrl
.
getDefaultToolbarOptions
({
addHandler
:
function
(){
addHandler
()
},
deleteHandler
:
deleteHandler
,
});
gridManager
=
UICtrl
.
grid
(
"#costReimbursementListGrid"
,
{
columns
:
[
{
display
:
"EP付款申请类别"
,
name
:
"zepFtype"
,
width
:
60
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"EP付款申请类别名称"
,
name
:
"zepFtypename"
,
width
:
120
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"公司代码"
,
name
:
"bukrs"
,
width
:
120
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"公司代码名称"
,
name
:
"butxt"
,
width
:
120
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"EP部门代码"
,
name
:
"zepDepart"
,
width
:
140
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"EP部门名称"
,
name
:
"zepDepartname"
,
width
:
140
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"EP流程申请人代码"
,
name
:
"zepAppli"
,
width
:
140
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"EP流程申请人"
,
name
:
"zepAppliname"
,
width
:
140
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"付款申请创建日期"
,
name
:
"zepFcrdate"
,
width
:
140
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"EP流程单号"
,
name
:
"zepNo"
,
width
:
140
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"付款申请内容"
,
name
:
"zepTxt"
,
width
:
140
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"填报日期"
,
name
:
"fillinDate"
,
width
:
140
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
],
dataAction
:
"server"
,
url
:
web_app
.
name
+
'/sapCostReimbursement/slicedSapCostReimbursementList.ajax'
,
pageSize
:
20
,
usePager
:
true
,
toolbar
:
toolbarOptions
,
width
:
"100%"
,
height
:
"100%"
,
heightDiff
:
-
8
,
checkbox
:
true
,
fixedCellHeight
:
true
,
selectRowButtonOnly
:
true
,
onDblClickRow
:
function
(
data
,
rowindex
,
rowobj
)
{
doView
(
data
.
id
);
}
});
UICtrl
.
setSearchAreaToggle
(
gridManager
);
}
function
query
(
obj
)
{
var
param
=
$
(
obj
).
formToJSON
();
UICtrl
.
gridSearch
(
gridManager
,
param
);
}
function
reloadGrid
()
{
gridManager
.
loadData
();
}
function
resetForm
(
obj
)
{
$
(
obj
).
formClean
();
}
//重写DataUtil的getUpdateRowId函数、它默认取行的id列
DataUtil
.
getUpdateRowId
=
function
(
gridManager
)
{
var
result
=
DataUtil
.
getUpdateRow
(
gridManager
);
if
(
result
)
{
return
result
.
proofingMakeId
;
}
return
result
;
}
//删除按钮
function
deleteHandler
()
{
DataUtil
.
del
({
action
:
'sapCostReimbursement/deleteStatsIndicators.ajax'
,
gridManager
:
gridManager
,
idFieldName
:
'id'
,
onSuccess
:
function
()
{
reloadGrid
();
}
});
}
function
addHandler
()
{
UICtrl
.
addTabItem
({
tabid
:
'costReimbursement'
,
text
:
"费用报销申请单"
,
url
:
web_app
.
name
+
'/sapCostReimbursement/forwardCostReimbursement.job'
});
}
function
doView
(
id
)
{
UICtrl
.
addTabItem
({
tabid
:
'showCostReimbursement'
+
id
,
text
:
"费用报销详情"
,
url
:
web_app
.
name
+
'/sapCostReimbursement/showSapCostReimbursement.do?bizId='
+
id
+
"&isDetailPage=true"
});
}
// function sendSapData(bizId){
// Public.ajax(web_app.name + '/sapStatsIndicators/againSendSapDate.ajax',{bizId:bizId},function (data){
// reloadGrid();
// })
// }
\ No newline at end of file
topsun-xt/src/main/webapp/biz/topsun/sap/costReimbursement/costReimbursementList.jsp
0 → 100644
View file @
77dd1fb4
<%@ page
contentType=
"text/html; charset=utf-8"
language=
"java"
%>
<%@ taglib
uri=
"/WEB-INF/taglib.tld"
prefix=
"x"
%>
<%@ taglib
uri=
"http://java.sun.com/jsp/jstl/core"
prefix=
"c"
%>
<html>
<head>
<x:base
include=
"layout,dialog,grid,tree,combox,commonTree"
/>
<x:script
src=
'/biz/topsun/sap/costReimbursement/costReimbursementList.js'
/>
</head>
<body>
<div
class=
"container-fluid"
>
<div
class=
"ui-hide"
>
<x:select
name=
"processType"
dictionary=
"processType"
/>
<x:select
name=
"yesorno"
dictionary=
"yesorno"
/>
</div>
<div
id=
"layout"
>
<div
position=
"center"
title=
"费用报销申请查询"
>
<x:title
title=
"common.button.search"
hideTable=
"queryMainForm"
isHide=
"true"
/>
<form
class=
"hg-form ui-hide"
method=
"post"
action=
""
id=
"queryMainForm"
>
<x:inputC
name=
"proofingApplyNo"
required=
"false"
label=
"申请单号"
labelCol=
"1"
/>
<x:searchButtons/>
</form>
<div
class=
"blank_div clearfix"
></div>
<div
id=
"costReimbursementListGrid"
style=
"margin: 2px;"
></div>
</div>
</div>
</div>
</body>
</html>
\ No newline at end of file
topsun-xt/src/main/webapp/biz/topsun/sap/nonProdApply/nonProdApplyNext.js
View file @
77dd1fb4
...
...
@@ -80,8 +80,14 @@ function loadGrid() {
display
:
"部门人员"
,
name
:
"userName"
,
width
:
200
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
,
editor
:
{
type
:
'tree'
,
data
:
{
name
:
'org'
,
filter
:
'psm'
,
minWidth
:
250
},
textField
:
'handlerName'
,
valueField
:
'handlerId'
required
:
true
,
data
:
{
name
:
'org'
,
filter
:
'psm'
,
minWidth
:
250
},
textField
:
'userName'
,
valueField
:
'userCode'
}
// editor: {
// required: true, type: "select",
...
...
@@ -105,29 +111,6 @@ function loadGrid() {
required
:
true
}
},
// { display: "审批人", name: "handlerName", width: 250, minWidth: 60, type: "string", align: "left",
// editor: { type: "dynamic", getEditor: function (row) {
// var dataSourceConfig = row['dataSourceConfig'] || {};
// if (typeof dataSourceConfig == "string"){
// dataSourceConfig = (new Function("return " + dataSourceConfig))();
// }
// return dataSourceConfig;
// }}
// },
// { display: "属性值", name: "propertyDisplay", width: 150, minWidth: 60, type: "string", align: "left",
// editor: {
// type: "dynamic", getEditor: function (row) {
// var dataSource = row['dataSource'] || "";
// if (dataSource) {
// if (typeof dataSource == "string"){
// dataSource = (new Function("return " + dataSource))();
// }
// return dataSource;
// }
// return {};
// }
// }
// }
],
dataAction
:
"server"
,
url
:
web_app
.
name
+
'/sapNonProdApplyNext/slicedDeptList.ajax'
,
...
...
@@ -144,95 +127,13 @@ function loadGrid() {
UICtrl
.
setSearchAreaToggle
(
gridManager
);
}
//
// function initAssistantGrid() {
// var toolbarOptions = UICtrl.getDefaultToolbarOptions({
// addHandler: function () {
// UICtrl.addGridRow(assistantGrid, {sequence: assistantGrid.getData().length + 1});
// },
// deleteHandler: function () {
// assistantGrid.deleteSelectedRow();
// }
// });
// var param = {}
// assistantGrid = UICtrl.grid('#businessPersonnelListGrid', {
// columns: [
// {
// display: "描述",
// name: "description",
// width: 150,
// minWidth: 60,
// type: "string",
// align: "left",
// frozen: true,
// editor: {type: 'text', required: true}
// },
// {
// display: "审批人类别",
// name: "handlerKindName",
// width: 100,
// minWidth: 60,
// type: "string",
// align: "left",
// frozen: true,
// editor: {
// type: 'select',
// data: {
// type: "bpm",
// name: "approvalHandlerKind",
// back: {code: "handlerKindCode", name: "handlerKindName", dataSourceConfig: "dataSourceConfig"}
// },
// required: true
// }
// },
// {
// display: "审批人",
// name: "handlerName",
// width: 150,
// minWidth: 60,
// type: "string",
// align: "left",
// frozen: true,
// editor: {
// type: 'tree',
// data: {name: 'org', filter: 'psm', minWidth: 250},
// textField: 'handlerName', valueField: 'handlerId'
// }
// },
// {
// display: "排序号", name: "sequence", width: 100, minWidth: 60, type: "string", align: "left",
// editor: {type: 'spinner', required: true}
// }
// ],
// dataAction: 'server',
// url: web_app.name + '/approvalRule/queryAssistantHandlers.ajax',
// parms: param,
// height: 200,
// sortName: 'sequence',
// sortOrder: 'asc',
// toolbar: toolbarOptions,
// enabledEdit: true,
// usePager: false,
// checkbox: true,
// fixedCellHeight: true,
// selectRowButtonOnly: true,
// autoAddRow: {kindId: "assistant", dataSourceConfig: "", /*, chiefId: $("#id").val()*/},
// onBeforeEdit: function (editParm) {
// var c = editParm.column;
// if (c.name == 'value') {//启用的数据value 不能编辑
// return editParm.record['status'] === 0;
// }
// return true;
// }
// });
// }
/**
* 表单提交
* @returns {boolean}
*/
function
saveForm
()
{
debugger
let
extendedData
=
getExtendedData
();
if
(
!
extendedData
)
return
false
;
var
_self
=
this
;
...
...
@@ -270,9 +171,13 @@ function distributeForm() {
function
getExtendedData
()
{
debugger
let
msg
=
"["
;
let
isUndefined
=
false
const
deptStaffResult
=
DataUtil
.
getGridData
({
let
deptStaffResult
=
DataUtil
.
getGridData
({
gridManager
:
gridManager
,
isAllData
:
true
,
onCheck
:
function
(
data
)
{
...
...
@@ -280,6 +185,7 @@ function getExtendedData() {
msg
+=
`
${
data
.
deptName
}
、`
;
isUndefined
=
true
;
}
return
true
;
}
});
...
...
@@ -288,7 +194,8 @@ function getExtendedData() {
return
false
}
let
extendedData
=
{};
return
extendedData
.
deptStaff
=
Public
.
encodeJSONURI
(
deptStaffResult
);
extendedData
.
deptStaff
=
Public
.
encodeJSONURI
(
deptStaffResult
);
return
extendedData
;
}
...
...
topsun-xt/src/main/webapp/biz/topsun/sap/nonProdApply/nonProdApplyNext.jsp
View file @
77dd1fb4
This diff is collapsed.
Click to expand it.
topsun-xt/src/main/webapp/biz/topsun/sap/statsIndicators/statsIndicatorsList.js
View file @
77dd1fb4
...
...
@@ -3,13 +3,13 @@ var gridManager = null;
$
(
document
).
ready
(
function
()
{
initializateUI
();
loadStatsIndicatorsListGrid
Grid
();
loadStatsIndicatorsListGrid
();
})
function
initializateUI
()
{
UICtrl
.
layout
(
"#layout"
,
{
leftWidth
:
3
});
}
function
loadStatsIndicatorsListGrid
Grid
()
{
function
loadStatsIndicatorsListGrid
()
{
var
toolbarOptions
=
UICtrl
.
getDefaultToolbarOptions
({
addHandler
:
function
(){
...
...
topsun/src/main/java/com/huigou/topsun/base/WorkflowApplicationImplOverride.java
View file @
77dd1fb4
...
...
@@ -2,8 +2,6 @@ package com.huigou.topsun.base;
import
com.huigou.context.Operator
;
import
com.huigou.topsun.base.bsnMessage.appliction.BsnMessageApplication
;
import
com.huigou.topsun.base.bsnMessage.domain.query.BsnMessageQueryRequest
;
import
com.huigou.topsun.sap.statsIndicators.domain.query.SapStatsIndicatorsQueryRequest
;
import
com.huigou.uasp.bmp.opm.application.OrgApplication
;
import
com.huigou.uasp.bpm.BatchAdvanceParameter
;
import
com.huigou.uasp.bpm.TaskStatus
;
...
...
topsun/src/main/java/com/huigou/topsun/base/bsnMessage/domain/ActiveStatus.java
0 → 100644
View file @
77dd1fb4
package
com
.
huigou
.
topsun
.
base
.
bsnMessage
.
domain
;
public
enum
ActiveStatus
{
UNFINISHED
(
0
),
// 未完成
FINISHED
(
1
),
// 完成
SAVED
(
2
),
// 保存未分发
REJECTED
(
3
);
// 驳回
private
int
value
;
private
ActiveStatus
(
int
value
)
{
this
.
value
=
value
;
}
public
int
getValue
()
{
return
value
;
}
}
topsun/src/main/java/com/huigou/topsun/base/bsnMessage/domain/BsnMessage.java
View file @
77dd1fb4
package
com
.
huigou
.
topsun
.
base
.
bsnMessage
.
domain
;
import
lombok.Data
;
import
org.hibernate.annotations.GenericGenerator
;
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
;
...
...
@@ -21,6 +19,13 @@ public class BsnMessage implements Serializable {
* id
*/
@Id
@GeneratedValue
(
generator
=
"system-uuid"
)
@GenericGenerator
(
name
=
"system-uuid"
,
strategy
=
"guid"
)
private
String
id
;
/**
...
...
@@ -58,18 +63,12 @@ public class BsnMessage implements Serializable {
private
Date
finishedDate
;
/**
* 驳回信息
*/
@Column
(
name
=
"reject_msg"
)
private
String
rejectMsg
;
/**
*任务执行地址
*/
@Column
(
name
=
"executor_url"
)
private
Date
executorUrl
;
private
String
executorUrl
;
/**
* 完成状态(默认为未完成:0,完成为:1,保存未分发:2)
...
...
topsun/src/main/java/com/huigou/topsun/sap/costReimbursement/application/SapCostReimbursementApplication.java
0 → 100644
View file @
77dd1fb4
package
com
.
huigou
.
topsun
.
sap
.
costReimbursement
.
application
;
import
com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement
;
import
com.huigou.topsun.sap.costReimbursement.domain.query.SapCostReimbursementQueryRequest
;
import
com.huigou.topsun.sap.statsIndicators.domain.SapStatsIndicators
;
import
com.huigou.topsun.sap.statsIndicators.domain.query.SapStatsIndicatorsQueryRequest
;
import
java.util.List
;
import
java.util.Map
;
public
interface
SapCostReimbursementApplication
{
String
PROCESS_DEFINITION_KEY
=
"sapCostReimbursementProc"
;
String
QUERY_XML_FILE_PATH
=
"config/topsun/sap/costReimbursement/costReimbursement.xml"
;
SapCostReimbursement
loadSapCostReimbursementById
(
String
id
);
Map
<
String
,
Object
>
slicedSapCostReimbursementQuery
(
SapCostReimbursementQueryRequest
query
);
void
deleteSapCostReimbursementById
(
String
id
);
void
deleteSapCostReimbursementByIds
(
List
<
String
>
ids
);
// void sendSapDate(String bizId);
}
\ No newline at end of file
topsun/src/main/java/com/huigou/topsun/sap/costReimbursement/application/SapCostReimbursementDetailApplication.java
0 → 100644
View file @
77dd1fb4
package
com
.
huigou
.
topsun
.
sap
.
costReimbursement
.
application
;
import
com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursementDetail
;
import
java.util.List
;
public
interface
SapCostReimbursementDetailApplication
{
// String QUERY_XML_FILE_PATH="config/topsun/sap/statsIndicators/statsIndicators.xml";
// Map<String, Object> slicedStatsIndicatorsDetailQuery(SapStatsIndicatorsDetailQueryRequest query);
List
<
SapCostReimbursementDetail
>
getAllByCRId
(
String
CRId
);
}
topsun/src/main/java/com/huigou/topsun/sap/costReimbursement/application/impl/SapCostReimbursementApplicationImpl.java
0 → 100644
View file @
77dd1fb4
package
com
.
huigou
.
topsun
.
sap
.
costReimbursement
.
application
.
impl
;
import
com.fasterxml.jackson.core.type.TypeReference
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
com.huigou.data.query.model.QueryDescriptor
;
import
com.huigou.topsun.sap.common.DefaultHttpClient
;
import
com.huigou.topsun.sap.common.serializer.MessageCodec
;
import
com.huigou.topsun.sap.costReimbursement.application.SapCostReimbursementApplication
;
import
com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement
;
import
com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursementDetail
;
import
com.huigou.topsun.sap.costReimbursement.domain.query.SapCostReimbursementQueryRequest
;
import
com.huigou.topsun.sap.costReimbursement.repostiory.SapCostReimbursementDetailRepository
;
import
com.huigou.topsun.sap.costReimbursement.repostiory.SapCostReimbursementRepository
;
import
com.huigou.topsun.sap.statsIndicators.domain.SapStatsIndicators
;
import
com.huigou.topsun.sap.statsIndicators.domain.SapStatsIndicatorsDetail
;
import
com.huigou.topsun.sap.statsIndicators.domain.SapStatsIndicatorsResult
;
import
com.huigou.topsun.sap.statsIndicators.domain.query.SapStatsIndicatorsQueryRequest
;
import
com.huigou.topsun.util.MyBaseUtil
;
import
com.huigou.uasp.bmp.common.BizBillStatus
;
import
com.huigou.uasp.bpm.FlowBroker
;
import
com.huigou.util.ClassHelper
;
import
com.huigou.util.SDO
;
import
lombok.SneakyThrows
;
import
org.activiti.engine.delegate.DelegateExecution
;
import
org.activiti.engine.delegate.DelegateTask
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Propagation
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.util.List
;
import
java.util.Map
;
@Service
(
"sapCostReimbursementApplication"
)
public
class
SapCostReimbursementApplicationImpl
extends
FlowBroker
implements
SapCostReimbursementApplication
{
@Autowired
private
SapCostReimbursementDetailRepository
costReimbursementDetailRepository
;
@Autowired
private
SapCostReimbursementRepository
costReimbursementRepository
;
// @Autowired
// DefaultHttpClient defaultHttpClient;
// @Autowired
// MessageCodec messageCodec;
@SneakyThrows
@Transactional
(
propagation
=
Propagation
.
REQUIRES_NEW
)
@Override
protected
String
saveBizAndApprovalData
()
{
super
.
saveBizAndApprovalData
();
SDO
sdo
=
this
.
getBizAndApprovalData
();
SapCostReimbursement
sapCostReimbursement
=
getBizEntity
(
SapCostReimbursement
.
class
);
if
(
sapCostReimbursement
.
isNew
())
{
sapCostReimbursement
.
setStatusId
(
BizBillStatus
.
APPLYING
.
getId
());
}
else
{
sapCostReimbursement
=
(
SapCostReimbursement
)
commonDomainService
.
loadAndFillinProperties
(
sapCostReimbursement
);
}
sapCostReimbursement
=
costReimbursementRepository
.
save
(
sapCostReimbursement
);
String
CRDetailJSON
=
sdo
.
getString
(
"CRDetail"
);
ObjectMapper
objectMapper
=
new
ObjectMapper
();
List
<
SapCostReimbursementDetail
>
CRDetailAll
=
costReimbursementDetailRepository
.
findAllByReimbursementBaseInfoId
(
sapCostReimbursement
.
getId
());
if
(!
CRDetailAll
.
isEmpty
())
{
costReimbursementDetailRepository
.
delete
(
CRDetailAll
);
}
List
<
SapCostReimbursementDetail
>
CRDetailList
=
objectMapper
.
readValue
(
CRDetailJSON
,
new
TypeReference
<
List
<
SapCostReimbursementDetail
>>()
{});
for
(
SapCostReimbursementDetail
item
:
CRDetailList
)
{
item
.
setReimbursementBaseInfoId
(
sapCostReimbursement
.
getId
());
}
costReimbursementDetailRepository
.
save
(
CRDetailList
);
return
sapCostReimbursement
.
getId
();
}
@Override
protected
Map
<
String
,
Object
>
getProcessBizParams
(
String
bizId
)
{
// 返回业务数据给流程实例,
return
ClassHelper
.
toMap
(
costReimbursementRepository
.
getOne
(
bizId
));
}
/**
* 流程实例结束
*
* @param delegateExecution
*/
@Override
protected
void
onEnd
(
DelegateExecution
delegateExecution
)
{
super
.
onEnd
(
delegateExecution
);
String
bizId
=
delegateExecution
.
getProcessBusinessKey
();
BizBillStatus
status
=
approvePassed
()
?
BizBillStatus
.
COMPLETED
:
BizBillStatus
.
ABORTED
;
SapCostReimbursement
sapCostReimbursement
=
costReimbursementRepository
.
findOne
(
bizId
);
sapCostReimbursement
.
setStatusId
(
status
.
getId
());
costReimbursementRepository
.
save
(
sapCostReimbursement
);
//审核完成、远程调用sap接口
// sendSapDate(bizId);
}
@Override
protected
void
onAbortProcessInstance
(
DelegateExecution
delegateExecution
)
{
super
.
onAbortProcessInstance
(
delegateExecution
);
String
bizId
=
delegateExecution
.
getProcessBusinessKey
();
SapCostReimbursement
sapCostReimbursement
=
costReimbursementRepository
.
findOne
(
bizId
);
sapCostReimbursement
.
setStatusId
(
BizBillStatus
.
ABORTED
.
getId
());
costReimbursementRepository
.
save
(
sapCostReimbursement
);
}
/**
* @param delegateTask
* @param destActivityId 回退到的目标节点id
*/
@Override
protected
void
onBack
(
DelegateTask
delegateTask
,
String
destActivityId
)
{
super
.
onBack
(
delegateTask
,
destActivityId
);
if
(
"Apply"
.
equalsIgnoreCase
(
destActivityId
))
{
String
bizId
=
delegateTask
.
getExecution
().
getProcessBusinessKey
();
SapCostReimbursement
sapCostReimbursement
=
costReimbursementRepository
.
findOne
(
bizId
);
sapCostReimbursement
.
setStatusId
(
BizBillStatus
.
APPLYING
.
getId
());
costReimbursementRepository
.
save
(
sapCostReimbursement
);
}
}
@Override
public
SapCostReimbursement
loadSapCostReimbursementById
(
String
id
)
{
return
costReimbursementRepository
.
findOne
(
id
);
}
@Override
public
Map
<
String
,
Object
>
slicedSapCostReimbursementQuery
(
SapCostReimbursementQueryRequest
query
)
{
QueryDescriptor
queryDescriptor
=
this
.
sqlExecutorDao
.
getQuery
(
QUERY_XML_FILE_PATH
,
"slicedSapCostReimbursementQuery"
);
return
this
.
sqlExecutorDao
.
executeSlicedQuery
(
queryDescriptor
,
query
);
}
@Override
@Transactional
(
propagation
=
Propagation
.
REQUIRES_NEW
)
public
void
deleteSapCostReimbursementById
(
String
id
)
{
SapCostReimbursement
costReimbursement
=
costReimbursementRepository
.
findOne
(
id
);
List
<
SapCostReimbursementDetail
>
all
=
costReimbursementDetailRepository
.
findAllByReimbursementBaseInfoId
(
id
);
costReimbursementDetailRepository
.
delete
(
all
);
costReimbursementRepository
.
delete
(
costReimbursement
);
}
@Override
@Transactional
public
void
deleteSapCostReimbursementByIds
(
List
<
String
>
ids
)
{
ids
.
forEach
(
this
::
deleteSapCostReimbursementById
);
}
// /**
// * 远程调用sap接口,传递数据
// *
// * @param bizId
// */
// public void sendSapDate(String bizId) {
// SapStatsIndicators sapStatsIndicators = sapStatsIndicatorsRepository.findOne(bizId);
// if (sapStatsIndicators.getStatusId() == BizBillStatus.APPLYING.getId()) {
// throw new RuntimeException("本数据未经审批完成!");
// }
// List<SapStatsIndicatorsDetail> all = sapStatsIndicatorsDetailRepository.findAllByStatsIndicatorsId(bizId);
// List<Map<String, Object>> list = new ArrayList<>();
// ObjectMapper objectMapper = new ObjectMapper();
// Map<String, Object> map = MyBaseUtil.convertToMap(sapStatsIndicators);
// //封装参数
// for (SapStatsIndicatorsDetail sapStatsIndicatorsDetail : all) {
// Map<String, Object> detailMap = objectMapper.convertValue(sapStatsIndicatorsDetail, Map.class);
// map.put("ITEM", detailMap);
// list.add(map);
// }
// String url = "cud_kb31n/kb31n";
// SapStatsIndicatorsResult sapStatsIndicatorsResult = null;
// try {
// String result = defaultHttpClient.execute(list, url);
// List<SapStatsIndicatorsResult> resultList = objectMapper.readValue(result, new TypeReference<List<SapStatsIndicatorsResult>>() {
// });
//
// sapStatsIndicatorsResult = resultList.get(0);
//
// if (!"s".equals(sapStatsIndicatorsResult.getType())) {
// throw new RuntimeException("数据传输失败,请稍后手动重试!");
// }
// } catch (IOException e) {
// if (sapStatsIndicatorsResult == null) {
// sapStatsIndicatorsResult = new SapStatsIndicatorsResult();
// }
// sapStatsIndicatorsResult.setType("A");
// throw new RuntimeException("sap服务器无响应请稍后手动重试!");
// } finally {
// SapStatsIndicatorsResult statsIndicatorsId = sapStatsIndicatorsResultRepository.findByStatsIndicatorsId(bizId);
// if(statsIndicatorsId!=null)sapStatsIndicatorsResultRepository.delete(statsIndicatorsId);
// sapStatsIndicatorsResult.setStatsIndicatorsId(bizId);
// sapStatsIndicatorsResultRepository.save(sapStatsIndicatorsResult);
// }
// }
}
\ No newline at end of file
topsun/src/main/java/com/huigou/topsun/sap/costReimbursement/application/impl/SapCostReimbursementDetailApplicationImpl.java
0 → 100644
View file @
77dd1fb4
package
com
.
huigou
.
topsun
.
sap
.
costReimbursement
.
application
.
impl
;
import
com.huigou.data.query.model.QueryDescriptor
;
import
com.huigou.topsun.sap.costReimbursement.application.SapCostReimbursementDetailApplication
;
import
com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursementDetail
;
import
com.huigou.topsun.sap.costReimbursement.repostiory.SapCostReimbursementDetailRepository
;
import
com.huigou.topsun.sap.statsIndicators.application.SapStatsIndicatorsDetailApplication
;
import
com.huigou.topsun.sap.statsIndicators.domain.query.SapStatsIndicatorsDetailQueryRequest
;
import
com.huigou.uasp.bmp.common.application.BaseApplication
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
import
java.util.Map
;
@Service
public
class
SapCostReimbursementDetailApplicationImpl
extends
BaseApplication
implements
SapCostReimbursementDetailApplication
{
// @Override
// public Map<String, Object> slicedStatsIndicatorsDetailQuery(SapStatsIndicatorsDetailQueryRequest query) {
// QueryDescriptor queryDescriptor = this.sqlExecutorDao.getQuery(QUERY_XML_FILE_PATH, "slicedStatsIndicatorsDetailQuery");
// return this.sqlExecutorDao.executeSlicedQuery(queryDescriptor,query);
// }
@Autowired
SapCostReimbursementDetailRepository
costReimbursementDetailRepository
;
@Override
public
List
<
SapCostReimbursementDetail
>
getAllByCRId
(
String
CRId
)
{
return
costReimbursementDetailRepository
.
findAllByReimbursementBaseInfoId
(
CRId
);
}
}
topsun/src/main/java/com/huigou/topsun/sap/costReimbursement/controller/SapCostReimbursementController.java
0 → 100644
View file @
77dd1fb4
package
com
.
huigou
.
topsun
.
sap
.
costReimbursement
.
controller
;
import
com.huigou.context.Operator
;
import
com.huigou.context.OrgUnit
;
import
com.huigou.topsun.sap.costReimbursement.application.SapCostReimbursementApplication
;
import
com.huigou.topsun.sap.costReimbursement.application.SapCostReimbursementDetailApplication
;
import
com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement
;
import
com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursementDetail
;
import
com.huigou.topsun.sap.costReimbursement.domain.query.SapCostReimbursementQueryRequest
;
import
com.huigou.topsun.sap.statsIndicators.application.SapStatsIndicatorsApplication
;
import
com.huigou.topsun.sap.statsIndicators.application.SapStatsIndicatorsDetailApplication
;
import
com.huigou.topsun.sap.statsIndicators.domain.SapStatsIndicators
;
import
com.huigou.topsun.sap.statsIndicators.domain.query.SapStatsIndicatorsDetailQueryRequest
;
import
com.huigou.topsun.sap.statsIndicators.domain.query.SapStatsIndicatorsQueryRequest
;
import
com.huigou.uasp.annotation.ControllerMapping
;
import
com.huigou.uasp.bmp.common.BizBillStatus
;
import
com.huigou.uasp.client.CommonController
;
import
com.huigou.util.SDO
;
import
com.huigou.util.StringUtil
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Controller
;
import
java.util.List
;
import
java.util.Map
;
@Controller
@ControllerMapping
(
"/sapCostReimbursement"
)
public
class
SapCostReimbursementController
extends
CommonController
{
protected
String
getPagePath
()
{
return
"/biz/topsun/sap/costReimbursement/"
;
}
@Autowired
SapCostReimbursementApplication
costReimbursementApplication
;
@Autowired
SapCostReimbursementDetailApplication
costReimbursementDetailApplication
;
public
String
forwardCostReimbursementList
(){
return
forward
(
"costReimbursementList"
);
}
public
String
forwardCostReimbursement
(){
//定义流程
this
.
putAttribute
(
"processDefinitionKey"
,
SapCostReimbursementApplication
.
PROCESS_DEFINITION_KEY
);
this
.
putAttribute
(
"procUnitId"
,
"Apply"
);
//定义流程环节的id
SapCostReimbursement
sapCostReimbursement
=
new
SapCostReimbursement
();
sapCostReimbursement
.
setStatusId
(
BizBillStatus
.
APPLYING
.
getId
());
Operator
operator
=
getOperator
();
//获取当前操作员的详情信息
sapCostReimbursement
.
setDefaultValues
(
new
OrgUnit
(
operator
.
getFullId
(),
operator
.
getFullName
()));
return
forward
(
"costReimbursement"
,
sapCostReimbursement
);
}
public
String
slicedSapCostReimbursementList
(){
SDO
sdo
=
this
.
getSDO
();
SapCostReimbursementQueryRequest
queryRequest
=
sdo
.
toQueryRequest
(
SapCostReimbursementQueryRequest
.
class
);
Map
<
String
,
Object
>
map
=
costReimbursementApplication
.
slicedSapCostReimbursementQuery
(
queryRequest
);
return
toResult
(
map
);
}
public
String
slicedSapCostReimbursementDetailList
(){
SDO
sdo
=
this
.
getSDO
();
List
<
SapCostReimbursementDetail
>
CRDetailAll
=
costReimbursementDetailApplication
.
getAllByCRId
(
sdo
.
getId
());
return
toResult
(
CRDetailAll
);
}
/**
* 工作流审核跳转页面
* @return
*/
public
String
showSapCostReimbursement
()
{
SDO
sdo
=
this
.
getSDO
();
String
id
=
sdo
.
getBizId
();
String
isDetailPage
=
sdo
.
getString
(
"isDetailPage"
);
if
(
"true"
.
equals
(
isDetailPage
))
this
.
putAttribute
(
"isReadOnly"
,
"true"
);
SapCostReimbursement
costReimbursement
=
costReimbursementApplication
.
loadSapCostReimbursementById
(
id
);
return
forward
(
"costReimbursement"
,
costReimbursement
);
}
public
String
deleteStatsIndicators
(){
SDO
sdo
=
this
.
getSDO
();
List
<
String
>
ids
=
sdo
.
getIds
();
costReimbursementApplication
.
deleteSapCostReimbursementByIds
(
ids
);
return
success
();
}
//
// /**
// * 手动发送数据到sap
// * @return
// */
// public String againSendSapDate(){
// SDO sdo = this.getSDO();
// String id = sdo.getBizId();
// sapStatsIndicatorsApplication.sendSapDate(id);
// return success();
// }
}
\ No newline at end of file
topsun/src/main/java/com/huigou/topsun/sap/costReimbursement/domain/SapCostReimbursement.java
0 → 100644
View file @
77dd1fb4
package
com
.
huigou
.
topsun
.
sap
.
costReimbursement
.
domain
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
javax.persistence.*
;
import
com.huigou.data.domain.model.FlowBillAbstractEntity
;
import
lombok.Data
;
/**
*
* @TableName sap_cost_reimbursement_base_info
*/
@Table
(
name
=
"sap_cost_reimbursement_base_info"
)
@Entity
@Data
public
class
SapCostReimbursement
extends
FlowBillAbstractEntity
{
/**
* EP付款申请类别
*/
@Column
(
name
=
"ZEP_FTYPE"
)
private
String
zepFtype
;
/**
* EP付款申请类别名称
*/
@Column
(
name
=
"ZEP_FTYPENAME"
)
private
String
zepFtypename
;
/**
* 公司代码
*/
@Column
(
name
=
"BUKRS"
)
private
String
bukrs
;
/**
* 公司代码名称
*/
@Column
(
name
=
"BUTXT"
)
private
String
butxt
;
/**
* EP部门代码
*/
@Column
(
name
=
"ZEP_DEPART"
)
private
String
zepDepart
;
/**
* EP部门名称
*/
@Column
(
name
=
"ZEP_DEPARTNAME"
)
private
String
zepDepartname
;
/**
* EP流程申请人代码
*/
@Column
(
name
=
"ZEP_APPLI"
)
private
String
zepAppli
;
/**
* EP流程申请人
*/
@Column
(
name
=
"ZEP_APPLINAME"
)
private
String
zepAppliname
;
/**
* 付款申请创建日期
*/
@Column
(
name
=
"ZEP_FCRDATE"
)
private
Date
zepFcrdate
;
/**
* EP流程单号
*/
@Column
(
name
=
"ZEP_NO"
)
private
String
zepNo
;
/**
* 付款申请内容
*/
@Column
(
name
=
"ZEP_TXT"
)
private
String
zepTxt
;
/**
* 申请总金额(本位币)
*/
@Column
(
name
=
"ZEP_FTAMOUNT"
)
private
BigDecimal
zepFtamount
;
/**
* 申请总税额(本位币)
*/
@Column
(
name
=
"ZEP_FTTAX"
)
private
BigDecimal
zepFttax
;
/**
* 申请总金额
*/
@Column
(
name
=
"ZEP_FTAMOUNT1"
)
private
BigDecimal
zepFtamount1
;
/**
* 申请总税额
*/
@Column
(
name
=
"ZEP_FTTAX1"
)
private
BigDecimal
zepFttax1
;
/**
* 审批总金额(本位币)
*/
@Column
(
name
=
"ZEP_PTAMOUNT"
)
private
BigDecimal
zepPtamount
;
/**
* 审批总税额(本位币)
*/
@Column
(
name
=
"ZEP_PTTAX"
)
private
BigDecimal
zepPttax
;
/**
* 审批总金额
*/
@Column
(
name
=
"ZEP_PTAMOUNT1"
)
private
BigDecimal
zepPtamount1
;
/**
* 审批总税额
*/
@Column
(
name
=
"ZEP_PTTAX1"
)
private
BigDecimal
zepPttax1
;
@Override
protected
String
getCodeRuleId
()
{
return
"sapCostReimbursement"
;
}
}
\ No newline at end of file
topsun/src/main/java/com/huigou/topsun/sap/costReimbursement/domain/SapCostReimbursementDetail.java
0 → 100644
View file @
77dd1fb4
package
com
.
huigou
.
topsun
.
sap
.
costReimbursement
.
domain
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
javax.persistence.*
;
import
com.fasterxml.jackson.annotation.JsonIgnoreProperties
;
import
lombok.Data
;
import
org.hibernate.annotations.GenericGenerator
;
/**
*
* @TableName sap_cost_reimbursement_detail
*/
@Table
(
name
=
"sap_cost_reimbursement_detail"
)
@Entity
@Data
@JsonIgnoreProperties
(
ignoreUnknown
=
true
)
public
class
SapCostReimbursementDetail
implements
Serializable
{
/**
*
*/
@Id
@GeneratedValue
(
generator
=
"system-uuid"
)
@GenericGenerator
(
name
=
"system-uuid"
,
strategy
=
"guid"
)
@Column
(
name
=
"reimbursement_detail_id"
)
private
String
reimbursementDetailId
;
/**
*
*/
@Column
(
name
=
"reimbursement_base_info_id"
)
private
String
reimbursementBaseInfoId
;
/**
* BP标识
*/
@Column
(
name
=
"ZEP_BPTYPE"
)
private
String
zepBptype
;
/**
* BP标识描述
*/
@Column
(
name
=
"ZEP_BPTYPENAME"
)
private
String
zepBptypename
;
/**
* BP
*/
@Column
(
name
=
"PARTNER"
)
private
String
partner
;
/**
* BP银行账号
*/
@Column
(
name
=
"BANKN"
)
private
String
bankn
;
/**
* BP账号名称
*/
@Column
(
name
=
"KOINH"
)
private
String
koinh
;
/**
* BP联行号
*/
@Column
(
name
=
"BANKL"
)
private
String
bankl
;
/**
* SWIFT/BIC
*/
@Column
(
name
=
"SWIFT"
)
private
String
swift
;
/**
* BP联行号名称
*/
@Column
(
name
=
"BANKA"
)
private
String
banka
;
/**
* EP流程子序号
*/
@Column
(
name
=
"ZEP_ITEMNO"
)
private
String
zepItemno
;
/**
* 计划内外付款标识
*/
@Column
(
name
=
"ZEP_PLAN"
)
private
String
zepPlan
;
/**
* 计划内外标识名称
*/
@Column
(
name
=
"ZEP_PLANNAME"
)
private
String
zepPlanname
;
/**
* 费用类型代码
*/
@Column
(
name
=
"ZEP_EXTYPE"
)
private
String
zepExtype
;
/**
* 费用类型名称
*/
@Column
(
name
=
"ZEP_EXTYPENAME"
)
private
String
zepExtypename
;
/**
* 费用会计科目
*/
@Column
(
name
=
"HKONT"
)
private
String
hkont
;
/**
* 总账科目描述
*/
@Column
(
name
=
"TXT50"
)
private
String
txt50
;
/**
* 计划付款日期
*/
@Column
(
name
=
"ZEP_FPLDATE"
)
private
Date
zepFpldate
;
/**
* 成本中心
*/
@Column
(
name
=
"KOSTL"
)
private
String
kostl
;
/**
* 成本中心名称
*/
@Column
(
name
=
"KTEXT1"
)
private
String
ktext1
;
/**
* 内部订单
*/
@Column
(
name
=
"AUFNR"
)
private
String
aufnr
;
/**
* 内部订单描述
*/
@Column
(
name
=
"KTEXT"
)
private
String
ktext
;
/**
* 币别
*/
@Column
(
name
=
"WAERS"
)
private
String
waers
;
/**
* 汇率
*/
@Column
(
name
=
"KURSF"
)
private
BigDecimal
kursf
;
/**
* 不含税金额(本位币)
*/
@Column
(
name
=
"NETWR1"
)
private
BigDecimal
netwr1
;
/**
* 税额(本位币)
*/
@Column
(
name
=
"KWETR1"
)
private
BigDecimal
kwetr1
;
/**
* 含税金额(本位币)
*/
@Column
(
name
=
"KZWI11"
)
private
BigDecimal
kzwi11
;
/**
* 税码
*/
@Column
(
name
=
"MWSKZ"
)
private
String
mwskz
;
/**
* 不含税金额
*/
@Column
(
name
=
"NETWR"
)
private
BigDecimal
netwr
;
/**
* 税额
*/
@Column
(
name
=
"KWETR"
)
private
BigDecimal
kwetr
;
/**
* 含税金额
*/
@Column
(
name
=
"KZWI1"
)
private
BigDecimal
kzwi1
;
/**
* 不含税金额(审批-本位币)
*/
@Column
(
name
=
"ZEP_PDAMOUNT"
)
private
BigDecimal
zepPdamount
;
/**
* 税额(审批-本位币)
*/
@Column
(
name
=
"ZEP_PDTAX"
)
private
BigDecimal
zepPdtax
;
/**
* 含税金额(审批-本位币)
*/
@Column
(
name
=
"ZEP_PTDAMOUNT"
)
private
BigDecimal
zepPtdamount
;
/**
* 不含税金额(审批)
*/
@Column
(
name
=
"ZEP_PDAMOUNT1"
)
private
BigDecimal
zepPdamount1
;
/**
* 税额(审批)
*/
@Column
(
name
=
"ZEP_PDTAX1"
)
private
BigDecimal
zepPdtax1
;
/**
* 含税金额(审批)
*/
@Column
(
name
=
"ZEP_PTDAMOUNT1"
)
private
BigDecimal
zepPtdamount1
;
/**
* 付款方式代码
*/
@Column
(
name
=
"ZLSCH"
)
private
String
zlsch
;
/**
* 付款方式名称
*/
@Column
(
name
=
"ZLSCH_TEXT1"
)
private
String
zlschText1
;
/**
* 是否付款
*/
@Column
(
name
=
"ZEP_PAY"
)
private
String
zepPay
;
/**
* 直联付款标识
*/
@Column
(
name
=
"ZEP_BANK"
)
private
String
zepBank
;
/**
* 记账凭证编号
*/
@Column
(
name
=
"BELNR"
)
private
String
belnr
;
/**
* 记账凭证财年
*/
@Column
(
name
=
"GJAHR"
)
private
String
gjahr
;
/**
* 记账过账日期
*/
@Column
(
name
=
"BUDAT"
)
private
Date
budat
;
/**
* 记账凭证日期
*/
@Column
(
name
=
"BLDAT"
)
private
Date
bldat
;
/**
* 付款凭证编号
*/
@Column
(
name
=
"BELNR1"
)
private
String
belnr1
;
/**
* 付款凭证财年
*/
@Column
(
name
=
"GJAHR1"
)
private
String
gjahr1
;
/**
* 付款过账日期
*/
@Column
(
name
=
"BUDAT1"
)
private
Date
budat1
;
/**
* 付款凭证日期
*/
@Column
(
name
=
"BLDAT1"
)
private
Date
bldat1
;
/**
* 付款状态
*/
@Column
(
name
=
"ZPAY_STAUS"
)
private
String
zpayStaus
;
/**
* 原因代码
*/
@Column
(
name
=
"RSTGR"
)
private
String
rstgr
;
/**
* 付款附言
*/
@Column
(
name
=
"ZEP_TXT1"
)
private
String
zepTxt1
;
/**
* 付款银行账号
*/
@Column
(
name
=
"BANKN1"
)
private
String
bankn1
;
/**
* 付款银行账号名称
*/
@Column
(
name
=
"ZT012K_TEXT1"
)
private
String
zt012kText1
;
/**
* 返回状态
*/
@Column
(
name
=
"MSGTY"
)
private
String
msgty
;
/**
* 返回消息
*/
@Column
(
name
=
"MSGTX"
)
private
String
msgtx
;
private
static
final
long
serialVersionUID
=
1L
;
}
\ No newline at end of file
topsun/src/main/java/com/huigou/topsun/sap/costReimbursement/domain/query/SapCostReimbursementQueryRequest.java
0 → 100644
View file @
77dd1fb4
package
com
.
huigou
.
topsun
.
sap
.
costReimbursement
.
domain
.
query
;
import
com.huigou.data.domain.query.QueryAbstractRequest
;
import
lombok.Data
;
import
java.math.BigDecimal
;
import
java.util.Date
;
/**
*
* @TableName sap_cost_reimbursement_base_info
*/
@Data
public
class
SapCostReimbursementQueryRequest
extends
QueryAbstractRequest
{
/**
* EP付款申请类别
*/
private
String
zepFtype
;
/**
* EP付款申请类别名称
*/
private
String
zepFtypename
;
/**
* 公司代码
*/
private
String
bukrs
;
/**
* 公司代码名称
*/
private
String
butxt
;
/**
* EP部门代码
*/
private
String
zepDepart
;
/**
* EP部门名称
*/
private
String
zepDepartname
;
/**
* EP流程申请人代码
*/
private
String
zepAppli
;
/**
* EP流程申请人
*/
private
String
zepAppliname
;
/**
* 付款申请创建日期
*/
private
Date
zepFcrdate
;
/**
* EP流程单号
*/
private
String
zepNo
;
/**
* 付款申请内容
*/
private
String
zepTxt
;
/**
* 申请总金额(本位币)
*/
private
BigDecimal
zepFtamount
;
/**
* 申请总税额(本位币)
*/
private
BigDecimal
zepFttax
;
/**
* 申请总金额
*/
private
BigDecimal
zepFtamount1
;
/**
* 申请总税额
*/
private
BigDecimal
zepFttax1
;
/**
* 审批总金额(本位币)
*/
private
BigDecimal
zepPtamount
;
/**
* 审批总税额(本位币)
*/
private
BigDecimal
zepPttax
;
/**
* 审批总金额
*/
private
BigDecimal
zepPtamount1
;
/**
* 审批总税额
*/
private
BigDecimal
zepPttax1
;
/**
* 填报日期
*/
private
Date
fillinDate
;
}
\ No newline at end of file
topsun/src/main/java/com/huigou/topsun/sap/costReimbursement/repostiory/SapCostReimbursementDetailRepository.java
0 → 100644
View file @
77dd1fb4
package
com
.
huigou
.
topsun
.
sap
.
costReimbursement
.
repostiory
;
import
com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursementDetail
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
java.util.List
;
public
interface
SapCostReimbursementDetailRepository
extends
JpaRepository
<
SapCostReimbursementDetail
,
String
>
{
List
<
SapCostReimbursementDetail
>
findAllByReimbursementBaseInfoId
(
String
baseInfoId
);
}
topsun/src/main/java/com/huigou/topsun/sap/costReimbursement/repostiory/SapCostReimbursementRepository.java
0 → 100644
View file @
77dd1fb4
package
com
.
huigou
.
topsun
.
sap
.
costReimbursement
.
repostiory
;
import
com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement
;
import
org.springframework.data.jpa.repository.JpaRepository
;
public
interface
SapCostReimbursementRepository
extends
JpaRepository
<
SapCostReimbursement
,
String
>
{
}
topsun/src/main/java/com/huigou/topsun/sap/nonProdApply/application/NonProdApplyDeptApplication.java
View file @
77dd1fb4
package
com
.
huigou
.
topsun
.
sap
.
nonProdApply
.
application
;
import
com.fasterxml.jackson.core.JsonProcessingException
;
import
com.huigou.topsun.sap.nonProdApply.domain.NonProdApplyBaseInfo
;
import
com.huigou.topsun.sap.nonProdApply.domain.SapNonProdApplyDept
;
import
com.huigou.topsun.sap.nonProdApply.domain.query.NonProdApplyBaseInfoQueryRequest
;
...
...
topsun/src/main/java/com/huigou/topsun/sap/nonProdApply/application/impl/NonProdApplyDeptApplicationImpl.java
View file @
77dd1fb4
package
com
.
huigou
.
topsun
.
sap
.
nonProdApply
.
application
.
impl
;
import
com.fasterxml.jackson.core.JsonProcessingException
;
import
com.fasterxml.jackson.core.type.TypeReference
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
com.huigou.context.Operator
;
import
com.huigou.topsun.base.bsnMessage.domain.ActiveStatus
;
import
com.huigou.topsun.base.bsnMessage.domain.BsnMessage
;
import
com.huigou.topsun.base.bsnMessage.repository.BsnMessageRepository
;
import
com.huigou.topsun.proofing.domain.proofingApply.model.ProofingApplyProcess
;
...
...
@@ -16,10 +19,7 @@ import com.huigou.util.SDO;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.Arrays
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.*
;
@Service
public
class
NonProdApplyDeptApplicationImpl
extends
BaseApplication
implements
NonProdApplyDeptApplication
{
...
...
@@ -30,24 +30,49 @@ public class NonProdApplyDeptApplicationImpl extends BaseApplication implements
BsnMessageRepository
bsnMessageRepository
;
@Override
public
Map
<
String
,
Object
>
saveSapNonProdApplyDept
(
SDO
sdo
)
{
public
Map
<
String
,
Object
>
saveSapNonProdApplyDept
(
SDO
sdo
){
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
SapNonProdApplyDept
nonProdApplyDept
=
sdo
.
toObject
(
SapNonProdApplyDept
.
class
);
nonProdApplyDept
=
nonProdApplyDeptRepository
.
save
(
nonProdApplyDept
);
//获取分发的部门与人员信息
ObjectMapper
objectMapper
=
new
ObjectMapper
();
String
deptStaffJSON
=
sdo
.
getString
(
"deptStaff"
);
// List<BsnMessage> processList = objectMapper.readValue(processJSON, new TypeReference<List<ProofingApplyProcess>>() {
// });
SapNonProdApplyDept
save
=
nonProdApplyDeptRepository
.
save
(
nonProdApplyDept
);
List
<
Map
<
String
,
String
>>
deptStaffList
=
null
;
try
{
deptStaffList
=
objectMapper
.
readValue
(
deptStaffJSON
,
new
TypeReference
<
List
<
Map
<
String
,
String
>>>()
{});
}
catch
(
JsonProcessingException
e
)
{
throw
new
RuntimeException
(
"JSON转换失败:"
+
e
);
}
map
.
put
(
"applyDeptId"
,
save
.
getApplyDeptId
());
Operator
operator
=
getOperator
();
//获取当前操作员的详情信息
//封装分发数据
List
<
BsnMessage
>
bsnMessageList
=
new
ArrayList
<>();
for
(
Map
<
String
,
String
>
stringMap
:
deptStaffList
)
{
BsnMessage
bsnMessage
=
new
BsnMessage
();
String
userCode
=
stringMap
.
get
(
"userCode"
);
String
deptName
=
stringMap
.
get
(
"deptName"
);
String
deptCode
=
stringMap
.
get
(
"deptCode"
);
bsnMessage
.
setListners
(
userCode
);
bsnMessage
.
setBusinessCode
(
deptCode
);
bsnMessage
.
setActive
(
ActiveStatus
.
SAVED
.
getValue
());
bsnMessage
.
setCreateDate
(
new
Date
());
bsnMessage
.
setTitle
(
"非产品/非本成品类物料:"
+
deptName
+
"部门数据维护"
);
bsnMessage
.
setExecutorUrl
(
"sapNonProdApplyNext/fillInNonProdApplyDept.do"
);
bsnMessage
.
setBusinessId
(
nonProdApplyDept
.
getApplyDeptId
());
bsnMessageList
.
add
(
bsnMessage
);
}
bsnMessageRepository
.
save
(
bsnMessageList
);
map
.
put
(
"applyDeptId"
,
nonProdApplyDept
.
getApplyDeptId
());
return
map
;
}
@Override
public
void
distributeSapNonProdApplyDept
(
SDO
sdo
)
{
//将状态为保存为分发的全部修改为分发未完成
Map
<
String
,
Object
>
map
=
this
.
saveSapNonProdApplyDept
(
sdo
);
List
<
BsnMessage
>
nonProdApplyDeptList
=
bsnMessageRepository
.
findAllByBusinessId
((
String
)
map
.
get
(
"applyDeptId"
));
nonProdApplyDeptList
.
forEach
(
item
->
item
.
setActive
(
0
));
nonProdApplyDeptList
.
forEach
(
item
->
item
.
setActive
(
ActiveStatus
.
UNFINISHED
.
getValue
()
));
bsnMessageRepository
.
save
(
nonProdApplyDeptList
);
}
...
...
@@ -56,6 +81,7 @@ public class NonProdApplyDeptApplicationImpl extends BaseApplication implements
return
nonProdApplyDeptRepository
.
findOne
(
id
);
}
@Override
public
void
rejectNonProdApplyDept
(
SDO
sdo
)
{
String
septString
=
sdo
.
getString
(
"dept"
);
...
...
@@ -64,10 +90,9 @@ public class NonProdApplyDeptApplicationImpl extends BaseApplication implements
String
bdid
=
sdo
.
getString
(
"表单的id"
);
//更改状态此对象为驳回状态
SapNonProdApplyDept
one
=
nonProdApplyDeptRepository
.
findOne
(
bdid
);
one
.
setStatus
(
2
);
one
.
setStatus
(
ActiveStatus
.
REJECTED
.
getValue
()
);
nonProdApplyDeptRepository
.
save
(
one
);
//获取此条数据的相关部门信息
List
<
BsnMessage
>
allByBusinessId
=
bsnMessageRepository
.
findAllByBusinessId
(
bdid
);
}
}
topsun/src/main/java/com/huigou/topsun/sap/nonProdApply/controller/NonProdApplyNextController.java
View file @
77dd1fb4
...
...
@@ -67,13 +67,12 @@ public class NonProdApplyNextController extends CommonController {
}
/**
* 添加
指导申请书
* 添加
*/
public
String
saveSapNonProdApplyDept
(){
SDO
sdo
=
this
.
getSDO
();
SapNonProdApplyDept
nonProdApplyDept
=
sdo
.
toObject
(
SapNonProdApplyDept
.
class
);
nonProdApplyDeptApplication
.
saveSapNonProdApplyDept
(
sdo
);
return
toResult
(
nonProdApplyDept
);
Map
<
String
,
Object
>
map
=
nonProdApplyDeptApplication
.
saveSapNonProdApplyDept
(
sdo
);
return
toResult
(
map
);
}
...
...
@@ -102,8 +101,8 @@ public class NonProdApplyNextController extends CommonController {
}
@EasySearch
(
queryName
=
"userNameSelect"
)
public
Map
<
String
,
Object
>
queryResourceNameGroup
(
SDO
sdo
){
//
@EasySearch(queryName = "userNameSelect")
//
public Map<String, Object> queryResourceNameGroup(SDO sdo){
// Integer intPage = sdo.getInteger("intPage", 1);
// Integer pageSize = sdo.getInteger("pageSize",10);
// PageRequest pageRequest = new PageRequest(intPage - 1, pageSize);
...
...
@@ -122,8 +121,8 @@ public class NonProdApplyNextController extends CommonController {
// MemEasySearcher<Map<String, Object>> memEasySearcher = new MemEasySearcherImpl<>();
// Map<String, Object> model = memEasySearcher.search(mapList, easySearchParse, pageRequest, null);
// return model;
return
null
;
}
//
return null;
//
}
public
void
rejectNonProdApplyDept
(){
...
...
topsun/src/main/java/com/huigou/topsun/sap/nonProdApply/controller/test.java
View file @
77dd1fb4
...
...
@@ -25,4 +25,8 @@ public class test extends HomePageController {
public
String
queryTasksByViewKind
()
{
return
super
.
queryTasksByViewKind
();
}
public
static
void
main
(
String
[]
args
)
{
System
.
out
.
println
(
"266870e2b1b311ee80140242ac110002@BDA53701278249BCB740086C1CB3384A"
.
length
());
}
}
topsun/src/main/resources/config/bpm/topsun/sapCostReimbursementProc.bpmn
0 → 100644
View file @
77dd1fb4
<?xml version="1.0" encoding="UTF-8"?>
<definitions
xmlns=
"http://www.omg.org/spec/BPMN/20100524/MODEL"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
xmlns:activiti=
"http://activiti.org/bpmn"
xmlns:bpmndi=
"http://www.omg.org/spec/BPMN/20100524/DI"
xmlns:omgdc=
"http://www.omg.org/spec/DD/20100524/DC"
xmlns:omgdi=
"http://www.omg.org/spec/DD/20100524/DI"
xmlns:xsd=
"http://www.w3.org/2001/XMLSchema"
typeLanguage=
"http://www.w3.org/2001/XMLSchema"
expressionLanguage=
"http://www.w3.org/1999/XPath"
targetNamespace=
"http://www.activiti.org/test"
>
<process
id=
"sapCostReimbursementProc"
name=
"费用报销"
isExecutable=
"true"
>
<extensionElements>
<activiti:executionListener
event=
"start"
delegateExpression=
"#{sapCostReimbursementApplication}"
></activiti:executionListener>
<activiti:executionListener
event=
"end"
delegateExpression=
"#{sapCostReimbursementApplication}"
></activiti:executionListener>
</extensionElements>
<startEvent
id=
"startevent1"
name=
"Start"
></startEvent>
<endEvent
id=
"endevent1"
name=
"End"
></endEvent>
<userTask
id=
"Apply"
name=
"费用报销申请"
activiti:formKey=
"sapCostReimbursement/showSapCostReimbursement.job"
>
<extensionElements>
<activiti:taskListener
event=
"all"
delegateExpression=
"#{sapCostReimbursementApplication}"
></activiti:taskListener>
<activiti:taskListener
event=
"saveBizData"
delegateExpression=
"#{sapCostReimbursementApplication}"
></activiti:taskListener>
</extensionElements>
</userTask>
<userTask
id=
"Approve"
name=
"费用报销审批"
activiti:assignee=
"${assignee} "
activiti:formKey=
"sapCostReimbursement/showSapCostReimbursement.job"
>
<extensionElements>
<activiti:taskListener
event=
"all"
delegateExpression=
"#{sapCostReimbursementApplication}"
></activiti:taskListener>
<activiti:taskListener
event=
"saveBizData"
delegateExpression=
"#{sapCostReimbursementApplication}"
></activiti:taskListener>
</extensionElements>
<multiInstanceLoopCharacteristics
isSequential=
"false"
activiti:collection=
"handlerList"
activiti:elementVariable=
"assignee"
>
<completionCondition>
${chiefApprovePassed}
</completionCondition>
</multiInstanceLoopCharacteristics>
</userTask>
<sequenceFlow
id=
"flow1"
sourceRef=
"startevent1"
targetRef=
"Apply"
></sequenceFlow>
<sequenceFlow
id=
"flow2"
sourceRef=
"Apply"
targetRef=
"Approve"
></sequenceFlow>
<exclusiveGateway
id=
"ApproveFinished"
name=
"审批结束"
></exclusiveGateway>
<sequenceFlow
id=
"flow3"
name=
"审批通过"
sourceRef=
"ApprovePassed"
targetRef=
"ApproveFinished"
>
<conditionExpression
xsi:type=
"tFormalExpression"
>
<![CDATA[${approvePassed}]]>
</conditionExpression>
</sequenceFlow>
<sequenceFlow
id=
"flow4"
name=
"审批结束"
sourceRef=
"ApproveFinished"
targetRef=
"endevent1"
>
<conditionExpression
xsi:type=
"tFormalExpression"
>
<![CDATA[${approveFinished}]]>
</conditionExpression>
</sequenceFlow>
<sequenceFlow
id=
"flow5"
name=
"审批未结束"
sourceRef=
"ApproveFinished"
targetRef=
"Approve"
>
<conditionExpression
xsi:type=
"tFormalExpression"
>
<![CDATA[${!approveFinished}]]>
</conditionExpression>
</sequenceFlow>
<exclusiveGateway
id=
"ApprovePassed"
name=
"审批通过"
></exclusiveGateway>
<sequenceFlow
id=
"flow6"
sourceRef=
"Approve"
targetRef=
"ApprovePassed"
></sequenceFlow>
<sequenceFlow
id=
"flow9"
name=
"审批未通过"
sourceRef=
"ApprovePassed"
targetRef=
"Apply"
>
<conditionExpression
xsi:type=
"tFormalExpression"
>
<![CDATA[${!approvePassed}]]>
</conditionExpression>
</sequenceFlow>
</process>
<bpmndi:BPMNDiagram
id=
"BPMNDiagram_sapCostReimbursementProc"
>
<bpmndi:BPMNPlane
bpmnElement=
"sapCostReimbursementProc"
id=
"BPMNPlane_sapCostReimbursementProc"
>
<bpmndi:BPMNShape
bpmnElement=
"startevent1"
id=
"BPMNShape_startevent1"
>
<omgdc:Bounds
height=
"35.0"
width=
"35.0"
x=
"355.0"
y=
"50.0"
></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"endevent1"
id=
"BPMNShape_endevent1"
>
<omgdc:Bounds
height=
"35.0"
width=
"35.0"
x=
"355.0"
y=
"550.0"
></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"Apply"
id=
"BPMNShape_Apply"
>
<omgdc:Bounds
height=
"55.0"
width=
"161.0"
x=
"292.0"
y=
"140.0"
></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"Approve"
id=
"BPMNShape_Approve"
>
<omgdc:Bounds
height=
"55.0"
width=
"161.0"
x=
"292.0"
y=
"240.0"
></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"ApproveFinished"
id=
"BPMNShape_ApproveFinished"
>
<omgdc:Bounds
height=
"40.0"
width=
"40.0"
x=
"352.0"
y=
"440.0"
></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape
bpmnElement=
"ApprovePassed"
id=
"BPMNShape_ApprovePassed"
>
<omgdc:Bounds
height=
"40.0"
width=
"40.0"
x=
"352.0"
y=
"349.0"
></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge
bpmnElement=
"flow1"
id=
"BPMNEdge_flow1"
>
<omgdi:waypoint
x=
"372.0"
y=
"85.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"372.0"
y=
"140.0"
></omgdi:waypoint>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"flow2"
id=
"BPMNEdge_flow2"
>
<omgdi:waypoint
x=
"372.0"
y=
"195.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"372.0"
y=
"240.0"
></omgdi:waypoint>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"flow3"
id=
"BPMNEdge_flow3"
>
<omgdi:waypoint
x=
"372.0"
y=
"389.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"372.0"
y=
"440.0"
></omgdi:waypoint>
<bpmndi:BPMNLabel>
<omgdc:Bounds
height=
"14.0"
width=
"48.0"
x=
"320.0"
y=
"396.0"
></omgdc:Bounds>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"flow4"
id=
"BPMNEdge_flow4"
>
<omgdi:waypoint
x=
"372.0"
y=
"480.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"372.0"
y=
"550.0"
></omgdi:waypoint>
<bpmndi:BPMNLabel>
<omgdc:Bounds
height=
"14.0"
width=
"48.0"
x=
"382.0"
y=
"489.0"
></omgdc:Bounds>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"flow5"
id=
"BPMNEdge_flow5"
>
<omgdi:waypoint
x=
"392.0"
y=
"460.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"519.0"
y=
"459.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"519.0"
y=
"317.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"519.0"
y=
"267.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"489.0"
y=
"267.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"453.0"
y=
"267.0"
></omgdi:waypoint>
<bpmndi:BPMNLabel>
<omgdc:Bounds
height=
"14.0"
width=
"60.0"
x=
"459.0"
y=
"411.0"
></omgdc:Bounds>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"flow6"
id=
"BPMNEdge_flow6"
>
<omgdi:waypoint
x=
"372.0"
y=
"295.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"372.0"
y=
"349.0"
></omgdi:waypoint>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge
bpmnElement=
"flow9"
id=
"BPMNEdge_flow9"
>
<omgdi:waypoint
x=
"352.0"
y=
"369.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"231.0"
y=
"369.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"231.0"
y=
"167.0"
></omgdi:waypoint>
<omgdi:waypoint
x=
"292.0"
y=
"167.0"
></omgdi:waypoint>
<bpmndi:BPMNLabel>
<omgdc:Bounds
height=
"14.0"
width=
"60.0"
x=
"257.0"
y=
"376.0"
></omgdc:Bounds>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
</definitions>
\ No newline at end of file
topsun/src/main/resources/config/topsun/sap/costReimbursement/costReimbursement.xml
0 → 100644
View file @
77dd1fb4
<?xml version="1.0" encoding="UTF-8" ?>
<query-mappings>
<query
name=
"slicedSapCostReimbursementQuery"
table=
"sap_cost_reimbursement_base_info"
>
<sql-query>
select t.*
from sap_cost_reimbursement_base_info t
where 1=1
</sql-query>
<condition
column=
"id"
name=
"id"
type=
"java.lang.String"
symbol=
"="
alias=
"t"
/>
</query>
</query-mappings>
\ No newline at end of file
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