Commit e9a7c5ae authored by 刘学辉's avatar 刘学辉

供应商主数据修改、删除流程,接口字段调整

parent 45e66517
......@@ -2,6 +2,7 @@ var gridManager = null;
var sapSuppliersPayGridManager = null;
var sapSuppliersBuyerGridManager = null;
var sapSuppliersBankGridManager = null;
var canEdit=true;
$(document).ready(function () {
initialize();
......@@ -15,6 +16,12 @@ function initialize(){
// if (isDetailPage) {
// $("#jobPageTop").hide();
// }
if (applyType=="-1"){
// $("form[id='submitForm']:text").attr("disabled","disabled");
// disableForm("submitForm","disabled");
UICtrl.setDisable($("#submitForm"));
canEdit=false;
}
}
/**
......@@ -34,9 +41,18 @@ function setId(id) {
* @return 打样申请的id
*/
function getId() {
return $("#id").val() || "";
var id=$("#id").val() || "";
return id;
}
function getsId() {
var sid=$("#id").val() || ""; //alert(applyType); alert($("#sId").val());
if (applyType!="0"){
sid=$("#sId").val();
}
return sid;
}
// 加载付款信息表格
function loadSuppliersPayListGrid() {
......@@ -64,7 +80,9 @@ function loadSuppliersPayListGrid() {
});
}
});
if (applyType=="-1"){
toolbarOptions=null;
}
// 表格
sapSuppliersPayGridManager = UICtrl.grid("#sapSuppliersPayGrid", {
//gridManager: null,
......@@ -109,11 +127,11 @@ function loadSuppliersPayListGrid() {
],
dataAction: "server",
url: web_app.name + '/sapSuppliersData/slicedSuppliersPayData.ajax',
parms: {sId: getId},
parms: {sId: getsId},
pageSize: 20,
usePager: true,
toolbar: toolbarOptions,
enabledEdit: true,
enabledEdit: canEdit,
width: "98%",
height: "300px",
heightDiff: -8,
......@@ -151,7 +169,9 @@ function loadSuppliersBuyerListGrid() {
});
}
});
if (applyType=="-1"){
toolbarOptions=null;
}
// 表格
sapSuppliersBuyerGridManager = UICtrl.grid("#sapSuppliersBuyerGrid", {
gridManager: null,
......@@ -215,11 +235,11 @@ function loadSuppliersBuyerListGrid() {
],
dataAction: "server",
url: web_app.name + '/sapSuppliersData/slicedSuppliersBuyerData.ajax',
parms: {sId: getId},
parms: {sId: getsId},
pageSize: 20,
usePager: true,
toolbar: toolbarOptions,
enabledEdit: true,
enabledEdit: canEdit,
width: "98%",
height: "300px",
heightDiff: -8,
......@@ -256,7 +276,9 @@ function loadSuppliersBankListGrid() {
});
}
});
if (applyType=="-1"){
toolbarOptions=null;
}
// 表格
sapSuppliersBankGridManager = UICtrl.grid("#sapSuppliersBankGrid", {
gridManager: null,
......@@ -305,11 +327,11 @@ function loadSuppliersBankListGrid() {
],
dataAction: "server",
url: web_app.name + '/sapSuppliersData/slicedSuppliersBankData.ajax',
parms: {sId: getId},
parms: {sId: getsId},
pageSize: 20,
usePager: true,
toolbar: toolbarOptions,
enabledEdit: true,
enabledEdit: canEdit,
width: "98%",
height: "300px",
heightDiff: -8,
......@@ -365,4 +387,41 @@ function getExtendedData(processAction) {
extendedData.suppliersBankList = Public.encodeJSONURI(datas);
}
return extendedData;
}
function disableForm(formId,isDisabled) {
var attr="disable";
if(!isDisabled){
attr="enable";
}
$("form[id='"+formId+"'] :text").attr("disabled",isDisabled);
$("form[id='"+formId+"'] textarea").attr("disabled",isDisabled);
$("form[id='"+formId+"'] select").attr("disabled",isDisabled);
$("form[id='"+formId+"'] :radio").attr("disabled",isDisabled);
$("form[id='"+formId+"'] :checkbox").attr("disabled",isDisabled);
//禁用jquery easyui中的下拉选(使用input生成的combox)
$("#" + formId + " input[class='combobox-f combo-f']").each(function () {
if (this.id) {alert("input"+this.id);
$("#" + this.id).combobox(attr);
}
});
//禁用jquery easyui中的下拉选(使用select生成的combox)
$("#" + formId + " select[class='combobox-f combo-f']").each(function () {
if (this.id) {
alert(this.id);
$("#" + this.id).combobox(attr);
}
});
//禁用jquery easyui中的日期组件dataBox
$("#" + formId + " input[class='datebox-f combo-f']").each(function () {
if (this.id) {
alert(this.id)
$("#" + this.id).datebox(attr);
}
});
}
\ No newline at end of file
......@@ -3,14 +3,26 @@
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head>
<script type="text/javascript">
var applyType ="${applyType}";
</script>
<x:base include="layout,dialog,grid,tree,combox,commonTree,date"/>
<x:script src='/biz/topsun/sap/suppliers/suppliersDataDetail.js'/>
</head>
<body>
<c:if test="${applyType==0}">
<x:billTitle title="供应商主数据维护申请表" needStatus="false" needPerson="true"/>
</c:if>
<c:if test="${applyType==1}">
<x:billTitle title="供应商主数据修改申请表" needStatus="false" needPerson="true"/>
</c:if>
<c:if test="${applyType==-1}">
<x:billTitle title="供应商主数据删除申请表" needStatus="false" needPerson="true"/>
</c:if>
<form class="hg-form" method="post" action="" id="submitForm">
<x:hidden name="id"/>
<x:hidden name="sId"/>
<x:hidden name="applyType"/>
<%-- <x:hidden name="billCode"/>--%>
<%-- <x:hidden name="fillinDate" type="datetime"/>--%>
<x:hidden name="fullId"/>
......@@ -36,8 +48,15 @@
<div class="hg-form-cols">
<div class="hg-form-row">
<x:inputC name="rltgr" label="BP角色" labelCol="1" fieldCol="2" required="true"/>
<x:inputC name="buGroup" label="业务伙伴分组" labelCol="1" fieldCol="2" required="true"/>
<x:inputC name="partner" label="业务伙伴编号" labelCol="1" fieldCol="2"/>
<c:if test="${applyType==0}">
<x:inputC name="buGroup" label="业务伙伴分组" labelCol="1" fieldCol="2" required="true"/>
<x:inputC name="partner" label="业务伙伴编号" labelCol="1" fieldCol="2" required="true"/>
</c:if>
<c:if test="${applyType==1||applyType==-1}">
<x:inputC name="buGroup" label="业务伙伴分组" labelCol="1" fieldCol="2" readonly="true"/>
<x:inputC name="partner" label="业务伙伴编号" labelCol="1" fieldCol="2" readonly="true"/>
</c:if>
<x:inputC name="title" label="称谓代码" labelCol="1" fieldCol="2"/>
<x:inputC name="nameOrg1" label="组织名称1" labelCol="1" fieldCol="2" required="true"/>
<x:inputC name="nameOrg2" label="组织名称2" labelCol="1" fieldCol="2"/>
......
var gridManager = null;
var refreshFlag = false;
$(document).ready(function () {
initializateUI()
......@@ -36,9 +37,19 @@ function loadSuppliersDataListGrid() {
columns: [
{display: "申请单编号", name: "billCode", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "申请状态", name: "statusTextView", width: 60, minWidth: 60, type: "string", align: "left"},
{display: "申请人", name: "personMemberName", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "申请部门", name: "deptName", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "申请日期", name: "fillinDate", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "操作类型", name: "applyType", width: 80, minWidth: 60, type: "string", align: "left"
,render : function (record, rowindex, value, column) {
if (value!=null&&value=="0") {
return "新增";
}else if (value!=null&&value=="1"){
return "修改";
} else {
return "删除";
}
}
},
{display: "业务伙伴分组", name: "buGroup", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "业务伙伴编号", name: "partner", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "组织名称1", name: "nameOrg1", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "组织名称2", name: "nameOrg2", width: 140, minWidth: 60, type: "string", align: "left"},
......@@ -55,7 +66,8 @@ function loadSuppliersDataListGrid() {
{display: "城市", name: "city1", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "邮编", name: "postCode1", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "税收编号", name: "stenr", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "申请人", name: "personMemberName", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "申请部门", name: "deptName", width: 120, minWidth: 60, type: "string", align: "left"},
],
dataAction: "server",
......@@ -71,7 +83,7 @@ function loadSuppliersDataListGrid() {
fixedCellHeight: true,
selectRowButtonOnly: true,
onDblClickRow: function (data, rowindex, rowobj) {
doView(data.id);
doView(data.id,data.applyType);
},
onAfterShowData: function (data){
console.log(data)
......@@ -97,9 +109,9 @@ function resetForm(obj) {
//删除按钮
function deleteHandler() {
function deleteHandler(id) {
// var rows = UICtrl.checkSelectedRows(gridManager);
var rows = gridManager.getSelectedRows();
/* var rows = gridManager.getSelectedRows();
var statusFlag="1";
for (var i=0;i<rows.length;i++){
if (rows[i].status!="0"){
......@@ -118,7 +130,21 @@ function deleteHandler() {
reloadGrid();
}
});
} */
let result=DataUtil.getUpdateRow(gridManager);
if (result.applyType=="-1"){
Public.tip("已经删除的不能再次操作!")
return false;
}
if(result.status!==3){
Public.tip("请选择一条审核完成后的数据!")
return false;
}
UICtrl.addTabItem({
tabid: 'suppliersDataDele'+id,
text: "供应商主数据删除",
url: web_app.name + '/sapSuppliersData/forwardSuppliersDataApply.job?bizId='+result.id+"&isDel=1"
});
}
function addHandler() {
......@@ -129,10 +155,17 @@ function addHandler() {
});
}
function doView(id) {
function doView(id,applyType) {
var title="供应商主数据申请详情";
if (applyType=="-1"){
title="供应商主数据删除详情";
}
if (applyType=="1"){
title="供应商主数据修改详情";
}
UICtrl.addTabItem({
tabid: 'suppliersData'+id,
text: "供应商主数据申请详情",
text: title,
url: web_app.name + '/sapSuppliersData/showSuppliersData.job?bizId='+id+"&isDetailPage=true"
});
}
......@@ -144,7 +177,7 @@ function initShowDialog() {
}
// 进行修改操作
function showUpdateDialog(id) {
UICtrl.showAjaxDialog({
/* UICtrl.showAjaxDialog({
title: "修改供应商主数据申请",
url: web_app.name + '/sapSuppliersData/showSuppliersData.load',
param: {
......@@ -156,40 +189,36 @@ function showUpdateDialog(id) {
start: false,
stop: false,
close: onDialogCloseHandler
});
}); */
let result=DataUtil.getUpdateRow(gridManager);
if (result.applyType=="-1"){
Public.tip("已经删除的不能再修改!")
return false;
}
if(result.status!==3){
Public.tip("请选择一条审核完成后数据!")
return false;
}
UICtrl.addTabItem({
tabid: 'suppliersDataModi'+id,
text: "供应商主数据修改详情",
url: web_app.name + '/sapSuppliersData/forwardSuppliersDataApply.job?bizId='+result.id
});
}
function doSaveDefine() {
var _self = this;
var id = getId();
// var code = $('#code').val();
//if (code.substr(0, 1) != "B" && code.substr(0, 1) != "F" && code.substr(0, 1) != "Q") {
// UICtrl.alert("标准编号必须以F、B、Q开头(F表示房屋、B表示地上附属物、Q表示青苗)!")
// return false;
// }
var libraryVersionYear = $('#libraryVersion').val().substr(0, 4);
var libraryVersionFh = $('#libraryVersion').val().substr(4, 1);
var libraryVersionNum = $('#libraryVersion').val().substr(5, 2);
//var url = "/compensateLibrary/insertCompensateLibrary.ajax";
if (id && id.length > 0)
url = "/compensateLibrary/updateCompensateLibrary.ajax";
$('#submitForm').ajaxSubmit({
url: web_app.name + (url),
success: function (id) {
setId(id);
$('#compensateLibraryList').fileList({
bizId: id
});
refreshFlag = true;
}
});
}
// function next(){
// UICtrl.addTabItem({
// tabid: 'showNonProdApplyNext',
// text: "非产品/非本成品类物料主数据维护申请详情",
// url: web_app.name + '/sapNonProdApply/forwardNonProdApplyNext.do?isDetailPage=true'
// });
// }
\ No newline at end of file
// }
// 关闭对话框
function onDialogCloseHandler() {
if (refreshFlag) {
reloadGrid();
refreshFlag = false;
}
}
\ No newline at end of file
......@@ -20,6 +20,8 @@
<x:inputC name="billCode" required="false" label="申请单号" labelCol="1"/>
<x:inputC name="partner" required="false" label="业务伙伴编号" labelCol="1"/>
<x:inputC name="nameOrg1" required="false" label="组织名称1" labelCol="1"/>
<x:selectC name="applyType" label="操作类型" labelCol="1" fieldCol="2" dictionary="applyType"/>
<x:selectC name="status" label="审批状态" labelCol="1" fieldCol="2" dictionary="bizBillStatus"/>
<x:searchButtons/>
</form>
<div class="blank_div clearfix"></div>
......
......@@ -15,12 +15,14 @@ import com.huigou.topsun.sap.nonProdApply.application.NonProdApplyDeptApplicatio
import com.huigou.topsun.sap.nonProdApply.domain.NonProdApplyBaseInfo;
import com.huigou.topsun.sap.nonProdApply.domain.SapNonProdApplyDept;
import com.huigou.topsun.sap.nonProdApply.domain.query.NonProdApplyBaseInfoQueryRequest;
import com.huigou.topsun.sap.nonProdApply.domain.vo.ProdApplyToSapVO;
import com.huigou.topsun.sap.nonProdApply.repository.NonProdApplyBaseInfoRepository;
import com.huigou.topsun.sap.nonProdApply.repository.NonProdApplyDeptRepository;
import com.huigou.topsun.sap.suppliers.domain.SuppliersBank;
import com.huigou.topsun.sap.suppliers.domain.SuppliersBuyer;
import com.huigou.topsun.sap.suppliers.domain.SuppliersInfo;
import com.huigou.topsun.sap.suppliers.domain.SuppliersPay;
import com.huigou.topsun.util.CommonUtil;
import com.huigou.uasp.bmp.common.BizBillStatus;
import com.huigou.uasp.bpm.FlowBroker;
import com.huigou.util.ClassHelper;
......@@ -36,6 +38,7 @@ import org.springframework.transaction.annotation.Transactional;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
@Service("nonProdApplyApplication")
public class NonProdApplyApplicationImpl extends FlowBroker implements NonProdApplyApplication {
......@@ -175,8 +178,10 @@ public class NonProdApplyApplicationImpl extends FlowBroker implements NonProdA
param.put("DATA", paramList);*/
Map<String, Object> map = new HashMap<>();
Gson gson = new Gson();
BeanUtil.copyProperties(prodApplyBaseInfo, map);
ProdApplyToSapVO sapVO=new ProdApplyToSapVO();
ClassHelper.copyProperties(prodApplyBaseInfo,sapVO);
ClassHelper.copyProperties(applyDept,sapVO);
BeanUtil.copyProperties(sapVO, map);
map.remove("fullId");
map.remove("personMemberId");
......@@ -188,17 +193,24 @@ public class NonProdApplyApplicationImpl extends FlowBroker implements NonProdA
map.remove("organId");
map.remove("organName");
map.remove("version");
BeanUtil.copyProperties(applyDept, map);
map.put("maktxZh",map.get("maktx"));
map.put("sparsZh",map.get("spars"));
map.put("updkz","I");
// BeanUtil.copyProperties(applyDept, map);
Set<String> keySet=map.keySet();
Map <String,Object>upperMap=new HashMap<String,Object>();
for (String str:keySet){
upperMap.put(CommonUtil.camelToUnderline(str).toUpperCase(),map.get(str));
}
ObjectMapper objectMapper = new ObjectMapper();
String url = "bd_mastdata/material";
Map<String, Object> resultMap = new HashMap<>();
resultMap.put("businessType", "nonProdApplyBaseInfo");
resultMap.put("businessId", prodApplyBaseInfo.getId());
resultMap.put("parameter", JSON.toJSONString(map));
resultMap.put("parameter", JSON.toJSONString(upperMap));
try {
String result = defaultHttpClient.execute(map, url);
String result = defaultHttpClient.execute(upperMap, url);
List<Map<String, Object>> resultList = objectMapper.readValue(result, new TypeReference<List<Map<String, Object>>>() {
});
resultMap = resultList.get(0);
......
......@@ -17,6 +17,8 @@ import java.util.Map;
public interface SuppliersDataApplication {
String PROCESS_DEFINITION_KEY = "sapSuppliersDataProc";
String PROCESS_DEFINITION_KEY2 = "sapSuppliersDataModiProc";
String PROCESS_DEFINITION_KEY3 = "sapSuppliersDataDeleProc";
String QUERY_XML_FILE_PATH= "config/topsun/sap/sapSuppliersData/suppliersData.xml";
......@@ -32,4 +34,6 @@ public interface SuppliersDataApplication {
Map<String, Object> loadSuppliersBankDatas(SuppliersBankQueryRequest queryRequest);
void deleteSuppliersDataByIds( List<String> ids);
List<SuppliersInfo> findDeletedSuppliersDataById(String id);
}
......@@ -20,9 +20,11 @@ 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.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
......@@ -62,11 +64,52 @@ public class SuppliersDataController extends CommonController {
this.putAttribute("processDefinitionKey",SuppliersDataApplication.PROCESS_DEFINITION_KEY);
this.putAttribute("procUnitId","Apply");//定义流程环节的id
this.putAttribute("applyType","0");
SDO sdo = this.getSDO();
String bizId=sdo.getString("bizId");
SuppliersInfo suppliersInfo = new SuppliersInfo();
String isDel=sdo.getString("isDel");
if (StringUtil.isNotBlank(isDel)){ //删除流程
suppliersInfo = suppliersDataApplication.loadSuppliersDataById(bizId);
this.putAttribute("processDefinitionKey", SuppliersDataApplication.PROCESS_DEFINITION_KEY3);
this.putAttribute("applyType", "-1");
suppliersInfo.setApplyType("-1");
suppliersInfo.setBillCode("");
suppliersInfo.setId("");
// suppliersInfo.setSId(bizId);
Map<String, Object> map = new HashMap();
map.put("bizId", "");
sdo.setProperties(map);
suppliersInfo.setFullId("");
this.putAttribute("bizId", "");
this.putAttribute("sId", bizId);
this.putAttribute("id", "");
} else {
if (StringUtil.isNotBlank(bizId)) {
suppliersInfo = suppliersDataApplication.loadSuppliersDataById(bizId);
List deletedList=suppliersDataApplication.findDeletedSuppliersDataById(bizId);
if (deletedList.size()>0){
throw new RuntimeException("该供应商已经执行删除,不能再次修改了!");
}
this.putAttribute("processDefinitionKey", SuppliersDataApplication.PROCESS_DEFINITION_KEY2);
this.putAttribute("applyType", "1");
suppliersInfo.setApplyType("1");
suppliersInfo.setBillCode("");
suppliersInfo.setId("");
// suppliersInfo.setSId(bizId);
Map<String, Object> map = new HashMap();
map.put("bizId", "");
sdo.setProperties(map);
suppliersInfo.setFullId("");
this.putAttribute("bizId", "");
this.putAttribute("sId", bizId);
this.putAttribute("id", "");
}
}
suppliersInfo.setStatusId(BizBillStatus.APPLYING.getId());
Operator operator = getOperator();//获取当前操作员的详情信息
suppliersInfo.setDefaultValues(new OrgUnit(operator.getFullId(),operator.getFullName()));
return forward("suppliersDataDetail",suppliersInfo);
}
......@@ -74,8 +117,13 @@ public class SuppliersDataController extends CommonController {
SDO sdo = this.getSDO();
String id = sdo.getBizId();
String isDetailPage = sdo.getString("isDetailPage");
this.putAttribute("applyType","0");
if("true".equals(isDetailPage)) this.putAttribute("isDetailPage","true");
SuppliersInfo suppliersInfo = suppliersDataApplication.loadSuppliersDataById(id);
if (!(suppliersInfo.getApplyType().equals("0"))){
this.putAttribute("sId", id);
this.putAttribute("applyType",suppliersInfo.getApplyType());
}
return forward("suppliersDataDetail", suppliersInfo);
}
......
package com.huigou.topsun.sap.suppliers.domain;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;
import org.hibernate.annotations.GenericGenerator;
......@@ -30,60 +31,70 @@ public class SuppliersBank implements Serializable {
* 主表id
*/
@Column(name = "s_id")
@JSONField(name = "S_ID")
private String sId;
/**
* 银行所属国家/地区代码
*/
@Column(name = "banks")
@JSONField(name = "BANKS")
private String banks;
/**
* 银行代码
*/
@Column(name = "bankl")
@JSONField(name = "BANKL")
private String bankl;
/**
* 银行帐户号码
*/
@Column(name = "bankn")
@JSONField(name = "BANKN")
private String bankn;
/**
* 账户持有人姓名
*/
@Column(name = "koinh")
@JSONField(name = "KOINH")
private String koinh;
/**
* 银行控制代码
*/
@Column(name = "bkont")
@JSONField(name = "BKONT")
private String bkont;
/**
* 对方开户行类型
*/
@Column(name = "bvtyp")
@JSONField(name = "BVTYP")
private String bvtyp;
/**
* 财务机构名称
*/
@Column(name = "banka")
@JSONField(name = "BANKA")
private String banka;
/**
* 分行
*/
@Column(name = "brnch")
@JSONField(name = "BRNCH")
private String brnch;
/**
* 银行细目的参考明细
*/
@Column(name = "bkref")
@JSONField(name = "BKREF")
private String bkref;
@Column(name = "sequence")
......
package com.huigou.topsun.sap.suppliers.domain;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;
import org.hibernate.annotations.GenericGenerator;
......@@ -30,54 +31,63 @@ public class SuppliersBuyer implements Serializable {
* 主表id
*/
@Column(name = "s_id")
@JSONField(name = "S_ID")
private String sId;
/**
* 采购组织
*/
@Column(name = "ekorg")
@JSONField(name = "EKORG")
private String ekorg;
/**
* 货币码
*/
@Column(name = "waers")
@JSONField(name = "WAERS")
private String waers;
/**
* 付款条件代码
*/
@Column(name = "zterm")
@JSONField(name = "ZTERM")
private String zterm;
/**
* 国际贸易条款
*/
@Column(name = "inco1")
@JSONField(name = "INCO1")
private String inco1;
/**
* 国际贸易条款位置 1
*/
@Column(name = "inco2_l")
@JSONField(name = "INCO2_L")
private String inco2L;
/**
* 国际贸易条款位置 2
*/
@Column(name = "inco3_l")
@JSONField(name = "INCO3_L")
private String inco3L;
/**
* 标识:基于收货的发票验证
*/
@Column(name = "webre")
@JSONField(name = "WEBRE")
private String webre;
/**
* 计算方案组(供应商)
*/
@Column(name = "kalsk")
@JSONField(name = "KALSK")
private String kalsk;
......@@ -85,6 +95,7 @@ public class SuppliersBuyer implements Serializable {
* 供应商办公室的负责销售人员
*/
@Column(name = "verkf")
@JSONField(name = "VERKF")
private String verkf;
......@@ -92,18 +103,21 @@ public class SuppliersBuyer implements Serializable {
* 供应商电话号码
*/
@Column(name = "telf1")
@JSONField(name = "TELF1")
private String telf1;
/**
* 基于服务的发票校验标识
*/
@Column(name = "lebre")
@JSONField(name = "LEBRE")
private String lebre;
/**
* 边境运输方式(欧盟内部贸易统计)
*/
@Column(name = "expvz")
@JSONField(name = "EXPVZ")
private String expvz;
......@@ -111,6 +125,7 @@ public class SuppliersBuyer implements Serializable {
* 采购冻结在采购组织层
*/
@Column(name = "sperm")
@JSONField(name = "SPERM")
private String sperm;
@Column(name = "sequence")
......
package com.huigou.topsun.sap.suppliers.domain;
import com.alibaba.fastjson.annotation.JSONField;
import com.huigou.data.domain.model.FlowBillAbstractEntity;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;
import javax.persistence.*;
import java.sql.Timestamp;
import java.util.Date;
import java.util.List;
......@@ -22,42 +22,49 @@ public class SuppliersInfo extends FlowBillAbstractEntity {
* 屏幕用途的bp角色
*/
@Column(name = "rltgr")
@JSONField(name = "RLTGR")
private String rltgr;
/**
* 业务伙伴分组
*/
@Column(name = "bu_group")
@JSONField(name = "BU_GROUP")
private String buGroup;
/**
* 业务伙伴编号
*/
@Column(name = "partner")
@JSONField(name = "PARTNER")
private String partner;
/**
* 称谓代码
*/
@Column(name = "title")
@JSONField(name = "TITLE")
private String title;
/**
* 组织名称 1
*/
@Column(name = "name_org1")
@JSONField(name = "NAME_ORG1")
private String nameOrg1;
/**
* 组织名称 2
*/
@Column(name = "name_org2")
@JSONField(name = "NAME_ORG2")
private String nameOrg2;
/**
* 组织名称 3
*/
@Column(name = "name_org3")
@JSONField(name = "NAME_ORG3")
private String nameOrg3;
......@@ -65,18 +72,21 @@ public class SuppliersInfo extends FlowBillAbstractEntity {
* 组织名称 4
*/
@Column(name = "name_org4")
@JSONField(name = "NAME_ORG4")
private String nameOrg4;
/**
* 业务伙伴的搜索词1
*/
@Column(name = "bu_sort1")
@JSONField(name = "BU_SORT1")
private String buSort1;
/**
* 业务伙伴的搜索词2
*/
@Column(name = "bu_sort2")
@JSONField(name = "BU_SORT2")
private String buSort2;
......@@ -84,140 +94,173 @@ public class SuppliersInfo extends FlowBillAbstractEntity {
* 街道
*/
@Column(name = "street")
@JSONField(name = "STREET")
private String street;
/**
* 街道2
*/
@Column(name = "str_suppl1")
@JSONField(name = "STR_SUPPL1")
private String strSuppl1;
/**
* 街道3
*/
@Column(name = "str_suppl2")
@JSONField(name = "STR_SUPPL2")
private String strSuppl2;
/**
* 街道4
*/
@Column(name = "str_suppl3")
@JSONField(name = "STR_SUPPL3")
private String strSuppl3;
/**
* 国家/地区代码
*/
@Column(name = "land1")
@JSONField(name = "LAND1")
private String land1;
/**
* 国家/地区代码
*/
@Column(name = "region")
@JSONField(name = "REGION")
private String region;
/**
* 语言关键字
*/
@Column(name = "langu")
@JSONField(name = "LANGU")
private String langu;
/**
* 语言关键字
*/
@Column(name = "city1")
@JSONField(name = "CITY1")
private String city1;
/**
* 城市邮政编码
*/
@Column(name = "post_code1")
@JSONField(name = "POST_CODE1")
private String postCode1;
/**
* 第一个电话号码
*/
@Column(name = "tel_number")
@JSONField(name = "TEL_NUMBER")
private String telNumber;
/**
* 一个电话号码:分机号
*/
@Column(name = "tel_extens")
@JSONField(name = "TEL_EXTENS")
private String telExtens;
/**
* 第一个移动电话号码
*/
@Column(name = "mob_number")
@JSONField(name = "MOB_NUMBER")
private String mobNumber;
/**
* 第一个移动电话号码:分机
*/
@Column(name = "mob_extens")
@JSONField(name = "MOB_EXTENS")
private String mobExtens;
/**
* 第一个传真号
*/
@Column(name = "fax_number")
@JSONField(name = "FAX_NUMBER")
private String faxNumber;
/**
* 第一个传真号:分机号
*/
@Column(name = "fax_extens")
@JSONField(name = "FAX_EXTENS")
private String faxExtens;
/**
* 电子邮件地址
*/
@Column(name = "smtp_addr")
@JSONField(name = "SMTP_ADDR")
private String smtpAddr;
/**
* 供应商帐户组
*/
@Column(name = "ktokk")
@JSONField(name = "KTOKK")
private String ktokk;
/**
* 集中设置的采购冻结
*/
@Column(name = "sperm")
@JSONField(name = "SPERM")
private String sperm;
/**
* 中心记帐冻结
*/
@Column(name = "sperr")
@JSONField(name = "SPERR")
private String sperr;
/**
* 贸易合作伙伴的公司标识
*/
@Column(name = "vbund")
@JSONField(name = "VBUND")
private String vbund;
/**
* 客户编号
*/
@Column(name = "kunnr")
@JSONField(name = "KUNNR")
private String kunnr;
/**
* 责任税务部门的税收编号
*/
@Column(name = "stenr")
@JSONField(name = "STENR")
private String stenr;
/**
* 更新标识 I、U、D
*/
@Column(name = "updkz")
@JSONField(name = "UPDKZ")
private String updkz;
@Column(name = "apply_type")
private String applyType;
// @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
// @Column(name = "fillin_date")
// @Temporal(TemporalType.TIMESTAMP)
// private Date fillinDate;
@Transient
private String sId;
@Override
protected String getCodeRuleId() {
......
package com.huigou.topsun.sap.suppliers.domain;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;
import org.hibernate.annotations.GenericGenerator;
......@@ -32,18 +33,21 @@ public class SuppliersPay implements Serializable {
* 主表id
*/
@Column(name = "s_id")
@JSONField(name = "S_ID")
private String sId;
/**
* 公司代码
*/
@Column(name = "bukrs")
@JSONField(name = "BUKRS")
private String bukrs;
/**
* 总帐中的统驭科目
*/
@Column(name = "akont")
@JSONField(name = "AKONT")
private String akont;
......@@ -51,18 +55,21 @@ public class SuppliersPay implements Serializable {
* 根据分配号排序代码
*/
@Column(name = "zuawa")
@JSONField(name = "ZUAWA")
private String zuawa;
/**
* 付款条件代码
*/
@Column(name = "zterm")
@JSONField(name = "ZTERM")
private String zterm;
/**
* 考虑的付款方式清单
*/
@Column(name = "zwels")
@JSONField(name = "ZWELS")
private String zwels;
......@@ -70,18 +77,21 @@ public class SuppliersPay implements Serializable {
* 检查双重发票或信贷凭单的标志
*/
@Column(name = "reprf")
@JSONField(name = "REPRF")
private String reprf;
/**
* 中心记帐冻结
*/
@Column(name = "sperr")
@JSONField(name = "SPERR")
private String sperr;
/**
* 对公司代码过帐冻结
*/
@Column(name = "sperr_b")
@JSONField(name = "SPERR_B")
private String sperrB;
@Column(name = "sequence")
......
......@@ -38,4 +38,5 @@ public class SuppliersDataQueryRequest extends FlowBillSuperQueryRequest {
*/
private String nameOrg3;
private String applyType;
}
package com.huigou.topsun.sap.suppliers.domain.vo;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.*;
import java.io.Serializable;
/**
*/
@Data
public class SuppliersBankVo implements Serializable {
/**
* 银行所属国家/地区代码
*/
@JSONField(name = "BANKS")
private String banks;
/**
* 银行代码
*/
@JSONField(name = "BANKL")
private String bankl;
/**
* 银行帐户号码
*/
@JSONField(name = "BANKN")
private String bankn;
/**
* 账户持有人姓名
*/
@JSONField(name = "KOINH")
private String koinh;
/**
* 银行控制代码
*/
@JSONField(name = "BKONT")
private String bkont;
/**
* 对方开户行类型
*/
@JSONField(name = "BVTYP")
private String bvtyp;
/**
* 财务机构名称
*/
@JSONField(name = "BANKA")
private String banka;
/**
* 分行
*/
@JSONField(name = "BRNCH")
private String brnch;
/**
* 银行细目的参考明细
*/
@JSONField(name = "BKREF")
private String bkref;
}
\ No newline at end of file
package com.huigou.topsun.sap.suppliers.domain.vo;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.*;
import java.io.Serializable;
/**
*/
@Data
public class SuppliersBuyerVo {
/**
* 采购组织
*/
@JSONField(name = "EKORG")
private String ekorg;
/**
* 货币码
*/
@JSONField(name = "WAERS")
private String waers;
/**
* 付款条件代码
*/
@JSONField(name = "ZTERM")
private String zterm;
/**
* 国际贸易条款
*/
@JSONField(name = "INCO1")
private String inco1;
/**
* 国际贸易条款位置 1
*/
@JSONField(name = "INCO2_L")
private String inco2L;
/**
* 国际贸易条款位置 2
*/
@JSONField(name = "INCO3_L")
private String inco3L;
/**
* 标识:基于收货的发票验证
*/
@JSONField(name = "WEBRE")
private String webre;
/**
* 计算方案组(供应商)
*/
@JSONField(name = "KALSK")
private String kalsk;
/**
* 供应商办公室的负责销售人员
*/
@JSONField(name = "VERKF")
private String verkf;
/**
* 供应商电话号码
*/
@JSONField(name = "TELF1")
private String telf1;
/**
* 基于服务的发票校验标识
*/
@JSONField(name = "LEBRE")
private String lebre;
/**
* 边境运输方式(欧盟内部贸易统计)
*/
@JSONField(name = "EXPVZ")
private String expvz;
/**
* 采购冻结在采购组织层
*/
@JSONField(name = "SPERM")
private String sperm;
}
\ No newline at end of file
package com.huigou.topsun.sap.suppliers.domain.vo;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.*;
import java.io.Serializable;
/**
*
*/
@Data
public class SuppliersPayVo {
/**
* 公司代码
*/
@JSONField(name = "BUKRS")
private String bukrs;
/**
* 总帐中的统驭科目
*/
@JSONField(name = "AKONT")
private String akont;
/**
* 根据分配号排序代码
*/
@JSONField(name = "ZUAWA")
private String zuawa;
/**
* 付款条件代码
*/
@JSONField(name = "ZTERM")
private String zterm;
/**
* 考虑的付款方式清单
*/
@JSONField(name = "ZWELS")
private String zwels;
/**
* 检查双重发票或信贷凭单的标志
*/
@JSONField(name = "REPRF")
private String reprf;
/**
* 中心记帐冻结
*/
@JSONField(name = "SPERR")
private String sperr;
/**
* 对公司代码过帐冻结
*/
@JSONField(name = "SPERR_B")
private String sperrB;
}
\ No newline at end of file
......@@ -3,6 +3,8 @@ package com.huigou.topsun.sap.suppliers.repository;
import com.huigou.topsun.sap.suppliers.domain.SuppliersInfo;
import org.springframework.data.jpa.repository.JpaRepository;
import java.util.List;
/**
* @Auther: lxh
* @Date: 2024/03/01
......@@ -11,4 +13,5 @@ import org.springframework.data.jpa.repository.JpaRepository;
public interface SuppliersInfoRepository extends JpaRepository<SuppliersInfo,String> {
// SapPurchaseOrder findAllByEbeln(String ebeln);
List<SuppliersInfo> findDeletedById(String id);
}
......@@ -5,6 +5,8 @@ import com.fasterxml.jackson.annotation.JsonProperty;
import java.lang.reflect.Field;
import java.util.HashMap;
import java.util.UUID;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class CommonUtil {
......@@ -19,20 +21,21 @@ public class CommonUtil {
/**
* 实体类转Map
*
* @param obj
* @return
*/
public static HashMap<String, String> entityToMap(Object obj) {
HashMap<String, String> map = new HashMap();
for (Field field : obj.getClass().getDeclaredFields()){
for (Field field : obj.getClass().getDeclaredFields()) {
try {
boolean flag = field.isAccessible();
field.setAccessible(true);
Object o = field.get(obj);
if (o != null){
if (o != null) {
Field contField = obj.getClass().getDeclaredField(field.getName());
JsonProperty voField = contField.getAnnotation(JsonProperty.class);
String s = voField.value();
String s = voField.value();
map.put(s, o.toString());
}
field.setAccessible(flag);
......@@ -42,4 +45,50 @@ public class CommonUtil {
}
return map;
}
/**
* 下划线转驼峰法
* @param line 源字符串
* @param smallCamel 大小驼峰,是否为小驼峰
* @return 转换后的字符串
*/
public static String underlineToCamel(String line,boolean smallCamel){
if(line==null||"".equals(line)){
return "";
}
StringBuffer sb=new StringBuffer();
Pattern pattern=Pattern.compile("([A-Za-z\\d]+)(_)?");
Matcher matcher=pattern.matcher(line);
while(matcher.find()){
String word=matcher.group();
sb.append(smallCamel&&matcher.start()==0?Character.toLowerCase(word.charAt(0)):Character.toUpperCase(word.charAt(0)));
int index=word.lastIndexOf('_');
if(index>0){
sb.append(word.substring(1, index).toLowerCase());
}else{
sb.append(word.substring(1).toLowerCase());
}
}
return sb.toString();
}
/**
* 驼峰法转下划线
* @param line 源字符串
* @return 转换后的字符串
*/
public static String camelToUnderline(String line){
if(line==null||"".equals(line)){
return "";
}
line=String.valueOf(line.charAt(0)).toUpperCase().concat(line.substring(1));
StringBuffer sb=new StringBuffer();
Pattern pattern=Pattern.compile("[A-Z]([a-z\\d]+)?");
Matcher matcher=pattern.matcher(line);
while(matcher.find()){
String word=matcher.group();
sb.append(word.toUpperCase());
sb.append(matcher.end()==line.length()?"":"_");
}
return sb.toString();
}
}
<?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="sapSuppliersDataDeleProc" name="供应商主数据删除" isExecutable="true">
<extensionElements>
<activiti:executionListener event="start" delegateExpression="#{suppliersDataApplication}"></activiti:executionListener>
<activiti:executionListener event="end" delegateExpression="#{suppliersDataApplication}"></activiti:executionListener>
</extensionElements>
<startEvent id="startevent1" name="Start"></startEvent>
<endEvent id="endevent1" name="End"></endEvent>
<userTask id="Apply" name="供应商主数据删除申请" activiti:formKey="sapSuppliersData/showSuppliersData.job">
<extensionElements>
<activiti:taskListener event="all" delegateExpression="#{suppliersDataApplication}"></activiti:taskListener>
<activiti:taskListener event="saveBizData" delegateExpression="#{suppliersDataApplication}"></activiti:taskListener>
</extensionElements>
</userTask>
<userTask id="Approve" name="供应商主数据删除审批" activiti:assignee="${assignee} " activiti:formKey="sapSuppliersData/showSuppliersData.job">
<extensionElements>
<activiti:taskListener event="all" delegateExpression="#{suppliersDataApplication}"></activiti:taskListener>
<activiti:taskListener event="saveBizData" delegateExpression="#{suppliersDataApplication}"></activiti:taskListener>
</extensionElements>
<multiInstanceLoopCharacteristics isSequential="false" activiti:collection="handlerList" activiti:elementVariable="assignee">
<completionCondition>${chiefApprovePassed}</completionCondition>
</multiInstanceLoopCharacteristics>
</userTask>
<sequenceFlow id="flow1" sourceRef="startevent1" targetRef="Apply"></sequenceFlow>
<sequenceFlow id="flow2" sourceRef="Apply" targetRef="Approve"></sequenceFlow>
<exclusiveGateway id="ApproveFinished" name="审批结束"></exclusiveGateway>
<sequenceFlow id="flow3" name="审批通过" sourceRef="ApprovePassed" targetRef="ApproveFinished">
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${approvePassed}]]></conditionExpression>
</sequenceFlow>
<sequenceFlow id="flow4" name="审批结束" sourceRef="ApproveFinished" targetRef="endevent1">
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${approveFinished}]]></conditionExpression>
</sequenceFlow>
<sequenceFlow id="flow5" name="审批未结束" sourceRef="ApproveFinished" targetRef="Approve">
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${!approveFinished}]]></conditionExpression>
</sequenceFlow>
<exclusiveGateway id="ApprovePassed" name="审批通过"></exclusiveGateway>
<sequenceFlow id="flow6" sourceRef="Approve" targetRef="ApprovePassed"></sequenceFlow>
<sequenceFlow id="flow9" name="审批未通过" sourceRef="ApprovePassed" targetRef="Apply">
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${!approvePassed}]]></conditionExpression>
</sequenceFlow>
</process>
<bpmndi:BPMNDiagram id="BPMNDiagram_sapSuppliersDataProc">
<bpmndi:BPMNPlane bpmnElement="sapSuppliersDataProc" id="BPMNPlane_sapSuppliersDataProc">
<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>
<bpmndi:BPMNShape bpmnElement="endevent1" id="BPMNShape_endevent1">
<omgdc:Bounds height="35.0" width="35.0" x="355.0" y="550.0"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="Apply" id="BPMNShape_Apply">
<omgdc:Bounds height="55.0" width="161.0" x="292.0" y="140.0"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="Approve" id="BPMNShape_Approve">
<omgdc:Bounds height="55.0" width="161.0" x="292.0" y="240.0"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="ApproveFinished" id="BPMNShape_ApproveFinished">
<omgdc:Bounds height="40.0" width="40.0" x="352.0" y="440.0"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="ApprovePassed" id="BPMNShape_ApprovePassed">
<omgdc:Bounds height="40.0" width="40.0" x="352.0" y="349.0"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge bpmnElement="flow1" id="BPMNEdge_flow1">
<omgdi:waypoint x="372.0" y="85.0"></omgdi:waypoint>
<omgdi:waypoint x="372.0" y="140.0"></omgdi:waypoint>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow2" id="BPMNEdge_flow2">
<omgdi:waypoint x="372.0" y="195.0"></omgdi:waypoint>
<omgdi:waypoint x="372.0" y="240.0"></omgdi:waypoint>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow3" id="BPMNEdge_flow3">
<omgdi:waypoint x="372.0" y="389.0"></omgdi:waypoint>
<omgdi:waypoint x="372.0" y="440.0"></omgdi:waypoint>
<bpmndi:BPMNLabel>
<omgdc:Bounds height="14.0" width="48.0" x="320.0" y="396.0"></omgdc:Bounds>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow4" id="BPMNEdge_flow4">
<omgdi:waypoint x="372.0" y="480.0"></omgdi:waypoint>
<omgdi:waypoint x="372.0" y="550.0"></omgdi:waypoint>
<bpmndi:BPMNLabel>
<omgdc:Bounds height="14.0" width="48.0" x="382.0" y="489.0"></omgdc:Bounds>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow5" id="BPMNEdge_flow5">
<omgdi:waypoint x="392.0" y="460.0"></omgdi:waypoint>
<omgdi:waypoint x="519.0" y="459.0"></omgdi:waypoint>
<omgdi:waypoint x="519.0" y="317.0"></omgdi:waypoint>
<omgdi:waypoint x="519.0" y="267.0"></omgdi:waypoint>
<omgdi:waypoint x="489.0" y="267.0"></omgdi:waypoint>
<omgdi:waypoint x="453.0" y="267.0"></omgdi:waypoint>
<bpmndi:BPMNLabel>
<omgdc:Bounds height="14.0" width="60.0" x="459.0" y="411.0"></omgdc:Bounds>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow6" id="BPMNEdge_flow6">
<omgdi:waypoint x="372.0" y="295.0"></omgdi:waypoint>
<omgdi:waypoint x="372.0" y="349.0"></omgdi:waypoint>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow9" id="BPMNEdge_flow9">
<omgdi:waypoint x="352.0" y="369.0"></omgdi:waypoint>
<omgdi:waypoint x="231.0" y="369.0"></omgdi:waypoint>
<omgdi:waypoint x="231.0" y="167.0"></omgdi:waypoint>
<omgdi:waypoint x="292.0" y="167.0"></omgdi:waypoint>
<bpmndi:BPMNLabel>
<omgdc:Bounds height="14.0" width="60.0" x="257.0" y="376.0"></omgdc:Bounds>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
</definitions>
\ No newline at end of file
<?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="sapSuppliersDataModiProc" name="供应商主数据修改" isExecutable="true">
<extensionElements>
<activiti:executionListener event="start" delegateExpression="#{suppliersDataApplication}"></activiti:executionListener>
<activiti:executionListener event="end" delegateExpression="#{suppliersDataApplication}"></activiti:executionListener>
</extensionElements>
<startEvent id="startevent1" name="Start"></startEvent>
<endEvent id="endevent1" name="End"></endEvent>
<userTask id="Apply" name="供应商主数据修改申请" activiti:formKey="sapSuppliersData/showSuppliersData.job">
<extensionElements>
<activiti:taskListener event="all" delegateExpression="#{suppliersDataApplication}"></activiti:taskListener>
<activiti:taskListener event="saveBizData" delegateExpression="#{suppliersDataApplication}"></activiti:taskListener>
</extensionElements>
</userTask>
<userTask id="Approve" name="供应商主数据修改审批" activiti:assignee="${assignee} " activiti:formKey="sapSuppliersData/showSuppliersData.job">
<extensionElements>
<activiti:taskListener event="all" delegateExpression="#{suppliersDataApplication}"></activiti:taskListener>
<activiti:taskListener event="saveBizData" delegateExpression="#{suppliersDataApplication}"></activiti:taskListener>
</extensionElements>
<multiInstanceLoopCharacteristics isSequential="false" activiti:collection="handlerList" activiti:elementVariable="assignee">
<completionCondition>${chiefApprovePassed}</completionCondition>
</multiInstanceLoopCharacteristics>
</userTask>
<sequenceFlow id="flow1" sourceRef="startevent1" targetRef="Apply"></sequenceFlow>
<sequenceFlow id="flow2" sourceRef="Apply" targetRef="Approve"></sequenceFlow>
<exclusiveGateway id="ApproveFinished" name="审批结束"></exclusiveGateway>
<sequenceFlow id="flow3" name="审批通过" sourceRef="ApprovePassed" targetRef="ApproveFinished">
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${approvePassed}]]></conditionExpression>
</sequenceFlow>
<sequenceFlow id="flow4" name="审批结束" sourceRef="ApproveFinished" targetRef="endevent1">
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${approveFinished}]]></conditionExpression>
</sequenceFlow>
<sequenceFlow id="flow5" name="审批未结束" sourceRef="ApproveFinished" targetRef="Approve">
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${!approveFinished}]]></conditionExpression>
</sequenceFlow>
<exclusiveGateway id="ApprovePassed" name="审批通过"></exclusiveGateway>
<sequenceFlow id="flow6" sourceRef="Approve" targetRef="ApprovePassed"></sequenceFlow>
<sequenceFlow id="flow9" name="审批未通过" sourceRef="ApprovePassed" targetRef="Apply">
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${!approvePassed}]]></conditionExpression>
</sequenceFlow>
</process>
<bpmndi:BPMNDiagram id="BPMNDiagram_sapSuppliersDataProc">
<bpmndi:BPMNPlane bpmnElement="sapSuppliersDataProc" id="BPMNPlane_sapSuppliersDataProc">
<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>
<bpmndi:BPMNShape bpmnElement="endevent1" id="BPMNShape_endevent1">
<omgdc:Bounds height="35.0" width="35.0" x="355.0" y="550.0"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="Apply" id="BPMNShape_Apply">
<omgdc:Bounds height="55.0" width="161.0" x="292.0" y="140.0"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="Approve" id="BPMNShape_Approve">
<omgdc:Bounds height="55.0" width="161.0" x="292.0" y="240.0"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="ApproveFinished" id="BPMNShape_ApproveFinished">
<omgdc:Bounds height="40.0" width="40.0" x="352.0" y="440.0"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="ApprovePassed" id="BPMNShape_ApprovePassed">
<omgdc:Bounds height="40.0" width="40.0" x="352.0" y="349.0"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge bpmnElement="flow1" id="BPMNEdge_flow1">
<omgdi:waypoint x="372.0" y="85.0"></omgdi:waypoint>
<omgdi:waypoint x="372.0" y="140.0"></omgdi:waypoint>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow2" id="BPMNEdge_flow2">
<omgdi:waypoint x="372.0" y="195.0"></omgdi:waypoint>
<omgdi:waypoint x="372.0" y="240.0"></omgdi:waypoint>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow3" id="BPMNEdge_flow3">
<omgdi:waypoint x="372.0" y="389.0"></omgdi:waypoint>
<omgdi:waypoint x="372.0" y="440.0"></omgdi:waypoint>
<bpmndi:BPMNLabel>
<omgdc:Bounds height="14.0" width="48.0" x="320.0" y="396.0"></omgdc:Bounds>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow4" id="BPMNEdge_flow4">
<omgdi:waypoint x="372.0" y="480.0"></omgdi:waypoint>
<omgdi:waypoint x="372.0" y="550.0"></omgdi:waypoint>
<bpmndi:BPMNLabel>
<omgdc:Bounds height="14.0" width="48.0" x="382.0" y="489.0"></omgdc:Bounds>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow5" id="BPMNEdge_flow5">
<omgdi:waypoint x="392.0" y="460.0"></omgdi:waypoint>
<omgdi:waypoint x="519.0" y="459.0"></omgdi:waypoint>
<omgdi:waypoint x="519.0" y="317.0"></omgdi:waypoint>
<omgdi:waypoint x="519.0" y="267.0"></omgdi:waypoint>
<omgdi:waypoint x="489.0" y="267.0"></omgdi:waypoint>
<omgdi:waypoint x="453.0" y="267.0"></omgdi:waypoint>
<bpmndi:BPMNLabel>
<omgdc:Bounds height="14.0" width="60.0" x="459.0" y="411.0"></omgdc:Bounds>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow6" id="BPMNEdge_flow6">
<omgdi:waypoint x="372.0" y="295.0"></omgdi:waypoint>
<omgdi:waypoint x="372.0" y="349.0"></omgdi:waypoint>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow9" id="BPMNEdge_flow9">
<omgdi:waypoint x="352.0" y="369.0"></omgdi:waypoint>
<omgdi:waypoint x="231.0" y="369.0"></omgdi:waypoint>
<omgdi:waypoint x="231.0" y="167.0"></omgdi:waypoint>
<omgdi:waypoint x="292.0" y="167.0"></omgdi:waypoint>
<bpmndi:BPMNLabel>
<omgdc:Bounds height="14.0" width="60.0" x="257.0" y="376.0"></omgdc:Bounds>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
</definitions>
\ No newline at end of file
......@@ -7,6 +7,13 @@
</sql-query>
<!-- <condition column="stats_indicators_id" name="statsIndicatorsId" type="java.lang.String" symbol="=" alias="t"/>-->
</query>
<query name="findDeletedById" label="查询是否存在删除的数据" table="sap_suppliers_info">
<sql-query>
select t.* from sap_suppliers_info t
where 1=1 and apply_type='-1' and status in (1,3) and id= #{id}
</sql-query>
</query>
<query name="slicedSuppliersPayList" label="付款明细数据" table="sap_suppliers_pay">
<sql-query>
select t.*
......
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