Commit 25a0a7be authored by 刘学辉's avatar 刘学辉

客户供料通知

parent 00788865
var gridManager = null;
$(document).ready(function () {
initialize();
// loadGrid();
bindEvent();
});
function initialize(){
//if (typeof(getSubProcUnitId) =='function'&&"10" === getSubProcUnitId()) {
var mainFileTable = $('#clientMaterialsInfoList').fileList();
mainFileTable.find('table').css({
borderTopWidth : 0
});
$('#clientMaterialsInfoList').fileList({
bizId : $("#attbizId").val()
});
UICtrl.layout("#layout", {leftWidth: 3});
}
function bindEvent(){
$("#departName").orgTree({
// checkbox : true,
tree:{autoCheckboxEven:false},
getParam : function() {
return {
orgRoot:'orgRoot',
status : "1",
isVirtual : "0",
orgKindId : 'ogn,dpt'
};
},
back : {
text : '#departName',
value : '#depart'
},
});
/* $("#applyPersonName").orgTree({
filter: "ogn,dpt,pos,psm",
excludePos: 1, param: {orgKindId: "ogn,dpt,pos,psm"},
back: {text: "#applyPersonName",value :'#applyPerson'},
manageType: 'taskQuery,admin',
onChange:function(value,data){ //alert(data.name);
// $("#applyPerson").val(data.fullId);
// $("#applyPersonName").val(data.name);
}
});
*/
$("#applyPersonName").orgTree({
checkbox : false,
tree:{autoCheckboxEven:true},
getParam : function() {
return {
orgRoot:'orgRoot',
status : "1",
isVirtual : "0",
orgKindId : 'ogn,dpt,pos,psm'
};
},
back : {
text : '#applyPersonName',
value : '#applyPerson'
}
});
}
function loadGrid() {
var toolbarOptions =null;
//if ($("#statusId").val()==0){
toolbarOptions = UICtrl.getDefaultToolbarOptions({
addHandler: function () {
UICtrl.addGridRow(gridManager);
},
deleteHandler: function () {
var _grid = UICtrl.getGridManager('#maingrid');
DataUtil.delSelectedRows({
action: 'sapPermitItem/deleteclientMaterialsInfoList.ajax',
param: {},
gridManager: _grid,
idFieldName: 'id',
onSuccess: function () {
reloadGrid();
}
});
}
// copyHandler: copyHandler
// impExcelDataHandler:{id:'impExcelData',img:'fa-table',text:'导入数据',click:impExcelDataHandler},
});
// }
gridManager = UICtrl.grid("#maingrid", {
columns: [
{display: "产品物料", name: "productMaterial", width: "160", align: "left", type: "string",
editor: {
required: true, type: "select",
data: {
type: 'system',
name: "sapMaterialSelect",
getParam: function (item) {
return {
filterValue:item.werks
}
},
back: {
MATNR: "productMaterial",
MAKTX: "productMaterialName"
}
},
}
},
{display: "产品物料名称", name: "productMaterialName", width: "200", align: "left", type: "string"},
{display: "供给物料", name: "supplyMaterial", width: "160", align: "left", type: "string",
editor: {
required: true, type: "select",
data: {
type: 'system',
name: "sapMaterialSelect",
getParam: function (item) {
return {
filterValue:item.werks
}
},
back: {
MATNR: "supplyMaterial",
MAKTX: "supplyMaterialName"
}
},
}
},
{display: "供给物料名称", name: "supplyMaterialName", width: "200", align: "left", type: "string"},
{ display: "补发数量", name: "quantity", width: 140, minWidth: 60, type: "string", align: "left",
editor: { type: "text",mask: 'nnnnnn.nn',required: true }
},
{
display: "说明", name: "remark", width: 400, minWidth: 60, type: "string", align: "left",
editor: {required: false, type: "text"}
}
],
dataAction: "server",
url: web_app.name + '/componentSupplyItem/queryComponentSupplyItems.ajax',
pageSize: 10,
usePager: true,
parms:{componentSupplyId:getId()},
toolbar: toolbarOptions,
enabledEdit: true,
width: "100%",
height: "80%",
heightDiff: -8,
checkbox: true,
fixedCellHeight: true,
selectRowButtonOnly: true,
});
UICtrl.setSearchAreaToggle(gridManager);
}
/**
* 流程引擎回调设置打样的id
* @param value 打样申请的id
*/
function setId(id) {
$("#id").val(id);
// var _grid=UICtrl.getGridManager('#maingrid');
// _grid.options.parms.componentSupplyId = id;
$('#clientMaterialsInfoList').fileList({
bizId : id
});
}
/**
* 流程引擎获取打样申请id的回掉方法。
* @return 打样申请的id
*/
function getId() {
return $("#id").val() || "";
}
function reloadGrid() {
gridManager.loadData();
}
function getExtendedData(processAction) {
//回退、打回、转交时,不需要验证必填项是否已经填写;
if (processAction == ProcessAction.BACK
|| processAction == ProcessAction.REPLENISH
|| processAction == ProcessAction.TRANSMIT) {
//不验证
$('#submitForm').attr('check', false);
}
var extendedData = {};
var _grid = UICtrl.getGridManager('#maingrid');
if (_grid) {
var datas = DataUtil.getGridData({
gridManager: _grid,
isAllData: true
});
if (!datas) {
return false;
}
extendedData.items = Public.encodeJSONURI(datas);
}
return extendedData;
}
<%@ page language="java" contentType="text/html; charset=utf-8" %>
<%@taglib uri="/WEB-INF/taglib.tld" prefix="x" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head>
<x:base include="layout,dialog,grid,tree,combox,commonTree,date,attachment"/>
<x:script src="/system/excelimport/AssignCodeImp.js"/>
<x:script src='/biz/topsun/sap/clientMaterials/clientMaterialsDetail.js'/>
</head>
<body>
<x:billTitle title="客户供料通知" needStatus="false" needPerson="true"/>
<form class="hg-form" method="post" action="" id="submitForm">
<x:hidden name="id"/>
<x:hidden name="billCode"/>
<x:hidden name="statusId"/>
<x:hidden name="attbizId"/>
<x:hidden name="fillinDate" type="datetime"/>
<x:hidden name="fullId"/>
<x:hidden name="organId"/>
<x:hidden name="organName"/>
<x:hidden name="deptId"/>
<x:hidden name="deptName"/>
<x:hidden name="positionId"/>
<x:hidden name="positionName"/>
<x:hidden name="personMemberId"/>
<x:hidden name="personMemberName"/>
<div class="hg-form-cols">
<div class="hg-form-row">
<x:hidden name="depart"/>
<x:inputC name="departName" required="true" label="部门" labelCol="2" fieldCol="2" wrapper="tree"/>
<x:hidden name="applyPerson"/>
<x:inputC name="applyPersonName" required="true" label="人员" labelCol="2" fieldCol="2" wrapper="tree"/>
<x:selectC name="used" label="用途" required="false" labelCol="1" fieldCol="2" dictionary="materialUse"/>
</div>
<div class="hg-form-row">
<x:textareaC name="remark" id="remark" required="false" rows="3" label="情况说明" labelCol="2" fieldCol="10" />
</div>
</div>
<div class="blank_div clearfix"></div>
<div id="maingrid" style="margin: 2px;">
</div>
<div style="padding-top: 15px;">
<x:fileList bizCode="clientMaterialsInfo" bizId="attbizId" id="clientMaterialsInfoList" title="上传附件" />
</div>
</form>
</body>
</html>
var gridManager = null;
$(document).ready(function () {
initUI();
loadGrid();
})
function initUI() {
UICtrl.initDefaultLayout();
}
function loadGrid() {
var toolbarOptions = UICtrl.getDefaultToolbarOptions({
addHandler: addHandler,
deleteHandler: deleteHandler
// exportExcelHandler:exportExcelHandler,
// exportModelHandler:{id:'exportModelHandler',img:'fa-cloud-download',text:'导出模板',click:exportModelHandler},
});
gridManager = UICtrl.grid("#maingrid", {
columns: [
{display: "单据编号", name: "billCode", width: 150, minWidth: 60, type: "string", align: "left"},
{display: "创建日期", name: "fillinDate", 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: "departName", width: 200, minWidth: 60, type: "string", align: "left"},
{display: "人员", name: "applyPersonName", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "用途", name: "usedTextView", width: 100, minWidth: 60, type: "string", align: "left"},
{display: "情况说明", name: "remark", width: 260, minWidth: 60, type: "string", align: "left"},
],
dataAction: "server",
url: web_app.name + '/clientMaterials/slicedClientMaterialsList.ajax',
pageSize: 20,
usePager: true,
toolbar: toolbarOptions,
width: "100%",
height: "100%",
heightDiff: -8,
checkbox: true,
fixedCellHeight: true,
selectRowButtonOnly: true,
onDblClickRow: function (data, rowindex, rowobj) {
doView(data.id);
},
});
UICtrl.setSearchAreaToggle(gridManager);
}
function query(obj) {
var param = $(obj).formToJSON();
UICtrl.gridSearch(gridManager, param);
}
function reloadGrid() {
gridManager.loadData();
}
function resetForm(obj) {
$(obj).formClean();
}
//删除按钮
function deleteHandler() {
let result=DataUtil.getUpdateRow(gridManager);
if(result.status!==0){
Public.tip("请选择申请状态的数据!")
return false;
}
// var message = "您确认要删除选择的数据?";
// UICtrl.confirm(message, function () {
DataUtil.del({
action: 'clientMaterials/deleteClientMaterials.ajax',
gridManager: gridManager, idFieldName: 'id',
onSuccess: function () {
reloadGrid();
}
});
// });
}
function addHandler() {
UICtrl.addTabItem({
tabid: 'addSapPermit',
text: "新增客户供料通知",
url: web_app.name + '/clientMaterials/forwardClientMaterialsDetail.job'
});
}
function doView(id) {
UICtrl.addTabItem({
tabid: 'viewSapPermit'+id,
text: "客户供料通知",
url: web_app.name + '/clientMaterials/showClientMaterials.job?bizId='+id+"&isReadOnly=true"
});
}
<%@ page contentType="text/html; charset=utf-8" language="java" %>
<%@ taglib uri="/WEB-INF/taglib.tld" prefix="x" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head>
<x:base include="layout,dialog,grid,tree,combox,commonTree,attachment"/>
<x:script src='/biz/topsun/sap/clientMaterials/clientMaterialsList.js'/>
</head>
<body>
<div class="container-fluid">
<div class="ui-hide">
</div>
<div id="layout">
<div position="center" title="客户供料通知">
<x:title title="common.button.search" hideTable="queryMainForm" isHide="true"/>
<form class="hg-form ui-hide" method="post" action="" id="queryMainForm">
<x:hidden name="templetId" value=""/>
<x:hidden name="batchNumber" value=""/>
<x:hidden name="fullId"/>
<x:inputC name="billCode" required="false" label="申请单号" labelCol="1"/>
<x:selectC name="used" label="用途" labelCol="1" fieldCol="2" dictionary="materialUse"/>
<x:selectC name="status" label="审批状态" labelCol="1" fieldCol="2" dictionary="bizBillStatus"/>
<x:searchButtons/>
</form>
<div class="blank_div clearfix"></div>
<div id="maingrid" style="margin: 2px;"></div>
</div>
</div>
</div>
</body>
</html>
\ No newline at end of file
......@@ -88,7 +88,7 @@ function loadGrid() {
deleteHandler: function () {
var _grid = UICtrl.getGridManager('#maingrid');
DataUtil.delSelectedRows({
action: 'sapPermitItem/deleteSapPermitItems.ajax',
action: 'componentSupplyItem/deleteComponentSupplyItems.ajax',
param: {},
gridManager: _grid,
idFieldName: 'id',
......
package com.huigou.topsun.sap.clientMaterials.application;
import com.huigou.topsun.sap.clientMaterials.domain.ClientMaterials;
import com.huigou.topsun.sap.clientMaterials.domain.query.ClientMaterialsQueryRequest;
import com.huigou.topsun.sap.clientMaterials.vo.ClientMaterialsVo;
import com.huigou.topsun.sap.componentSupply.domain.ComponentSupply;
import com.huigou.topsun.sap.componentSupply.domain.query.ComponentSupplyQueryRequest;
import com.huigou.topsun.sap.componentSupply.vo.ComponentSupplyVo;
import java.util.List;
import java.util.Map;
/**
* @Auther:LXH
* @Date: 2024/06/05/11:35
* @Description:
*/
public interface ClientMaterialsApplication {
public static final String QUERY_XML_FILE_PATH = "config/topsun/sap/clientMaterials/clientMaterials.xml";
String PROCESS_DEFINITION_KEY = "clientMaterialsProc";
Map<String, Object> getClientMaterialsList(ClientMaterialsQueryRequest sapPermitVo);
ClientMaterials getClientMaterialsById(String id);
void deleteByIds(List<String> ids);
void saveClientMaterialsVo(ClientMaterialsVo clientMaterialsVoVo);
// ByteArrayOutputStream printInfo(HttpServletResponse response, String id);
}
package com.huigou.topsun.sap.clientMaterials.controller;
import com.huigou.context.Operator;
import com.huigou.context.OrgUnit;
import com.huigou.topsun.sap.clientMaterials.application.ClientMaterialsApplication;
import com.huigou.topsun.sap.clientMaterials.domain.ClientMaterials;
import com.huigou.topsun.sap.clientMaterials.domain.query.ClientMaterialsQueryRequest;
import com.huigou.uasp.annotation.ControllerMapping;
import com.huigou.uasp.bmp.common.BizBillStatus;
import com.huigou.uasp.client.CommonController;
import com.huigou.util.CommonUtil;
import com.huigou.util.SDO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
/**客户供料通知
* @Auther: LXH
* @Date: 2024/06/05 10:15
* @Description:
*/
@Controller
@ControllerMapping("/clientMaterials")
public class ClientMaterialsController extends CommonController {
@Override
protected String getPagePath() {
return "/biz/topsun/sap/clientMaterials/";
}
@Resource
private ClientMaterialsApplication clientMaterialsApplication;
public String forwardClientMaterialsList(){
return forward("clientMaterialsList");
}
public String slicedClientMaterialsList(){
SDO sdo = this.getSDO();
ClientMaterialsQueryRequest queryRequest = sdo.toQueryRequest(ClientMaterialsQueryRequest.class);
Map<String, Object> map = clientMaterialsApplication.getClientMaterialsList(queryRequest);
return toResult(map);
}
public String forwardClientMaterialsDetail(){
// 新增的时候procUnitId一定要设置成Apply,不然jsp页面的所有表单元素是readonly状态
this.putAttribute("processDefinitionKey", ClientMaterialsApplication.PROCESS_DEFINITION_KEY);
this.putAttribute("procUnitId", "Apply");
ClientMaterials clientMaterials = new ClientMaterials();
clientMaterials.setStatusId(BizBillStatus.APPLYING.getId());
/**c
* 设置jsp页面初始化填充数据,如果不设置, 那么在jsp页面上填写完表单之后立即提交申请TaskDescription获取不到时间和相关人员信息
*/
Operator operator = getOperator();
clientMaterials.setDefaultValues(new OrgUnit(operator.getFullId(), operator.getFullName()));
clientMaterials.setAttbizId(CommonUtil.createGUID()); // 自动生成附件id
// ExcelImportTemplate excelImportTemplate=excelImportApplication.loadExcelImportTemplateByCode("ClientMaterialsData");
return forward("clientMaterialsDetail",clientMaterials);
}
public String showClientMaterials(){
SDO sdo = this.getSDO();
String id = sdo.getBizId();
// this.putAttribute("attbizId", id); // 设置附件id
ClientMaterials clientMaterials = clientMaterialsApplication.getClientMaterialsById(id);
// sapRetirement.setAttbizId(id);
return forward("clientMaterialsDetail",clientMaterials);
}
/**
* 删除组件补充发料
*/
public String deleteClientMaterials() {
List<String> ids = this.getSDO().getIds();
clientMaterialsApplication.deleteByIds(ids);
return success();
}
}
package com.huigou.topsun.sap.clientMaterials.domain;
import com.huigou.data.domain.model.FlowBillAbstractEntity;
import lombok.Data;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
/**
* @Auther: LXH
* @Date: 2024/06/05/10:45
* @Description:客户供料通知
*/
@Table(name = "sap_client_materials")
@Entity
@Data
public class ClientMaterials extends FlowBillAbstractEntity {
/**
* 责任部门
*/
@Column(name = "depart")
private String depart;
@Column(name = "depart_name")
private String departName;
/**
* 人员
*/
@Column(name = "apply_person")
private String applyPerson;
@Column(name = "apply_person_name")
private String applyPersonName;
/*
* 用途
*/
@Column(name = "used")
private String used;
/*
* 供应商名称
*/
//// @Column(name = "suppliers_name")
// private String suppliersName;
@Column(name = "remark")
private String remark;
@Column(name = "attbiz_id")
private String attbizId;
@Override
protected String getCodeRuleId() {
return "clientMaterials";
}
}
package com.huigou.topsun.sap.clientMaterials.domain.query;
import com.huigou.data.domain.query.QueryAbstractRequest;
import lombok.Data;
/**
* @Auther: lxh
* @Date: 2024/06/05/16:38
* @Description:
*/
@Data
public class ClientMaterialsQueryRequest extends QueryAbstractRequest {
private String used;
private String billCode;
private String remark;
private String status;
}
package com.huigou.topsun.sap.clientMaterials.repository;
import com.huigou.topsun.sap.clientMaterials.domain.ClientMaterials;
import com.huigou.topsun.sap.componentSupply.domain.ComponentSupply;
import org.springframework.data.jpa.repository.JpaRepository;
/**
* @Auther: LXH
* @Date: 2024/06/05/16:33
* @Description:
*/
public interface ClientMaterialsRepository extends JpaRepository<ClientMaterials,String> {
}
package com.huigou.topsun.sap.clientMaterials.vo;
import com.huigou.topsun.sap.componentSupply.vo.ComponentSupplyItemVo;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* @Auther: lxh
* @Date: 2024/06/05/14:08
* @Description:
*/
@Data
public class ClientMaterialsVo {
/**
* 公司
*/
private String company;
/**
* 责任部门
*/
private String dutyDepart;
private String dutyDepartName;
/**
* 申请人
*/
private String applyPerson;
private String applyPersonName;
/**
* 携出人
*/
private String belongPerson;
/**
* 日期
*/
private Date permitDate;
List<ComponentSupplyItemVo> itemVos;
}
<?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="clientMaterialsProc" name="客户供料通知" isExecutable="true">
<extensionElements>
<activiti:executionListener event="start" delegateExpression="#{clientMaterialsApplication}"></activiti:executionListener>
<activiti:executionListener event="end" delegateExpression="#{clientMaterialsApplication}"></activiti:executionListener>
</extensionElements>
<startEvent id="startevent1" name="Start"></startEvent>
<endEvent id="endevent1" name="End"></endEvent>
<userTask id="Apply" name="客户供料通知申请" activiti:formKey="clientMaterials/showClientMaterials.job">
<extensionElements>
<activiti:taskListener event="all" delegateExpression="#{clientMaterialsApplication}"></activiti:taskListener>
<activiti:taskListener event="saveBizData" delegateExpression="#{clientMaterialsApplication}"></activiti:taskListener>
</extensionElements>
</userTask>
<userTask id="Approve" name="客户供料通知审批" activiti:assignee="${assignee} " activiti:formKey="clientMaterials/showClientMaterials.job">
<extensionElements>
<activiti:taskListener event="all" delegateExpression="#{clientMaterialsApplication}"></activiti:taskListener>
<activiti:taskListener event="saveBizData" delegateExpression="#{clientMaterialsApplication}"></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_clientMaterialsProc">
<bpmndi:BPMNPlane bpmnElement="clientMaterialsProc" id="BPMNPlane_clientMaterialsProc">
<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" ?>
<query-mappings>
<query name="clientMaterials" label="客户供料通知" table="sap_client_materials">
<sql-query>
select t.* from sap_client_materials t
</sql-query>
<condition column="bill_code" name="billCode" type="java.lang.String" symbol="like" alias="t"/>
</query>
</query-mappings>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8" ?>
<query-mappings>
<query name="componentSupply" label="组件补充发料" table="sap_permit">
<query name="componentSupply" label="组件补充发料" table="sap_component_supply">
<sql-query>
select t.* from sap_component_supply t
</sql-query>
......
<?xml version="1.0" encoding="UTF-8" ?>
<query-mappings>
<query name="sapPermitItems" label="放行条明细" table="sap_permit_item">
<query name="componentSupplyItems" label="组件补充发料明细" table="sap_component_supply_item">
<sql-query>
select t.* from sap_permit_item t
select t.* from sap_component_supply_item t
</sql-query>
<condition column="sap_permit_id" name="sapPermitId" type="java.lang.String" symbol="=" alias="t"/>
<condition column="component_supply_id" name="componentSupplyId" 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