2025-03-19 10:28:25 +08:00

321 lines
31 KiB
XML

<?xml version="1.0" encoding="euc-kr"?>
<process xmlns:bean="http://bean.boe.com/" xmlns:bpel="http://bpel.boe.com/" targetNamespace="http://bpel.boe.com/bpelj/" name="ShelfUseStateReport.bpel">
<partnerLinks>
<partnerLink name="bpelj" partnerLinkType="bpel:bpelj" />
<partnerLink name="TransactionUtil" partnerLinkType="bean:TransactionUtil" />
<partnerLink name="EventInfoUtil" partnerLinkType="bean:EventInfoUtil" />
<partnerLink name="StorageServiceImpl" partnerLinkType="bean:StorageServiceImpl" />
<partnerLink name="DurableServiceUtil" partnerLinkType="bean:DurableServiceUtil" />
<partnerLink name="PackingGroupServiceUtil" partnerLinkType="bean:PackingGroupServiceUtil" />
<partnerLink name="StorageServiceUtil" partnerLinkType="bean:StorageServiceUtil" />
<partnerLink name="PackingGroupServiceImpl" partnerLinkType="bean:PackingGroupServiceImpl" />
<partnerLink name="DurableServiceImpl" partnerLinkType="bean:DurableServiceImpl" />
</partnerLinks>
<variables>
<variable name="controlPalletName" messageType="java.lang.String"></variable>
<variable name="durablekey" messageType="com.cim.idm.wmspackage.durable.management.data.DurableKey" expression="newInstance('com.cim.idm.wmspackage.durable.management.data.DurableKey')" />
<variable name="durableName" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/TRAYNAME')" />
<variable name="durableUserColumns" messageType="java.util.Map" expression="newInstance('java.util.HashMap', 10)" />
<variable name="Empty" messageType="java.lang.String"></variable>
<variable name="eventComment" messageType="java.lang.String" expression="getXmlData('message', '//Message/Header/EVENTCOMMENT')" />
<variable name="eventInfo" messageType="com.cim.idm.framework.data.EventInfo"></variable>
<variable name="eventName" messageType="java.lang.String" expression="getXmlData('message', '//Message/Header/MESSAGENAME')" />
<variable name="eventUser" messageType="java.lang.String" expression="getXmlData('message', '//Message/Header/EVENTUSER')" />
<variable name="isExist" messageType="boolean"></variable>
<variable name="locationName" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/UNITNAME')" />
<variable name="locationNamenew" messageType="java.lang.String" expression="getXmlData('message', '//Message/Body/SHELFNAME')" />
<variable name="message" messageType="org.jdom.Document"></variable>
<variable name="palletInfo" messageType="com.cim.idm.wmspackage.productpacking.management.data.ProductPacking"></variable>
<variable name="palletList" messageType="java.util.List"></variable>
<variable name="palletName" messageType="java.lang.String"></variable>
<variable name="prePalletLocationName" messageType="java.lang.String"></variable>
<variable name="preTrayLocationName" messageType="java.lang.String"></variable>
<variable name="shelfName" messageType="java.lang.String" expression="getXmlData('message','/Message/Body/SHELFNAME')" />
<variable name="shelfState" messageType="java.lang.String" expression="getXmlData('message','/Message/Body/USESTATENAME')" />
<variable name="storageSpec" messageType="com.cim.idm.wmspackage.storage.management.data.StorageSpec"></variable>
<variable name="storageUserColumns" messageType="java.util.Map" expression="newInstance('java.util.HashMap', 10)" />
<variable name="trayName" messageType="java.lang.String" expression="getXmlData('message','/Message/Body/TRAYNAME')" />
</variables>
<Lane name="Lane" bounds="-41,526,331,236" backgroundcolor="253,250,192" />
<note name="Note" bounds="-36,531,153,-1">case TrayName is empty, Indicate the empty Tray In/Out Shelf, then set UseState=shelfStae</note>
<sequence>
<receive name="ShelfUseStateReport" bounds="253,30,140,75">
<input variable="message" type="org.jdom.Document" />
</receive>
<invoke name="TransactionUtil beginTransaction" type="invokebean" description="public void beginTransaction()" bounds="253,135,140,102" partnerLink="TransactionUtil" partnerLinkType="TransactionUtil" operation="beginTransaction" operationDesc="public void beginTransaction()" ignoreThrow="false" fork="false">
<source idx="0" terminal="5,A" />
</invoke>
<invoke name="EventInfoUtil makeEventInfo" type="invokebean" description="public static com.cim.idm.framework.data.EventInfo makeEventInfo(java.lang.String eventName, java.lang.String eventUser, java.lang.String eventComment, java.lang.String reasonCodeType, java.lang.String reasonCode)" bounds="209,267,228,102" partnerLink="EventInfoUtil" partnerLinkType="EventInfoUtil" operation="makeEventInfo" operationDesc="public static com.cim.idm.framework.data.EventInfo makeEventInfo(java.lang.String eventName, java.lang.String eventUser, java.lang.String eventComment, java.lang.String reasonCodeType, java.lang.String reasonCode)" ignoreThrow="false" fork="false">
<source idx="0" terminal="5,A" />
<input variable="eventName" type="java.lang.String" />
<input constant="WMS" type="java.lang.String" />
<input variable="eventComment" type="java.lang.String" />
<input constant="" type="java.lang.String" />
<input constant="" type="java.lang.String" />
<output variable="eventInfo" />
</invoke>
<switch name="switch" bounds="307,399,33,33" type="switch">
<source idx="0" terminal="5,A" />
<switchstart name="switchstart" type="switchstart" bounds="268,478,110,49">
<source idx="0" terminal="5,A" />
</switchstart>
<case name="case" type="case" condition="getVariable('trayName') = ''" bounds="124,557,32,49">
<source idx="0" terminal="5,A" />
<invoke name="StorageServiceImpl modifyLocation" type="invokebean" description="public void modifyLocation(java.lang.String siteName, java.lang.String storageName, java.lang.String resourceState, java.lang.String useState, com.cim.idm.framework.data.EventInfo eventInfo)" bounds="23,636,235,102" partnerLink="StorageServiceImpl" partnerLinkType="StorageServiceImpl" operation="modifyLocation" operationDesc="public void modifyLocation(java.lang.String siteName, java.lang.String storageName, java.lang.String resourceState, java.lang.String useState, com.cim.idm.framework.data.EventInfo eventInfo)" ignoreThrow="false" fork="false">
<source idx="0" terminal="5,A" />
<input constant="B17" type="java.lang.String" />
<input variable="shelfName" type="java.lang.String" />
<input constant="InService" type="java.lang.String" />
<input variable="shelfState" type="java.lang.String" />
<input variable="eventInfo" type="com.cim.idm.framework.data.EventInfo" />
</invoke>
</case>
<otherwise name="otherwise" type="otherwise" bounds="1138,557,61,49">
<source idx="0" terminal="5,A" />
<invoke name="DurableServiceUtil checkTrayExist" type="invokebean" description="public boolean checkTrayExist(java.lang.String SiteName, java.lang.String durableName)" bounds="1098,636,141,105" partnerLink="DurableServiceUtil" partnerLinkType="DurableServiceUtil" operation="checkTrayExist" operationDesc="public boolean checkTrayExist(java.lang.String SiteName, java.lang.String durableName)" ignoreThrow="false" fork="false">
<source idx="0" terminal="5,A" />
<input constant="B17" type="java.lang.String" />
<input variable="trayName" type="java.lang.String" />
<output variable="isExist" />
</invoke>
<switch name="switch" bounds="1152,771,33,33" type="switch">
<source idx="0" terminal="5,A" />
<switchstart name="switchstart" type="switchstart" bounds="1113,850,110,49">
<source idx="0" terminal="5,A" />
</switchstart>
<case name="case" type="case" condition="getVariable('shelfState') = 'Full'" bounds="843,929,32,49">
<source idx="0" terminal="5,A" />
<switch name="switch" bounds="843,1008,33,33" type="switch">
<source idx="0" terminal="5,A" />
<switchstart name="switchstart" type="switchstart" bounds="804,1087,110,49">
<source idx="0" terminal="5,A" />
</switchstart>
<case name="case" type="case" condition="getVariable('isExist') = 'true'" bounds="514,1166,32,49">
<source idx="0" terminal="5,A" />
<invoke name="PackingGroupServiceUtil getPackingGroupNameByTrayName" type="invokebean" description="public java.lang.String getPackingGroupNameByTrayName(java.lang.String trayName)" bounds="424,1245,212,102" partnerLink="PackingGroupServiceUtil" partnerLinkType="PackingGroupServiceUtil" operation="getPackingGroupNameByTrayName" operationDesc="public java.lang.String getPackingGroupNameByTrayName(java.lang.String trayName)" ignoreThrow="false" fork="false">
<source idx="0" terminal="5,A" />
<input variable="trayName" type="java.lang.String" />
<output variable="palletName" />
</invoke>
<switch name="switch" bounds="510,1358,33,33" type="switch">
<source idx="0" terminal="5,A" />
<switchstart name="switchstart" type="switchstart" bounds="471,1437,110,49">
<source idx="0" terminal="5,A" />
</switchstart>
<case name="case" type="case" condition="getVariable('palletName')=''" bounds="487,1516,32,49">
<source idx="0" terminal="5,A" />
</case>
<otherwise name="otherwise" type="otherwise" bounds="632,1516,61,49">
<source idx="0" terminal="5,A" />
<invoke name="PackingGroupServiceUtil getPackingGroupData" type="invokebean" description="public com.cim.idm.wmspackage.productpacking.management.data.ProductPacking getPackingGroupData(java.lang.String originalPalletName, java.lang.String siteName)" bounds="592,1595,141,105" partnerLink="PackingGroupServiceUtil" partnerLinkType="PackingGroupServiceUtil" operation="getPackingGroupData" operationDesc="public com.cim.idm.wmspackage.productpacking.management.data.ProductPacking getPackingGroupData(java.lang.String originalPalletName, java.lang.String siteName)" ignoreThrow="false" fork="false">
<source idx="0" terminal="5,A" />
<input variable="palletName" type="java.lang.String" />
<input constant="B17" type="java.lang.String" />
<output variable="palletInfo" />
</invoke>
<expression name="expression" type="expression" bounds="592,1730,141,65">
<source idx="0" terminal="5,A" />
<function value="setVariable('prePalletLocationName', getField('palletInfo','locationName'))" />
</expression>
<switch name="switch" bounds="878,1531,33,33" type="switch">
<source idx="0" terminal="5,A" />
<switchstart name="switchstart" type="switchstart" bounds="839,1578,110,49">
<source idx="0" terminal="5,A" />
</switchstart>
<otherwise name="otherwise" type="otherwise" bounds="826,1640,61,49">
<source idx="0" terminal="5,A" />
<invoke name="StorageServiceUtil getStorageSpecData" type="invokebean" description="public com.cim.idm.wmspackage.storage.management.data.StorageSpec getStorageSpecData(java.lang.String siteName, java.lang.String storageName)" bounds="751,1709,141,105" partnerLink="StorageServiceUtil" partnerLinkType="StorageServiceUtil" operation="getStorageSpecData" operationDesc="public com.cim.idm.wmspackage.storage.management.data.StorageSpec getStorageSpecData(java.lang.String siteName, java.lang.String storageName)" ignoreThrow="false" fork="false">
<source idx="0" terminal="5,A" />
<input constant="B17" type="java.lang.String" />
<input variable="prePalletLocationName" type="java.lang.String" />
<output variable="storageSpec" />
</invoke>
</otherwise>
<case name="case" type="case" condition="isNull('prePalletLocationName')='true()'" bounds="947,1640,32,49">
<source idx="0" terminal="5,A" />
</case>
<switchend name="switchend" type="switchend" bounds="924,1811,110,49">
<source idx="0" terminal="5,A" />
<source idx="1" terminal="5,A" />
</switchend>
</switch>
<switch name="switch" bounds="876,1868,33,33" type="switch">
<source idx="0" terminal="5,A" />
<switchstart name="switchstart" type="switchstart" bounds="837,1919,110,49">
<source idx="0" terminal="5,A" />
</switchstart>
<case name="case" type="case" condition="isNull('storageSpec')!='true'" bounds="715,1977,32,49">
<source idx="0" terminal="5,A" />
<switch name="switch" bounds="711,2041,33,33" type="switch">
<source idx="0" terminal="5,A" />
<switchstart name="switchstart" type="switchstart" bounds="696,2093,110,49">
<source idx="0" terminal="5,A" />
</switchstart>
<case name="case" type="case" condition="getField('storageSpec','storageOperationType')='Manual'" bounds="715,2143,32,49">
<source idx="0" terminal="5,A" />
<invoke name="StorageServiceImpl modifyLocation" type="invokebean" description="public void modifyLocation(java.lang.String siteName, java.lang.String storageName, java.lang.String resourceState, java.lang.String useState, com.cim.idm.framework.data.EventInfo eventInfo)" bounds="642,2199,294,102" partnerLink="StorageServiceImpl" partnerLinkType="StorageServiceImpl" operation="modifyLocation" operationDesc="public void modifyLocation(java.lang.String siteName, java.lang.String storageName, java.lang.String resourceState, java.lang.String useState, com.cim.idm.framework.data.EventInfo eventInfo)" ignoreThrow="false" fork="false">
<source idx="0" terminal="5,A" />
<input constant="B17" type="java.lang.String" />
<input variable="prePalletLocationName" type="java.lang.String" />
<input constant="InService" type="java.lang.String" />
<input constant="Empty" type="java.lang.String" />
<input variable="eventInfo" type="com.cim.idm.framework.data.EventInfo" />
</invoke>
</case>
</switch>
</case>
<otherwise name="otherwise" type="otherwise" bounds="890,2014,61,49">
<source idx="0" terminal="5,A" />
</otherwise>
<switchend name="switchend" type="switchend" bounds="812,2315,110,49">
<source idx="0" terminal="5,A" />
<source idx="1" terminal="5,A" />
</switchend>
</switch>
</otherwise>
<switchend name="switchend" type="switchend" bounds="539,2411,110,49">
<source idx="0" terminal="5,A" />
<source idx="1" terminal="5,A" />
</switchend>
</switch>
<expression name="expression" type="expression" bounds="670,2486,140,62">
<source idx="0" terminal="5,A" />
<function value="setField('durablekey','siteName','B17')" />
<function value="setField('durablekey','durableName',getVariable('trayName'))" />
<function value="addMap(getVariable('storageUserColumns'),'packingName',getVariable('palletName'))" />
</expression>
<switch name="switch" bounds="725,2576,33,33" type="switch">
<source idx="0" terminal="5,A" />
<switchstart name="switchstart" type="switchstart" bounds="685,2634,110,49">
<source idx="0" terminal="5,A" />
</switchstart>
<case name="case" type="case" condition="getVariable('palletName') != ''" bounds="536,2733,32,49">
<source idx="0" terminal="5,A" />
<invoke name="PackingGroupServiceImpl locationChangReport" type="invokebean" description="public void locationChangReport(java.lang.String SiteName, java.lang.String trayName, java.lang.String locationName, com.cim.idm.framework.data.EventInfo eventInfo)" bounds="457,2811,217,102" partnerLink="PackingGroupServiceImpl" partnerLinkType="PackingGroupServiceImpl" operation="locationChangReport" operationDesc="public void locationChangReport(java.lang.String SiteName, java.lang.String trayName, java.lang.String locationName, com.cim.idm.framework.data.EventInfo eventInfo)" ignoreThrow="false" fork="false">
<source idx="0" terminal="5,A" />
<input constant="B17" type="java.lang.String" />
<input variable="durableName" type="java.lang.String" />
<input variable="locationNamenew" type="java.lang.String" />
<input variable="eventInfo" type="com.cim.idm.framework.data.EventInfo" />
</invoke>
</case>
<otherwise name="otherwise" type="otherwise" bounds="929,2706,61,49">
<source idx="0" terminal="5,A" />
<empty name="empty" bounds="893,2790,141,65">
<source idx="0" terminal="5,A" />
</empty>
</otherwise>
<switchend name="switchend" type="switchend" bounds="620,2936,110,49">
<source idx="0" terminal="5,A" />
<source idx="1" terminal="5,A" />
</switchend>
</switch>
<invoke name="DurableServiceImpl setLocation" type="invokebean" description="public void setLocation(com.cim.idm.wmspackage.durable.management.data.DurableKey key, com.cim.idm.framework.data.EventInfo eventInfo, java.lang.String locationName, java.util.Map durableUserColumns, java.util.Map storageUserColumns)" bounds="488,3012,398,102" partnerLink="DurableServiceImpl" partnerLinkType="DurableServiceImpl" operation="setLocation" operationDesc="public void setLocation(com.cim.idm.wmspackage.durable.management.data.DurableKey key, com.cim.idm.framework.data.EventInfo eventInfo, java.lang.String locationName, java.util.Map durableUserColumns, java.util.Map storageUserColumns)" ignoreThrow="false" fork="false">
<source idx="0" terminal="5,A" />
<input variable="durablekey" type="com.cim.idm.wmspackage.durable.management.data.DurableKey" />
<input variable="eventInfo" type="com.cim.idm.framework.data.EventInfo" />
<input variable="shelfName" type="java.lang.String" />
<input variable="durableUserColumns" type="java.util.Map" />
<input variable="storageUserColumns" type="java.util.Map" />
</invoke>
</case>
<otherwise name="otherwise" type="otherwise" bounds="1159,1166,61,49">
<source idx="0" terminal="5,A" />
<invoke name="StorageServiceImpl modifyLocation" type="invokebean" description="public void modifyLocation(java.lang.String siteName, java.lang.String storageName, java.lang.String resourceState, java.lang.String useState, com.cim.idm.framework.data.EventInfo eventInfo)" bounds="1072,1245,235,102" partnerLink="StorageServiceImpl" partnerLinkType="StorageServiceImpl" operation="modifyLocation" operationDesc="public void modifyLocation(java.lang.String siteName, java.lang.String storageName, java.lang.String resourceState, java.lang.String useState, com.cim.idm.framework.data.EventInfo eventInfo)" ignoreThrow="false" fork="false">
<source idx="0" terminal="5,A" />
<input constant="B17" type="java.lang.String" />
<input variable="shelfName" type="java.lang.String" />
<input constant="InService" type="java.lang.String" />
<input constant="Full" type="java.lang.String" />
<input variable="eventInfo" type="com.cim.idm.framework.data.EventInfo" />
</invoke>
</otherwise>
<switchend name="switchend" type="switchend" bounds="685,3138,110,49">
<source idx="0" terminal="5,A" />
<source idx="1" terminal="5,A" />
</switchend>
</switch>
</case>
<otherwise name="otherwise" type="otherwise" bounds="1547,929,61,49">
<source idx="0" terminal="5,A" />
<expression name="expression" type="expression" bounds="1507,1008,140,62">
<source idx="0" terminal="5,A" />
<function value="setField('durablekey','siteName','B17')" />
<function value="setField('durablekey','durableName',getVariable('trayName'))" />
<function value="addMap(getVariable('durableUserColumns'),'locationName','')" />
</expression>
<switch name="switch" bounds="1561,1100,33,33" type="switch">
<source idx="0" terminal="5,A" />
<switchstart name="switchstart" type="switchstart" bounds="1522,1179,110,49">
<source idx="0" terminal="5,A" />
</switchstart>
<case name="case" type="case" condition="getVariable('isExist') = 'true'" bounds="1461,1258,32,49">
<source idx="0" terminal="5,A" />
<invoke name="DurableServiceImpl setEvent" type="invokebean" description="public void setEvent(com.cim.idm.wmspackage.durable.management.data.DurableKey key, com.cim.idm.framework.data.EventInfo eventInfo, java.util.Map trayUserColumns)" bounds="1357,1337,241,102" partnerLink="DurableServiceImpl" partnerLinkType="DurableServiceImpl" operation="setEvent" operationDesc="public void setEvent(com.cim.idm.wmspackage.durable.management.data.DurableKey key, com.cim.idm.framework.data.EventInfo eventInfo, java.util.Map trayUserColumns)" ignoreThrow="false" fork="false">
<source idx="0" terminal="5,A" />
<input variable="durablekey" type="com.cim.idm.wmspackage.durable.management.data.DurableKey" />
<input variable="eventInfo" type="com.cim.idm.framework.data.EventInfo" />
<input variable="durableUserColumns" type="java.util.Map" />
</invoke>
</case>
<otherwise name="otherwise" type="otherwise" bounds="1648,1258,61,49">
<source idx="0" terminal="5,A" />
</otherwise>
<switchend name="switchend" type="switchend" bounds="1522,1459,110,49">
<source idx="0" terminal="5,A" />
<source idx="1" terminal="5,A" />
</switchend>
</switch>
<invoke name="StorageServiceImpl modifyLocation" type="invokebean" description="public void modifyLocation(java.lang.String siteName, java.lang.String storageName, java.lang.String resourceState, java.lang.String useState, com.cim.idm.framework.data.EventInfo eventInfo)" bounds="1460,1538,235,102" partnerLink="StorageServiceImpl" partnerLinkType="StorageServiceImpl" operation="modifyLocation" operationDesc="public void modifyLocation(java.lang.String siteName, java.lang.String storageName, java.lang.String resourceState, java.lang.String useState, com.cim.idm.framework.data.EventInfo eventInfo)" ignoreThrow="false" fork="false">
<source idx="0" terminal="5,A" />
<input constant="B17" type="java.lang.String" />
<input variable="shelfName" type="java.lang.String" />
<input constant="InService" type="java.lang.String" />
<input constant="Empty" type="java.lang.String" />
<input variable="eventInfo" type="com.cim.idm.framework.data.EventInfo" />
</invoke>
</otherwise>
<switchend name="switchend" type="switchend" bounds="685,3207,110,49">
<source idx="0" terminal="5,A" />
<source idx="1" terminal="5,A" />
</switchend>
</switch>
</otherwise>
<switchend name="switchend" type="switchend" bounds="268,3276,110,49">
<source idx="0" terminal="5,A" />
<source idx="1" terminal="5,A" />
</switchend>
</switch>
<invoke name="TransactionUtil commitTransaction" type="invokebean" description="public void commitTransaction()" bounds="253,3355,140,102" partnerLink="TransactionUtil" partnerLinkType="TransactionUtil" operation="commitTransaction" operationDesc="public void commitTransaction()" ignoreThrow="false" fork="false">
<source idx="0" terminal="5,A" />
</invoke>
<invoke name="PackingGroupServiceUtil CheckControlPalletByTray" type="invokebean" description="public java.lang.String CheckControlPalletByTray(java.lang.String durableName)" bounds="258,3474,141,105" partnerLink="PackingGroupServiceUtil" partnerLinkType="PackingGroupServiceUtil" operation="CheckControlPalletByTray" operationDesc="public java.lang.String CheckControlPalletByTray(java.lang.String durableName)" ignoreThrow="false" fork="false">
<source idx="0" terminal="5,A" />
<input variable="durableName" type="java.lang.String" />
<output variable="controlPalletName" />
</invoke>
<switch name="switch" bounds="309,3611,33,33" type="switch">
<source idx="0" terminal="5,A" />
<switchstart name="switchstart" type="switchstart" bounds="259,3660,110,49">
<source idx="0" terminal="5,A" />
</switchstart>
<case name="case" type="case" condition="getVariable('controlPalletName')!=''" bounds="166,3730,60,19">
<source idx="0" terminal="5,A" />
<invoke name="PackingGroupServiceImpl updateControlPalletLocation" type="invokebean" description="public void updateControlPalletLocation(java.lang.String palletName, java.lang.String locationName)" bounds="107,3788,141,105" partnerLink="PackingGroupServiceImpl" partnerLinkType="PackingGroupServiceImpl" operation="updateControlPalletLocation" operationDesc="public void updateControlPalletLocation(java.lang.String palletName, java.lang.String locationName)" ignoreThrow="false" fork="false">
<source idx="0" terminal="5,A" />
<input variable="controlPalletName" type="java.lang.String" />
<input variable="shelfName" type="java.lang.String" />
</invoke>
</case>
<otherwise name="otherwise" type="otherwise" bounds="435,3746,88,19">
<source idx="0" terminal="5,A" />
</otherwise>
<switchend name="switchend" type="switchend" bounds="257,3918,110,49">
<source idx="0" terminal="5,A" />
<source idx="1" terminal="5,A" />
</switchend>
</switch>
</sequence>
</process>