Commit ba21b682 authored by 鲁鑫's avatar 鲁鑫

SAP接口调试

parent 4d4d7d7a
...@@ -241,7 +241,7 @@ ...@@ -241,7 +241,7 @@
<%--<p style="float:left;height:20px;line-height:20px;margin: 0px 0px 0px 5px; color:#939393;">沪ICP备14026862号-2</p>--%> <%--<p style="float:left;height:20px;line-height:20px;margin: 0px 0px 0px 5px; color:#939393;">沪ICP备14026862号-2</p>--%>
</a> </a>
<a target="_blank" href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=31011502019122" style="display:inline-block;text-decoration:none;height:20px;line-height:20px;"> <a target="_blank" href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=31011502019122" style="display:inline-block;text-decoration:none;height:20px;line-height:20px;">
<img src="<c:url value="/images/police-20230522.png"/>" style="float:left;"/> <%--<img src="<c:url value="/images/police-20230522.png"/>" style="float:left;"/>--%>
<%--<p style="float:left;height:20px;line-height:20px;margin: 0px 0px 0px 5px; color:#939393;">沪公网安备 31011502019122号</p>--%> <%--<p style="float:left;height:20px;line-height:20px;margin: 0px 0px 0px 5px; color:#939393;">沪公网安备 31011502019122号</p>--%>
</a> </a>
</div> </div>
......
...@@ -213,16 +213,16 @@ ...@@ -213,16 +213,16 @@
</div> </div>
<div class="row footer" style="position: fixed; height: 50px; left: 0px; right: 0px;bottom: 0px; text-align: center;"> <div class="row footer" style="position: fixed; height: 50px; left: 0px; right: 0px;bottom: 0px; text-align: center;">
<div class="col-xs-12" style="z-index: -1;"> <div class="col-xs-12" style="z-index: -1;">
<c:out value="${f:systemParameter('SYSTEM.COPYRIGHT')}" escapeXml="false"/> <%--<c:out value="${f:systemParameter('SYSTEM.COPYRIGHT')}" escapeXml="false"/>--%>
</div> </div>
<div class="col-xs-12" style="z-index: -1;"> <div class="col-xs-12" style="z-index: -1;">
<%--<c:out value="${f:systemParameter('SYSTEM.RECORD.NO')}" escapeXml="false"/>--%> <%--<c:out value="${f:systemParameter('SYSTEM.RECORD.NO')}" escapeXml="false"/>--%>
<a target="_blank" href="http://beian.miit.gov.cn" rel="noopener noreferrer" style="display:inline-block;text-decoration:none;height:20px;line-height:20px;"> <a target="_blank" href="http://beian.miit.gov.cn" rel="noopener noreferrer" style="display:inline-block;text-decoration:none;height:20px;line-height:20px;">
<p style="float:left;height:20px;line-height:20px;margin: 0px 0px 0px 5px; color:#939393;">沪ICP备14026862号-2</p> <p style="float:left;height:20px;line-height:20px;margin: 0px 0px 0px 5px; color:#939393;"><%--沪ICP备14026862号-2--%></p>
</a> </a>
<a target="_blank" href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=31011502019122" style="display:inline-block;text-decoration:none;height:20px;line-height:20px;"> <a target="_blank" href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=31011502019122" style="display:inline-block;text-decoration:none;height:20px;line-height:20px;">
<img src="<c:url value="/images/police-20230522.png"/>" style="float:left;"/> <%--<img src="<c:url value="/images/police-20230522.png"/>" style="float:left;"/>--%>
<p style="float:left;height:20px;line-height:20px;margin: 0px 0px 0px 5px; color:#939393;">沪公网安备 31011502019122号</p> <p style="float:left;height:20px;line-height:20px;margin: 0px 0px 0px 5px; color:#939393;"><%--沪公网安备 31011502019122号--%></p>
</a> </a>
</div> </div>
</div> </div>
......
...@@ -12,7 +12,6 @@ function bindTaskEvent() { ...@@ -12,7 +12,6 @@ function bindTaskEvent() {
$("#trackTaskContent").on('click', function (e) { $("#trackTaskContent").on('click', function (e) {
var $clicked = $(e.target || e.srcElement); var $clicked = $(e.target || e.srcElement);
if ($clicked.is('a.aLink')) { if ($clicked.is('a.aLink')) {
debugger
var taskId=$clicked.attr('taskId'); var taskId=$clicked.attr('taskId');
$clicked=$('#task_'+taskId); $clicked=$('#task_'+taskId);
showTrackingTask($clicked.attr('taskId'),$clicked.attr('bizId'),$clicked.attr('name'),$clicked.attr('url')); showTrackingTask($clicked.attr('taskId'),$clicked.attr('bizId'),$clicked.attr('name'),$clicked.attr('url'));
...@@ -77,9 +76,7 @@ function showTask(taskKind){ ...@@ -77,9 +76,7 @@ function showTask(taskKind){
} }
function reloadExecuteTasks() { function reloadExecuteTasks() {
debugger
Public.ajax(web_app.name + "/homePage/queryAllTasks.ajax", {}, function (data) { Public.ajax(web_app.name + "/homePage/queryAllTasks.ajax", {}, function (data) {
debugger
parseTaskHtml('#waitTaskContent',data['tasks']); parseTaskHtml('#waitTaskContent',data['tasks']);
parseTaskHtml('#trackTaskContent',data['trackingTasks']); parseTaskHtml('#trackTaskContent',data['trackingTasks']);
$('span.taskCount').html(data['taskCount']); $('span.taskCount').html(data['taskCount']);
......
...@@ -13,15 +13,25 @@ function loadAcceptanceFormAckGrid() { ...@@ -13,15 +13,25 @@ function loadAcceptanceFormAckGrid() {
var toolbarOptions = UICtrl.getDefaultToolbarOptions({ var toolbarOptions = UICtrl.getDefaultToolbarOptions({
updateHandler: function () { updateHandler: function () {
}, },
markHandler: {
id: 'markHandler', text: '验收标记', img: 'fa-clipboard', click: function () {
markHandler("X");
}
},
cancelMarkHandler: {
id: 'cancelMarkHandler', text: '取消验收标记', img: 'fa-clipboard', click: function () {
markHandler("");
}
}
}); });
gridManager = UICtrl.grid("#acceptanceFormAckGrid", { gridManager = UICtrl.grid("#acceptanceFormAckGrid", {
columns: [ columns: [
{display: "验收单业务标记", name: "zcsamk", width: 120, minWidth: 60, type: "string", align: "center", {display: "验收单业务标记", name: "zacfmk", width: 120, minWidth: 60, type: "string", align: "center",
render: function(item) { render: function(item) {
if(item.zacsmk === "x") { if(item.zacfmk === "X") {
return "<a href='#' class='GridStyle' onclick=\"sampling('" + encodeURIComponent(JSON.stringify(item)) + "')\">取消</a>"; return "<a href='#' class='GridStyle'>取消</a>";
} }
return "<a href='#' class='GridStyle' onclick=\"sampling('" + encodeURIComponent(JSON.stringify(item)) + "')\">标记</a>"; return "<a href='#' class='GridStyle'>标记</a>";
}}, }},
{display: "销售凭证", name: "vgbel", width: 140, minWidth: 60, type: "string", align: "left"}, {display: "销售凭证", name: "vgbel", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "销售凭证项目", name: "vgpos", width: 140, minWidth: 60, type: "string", align: "left"}, {display: "销售凭证项目", name: "vgpos", width: 140, minWidth: 60, type: "string", align: "left"},
...@@ -31,15 +41,14 @@ function loadAcceptanceFormAckGrid() { ...@@ -31,15 +41,14 @@ function loadAcceptanceFormAckGrid() {
{display: "销售和分销凭证的项目号", name: "posnr", width: 120, minWidth: 60, type: "string", align: "left"}, {display: "销售和分销凭证的项目号", name: "posnr", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "销售组织", name: "vkorg", width: 120, minWidth: 60, type: "string", align: "left"}, {display: "销售组织", name: "vkorg", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "售达方", name: "kunag", width: 120, minWidth: 60, type: "string", align: "left"}, {display: "售达方", name: "kunag", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "名称", name: "vkorg", width: 120, minWidth: 60, type: "string", align: "left"}, {display: "名称", name: "name1", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "请款联", name: "katr6", width: 120, minWidth: 60, type: "string", align: "left"}, {display: "请款联", name: "katr6", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "交货日期", name: "lfdat", width: 120, minWidth: 60, type: "string", align: "left"}, {display: "交货日期", name: "lfdat", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "客户编号", name: "zhdlr", width: 120, minWidth: 60, type: "string", align: "left"}, {display: "客户编号", name: "zhdlr", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "客户名称", name: "zhdnm", width: 120, minWidth: 60, type: "string", align: "left"}, {display: "客户名称", name: "zhdnm", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "验收单标记人", name: "zmkp4", width: 120, minWidth: 60, type: "string", align: "left"}, {display: "验收单标记人", name: "zmkp4", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "验收单标记时间", name: "zmkt4", width: 120, minWidth: 60, type: "string", align: "left"}, {display: "验收单标记时间", name: "zmkt4", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "验收单业务标记", name: "vkorg", width: 120, minWidth: 60, type: "string", align: "left"}, {display: "验收单业务标记", name: "zacsmk", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "销售组织", name: "zacsmk", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "验收单业务标记人", name: "zmkp5", width: 120, minWidth: 60, type: "string", align: "left"}, {display: "验收单业务标记人", name: "zmkp5", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "验收单业务标记时间", name: "zmkt5", width: 120, minWidth: 60, type: "string", align: "left"}, {display: "验收单业务标记时间", name: "zmkt5", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "客户物料", name: "kdmat", width: 120, minWidth: 60, type: "string", align: "left"}, {display: "客户物料", name: "kdmat", width: 120, minWidth: 60, type: "string", align: "left"},
...@@ -116,20 +125,29 @@ function query() { ...@@ -116,20 +125,29 @@ function query() {
} }
params.zaicsm = params.zaicsm === undefined ? '' : !(params.zaicsm*1) ? '' : 'X'; params.zaicsm = params.zaicsm === undefined ? '' : !(params.zaicsm*1) ? '' : 'X';
params.zacfmk = params.zacfmk === undefined ? '' : !(params.zacfmk*1) ? '' : 'X'; params.zacfmk = params.zacfmk === undefined ? '' : !(params.zacfmk*1) ? '' : 'X';
setCriteria(params); //setCriteria(params);
// params.singleProcInstShowOneTask = $("#singleProcInstShowOneTask").is(":checked"); // params.singleProcInstShowOneTask = $("#singleProcInstShowOneTask").is(":checked");
UICtrl.gridSearch(gridManager, params); UICtrl.gridSearch(gridManager, params);
} }
function setCriteria(params) { function setCriteria(params) {
params.zacfmk='X'; params.zacfmk='';
params.vkorg='1000'; params.vkorg='';
params.kunag='0000600005'; params.kunag='';
params.vbeln_low='0080000002'; params.vbeln_low='';
params.vbeln_high='0080000005'; params.vbeln_high='';
params.zsckdt_low='20240101'; params.zsckdt_low='';
params.zsckdt_high='20240510'; params.zsckdt_high='';
params.lfdat_low='20240101'; params.lfdat_low='';
params.lfdat_high='20240510'; params.lfdat_high='';
// params.zacfmk='X';
// params.vkorg='1000';
// params.kunag='0000600005';
// params.vbeln_low='0080000002';
// params.vbeln_high='0080000005';
// params.zsckdt_low='20240101';
// params.zsckdt_high='20240510';
// params.lfdat_low='20240101';
// params.lfdat_high='20240510';
} }
/** /**
...@@ -163,3 +181,28 @@ function resetForm(obj) { ...@@ -163,3 +181,28 @@ function resetForm(obj) {
$(obj).formClean(); $(obj).formClean();
} }
function markHandler(mark){
const rows = gridManager.getSelectedRows();
if (rows.length == 0) {
Public.tip("请选择数据!");
return;
}
var params =[];
rows.forEach(rowData=>{
let loginCode = document.getElementById('loginCode').value;
let param = {
"VBELN": rowData.vbeln,
"POSNR": rowData.posnr,
"ZACFMK": mark,
"ZMKP4": loginCode,
"ZMKT4": Public.formatDate(new Date(),'%Y%M%D')
}
params.push(param);
})
Public.ajax(web_app.name + "/sapAcceptanceForm/ackAcceptanceForm.ajax", {params:$.toJSON(params)},
function (data) {
Public.tip(data);
query();
});
}
...@@ -24,8 +24,8 @@ ...@@ -24,8 +24,8 @@
<form class="hg-form ui-hide" method="post" action="" id="queryMainForm"> <form class="hg-form ui-hide" method="post" action="" id="queryMainForm">
<div class="hg-form-row"> <div class="hg-form-row">
<x:inputC name="vkorg" required="true" value="1000" label="销售组织" labelCol="1" fieldCol="2"/>
<x:inputC name="kunag" required="true" label="售达方" labelCol="1" fieldCol="2"/> <x:inputC name="kunag" required="true" label="售达方" labelCol="1" fieldCol="2"/>
<x:inputC name="vkorg" required="false" label="销售组织" labelCol="1" fieldCol="2"/>
<x:inputC name="zcors" required="false" label="做账状态-ZCORS" labelCol="1" fieldCol="2"/> <x:inputC name="zcors" required="false" label="做账状态-ZCORS" labelCol="1" fieldCol="2"/>
<x:inputC name="zacrc" required="false" label="客户验收要求" labelCol="1" fieldCol="2"/> <x:inputC name="zacrc" required="false" label="客户验收要求" labelCol="1" fieldCol="2"/>
</div> </div>
......
...@@ -36,8 +36,8 @@ ...@@ -36,8 +36,8 @@
<x:inputC name="ktext" required="false" label="名称" labelCol="2" maxLength="64" fieldCol="4"/> <x:inputC name="ktext" required="false" label="名称" labelCol="2" maxLength="64" fieldCol="4"/>
<x:inputC name="ltext" required="false" label="描述" labelCol="2" maxLength="64" fieldCol="4"/> <x:inputC name="ltext" required="false" label="描述" labelCol="2" maxLength="64" fieldCol="4"/>
<x:selectC name="kosar" required="false" label="成本中心类型" labelCol="2" dictionary="KOSAR" fieldCol="4"/> <x:selectC name="kosar" required="false" label="成本中心类型" labelCol="2" dictionary="KOSAR" fieldCol="4"/>
<x:inputC name="datab" required="false" label="有限期自" labelCol="2" wrapper="date" fieldCol="4" value="2024-01-01"/> <x:inputC name="datbi" required="false" label="有限期自" labelCol="2" wrapper="date" fieldCol="4"/>
<x:inputC name="datbi" required="false" label="有限截止日" labelCol="2" wrapper="date" fieldCol="4" value="9999-12-31"/> <x:inputC name="datab" required="false" label="有限截止日" labelCol="2" wrapper="date" fieldCol="4"/>
<x:inputC name="verak" required="false" label="负责人" labelCol="2" maxLength="64" fieldCol="4"/> <x:inputC name="verak" required="false" label="负责人" labelCol="2" maxLength="64" fieldCol="4"/>
<x:selectC name="prctr" required="false" label="利润中心" labelCol="2" dictionary="PRCTR" fieldCol="4"/> <x:selectC name="prctr" required="false" label="利润中心" labelCol="2" dictionary="PRCTR" fieldCol="4"/>
<x:inputC name="telePhone" required="false" label="联系方式" labelCol="2" maxLength="64" fieldCol="4"/> <x:inputC name="telePhone" required="false" label="联系方式" labelCol="2" maxLength="64" fieldCol="4"/>
......
...@@ -20,6 +20,13 @@ function loadCostCenterListGrid() { ...@@ -20,6 +20,13 @@ function loadCostCenterListGrid() {
}, },
deleteHandler: deleteHandler, deleteHandler: deleteHandler,
disableHandler: disableHandler, disableHandler: disableHandler,
testHandler: {
id: 'test', text: '重发', img: 'fa-clipboard', click: function () {
Public.ajax(web_app.name + "/technology/testSap.ajax",{},function (data){
})
}
}
}); });
gridManager = UICtrl.grid("#sapCostCenterListGrid", { gridManager = UICtrl.grid("#sapCostCenterListGrid", {
columns: [ columns: [
...@@ -27,8 +34,8 @@ function loadCostCenterListGrid() { ...@@ -27,8 +34,8 @@ function loadCostCenterListGrid() {
{display: "名称", name: "ktext", width: 140, minWidth: 60, type: "string", align: "left"}, {display: "名称", name: "ktext", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "描述", name: "ltext", width: 140, minWidth: 60, type: "string", align: "left"}, {display: "描述", name: "ltext", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "成本中心类型", name: "kosarTextView", width: 140, minWidth: 60, type: "string", align: "left"}, {display: "成本中心类型", name: "kosarTextView", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "有限期自", name: "datab", width: 120, minWidth: 60, type: "string", align: "left"}, {display: "有限期自", name: "datbi", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "有限截止日", name: "datbi", width: 120, minWidth: 60, type: "string", align: "left"}, {display: "有限截止日", name: "datab", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "负责人", name: "verak", width: 100, minWidth: 60, type: "string", align: "left"}, {display: "负责人", name: "verak", width: 100, minWidth: 60, type: "string", align: "left"},
{display: "利润中心", name: "prctrTextView", width: 140, minWidth: 60, type: "string", align: "left"}, {display: "利润中心", name: "prctrTextView", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "申请人", name: "personMemberName", width: 140, minWidth: 60, type: "string", align: "left"}, {display: "申请人", name: "personMemberName", width: 140, minWidth: 60, type: "string", align: "left"},
...@@ -43,9 +50,9 @@ function loadCostCenterListGrid() { ...@@ -43,9 +50,9 @@ function loadCostCenterListGrid() {
} }
}, },
{display: "消息类型", name: "typeTextView", width: 140, minWidth: 60, type: "string", align: "left"}, {display: "消息类型", name: "typeTextView", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "消息编号", name: "NUMBER", width: 140, minWidth: 60, type: "string", align: "left"}, {display: "消息编号", name: "number", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "消息文本", name: "MESSAGE", width: 140, minWidth: 60, type: "string", align: "left"}, {display: "消息文本", name: "message", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "应用程序日志", name: "LOG_NO", width: 140, minWidth: 60, type: "string", align: "left"}, {display: "应用程序日志", name: "logNo", width: 140, minWidth: 60, type: "string", align: "left"},
], ],
dataAction: "server", dataAction: "server",
url: web_app.name + '/sapCostCenter/slicedCostCenterList.ajax', url: web_app.name + '/sapCostCenter/slicedCostCenterList.ajax',
......
...@@ -287,6 +287,13 @@ var tableArray = [ ...@@ -287,6 +287,13 @@ var tableArray = [
type: 'text' type: 'text'
} }
}, },
{
display: "是否付款", name: "zepPay", width: 120, minwidth: 120, type: "string", align: "left",
editor: {
type: 'text'
}
},
{ {
display: "付款方式代码", name: "zlsch", width: 120, minwidth: 120, type: "string", align: "left", display: "付款方式代码", name: "zlsch", width: 120, minwidth: 120, type: "string", align: "left",
editor: { editor: {
......
...@@ -120,6 +120,15 @@ function getGridColumns() { ...@@ -120,6 +120,15 @@ function getGridColumns() {
{display: "价格基数", name: "rlwrt", width: "100", align: "left", type: "string", {display: "价格基数", name: "rlwrt", width: "100", align: "left", type: "string",
editor: {type: 'text', mask: '9999999',required: false} editor: {type: 'text', mask: '9999999',required: false}
}, },
{display: "需求(请求)日期", name: "badat", width: "100", align: "left", type: "string",
editor: {type: 'date'}
},
{display: "创建人", name: "ernam", width: "100", align: "left", type: "string",
editor: {type: 'text'}
},
{display: "创建人名称", name: "nameText", width: "100", align: "left", type: "string",
editor: {type: 'text'}
},
] ]
return columns; return columns;
} }
......
...@@ -25,7 +25,18 @@ function loadStatsIndicatorsListGrid() { ...@@ -25,7 +25,18 @@ function loadStatsIndicatorsListGrid() {
{display: "过账日期", name: "budat", width: 120, minWidth: 60, type: "string", align: "left"}, {display: "过账日期", name: "budat", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "凭证文本", name: "bltxt", width: 140, minWidth: 60, type: "string", align: "left"}, {display: "凭证文本", name: "bltxt", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "SAP用户名", name: "usnam", width: 140, minWidth: 60, type: "string", align: "left"}, {display: "SAP用户名", name: "usnam", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "NUMBER", name: "number", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "MESSAGE", name: "message", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "LOG_NO", name: "logNo", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "LOG_MSG_NO", name: "logMsgNo", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "MESSAGE_V1", name: "messageV1", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "MESSAGE_V2", name: "messageV2", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "MESSAGE_V3", name: "messageV3", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "MESSAGE_V4", name: "messageV4", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "ROW", name: "row", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "FIELD", name: "field", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "SYSTEM", name: "system", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "BELNR", name: "belnr", width: 140, minWidth: 60, type: "string", align: "left"},
], ],
dataAction: "server", dataAction: "server",
url: web_app.name + '/sapStatsIndicators/slicedStatsIndicatorsList.ajax', url: web_app.name + '/sapStatsIndicators/slicedStatsIndicatorsList.ajax',
......
...@@ -32,6 +32,8 @@ function loadSapWorkCenterGrid() { ...@@ -32,6 +32,8 @@ function loadSapWorkCenterGrid() {
{ display: "定员d", name: "d", width: 140, minWidth: 60, type: "string", align: "left" }, { display: "定员d", name: "d", width: 140, minWidth: 60, type: "string", align: "left" },
{ display: "生产速度e", name: "e", width: 140, minWidth: 60, type: "string", align: "left" }, { display: "生产速度e", name: "e", width: 140, minWidth: 60, type: "string", align: "left" },
{ display: "速度单位f", name: "f", width: 140, minWidth: 60, type: "string", align: "left" }, { display: "速度单位f", name: "f", width: 140, minWidth: 60, type: "string", align: "left" },
{ display: "消息类型", name: "type", width: 100, minWidth: 60, type: "string", align: "left" },
{ display: "消息文本", name: "message", width: 200, minWidth: 60, type: "string", align: "left" },
], ],
dataType: "server", dataType: "server",
url: web_app.name + '/sapWorkCenter/findWorkCenter.ajax', url: web_app.name + '/sapWorkCenter/findWorkCenter.ajax',
......
...@@ -12,6 +12,7 @@ function save() { ...@@ -12,6 +12,7 @@ function save() {
$('#submitForm').ajaxSubmit({ $('#submitForm').ajaxSubmit({
url: web_app.name + '/sapWorkCenter/saveWorkCenterDetail.ajax', url: web_app.name + '/sapWorkCenter/saveWorkCenterDetail.ajax',
success: function (data) { success: function (data) {
$("#id").val(data)
Public.successTip("保存成功!"); Public.successTip("保存成功!");
_self.close(); _self.close();
} }
......
...@@ -60,6 +60,8 @@ ...@@ -60,6 +60,8 @@
<%-- </div>--%> <%-- </div>--%>
<form class="hg-form" method="post" action="" id="submitForm"> <form class="hg-form" method="post" action="" id="submitForm">
<x:hidden name="id"/> <x:hidden name="id"/>
<x:hidden name="type"/>
<x:hidden name="message"/>
<x:title title="基本属性" name="group" hideTable="#info" /> <x:title title="基本属性" name="group" hideTable="#info" />
<div class="hg-form-cols"> <div class="hg-form-cols">
......
package com.huigou.topsun.sap.acceptanceFormAck.application.impl; package com.huigou.topsun.sap.acceptanceFormAck.application.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.DeserializationFeature; import com.fasterxml.jackson.databind.DeserializationFeature;
...@@ -9,6 +13,7 @@ import com.huigou.topsun.sap.acceptanceFormAck.application.SapAcceptanceFormAckA ...@@ -9,6 +13,7 @@ import com.huigou.topsun.sap.acceptanceFormAck.application.SapAcceptanceFormAckA
import com.huigou.topsun.sap.acceptanceFormAck.domain.SapAcceptanceFormAck; import com.huigou.topsun.sap.acceptanceFormAck.domain.SapAcceptanceFormAck;
import com.huigou.topsun.sap.common.HttpClient; import com.huigou.topsun.sap.common.HttpClient;
import com.huigou.topsun.util.TestClientHttp; import com.huigou.topsun.util.TestClientHttp;
import com.huigou.util.JSONUtil;
import com.huigou.util.SDO; import com.huigou.util.SDO;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -66,30 +71,43 @@ public class SapAcceptanceFormAckApplicationImpl implements SapAcceptanceFormAc ...@@ -66,30 +71,43 @@ public class SapAcceptanceFormAckApplicationImpl implements SapAcceptanceFormAc
// String resultStr = JSONObject.parseObject(execute).get("data").toString(); // String resultStr = JSONObject.parseObject(execute).get("data").toString();
public Set<Object> setCriteria(Map<String, Object> param) { public Set<Object> setCriteria(Map<String, Object> param) {
param.remove("pagesize");
param.remove("page");
param.remove("sortfields");
Map<String, Object> vbeln = new HashMap<>(3); Map<String, Object> vbeln = new HashMap<>(3);
vbeln.put("VBELN_LOW", param.get("vbeln_low")); vbeln.put("VBELN_LOW", param.get("vbeln_low"));
vbeln.put("VBELN_HIGH", param.get("vbeln_high")); param.remove("vbeln_low");
param.remove("vbeln_high");
//vbeln.put("VBELN_HIGH", param.get("vbeln_high"));
param.put("vbeln", new Object[] { vbeln }); param.put("vbeln", new Object[] { vbeln });
Map<String, Object> bstnk = new HashMap<>(3); Map<String, Object> bstnk = new HashMap<>(3);
bstnk.put("BSTNK_LOW", param.get("bstnk_low")); bstnk.put("BSTNK_LOW", param.get("bstnk_low"));
bstnk.put("BSTNK_HIGH", param.get("bstnk_high")); param.remove("bstnk_low");
param.remove("bstnk_high");
//bstnk.put("BSTNK_HIGH", param.get("bstnk_high"));
param.put("bstnk", new Object[] { bstnk }); param.put("bstnk", new Object[] { bstnk });
Map<String, Object> zsckdt = new HashMap<>(3); Map<String, Object> zsckdt = new HashMap<>(3);
zsckdt.put("ZSCKDT_LOW", param.get("zsckdt_low")); zsckdt.put("ZSCKDT_LOW", param.get("zsckdt_low"));
zsckdt.put("ZSCKDT_HIGH", param.get("zsckdt_high")); param.remove("zsckdt_low");
param.remove("zsckdt_high");
//zsckdt.put("ZSCKDT_HIGH", param.get("zsckdt_high"));
param.put("zsckdt", new Object[] { zsckdt }); param.put("zsckdt", new Object[] { zsckdt });
Map<String, Object> lfdat = new HashMap<>(3); Map<String, Object> lfdat = new HashMap<>(3);
lfdat.put("LFDAT_LOW", param.get("lfdat_low")); lfdat.put("LFDAT_LOW", param.get("lfdat_low"));
lfdat.put("LFDAT_HIGH", param.get("lfdat_high")); param.remove("lfdat_low");
param.remove("lfdat_high");
//lfdat.put("LFDAT_HIGH", param.get("lfdat_high"));
param.put("lfdat", new Object[] { lfdat }); param.put("lfdat", new Object[] { lfdat });
Map<String, Object> zinstnum = new HashMap<>(3); Map<String, Object> zinstnum = new HashMap<>(3);
zinstnum.put("ZINSTNUM_LOW", param.get("zinstnum_low")); zinstnum.put("ZINSTNUM_LOW", param.get("zinstnum_low"));
zinstnum.put("ZINSTNUM_HIGH", param.get("zinstnum_high")); param.remove("zinstnum_low");
param.remove("zinstnum_high");
//zinstnum.put("ZINSTNUM_HIGH", param.get("zinstnum_high"));
param.put("zinstnum", new Object[] { zinstnum }); param.put("zinstnum", new Object[] { zinstnum });
Map<String, Object> upperCaseMap = param.entrySet().stream() Map<String, Object> upperCaseMap = param.entrySet().stream()
...@@ -105,16 +123,19 @@ public class SapAcceptanceFormAckApplicationImpl implements SapAcceptanceFormAc ...@@ -105,16 +123,19 @@ public class SapAcceptanceFormAckApplicationImpl implements SapAcceptanceFormAc
@Override @Override
public String ackAcceptanceForm(SDO sdo) { public String ackAcceptanceForm(SDO sdo) {
String url = "updat_ztfifmda/updat_ztfifmda";
String string = sdo.getString("params");
String execute; String execute;
HashMap<String, Object> param = new HashMap<>(22);
param.put("data", sdo.getProperties());
try { try {
execute = TestClientHttp.execute(param, execute = httpClient.executeByJson(string, url);
"http://127.0.0.1:8080/topsun_xt_war/sapAcceptanceForm/saveAcceptanceForm.ajax"); } catch (IOException e) {
} catch (Exception e) {
throw new RuntimeException(e); throw new RuntimeException(e);
} }
return execute; List<Object> list = JSONUtil.toList(execute);
Object o = list.get(0);
Map<String, Object> map = BeanUtil.beanToMap(o);
String message = (String)map.get("MESSAGE");
return message;
} }
/** /**
......
...@@ -20,6 +20,7 @@ import java.io.InputStreamReader; ...@@ -20,6 +20,7 @@ import java.io.InputStreamReader;
import java.nio.charset.StandardCharsets; import java.nio.charset.StandardCharsets;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
...@@ -63,8 +64,8 @@ public class SapAcceptanceFormAckController extends CommonController { ...@@ -63,8 +64,8 @@ public class SapAcceptanceFormAckController extends CommonController {
public String ackAcceptanceForm() { public String ackAcceptanceForm() {
SDO sdo = this.getSDO(); SDO sdo = this.getSDO();
String msg = ackServer.ackAcceptanceForm(sdo); String s = ackServer.ackAcceptanceForm(sdo);
return success(); return toResult(s);
} }
@SkipAuth @SkipAuth
......
...@@ -31,8 +31,8 @@ public class SapAcceptanceFormAck implements Serializable { ...@@ -31,8 +31,8 @@ public class SapAcceptanceFormAck implements Serializable {
/** /**
* 客户系统验收标记 * 客户系统验收标记
*/ */
@Column(name = "ZCSAMK", nullable = true, length = 1) @Column(name = "ZACFMK", nullable = true, length = 1)
private String zcsamk; private String zacfmk;
/** /**
* 销售凭证 * 销售凭证
...@@ -259,12 +259,12 @@ public class SapAcceptanceFormAck implements Serializable { ...@@ -259,12 +259,12 @@ public class SapAcceptanceFormAck implements Serializable {
if (this == o) { return true; } if (this == o) { return true; }
if (o == null || getClass() != o.getClass()) { return false; } if (o == null || getClass() != o.getClass()) { return false; }
SapAcceptanceFormAck that = (SapAcceptanceFormAck) o; SapAcceptanceFormAck that = (SapAcceptanceFormAck) o;
return Objects.equals(uuid, that.uuid) && Objects.equals(zcsamk, that.zcsamk) && Objects.equals(vgbel, that.vgbel) && Objects.equals(vgpos, that.vgpos) && Objects.equals(matnr, that.matnr) && Objects.equals(maktx, that.maktx) && Objects.equals(vbeln, that.vbeln) && Objects.equals(posnr, that.posnr) && Objects.equals(vkorg, that.vkorg) && Objects.equals(kunag, that.kunag) && Objects.equals(name1, that.name1) && Objects.equals(katr6, that.katr6) && Objects.equals(lfdat, that.lfdat) && Objects.equals(zhdlr, that.zhdlr) && Objects.equals(zhdnm, that.zhdnm) && Objects.equals(zmkp4, that.zmkp4) && Objects.equals(zmkt4, that.zmkt4) && Objects.equals(zacsmk, that.zacsmk) && Objects.equals(zmkp5, that.zmkp5) && Objects.equals(zmkt5, that.zmkt5) && Objects.equals(kdmat, that.kdmat) && Objects.equals(postx, that.postx) && Objects.equals(bstkd, that.bstkd) && Objects.equals(zinsn, that.zinsn) && Objects.equals(zmold, that.zmold) && Objects.equals(zmapcolor, that.zmapcolor) && Objects.equals(zsegm, that.zsegm) && Objects.equals(lfimg, that.lfimg) && Objects.equals(kwmeng, that.kwmeng) && Objects.equals(zcorqt, that.zcorqt) && Objects.equals(vrkme, that.vrkme) && Objects.equals(netpr, that.netpr) && Objects.equals(waerk, that.waerk) && Objects.equals(zcnote, that.zcnote) && Objects.equals(zcrnr, that.zcrnr) && Objects.equals(zcritm, that.zcritm) && Objects.equals(zcrrsp, that.zcrrsp) && Objects.equals(zctime, that.zctime); return Objects.equals(uuid, that.uuid) && Objects.equals(zacfmk, that.zacfmk) && Objects.equals(vgbel, that.vgbel) && Objects.equals(vgpos, that.vgpos) && Objects.equals(matnr, that.matnr) && Objects.equals(maktx, that.maktx) && Objects.equals(vbeln, that.vbeln) && Objects.equals(posnr, that.posnr) && Objects.equals(vkorg, that.vkorg) && Objects.equals(kunag, that.kunag) && Objects.equals(name1, that.name1) && Objects.equals(katr6, that.katr6) && Objects.equals(lfdat, that.lfdat) && Objects.equals(zhdlr, that.zhdlr) && Objects.equals(zhdnm, that.zhdnm) && Objects.equals(zmkp4, that.zmkp4) && Objects.equals(zmkt4, that.zmkt4) && Objects.equals(zacsmk, that.zacsmk) && Objects.equals(zmkp5, that.zmkp5) && Objects.equals(zmkt5, that.zmkt5) && Objects.equals(kdmat, that.kdmat) && Objects.equals(postx, that.postx) && Objects.equals(bstkd, that.bstkd) && Objects.equals(zinsn, that.zinsn) && Objects.equals(zmold, that.zmold) && Objects.equals(zmapcolor, that.zmapcolor) && Objects.equals(zsegm, that.zsegm) && Objects.equals(lfimg, that.lfimg) && Objects.equals(kwmeng, that.kwmeng) && Objects.equals(zcorqt, that.zcorqt) && Objects.equals(vrkme, that.vrkme) && Objects.equals(netpr, that.netpr) && Objects.equals(waerk, that.waerk) && Objects.equals(zcnote, that.zcnote) && Objects.equals(zcrnr, that.zcrnr) && Objects.equals(zcritm, that.zcritm) && Objects.equals(zcrrsp, that.zcrrsp) && Objects.equals(zctime, that.zctime);
} }
@Override @Override
public int hashCode() { public int hashCode() {
return Objects.hash(uuid, zcsamk, vgbel, vgpos, matnr, maktx, vbeln, posnr, vkorg, kunag, name1, katr6, lfdat, zhdlr, zhdnm, zmkp4, zmkt4, zacsmk, zmkp5, zmkt5, kdmat, postx, bstkd, zinsn, zmold, zmapcolor, zsegm, lfimg, kwmeng, zcorqt, vrkme, netpr, waerk, zcnote, zcrnr, zcritm, zcrrsp, zctime); return Objects.hash(uuid, zacfmk, vgbel, vgpos, matnr, maktx, vbeln, posnr, vkorg, kunag, name1, katr6, lfdat, zhdlr, zhdnm, zmkp4, zmkt4, zacsmk, zmkp5, zmkt5, kdmat, postx, bstkd, zinsn, zmold, zmapcolor, zsegm, lfimg, kwmeng, zcorqt, vrkme, netpr, waerk, zcnote, zcrnr, zcritm, zcrrsp, zctime);
} }
public String getUuid() { public String getUuid() {
...@@ -275,12 +275,12 @@ public class SapAcceptanceFormAck implements Serializable { ...@@ -275,12 +275,12 @@ public class SapAcceptanceFormAck implements Serializable {
this.uuid = uuid; this.uuid = uuid;
} }
public String getZcsamk() { public String getZacfmk() {
return this.zcsamk; return this.zacfmk;
} }
public void setZcsamk(String zcsamk) { public void setZacfmk(String zacfmk) {
this.zcsamk = zcsamk; this.zacfmk = zacfmk;
} }
public String getVgbel() { public String getVgbel() {
......
...@@ -39,6 +39,12 @@ public class DefaultHttpClient extends BaseApplication implements HttpClient { ...@@ -39,6 +39,12 @@ public class DefaultHttpClient extends BaseApplication implements HttpClient {
@Override @Override
public String execute(Object param,String url) throws IOException { public String execute(Object param,String url) throws IOException {
String paramJson = new ObjectMapper().writeValueAsString(param);
return executeByJson(paramJson, url);
}
@Override
public String executeByJson(String param,String url) throws IOException {
//系统接口地址 //系统接口地址
// ip地址 // ip地址
String ip = SystemCache.getParameter("sap.service.ip", String.class); String ip = SystemCache.getParameter("sap.service.ip", String.class);
...@@ -63,9 +69,8 @@ public class DefaultHttpClient extends BaseApplication implements HttpClient { ...@@ -63,9 +69,8 @@ public class DefaultHttpClient extends BaseApplication implements HttpClient {
String usernameAndPassword = username + ":" + password; String usernameAndPassword = username + ":" + password;
post.addHeader("Authorization", "Basic " + Base64.getEncoder().encodeToString(usernameAndPassword.getBytes())); post.addHeader("Authorization", "Basic " + Base64.getEncoder().encodeToString(usernameAndPassword.getBytes()));
String requestText = new ObjectMapper().writeValueAsString(param); LOG.info("requestText={}", param);
LOG.info("requestText={}", requestText); post.setEntity(new StringEntity(param, ContentType.APPLICATION_JSON));
post.setEntity(new StringEntity(requestText, ContentType.APPLICATION_JSON));
LOG.info("post={}", post); LOG.info("post={}", post);
HttpResponse response; HttpResponse response;
String responseText = ""; String responseText = "";
......
...@@ -20,4 +20,6 @@ public interface HttpClient { ...@@ -20,4 +20,6 @@ public interface HttpClient {
*/ */
String execute(Object param,String url) throws IOException; String execute(Object param,String url) throws IOException;
public String executeByJson(String param,String url) throws IOException;
} }
...@@ -35,4 +35,6 @@ public interface CostCenterApplication { ...@@ -35,4 +35,6 @@ public interface CostCenterApplication {
Map<String, Object> slicedCostCenterList(CostCenterQueryRequest queryRequest); Map<String, Object> slicedCostCenterList(CostCenterQueryRequest queryRequest);
int updateCostCenterStatus(List<String> ids); int updateCostCenterStatus(List<String> ids);
public CostCenter sendSapCenterData(CostCenter costCenter);
} }
package com.huigou.topsun.sap.costCenter.application.impl; package com.huigou.topsun.sap.costCenter.application.impl;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectMapper;
...@@ -17,6 +18,7 @@ import com.huigou.topsun.sap.costCenter.domain.vo.CostCenterMessageVo; ...@@ -17,6 +18,7 @@ import com.huigou.topsun.sap.costCenter.domain.vo.CostCenterMessageVo;
import com.huigou.topsun.sap.costCenter.domain.vo.CostCenterReturnVo; import com.huigou.topsun.sap.costCenter.domain.vo.CostCenterReturnVo;
import com.huigou.topsun.sap.costCenter.domain.vo.CostCenterVo; import com.huigou.topsun.sap.costCenter.domain.vo.CostCenterVo;
import com.huigou.topsun.sap.costCenter.repository.CostCenterRepository; import com.huigou.topsun.sap.costCenter.repository.CostCenterRepository;
import com.huigou.topsun.sap.statsIndicators.domain.SapStatsIndicatorsResult;
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;
import com.huigou.util.ClassHelper; import com.huigou.util.ClassHelper;
...@@ -145,7 +147,14 @@ public class CostCenterApplicationImpl extends FlowBroker implements CostCenterA ...@@ -145,7 +147,14 @@ public class CostCenterApplicationImpl extends FlowBroker implements CostCenterA
BizBillStatus status = approvePassed() ? BizBillStatus.COMPLETED : BizBillStatus.ABORTED; BizBillStatus status = approvePassed() ? BizBillStatus.COMPLETED : BizBillStatus.ABORTED;
CostCenter costCenter = costCenterRepository.findOne(bizId); CostCenter costCenter = costCenterRepository.findOne(bizId);
costCenter.setStatusId(status.getId()); costCenter.setStatusId(status.getId());
this.sendSapCenterData(costCenter);
costCenterRepository.save(costCenter);
}
@Override
public CostCenter sendSapCenterData(CostCenter costCenter){
// 向SAP发送新增数据 // 向SAP发送新增数据
CostCenterReturnVo costCenterReturnVo = new CostCenterReturnVo(); CostCenterReturnVo costCenterReturnVo = new CostCenterReturnVo();
BeanUtils.copyProperties(costCenter, costCenterReturnVo); BeanUtils.copyProperties(costCenter, costCenterReturnVo);
...@@ -155,27 +164,27 @@ public class CostCenterApplicationImpl extends FlowBroker implements CostCenterA ...@@ -155,27 +164,27 @@ public class CostCenterApplicationImpl extends FlowBroker implements CostCenterA
CREATEReturnMap.put("MODE", "CREATE"); CREATEReturnMap.put("MODE", "CREATE");
ObjectMapper objectMapper = new ObjectMapper(); ObjectMapper objectMapper = new ObjectMapper();
HashMap data = objectMapper.convertValue(costCenterReturnVo, HashMap.class); List<Map<String,Object>> mapList = new ArrayList<>();
data.put("KOKRS", "BSNG");
data.put("KHINR", "BSNG");
if (costCenterReturnVo.getKosar() == "F")
data.put("MGEFL", "X");
data.put("BKZER", "X");
data.put("PKZER", "X");
data.put("BKZOB", "X");
CREATEReturnMap.put("DATA", data);
HashMap data = objectMapper.convertValue(costCenterReturnVo, HashMap.class);
//data.put("KOKRS", "BSNG");tt333333333333333333333333333333333333333333nannq
//data.put("KHINR", "BSNG");
//if (costCenterReturnVo.getKosar() == "F")
// data.put("MGEFL", "X");
//data.put("BKZER", "X");
// data.put("PKZER", "X");
//data.put("BKZOB", "X");
mapList.add(data);
CREATEReturnMap.put("DATA", mapList);
String execute = send(CREATEReturnMap); String execute = send(CREATEReturnMap);
CostCenterMessageVo costCenterMessageVo = null; CostCenterMessageVo costCenterMessageVo = null;
try { List<CostCenterMessageVo> resultList = JSONObject.parseArray(execute,CostCenterMessageVo.class);
costCenterMessageVo = new ObjectMapper().readValue(execute, CostCenterMessageVo.class); costCenterMessageVo = resultList.get(0);
} catch (JsonProcessingException e) { if (!"S".equals(costCenterMessageVo.getTYPE())) {
throw new RuntimeException(e); throw new RuntimeException("数据传输失败,请稍后手动重试!");
} }
BeanUtils.copyProperties(costCenterMessageVo, costCenter); BeanUtils.copyProperties(costCenterMessageVo, costCenter);
return costCenter;
costCenterRepository.save(costCenter);
} }
/** /**
......
...@@ -27,14 +27,14 @@ public class CostCenterReturnVo implements Serializable { ...@@ -27,14 +27,14 @@ public class CostCenterReturnVo implements Serializable {
* 有效期自 默认当年1月1日 * 有效期自 默认当年1月1日
*/ */
@JsonProperty("DATAB") @JsonProperty("DATAB")
@JsonFormat(pattern = "yyyy.MM.dd", timezone = "GTM-8") @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GTM+8")
private Date datab; private Date datab;
/** /**
* 有效截至日 默认9999.12.31 * 有效截至日 默认9999.12.31
*/ */
@JsonProperty("DATBI") @JsonProperty("DATBI")
@JsonFormat(pattern = "yyyy.MM.dd", timezone = "GTM-8") @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GTM+8")
private Date datbi; private Date datbi;
/** /**
......
...@@ -135,7 +135,7 @@ public class SapCostReimbursementDetail implements Serializable { ...@@ -135,7 +135,7 @@ public class SapCostReimbursementDetail implements Serializable {
/** /**
* 计划付款日期 * 计划付款日期
*/ */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyyMMdd")
@Column(name = "ZEP_FPLDATE") @Column(name = "ZEP_FPLDATE")
private Date zepFpldate; private Date zepFpldate;
......
package com.huigou.topsun.sap.priceMasterData.application.impl; package com.huigou.topsun.sap.priceMasterData.application.impl;
import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectMapper;
...@@ -8,6 +9,7 @@ import com.huigou.cache.SystemCache; ...@@ -8,6 +9,7 @@ import com.huigou.cache.SystemCache;
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.HttpClient; import com.huigou.topsun.sap.common.HttpClient;
import com.huigou.topsun.sap.costCenter.domain.vo.CostCenterMessageVo;
import com.huigou.topsun.sap.priceMasterData.application.SapPriceMasterDataApplication; import com.huigou.topsun.sap.priceMasterData.application.SapPriceMasterDataApplication;
import com.huigou.topsun.sap.priceMasterData.domain.SapPriceMasterData; import com.huigou.topsun.sap.priceMasterData.domain.SapPriceMasterData;
import com.huigou.topsun.sap.priceMasterData.domain.SapPriceMasterDataItem; import com.huigou.topsun.sap.priceMasterData.domain.SapPriceMasterDataItem;
...@@ -156,7 +158,7 @@ public class SapPriceMasterDataApplicationImpl extends FlowBroker implements Sap ...@@ -156,7 +158,7 @@ public class SapPriceMasterDataApplicationImpl extends FlowBroker implements Sap
List<Object> objectArrayList = new ArrayList<>(); List<Object> objectArrayList = new ArrayList<>();
objectArrayList.add(param); objectArrayList.add(param);
List<SapPriceMasterDataItem> sapPriceMasterDataItemList = null; List<SapPriceMasterDataItem> sapPriceMasterDataItemList = new ArrayList<>();
try { try {
// 调用接口,获取返回数据 // 调用接口,获取返回数据
String execute = httpClient.execute(objectArrayList, url); String execute = httpClient.execute(objectArrayList, url);
...@@ -167,9 +169,7 @@ public class SapPriceMasterDataApplicationImpl extends FlowBroker implements Sap ...@@ -167,9 +169,7 @@ public class SapPriceMasterDataApplicationImpl extends FlowBroker implements Sap
.replaceAll("KMEIN", "kmein") .replaceAll("KMEIN", "kmein")
.replaceAll("DATAB", "datab") .replaceAll("DATAB", "datab")
.replaceAll("DATBI", "datbi"); .replaceAll("DATBI", "datbi");
ObjectMapper objectMapper = new ObjectMapper(); sapPriceMasterDataItemList = JSONObject.parseArray(execute,SapPriceMasterDataItem.class);
sapPriceMasterDataItemList = objectMapper.readValue(execute, new TypeReference<List<SapPriceMasterDataItem>>() {
});
} catch (IOException e) { } catch (IOException e) {
throw new RuntimeException(e); throw new RuntimeException(e);
} }
......
package com.huigou.topsun.sap.purchaseApproval.application.impl; package com.huigou.topsun.sap.purchaseApproval.application.impl;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.huigou.context.Operator; import com.huigou.context.Operator;
import com.huigou.context.OrgUnit; import com.huigou.context.OrgUnit;
import com.huigou.context.ThreadLocalUtil; import com.huigou.context.ThreadLocalUtil;
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.purchaseApproval.application.SapPurchaseApprovalApplication; import com.huigou.topsun.sap.purchaseApproval.application.SapPurchaseApprovalApplication;
import com.huigou.topsun.sap.purchaseApproval.application.SapPurchaseApprovalItemApplication; import com.huigou.topsun.sap.purchaseApproval.application.SapPurchaseApprovalItemApplication;
import com.huigou.topsun.sap.purchaseApproval.domain.SapPurchaseApproval; import com.huigou.topsun.sap.purchaseApproval.domain.SapPurchaseApproval;
...@@ -14,6 +17,7 @@ import com.huigou.topsun.sap.purchaseApproval.domain.query.SapPurchaseApprovalQu ...@@ -14,6 +17,7 @@ import com.huigou.topsun.sap.purchaseApproval.domain.query.SapPurchaseApprovalQu
import com.huigou.topsun.sap.purchaseApproval.domain.vo.SapPurchaseApprovalItemVo; import com.huigou.topsun.sap.purchaseApproval.domain.vo.SapPurchaseApprovalItemVo;
import com.huigou.topsun.sap.purchaseApproval.domain.vo.SapPurchaseApprovalVo; import com.huigou.topsun.sap.purchaseApproval.domain.vo.SapPurchaseApprovalVo;
import com.huigou.topsun.sap.purchaseApproval.repository.SapPurchaseApprovalRepository; import com.huigou.topsun.sap.purchaseApproval.repository.SapPurchaseApprovalRepository;
import com.huigou.topsun.sap.purchaseOrder.domain.SapPurchaseOrder;
import com.huigou.uasp.bmp.common.BizBillStatus; import com.huigou.uasp.bmp.common.BizBillStatus;
import com.huigou.uasp.bmp.operator.OperatorApplication; import com.huigou.uasp.bmp.operator.OperatorApplication;
import com.huigou.uasp.bpm.FlowBroker; import com.huigou.uasp.bpm.FlowBroker;
...@@ -26,6 +30,7 @@ import com.huigou.util.SDO; ...@@ -26,6 +30,7 @@ import com.huigou.util.SDO;
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.activiti.engine.runtime.ProcessInstance; import org.activiti.engine.runtime.ProcessInstance;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
...@@ -50,6 +55,8 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa ...@@ -50,6 +55,8 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa
private WorkflowApplication workflowApplication; private WorkflowApplication workflowApplication;
@Resource @Resource
private OperatorApplication operatorApplication; private OperatorApplication operatorApplication;
@Autowired
DefaultHttpClient defaultHttpClient;
@Override @Override
protected String saveBizAndApprovalData() { protected String saveBizAndApprovalData() {
...@@ -84,6 +91,7 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa ...@@ -84,6 +91,7 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa
SapPurchaseApproval sapPurchaseApproval = sapPurchaseApprovalRepository.findOne(bizId); SapPurchaseApproval sapPurchaseApproval = sapPurchaseApprovalRepository.findOne(bizId);
sapPurchaseApproval.setStatusId(status.getId()); sapPurchaseApproval.setStatusId(status.getId());
sapPurchaseApprovalRepository.save(sapPurchaseApproval); sapPurchaseApprovalRepository.save(sapPurchaseApproval);
sendSapDate(sapPurchaseApproval,"Y");
} }
/** /**
...@@ -131,6 +139,7 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa ...@@ -131,6 +139,7 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa
SapPurchaseApproval sapPurchaseApproval = sapPurchaseApprovalRepository.findOne(bizId); SapPurchaseApproval sapPurchaseApproval = sapPurchaseApprovalRepository.findOne(bizId);
sapPurchaseApproval.setStatusId(BizBillStatus.APPLYING.getId()); sapPurchaseApproval.setStatusId(BizBillStatus.APPLYING.getId());
sapPurchaseApprovalRepository.save(sapPurchaseApproval); sapPurchaseApprovalRepository.save(sapPurchaseApproval);
sendSapDate(sapPurchaseApproval,"N");
} }
} }
...@@ -201,4 +210,34 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa ...@@ -201,4 +210,34 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa
localSdo.setOperator(operator); localSdo.setOperator(operator);
return localSdo; return localSdo;
} }
/**
* 远程调用sap接口,传递数据
*/
public void sendSapDate(SapPurchaseApproval sapPurchaseApproval, String flag) {
Map<String,Object> paramItem = new HashMap<>();
paramItem.put("banfn",sapPurchaseApproval.getBanfn());
paramItem.put("BEDNR",sapPurchaseApproval.getBillCode());
paramItem.put("frgkz","10");
paramItem.put("bnfpo","10");
paramItem.put("flag",flag);
List<Map<String,Object>> paramList= new ArrayList<>();
paramList.add(paramItem);
Map<String,Object> param = new HashMap<>();
param.put("MODE","PR");
param.put("DATA",paramList);
ObjectMapper objectMapper = new ObjectMapper();
String url = "pass_approval/approval";
try {
String result = defaultHttpClient.execute(param, url);
List<Map<String, Object>> resultList = objectMapper.readValue(result, new TypeReference<List<Map<String, Object>>>() {});
Map<String, Object> resultMap = resultList.get(0);
if (!"S".equals(resultMap.get("TYPE"))) {
throw new RuntimeException("数据传输失败,请稍后手动重试!"+resultMap.get("MESSAGE"));
}
} catch (Exception e) {
throw new RuntimeException("数据传输失败请检查数据后重试!"+e.getMessage());
}
}
} }
...@@ -160,5 +160,23 @@ public class SapPurchaseApprovalItem extends AbstractEntity { ...@@ -160,5 +160,23 @@ public class SapPurchaseApprovalItem extends AbstractEntity {
@Column(name = "RLWRT") @Column(name = "RLWRT")
private BigDecimal rlwrt; private BigDecimal rlwrt;
/**
* 0需求(请求)日期
*/
@Column(name = "BADAT")
private Date badat;
/**
* 负责创建对象的人员姓名
*/
@Column(name = "ERNAM")
private String ernam;
/**
* 完整的人员名称
*/
@Column(name = "NAME_TEXT")
private String nameText;
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
} }
\ No newline at end of file
...@@ -129,4 +129,19 @@ public class SapPurchaseApprovalItemVo { ...@@ -129,4 +129,19 @@ public class SapPurchaseApprovalItemVo {
*/ */
private BigDecimal rlwrt; private BigDecimal rlwrt;
/**
* 0需求(请求)日期
*/
private Date badat;
/**
* 负责创建对象的人员姓名
*/
private String ernam;
/**
* 完整的人员名称
*/
private String nameText;
} }
\ No newline at end of file
package com.huigou.topsun.sap.statsIndicators.application.impl; package com.huigou.topsun.sap.statsIndicators.application.impl;
import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectMapper;
...@@ -22,6 +23,7 @@ import com.huigou.uasp.bmp.common.BizBillStatus; ...@@ -22,6 +23,7 @@ import com.huigou.uasp.bmp.common.BizBillStatus;
import com.huigou.uasp.bpm.FlowBroker; import com.huigou.uasp.bpm.FlowBroker;
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.mchange.v1.util.MapUtils; import com.mchange.v1.util.MapUtils;
import lombok.SneakyThrows; import lombok.SneakyThrows;
...@@ -194,22 +196,19 @@ public class SapStatsIndicatorsApplicationImpl extends FlowBroker implements Sap ...@@ -194,22 +196,19 @@ public class SapStatsIndicatorsApplicationImpl extends FlowBroker implements Sap
list.add(map); list.add(map);
} }
String url = "cud_kb31n/kb31n"; String url = "cud_kb31n/kb31n";
SapStatsIndicatorsResult sapStatsIndicatorsResult = null; SapStatsIndicatorsResult sapStatsIndicatorsResult = new SapStatsIndicatorsResult();
try { try {
String result = defaultHttpClient.execute(list, url); String result = defaultHttpClient.execute(list, url);
List<SapStatsIndicatorsResult> resultList = objectMapper.readValue(result, new TypeReference<List<SapStatsIndicatorsResult>>() { List<SapStatsIndicatorsResult> resultList = JSONObject.parseArray(result,SapStatsIndicatorsResult.class);
}); //List<SapStatsIndicatorsResult> resultList = objectMapper.readValue(result, new TypeReference<List<SapStatsIndicatorsResult>>() {});
sapStatsIndicatorsResult = resultList.get(0); sapStatsIndicatorsResult = resultList.get(0);
if (!"s".equals(sapStatsIndicatorsResult.getType())) { if (!"s".equals(sapStatsIndicatorsResult.getTYPE())) {
throw new RuntimeException("数据传输失败,请稍后手动重试!"); throw new RuntimeException("数据传输失败,请稍后手动重试!");
} }
} catch (IOException e) { } catch (IOException e) {
if (sapStatsIndicatorsResult == null) { sapStatsIndicatorsResult.setTYPE("A");
sapStatsIndicatorsResult = new SapStatsIndicatorsResult();
}
sapStatsIndicatorsResult.setType("A");
throw new RuntimeException("sap服务器无响应请稍后手动重试!"); throw new RuntimeException("sap服务器无响应请稍后手动重试!");
} finally { } finally {
SapStatsIndicatorsResult statsIndicatorsId = sapStatsIndicatorsResultRepository.findByStatsIndicatorsId(bizId); SapStatsIndicatorsResult statsIndicatorsId = sapStatsIndicatorsResultRepository.findByStatsIndicatorsId(bizId);
......
...@@ -40,91 +40,91 @@ public class SapStatsIndicatorsResult implements Serializable { ...@@ -40,91 +40,91 @@ public class SapStatsIndicatorsResult implements Serializable {
* 消息类型 * 消息类型
*/ */
@Column(name = "TYPE") @Column(name = "TYPE")
private String type; private String TYPE;
/** /**
* 消息类 * 消息类
*/ */
@Column(name = "ID") @Column(name = "ID")
private String id; private String ID;
/** /**
* 消息编号 * 消息编号
*/ */
@Column(name = "NUMBER") @Column(name = "NUMBER")
private Integer number; private Integer NUMBER;
/** /**
* 消息文本 * 消息文本
*/ */
@Column(name = "MESSAGE") @Column(name = "MESSAGE")
private String message; private String MESSAGE;
/** /**
* 应用程序日志:日志编号 * 应用程序日志:日志编号
*/ */
@Column(name = "LOG_NO") @Column(name = "LOG_NO")
private String logNo; private String LOG_NO;
/** /**
* 应用程序日志:内部消息序列号 * 应用程序日志:内部消息序列号
*/ */
@Column(name = "LOG_MSG_NO") @Column(name = "LOG_MSG_NO")
private Integer logMsgNo; private Integer LOG_MSG_NO;
/** /**
* 消息变量 * 消息变量
*/ */
@Column(name = "MESSAGE_V1") @Column(name = "MESSAGE_V1")
private String messageV1; private String MESSAGE_V1;
/** /**
* 消息变量 * 消息变量
*/ */
@Column(name = "MESSAGE_V2") @Column(name = "MESSAGE_V2")
private String messageV2; private String MESSAGE_V2;
/** /**
* 消息变量 * 消息变量
*/ */
@Column(name = "MESSAGE_V3") @Column(name = "MESSAGE_V3")
private String messageV3; private String MESSAGE_V3;
/** /**
* 消息变量 * 消息变量
*/ */
@Column(name = "MESSAGE_V4") @Column(name = "MESSAGE_V4")
private String messageV4; private String MESSAGE_V4;
/** /**
* 参数名称 * 参数名称
*/ */
@Column(name = "PARAMETER") @Column(name = "PARAMETER")
private String parameter; private String PARAMETER;
/** /**
* 参数中的行 * 参数中的行
*/ */
@Column(name = "`ROW`") @Column(name = "`ROW`")
private Integer row; private Integer ROW;
/** /**
* 参数中的字段 * 参数中的字段
*/ */
@Column(name = "FIELD") @Column(name = "FIELD")
private String field; private String FIELD;
/** /**
* 引发消息的逻辑系统 * 引发消息的逻辑系统
*/ */
@Column(name = "`SYSTEM`") @Column(name = "`SYSTEM`")
private String system; private String SYSTEM;
/** /**
* 凭证编号 * 凭证编号
*/ */
@Column(name = "BELNR") @Column(name = "BELNR")
private String belnr; private String BELNR;
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
} }
\ No newline at end of file
...@@ -17,7 +17,7 @@ public interface SapWorkCenterApplication { ...@@ -17,7 +17,7 @@ public interface SapWorkCenterApplication {
String queryWorkCenter() throws JsonProcessingException; String queryWorkCenter() throws JsonProcessingException;
Map<String, Object> saveWorkCenterDetail(SDO sdo); String saveWorkCenterDetail(SDO sdo);
boolean saveWorkCenter(SapWorkCenter workCenter); boolean saveWorkCenter(SapWorkCenter workCenter);
} }
...@@ -5,11 +5,13 @@ import com.fasterxml.jackson.core.JsonProcessingException; ...@@ -5,11 +5,13 @@ import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectMapper;
import com.huigou.topsun.sap.common.HttpClient;
import com.huigou.topsun.sap.workcenter.repository.SapWorkCenterRepository; import com.huigou.topsun.sap.workcenter.repository.SapWorkCenterRepository;
import com.huigou.topsun.sap.workcenter.application.SapWorkCenterApplication; import com.huigou.topsun.sap.workcenter.application.SapWorkCenterApplication;
import com.huigou.topsun.sap.workcenter.domain.SapWorkCenter; import com.huigou.topsun.sap.workcenter.domain.SapWorkCenter;
import com.huigou.topsun.util.PersistTool; import com.huigou.topsun.util.PersistTool;
import com.huigou.topsun.util.TestClientHttp; import com.huigou.topsun.util.TestClientHttp;
import com.huigou.util.JSONUtil;
import com.huigou.util.SDO; import com.huigou.util.SDO;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -33,6 +35,8 @@ public class SapWorkCenterApplicationImpl implements SapWorkCenterApplication { ...@@ -33,6 +35,8 @@ public class SapWorkCenterApplicationImpl implements SapWorkCenterApplication {
private final PersistTool persist; private final PersistTool persist;
private final SapWorkCenterRepository rep; private final SapWorkCenterRepository rep;
private final HttpClient httpClient;
private final SapWorkCenterRepository sapWorkCenterRepository;
/*** /***
* @description 发送请求到 SAP 系统,获取工作中心数据 * @description 发送请求到 SAP 系统,获取工作中心数据
...@@ -46,7 +50,7 @@ public class SapWorkCenterApplicationImpl implements SapWorkCenterApplication { ...@@ -46,7 +50,7 @@ public class SapWorkCenterApplicationImpl implements SapWorkCenterApplication {
HashMap<String, Object> param = new HashMap<>(12); HashMap<String, Object> param = new HashMap<>(12);
List<SapWorkCenter> workCenters; List<SapWorkCenter> workCenters;
try { try {
execute = TestClientHttp.execute(param, "http://127.0.0.1:8080/topsun_xt_war/sapWorkCenter/queryWorkCenter.ajax"); execute = TestClientHttp.execute(param, "http://192.168.3.91:8081/topsun-xt/sapWorkCenter/queryWorkCenter.ajax");
String resultStr = JSONObject.parseObject(execute).get("data").toString(); String resultStr = JSONObject.parseObject(execute).get("data").toString();
workCenters = objectMapper.readValue(resultStr, new TypeReference<List<SapWorkCenter>>() {}); workCenters = objectMapper.readValue(resultStr, new TypeReference<List<SapWorkCenter>>() {});
} catch (Exception e) { } catch (Exception e) {
...@@ -67,16 +71,24 @@ public class SapWorkCenterApplicationImpl implements SapWorkCenterApplication { ...@@ -67,16 +71,24 @@ public class SapWorkCenterApplicationImpl implements SapWorkCenterApplication {
* @createDate 2024/1/18 11:20 * @createDate 2024/1/18 11:20
*/ */
@Override @Override
public Map<String, Object> saveWorkCenterDetail(SDO sdo) { public String saveWorkCenterDetail(SDO sdo) {
String execute; String execute;
HashMap<String, Object> param = new HashMap<>(12); HashMap<String, Object> param = new HashMap<>(12);
SapWorkCenter sapWorkCenter = sdo.toObject(SapWorkCenter.class);
param.put("data", sdo.getProperties()); param.put("data", sdo.getProperties());
try { try {
execute = TestClientHttp.execute(param, "http://127.0.0.1:8080/topsun_xt_war/sapWorkCenter/saveWorkCenter.ajax");
execute = httpClient.execute(param,"http://192.168.3.109:8000/sap/bc/erp_ep/cud_arbpl/arbpl_data?sap-client=300");
List<Map> maps = JSONObject.parseArray(execute, Map.class);
String message = (String)maps.get(0).get("MESSAGE");
String type = (String)maps.get(0).get("TYPE");
sapWorkCenter.setType(type);
sapWorkCenter.setMessage(message);
sapWorkCenterRepository.save(sapWorkCenter);
} catch (Exception e) { } catch (Exception e) {
throw new RuntimeException(e); throw new RuntimeException(e);
} }
return null; return sapWorkCenter.getId();
} }
@Override @Override
......
...@@ -62,8 +62,8 @@ public class SapWorkCenterLogController extends CommonController { ...@@ -62,8 +62,8 @@ public class SapWorkCenterLogController extends CommonController {
public String saveWorkCenterDetail() { public String saveWorkCenterDetail() {
SDO sdo = this.getSDO(); SDO sdo = this.getSDO();
Map<String, Object> map = centerServer.saveWorkCenterDetail(sdo); String id = centerServer.saveWorkCenterDetail(sdo);
return toResult(map); return toResult(id);
} }
......
...@@ -11,6 +11,7 @@ import com.huigou.topsun.common.NumberToStringSerializer; ...@@ -11,6 +11,7 @@ import com.huigou.topsun.common.NumberToStringSerializer;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.EqualsBuilder; import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder; import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.hibernate.annotations.GenericGenerator;
/** /**
* @author YourUserName * @author YourUserName
...@@ -26,7 +27,8 @@ public class SapWorkCenter implements Serializable { ...@@ -26,7 +27,8 @@ public class SapWorkCenter implements Serializable {
* 主键id * 主键id
*/ */
@Id @Id
@Column(name = "id", nullable = false, length = 32) @GeneratedValue(generator = "system-uuid")
@GenericGenerator(name = "system-uuid", strategy = "guid")
private String id; private String id;
/** /**
...@@ -389,6 +391,28 @@ public class SapWorkCenter implements Serializable { ...@@ -389,6 +391,28 @@ public class SapWorkCenter implements Serializable {
@Column(name = "UPDKZ", nullable = true, length = 255) @Column(name = "UPDKZ", nullable = true, length = 255)
private String updkz; private String updkz;
@Column(name = "TYPE")
private String type;
@Column(name = "MESSAGE")
private String message;
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
@Override @Override
public boolean equals(Object o) { public boolean equals(Object o) {
if (this == o) { return true; } if (this == o) { return true; }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment