Commit f1f917e8 authored by 鲁鑫's avatar 鲁鑫

统计指标修改,附件上传说明

parent 04353298
$(document).ready(function () {
$('#attachmentExplainList').fileList();
$('#attachmentExplainList .col-xs-4').removeClass('col-sm-2');
$('#attachmentExplainList .col-xs-4').addClass('col-sm-3');
$('#attachmentExplainList .col-xs-8').removeClass('col-sm-10');
$('#attachmentExplainList .col-xs-8').addClass('col-sm-9');
});
\ No newline at end of file
......@@ -213,6 +213,12 @@ var tableArray = [
type: 'text'
}
},
{
display: "发票号码", name: "zyl06", width: 200, minwidth: 120, type: "string", align: "left",
editor: {
type: 'text'
}
},
{
display: "币别", name: "waers", width: 120, minwidth: 120, type: "string", align: "left",
/*editor: {
......@@ -248,6 +254,7 @@ var tableArray = [
},
}*/
editor: {
mask: 'nnnnnnnnn.nn',
type: 'text'
}
},
......@@ -259,23 +266,17 @@ var tableArray = [
}
},
{
display: "税码", name: "mwskz", width: 120, minwidth: 120, type: "string", align: "left",
/*editor: {
required: false, type: "select",
data: {
type: 'system',
name: "dictionary",
getParam: function (item) {
return {fieldName: "MWSKZ"}
},
back: {
MWSKZ: "mwskz",
}
},
}*/
display: "税码", name: "mwskzTextView", width: 120, minwidth: 120, type: "string", align: "left",
editor: {
type: 'text'
}
type: 'dictionary',
data: {name: 'mwskz'},
textField: 'mwskzTextView',
valueField: 'mwskz',
required: false,
render: function (item) {
return item.mwskzTextView;
}
},
},
{
display: "税额", name: "kwetr", width: 120, minwidth: 120, type: "money", align: "left",
......@@ -601,13 +602,29 @@ function loadGrid(obj) {
toolbarOptions = UICtrl.getDefaultToolbarOptions({
addHandler: function () {
tableArray.forEach((item) => {
UICtrl.addGridRow(item.gridManager, {zepItemno: getZepItemNo()});
UICtrl.addGridRow(item.gridManager, {zepItemno: getZepItemNo(),waers: 'CNY', kursf: 1.00});
});
},
deleteHandler: function () {
tableArray.forEach((item) => {
item.gridManager.deleteSelectedRow();
});
},
copyHandler: {
id: 'copyHandler', text: '复制', img: 'fa-copy', click: function () {
tableArray.forEach((item) => {
//var row = DataUtil.getSelectedRow(item.gridManager);
var row = item.gridManager.getSelectedRow();
if (!row) {
Public.tip("请勾选一条数据");
return;
}
var newRow = JSON.parse(JSON.stringify(row));
newRow.zepItemno = getZepItemNo();
newRow.id = null;
UICtrl.addGridRow(item.gridManager, newRow);
});
}
}
});
}
......
......@@ -78,8 +78,6 @@ function enable(){
UICtrl.setElRequiredFlag("#kostlv",true);
UICtrl.enable("#kostl")
UICtrl.enable("#kostlv")
$("#kostl").val("")
$("#kostlv").val("")
}
function getFixedAssetsDetail(fixedAssetsAction) {
......
......@@ -82,13 +82,13 @@ function loadStatsIndicatorsDetailListGrid() {
editor: {
required: true,
type: 'text',
mask: 'nnnn'
mask: 'nnnnnnnn.nn'
}
},
{
display: "行文本", name: "sgtxt", width: 140, minWidth: 60, type: "string", align: "left",
editor: {
required: true,
required: false,
type: 'text'
}
}
......
......@@ -22,6 +22,7 @@
<x:hidden name="positionName"/>
<x:hidden name="personMemberId"/>
<x:hidden name="personMemberName"/>
<x:hidden name="statusId"/>
<div class="hg-form-cols">
<div class="hg-form-row">
<x:inputC name="kokrs" required="true" readonly="true" label="成本控制范围" labelCol="2" maxLength="64" fieldCol="2"/>
......
......@@ -15,11 +15,11 @@ function loadStatsIndicatorsListGrid() {
addHandler: function (){
addHandler()
},
deleteHandler: deleteHandler,
//deleteHandler: deleteHandler,
});
gridManager = UICtrl.grid("#statsIndicatorsListGrid", {
columns: [
{display: "导入sap", name: "btns", width: 60, minWidth: 60, type: "string", align: "left"},
{display: "审批状态", name: "statusTextView", width: 60, minWidth: 60, type: "string", align: "left"},
{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"},
......
......@@ -361,8 +361,17 @@ function loadSuppliersBankListGrid() {
editor: {type: 'spinner', min: 1, max: 100, mask: 'nnn'}
},
{
display: "银行所属国家", name: "banks", width: 100, minWidth: 60, type: "String", align: "left",
editor: {type: 'text', required: true}
display: "银行所属国家", name: "banksTextView", width: 100, minWidth: 60, type: "String", align: "left",
editor: {
type: 'dictionary',
data: {name: 'country'},
textField: 'banksTextView',
valueField: 'country',
required: true,
render: function (item) {
return item.banksTextView;
}
},
},
{
display: "银行代码", name: "bankl", width: 140, minWidth: 60, type: "String", align: "left",
......@@ -500,7 +509,7 @@ function disableForm(formId,isDisabled) {
}
function bindEvent(){
$('#land1').searchbox({
$('#land1Name').searchbox({
type: "system", name: "dictionary",
getParam: function (item) {
return {
......@@ -513,7 +522,7 @@ function bindEvent(){
}
});
$('#region').searchbox({
$('#regionName').searchbox({
type: "system", name: "getArea",
getParam: function (item) {
if (Public.isBlank($('#land1').val())){
......@@ -530,7 +539,7 @@ function bindEvent(){
}
});
$('#city1').searchbox({
$('#city1Name').searchbox({
type: "system", name: "getArea",
getParam: function (item) {
if (Public.isBlank($('#land1').val())){
......
package com.huigou.topsun.base.attachmentExplain.application;
import com.huigou.topsun.base.attachmentExplain.domain.model.AttachmentExplain;
import com.huigou.topsun.base.attachmentExplain.domain.query.AttachmentExplainQueryRequest;
import java.util.List;
import java.util.Map;
/**
* 附件上传说明接口层
*
* @author
* @date 2018-04-02 14:20
*/
public interface AttachmentExplainApplication {
/*
* 查询文件
*/
String QUERY_XML_FILE_PATH = "config/topsun/base/attachmentExplain.xml";
/*
* 查询表 hxAttachmentExplain
*/
String QUERY_ATTACHMENT_EXPLAIN = "attachmentExplain";
/**
* 保存 附件上传说明
*
* @author
* @param params
*/
String saveAttachmentExplain(AttachmentExplain attachmentExplain);
/**
* 加载 附件上传说明
*
* @author
* @return SDO
*/
AttachmentExplain loadAttachmentExplain(String id);
/**
* 删除 附件上传说明
*
* @author
*/
void deleteAttachmentExplain(List<String> ids);
/**
* 修改状态
*/
void updateAttachmentExplainStatus(List<String> ids, Integer status);
/**
* 查询 附件上传说明
*
* @author
* @return SDO
*/
Map<String, Object> slicedQueryAttachmentExplain(AttachmentExplainQueryRequest queryRequest);
AttachmentExplain loadAttachmentExplainByCode(String code);
}
package com.huigou.topsun.base.attachmentExplain.application.impl;
import com.huigou.context.MessageSourceContext;
import com.huigou.data.domain.model.CommonDomainConstants;
import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.topsun.base.attachmentExplain.application.AttachmentExplainApplication;
import com.huigou.topsun.base.attachmentExplain.domain.model.AttachmentExplain;
import com.huigou.topsun.base.attachmentExplain.domain.query.AttachmentExplainQueryRequest;
import com.huigou.topsun.base.attachmentExplain.repository.AttachmentExplainRepository;
import com.huigou.uasp.bmp.common.application.BaseApplication;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
import java.util.List;
import java.util.Map;
/**
* 附件上传说明实现层
*
* @ClassName: AttachmentExplainApplicationImpl
* @author
* @date 2018-04-02 14:20
* @version V1.0
*/
@Service("attachmentExplainApplication")
public class AttachmentExplainApplicationImpl extends BaseApplication implements AttachmentExplainApplication {
@Autowired
private AttachmentExplainRepository attachmentExplainRepository;
@Override
@Transactional
public String saveAttachmentExplain(AttachmentExplain attachmentExplain) {
Assert.notNull(attachmentExplain, CommonDomainConstants.OBJECT_NOT_NULL);
attachmentExplain = (AttachmentExplain) this.commonDomainService.loadAndFillinProperties(attachmentExplain);
attachmentExplain = (AttachmentExplain) this.commonDomainService.saveBaseInfoEntity(attachmentExplain, attachmentExplainRepository);
return attachmentExplain.getId();
}
@Override
public AttachmentExplain loadAttachmentExplain(String id) {
Assert.hasText(id, CommonDomainConstants.ID_NOT_BLANK);
return attachmentExplainRepository.findOne(id);
}
@Override
@Transactional
public void deleteAttachmentExplain(List<String> ids) {
List<AttachmentExplain> objs = attachmentExplainRepository.findAll(ids);
attachmentExplainRepository.delete(objs);
}
@Override
public Map<String, Object> slicedQueryAttachmentExplain(AttachmentExplainQueryRequest queryRequest) {
QueryDescriptor queryDescriptor = this.sqlExecutorDao.getQuery(QUERY_XML_FILE_PATH, QUERY_ATTACHMENT_EXPLAIN);
return this.sqlExecutorDao.executeSlicedQuery(queryDescriptor, queryRequest);
}
@Transactional(rollbackFor = RuntimeException.class)
@Override
public void updateAttachmentExplainStatus(List<String> ids, Integer status) {
this.checkIdsNotEmpty(ids);
Assert.notNull(status, MessageSourceContext.getMessage("status.not.blank"));
this.commonDomainService.updateStatus(AttachmentExplain.class, ids, status);
}
@Override
public AttachmentExplain loadAttachmentExplainByCode(String code) {
Assert.hasText(code, CommonDomainConstants.CODE_NOT_BLANK);
List<AttachmentExplain> datas = attachmentExplainRepository.findByCode(code);
Assert.notEmpty(datas, String.format("未找到%s对应的附件说明!", code));
return datas.get(0);
}
}
package com.huigou.topsun.base.attachmentExplain.controller;
import com.huigou.topsun.base.attachmentExplain.application.AttachmentExplainApplication;
import com.huigou.topsun.base.attachmentExplain.domain.model.AttachmentExplain;
import com.huigou.topsun.base.attachmentExplain.domain.query.AttachmentExplainQueryRequest;
import com.huigou.topsun.common.YesOrNo;
import com.huigou.uasp.annotation.ControllerMapping;
import com.huigou.uasp.client.CommonController;
import com.huigou.uasp.log.annotation.LogInfo;
import com.huigou.uasp.log.domain.model.LogType;
import com.huigou.uasp.log.domain.model.OperationType;
import com.huigou.util.SDO;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import java.util.List;
import java.util.Map;
/**
* 附件上传说明控制层
*
* @ClassName: AttachmentExplainController
* @author
* @date 2018-04-02 14:20
* @version V1.0
*/
@Controller
@ControllerMapping("attachmentExplain")
public class AttachmentExplainController extends CommonController {
@Autowired
private AttachmentExplainApplication attachmentExplainApplication;
protected String getPagePath() {
return "/biz/topsun/base/attachmentExplain/";
}
@RequiresPermissions("AttachmentExplain:query")
public String forwardListAttachmentExplain() {
return forward("attachmentExplainList");
}
@RequiresPermissions("AttachmentExplain:query")
@LogInfo(logType = LogType.BIZ, subType = "", operaionType = OperationType.QUERY, description = "分页查询附件上传说明")
public String slicedQueryAttachmentExplain() {
SDO sdo = this.getSDO();
AttachmentExplainQueryRequest queryRequest = sdo.toQueryRequest(AttachmentExplainQueryRequest.class);
Map<String, Object> data = attachmentExplainApplication.slicedQueryAttachmentExplain(queryRequest);
return toResult(data);
}
@RequiresPermissions("AttachmentExplain:create")
@LogInfo(logType = LogType.BIZ, subType = "", operaionType = OperationType.DETALL, description = "跳转到新增附件上传说明")
public String showInsertAttachmentExplain() {
this.putAttribute("status", YesOrNo.YES.getId());
return forward("attachmentExplainDetail");
}
@RequiresPermissions("AttachmentExplain:create")
@LogInfo(logType = LogType.BIZ, subType = "", operaionType = OperationType.ADD, description = "新增保存附件上传说明")
public String insertAttachmentExplain() {
SDO sdo = this.getSDO();
AttachmentExplain attachmentExplain = sdo.toObject(AttachmentExplain.class);
String id = attachmentExplainApplication.saveAttachmentExplain(attachmentExplain);
return success(id);
}
@RequiresPermissions("AttachmentExplain:update")
@LogInfo(logType = LogType.BIZ, subType = "", operaionType = OperationType.DETALL, description = "跳转到编辑附件上传说明")
public String showLoadAttachmentExplain() {
SDO sdo = this.getSDO();
String id = sdo.getId();
AttachmentExplain attachmentExplain = attachmentExplainApplication.loadAttachmentExplain(id);
return forward("attachmentExplainDetail", attachmentExplain);
}
@RequiresPermissions("AttachmentExplain:update")
@LogInfo(logType = LogType.BIZ, subType = "", operaionType = OperationType.UPDATE, description = "新增修改附件上传说明")
public String updateAttachmentExplain() {
SDO sdo = this.getSDO();
AttachmentExplain attachmentExplain = sdo.toObject(AttachmentExplain.class);
attachmentExplainApplication.saveAttachmentExplain(attachmentExplain);
return success();
}
@RequiresPermissions("AttachmentExplain:delete")
@LogInfo(logType = LogType.BIZ, subType = "", operaionType = OperationType.DELETE, description = "删除附件上传说明")
public String deleteAttachmentExplain() {
SDO sdo = this.getSDO();
List<String> ids = sdo.getStringList("ids");
attachmentExplainApplication.deleteAttachmentExplain(ids);
return success();
}
@RequiresPermissions("AttachmentExplain:update")
@LogInfo(logType = LogType.BIZ, subType = "", operaionType = OperationType.DELETE, description = "修改附件上传状态")
public String updateAttachmentExplainStatus() {
SDO sdo = this.getSDO();
List<String> ids = sdo.getStringList("ids");
Integer status = sdo.getInteger("status");
attachmentExplainApplication.updateAttachmentExplainStatus(ids, status);
return success();
}
public String showAttachmentExplain() {
SDO sdo = this.getSDO();
String code = sdo.getString("code");
AttachmentExplain attachmentExplain = attachmentExplainApplication.loadAttachmentExplainByCode(code);
return forward("attachmentExplain", attachmentExplain);
}
public String showAttachmentExplainList() {
this.putAttribute("bizId", "attachmentExplainId");
return forward("attachmentExplainList");
}
public String showViewAttachmentExplainList() {
this.putAttribute("bizId", "attachmentExplainId");
this.putAttribute("isReadOnly", "true");
return forward("attachmentExplainList");
}
public String showAttachmentManagementMethods() {
this.putAttribute("bizId", "attachmentManagementMethods");
this.putAttribute("bizCode", "ssrfManagementMethods");
this.putAttribute("isWrap", true);
return forward("/biz/topsun/common/attachment.jsp");
}
}
package com.huigou.topsun.base.attachmentExplain.domain.model;
import com.huigou.data.domain.model.BaseInfoAbstractEntity;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
/**
* 附件上传说明
*
* @author
* SSRF_ATTACHMENT_EXPLAIN
* @date 2018-04-02 14:20
*/
@Entity
@Table(name = "ATTACHMENT_EXPLAIN")
public class AttachmentExplain extends BaseInfoAbstractEntity {
private static final long serialVersionUID = 1L;
/**
* content
**/
@Column(name = "content", length = 2500)
private String content;
public String getContent() {
return this.content;
}
public void setContent(String content) {
this.content = content;
}
}
package com.huigou.topsun.base.attachmentExplain.domain.query;
import com.huigou.data.domain.query.QueryAbstractRequest;
/**
* 附件上传说明
*
* @author
* TECH_HX_ATTACHMENT_EXPLAIN
* @date 2018-04-02 14:20
*/
public class AttachmentExplainQueryRequest extends QueryAbstractRequest {
/**
* code
**/
protected String code;
/**
* name
**/
protected String name;
/**
* status
**/
protected Integer status;
public String getCode() {
return this.code;
}
public void setCode(String code) {
this.code = code;
}
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
public Integer getStatus() {
return this.status;
}
public void setStatus(Integer status) {
this.status = status;
}
}
package com.huigou.topsun.base.attachmentExplain.repository;
import com.huigou.topsun.base.attachmentExplain.domain.model.AttachmentExplain;
import org.springframework.data.jpa.repository.JpaRepository;
import java.util.List;
/**
* 附件上传说明Repository
*
* @author
* @date 2018-04-02 14:20
*/
public interface AttachmentExplainRepository extends JpaRepository<AttachmentExplain, String> {
List<AttachmentExplain> findByCode(String code);
}
......@@ -6,6 +6,7 @@ import com.alibaba.fastjson.JSONObject;
import com.huigou.context.Operator;
import com.huigou.context.OrgUnit;
import com.huigou.context.ThreadLocalUtil;
import com.huigou.data.domain.model.CommonDomainConstants;
import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.data.query.model.QueryModel;
import com.huigou.topsun.ep.order.application.EpSaleOrderApplication;
......@@ -20,6 +21,7 @@ import com.huigou.topsun.ep.order.domain.query.EpSaleOrderQueryRequest;
import com.huigou.topsun.sap.common.application.SapMutualEpLogApplication;
import com.huigou.topsun.sap.common.domain.EpResult;
import com.huigou.topsun.sap.common.domain.SapResult;
import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement;
import com.huigou.uasp.bmp.common.BizBillStatus;
import com.huigou.uasp.bmp.operator.OperatorApplication;
import com.huigou.uasp.bpm.FlowBroker;
......@@ -34,6 +36,8 @@ import org.activiti.engine.delegate.DelegateTask;
import org.activiti.engine.runtime.ProcessInstance;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
import javax.annotation.Resource;
import java.io.IOException;
......@@ -80,6 +84,46 @@ public class EpSaleOrderApplicationImpl extends FlowBroker implements EpSaleOrde
return ClassHelper.toMap(epSaleOrderRepository.getOne(bizId));
}
/**
* 流程撤销事件
**/
@Override
protected void onRecallProcessInstance(DelegateExecution delegateExecution) {
String bizId = delegateExecution.getProcessBusinessKey();
// 修改单据状态为申请
updateStatus(bizId, BizBillStatus.APPLYING);
}
/**
* 任务完成前执行
*/
@Override
protected void onBeforeComplete(DelegateTask delegateTask) {
super.onBeforeComplete(delegateTask);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (this.isApplyProcUnit(delegateTask) && this.getApprovalParameter().isAdvanceProcessAction()) {
updateStatus(bizId, BizBillStatus.APPROVING);
}
}
/**
* 回收事件
**/
@Override
protected void onWithdraw(DelegateTask delegateTask, String destActivityId) {
super.onWithdraw(delegateTask, destActivityId);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (destActivityId.equalsIgnoreCase("apply")) {
updateStatus(bizId, BizBillStatus.APPLYING);
}
}
@Transactional
private void updateStatus(String bizId, BizBillStatus status) {
Assert.hasText(bizId, CommonDomainConstants.ID_NOT_BLANK);
this.commonDomainService.updateStatus(EpSaleOrder.class, bizId, status.getId());
}
@Override
protected void onEnd(DelegateExecution delegateExecution) {
super.onEnd(delegateExecution);
......
......@@ -6,6 +6,7 @@ import com.alibaba.fastjson.JSONObject;
import com.huigou.context.Operator;
import com.huigou.context.OrgUnit;
import com.huigou.context.ThreadLocalUtil;
import com.huigou.data.domain.model.CommonDomainConstants;
import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.data.query.model.QueryModel;
import com.huigou.topsun.ep.order.application.EpSaleOrderCancelApplication;
......@@ -19,6 +20,7 @@ import com.huigou.topsun.ep.order.repository.EpSaleOrderCancelRepository;
import com.huigou.topsun.sap.common.HttpClient;
import com.huigou.topsun.sap.common.application.SapMutualEpLogApplication;
import com.huigou.topsun.sap.common.domain.EpResult;
import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement;
import com.huigou.uasp.bmp.common.BizBillStatus;
import com.huigou.uasp.bmp.operator.OperatorApplication;
import com.huigou.uasp.bpm.FlowBroker;
......@@ -33,6 +35,8 @@ import org.activiti.engine.delegate.DelegateTask;
import org.activiti.engine.runtime.ProcessInstance;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
import javax.annotation.Resource;
import java.io.IOException;
......@@ -79,6 +83,46 @@ public class EpSaleOrderCancelApplicationImpl extends FlowBroker implements EpSa
return ClassHelper.toMap(epSaleOrderCancelRepository.getOne(bizId));
}
/**
* 流程撤销事件
**/
@Override
protected void onRecallProcessInstance(DelegateExecution delegateExecution) {
String bizId = delegateExecution.getProcessBusinessKey();
// 修改单据状态为申请
updateStatus(bizId, BizBillStatus.APPLYING);
}
/**
* 任务完成前执行
*/
@Override
protected void onBeforeComplete(DelegateTask delegateTask) {
super.onBeforeComplete(delegateTask);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (this.isApplyProcUnit(delegateTask) && this.getApprovalParameter().isAdvanceProcessAction()) {
updateStatus(bizId, BizBillStatus.APPROVING);
}
}
/**
* 回收事件
**/
@Override
protected void onWithdraw(DelegateTask delegateTask, String destActivityId) {
super.onWithdraw(delegateTask, destActivityId);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (destActivityId.equalsIgnoreCase("apply")) {
updateStatus(bizId, BizBillStatus.APPLYING);
}
}
@Transactional
private void updateStatus(String bizId, BizBillStatus status) {
Assert.hasText(bizId, CommonDomainConstants.ID_NOT_BLANK);
this.commonDomainService.updateStatus(EpSaleOrderCancel.class, bizId, status.getId());
}
@Override
protected void onEnd(DelegateExecution delegateExecution) {
super.onEnd(delegateExecution);
......
......@@ -8,6 +8,7 @@ import com.fasterxml.jackson.databind.ObjectMapper;
import com.huigou.cache.DictUtil;
import com.huigou.cache.SystemCache;
import com.huigou.context.Operator;
import com.huigou.data.domain.model.CommonDomainConstants;
import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.data.query.model.QueryModel;
import com.huigou.topsun.sap.common.HttpClient;
......@@ -18,6 +19,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.CostCenterVo;
import com.huigou.topsun.sap.costCenter.repository.CostCenterRepository;
import com.huigou.topsun.sap.exceptionReport.domain.ExceptionReport;
import com.huigou.topsun.sap.statsIndicators.domain.SapStatsIndicatorsResult;
import com.huigou.uasp.bmp.common.BizBillStatus;
import com.huigou.uasp.bpm.FlowBroker;
......@@ -27,6 +29,8 @@ import org.activiti.engine.delegate.DelegateTask;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
import java.io.IOException;
import java.util.ArrayList;
......@@ -140,6 +144,9 @@ public class CostCenterApplicationImpl extends FlowBroker implements CostCenterA
return 0;
}
/**
* 流程结束事件
*/
@Override
protected void onEnd(DelegateExecution delegateExecution) {
super.onEnd(delegateExecution);
......@@ -231,6 +238,49 @@ public class CostCenterApplicationImpl extends FlowBroker implements CostCenterA
return returnJson;
}
/**
* 流程撤销事件
**/
@Override
protected void onRecallProcessInstance(DelegateExecution delegateExecution) {
String bizId = delegateExecution.getProcessBusinessKey();
// 修改单据状态为申请
updateStatus(bizId, BizBillStatus.APPLYING);
}
/**
* 任务完成前执行
*/
@Override
protected void onBeforeComplete(DelegateTask delegateTask) {
super.onBeforeComplete(delegateTask);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (this.isApplyProcUnit(delegateTask) && this.getApprovalParameter().isAdvanceProcessAction()) {
updateStatus(bizId, BizBillStatus.APPROVING);
}
}
/**
* 回收事件
**/
@Override
protected void onWithdraw(DelegateTask delegateTask, String destActivityId) {
super.onWithdraw(delegateTask, destActivityId);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (destActivityId.equalsIgnoreCase("apply")) {
updateStatus(bizId, BizBillStatus.APPLYING);
}
}
@Transactional
private void updateStatus(String bizId, BizBillStatus status) {
Assert.hasText(bizId, CommonDomainConstants.ID_NOT_BLANK);
this.commonDomainService.updateStatus(ExceptionReport.class, bizId, status.getId());
}
/**
* 终止流程事件
*/
@Override
protected void onAbortProcessInstance(DelegateExecution delegateExecution) {
super.onAbortProcessInstance(delegateExecution);
......@@ -240,6 +290,9 @@ public class CostCenterApplicationImpl extends FlowBroker implements CostCenterA
costCenterRepository.save(costCenter);
}
/**
* 回退流程事件
*/
@Override
protected void onBack(DelegateTask delegateTask, String destActivityId) {
super.onBack(delegateTask, destActivityId);
......@@ -251,6 +304,11 @@ public class CostCenterApplicationImpl extends FlowBroker implements CostCenterA
}
}
/**
* 获取流程参数
* @param bizId
* @return
*/
@Override
protected Map<String, Object> getProcessBizParams(String bizId) {
return ClassHelper.toMap(costCenterRepository.getOne(bizId));
......
......@@ -117,6 +117,7 @@ public class CostCenterController extends CommonController {
costCenterVo.setIsEnable(0);
costCenterVo.setId(null);
costCenterVo.setReason(null);
costCenterVo.setTelePhone(null);
return forward("sapCostCenterDetail", costCenterVo);
}
......
......@@ -5,20 +5,16 @@ import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.huigou.data.domain.model.CommonDomainConstants;
import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.topsun.sap.common.DefaultHttpClient;
import com.huigou.topsun.sap.common.domain.SapResult;
import com.huigou.topsun.sap.common.serializer.MessageCodec;
import com.huigou.topsun.sap.costReimbursement.application.SapCostReimbursementApplication;
import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement;
import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursementDetail;
import com.huigou.topsun.sap.costReimbursement.domain.query.SapCostReimbursementQueryRequest;
import com.huigou.topsun.sap.costReimbursement.repostiory.SapCostReimbursementDetailRepository;
import com.huigou.topsun.sap.costReimbursement.repostiory.SapCostReimbursementRepository;
import com.huigou.topsun.sap.statsIndicators.domain.SapStatsIndicators;
import com.huigou.topsun.sap.statsIndicators.domain.SapStatsIndicatorsDetail;
import com.huigou.topsun.sap.statsIndicators.domain.SapStatsIndicatorsResult;
import com.huigou.topsun.sap.statsIndicators.domain.query.SapStatsIndicatorsQueryRequest;
import com.huigou.topsun.util.MyBaseUtil;
import com.huigou.uasp.bmp.common.BizBillStatus;
import com.huigou.uasp.bpm.FlowBroker;
......@@ -34,6 +30,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
import java.io.IOException;
......@@ -113,7 +110,45 @@ public class SapCostReimbursementApplicationImpl extends FlowBroker implements S
return ClassHelper.toMap(costReimbursementRepository.getOne(bizId));
}
/**
* 流程撤销事件
**/
@Override
protected void onRecallProcessInstance(DelegateExecution delegateExecution) {
String bizId = delegateExecution.getProcessBusinessKey();
// 修改单据状态为申请
updateStatus(bizId, BizBillStatus.APPLYING);
}
/**
* 任务完成前执行
*/
@Override
protected void onBeforeComplete(DelegateTask delegateTask) {
super.onBeforeComplete(delegateTask);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (this.isApplyProcUnit(delegateTask) && this.getApprovalParameter().isAdvanceProcessAction()) {
updateStatus(bizId, BizBillStatus.APPROVING);
}
}
/**
* 回收事件
**/
@Override
protected void onWithdraw(DelegateTask delegateTask, String destActivityId) {
super.onWithdraw(delegateTask, destActivityId);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (destActivityId.equalsIgnoreCase("apply")) {
updateStatus(bizId, BizBillStatus.APPLYING);
}
}
@Transactional
private void updateStatus(String bizId, BizBillStatus status) {
Assert.hasText(bizId, CommonDomainConstants.ID_NOT_BLANK);
this.commonDomainService.updateStatus(SapCostReimbursement.class, bizId, status.getId());
}
/**
* 流程实例结束
*
......
......@@ -406,4 +406,10 @@ public class SapCostReimbursementDetail implements Serializable {
@Column(name = "MSGTX")
private String msgtx;
/**
* 发票号
*/
@Column(name = "ZYL06")
private String zyl06;
}
\ No newline at end of file
......@@ -13,7 +13,7 @@ import java.util.Date;
*/
@Data
public class SapCostReimbursementQueryRequest extends QueryAbstractRequest {
private String billCode;
/**
* EP付款申请类别
......
package com.huigou.topsun.sap.fixedAssets.application.impl;
import com.huigou.cache.DictUtil;
import com.huigou.context.Operator;
import com.huigou.context.OrgUnit;
import com.huigou.data.domain.model.CommonDomainConstants;
import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.data.query.model.QueryModel;
import com.huigou.topsun.base.coderule.application.CodeRuleApplication;
import com.huigou.topsun.sap.fixedAssets.application.SapFixedAssessApplication;
import com.huigou.topsun.sap.fixedAssets.application.SapFixedAssessItemApplication;
import com.huigou.topsun.sap.fixedAssets.application.SapFixedRetirementApplication;
import com.huigou.topsun.sap.fixedAssets.application.SapFixedRetirementItemApplication;
import com.huigou.topsun.sap.fixedAssets.domain.*;
import com.huigou.topsun.sap.fixedAssets.domain.query.SapFixedAssessQueryRequest;
import com.huigou.topsun.sap.fixedAssets.domain.query.SapFixedRetirementQueryRequest;
import com.huigou.topsun.sap.fixedAssets.repository.*;
import com.huigou.uasp.bmp.common.BizBillStatus;
import com.huigou.uasp.bmp.doc.attachment.application.AttachmentApplication;
import com.huigou.uasp.bpm.FlowBroker;
import com.huigou.util.ApplicationContextWrapper;
import com.huigou.util.ClassHelper;
import org.activiti.engine.delegate.DelegateExecution;
import org.activiti.engine.delegate.DelegateTask;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
import java.lang.reflect.Method;
import java.util.Date;
import java.util.List;
import java.util.Map;
......@@ -42,12 +35,7 @@ public class SapFixedAssessApplicationImpl extends FlowBroker implements SapFixe
private SapFixedAssessItemApplication sapFixedAssessItemApplication;
@Autowired
private TmpFixedAssessDataRepository tmpFixedAssessDataRepository;
@Autowired
private SapFixedAssessItemRepository sapFixedAssessItemRepository;
@Autowired
private AttachmentApplication attachmentApplication;
@Autowired
private CodeRuleApplication codeRuleApplication;
@Override
public Map<String, Object> getFixedAssessList(SapFixedAssessQueryRequest queryRequest) {
QueryDescriptor queryDescriptor = this.sqlExecutorDao.getQuery(QUERY_XML_FILE_PATH, "sapFixedAssess");
......@@ -117,6 +105,46 @@ public class SapFixedAssessApplicationImpl extends FlowBroker implements SapFixe
return ClassHelper.toMap(sapFixedAssessRepository.getOne(bizId));
}
/**
* 流程撤销事件
**/
@Override
protected void onRecallProcessInstance(DelegateExecution delegateExecution) {
String bizId = delegateExecution.getProcessBusinessKey();
// 修改单据状态为申请
updateStatus(bizId, BizBillStatus.APPLYING);
}
/**
* 任务完成前执行
*/
@Override
protected void onBeforeComplete(DelegateTask delegateTask) {
super.onBeforeComplete(delegateTask);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (this.isApplyProcUnit(delegateTask) && this.getApprovalParameter().isAdvanceProcessAction()) {
updateStatus(bizId, BizBillStatus.APPROVING);
}
}
/**
* 回收事件
**/
@Override
protected void onWithdraw(DelegateTask delegateTask, String destActivityId) {
super.onWithdraw(delegateTask, destActivityId);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (destActivityId.equalsIgnoreCase("apply")) {
updateStatus(bizId, BizBillStatus.APPLYING);
}
}
@Transactional
private void updateStatus(String bizId, BizBillStatus status) {
Assert.hasText(bizId, CommonDomainConstants.ID_NOT_BLANK);
this.commonDomainService.updateStatus(SapFixedAssess.class, bizId, status.getId());
}
@Override
protected String saveBizAndApprovalData() {
super.saveBizAndApprovalData();
......
......@@ -2,8 +2,10 @@ package com.huigou.topsun.sap.nonOrderStorage.application.impl;
import com.huigou.cache.DictUtil;
import com.huigou.context.Operator;
import com.huigou.data.domain.model.CommonDomainConstants;
import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.data.query.model.QueryModel;
import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement;
import com.huigou.topsun.sap.nonOrderStorage.domain.NonOrderStorage;
import com.huigou.topsun.sap.nonOrderStorage.application.NonOrderStorageApplication;
import com.huigou.topsun.sap.nonOrderStorage.domain.query.NonOrderStorageQueryRequest;
......@@ -17,6 +19,8 @@ import org.activiti.engine.delegate.DelegateTask;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
import java.util.List;
import java.util.Map;
......@@ -93,6 +97,35 @@ public class NonOrderStorageApplicationImpl extends FlowBroker implements NonOrd
this.sendSapCenterData(nonOrderStorage);
nonOrderStorageRepository.save(nonOrderStorage);
}
/**
* 流程撤销事件
**/
@Override
protected void onRecallProcessInstance(DelegateExecution delegateExecution) {
String bizId = delegateExecution.getProcessBusinessKey();
// 修改单据状态为申请
updateStatus(bizId, BizBillStatus.APPLYING);
}
/**
* 回收事件
**/
@Override
protected void onWithdraw(DelegateTask delegateTask, String destActivityId) {
super.onWithdraw(delegateTask, destActivityId);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (destActivityId.equalsIgnoreCase("apply")) {
updateStatus(bizId, BizBillStatus.APPLYING);
}
}
@Transactional
private void updateStatus(String bizId, BizBillStatus status) {
Assert.hasText(bizId, CommonDomainConstants.ID_NOT_BLANK);
this.commonDomainService.updateStatus(NonOrderStorage.class, bizId, status.getId());
}
@Override
public Map<String, Object> slicedNonOrderStorageList(NonOrderStorageQueryRequest nonOrderStorageQueryRequest) {
QueryDescriptor queryDescriptor = this.sqlExecutorDao.getQuery(QUERY_XML_FILE_PATH, "nonOrderStorage");
......
......@@ -8,6 +8,7 @@ import com.google.gson.Gson;
import com.huigou.cache.DictUtil;
import com.huigou.context.Operator;
import com.huigou.context.OrgUnit;
import com.huigou.data.domain.model.CommonDomainConstants;
import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.data.query.model.QueryModel;
import com.huigou.topsun.base.bsnMessage.appliction.BsnMessageApplication;
......@@ -18,6 +19,7 @@ import com.huigou.topsun.base.bsnMessage.repository.BsnMessageExecuteRepository;
import com.huigou.topsun.base.bsnMessage.repository.BsnMessageSponsorRepository;
import com.huigou.topsun.sap.common.DefaultHttpClient;
import com.huigou.topsun.sap.common.application.SapMutualEpLogApplication;
import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement;
import com.huigou.topsun.sap.nonProdApply.application.NonProdApplyApplication;
import com.huigou.topsun.sap.nonProdApply.application.NonProdApplyDeptApplication;
import com.huigou.topsun.sap.nonProdApply.domain.NonProdApplyBaseInfo;
......@@ -43,6 +45,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
import javax.annotation.Resource;
import java.util.*;
......@@ -205,6 +208,34 @@ public class NonProdApplyApplicationImpl extends FlowBroker implements NonProdA
nonProdApplyBaseInfoRepository.save(nonProdApplyBaseInfo);
}
/**
* 流程撤销事件
**/
@Override
protected void onRecallProcessInstance(DelegateExecution delegateExecution) {
String bizId = delegateExecution.getProcessBusinessKey();
// 修改单据状态为申请
updateStatus(bizId, BizBillStatus.APPLYING);
}
/**
* 回收事件
**/
@Override
protected void onWithdraw(DelegateTask delegateTask, String destActivityId) {
super.onWithdraw(delegateTask, destActivityId);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (destActivityId.equalsIgnoreCase("apply")) {
updateStatus(bizId, BizBillStatus.APPLYING);
}
}
@Transactional
private void updateStatus(String bizId, BizBillStatus status) {
Assert.hasText(bizId, CommonDomainConstants.ID_NOT_BLANK);
this.commonDomainService.updateStatus(NonProdApplyBaseInfo.class, bizId, status.getId());
}
/**
* @param delegateTask
* @param destActivityId 回退到的目标节点id
......
package com.huigou.topsun.sap.nonProducePick.application.impl;
import com.huigou.data.domain.model.CommonDomainConstants;
import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.data.query.model.QueryModel;
import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement;
import com.huigou.topsun.sap.nonProducePick.application.NonProducePickApplication;
import com.huigou.topsun.sap.nonProducePick.application.NonProducePickItemApplication;
import com.huigou.topsun.sap.nonProducePick.domain.NonProducePick;
......@@ -15,6 +17,8 @@ import org.activiti.engine.delegate.DelegateExecution;
import org.activiti.engine.delegate.DelegateTask;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
import java.util.List;
import java.util.Map;
......@@ -80,6 +84,45 @@ public class NonProducePickApplicationImpl extends FlowBroker implements NonProd
// 返回业务数据给流程实例,
return ClassHelper.toMap(nonProducePickRepository.getOne(bizId));
}
/**
* 流程撤销事件
**/
@Override
protected void onRecallProcessInstance(DelegateExecution delegateExecution) {
String bizId = delegateExecution.getProcessBusinessKey();
// 修改单据状态为申请
updateStatus(bizId, BizBillStatus.APPLYING);
}
/**
* 任务完成前执行
*/
@Override
protected void onBeforeComplete(DelegateTask delegateTask) {
super.onBeforeComplete(delegateTask);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (this.isApplyProcUnit(delegateTask) && this.getApprovalParameter().isAdvanceProcessAction()) {
updateStatus(bizId, BizBillStatus.APPROVING);
}
}
/**
* 回收事件
**/
@Override
protected void onWithdraw(DelegateTask delegateTask, String destActivityId) {
super.onWithdraw(delegateTask, destActivityId);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (destActivityId.equalsIgnoreCase("apply")) {
updateStatus(bizId, BizBillStatus.APPLYING);
}
}
@Transactional
private void updateStatus(String bizId, BizBillStatus status) {
Assert.hasText(bizId, CommonDomainConstants.ID_NOT_BLANK);
this.commonDomainService.updateStatus(NonProducePick.class, bizId, status.getId());
}
@Override
protected void onEnd(DelegateExecution delegateExecution) {
......
......@@ -3,9 +3,11 @@ package com.huigou.topsun.sap.purchase.application.impl;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSONObject;
import com.huigou.cache.SystemCache;
import com.huigou.data.domain.model.CommonDomainConstants;
import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.data.query.model.QueryModel;
import com.huigou.topsun.sap.common.HttpClient;
import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement;
import com.huigou.topsun.sap.purchase.application.SapPurchaseApplication;
import com.huigou.topsun.sap.purchase.application.SapPurchaseItemApplication;
import com.huigou.topsun.sap.purchase.domain.SapPurchase;
......@@ -21,6 +23,8 @@ import com.huigou.util.ClassHelper;
import org.activiti.engine.delegate.DelegateExecution;
import org.activiti.engine.delegate.DelegateTask;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
import javax.annotation.Resource;
import java.io.IOException;
......@@ -75,6 +79,47 @@ public class SapPurchaseApplicationImpl extends FlowBroker implements SapPurchas
return ClassHelper.toMap(sapPurchaseRepository.getOne(bizId));
}
/**
* 流程撤销事件
**/
@Override
protected void onRecallProcessInstance(DelegateExecution delegateExecution) {
String bizId = delegateExecution.getProcessBusinessKey();
// 修改单据状态为申请
updateStatus(bizId, BizBillStatus.APPLYING);
}
/**
* 任务完成前执行
*/
@Override
protected void onBeforeComplete(DelegateTask delegateTask) {
super.onBeforeComplete(delegateTask);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (this.isApplyProcUnit(delegateTask) && this.getApprovalParameter().isAdvanceProcessAction()) {
updateStatus(bizId, BizBillStatus.APPROVING);
}
}
/**
* 回收事件
**/
@Override
protected void onWithdraw(DelegateTask delegateTask, String destActivityId) {
super.onWithdraw(delegateTask, destActivityId);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (destActivityId.equalsIgnoreCase("apply")) {
updateStatus(bizId, BizBillStatus.APPLYING);
}
}
@Transactional
private void updateStatus(String bizId, BizBillStatus status) {
Assert.hasText(bizId, CommonDomainConstants.ID_NOT_BLANK);
this.commonDomainService.updateStatus(SapPurchase.class, bizId, status.getId());
}
@Override
protected void onEnd(DelegateExecution delegateExecution) {
super.onEnd(delegateExecution);
......
......@@ -6,9 +6,11 @@ import com.fasterxml.jackson.databind.ObjectMapper;
import com.huigou.context.Operator;
import com.huigou.context.OrgUnit;
import com.huigou.context.ThreadLocalUtil;
import com.huigou.data.domain.model.CommonDomainConstants;
import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.data.query.model.QueryModel;
import com.huigou.topsun.sap.common.DefaultHttpClient;
import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement;
import com.huigou.topsun.sap.purchaseApproval.application.SapPurchaseApprovalApplication;
import com.huigou.topsun.sap.purchaseApproval.application.SapPurchaseApprovalItemApplication;
import com.huigou.topsun.sap.purchaseApproval.domain.SapPurchaseApproval;
......@@ -32,6 +34,7 @@ import org.activiti.engine.runtime.ProcessInstance;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
import javax.annotation.Resource;
import java.text.ParseException;
......@@ -81,6 +84,46 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa
return ClassHelper.toMap(sapPurchaseApprovalRepository.getOne(bizId));
}
/**
* 流程撤销事件
**/
@Override
protected void onRecallProcessInstance(DelegateExecution delegateExecution) {
String bizId = delegateExecution.getProcessBusinessKey();
// 修改单据状态为申请
updateStatus(bizId, BizBillStatus.APPLYING);
}
/**
* 任务完成前执行
*/
@Override
protected void onBeforeComplete(DelegateTask delegateTask) {
super.onBeforeComplete(delegateTask);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (this.isApplyProcUnit(delegateTask) && this.getApprovalParameter().isAdvanceProcessAction()) {
updateStatus(bizId, BizBillStatus.APPROVING);
}
}
/**
* 回收事件
**/
@Override
protected void onWithdraw(DelegateTask delegateTask, String destActivityId) {
super.onWithdraw(delegateTask, destActivityId);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (destActivityId.equalsIgnoreCase("apply")) {
updateStatus(bizId, BizBillStatus.APPLYING);
}
}
@Transactional
private void updateStatus(String bizId, BizBillStatus status) {
Assert.hasText(bizId, CommonDomainConstants.ID_NOT_BLANK);
this.commonDomainService.updateStatus(SapPurchaseApproval.class, bizId, status.getId());
}
@Override
protected void onEnd(DelegateExecution delegateExecution) {
super.onEnd(delegateExecution);
......
......@@ -3,9 +3,11 @@ package com.huigou.topsun.sap.purchaseInfoRecord.application.impl;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSONObject;
import com.huigou.cache.SystemCache;
import com.huigou.data.domain.model.CommonDomainConstants;
import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.data.query.model.QueryModel;
import com.huigou.topsun.sap.common.HttpClient;
import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement;
import com.huigou.topsun.sap.purchaseInfoRecord.application.SapPurchaseInfoRecordApplication;
import com.huigou.topsun.sap.purchaseInfoRecord.application.SapPurchaseInfoRecordItemApplication;
import com.huigou.topsun.sap.purchaseInfoRecord.domain.SapPurchaseInfoRecord;
......@@ -21,6 +23,8 @@ import org.activiti.engine.delegate.DelegateExecution;
import org.activiti.engine.delegate.DelegateTask;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
import javax.annotation.Resource;
import java.io.IOException;
......@@ -66,6 +70,46 @@ public class SapPurchaseInfoRecordApplicationImpl extends FlowBroker implements
return ClassHelper.toMap(sapPurchaseInfoRecordRepository.getOne(bizId));
}
/**
* 流程撤销事件
**/
@Override
protected void onRecallProcessInstance(DelegateExecution delegateExecution) {
String bizId = delegateExecution.getProcessBusinessKey();
// 修改单据状态为申请
updateStatus(bizId, BizBillStatus.APPLYING);
}
/**
* 任务完成前执行
*/
@Override
protected void onBeforeComplete(DelegateTask delegateTask) {
super.onBeforeComplete(delegateTask);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (this.isApplyProcUnit(delegateTask) && this.getApprovalParameter().isAdvanceProcessAction()) {
updateStatus(bizId, BizBillStatus.APPROVING);
}
}
/**
* 回收事件
**/
@Override
protected void onWithdraw(DelegateTask delegateTask, String destActivityId) {
super.onWithdraw(delegateTask, destActivityId);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (destActivityId.equalsIgnoreCase("apply")) {
updateStatus(bizId, BizBillStatus.APPLYING);
}
}
@Transactional
private void updateStatus(String bizId, BizBillStatus status) {
Assert.hasText(bizId, CommonDomainConstants.ID_NOT_BLANK);
this.commonDomainService.updateStatus(SapPurchaseInfoRecord.class, bizId, status.getId());
}
@Override
protected void onEnd(DelegateExecution delegateExecution) {
super.onEnd(delegateExecution);
......
......@@ -5,9 +5,11 @@ import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.huigou.context.Operator;
import com.huigou.context.OrgUnit;
import com.huigou.data.domain.model.CommonDomainConstants;
import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.data.query.model.QueryModel;
import com.huigou.topsun.sap.common.DefaultHttpClient;
import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement;
import com.huigou.topsun.sap.purchaseApproval.application.impl.SapPurchaseApprovalApplicationImpl;
import com.huigou.topsun.sap.purchaseOrder.application.SapPurchaseOrderApplication;
import com.huigou.topsun.sap.purchaseOrder.application.SapPurchaseOrderItemApplication;
......@@ -28,6 +30,7 @@ import org.activiti.engine.delegate.DelegateTask;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
import javax.annotation.Resource;
import java.util.*;
......@@ -75,6 +78,45 @@ public class SapPurchaseOrderApplicationImpl extends FlowBroker implements SapPu
// 返回业务数据给流程实例
return ClassHelper.toMap(sapPurchaseOrderRepository.getOne(bizId));
}
/**
* 流程撤销事件
**/
@Override
protected void onRecallProcessInstance(DelegateExecution delegateExecution) {
String bizId = delegateExecution.getProcessBusinessKey();
// 修改单据状态为申请
updateStatus(bizId, BizBillStatus.APPLYING);
}
/**
* 任务完成前执行
*/
@Override
protected void onBeforeComplete(DelegateTask delegateTask) {
super.onBeforeComplete(delegateTask);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (this.isApplyProcUnit(delegateTask) && this.getApprovalParameter().isAdvanceProcessAction()) {
updateStatus(bizId, BizBillStatus.APPROVING);
}
}
/**
* 回收事件
**/
@Override
protected void onWithdraw(DelegateTask delegateTask, String destActivityId) {
super.onWithdraw(delegateTask, destActivityId);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (destActivityId.equalsIgnoreCase("apply")) {
updateStatus(bizId, BizBillStatus.APPLYING);
}
}
@Transactional
private void updateStatus(String bizId, BizBillStatus status) {
Assert.hasText(bizId, CommonDomainConstants.ID_NOT_BLANK);
this.commonDomainService.updateStatus(SapPurchaseOrder.class, bizId, status.getId());
}
@Override
protected void onEnd(DelegateExecution delegateExecution) {
......
......@@ -4,10 +4,12 @@ import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.lang.Assert;
import com.alibaba.fastjson.JSONObject;
import com.huigou.cache.SystemCache;
import com.huigou.data.domain.model.CommonDomainConstants;
import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.data.query.model.QueryModel;
import com.huigou.topsun.sap.common.HttpClient;
import com.huigou.topsun.sap.common.domain.SapResult;
import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement;
import com.huigou.topsun.sap.qualityInfoRecord.application.SapQualityInfoRecordApplication;
import com.huigou.topsun.sap.qualityInfoRecord.application.SapQualityInfoRecordItemApplication;
import com.huigou.topsun.sap.qualityInfoRecord.domain.SapQualityInfoRecord;
......@@ -25,6 +27,7 @@ import org.activiti.engine.delegate.DelegateExecution;
import org.activiti.engine.delegate.DelegateTask;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.io.IOException;
......@@ -105,6 +108,34 @@ public class SapQualityInfoRecordApplicationImpl extends FlowBroker implements S
return ClassHelper.toMap(sapQualityInfoRecordRepository.getOne(bizId));
}
/**
* 流程撤销事件
**/
@Override
protected void onRecallProcessInstance(DelegateExecution delegateExecution) {
String bizId = delegateExecution.getProcessBusinessKey();
// 修改单据状态为申请
updateStatus(bizId, BizBillStatus.APPLYING);
}
/**
* 回收事件
**/
@Override
protected void onWithdraw(DelegateTask delegateTask, String destActivityId) {
super.onWithdraw(delegateTask, destActivityId);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (destActivityId.equalsIgnoreCase("apply")) {
updateStatus(bizId, BizBillStatus.APPLYING);
}
}
@Transactional
private void updateStatus(String bizId, BizBillStatus status) {
org.springframework.util.Assert.hasText(bizId, CommonDomainConstants.ID_NOT_BLANK);
this.commonDomainService.updateStatus(SapQualityInfoRecord.class, bizId, status.getId());
}
@Override
protected void onEnd(DelegateExecution delegateExecution) {
super.onEnd(delegateExecution);
......
......@@ -5,10 +5,13 @@ import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.huigou.data.domain.model.CommonDomainConstants;
import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.data.query.model.QueryModel;
import com.huigou.topsun.sap.common.DefaultHttpClient;
import com.huigou.topsun.sap.common.domain.Message;
import com.huigou.topsun.sap.common.serializer.MessageCodec;
import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement;
import com.huigou.topsun.sap.statsIndicators.application.SapStatsIndicatorsApplication;
import com.huigou.topsun.sap.statsIndicators.domain.SapStatsIndicators;
import com.huigou.topsun.sap.statsIndicators.domain.SapStatsIndicatorsDetail;
......@@ -35,6 +38,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
import java.beans.IntrospectionException;
......@@ -104,7 +108,45 @@ public class SapStatsIndicatorsApplicationImpl extends FlowBroker implements Sap
// 返回业务数据给流程实例,
return ClassHelper.toMap(sapStatsIndicatorsRepository.getOne(bizId));
}
/**
* 流程撤销事件
**/
@Override
protected void onRecallProcessInstance(DelegateExecution delegateExecution) {
String bizId = delegateExecution.getProcessBusinessKey();
// 修改单据状态为申请
updateStatus(bizId, BizBillStatus.APPLYING);
}
/**
* 任务完成前执行
*/
@Override
protected void onBeforeComplete(DelegateTask delegateTask) {
super.onBeforeComplete(delegateTask);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (this.isApplyProcUnit(delegateTask) && this.getApprovalParameter().isAdvanceProcessAction()) {
updateStatus(bizId, BizBillStatus.APPROVING);
}
}
/**
* 回收事件
**/
@Override
protected void onWithdraw(DelegateTask delegateTask, String destActivityId) {
super.onWithdraw(delegateTask, destActivityId);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (destActivityId.equalsIgnoreCase("apply")) {
updateStatus(bizId, BizBillStatus.APPLYING);
}
}
@Transactional
private void updateStatus(String bizId, BizBillStatus status) {
Assert.hasText(bizId, CommonDomainConstants.ID_NOT_BLANK);
this.commonDomainService.updateStatus(SapStatsIndicators.class, bizId, status.getId());
}
/**
* 流程实例结束
......@@ -156,7 +198,9 @@ public class SapStatsIndicatorsApplicationImpl extends FlowBroker implements Sap
@Override
public Map<String, Object> slicedStatsIndicatorsQuery(SapStatsIndicatorsQueryRequest query) {
QueryDescriptor queryDescriptor = this.sqlExecutorDao.getQuery(QUERY_XML_FILE_PATH, "slicedStatsIndicatorsQuery");
return this.sqlExecutorDao.executeSlicedQuery(queryDescriptor, query);
QueryModel queryModel = this.sqlExecutorDao.getQueryModel(queryDescriptor, query);
queryModel.putDictionary("status",BizBillStatus.getMap());
return this.sqlExecutorDao.executeSlicedQuery(queryModel);
}
......
......@@ -6,10 +6,12 @@ import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.huigou.cache.DictUtil;
import com.huigou.data.domain.model.CommonDomainConstants;
import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.data.query.model.QueryModel;
import com.huigou.topsun.sap.common.DefaultHttpClient;
import com.huigou.topsun.sap.common.application.SapMutualEpLogApplication;
import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement;
import com.huigou.topsun.sap.suppliers.application.SuppliersDataApplication;
import com.huigou.topsun.sap.suppliers.domain.*;
import com.huigou.topsun.sap.suppliers.domain.query.SuppliersBankQueryRequest;
......@@ -37,6 +39,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
import java.util.*;
......@@ -199,6 +202,35 @@ public class SuppliersDataApplicationImpl extends FlowBroker implements Supplier
}
}
/**
* 流程撤销事件
**/
@Override
protected void onRecallProcessInstance(DelegateExecution delegateExecution) {
String bizId = delegateExecution.getProcessBusinessKey();
// 修改单据状态为申请
updateStatus(bizId, BizBillStatus.APPLYING);
}
/**
* 回收事件
**/
@Override
protected void onWithdraw(DelegateTask delegateTask, String destActivityId) {
super.onWithdraw(delegateTask, destActivityId);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (destActivityId.equalsIgnoreCase("apply")) {
updateStatus(bizId, BizBillStatus.APPLYING);
}
}
@Transactional
private void updateStatus(String bizId, BizBillStatus status) {
Assert.hasText(bizId, CommonDomainConstants.ID_NOT_BLANK);
this.commonDomainService.updateStatus(SuppliersInfo.class, bizId, status.getId());
}
/**
* 流程实例结束
*
......
......@@ -7,6 +7,7 @@ import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.data.query.model.QueryModel;
import com.huigou.topsun.sap.common.HttpClient;
import com.huigou.topsun.sap.common.domain.SapResult;
import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement;
import com.huigou.topsun.sap.wasteSale.domain.WasteSale;
import com.huigou.topsun.sap.wasteSale.domain.WasteSaleItem;
import com.huigou.topsun.sap.wasteSale.application.WasteSaleApplication;
......@@ -164,6 +165,28 @@ public class WasteSaleApplicationImpl extends FlowBroker implements WasteSaleApp
this.commonDomainService.updateStatus(WasteSale.class, bizId, status.getId());
}
/**
* 流程撤销事件
**/
@Override
protected void onRecallProcessInstance(DelegateExecution delegateExecution) {
String bizId = delegateExecution.getProcessBusinessKey();
// 修改单据状态为申请
updateStatus(bizId, BizBillStatus.APPLYING);
}
/**
* 回收事件
**/
@Override
protected void onWithdraw(DelegateTask delegateTask, String destActivityId) {
super.onWithdraw(delegateTask, destActivityId);
String bizId = delegateTask.getExecution().getProcessBusinessKey();
if (destActivityId.equalsIgnoreCase("apply")) {
updateStatus(bizId, BizBillStatus.APPLYING);
}
}
@Override
protected void onEnd(DelegateExecution delegateExecution) {
super.onEnd(delegateExecution);
......
......@@ -6,6 +6,7 @@ import com.huigou.topsun.syncOrg.vo.PersonVo;
import com.huigou.topsun.syncOrg.vo.SapPersonVo;
import com.huigou.uasp.bmp.opm.domain.model.org.Org;
import java.io.IOException;
import java.util.List;
/**
......@@ -14,6 +15,10 @@ import java.util.List;
* @Description:
*/
public interface OrgSyncApplication {
/**
* 查询文件配置地址
*/
static final String QUERY_XML_FILE_PATH = "config/uasp/query/bmp/opm.xml";
/**
* 构建机构、部门、岗位、人员VO类
......@@ -36,13 +41,13 @@ public interface OrgSyncApplication {
public List<PersonVo> buildPersonVo(List<Org> psmList);
/**
* 构建SAP人员
* @return
* 同步SAP人员
*/
public List<SapPersonVo> buildSapPersonVo();
public void syncOrgToSap() throws IOException;
/**
* 同步SAP人员
* 构建SAP人员
* @return
*/
public void syncOrgToSap();
List<SapPersonVo> slicedSapPersonVoList();
}
package com.huigou.topsun.syncOrg.application.impl;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSON;
import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.topsun.common.OrgKindId;
import com.huigou.topsun.sap.common.DefaultHttpClient;
import com.huigou.topsun.syncOrg.application.OrgSyncApplication;
import com.huigou.topsun.syncOrg.vo.*;
import com.huigou.topsun.sap.common.DefaultHttpClient;
import com.huigou.topsun.sap.common.application.SapMutualEpLogApplication;
import com.huigou.topsun.sap.common.domain.EpResult;
import com.huigou.uasp.bmp.common.application.BaseApplication;
import com.huigou.uasp.bmp.opm.domain.model.org.Org;
import com.huigou.uasp.bmp.opm.domain.model.org.Person;
import com.huigou.uasp.bmp.opm.repository.org.OrgRepository;
......@@ -18,10 +17,9 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.io.IOException;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
......@@ -30,14 +28,12 @@ import java.util.stream.Collectors;
* @Description:
*/
@Service("orgSyncApplication")
public class OrgSyncApplicationImpl implements OrgSyncApplication {
public class OrgSyncApplicationImpl extends BaseApplication implements OrgSyncApplication {
private final static Logger LOG = LoggerFactory.getLogger(OrgSyncApplicationImpl.class);
@Autowired
private OrgRepository orgRepository;
@Autowired
private DefaultHttpClient httpClient;
@Autowired
SapMutualEpLogApplication sapMutualEpLogApplication;
@Override
public EpOrgVo buildOrgVo () {
......@@ -125,25 +121,17 @@ public class OrgSyncApplicationImpl implements OrgSyncApplication {
}
@Override
public List<SapPersonVo> buildSapPersonVo(){
List<Org> orgList = orgRepository.findAll();
//人员
return orgList
.stream()
.filter(org -> OrgKindId.PSM.getId().equals(org.getOrgKindId()))
.map(org -> {
SapPersonVo sapPersonVo = new SapPersonVo();
Person person = org.getPerson();
BeanUtil.copyProperties(person,sapPersonVo);
sapPersonVo.setParentFullName(org.getFullName());
return sapPersonVo;
})
.collect(Collectors.toList());
public void syncOrgToSap() throws IOException {
List<SapPersonVo> sapPersonVoList = this.slicedSapPersonVoList();
String execute = httpClient.execute(sapPersonVoList, "");
LOG.info("====同步到SAP返回消息===={}",execute);
LOG.info(DateUtil.getDateFormat(new Date())+"====同步的组织结构数据===={}",sapPersonVoList);
}
@Override
public void syncOrgToSap() {
public List<SapPersonVo> slicedSapPersonVoList() {
QueryDescriptor queryDescriptor = this.sqlExecutorDao.getQuery(QUERY_XML_FILE_PATH, "slicedSapPersonVoList");
return this.sqlExecutorDao.queryToList(queryDescriptor.getSql(), SapPersonVo.class);
}
/**
......@@ -158,21 +146,4 @@ public class OrgSyncApplicationImpl implements OrgSyncApplication {
int abs = Math.abs(value.hashCode());
return String.valueOf(abs);
}
/**
* 记录日志
* @param epResult
* @param epOrgVo
*/
public void saveMutualEpLog(EpResult epResult,EpOrgVo epOrgVo,String systemType){
//日志记录
Map<String, Object> resultMap = new HashMap<>();
resultMap.put("type", epResult.getCode());
resultMap.put("message", epResult.getMsg());
resultMap.put("businessType", systemType);
resultMap.put("businessId", "syncOrg");
resultMap.put("parameter", JSON.toJSONString(epOrgVo));
resultMap.put("sequence", resultMap.get("row"));
sapMutualEpLogApplication.saveSapMutualEpLog(resultMap);
}
}
......@@ -3,11 +3,9 @@ package com.huigou.topsun.syncOrg.scheduled;
import com.huigou.topsun.syncOrg.application.OrgSyncApplication;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import java.io.IOException;
import java.util.Date;
/**
* @Auther: xin.lu
* @Date: 2024/03/24/9:45
......@@ -21,10 +19,7 @@ public class OrgSync {
/** * 每10分钟执行一次 */
//@Scheduled(cron = "0 0/10 * * * ?")
public void syncOrgToSap() {
public void syncOrgToSap() throws IOException {
orgSyncApplication.syncOrgToSap();
System.out.println("十分钟了======="+(new Date()).toString());
}
}
......@@ -101,12 +101,30 @@ public class SapPersonVo implements Serializable {
/**
* 参考明细
*/
@JsonProperty("CONSULT_ITEM")
private String consultItem;
// @JsonProperty("CONSULT_ITEM")
// private String consultItem;
/**
* 公司代码
*/
@JsonProperty("COMPANY_CODE")
private String companyCode;
/**
* 地区
*/
@JsonProperty("REGION")
private String region;
/**
* 语言
*/
@JsonProperty("LANGU")
private String langu;
/**
* 成本中心
*/
@JsonProperty("KOSTL")
private String kostl;
}
<?xml version="1.0" encoding="UTF-8"?>
<query-mappings>
<query name="slicedSapPersonVoList" label="构建SAP人员结构">
<sql-query>
SELECT
o.FULL_NAME AS PARENT_FULL_NAME,
p.CODE,
p.NAME,
p.EMAIL,
p.ENGLISH_NAME,
p.sex,
p.OFFICE_PHONE,
p.MOBILE_PHONE,
p.ZIP,
p.FAMILY_ADDRESS,
p.COUNTRY,
p.BANK_COUNTRY,
p.BANK_CODE,
p.BANK_ACCOUNT_NUMBER,
p.COMPANY_CODE,
p.REGION,
p.LANGU,
op.PROPERTY_VALUE AS KOSTL
FROM sa_opperson p
LEFT JOIN sa_oporg o ON p.MAIN_ORG_ID = o.id
LEFT JOIN sa_oporgproperty op ON o.DEPT_ID = op.ORG_ID
</sql-query>
</query>
</query-mappings>
\ No newline at end of file
......@@ -8,6 +8,7 @@
where 1=1
</sql-query>
<condition column="id" name="id" type="java.lang.String" symbol="=" alias="t"/>
<condition column="bill_code" name="billCode" type="java.lang.String" symbol="like" alias="t"/>
<condition column="zep_ftype" name="zepFtype" 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