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
a31892dd
Commit
a31892dd
authored
Apr 22, 2025
by
1650842865
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
付款申请查询发票实体号;退料申请;接收退料冲销反馈
parent
e353d1a0
Hide whitespace changes
Inline
Side-by-side
Showing
18 changed files
with
420 additions
and
35 deletions
+420
-35
payApply.js
.../main/webapp/biz/topsun/sap/costReimbursement/payApply.js
+4
-4
payApplyDetail.js
...webapp/biz/topsun/sap/costReimbursement/payApplyDetail.js
+1
-1
nonProducePickList.js
...ebapp/biz/topsun/sap/nonProducePick/nonProducePickList.js
+32
-21
showBack.jsp
...rc/main/webapp/biz/topsun/sap/nonProducePick/showBack.jsp
+32
-0
purchaseInfoRecordDetail.js
...topsun/sap/purchaseInfoRecord/purchaseInfoRecordDetail.js
+14
-0
SapCostReimbursementDetail.java
.../costReimbursement/domain/SapCostReimbursementDetail.java
+6
-0
NonProducePickApplication.java
...nonProducePick/application/NonProducePickApplication.java
+10
-0
NonProducePickItemApplication.java
...roducePick/application/NonProducePickItemApplication.java
+4
-0
NonProducePickApplicationImpl.java
...ePick/application/impl/NonProducePickApplicationImpl.java
+47
-3
NonProducePickItemApplicationImpl.java
...k/application/impl/NonProducePickItemApplicationImpl.java
+10
-0
NonProducePickController.java
...p/nonProducePick/controller/NonProducePickController.java
+55
-4
NonProducePickItemController.java
...nProducePick/controller/NonProducePickItemController.java
+21
-0
NonProducePickItem.java
.../topsun/sap/nonProducePick/domain/NonProducePickItem.java
+18
-0
NonProducePickRepository.java
...p/nonProducePick/repository/NonProducePickRepository.java
+1
-1
PDABackPickItemVo.java
...uigou/topsun/sap/nonProducePick/vo/PDABackPickItemVo.java
+33
-0
PDABackPickVo.java
...om/huigou/topsun/sap/nonProducePick/vo/PDABackPickVo.java
+19
-0
PDANonProducePickItemVo.java
...topsun/sap/nonProducePick/vo/PDANonProducePickItemVo.java
+88
-0
nonProducePick.xml
...urces/config/topsun/sap/nonProducePick/nonProducePick.xml
+25
-1
No files found.
topsun-xt/src/main/webapp/biz/topsun/sap/costReimbursement/payApply.js
View file @
a31892dd
...
@@ -59,7 +59,7 @@ var tableArray = [
...
@@ -59,7 +59,7 @@ var tableArray = [
display
:
"采购发票号"
,
name
:
"belnr2"
,
width
:
120
,
minwidth
:
120
,
type
:
"string"
,
align
:
"left"
,
display
:
"采购发票号"
,
name
:
"belnr2"
,
width
:
120
,
minwidth
:
120
,
type
:
"string"
,
align
:
"left"
,
},
},
{
{
display
:
"
采购发票行"
,
name
:
"buzei
"
,
width
:
120
,
minwidth
:
120
,
type
:
"string"
,
align
:
"left"
,
display
:
"
实体发票号"
,
name
:
"zzinvcnr
"
,
width
:
120
,
minwidth
:
120
,
type
:
"string"
,
align
:
"left"
,
},
},
// {
// {
// display: "采购发票行信息", name: "zrsegItem", width: 300, minwidth: 120, type: "string", align: "left",
// display: "采购发票行信息", name: "zrsegItem", width: 300, minwidth: 120, type: "string", align: "left",
...
@@ -342,8 +342,8 @@ function loadGrid(obj) {
...
@@ -342,8 +342,8 @@ function loadGrid(obj) {
if
(
dates
!=
null
&&
dates
.
length
>
0
)
{
if
(
dates
!=
null
&&
dates
.
length
>
0
)
{
for
(
let
j
=
0
;
j
<
dates
.
length
;
j
++
)
{
for
(
let
j
=
0
;
j
<
dates
.
length
;
j
++
)
{
var
data
=
dates
[
j
];
var
data
=
dates
[
j
];
if
(
data
.
belnr2
==
row
.
BELNR2
&&
data
.
buzei
==
row
.
BUZEI
)
{
if
(
data
.
belnr2
==
row
.
BELNR2
)
{
Public
.
tip
(
"采购发票号
行:"
+
data
.
belnr2
+
"-"
+
data
.
buzei
+
" 已选择,请取消勾选!"
);
Public
.
tip
(
"采购发票号
"
+
data
.
belnr2
+
" 已选择,请取消勾选!"
);
return
false
;
return
false
;
}
}
}
}
...
@@ -357,7 +357,7 @@ function loadGrid(obj) {
...
@@ -357,7 +357,7 @@ function loadGrid(obj) {
zlsch
:
"T"
,
zlsch
:
"T"
,
zlschTextView
:
"T-电汇"
,
zlschTextView
:
"T-电汇"
,
belnr2
:
row
.
BELNR2
,
belnr2
:
row
.
BELNR2
,
buzei
:
row
.
BUZEI
,
zzinvcnr
:
row
.
ZZINVCNR
,
zrsegitem
:
row
.
ZRSEG_ITEM
,
zrsegitem
:
row
.
ZRSEG_ITEM
,
waers
:
row
.
WAERS
,
waers
:
row
.
WAERS
,
kursf
:
row
.
KURSF
,
kursf
:
row
.
KURSF
,
...
...
topsun-xt/src/main/webapp/biz/topsun/sap/costReimbursement/payApplyDetail.js
View file @
a31892dd
...
@@ -20,7 +20,7 @@ function initGrid() {
...
@@ -20,7 +20,7 @@ function initGrid() {
display
:
"采购发票号"
,
name
:
"BELNR2"
,
width
:
120
,
minwidth
:
120
,
type
:
"string"
,
align
:
"left"
,
display
:
"采购发票号"
,
name
:
"BELNR2"
,
width
:
120
,
minwidth
:
120
,
type
:
"string"
,
align
:
"left"
,
},
},
{
{
display
:
"
采购发票行"
,
name
:
"BUZEI
"
,
width
:
120
,
minwidth
:
120
,
type
:
"string"
,
align
:
"left"
,
display
:
"
实体发票号"
,
name
:
"ZZINVCNR
"
,
width
:
120
,
minwidth
:
120
,
type
:
"string"
,
align
:
"left"
,
},
},
// {
// {
// display: "采购发票行信息", name: "ZRSEG_ITEM", width: 300, minwidth: 120, type: "string", align: "left",
// display: "采购发票行信息", name: "ZRSEG_ITEM", width: 300, minwidth: 120, type: "string", align: "left",
...
...
topsun-xt/src/main/webapp/biz/topsun/sap/nonProducePick/nonProducePickList.js
View file @
a31892dd
...
@@ -18,34 +18,36 @@ function loadGrid() {
...
@@ -18,34 +18,36 @@ function loadGrid() {
}
}
},
},
exportExcelHandler
:
exportExcelHandler
,
exportExcelHandler
:
exportExcelHandler
,
// chargeOff
Handler: {
back
Handler
:
{
// id: 'chargeOff', text: '冲销
', img:'fa-edit', click: function(){
id
:
'backHandler'
,
text
:
'退料
'
,
img
:
'fa-edit'
,
click
:
function
(){
// chargeOff
Handler();
back
Handler
();
//
}
}
//
},
},
});
});
gridManager
=
UICtrl
.
grid
(
"#maingrid"
,
{
gridManager
=
UICtrl
.
grid
(
"#maingrid"
,
{
columns
:
[
columns
:
[
{
display
:
"单据编号"
,
name
:
"billCode"
,
width
:
150
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"单据编号"
,
name
:
"billCode"
,
width
:
150
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"领料单号"
,
name
:
"message"
,
width
:
2
00
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"领料单号"
,
name
:
"message"
,
width
:
1
00
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
//{display: "是否冲销", name: "isChargeOffTextView", width: 100, minWidth: 60, type: "string", align: "left"},
//{display: "是否冲销", name: "isChargeOffTextView", width: 100, minWidth: 60, type: "string", align: "left"},
{
display
:
"创建日期"
,
name
:
"fillinDate"
,
width
:
120
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"申请人"
,
name
:
"personMemberName"
,
width
:
120
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"申请部门"
,
name
:
"deptName"
,
width
:
120
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"工厂"
,
name
:
"werksName"
,
width
:
200
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"工厂"
,
name
:
"werksName"
,
width
:
200
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"成本中心"
,
name
:
"kostlName"
,
width
:
200
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"成本中心"
,
name
:
"kostlName"
,
width
:
200
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"内部订单编号"
,
name
:
"aufnr"
,
width
:
2
00
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"内部订单编号"
,
name
:
"aufnr"
,
width
:
1
00
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"内部订单描述"
,
name
:
"aufnrName"
,
width
:
200
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"内部订单描述"
,
name
:
"aufnrName"
,
width
:
200
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"序号"
,
name
:
"rspos"
,
width
:
70
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
,},
{
display
:
"序号"
,
name
:
"rspos"
,
width
:
70
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
,},
{
display
:
"物料"
,
name
:
"matnr"
,
width
:
160
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"物料"
,
name
:
"matnr"
,
width
:
160
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"物料描述"
,
name
:
"maktx"
,
width
:
300
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
,},
{
display
:
"物料描述"
,
name
:
"maktx"
,
width
:
300
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
,},
{
display
:
"库存地点"
,
name
:
"lgobe"
,
width
:
200
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
,},
{
display
:
"库存地点"
,
name
:
"lgobe"
,
width
:
200
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
,},
{
display
:
"数量"
,
name
:
"erfmg"
,
width
:
100
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
,},
{
display
:
"数量"
,
name
:
"erfmg"
,
width
:
100
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
,},
{
display
:
"退料数量"
,
name
:
"backNum"
,
width
:
100
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
,},
{
display
:
"退料原因"
,
name
:
"backReason"
,
width
:
150
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
,},
{
display
:
"计量单位"
,
name
:
"msehl"
,
width
:
90
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
,},
{
display
:
"计量单位"
,
name
:
"msehl"
,
width
:
90
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
,},
{
display
:
"领料方"
,
name
:
"wempf"
,
width
:
200
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
,},
{
display
:
"领料方"
,
name
:
"wempf"
,
width
:
200
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
,},
{
display
:
"备注用途"
,
name
:
"usedTextView"
,
width
:
200
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
,},
{
display
:
"备注用途"
,
name
:
"usedTextView"
,
width
:
200
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
,},
{
display
:
"审批状态"
,
name
:
"statusTextView"
,
width
:
100
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"审批状态"
,
name
:
"statusTextView"
,
width
:
100
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"消息类型"
,
name
:
"typeTextView"
,
width
:
100
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"消息类型"
,
name
:
"typeTextView"
,
width
:
100
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"创建日期"
,
name
:
"fillinDate"
,
width
:
120
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"申请人"
,
name
:
"personMemberName"
,
width
:
120
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
{
display
:
"申请部门"
,
name
:
"deptName"
,
width
:
120
,
minWidth
:
60
,
type
:
"string"
,
align
:
"left"
},
],
],
dataAction
:
"server"
,
dataAction
:
"server"
,
url
:
web_app
.
name
+
'/nonProducePick/slicedNonProducePickList.ajax'
,
url
:
web_app
.
name
+
'/nonProducePick/slicedNonProducePickList.ajax'
,
...
@@ -108,23 +110,32 @@ function printHandler(){
...
@@ -108,23 +110,32 @@ function printHandler(){
Public
.
openPostWindow
(
web_app
.
name
+
url
,{
id
:
row
.
id
});
Public
.
openPostWindow
(
web_app
.
name
+
url
,{
id
:
row
.
id
});
}
}
function
chargeOff
Handler
(){
function
back
Handler
(){
var
row
=
DataUtil
.
getUpdateRow
(
gridManager
);
var
row
=
DataUtil
.
getUpdateRow
(
gridManager
);
if
(
!
row
)
{
if
(
!
row
)
{
return
;
return
;
}
}
if
(
row
.
status
!=
3
){
if
(
Public
.
isBlank
(
row
.
message
)){
Public
.
tip
(
"请审批完成再冲销!"
);
Public
.
tip
(
"请领料完成再退料!"
);
return
;
}
if
(
row
.
isChargeOff
==
1
){
Public
.
tip
(
"已冲销的不能再冲销!"
);
return
;
return
;
}
}
var
url
=
'/nonProducePick/chargeOff.ajax'
;
UICtrl
.
showAjaxDialog
({
Public
.
ajax
(
web_app
.
name
+
url
,{
message
:
row
.
message
},
function
(
data
){
url
:
web_app
.
name
+
'/nonProducePickItem/showBack.load'
,
reloadGrid
();
param
:{
id
:
row
.
itemId
},
})
title
:
"退料"
,
width
:
400
,
ok
:
doSaveBackInfo
});
}
function
doSaveBackInfo
(
div
){
var
_self
=
this
;
$
(
'#saveBackInfoForm'
,
div
).
ajaxSubmit
({
url
:
web_app
.
name
+
'/nonProducePickItem/saveNonProducePickItem.ajax'
,
success
:
function
(
id
)
{
reloadGrid
();
_self
.
close
();
}
});
}
}
//导出Excel
//导出Excel
...
...
topsun-xt/src/main/webapp/biz/topsun/sap/nonProducePick/showBack.jsp
0 → 100644
View file @
a31892dd
<%@ 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"
/>
</head>
<body>
<form
class=
"hg-form"
method=
"post"
action=
""
id=
"saveBackInfoForm"
>
<x:hidden
name=
"id"
/>
<x:hidden
name=
"nonProducePickId"
/>
<x:hidden
name=
"version"
/>
<x:hidden
name=
"rspos"
/>
<x:hidden
name=
"matnr"
/>
<x:hidden
name=
"maktx"
/>
<x:hidden
name=
"lgort"
/>
<x:hidden
name=
"lgobe"
/>
<x:hidden
name=
"erfmg"
/>
<x:hidden
name=
"meins"
/>
<x:hidden
name=
"msehl"
/>
<x:hidden
name=
"wempf"
/>
<x:hidden
name=
"used"
/>
<x:hidden
name=
"remark"
/>
<div
class=
"hg-form-cols"
>
<div
class=
"hg-form-row"
>
<x:inputC
name=
"backNum"
required=
"true"
label=
"退料数量"
labelCol=
"4"
fieldCol=
"8"
mask=
"9999999.99"
/>
<x:textareaC
name=
"backReason"
required=
"true"
label=
"退料原因"
labelCol=
"4"
fieldCol=
"8"
rows=
"3"
/>
</div>
</div>
</form>
</body>
</html>
topsun-xt/src/main/webapp/biz/topsun/sap/purchaseInfoRecord/purchaseInfoRecordDetail.js
View file @
a31892dd
...
@@ -522,6 +522,20 @@ function getExtendedData(processAction) {
...
@@ -522,6 +522,20 @@ function getExtendedData(processAction) {
return
extendedData
;
return
extendedData
;
}
}
//提交前校验
function
checkConstraints
()
{
var
_grid
=
UICtrl
.
getGridManager
(
'#maingrid'
);
var
datas
=
DataUtil
.
getGridData
({
gridManager
:
_grid
,
isAllData
:
true
});
if
(
datas
.
length
<
1
)
{
Public
.
tip
(
"请添加采购信息记录"
);
return
false
;
}
return
true
;
}
function
getId
()
{
function
getId
()
{
return
$
(
'#id'
).
val
();
return
$
(
'#id'
).
val
();
}
}
...
...
topsun/src/main/java/com/huigou/topsun/sap/costReimbursement/domain/SapCostReimbursementDetail.java
View file @
a31892dd
...
@@ -454,4 +454,10 @@ public class SapCostReimbursementDetail implements Serializable {
...
@@ -454,4 +454,10 @@ public class SapCostReimbursementDetail implements Serializable {
@Column
(
name
=
"ZZYL01"
)
@Column
(
name
=
"ZZYL01"
)
private
String
zzyl01
;
private
String
zzyl01
;
/**
* 实体发票号
*/
@Column
(
name
=
"zzinvcnr"
)
private
String
zzinvcnr
;
}
}
\ No newline at end of file
topsun/src/main/java/com/huigou/topsun/sap/nonProducePick/application/NonProducePickApplication.java
View file @
a31892dd
...
@@ -2,6 +2,7 @@ package com.huigou.topsun.sap.nonProducePick.application;
...
@@ -2,6 +2,7 @@ package com.huigou.topsun.sap.nonProducePick.application;
import
com.huigou.topsun.sap.nonProducePick.domain.NonProducePick
;
import
com.huigou.topsun.sap.nonProducePick.domain.NonProducePick
;
import
com.huigou.topsun.sap.nonProducePick.domain.query.NonProducePickQueryRequest
;
import
com.huigou.topsun.sap.nonProducePick.domain.query.NonProducePickQueryRequest
;
import
com.huigou.topsun.sap.nonProducePick.vo.PDABackPickVo
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
...
@@ -27,4 +28,13 @@ public interface NonProducePickApplication {
...
@@ -27,4 +28,13 @@ public interface NonProducePickApplication {
public
void
sendNonProducePickData
(
NonProducePick
nonProducePick
,
String
ztype
);
public
void
sendNonProducePickData
(
NonProducePick
nonProducePick
,
String
ztype
);
void
chargeOff
(
String
message
);
void
chargeOff
(
String
message
);
/**
* 根据预留号查询领料单
* @param rsnums
* @return
*/
String
getNonProducePick
(
List
<
String
>
rsnums
);
void
backNonProducePick
(
PDABackPickVo
requestBody
);
}
}
topsun/src/main/java/com/huigou/topsun/sap/nonProducePick/application/NonProducePickItemApplication.java
View file @
a31892dd
...
@@ -20,4 +20,8 @@ public interface NonProducePickItemApplication {
...
@@ -20,4 +20,8 @@ public interface NonProducePickItemApplication {
void
deleteByIds
(
List
<
String
>
ids
);
void
deleteByIds
(
List
<
String
>
ids
);
List
<
NonProducePickItem
>
findByNonProducePickId
(
String
nonProducePickId
);
List
<
NonProducePickItem
>
findByNonProducePickId
(
String
nonProducePickId
);
NonProducePickItem
findById
(
String
id
);
void
updateNonProducePickItem
(
NonProducePickItem
nonProducePickItem
);
}
}
topsun/src/main/java/com/huigou/topsun/sap/nonProducePick/application/impl/NonProducePickApplicationImpl.java
View file @
a31892dd
package
com
.
huigou
.
topsun
.
sap
.
nonProducePick
.
application
.
impl
;
package
com
.
huigou
.
topsun
.
sap
.
nonProducePick
.
application
.
impl
;
import
cn.hutool.core.util.ObjectUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.huigou.cache.DictUtil
;
import
com.huigou.cache.DictUtil
;
import
com.huigou.data.domain.model.CommonDomainConstants
;
import
com.huigou.data.domain.model.CommonDomainConstants
;
import
com.huigou.data.domain.query.QueryPageRequest
;
import
com.huigou.data.query.model.QueryDescriptor
;
import
com.huigou.data.query.model.QueryDescriptor
;
import
com.huigou.data.query.model.QueryModel
;
import
com.huigou.data.query.model.QueryModel
;
import
com.huigou.topsun.sap.common.DefaultHttpClient
;
import
com.huigou.topsun.sap.common.DefaultHttpClient
;
...
@@ -15,9 +17,7 @@ import com.huigou.topsun.sap.nonProducePick.domain.NonProducePick;
...
@@ -15,9 +17,7 @@ import com.huigou.topsun.sap.nonProducePick.domain.NonProducePick;
import
com.huigou.topsun.sap.nonProducePick.domain.NonProducePickItem
;
import
com.huigou.topsun.sap.nonProducePick.domain.NonProducePickItem
;
import
com.huigou.topsun.sap.nonProducePick.domain.query.NonProducePickQueryRequest
;
import
com.huigou.topsun.sap.nonProducePick.domain.query.NonProducePickQueryRequest
;
import
com.huigou.topsun.sap.nonProducePick.repository.NonProducePickRepository
;
import
com.huigou.topsun.sap.nonProducePick.repository.NonProducePickRepository
;
import
com.huigou.topsun.sap.nonProducePick.vo.CheckNonProducePickItemNumVo
;
import
com.huigou.topsun.sap.nonProducePick.vo.*
;
import
com.huigou.topsun.sap.nonProducePick.vo.NonProducePickItemVo
;
import
com.huigou.topsun.sap.nonProducePick.vo.NonProducePickVo
;
import
com.huigou.topsun.sap.purchase.domain.SapPurchase
;
import
com.huigou.topsun.sap.purchase.domain.SapPurchase
;
import
com.huigou.uasp.bmp.common.BizBillStatus
;
import
com.huigou.uasp.bmp.common.BizBillStatus
;
import
com.huigou.uasp.bpm.FlowBroker
;
import
com.huigou.uasp.bpm.FlowBroker
;
...
@@ -26,6 +26,7 @@ import com.huigou.util.DateUtil;
...
@@ -26,6 +26,7 @@ import com.huigou.util.DateUtil;
import
com.huigou.util.StringUtil
;
import
com.huigou.util.StringUtil
;
import
org.activiti.engine.delegate.DelegateExecution
;
import
org.activiti.engine.delegate.DelegateExecution
;
import
org.activiti.engine.delegate.DelegateTask
;
import
org.activiti.engine.delegate.DelegateTask
;
import
org.apache.commons.lang.StringUtils
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
@@ -147,6 +148,49 @@ public class NonProducePickApplicationImpl extends FlowBroker implements NonProd
...
@@ -147,6 +148,49 @@ public class NonProducePickApplicationImpl extends FlowBroker implements NonProd
//TODO
//TODO
}
}
@Override
public
String
getNonProducePick
(
List
<
String
>
rsnums
)
{
String
join
=
StringUtils
.
join
(
rsnums
,
","
);
NonProducePickQueryRequest
queryRequest
=
new
NonProducePickQueryRequest
();
queryRequest
.
setMessage
(
join
);
QueryPageRequest
pageRequest
=
new
QueryPageRequest
();
pageRequest
.
setPageSize
(
200
);
pageRequest
.
setPageIndex
(
1
);
queryRequest
.
setPageModel
(
pageRequest
);
QueryDescriptor
queryDescriptor
=
this
.
sqlExecutorDao
.
getQuery
(
QUERY_XML_FILE_PATH
,
"nonProducePickByRsnums"
);
Map
<
String
,
Object
>
map
=
this
.
sqlExecutorDao
.
executeSlicedQuery
(
queryDescriptor
,
queryRequest
);
List
<
Map
<
String
,
Object
>>
maps
=
(
List
<
Map
<
String
,
Object
>>)
map
.
get
(
"Rows"
);
List
<
PDANonProducePickItemVo
>
itemVoList
=
maps
.
stream
()
.
map
(
map1
->
{
PDANonProducePickItemVo
pdaNonProducePickItemVo
=
ClassHelper
.
fromMap
(
PDANonProducePickItemVo
.
class
,
map1
);
String
used
=
pdaNonProducePickItemVo
.
getUsed
();
used
.
replace
(
"C"
,
"R"
);
pdaNonProducePickItemVo
.
setUsed
(
used
);
return
pdaNonProducePickItemVo
;
}).
collect
(
Collectors
.
toList
());
String
jsonString
=
""
;
if
(
ObjectUtil
.
isNotEmpty
(
itemVoList
)){
jsonString
=
JSONArray
.
toJSONString
(
itemVoList
);
}
return
jsonString
;
}
@Override
public
void
backNonProducePick
(
PDABackPickVo
requestBody
)
{
List
<
PDABackPickItemVo
>
items
=
requestBody
.
getData
();
items
.
forEach
(
item
->
{
NonProducePick
producePick
=
nonProducePickRepository
.
findByMessage
(
item
.
getMessage
());
List
<
NonProducePickItem
>
itemList
=
nonProducePickItemApplication
.
findByNonProducePickId
(
producePick
.
getId
());
itemList
.
forEach
(
pickItem
->
{
if
(
pickItem
.
getRspos
().
equals
(
item
.
getRspos
())){
pickItem
.
setChargeOffMessage
(
item
.
getChargeOffMessage
());
nonProducePickItemApplication
.
updateNonProducePickItem
(
pickItem
);
}
});
});
}
@Override
@Override
protected
String
saveBizAndApprovalData
()
{
protected
String
saveBizAndApprovalData
()
{
super
.
saveBizAndApprovalData
();
super
.
saveBizAndApprovalData
();
...
...
topsun/src/main/java/com/huigou/topsun/sap/nonProducePick/application/impl/NonProducePickItemApplicationImpl.java
View file @
a31892dd
...
@@ -54,4 +54,14 @@ public class NonProducePickItemApplicationImpl extends BaseApplication implement
...
@@ -54,4 +54,14 @@ public class NonProducePickItemApplicationImpl extends BaseApplication implement
public
List
<
NonProducePickItem
>
findByNonProducePickId
(
String
nonProducePickId
)
{
public
List
<
NonProducePickItem
>
findByNonProducePickId
(
String
nonProducePickId
)
{
return
nonProducePickItemRepository
.
findByNonProducePickId
(
nonProducePickId
);
return
nonProducePickItemRepository
.
findByNonProducePickId
(
nonProducePickId
);
}
}
@Override
public
NonProducePickItem
findById
(
String
id
)
{
return
nonProducePickItemRepository
.
findOne
(
id
);
}
@Override
public
void
updateNonProducePickItem
(
NonProducePickItem
nonProducePickItem
)
{
nonProducePickItemRepository
.
save
(
nonProducePickItem
);
}
}
}
topsun/src/main/java/com/huigou/topsun/sap/nonProducePick/controller/NonProducePickController.java
View file @
a31892dd
...
@@ -11,15 +11,28 @@ import com.huigou.topsun.sap.nonProducePick.application.NonProducePickItemApplic
...
@@ -11,15 +11,28 @@ import com.huigou.topsun.sap.nonProducePick.application.NonProducePickItemApplic
import
com.huigou.topsun.sap.nonProducePick.domain.NonProducePick
;
import
com.huigou.topsun.sap.nonProducePick.domain.NonProducePick
;
import
com.huigou.topsun.sap.nonProducePick.domain.NonProducePickItem
;
import
com.huigou.topsun.sap.nonProducePick.domain.NonProducePickItem
;
import
com.huigou.topsun.sap.nonProducePick.domain.query.NonProducePickQueryRequest
;
import
com.huigou.topsun.sap.nonProducePick.domain.query.NonProducePickQueryRequest
;
import
com.huigou.topsun.sap.nonProducePick.vo.PDABackPickVo
;
import
com.huigou.topsun.sap.nonProducePick.vo.PDANonProducePickItemVo
;
import
com.huigou.topsun.sap.purchaseOrder.controller.SapPurchaseOrderController
;
import
com.huigou.uasp.annotation.ControllerMapping
;
import
com.huigou.uasp.annotation.ControllerMapping
;
import
com.huigou.uasp.annotation.SkipAuth
;
import
com.huigou.uasp.bmp.common.BizBillStatus
;
import
com.huigou.uasp.bmp.common.BizBillStatus
;
import
com.huigou.uasp.client.CommonController
;
import
com.huigou.uasp.client.CommonController
;
import
com.huigou.util.ClassHelper
;
import
com.huigou.util.ClassHelper
;
import
com.huigou.util.JSONUtil
;
import
com.huigou.util.SDO
;
import
com.huigou.util.SDO
;
import
com.topsunit.query.annotations.Param
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.xmlbeans.impl.xb.xsdschema.Public
;
import
org.krysalis.barcode4j.HumanReadablePlacement
;
import
org.krysalis.barcode4j.HumanReadablePlacement
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Controller
;
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.RequestParam
;
import
org.springframework.web.bind.annotation.ResponseBody
;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
import
java.io.File
;
import
java.io.File
;
...
@@ -27,10 +40,7 @@ import java.io.IOException;
...
@@ -27,10 +40,7 @@ import java.io.IOException;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
java.time.format.DateTimeFormatter
;
import
java.time.format.DateTimeFormatter
;
import
java.util.Arrays
;
import
java.util.*
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Set
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
/**
/**
...
@@ -41,6 +51,7 @@ import java.util.stream.Collectors;
...
@@ -41,6 +51,7 @@ import java.util.stream.Collectors;
@Controller
@Controller
@ControllerMapping
(
"/nonProducePick"
)
@ControllerMapping
(
"/nonProducePick"
)
public
class
NonProducePickController
extends
CommonController
{
public
class
NonProducePickController
extends
CommonController
{
private
final
static
Logger
LOG
=
LoggerFactory
.
getLogger
(
NonProducePickController
.
class
);
@Override
@Override
protected
String
getPagePath
()
{
protected
String
getPagePath
()
{
return
"/biz/topsun/sap/nonProducePick/"
;
return
"/biz/topsun/sap/nonProducePick/"
;
...
@@ -133,4 +144,44 @@ public class NonProducePickController extends CommonController {
...
@@ -133,4 +144,44 @@ public class NonProducePickController extends CommonController {
nonProducePickApplication
.
chargeOff
(
message
);
nonProducePickApplication
.
chargeOff
(
message
);
return
success
();
return
success
();
}
}
@SkipAuth
@RequestMapping
(
value
=
"/getNonProducePick"
,
consumes
=
"application/json; charset=UTF-8"
,
produces
=
"application/json; charset=UTF-8"
)
@ResponseBody
public
Map
<
String
,
Object
>
getNonProducePick
(
@RequestBody
Map
<
String
,
List
<
String
>>
requestBody
){
LOG
.
info
(
"PDA退料查询数据=={}"
,
JSONUtil
.
toString
(
requestBody
));
HashMap
<
String
,
Object
>
messageMap
=
new
HashMap
<>();
messageMap
.
put
(
"CODE"
,
"S"
);
messageMap
.
put
(
"MSG"
,
"成功"
);
String
vo
=
""
;
try
{
List
<
String
>
rsnums
=
requestBody
.
get
(
"rsnums"
);
vo
=
nonProducePickApplication
.
getNonProducePick
(
rsnums
);
messageMap
.
put
(
"DATA"
,
vo
);
}
catch
(
RuntimeException
e
){
messageMap
.
put
(
"CODE"
,
"E"
);
messageMap
.
put
(
"MSG"
,
e
.
getMessage
());
messageMap
.
put
(
"DATA"
,
vo
);
}
return
messageMap
;
}
@SkipAuth
@RequestMapping
(
value
=
"/backNonProducePick"
,
consumes
=
"application/json; charset=UTF-8"
,
produces
=
"application/json; charset=UTF-8"
)
@ResponseBody
public
Map
<
String
,
Object
>
backNonProducePick
(
@RequestBody
PDABackPickVo
requestBody
){
LOG
.
info
(
"PDA退料返回数据=={}"
,
JSONUtil
.
toString
(
requestBody
));
HashMap
<
String
,
Object
>
messageMap
=
new
HashMap
<>();
messageMap
.
put
(
"CODE"
,
"S"
);
messageMap
.
put
(
"MSG"
,
"成功"
);
messageMap
.
put
(
"DATA"
,
requestBody
);
try
{
nonProducePickApplication
.
backNonProducePick
(
requestBody
);
}
catch
(
RuntimeException
e
){
messageMap
.
put
(
"CODE"
,
"E"
);
messageMap
.
put
(
"MSG"
,
e
.
getMessage
());
messageMap
.
put
(
"DATA"
,
""
);
}
return
messageMap
;
}
}
}
topsun/src/main/java/com/huigou/topsun/sap/nonProducePick/controller/NonProducePickItemController.java
View file @
a31892dd
package
com
.
huigou
.
topsun
.
sap
.
nonProducePick
.
controller
;
package
com
.
huigou
.
topsun
.
sap
.
nonProducePick
.
controller
;
import
com.huigou.topsun.sap.nonProducePick.application.NonProducePickItemApplication
;
import
com.huigou.topsun.sap.nonProducePick.application.NonProducePickItemApplication
;
import
com.huigou.topsun.sap.nonProducePick.domain.NonProducePickItem
;
import
com.huigou.topsun.sap.nonProducePick.domain.query.NonProducePickQueryRequest
;
import
com.huigou.topsun.sap.nonProducePick.domain.query.NonProducePickQueryRequest
;
import
com.huigou.uasp.annotation.ControllerMapping
;
import
com.huigou.uasp.annotation.ControllerMapping
;
import
com.huigou.uasp.client.CommonController
;
import
com.huigou.uasp.client.CommonController
;
...
@@ -19,6 +20,10 @@ import java.util.Map;
...
@@ -19,6 +20,10 @@ import java.util.Map;
@Controller
@Controller
@ControllerMapping
(
"/nonProducePickItem"
)
@ControllerMapping
(
"/nonProducePickItem"
)
public
class
NonProducePickItemController
extends
CommonController
{
public
class
NonProducePickItemController
extends
CommonController
{
@Override
protected
String
getPagePath
()
{
return
"/biz/topsun/sap/nonProducePick/"
;
}
@Resource
@Resource
private
NonProducePickItemApplication
nonProducePickItemApplication
;
private
NonProducePickItemApplication
nonProducePickItemApplication
;
...
@@ -35,4 +40,20 @@ public class NonProducePickItemController extends CommonController {
...
@@ -35,4 +40,20 @@ public class NonProducePickItemController extends CommonController {
nonProducePickItemApplication
.
deleteByIds
(
ids
);
nonProducePickItemApplication
.
deleteByIds
(
ids
);
return
success
();
return
success
();
}
}
public
String
showBack
(){
SDO
sdo
=
this
.
getSDO
();
String
id
=
sdo
.
getId
();
NonProducePickItem
item
=
nonProducePickItemApplication
.
findById
(
id
);
return
forward
(
"showBack"
,
item
);
}
public
String
saveNonProducePickItem
(){
SDO
sdo
=
this
.
getSDO
();
NonProducePickItem
nonProducePickItem
=
sdo
.
toObject
(
NonProducePickItem
.
class
);
nonProducePickItemApplication
.
updateNonProducePickItem
(
nonProducePickItem
);
return
success
();
}
}
}
topsun/src/main/java/com/huigou/topsun/sap/nonProducePick/domain/NonProducePickItem.java
View file @
a31892dd
...
@@ -86,5 +86,23 @@ public class NonProducePickItem extends AbstractEntity {
...
@@ -86,5 +86,23 @@ public class NonProducePickItem extends AbstractEntity {
@Column
(
name
=
"remark"
)
@Column
(
name
=
"remark"
)
private
String
remark
;
private
String
remark
;
/**
*退料数量
*/
@Column
(
name
=
"back_num"
)
private
BigDecimal
backNum
;
/**
*退料原因
*/
@Column
(
name
=
"back_reason"
)
private
String
backReason
;
/**
*冲销凭证号
*/
@Column
(
name
=
"charge_off_message"
)
private
String
chargeOffMessage
;
}
}
topsun/src/main/java/com/huigou/topsun/sap/nonProducePick/repository/NonProducePickRepository.java
View file @
a31892dd
...
@@ -11,5 +11,5 @@ import java.util.List;
...
@@ -11,5 +11,5 @@ import java.util.List;
* @Description:
* @Description:
*/
*/
public
interface
NonProducePickRepository
extends
JpaRepository
<
NonProducePick
,
String
>
{
public
interface
NonProducePickRepository
extends
JpaRepository
<
NonProducePick
,
String
>
{
NonProducePick
findByMessage
(
String
message
);
}
}
topsun/src/main/java/com/huigou/topsun/sap/nonProducePick/vo/PDABackPickItemVo.java
0 → 100644
View file @
a31892dd
package
com
.
huigou
.
topsun
.
sap
.
nonProducePick
.
vo
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
lombok.Data
;
import
javax.persistence.Column
;
import
java.io.Serializable
;
/**
* @author xin.lu
* @Description: TODO
* @date 2025/4/2215:05
*/
@Data
public
class
PDABackPickItemVo
implements
Serializable
{
/**
* 预留/相关需求的编号
*/
@JsonProperty
(
"RSNUM"
)
private
String
message
;
/**
*序号
*/
@JsonProperty
(
"RSPOS"
)
private
String
rspos
;
/**
*冲销凭证号
*/
@JsonProperty
(
"RSNUM2"
)
private
String
chargeOffMessage
;
}
topsun/src/main/java/com/huigou/topsun/sap/nonProducePick/vo/PDABackPickVo.java
0 → 100644
View file @
a31892dd
package
com
.
huigou
.
topsun
.
sap
.
nonProducePick
.
vo
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
lombok.Data
;
import
javax.persistence.Column
;
import
java.io.Serializable
;
import
java.util.List
;
/**
* @author xin.lu
* @Description: TODO
* @date 2025/4/2215:05
*/
@Data
public
class
PDABackPickVo
implements
Serializable
{
@JsonProperty
(
"DATA"
)
private
List
<
PDABackPickItemVo
>
data
;
}
topsun/src/main/java/com/huigou/topsun/sap/nonProducePick/vo/PDANonProducePickItemVo.java
0 → 100644
View file @
a31892dd
package
com
.
huigou
.
topsun
.
sap
.
nonProducePick
.
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/03/13/9:33
* @Description: SAP非生产性领料申请与发料过账
*/
@Data
public
class
PDANonProducePickItemVo
implements
Serializable
{
/**
* 预留/相关需求的编号
*/
@JsonProperty
(
"RSNUM"
)
private
String
message
;
/**
* 工厂
*/
@JsonProperty
(
"WERKS"
)
private
String
werks
;
/**
* 成本中心
*/
@JsonProperty
(
"KOSTL"
)
private
String
kostl
;
/**
*序号
*/
@JsonProperty
(
"RSPOS"
)
private
String
rspos
;
/**
* 物料编号
*/
@JsonProperty
(
"MATNR"
)
private
String
matnr
;
/**
*物料描述
*/
@JsonProperty
(
"MAKTX"
)
private
String
maktx
;
/**
* 存储地点
*/
@JsonProperty
(
"LGORT"
)
private
String
lgort
;
/**
* 录入单位
*/
@JsonProperty
(
"ERFME"
)
private
String
meins
;
/**
* 以录入项单位表示的数量
*/
@JsonProperty
(
"ERFMG"
)
private
BigDecimal
erfmg
;
/**
* 收货方
*/
@JsonProperty
(
"WEMPF"
)
private
String
wempf
;
/**
* 用途
*/
@JsonProperty
(
"ZYTBM"
)
private
String
used
;
/**
*退料数量
*/
@JsonProperty
(
"BACK_NUM"
)
private
BigDecimal
backNum
;
}
topsun/src/main/resources/config/topsun/sap/nonProducePick/nonProducePick.xml
View file @
a31892dd
...
@@ -24,7 +24,7 @@
...
@@ -24,7 +24,7 @@
t.aufnr_name,
t.aufnr_name,
t.type,
t.type,
t.message,
t.message,
pi.
non_produce_pick
_id,
pi.
id as item
_id,
pi.rspos,
pi.rspos,
pi.matnr,
pi.matnr,
pi.maktx,
pi.maktx,
...
@@ -35,6 +35,8 @@
...
@@ -35,6 +35,8 @@
pi.msehl,
pi.msehl,
pi.lgobe,
pi.lgobe,
pi.used,
pi.used,
pi.back_num,
pi.back_reason,
pi.remark
pi.remark
FROM sap_non_produce_pick t
FROM sap_non_produce_pick t
LEFT JOIN sap_non_produce_pick_item pi ON t.id = pi.non_produce_pick_id where 1=1
LEFT JOIN sap_non_produce_pick_item pi ON t.id = pi.non_produce_pick_id where 1=1
...
@@ -57,4 +59,26 @@
...
@@ -57,4 +59,26 @@
<condition
column=
"non_produce_pick_id"
name=
"nonProducePickId"
type=
"java.lang.String"
symbol=
"="
alias=
"t"
/>
<condition
column=
"non_produce_pick_id"
name=
"nonProducePickId"
type=
"java.lang.String"
symbol=
"="
alias=
"t"
/>
</query>
</query>
<query
name=
"nonProducePickByRsnums"
label=
"根据领料单查询退料申请"
table=
"sap_non_produce_pick_item"
>
<sql-query>
SELECT
p.werks,
p.kostl,
p.message,
t.rspos,
t.matnr,
t.maktx,
t.lgort,
t.erfmg,
t.meins,
t.wempf,
t.used,
t.back_num
FROM sap_non_produce_pick_item t
LEFT JOIN sap_non_produce_pick p ON p.id = t.non_produce_pick_id
WHERE t.back_num IS NOT NULL
</sql-query>
<condition
column=
"message"
name=
"message"
type=
"java.lang.String"
symbol=
"in"
alias=
"p"
/>
</query>
</query-mappings>
</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