Commit 0c590a68 authored by wanghang's avatar wanghang

统计指标数据

parent 25bcc674
......@@ -174,23 +174,23 @@ function resetForm(obj) {
$(obj).formClean();
}
function addHandler() {
UICtrl.showAjaxDialog({
url: web_app.name + '/proofingMake/forwardSaveProofingMake.load',
title: "新增打样制造单",
width: 1000,
ok: function (div) {
var _self = this;
$('#submitForm', div).ajaxSubmit({
url: web_app.name + '/proofingMake/saveProofingMake.ajax',
success: function () {
_self.close();
reloadGrid();
}
});
}
});
}
// function addHandler() {
// UICtrl.showAjaxDialog({
// url: web_app.name + '/proofingMake/forwardSaveProofingMake.load',
// title: "新增打样制造单",
// width: 1000,
// ok: function (div) {
// var _self = this;
// $('#submitForm', div).ajaxSubmit({
// url: web_app.name + '/proofingMake/saveProofingMake.ajax',
// success: function () {
// _self.close();
// reloadGrid();
// }
// });
// }
// });
// }
function updateHandler() {
......
var gridManager = null;
$(document).ready(function () {
initialize();
loadStatsIndicatorsDetailListGrid();
});
function initialize(){
let isDetailPage = ($("#isDetailPage").val() === "true");
if (isDetailPage) {
$("#jobPageTop").hide();
}
}
function loadStatsIndicatorsDetailListGrid() {
var toolbarOptions = UICtrl.getDefaultToolbarOptions({
addHandler: function () {
UICtrl.addGridRow(gridManager,{ zlenr: gridManager.getData().length + 1 });
},
deleteHandler: function () {
var _grid = UICtrl.getGridManager('#statsIndicatorsDetailGrid');
_grid.deleteSelectedRow();//删除选定节点
}
});
gridManager = UICtrl.grid("#statsIndicatorsDetailGrid", {
columns: [
{
display: "行号", name: "zlenr", width: 140, minWidth: 60, type: "string", align: "left",
editor: { type: 'spinner', min: 1, max: 100, mask: 'nnn'}
},
{
display: "成本中心", name: "ekostl", width: 140, minWidth: 60, type: "string", align: "left",
editor: {
required: false, type: "select",
data: {
type: 'system',
name: "sapMaterialSelect",
back: {
materialId: "ekostl",
null:"eaufnr"
}
},
}
},
{
display: "订单", name: "eaufnr", width: 120, minWidth: 60, type: "string", align: "left",
editor: {
required: false, type: "select",
data: {
type: 'system',
name: "sapMaterialSelect",
back: {
null:"ekostl",
materialId:"eaufnr"
}
},
}
},
{
display: "统计指标", name: "stagr", width: 120, minWidth: 60, type: "string", align: "left",
editor: {
required: true,
type: 'dictionary',
data: {name:'sex'} ,
textField:'stagrTextView',
valueField:'sex'
}
},
{
display: "统计指标数量", name: "mbgbtr", width: 140, minWidth: 60, type: "string", align: "left",
editor: {
required: true,
type: 'text',
mask: 'nnnn'
}
},
{
display: "行文本", name: "sgtxt", width: 140, minWidth: 60, type: "string", align: "left",
editor: {
required: true,
type: 'text'
}
}
],
dataAction: "server",
url: web_app.name + '/sapStatsIndicators/slicedStatsIndicatorsDetailList.ajax',
pageSize: 10,
usePager: true,
parms:{statsIndicatorsId:getId()},
toolbar: toolbarOptions,
enabledEdit: true,
width: "100%",
height: "100%",
heightDiff: -8,
checkbox: true,
fixedCellHeight: true,
selectRowButtonOnly: true,
onDblClickRow: function (data, rowindex, rowobj) {
doView(data.statsIndicatorsDetailId);
}
});
UICtrl.setSearchAreaToggle(gridManager);
}
/**
* 流程引擎回调设置打样的id
* @param value 打样申请的id
*/
function setId(id) {
$("#id").val(id);
}
/**
* 流程引擎获取打样申请id的回掉方法。
* @return 打样申请的id
*/
function getId() {
return $("#id").val() || "";
}
function getExtendedData(processAction) {
//回退、打回、转交时,不需要验证必填项是否已经填写;
if (processAction == ProcessAction.BACK
|| processAction == ProcessAction.REPLENISH
|| processAction == ProcessAction.TRANSMIT) {
//不验证
$('#submitForm').attr('check', false);
}
const isAllData = $('#oldId') || !getId();
var extendedData = {};
var _grid = UICtrl.getGridManager('#statsIndicatorsDetailGrid');
if (_grid) {
var datas = DataUtil.getGridData({
gridManager: _grid,
isAllData: isAllData
});
if (!datas) {
return false;
}
extendedData.statsIndicatorsDetail = Public.encodeJSONURI(datas);
}
return extendedData;
}
\ No newline at end of file
<%@ page language="java" contentType="text/html; charset=utf-8" %>
<%@taglib uri="/WEB-INF/taglib.tld" prefix="x" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head>
<x:base include="layout,dialog,grid,tree,combox,commonTree,date"/>
<x:script src='/biz/topsun/sap/statsIndicators/statsIndicators.js'/>
</head>
<body>
<x:hidden name="isDetailPage" value="false"/> <!--是否是详情页-->
<x:billTitle title="统计指标数据" needStatus="false" needPerson="true"/>
<form class="hg-form" method="post" action="" id="submitForm">
<x:hidden name="id"/>
<x:hidden name="billCode"/>
<x:hidden name="fillinDate" type="datetime"/>
<x:hidden name="fullId"/>
<x:hidden name="organId"/>
<x:hidden name="organName"/>
<x:hidden name="deptId"/>
<x:hidden name="deptName"/>
<x:hidden name="positionId"/>
<x:hidden name="positionName"/>
<x:hidden name="personMemberId"/>
<x:hidden name="personMemberName"/>
<div class="hg-form-cols">
<div class="hg-form-row">
<x:inputC name="kokrs" required="true" label="成本控制范围" labelCol="2" maxLength="64" fieldCol="2"/>
<x:inputC name="usnam" required="true" label="SAP用户名" labelCol="2" fieldCol="2"/>
</div>
<div class="hg-form-row">
<x:inputC name="budat" required="true" label="过账日期" labelCol="2" maxLength="64" fieldCol="2"
wrapper="date"/>
<x:inputC name="bldat" required="true" label="凭证日期" labelCol="2" maxLength="64" fieldCol="2"
wrapper="date"/>
</div>
<div class="hg-form-row">
<x:inputC name="bltxt" required="false" label="凭证文本" labelCol="2" fieldCol="6"/>
</div>
</div>
<div class="blank_div clearfix"></div>
<div id="statsIndicatorsDetailGrid" style="margin: 2px;">
</div>
</form>
</body>
</html>
var gridManager = null;
$(document).ready(function() {
loadStatsIndicatorsDetailListGrid();
$(document).ready(function () {
initializateUI();
loadStatsIndicatorsListGridGrid();
});
function loadStatsIndicatorsDetailListGrid() {
function initializateUI() {
UICtrl.layout("#layout", {leftWidth: 3});
}
function loadStatsIndicatorsListGridGrid() {
var toolbarOptions = UICtrl.getDefaultToolbarOptions({
updateHandler: function(){
updateHandler();
addHandler: function (){
addHandler()
},
deleteHandler: deleteHandler
deleteHandler: deleteHandler,
});
gridManager = UICtrl.grid("#statsIndicatorsDetailGrid", {
gridManager = UICtrl.grid("#statsIndicatorsListGrid", {
columns: [
{display: "行号", name: "zlenr", width: 140, minWidth: 60, type: "string", align: "left",
editor: {
required: false,
type: 'text'
}},
{display: "成本中心", name: "ekostl", width: 140, minWidth: 60, type: "string", align: "left",
editor: {
required: false,
type: 'text'
}},
{display: "订单", name: "eaufnr", width: 120, minWidth: 60, type: "string", align: "left",
editor: {
required: false,
type: 'text'
}},
{display: "统计指标", name: "stagr", width: 120, minWidth: 60, type: "string", align: "left",
editor: {
required: false,
type: 'text'
}},
{display: "统计指标数量", name: "mbgbtr", width: 140, minWidth: 60, type: "string", align: "left",
editor: {
required: false,
type: 'text'
}},
{display: "行文本", name: "SGTXT", width: 140, minWidth: 60, type: "string", align: "left",
editor: {
required: false,
type: 'text'
}}
{display: "成本控制范围", name: "kokrs", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "凭证日期", name: "bldat", 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: "SAP用户名", name: "usnam", width: 140, minWidth: 60, type: "string", align: "left"},
],
dataAction: "server",
url: web_app.name + '/sapStatsIndicators/slicedStatsIndicatorsDetailList.ajax',
pageSize: 10,
url: web_app.name + '/sapStatsIndicators/slicedStatsIndicatorsList.ajax',
pageSize: 20,
usePager: true,
toolbar: toolbarOptions,
enabledEdit: true,
width: "100%",
height: "100%",
heightDiff: -8,
......@@ -57,24 +38,57 @@ function loadStatsIndicatorsDetailListGrid() {
fixedCellHeight: true,
selectRowButtonOnly: true,
onDblClickRow: function (data, rowindex, rowobj) {
doView(data.statsIndicatorsDetailId);
doView(data.id);
}
});
UICtrl.setSearchAreaToggle(gridManager);
}
/**
* 流程引擎回调设置打样的id
* @param value 打样申请的id
*/
function setId(id) {
$("#id").val(id);
function query(obj) {
var param = $(obj).formToJSON();
UICtrl.gridSearch(gridManager, param);
}
function reloadGrid() {
gridManager.loadData();
}
function resetForm(obj) {
$(obj).formClean();
}
//重写DataUtil的getUpdateRowId函数、它默认取行的id列
DataUtil.getUpdateRowId = function (gridManager) {
var result = DataUtil.getUpdateRow(gridManager);
if (result) {
return result.proofingMakeId;
}
return result;
}
/**
* 流程引擎获取打样申请id的回掉方法。
* @return 打样申请的id
*/
function getId() {
return $("#id").val() || "";
//删除按钮
function deleteHandler() {
DataUtil.del({
action: 'sapStatsIndicators/deleteStatsIndicators.ajax',
gridManager: gridManager, idFieldName: 'id',
onSuccess: function () {
reloadGrid();
}
});
}
function addHandler() {
UICtrl.addTabItem({
tabid: 'statsIndicators',
text: "统计指标数据",
url: web_app.name + '/sapStatsIndicators/forwardStatsIndicators.job'
});
}
function doView(id) {
UICtrl.addTabItem({
tabid: 'showStatsIndicators'+id,
text: "统计指标详情",
url: web_app.name + '/sapStatsIndicators/showStatsIndicators.job?bizId='+id+"&isDetailPage=true"
});
}
\ No newline at end of file
<%@ page language="java" contentType="text/html; charset=utf-8" %>
<%@taglib uri="/WEB-INF/taglib.tld" prefix="x" %>
<%@ page contentType="text/html; charset=utf-8" language="java" %>
<%@ taglib uri="/WEB-INF/taglib.tld" prefix="x" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head>
<x:base include="layout,dialog,grid,tree,combox,commonTree,date"/>
<x:script src='/biz/topsun/sap/costCenter/sapCostCenterDetail.js'/>
<x:base include="layout,dialog,grid,tree,combox,commonTree"/>
<x:script src='/biz/topsun/sap/statsIndicators/statsIndicatorsList.js'/>
</head>
<body>
<x:billTitle title="统计指标数据" needStatus="false" needPerson="true"/>
<form class="hg-form" method="post" action="" id="submitForm">
<x:hidden name="id"/>
<x:hidden name="billCode"/>
<x:hidden name="fillinDate" type="datetime"/>
<x:hidden name="fullId"/>
<x:hidden name="organId"/>
<x:hidden name="organName"/>
<x:hidden name="deptId"/>
<x:hidden name="deptName"/>
<x:hidden name="positionId"/>
<x:hidden name="positionName"/>
<x:hidden name="personMemberId"/>
<x:hidden name="personMemberName"/>
<div class="hg-form-cols">
<div class="hg-form-row">
<x:inputC name="kokrs" required="true" label="成本控制范围" labelCol="2" maxLength="64" fieldCol="2"/>
<x:inputC name="bldat" required="true" label="凭证日期" labelCol="2" maxLength="64" fieldCol="2" wrapper="date"/>
<div class="container-fluid">
<div class="ui-hide">
<x:select name="processType" dictionary="processType"/>
<x:select name="yesorno" dictionary="yesorno"/>
</div>
<div class="hg-form-row">
<x:inputC name="budat" required="true" label="过账日期" labelCol="2" maxLength="64" fieldCol="2" wrapper="date"/>
<x:selectC name="bltxt" required="false" label="凭证文本" labelCol="2" dictionary="KOSAR" fieldCol="2"/>
<div id="layout">
<div position="center" title="统计指标">
<x:title title="common.button.search" hideTable="queryMainForm" isHide="true"/>
<form class="hg-form ui-hide" method="post" action="" id="queryMainForm">
<x:inputC name="proofingApplyNo" required="false" label="申请单号" labelCol="1"/>
<x:searchButtons/>
</form>
<div class="blank_div clearfix"></div>
<div id="statsIndicatorsListGrid" style="margin: 2px;"></div>
</div>
</div>
<div class="hg-form-row">
<x:inputC name="usnam" required="true" label="SAP用户名" labelCol="2" fieldCol="4"/>
</div>
</div>
<div class="blank_div clearfix"></div>
<div id="statsIndicatorsDetailGrid" style="margin: 2px;">
</div>
</form>
<%--</div>--%>
</div>
</body>
</html>
</html>
\ No newline at end of file
package com.huigou.topsun.sap.statsIndicators.application;
import com.huigou.topsun.proofing.domain.proofingApply.model.ProofingApplyBaseInfo;
import com.huigou.topsun.sap.statsIndicators.domain.SapStatsIndicators;
import com.huigou.topsun.sap.statsIndicators.domain.query.SapStatsIndicatorsDetailQueryRequest;
import com.huigou.topsun.sap.statsIndicators.domain.query.SapStatsIndicatorsQueryRequest;
import java.util.List;
import java.util.Map;
public interface SapStatsIndicatorsApplication {
String PROCESS_DEFINITION_KEY = "statsIndicatorsProc";
String PROCESS_DEFINITION_KEY = "sapStatsIndicatorsProc";
String QUERY_XML_FILE_PATH="config/topsun/sap/statsIndicators/statsIndicators.xml";
SapStatsIndicators loadSapStatsIndicatorsById(String id);
Map<String, Object> slicedStatsIndicatorsQuery(SapStatsIndicatorsQueryRequest query);
void deleteStatsIndicatorsById(String id);
void deleteStatsIndicatorsByIds(List<String> ids);
}
\ No newline at end of file
package com.huigou.topsun.sap.statsIndicators.application;
import com.huigou.topsun.sap.statsIndicators.domain.query.SapStatsIndicatorsDetailQueryRequest;
import java.util.Map;
public interface SapStatsIndicatorsDetailApplication {
String QUERY_XML_FILE_PATH="config/topsun/sap/statsIndicators/statsIndicators.xml";
Map<String, Object> slicedStatsIndicatorsDetailQuery(SapStatsIndicatorsDetailQueryRequest query);
}
\ No newline at end of file
package com.huigou.topsun.sap.statsIndicators.application.impl;
import com.huigou.topsun.proofing.domain.proofingApply.model.*;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.topsun.sap.statsIndicators.application.SapStatsIndicatorsApplication;
import com.huigou.topsun.sap.statsIndicators.domain.SapStatsIndicators;
import com.huigou.topsun.sap.statsIndicators.domain.SapStatsIndicatorsDetail;
import com.huigou.topsun.sap.statsIndicators.domain.query.SapStatsIndicatorsDetailQueryRequest;
import com.huigou.topsun.sap.statsIndicators.domain.query.SapStatsIndicatorsQueryRequest;
import com.huigou.topsun.sap.statsIndicators.repository.SapStatsIndicatorsDetailRepository;
import com.huigou.topsun.sap.statsIndicators.repository.SapStatsIndicatorsRepository;
import com.huigou.uasp.bmp.common.BizBillStatus;
import com.huigou.uasp.bpm.FlowBroker;
import com.huigou.util.ClassHelper;
import com.huigou.util.SDO;
import lombok.SneakyThrows;
import org.activiti.engine.delegate.DelegateExecution;
import org.activiti.engine.delegate.DelegateTask;
......@@ -19,13 +26,16 @@ import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Map;
@Service
@Service("sapStatsIndicatorsApplication")
public class SapStatsIndicatorsApplicationImpl extends FlowBroker implements SapStatsIndicatorsApplication {
@Autowired
private SapStatsIndicatorsRepository sapStatsIndicatorsRepository;
@Autowired
private SapStatsIndicatorsDetailRepository sapStatsIndicatorsDetailRepository;
@SneakyThrows
......@@ -33,6 +43,7 @@ public class SapStatsIndicatorsApplicationImpl extends FlowBroker implements Sa
@Override
protected String saveBizAndApprovalData() {
super.saveBizAndApprovalData();
SapStatsIndicators sapStatsIndicators = getBizEntity(SapStatsIndicators.class);
if (sapStatsIndicators.isNew()) {
sapStatsIndicators.setStatusId(BizBillStatus.APPLYING.getId());
......@@ -40,6 +51,21 @@ public class SapStatsIndicatorsApplicationImpl extends FlowBroker implements Sa
sapStatsIndicators = (SapStatsIndicators) commonDomainService.loadAndFillinProperties(sapStatsIndicators);
}
sapStatsIndicators = sapStatsIndicatorsRepository.save(sapStatsIndicators);
SDO sdo = this.getBizAndApprovalData();
String statsIndicatorsDetailJSON = sdo.getString("statsIndicatorsDetail");
ObjectMapper objectMapper = new ObjectMapper();
List<SapStatsIndicatorsDetail> statsIndicatorsDetailList = objectMapper.readValue(statsIndicatorsDetailJSON, new TypeReference<List<SapStatsIndicatorsDetail>>() {});
List<SapStatsIndicatorsDetail> allStatsIndicatorsDetail = sapStatsIndicatorsDetailRepository.findAllByStatsIndicatorsId(sapStatsIndicators.getId());
if (!allStatsIndicatorsDetail.isEmpty()) {
sapStatsIndicatorsDetailRepository.deleteInBatch(allStatsIndicatorsDetail);
}
for (SapStatsIndicatorsDetail statsIndicatorsDetail : statsIndicatorsDetailList) {
statsIndicatorsDetail.setStatsIndicatorsDetailId(null);
statsIndicatorsDetail.setStatsIndicatorsId(sapStatsIndicators.getId());
sapStatsIndicatorsDetailRepository.save(statsIndicatorsDetail);
}
return sapStatsIndicators.getId();
}
......@@ -58,6 +84,9 @@ public class SapStatsIndicatorsApplicationImpl extends FlowBroker implements Sa
SapStatsIndicators sapStatsIndicators = sapStatsIndicatorsRepository.findOne(bizId);
sapStatsIndicators.setStatusId(status.getId());
sapStatsIndicatorsRepository.save(sapStatsIndicators);
//远程调用sap接口
}
@Override
......@@ -83,4 +112,31 @@ public class SapStatsIndicatorsApplicationImpl extends FlowBroker implements Sa
sapStatsIndicatorsRepository.save(sapStatsIndicators);
}
}
@Override
public SapStatsIndicators loadSapStatsIndicatorsById(String id) {
return sapStatsIndicatorsRepository.findOne(id);
}
@Override
public Map<String, Object> slicedStatsIndicatorsQuery(SapStatsIndicatorsQueryRequest query) {
QueryDescriptor queryDescriptor = this.sqlExecutorDao.getQuery(QUERY_XML_FILE_PATH, "slicedStatsIndicatorsQuery");
return this.sqlExecutorDao.executeSlicedQuery(queryDescriptor,query);
}
@Override
@Transactional(propagation = Propagation.REQUIRES_NEW)
public void deleteStatsIndicatorsById(String id) {
List<SapStatsIndicatorsDetail> all = sapStatsIndicatorsDetailRepository.findAllByStatsIndicatorsId(id);
sapStatsIndicatorsDetailRepository.deleteInBatch(all);
sapStatsIndicatorsRepository.delete(id);
}
@Override
@Transactional
public void deleteStatsIndicatorsByIds(List<String> ids) {
ids.forEach(this::deleteStatsIndicatorsById);
}
}
\ No newline at end of file
package com.huigou.topsun.sap.statsIndicators.application.impl;
import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.topsun.proofing.domain.proofingApply.query.ProofingApplyQuery;
import com.huigou.topsun.sap.statsIndicators.application.SapStatsIndicatorsDetailApplication;
import com.huigou.topsun.sap.statsIndicators.domain.query.SapStatsIndicatorsDetailQueryRequest;
import com.huigou.uasp.bmp.common.application.BaseApplication;
import org.springframework.stereotype.Service;
import java.util.Map;
@Service
public class SapStatsIndicatorsDetailApplicationImpl implements SapStatsIndicatorsDetailApplication {
public class SapStatsIndicatorsDetailApplicationImpl extends BaseApplication implements SapStatsIndicatorsDetailApplication {
@Override
public Map<String, Object> slicedStatsIndicatorsDetailQuery(SapStatsIndicatorsDetailQueryRequest query) {
QueryDescriptor queryDescriptor = this.sqlExecutorDao.getQuery(QUERY_XML_FILE_PATH, "slicedStatsIndicatorsDetailQuery");
return this.sqlExecutorDao.executeSlicedQuery(queryDescriptor,query);
}
}
......@@ -2,15 +2,26 @@ package com.huigou.topsun.sap.statsIndicators.controller;
import com.huigou.context.Operator;
import com.huigou.context.OrgUnit;
import com.huigou.topsun.sap.statsIndicators.application.SapStatsIndicatorsApplication;
import com.huigou.topsun.sap.statsIndicators.application.SapStatsIndicatorsDetailApplication;
import com.huigou.topsun.sap.statsIndicators.domain.SapStatsIndicators;
import com.huigou.topsun.sap.statsIndicators.domain.query.SapStatsIndicatorsDetailQueryRequest;
import com.huigou.topsun.sap.statsIndicators.domain.query.SapStatsIndicatorsQueryRequest;
import com.huigou.uasp.annotation.ControllerMapping;
import com.huigou.uasp.bmp.common.BizBillStatus;
import com.huigou.uasp.client.CommonController;
import com.huigou.util.SDO;
import com.huigou.util.StringUtil;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import java.util.List;
import java.util.Map;
@Controller
@ControllerMapping("/sapStatsIndicators")
......@@ -26,17 +37,55 @@ public class SapStatsIndicatorsController extends CommonController {
SapStatsIndicatorsDetailApplication sapStatsIndicatorsDetailApplication;
public String forwardStatsIndicatorsList(){
this.putAttribute("processDefinitionKey", sapStatsIndicatorsApplication.PROCESS_DEFINITION_KEY);
this.putAttribute("procUnitId", "Apply");//定义流程环节的id
// SapStatsIndicators sapStatsIndicators = new SapStatsIndicators();
// sapStatsIndicators.setStatusId(BizBillStatus.APPLYING.getId());
// Operator operator = getOperator();//获取当前操作员的详情信息
// sapStatsIndicators.setDefaultValues(new OrgUnit(operator.getFullId(), operator.getFullName()));
return forward("statsIndicatorsList");
}
public String forwardStatsIndicators(){
this.putAttribute("processDefinitionKey", SapStatsIndicatorsApplication.PROCESS_DEFINITION_KEY);
this.putAttribute("procUnitId", "Apply");//定义流程环节的id
SapStatsIndicators sapStatsIndicators = new SapStatsIndicators();
sapStatsIndicators.setStatusId(BizBillStatus.APPLYING.getId());
Operator operator = getOperator();//获取当前操作员的详情信息
sapStatsIndicators.setDefaultValues(new OrgUnit(operator.getFullId(), operator.getFullName()));
return forward("statsIndicators");
}
public String slicedStatsIndicatorsList(){
SDO sdo = this.getSDO();
SapStatsIndicatorsQueryRequest queryRequest = sdo.toQueryRequest(SapStatsIndicatorsQueryRequest.class);
Map<String, Object> map = sapStatsIndicatorsApplication.slicedStatsIndicatorsQuery(queryRequest);
return toResult(map);
}
public String slicedStatsIndicatorsDetailList(){
return toResult(null);
SDO sdo = this.getSDO();
SapStatsIndicatorsDetailQueryRequest queryRequest = sdo.toQueryRequest(SapStatsIndicatorsDetailQueryRequest.class);
if (StringUtil.isBlank(queryRequest.getStatsIndicatorsId())){
return toResult(null);
}
Map<String, Object> map = sapStatsIndicatorsDetailApplication.slicedStatsIndicatorsDetailQuery(queryRequest);
return toResult(map);
}
/**
* 工作流审核跳转页面
* @return
*/
public String showStatsIndicators() {
SDO sdo = this.getSDO();
String id = sdo.getBizId();
String isDetailPage = sdo.getString("isDetailPage");
if("true".equals(isDetailPage)) this.putAttribute("isDetailPage","true");
SapStatsIndicators sapStatsIndicators = sapStatsIndicatorsApplication.loadSapStatsIndicatorsById(id);
return forward("statsIndicators", sapStatsIndicators);
}
public String deleteStatsIndicators(){
SDO sdo = this.getSDO();
List<String> ids = sdo.getIds();
sapStatsIndicatorsApplication.deleteStatsIndicatorsByIds(ids);
return success();
}
}
\ No newline at end of file
package com.huigou.topsun.sap.statsIndicators.domain;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.Data;
import org.hibernate.annotations.GenericGenerator;
......@@ -13,10 +14,11 @@ import java.math.BigDecimal;
@Table(name="sap_stats_indicators_detail")
@Entity
@Data
public class SapStatsIndicatorsDetail{
@JsonIgnoreProperties(ignoreUnknown = true)
public class SapStatsIndicatorsDetail {
/**
* 行号
* 详情id
*/
@Id
@GeneratedValue(
......@@ -30,7 +32,7 @@ public class SapStatsIndicatorsDetail{
private String statsIndicatorsDetailId;
/**
* 行号
* 主表id
*/
@Column(name = "stats_indicators_id")
private String statsIndicatorsId;
......
package com.huigou.topsun.sap.statsIndicators.domain.query;
import com.huigou.data.domain.query.QueryAbstractRequest;
import lombok.Data;
import java.math.BigDecimal;
/**
*
* @TableName sap_stats_indicators
*/
@Data
public class SapStatsIndicatorsDetailQueryRequest extends QueryAbstractRequest {
/**
* 行号
*/
private String statsIndicatorsDetailId;
/**
* 行号
*/
private String statsIndicatorsId;
/**
* 行号
*/
private String zlenr;
/**
* 成本中心
*/
private String ekostl;
/**
* 订单
*/
private String eaufnr;
/**
* 统计指标
*/
private String stagr;
/**
* 统计指标数量
*/
private BigDecimal mbgbtr;
/**
* 行文本
*/
private String sgtxt;
}
\ No newline at end of file
package com.huigou.topsun.sap.statsIndicators.domain.query;
import com.huigou.data.domain.query.QueryAbstractRequest;
import lombok.Data;
import java.util.Date;
/**
*
* @TableName sap_stats_indicators
*/
@Data
public class SapStatsIndicatorsQueryRequest extends QueryAbstractRequest {
/**
* id
*/
private String id;
/**
* 成本控制范围
*/
private String kokrs;
/**
* 凭证日期
*/
private Date bldat;
/**
* 过账日期
*/
private Date budat;
/**
* 凭证文本
*/
private String bltxt;
/**
* SAP用户名
*/
private String usnam;
}
\ No newline at end of file
......@@ -4,6 +4,9 @@ package com.huigou.topsun.sap.statsIndicators.repository;
import com.huigou.topsun.sap.statsIndicators.domain.SapStatsIndicatorsDetail;
import org.springframework.data.jpa.repository.JpaRepository;
import java.util.List;
public interface SapStatsIndicatorsDetailRepository extends JpaRepository<SapStatsIndicatorsDetail,String> {
List<SapStatsIndicatorsDetail> findAllByStatsIndicatorsId(String statsIndicatorsId);
}
<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:activiti="http://activiti.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" xmlns:xsd="http://www.w3.org/2001/XMLSchema" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.activiti.org/test">
<process id="statsIndicatorsProc" name="统计指标" isExecutable="true">
<process id="sapStatsIndicatorsProc" name="统计指标" isExecutable="true">
<extensionElements>
<activiti:executionListener event="start" delegateExpression="#{SapStatsIndicatorsApplication}"></activiti:executionListener>
<activiti:executionListener event="end" delegateExpression="#{SapStatsIndicatorsApplication}"></activiti:executionListener>
<activiti:executionListener event="start" delegateExpression="#{sapStatsIndicatorsApplication}"></activiti:executionListener>
<activiti:executionListener event="end" delegateExpression="#{sapStatsIndicatorsApplication}"></activiti:executionListener>
</extensionElements>
<startEvent id="startevent1" name="Start"></startEvent>
<endEvent id="endevent1" name="End"></endEvent>
<userTask id="Apply" name="打样申请" activiti:formKey="proofingApply/showProofingApply.job">
<userTask id="Apply" name="统计指标申请" activiti:formKey="sapStatsIndicators/showStatsIndicators.job">
<extensionElements>
<activiti:taskListener event="all" delegateExpression="#{proofingApplyApplication}"></activiti:taskListener>
<activiti:taskListener event="saveBizData" delegateExpression="#{proofingApplyApplication}"></activiti:taskListener>
<activiti:taskListener event="all" delegateExpression="#{sapStatsIndicatorsApplication}"></activiti:taskListener>
<activiti:taskListener event="saveBizData" delegateExpression="#{sapStatsIndicatorsApplication}"></activiti:taskListener>
</extensionElements>
</userTask>
<userTask id="Approve" name="打样审批" activiti:assignee="${assignee} " activiti:formKey="proofingApply/showProofingApply.job">
<userTask id="Approve" name="统计指标审批" activiti:assignee="${assignee} " activiti:formKey="sapStatsIndicators/showStatsIndicators.job">
<extensionElements>
<activiti:taskListener event="all" delegateExpression="#{proofingApplyApplication}"></activiti:taskListener>
<activiti:taskListener event="saveBizData" delegateExpression="#{proofingApplyApplication}"></activiti:taskListener>
<activiti:taskListener event="all" delegateExpression="#{sapStatsIndicatorsApplication}"></activiti:taskListener>
<activiti:taskListener event="saveBizData" delegateExpression="#{sapStatsIndicatorsApplication}"></activiti:taskListener>
</extensionElements>
<multiInstanceLoopCharacteristics isSequential="false" activiti:collection="handlerList" activiti:elementVariable="assignee">
<completionCondition>${chiefApprovePassed}</completionCondition>
......@@ -40,8 +40,8 @@
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${!approvePassed}]]></conditionExpression>
</sequenceFlow>
</process>
<bpmndi:BPMNDiagram id="BPMNDiagram_proofingProc">
<bpmndi:BPMNPlane bpmnElement="proofingProc" id="BPMNPlane_proofingProc">
<bpmndi:BPMNDiagram id="BPMNDiagram_sapStatsIndicatorsProc">
<bpmndi:BPMNPlane bpmnElement="sapStatsIndicatorsProc" id="BPMNPlane_sapStatsIndicatorsProc">
<bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1">
<omgdc:Bounds height="35.0" width="35.0" x="355.0" y="50.0"></omgdc:Bounds>
</bpmndi:BPMNShape>
......
<?xml version="1.0" encoding="UTF-8" ?>
<query-mappings>
<query name="slicedStatsIndicatorsDetailQuery" table="sap_stats_indicators_detail">
<sql-query>
select t.* from sap_stats_indicators_detail t
where 1=1
</sql-query>
<condition column="stats_indicators_id" name="statsIndicatorsId" type="java.lang.String" symbol="=" alias="t"/>
</query>
<query name="slicedStatsIndicatorsQuery" table="sap_stats_indicators">
<sql-query>
select t.* from sap_stats_indicators t
where 1=1
</sql-query>
<condition column="id" name="id" type="java.lang.String" symbol="=" alias="t"/>
</query>
</query-mappings>
\ No newline at end of file
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