Commit 1aebcb65 authored by 鲁鑫's avatar 鲁鑫

采购信息记录增加字段,增加复制明细的功能

parent e69d95c5
......@@ -11,7 +11,9 @@ function bindEvent() {
function initItemGrid() {
var toolbarOptions = UICtrl.getDefaultToolbarOptions({
addHandler: function(){
UICtrl.addGridRow(itemGridManager);
UICtrl.addGridRow(itemGridManager,{
datab: $("#fillinDate").val()
});
},
deleteHandler: function (){
var _grid = UICtrl.getGridManager('#maingrid');
......@@ -30,8 +32,8 @@ function initItemGrid() {
columns: getGridColumns(),
dataAction: 'server',
url: web_app.name + '/sapPurchaseInfoRecordItem/querySapPurchaseInfoRecordItems.ajax',
parms:{sapPurchaseInfoRecordId:getId()},
height: '99.6%',
parms:{sapPurchaseInfoRecordId:getId(),ids:$("#ids").val()},
height: '94%',
heightDiff: -4,
sortName: 'id',
sortOrder: 'asc',
......@@ -66,7 +68,7 @@ function getGridColumns() {
// editor: {required: false, type: "text"}
// },
{display: "采购信息记录号", name: "infnr", width: "100", align: "left", type: "string",
//editor: {required: false, type: "text"}
editor: {required: false, type: "text"}
},
{display: "工厂", name: "werksName", width: "200", align: "left", type: "string",
editor: {
......@@ -104,26 +106,25 @@ function getGridColumns() {
}
},
{display: "供应商", name: "lifnr", width: "200", align: "left", type: "string",
editor: {required: true, type: "text"}
// editor: {
// required: true, type: "select",
// data: {
// type: 'system',
// name: "dictionary",
// getParam: function (item) {
// return {fieldName: "LIFNR"}
// },
// back: {
// LIFNR: "lifnr",
// NAME1: "lifnrName",
// }
// },
// }
},
{display: "供应商物料编码", name: "idnlf", width: "100", align: "left", type: "string",
editor: {
required: true, type: "select",
data: {
type: 'suppliers',
name: "selectSuppliers",
getParam: function (item) {
//return {fieldName: "LIFNR"}
},
back: {
partner: "lifnr",
nameOrg1: "name1",
}
},
}
},
{display: "名称1", name: "name1", width: "300", align: "left", type: "string",
editor: {required: false, type: "text"}
},
{display: "名称1", name: "name1", width: "100", align: "left", type: "string",
{display: "供应商物料编码", name: "idnlf", width: "200", align: "left", type: "string",
editor: {required: false, type: "text"}
},
{display: "物料编码", name: "matnr", width: "200", align: "left", type: "string",
......@@ -146,9 +147,9 @@ function getGridColumns() {
EKNAM: "ekgrpName",
PEINH: "peinh",
MEINS: "meins",
MSEHL:"meinsName",
MEINS:"bprme",
MSEHL:"bprmeName",
MSEHL: "meinsName",
//MEINS: "bprme",
//MSEHL: "bprmeName",
}
},
}
......@@ -202,28 +203,23 @@ function getGridColumns() {
},
}
},
{display: "生产版本", name: "verid", width: "200", align: "left", type: "string",
editor: {required: false, type: "text"}
},
// {display: "生产版本", name: "verid", width: "200", align: "left", type: "string",
// editor: {required: false, type: "text"}
// },
{display: "净价", name: "netpr", width: "100", align: "left", type: "string",
editor: {type: 'text', mask: '9999999.99'}
},
{display: "货币码", name: "waers", width: "100", align: "left", type: "string",
// editor: {
// required: true, type: "select",
// data: {
// type: 'system',
// name: "dictionary",
// getParam: function (item) {
// return {fieldName: "WAERS"}
// },
// back: {
// WAERS: "waers",
// EKGRP: "waersName"
// }
// },
// }
editor: {required: false, type: "text"}
{display: "货币码", name: "waersTextView", width: "100", align: "left", type: "string",
editor: {
type: 'dictionary',
data: {name: 'waers'},
textField: 'waersTextView',
valueField: 'waers',
required: true,
render: function (item) {
return item.waersTextView;
}
},
},
{display: "价格单位", name: "peinh", width: "100", align: "left", type: "string",
editor: {required: false, type: "text"}
......@@ -244,6 +240,9 @@ function getGridColumns() {
},
}
},
{display: "标准采购订单数量", name: "norbm", width: "120", align: "left", type: "string",
editor: {type: 'text', mask: '9999999.99'}
},
{display: "基本计量单位", name: "meinsName", width: "100", align: "left", type: "string",
editor: {
required: true, type: "select",
......@@ -266,8 +265,17 @@ function getGridColumns() {
{display: "单位转换分子", name: "umrez", width: "100", align: "left", type: "string",
editor: {type: 'text', mask: '9999999.99'}
},
{display: "销售/购买税代码", name: "mwskz", width: "100", align: "left", type: "string",
editor: {type: "text", required: false,}
{display: "销售/购买税代码", name: "mwskzTextView", width: "100", align: "left", type: "string",
editor: {
type: 'dictionary',
data: {name: 'mwskz'},
textField: 'mwskzTextView',
valueField: 'mwskz',
required: false,
render: function (item) {
return item.mwskzTextView;
}
},
},
{display: "开始生效日期", name: "datab", width: "100", align: "left", type: "string",
editor: {type: 'date'},
......@@ -275,9 +283,6 @@ function getGridColumns() {
{display: "有效期至日期", name: "datbi", width: "100", align: "left", type: "string",
editor: {type: 'date'},
},
{display: "等级数量", name: "kstbm", width: "100", align: "left", type: "string",
editor: {type: 'text', mask: '9999999.99'}
},
{display: "销售员", name: "verkf", width: "100", align: "left", type: "string",
editor: {required: false, type: "text"}
},
......@@ -285,11 +290,43 @@ function getGridColumns() {
editor: {required: false, type: "text"}
},
{display: "原产地国", name: "urzla", width: 150, minWidth: 60, type: "string", align: "center",
editor: {required: false, type: "text"}
{display: "原产地国", name: "urzlaTextView", width: 150, minWidth: 60, type: "string", align: "center",
editor: {
required: false, type: "select",
data: {
type: 'system',
name: "dictionarySelect",
getParam: function (item) {
return {fieldName: "country",displayNames:"国家",displayLens:"180"}
},
back: {
value: "urzla",
name:"urzlaTextView"
}
},
}
},
{display: "地区", name: "regio", width: 150, minWidth: 60, type: "string", align: "center",
editor: {required: false, type: "text"}
{display: "地区", name: "regioName", width: 150, minWidth: 60, type: "string", align: "center",
editor: {
required: false, type: "select",
data: {
type: 'system',
name: "getArea",
getParam: function (item) {
if (Public.isBlank(item.urzla)){
Public.tip("请先选择原产地国")
return false;
}
return {
LAND1: item.urzla
}
},
back: {
BLAND: "regio",
BEZEI: "regioName",
}
},
}
},
{display: "删除标志", name: "loekzTextView", width: 150, minWidth: 60, type: "string", align: "center",
editor: {
......@@ -306,12 +343,43 @@ function getGridColumns() {
{display: "排序字段", name: "sortl", width: 150, minWidth: 60, type: "string", align: "center",
editor: {required: false, type: "text"}
},
{display: "标准采购订单数量", name: "norbm", width: "120", align: "left", type: "string",
{display: "最小采购订单数量", name: "minbm", width: "120", align: "left", type: "string",
editor: {type: 'text', mask: '9999999.99'}
},
{display: "最小采购订单数量", name: "minbm", width: "120", align: "left", type: "string",
{display: "计划交货时间(天)", name: "aplfz", width: "150", align: "left", type: "string",
editor: {type: 'text', mask: '9999999.99'}
},
// {display: "业务标识", name: "zflag", width: 150, minWidth: 60, type: "string", align: "center",
// editor: {required: false, type: "text"}
// },
{display: '基于收货的发票验证', name: "webreTextView", width: "100", align: "left", type: "string",
editor: {
type: 'dictionary',
data: {name: 'webre'},
textField: 'webreTextView',
valueField: 'webre',
required: false,
render: function (item) {
return item.webreTextView;
}
},
},
// {display: "条件类型", name: "kschl", width: "100", align: "left", type: "string",
// editor: {type: 'text', required: false}
// },
{display: "价格有效至", name: "prdat", width: "100", align: "left", type: "string",hide:true,
//editor: {type: 'date', required: false}
render: function (item){
return item.prdat = item.datbi
}
},
// {display: "订单价格单位转换为订单单位的分母", name: "bpumn", width: "100", align: "left", type: "string",
// editor: {type: 'text', mask: '9999999.99'}
// },
// {display: "订单价格单位转换为订单单位的分子", name: "bpumz", width: "100", align: "left", type: "string",
// editor: {type: 'text', mask: '9999999.99'}
// },
{display: "等级类型", name:"stfkzTextView", width: "200", align: "left", type: "string",
editor: {
type: 'dictionary',
......@@ -324,41 +392,38 @@ function getGridColumns() {
}
},
},
{display: "计划交货时间(天)", name: "aplfz", width: "150", align: "left", type: "string",
editor: {type: 'text', mask: '9999999.99'}
},
{display: "业务标识", name: "zflag", width: 150, minWidth: 60, type: "string", align: "center",
editor: {required: false, type: "text"}
},
{display: '基于收货的发票验证', name: "webre", width: "100", align: "left", type: "string",
editor: {required: false, type: "text"}
{display: "条件等级计量单位", name: "konms", width: "100", align: "left", type: "string",
//editor: {type: 'text'},
render: function (item){
if (Public.isNotBlank(item.bprme)){
return item.konms = item.bprme
}else {
return item.konms = item.meins
}
}
},
{display: "条件类型", name: "kschl", width: "100", align: "left", type: "string",
editor: {type: 'text', required: false}
{display: "等级数量1", name: "kstbm", width: "100", align: "left", type: "string",
editor: {type: 'text', mask: '9999999.99'}
},
{display: "价格有效至", name: "prdat", width: "100", align: "left", type: "string",
editor: {type: 'date', required: false}
{display: "等级金额1", name: "kbetr", width: "100", align: "left", type: "string",
editor: {type: 'text', mask: '9999999.99'}
},
{display: "订单价格单位转换为订单单位的分母", name: "bpumn", width: "100", align: "left", type: "string",
{display: "等级数量2", name: "kstbm2", width: "100", align: "left", type: "string",
editor: {type: 'text', mask: '9999999.99'}
},
{display: "订单价格单位转换为订单单位的分子", name: "bpumz", width: "100", align: "left", type: "string",
{display: "等级金额2", name: "kbetr2", width: "100", align: "left", type: "string",
editor: {type: 'text', mask: '9999999.99'}
},
{display: "条件等级计量单位", name: "konms", width: "100", align: "left", type: "string",
editor: {type: 'text'}
{display: "等级数量3", name: "kstbm3", width: "100", align: "left", type: "string",
editor: {type: 'text', mask: '9999999.99'}
},
{display: "价格", name: "kbetr", width: "100", align: "left", type: "string",
{display: "等级金额3", name: "kbetr3", width: "100", align: "left", type: "string",
editor: {type: 'text', mask: '9999999.99'}
},
{
display: "传输日期", name: "sendTime", width: "100", align: "left", type: "string",
editor: {type: 'date'}
}
// {
// display: "传输日期", name: "sendTime", width: "100", align: "left", type: "string",
// editor: {type: 'date'}
// }
]
return columns;
}
......
......@@ -25,6 +25,7 @@
<x:hidden name="personMemberId"/>
<x:hidden name="personMemberName"/>
<x:hidden name="statusId"/>
<x:hidden name="ids"/>
<div class="hg-form-cols">
<div class="hg-form-row">
</div>
......
......@@ -2,7 +2,7 @@ var purchaseInfoRecordGridManager = null, refreshFlag = false, _roleId = null, p
$(document).ready(function () {
initUI();
initPurchaseListGrid();
bindEvent();
}
);
......@@ -10,133 +10,92 @@ function initUI() {
UICtrl.initDefaultLayout();
}
function bindEvent(){
$('#werksName').searchbox({
type: "system", name: "dictionary",
getParam: function (item) {
return {fieldName: "WERKS"}
},
onChange: function (value, data) {
$('#werks').val(data.WERKS);
$('#werksName').val(data.NAME1);
}
});
$('#name1').searchbox({
type: "suppliers", name: "selectSuppliers",
getParam: function (item) {
//return {fieldName: "WERKS"}
},
onChange: function (value, data) {
$('#lifnr').val(data.partner);
$('#name1').val(data.partner);
}
});
}
function initPurchaseListGrid() {
var toolbarOptions = UICtrl.getDefaultToolbarOptions({
addHandler: addHandler,
copyHandler:{
id: 'copyHandler', text: "复制", img:'fa-clipboard', click: function(){
copyQualityInfoRecord();
}
}
});
purchaseInfoRecordGridManager = UICtrl.grid('#purchaseInfoRecordGrid', {
columns: [
{display: "状态", name: "statusTextView", width: "100", align: "left", type: "string"}
, {display: "id", name: "id", width: "140", align: "left", type: "string", hide: true}
, {display: "采购信息记录编号", name: "billCode", width: 150, minWidth: 60, type: "string", align: "center"}
, {display: "消息类型", name: "typeTextView", width: 150, minWidth: 60, type: "string", align: "center"}
, {display: "消息文本", name: "message", width: 300, minWidth: 60, type: "string", align: "center"}
, {display: "申请人", name: "personMemberName", width: 150, minWidth: 60, type: "string", align: "center"}
, {display: "申请部门", name: "deptName", width: 150, minWidth: 60, type: "string", align: "center"}
, {display: "申请日期", name: "fillinDate", width: 150, minWidth: 60, type: "date", align: "center"}
, {display: "语言", name: "zyy", width: "80", align: "left", type: "string"},
{
display: "供应商", name: "lifnr", width: "100", align: "left", type: "string",
},
{
display: "物料编码", name: "matnr", width: "100", align: "left", type: "string",
},
{
display: "采购信息记录", name: "infnr", width: "100", align: "left", type: "string",
},
{
display: "信息类别标识", name: "esokz", width: "200", align: "left", type: "string",
},
{
display: "销售员", name: "verkf", width: "100", align: "left", type: "string",
},
{
display: "电话", name: "telf1", width: "100", align: "left", type: "string",
},
{
display: "订单单位", name: "meins", width: "200", align: "left", type: "string",
},
{
display: "订单单位到基本单位转换的分母", name: "umren", width: "200", align: "left", type: "string",
},
{
display: "有关订货价格单位转换为基本单位的分子",
name: "umrez",
width: "100",
align: "left",
type: "string",
},
{
display: "原产地国", name: "urzla", width: 150, minWidth: 60, type: "string", align: "center",
},
{
display: "业务标识", name: "zflag", width: 150, minWidth: 60, type: "string", align: "center",
},
{
display: "删除标志", name: "loekz", width: 150, minWidth: 60, type: "string", align: "center",
},
{
display: "采购组织", name: "ekorg", width: "100", align: "left", type: "string",
},
{
display: "工厂", name: "werks", width: "100", align: "left", type: "string",
},
{
display: "计划交货时间", name: "aplfz", width: "80", align: "left", type: "string",
},
{
display: "采购组", name: "ekgrp", width: "100", align: "left", type: "string",
},
{
display: "标准数量", name: "norbm", width: "80", align: "left", type: "string",
},
{
display: "最小订单数量", name: "minbm", width: "100", align: "left", type: "string",
},
{
display: "极限过度发货(%)", name: "a", width: "80", align: "left", type: "string",
},
{
display: "税代码", name: "mwskz", width: "100", align: "left", type: "string",
},
{
display: '基于收货的发票验证', name: "webre", width: "100", align: "left", type: "string",
},
{
display: "净价", name: "b", width: "100", align: "left", type: "string",
},
{
display: "货币码", name: "waers", width: "100", align: "left", type: "string",
},
{
display: "价格单位", name: "peinh", width: "200", align: "left", type: "string",
},
{
display: "订单价格单位(采购)", name: "bprme", width: "90", align: "left", type: "string",
},
{
display: "条件类型", name: "kschl", width: "100", align: "left", type: "string",
},
{
display: "价格有效至", name: "prdat", width: "100", align: "left", type: "string",
},
{
display: "订单价格单位转换为订单单位的分母", name: "bpumn", width: "100", align: "left", type: "string",
},
{
display: "订单价格单位转换为订单单位的分子", name: "bpumz", width: "100", align: "left", type: "string",
},
{
display: "删除标志(采购组织级)", name: "c", width: "100", align: "left", type: "string",
},
{
display: "条件记录有效起始日", name: "datab", width: "100", align: "left", type: "string",
},
{
display: "条件记录有效截止日期", name: "datbi", width: "100", align: "left", type: "string",
},
{
display: "等级数量", name: "kstbm", width: "100", align: "left", type: "string",
},
{
display: "条件等级计量单位", name: "konms", width: "100", align: "left", type: "string",
},
{
display: "价格", name: "kbetr", width: "100", align: "left", type: "string",
},
{
display: "传输日期", name: "sendTime", width: "100", align: "left", type: "string",
}
{display: "状态", name: "statusTextView", width: "100", align: "left", type: "string"},
{display: "id", name: "id", width: "140", align: "left", type: "string", hide: true},
{display: "采购信息记录编号", name: "billCode", width: 150, minWidth: 60, type: "string", align: "center"},
{display: "消息类型", name: "typeTextView", width: 150, minWidth: 60, type: "string", align: "center"},
{display: "消息文本", name: "message", width: 300, minWidth: 60, type: "string", align: "center"},
{display: "工厂", name: "werksName", width: "200", align: "left", type: "string"},
{display: "采购组织", name: "ekorgName", width: "200", align: "left", type: "string"},
{display: "供应商", name: "lifnr", width: "100", align: "left", type: "string"},
{display: "名称1", name: "name1", width: "300", align: "left", type: "string"},
{display: "供应商物料编码", name: "idnlf", width: "200", align: "left", type: "string"},
{display: "物料编码", name: "matnr", width: "150", align: "left", type: "string"},
{display: "物料描述", name: "maktx", width: "300", align: "left", type: "string"},
{display: "物料组", name: "matklName", width: "150", align: "left", type: "string"},
{display: "采购信息记录分类", name: "esokzTextView", width: "200", align: "left", type: "string"},
{display: "采购组", name: "ekgrpName", width: "200", align: "left", type: "string"},
{display: "净价", name: "netpr", width: "100", align: "left", type: "string"},
{display: "货币码", name: "waersTextView", width: "100", align: "left", type: "string",},
{display: "价格单位", name: "peinh", width: "100", align: "left", type: "string"},
{display: "订单价格单位(采购)", name: "bprmeName", width: "90", align: "left", type: "string"},
{display: "标准采购订单数量", name: "norbm", width: "120", align: "left", type: "string"},
{display: "基本计量单位", name: "meinsName", width: "100", align: "left", type: "string"},
{display: "单位转换分母", name: "umren", width: "100", align: "left", type: "string"},
{display: "单位转换分子", name: "umrez", width: "100", align: "left", type: "string"},
{display: "销售/购买税代码", name: "mwskzTextView", width: "100", align: "left", type: "string"},
{display: "开始生效日期", name: "datab", width: "100", align: "left", type: "string"},
{display: "有效期至日期", name: "datbi", width: "100", align: "left", type: "string"},
{display: "销售员", name: "verkf", width: "100", align: "left", type: "string"},
{display: "电话", name: "telf1", width: "100", align: "left", type: "string"},
{display: "原产地国", name: "urzlaTextView", width: 150, minWidth: 60, type: "string", align: "center"},
{display: "地区", name: "regioName", width: 150, minWidth: 60, type: "string", align: "center"},
{display: "删除标志", name: "loekzTextView", width: 150, minWidth: 60, type: "string", align: "center"},
{display: "排序字段", name: "sortl", width: 150, minWidth: 60, type: "string", align: "center"},
{display: "最小采购订单数量", name: "minbm", width: "120", align: "left", type: "string"},
{display: "计划交货时间(天)", name: "aplfz", width: "150", align: "left", type: "string"},
// {display: "业务标识", name: "zflag", width: 150, minWidth: 60, type: "string", align: "center",
// editor: {required: false, type: "text"}
// },
{display: '基于收货的发票验证', name: "webre", width: "100", align: "left", type: "string"},
{display: "价格有效至", name: "prdat", width: "100", align: "left", type: "string",hide:true},
{display: "等级类型", name:"stfkzTextView", width: "200", align: "left", type: "string"},
{display: "条件等级计量单位", name: "konms", width: "100", align: "left", type: "string"},
{display: "等级数量1", name: "kstbm", width: "100", align: "left", type: "string"},
{display: "等级金额1", name: "kbetr", width: "100", align: "left", type: "string"},
{display: "等级数量2", name: "kstbm2", width: "100", align: "left", type: "string"},
{display: "等级金额2", name: "kbetr2", width: "100", align: "left", type: "string"},
{display: "等级数量3", name: "kstbm3", width: "100", align: "left", type: "string"},
{display: "等级金额3", name: "kbetr3", width: "100", align: "left", type: "string"},
{display: "申请人", name: "personMemberName", width: 150, minWidth: 60, type: "string", align: "center"},
{display: "申请部门", name: "deptName", width: 150, minWidth: 60, type: "string", align: "center"},
{display: "申请日期", name: "fillinDate", width: 150, minWidth: 60, type: "date", align: "center"}
],
dataAction: 'server',
url: web_app.name + '/sapPurchaseInfoRecord/slicedSapPurchaseInfoRecordList.ajax?',
......@@ -253,3 +212,19 @@ function resetForm(obj) {
$(obj).formClean();
}
function copyQualityInfoRecord(){
var rows = purchaseInfoRecordGridManager.getSelectedRows();
if (!rows) {
return;
}
var ids = [];
rows.forEach(row=>{
ids.push(row.id)
})
UICtrl.addTabItem({
tabid: 'copyPurchaseInfoRecord',
text: '新增采购信息记录',
url: web_app.name + '/sapPurchaseInfoRecord/copyPurchaseRecord.job?ids=' + ids.join(",")
});
}
......@@ -17,6 +17,12 @@
<form class="hg-form ui-show" method="post" action="" id="queryMainForm">
<div class="hg-form-row">
<x:inputC name="billCode" label="采购信息记录编号" labelCol="1"/>
<x:hidden name="werks"/>
<x:inputC name="werksName" label="工厂" labelCol="1" wrapper="select"/>
<x:hidden name="lifnr"/>
<x:inputC name="name1" label="供应商" labelCol="1" wrapper="select"/>
<x:inputC name="matnr" label="物料" labelCol="1"/>
<x:selectC name="esokz" label="信息类别标识" labelCol="1" dictionary="esokz"/>
</div>
<x:searchButtons/>
</form>
......
......@@ -22,4 +22,6 @@ public interface SapPurchaseInfoRecordItemApplication {
List<SapPurchaseInfoRecordItem> findBySapPurchaseInfoRecordId(String sapPurchaseInfoRecordId);
void save(SapPurchaseInfoRecordItem sapPurchaseInfoRecordItem);
Map<String, Object> querySapPurchaseInfoRecordItemByIds(SapPurchaseInfoRecordQueryRequest request);
}
......@@ -2,6 +2,7 @@ package com.huigou.topsun.sap.purchaseInfoRecord.application.impl;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSONObject;
import com.huigou.cache.DictUtil;
import com.huigou.cache.SystemCache;
import com.huigou.data.domain.model.CommonDomainConstants;
import com.huigou.data.query.model.QueryDescriptor;
......@@ -121,14 +122,15 @@ public class SapPurchaseInfoRecordApplicationImpl extends FlowBroker implements
sapPurchaseInfoRecord.setStatusId(status.getId());
sapPurchaseInfoRecordRepository.save(sapPurchaseInfoRecord);
this.getSapPurchaseInfoRecordItemVo(bizId);
this.getSapPurchaseInfoRecordItemVo(sapPurchaseInfoRecord);
}
public void getSapPurchaseInfoRecordItemVo(String bizId){
List<SapPurchaseInfoRecordItem> purchaseInfoRecordItemList = sapPurchaseInfoRecordItemApplication.findBySapPurchaseInfoRecordId(bizId);
public void getSapPurchaseInfoRecordItemVo(SapPurchaseInfoRecord sapPurchaseInfoRecord){
List<SapPurchaseInfoRecordItem> purchaseInfoRecordItemList = sapPurchaseInfoRecordItemApplication.findBySapPurchaseInfoRecordId(sapPurchaseInfoRecord.getId());
purchaseInfoRecordItemList.forEach(sapPurchaseInfoRecordItem -> {
SapPurchaseInfoRecordItemVo sapPurchaseInfoRecordItemVo = new SapPurchaseInfoRecordItemVo();
BeanUtil.copyProperties(sapPurchaseInfoRecordItem,sapPurchaseInfoRecordItemVo);
sapPurchaseInfoRecordItemVo.setInfnr(sapPurchaseInfoRecord.getBillCode());
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
if (sapPurchaseInfoRecordItem.getDatab() !=null){
String datab = dateFormat.format(sapPurchaseInfoRecordItem.getDatab());
......@@ -138,6 +140,9 @@ public class SapPurchaseInfoRecordApplicationImpl extends FlowBroker implements
String datbi = dateFormat.format(sapPurchaseInfoRecordItem.getDatbi());
sapPurchaseInfoRecordItemVo.setDatbi(datbi);
}
if ("0".equals(sapPurchaseInfoRecordItemVo.getLoekz())){
sapPurchaseInfoRecordItemVo.setLoekz("");
}
try {
String url = SystemCache.getParameter("sap.PurchaseInfoRecord.url", String.class);
String execute = httpClient.execute(sapPurchaseInfoRecordItemVo, url);
......@@ -184,6 +189,8 @@ public class SapPurchaseInfoRecordApplicationImpl extends FlowBroker implements
QueryDescriptor queryDescriptor = this.sqlExecutorDao.getQuery(QUERY_XML_FILE_PATH, "sapPurchaseInfoRecordList");
QueryModel queryModel = this.sqlExecutorDao.getQueryModel(queryDescriptor, queryRequest);
queryModel.putDictionary("status", BizBillStatus.getMap());
queryModel.putDictionary("urzla", DictUtil.getDictionary("country"));
queryModel.putDictionary("loekz", DictUtil.getDictionary("loekz"));
return this.sqlExecutorDao.executeSlicedQuery(queryModel);
}
......
package com.huigou.topsun.sap.purchaseInfoRecord.application.impl;
import com.huigou.cache.DictUtil;
import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.data.query.model.QueryModel;
import com.huigou.topsun.sap.purchaseInfoRecord.application.SapPurchaseInfoRecordItemApplication;
......@@ -31,13 +32,12 @@ public class SapPurchaseInfoRecordItemApplicationImpl extends BaseApplication im
@Override
public void saveSapPurchaseInfoRecordItem(String sapPurchaseInfoRecordId, List<SapPurchaseInfoRecordItem> sapPurchaseInfoRecordItems) {
sapPurchaseInfoRecordItems.forEach(sapPurchaseInfoRecordItem -> {
boolean checked = checkQualityInfo(sapPurchaseInfoRecordItem.getMatnr(), sapPurchaseInfoRecordItem.getLifnr(), sapPurchaseInfoRecordItem.getPrdat());
if (checked){
sapPurchaseInfoRecordItem.setSapPurchaseInfoRecordId(sapPurchaseInfoRecordId);
sapPurchaseInfoRecordItemRepository.save(sapPurchaseInfoRecordItem);
}else {
throw new RuntimeException("供应商:'"+sapPurchaseInfoRecordItem.getLifnr()+"'和物料:'"+sapPurchaseInfoRecordItem.getMatnr()+"'未通过质检或价格有效至已超过合格有效期");
}
// boolean checked = checkQualityInfo(sapPurchaseInfoRecordItem.getMatnr(), sapPurchaseInfoRecordItem.getLifnr(), sapPurchaseInfoRecordItem.getPrdat());
// if (!checked){
// throw new RuntimeException("供应商:'"+sapPurchaseInfoRecordItem.getLifnr()+"'和物料:'"+sapPurchaseInfoRecordItem.getMatnr()+"'未通过质检或价格有效至已超过合格有效期");
// }
sapPurchaseInfoRecordItem.setSapPurchaseInfoRecordId(sapPurchaseInfoRecordId);
sapPurchaseInfoRecordItemRepository.save(sapPurchaseInfoRecordItem);
});
}
......@@ -47,11 +47,20 @@ public class SapPurchaseInfoRecordItemApplicationImpl extends BaseApplication im
if (StringUtil.isNotBlank(queryRequest.getSapPurchaseInfoRecordId())){
QueryDescriptor queryDescriptor = this.sqlExecutorDao.getQuery(QUERY_XML_FILE_PATH, "sapPurchaseInfoRecordItems");
QueryModel queryModel = this.sqlExecutorDao.getQueryModel(queryDescriptor, queryRequest);
queryModel.putDictionary("urzla", DictUtil.getDictionary("country"));
map = this.sqlExecutorDao.executeSlicedQuery(queryModel);
}
return map;
}
@Override
public Map<String, Object> querySapPurchaseInfoRecordItemByIds(SapPurchaseInfoRecordQueryRequest request) {
QueryDescriptor queryDescriptor = this.sqlExecutorDao.getQuery(QUERY_XML_FILE_PATH, "sapPurchaseInfoRecordItemByIds");
QueryModel queryModel = this.sqlExecutorDao.getQueryModel(queryDescriptor, request);
Map<String, Object> map = this.sqlExecutorDao.executeSlicedQuery(queryModel);
return map;
}
@Override
public void deleteByIds(List<String> ids) {
ids.forEach(id->{
......
......@@ -3,12 +3,14 @@ package com.huigou.topsun.sap.purchaseInfoRecord.controller;
import com.huigou.context.Operator;
import com.huigou.context.OrgUnit;
import com.huigou.topsun.sap.purchaseInfoRecord.application.SapPurchaseInfoRecordApplication;
import com.huigou.topsun.sap.purchaseInfoRecord.application.SapPurchaseInfoRecordItemApplication;
import com.huigou.topsun.sap.purchaseInfoRecord.domain.SapPurchaseInfoRecord;
import com.huigou.topsun.sap.purchaseInfoRecord.domain.query.SapPurchaseInfoRecordQueryRequest;
import com.huigou.uasp.annotation.ControllerMapping;
import com.huigou.uasp.bmp.common.BizBillStatus;
import com.huigou.uasp.client.CommonController;
import com.huigou.util.SDO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import javax.annotation.Resource;
......@@ -29,6 +31,8 @@ public class SapPurchaseInfoRecordController extends CommonController {
@Resource
private SapPurchaseInfoRecordApplication sapPurchaseInfoRecordApplication;
@Autowired
private SapPurchaseInfoRecordItemApplication sapPurchaseInfoRecordItemApplication;
public String forwardSapPurchaseInfoRecordList(){
return forward("purchaseInfoRecordList");
......@@ -62,4 +66,19 @@ public class SapPurchaseInfoRecordController extends CommonController {
return forward("purchaseInfoRecordDetail",sapPurchaseInfoRecord);
}
public String copyPurchaseRecord(){
SDO sdo = this.getSDO();
String ids = sdo.getString("ids");
this.putAttribute("processDefinitionKey", SapPurchaseInfoRecordApplication.PROCESS_DEFINITION_KEY);
// 新增的时候procUnitId一定要设置成Apply,不然jsp页面的所有表单元素是readonly状态
this.putAttribute("procUnitId", "Apply");
this.putAttribute("ids",ids);
SapPurchaseInfoRecord sapPurchaseInfoRecord = new SapPurchaseInfoRecord();
sapPurchaseInfoRecord.setId(null);
sapPurchaseInfoRecord.setStatusId(BizBillStatus.APPLYING.getId());
Operator operator = getOperator();
sapPurchaseInfoRecord.setDefaultValues(new OrgUnit(operator.getFullId(), operator.getFullName()));
return forward("purchaseInfoRecordDetail",sapPurchaseInfoRecord);
}
}
......@@ -5,9 +5,11 @@ import com.huigou.topsun.sap.purchaseInfoRecord.domain.query.SapPurchaseInfoReco
import com.huigou.uasp.annotation.ControllerMapping;
import com.huigou.uasp.client.CommonController;
import com.huigou.util.SDO;
import com.huigou.util.StringUtil;
import org.springframework.stereotype.Controller;
import javax.annotation.Resource;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
......@@ -24,8 +26,15 @@ public class SapPurchaseInfoRecordItemController extends CommonController {
public String querySapPurchaseInfoRecordItems(){
SDO sdo = this.getSDO();
List<String> oldIds = sdo.getStringList("oldIds");
Map<String, Object> map = new HashMap<>();
SapPurchaseInfoRecordQueryRequest queryRequest = sdo.toQueryRequest(SapPurchaseInfoRecordQueryRequest.class);
Map<String, Object> map = sapPurchaseInfoRecordItemApplication.querySapPurchaseInfoRecordItem(queryRequest);
if (StringUtil.isNotBlank(queryRequest.getSapPurchaseInfoRecordId())){
map = sapPurchaseInfoRecordItemApplication.querySapPurchaseInfoRecordItem(queryRequest);
}
if (StringUtil.isBlank(queryRequest.getSapPurchaseInfoRecordId()) && StringUtil.isNotBlank(queryRequest.getIds())){
map = sapPurchaseInfoRecordItemApplication.querySapPurchaseInfoRecordItemByIds(queryRequest);
}
return toResult(map);
}
......
package com.huigou.topsun.sap.purchaseInfoRecord.domain;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.huigou.data.domain.model.AbstractEntity;
import lombok.Data;
......@@ -153,11 +154,6 @@ public class SapPurchaseInfoRecordItem extends AbstractEntity {
*/
@Column(name = "DATBI")
private Date datbi;
/**
* 等级数量
*/
@Column(name = "KSTBM")
private BigDecimal kstbm;
/**
* 销售员
*/
......@@ -199,6 +195,11 @@ public class SapPurchaseInfoRecordItem extends AbstractEntity {
*/
@Column(name = "REGIO")
private String regio;
/**
* 地区
*/
@Column(name = "REGIO_NAME")
private String regioName;
/**
* 删除标志
*/
......@@ -278,10 +279,38 @@ public class SapPurchaseInfoRecordItem extends AbstractEntity {
@Column(name = "KONMS")
private String konms;
/**
*价格
* 等级数量1
*/
@Column(name = "KSTBM")
private BigDecimal kstbm;
/**
*等级金额1
* */
@Column(name = "KBETR")
private BigDecimal kbetr;
/**
* 等级数量2
*/
@Column(name = "KSTBM2")
private BigDecimal kstbm2;
/**
* 等级金额2
*/
@Column(name = "KBETR2")
private BigDecimal kbetr2;
/**
* 等级数量3
*/
@Column(name = "KSTBM3")
private BigDecimal kstbm3;
/**
* 等级金额3
*/
@Column(name = "KBETR3")
private BigDecimal kbetr3;
/**
* 消息类型
......
......@@ -12,4 +12,10 @@ import lombok.Data;
public class SapPurchaseInfoRecordQueryRequest extends QueryAbstractRequest {
private String sapPurchaseInfoRecordId;
private String billCode;
private String ids;
private String werks;
private String lifnr;
private String matnr;
private String esokz;
}
......@@ -109,10 +109,42 @@ public class SapPurchaseInfoRecordItemVo implements Serializable {
@JsonProperty("DATBI")
private String datbi;
/**
* 等级数量
* 条件等级数量
*/
@JsonProperty("KSTBM")
private BigDecimal kstbm;
/**
* 等级金额1
*/
@JsonProperty("KBETR1")
private BigDecimal kbetr;
/**
* 条件等级数量2
*/
@JsonProperty("KSTBM2")
private BigDecimal kstbm2;
/**
* 等级金额2
*/
@JsonProperty("KBETR2")
private BigDecimal kbetr2;
/**
* 条件等级数量3
*/
@JsonProperty("KSTBM3")
private BigDecimal kstbm3;
/**
* 等级金额3
*/
@JsonProperty("KBETR3")
private BigDecimal kbetr3;
/**
* 销售员
*/
......
......@@ -9,10 +9,10 @@
where 1=1
</sql-query>
<condition column="bill_code" name="billCode" type="java.lang.String" symbol="like" alias="t"/>
<condition column="lifnr" name="lifnr" type="java.lang.String" symbol="like" alias="i"/>
<condition column="lifnr" name="lifnr" type="java.lang.String" symbol="=" alias="i"/>
<condition column="matnr" name="matnr" type="java.lang.String" symbol="like" alias="i"/>
<condition column="esokz" name="esokz" type="java.lang.String" symbol="like" alias="i"/>
<condition column="werks" name="werks" type="java.lang.String" symbol="like" alias="i"/>
<condition column="esokz" name="esokz" type="java.lang.String" symbol="=" alias="i"/>
<condition column="werks" name="werks" type="java.lang.String" symbol="=" alias="i"/>
</query>
</query-mappings>
\ No newline at end of file
......@@ -7,4 +7,65 @@
<condition column="SAP_PURCHASE_INFO_RECORD_ID" name="sapPurchaseInfoRecordId" type="java.lang.String" symbol="=" alias="t"/>
</query>
<query name="sapPurchaseInfoRecordItemByIds" label="根据id查询" table="sap_purchase_info_record_item">
<sql-query>
select
t.id,
'' as sap_purchase_info_record_id,
t.ZYY,
t.LIFNR,
t.MATNR,
t.INFNR,
t.ESOKZ,
t.VERKF,
t.TELF1,
t.MEINS,
t.UMREN,
t.UMREZ,
t.URZLA,
t.ZFLAG,
t.LOEKZ,
t.EKORG,
t.WERKS,
t.APLFZ,
t.EKGRP,
t.NORBM,
t.MINBM,
t.MWSKZ,
t.WEBRE,
t.NETPR,
t.WAERS,
t.PEINH,
t.BPRME,
t.KSCHL,
t.PRDAT,
t.BPUMN,
t.BPUMZ,
t.DATAB,
t.DATBI,
t.KSTBM,
t.KONMS,
t.KBETR,
t.SEND_TIME,
t.VERSION,
t.NAME1,
t.MAKTX,
t.MATKL,
t.VERID,
t.SORTL,
t.REGIO,
t.STFKZ,
t.IDNLF,
t.WERKS_NAME,
t.MEINS_NAME,
t.WAERS_NAME,
t.EKGRP_NAME,
t.LIFNR_NAME,
t.EKORG_NAME,
t.BPRME_NAME,
t.MATKL_NAME from sap_purchase_info_record_item t where 1=1
</sql-query>
<condition column="id" name="ids" symbol="in" alias="t"/>
</query>
</query-mappings>
\ No newline at end of file
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