<?xml version="1.0" encoding="UTF-8"?>
<process xmlns:bean="http://bean.boe.com/" xmlns:bpel="http://bpel.boe.com/" targetNamespace="http://bpel.boe.com/bpelj/" name="InnerStockIn.bpel">
    <partnerLinks>
        <partnerLink name="bpelj" partnerLinkType="bpel:bpelj" />
        <partnerLink name="MaterialPackingStockInImpl" partnerLinkType="bean:MaterialPackingStockInImpl" />
        <partnerLink name="TransactionUtil" partnerLinkType="bean:TransactionUtil" />
        <partnerLink name="EventInfoUtil" partnerLinkType="bean:EventInfoUtil" />
        <partnerLink name="CommonValidation" partnerLinkType="bean:CommonValidation" />
        <partnerLink name="ERPInterfaceServiceImpl" partnerLinkType="bean:ERPInterfaceServiceImpl" />
        <partnerLink name="ESBService" partnerLinkType="bean:ESBService" />
        <partnerLink name="MaterialPackingServiceImpl" partnerLinkType="bean:MaterialPackingServiceImpl" />
    </partnerLinks>
    <variables>
        <variable name="0001" messageType="java.lang.String"></variable>
        <variable name="10001" messageType="java.lang.String"></variable>
        <variable name="101" messageType="java.lang.String"></variable>
        <variable name="300" messageType="int"></variable>
        <variable name="eventComment" messageType="java.lang.String" expression="getXmlData('InnerStockIn', '//Message/Header/EVENTCOMMENT')" />
        <variable name="eventInfo" messageType="com.cim.idm.framework.data.EventInfo"></variable>
        <variable name="eventUser" messageType="java.lang.String" expression="getXmlData('InnerStockIn', '//Message/Header/EVENTUSER')" />
        <variable name="GetInspectedList" messageType="java.lang.String"></variable>
        <variable name="innerList" messageType="java.util.List"></variable>
        <variable name="InnerStockIn" messageType="org.jdom.Document"></variable>
        <variable name="messageid" messageType="java.lang.String"></variable>
        <variable name="messageName" messageType="java.lang.String" expression="getXmlData('InnerStockIn', '//Message/Header/MESSAGENAME')" />
        <variable name="NormalStockIn" messageType="org.jdom.Document"></variable>
        <variable name="OICSender" messageType="java.lang.String"></variable>
        <variable name="oplist" messageType="java.util.List"></variable>
        <variable name="receiveActNo" messageType="java.lang.String" expression="getXmlData('InnerStockIn', '//Message/Body/INNERREQUESTDETAILLIST/RECEIVEACTNO')" />
        <variable name="replysubjectname" messageType="java.lang.String" expression="getXmlData('InnerStockIn', '//Message/Header/ORIGINALSOURCESUBJECTNAME')" />
        <variable name="siteName" messageType="java.lang.String" expression="getXmlData('InnerStockIn', '//Message/Header/SITENAME')" />
        <variable name="toerplist" messageType="java.util.List"></variable>
        <variable name="undolist" messageType="java.util.List"></variable>
    </variables>
    <sequence>
        <receive name="InnerStockIn" bounds="172,30,149,62">
            <input variable="InnerStockIn" type="org.jdom.Document" />
        </receive>
        <invoke name="MaterialPackingStockInImpl checkReceiveactState" type="invokebean" description="public void checkReceiveactState(java.lang.String receiveActNo)" bounds="176,122,141,105" partnerLink="MaterialPackingStockInImpl" partnerLinkType="MaterialPackingStockInImpl" operation="checkReceiveactState" operationDesc="public void checkReceiveactState(java.lang.String receiveActNo)" ignoreThrow="false" fork="false">
            <source idx="0" terminal="5,A" />
            <input variable="receiveActNo" type="java.lang.String" />
        </invoke>
        <invoke name="TransactionUtil beginTransaction" type="invokebean" description="public void beginTransaction()" bounds="176,257,141,105" 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="176,392,141,105" 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="messageName" type="java.lang.String" />
            <input variable="eventUser" type="java.lang.String" />
            <input variable="eventComment" type="java.lang.String" />
            <input constant="101" type="java.lang.String" />
            <input constant="0001" type="java.lang.String" />
            <output variable="eventInfo" />
        </invoke>
        <invoke name="CommonValidation GetMessageID" type="invokebean" description="public java.lang.String GetMessageID(java.lang.String sitename)" bounds="176,527,141,105" partnerLink="CommonValidation" partnerLinkType="CommonValidation" operation="GetMessageID" operationDesc="public java.lang.String GetMessageID(java.lang.String sitename)" ignoreThrow="false" fork="false">
            <source idx="0" terminal="5,A" />
            <input variable="siteName" type="java.lang.String" />
            <output variable="messageid" />
        </invoke>
        <invoke name="TransactionUtil commitTransaction" type="invokebean" description="public void commitTransaction()" bounds="176,662,141,105" partnerLink="TransactionUtil" partnerLinkType="TransactionUtil" operation="commitTransaction" operationDesc="public void commitTransaction()" ignoreThrow="false" fork="false">
            <source idx="0" terminal="5,A" />
        </invoke>
        <invoke name="TransactionUtil beginTransaction" type="invokebean" description="public void beginTransaction()" bounds="176,797,141,105" partnerLink="TransactionUtil" partnerLinkType="TransactionUtil" operation="beginTransaction" operationDesc="public void beginTransaction()" ignoreThrow="false" fork="false">
            <source idx="0" terminal="5,A" />
        </invoke>
        <invoke name="MaterialPackingStockInImpl GetInnerStockInList" type="invokebean" description="public java.util.List GetInnerStockInList(org.jdom.Document document)" bounds="176,932,141,105" partnerLink="MaterialPackingStockInImpl" partnerLinkType="MaterialPackingStockInImpl" operation="GetInnerStockInList" operationDesc="public java.util.List GetInnerStockInList(org.jdom.Document document)" ignoreThrow="false" fork="false">
            <source idx="0" terminal="5,A" />
            <input variable="InnerStockIn" type="org.jdom.Document" />
            <output variable="innerList" />
        </invoke>
        <invoke name="MaterialPackingStockInImpl GetERPListByInner" type="invokebean" description="public java.util.List GetERPListByInner(java.util.List arg1, int arg2)" bounds="176,1067,141,105" partnerLink="MaterialPackingStockInImpl" partnerLinkType="MaterialPackingStockInImpl" operation="GetERPListByInner" operationDesc="public java.util.List GetERPListByInner(java.util.List arg1, int arg2)" ignoreThrow="false" fork="false">
            <source idx="0" terminal="5,A" />
            <input variable="innerList" type="java.util.List" />
            <input constant="300" type="int" />
            <output variable="toerplist" />
        </invoke>
        <invoke name="ERPInterfaceServiceImpl erp_StockIn_PI046ForERPAccount" type="invokebean" description="public static java.util.List erp_StockIn_PI046ForERPAccount(java.util.List toerplist, com.cim.idm.framework.data.EventInfo eventInfo, java.lang.String messageid)" bounds="176,1202,141,105" partnerLink="ERPInterfaceServiceImpl" partnerLinkType="ERPInterfaceServiceImpl" operation="erp_StockIn_PI046ForERPAccount" operationDesc="public static java.util.List erp_StockIn_PI046ForERPAccount(java.util.List toerplist, com.cim.idm.framework.data.EventInfo eventInfo, java.lang.String messageid)" ignoreThrow="false" fork="false">
            <source idx="0" terminal="5,A" />
            <input variable="toerplist" type="java.util.List" />
            <input variable="eventInfo" type="com.cim.idm.framework.data.EventInfo" />
            <input variable="messageid" type="java.lang.String" />
            <output variable="undolist" />
        </invoke>
        <invoke name="TransactionUtil commitTransaction" type="invokebean" description="public void commitTransaction()" bounds="176,1337,141,105" partnerLink="TransactionUtil" partnerLinkType="TransactionUtil" operation="commitTransaction" operationDesc="public void commitTransaction()" ignoreThrow="false" fork="false">
            <source idx="0" terminal="5,A" />
        </invoke>
        <switch name="switch" bounds="230,1472,33,33" type="switch">
            <source idx="0" terminal="5,A" />
            <switchstart name="switchstart" type="switchstart" bounds="191,1551,110,49">
                <source idx="0" terminal="5,A" />
            </switchstart>
            <case name="case" type="case" condition="getListSize('undolist') &gt; 0&#xD;&#xA;" bounds="113,1630,62,57">
                <source idx="0" terminal="5,A" />
                <invoke name="TransactionUtil beginTransaction" type="invokebean" description="public void beginTransaction()" bounds="74,1717,141,105" partnerLink="TransactionUtil" partnerLinkType="TransactionUtil" operation="beginTransaction" operationDesc="public void beginTransaction()" ignoreThrow="false" fork="false">
                    <source idx="0" terminal="5,A" />
                </invoke>
                <invoke name="MaterialPackingStockInImpl SaveInnerStockInInfo" type="invokebean" description="public void SaveInnerStockInInfo(java.util.List toerplist, java.util.List undolist, com.cim.idm.framework.data.EventInfo eventinfo)" bounds="74,1852,141,105" partnerLink="MaterialPackingStockInImpl" partnerLinkType="MaterialPackingStockInImpl" operation="SaveInnerStockInInfo" operationDesc="public void SaveInnerStockInInfo(java.util.List toerplist, java.util.List undolist, com.cim.idm.framework.data.EventInfo eventinfo)" ignoreThrow="false" fork="false">
                    <source idx="0" terminal="5,A" />
                    <input variable="toerplist" type="java.util.List" />
                    <input variable="undolist" type="java.util.List" />
                    <input variable="eventInfo" type="com.cim.idm.framework.data.EventInfo" />
                </invoke>
                <invoke name="TransactionUtil commitTransaction" type="invokebean" description="public void commitTransaction()" bounds="74,1987,141,105" partnerLink="TransactionUtil" partnerLinkType="TransactionUtil" operation="commitTransaction" operationDesc="public void commitTransaction()" ignoreThrow="false" fork="false">
                    <source idx="0" terminal="5,A" />
                </invoke>
                <invoke name="ESBService sendReplyBySender" type="invokebean" description="public void sendReplyBySender(java.lang.String replySubject, org.jdom.Document doc, java.lang.String senderName)" bounds="74,2122,141,105" partnerLink="ESBService" partnerLinkType="ESBService" operation="sendReplyBySender" operationDesc="public void sendReplyBySender(java.lang.String replySubject, org.jdom.Document doc, java.lang.String senderName)" ignoreThrow="false" fork="false">
                    <source idx="0" terminal="5,A" />
                    <input variable="replysubjectname" type="java.lang.String" />
                    <input variable="InnerStockIn" type="org.jdom.Document" />
                    <input constant="OICSender" type="java.lang.String" />
                </invoke>
                <invoke name="MaterialPackingServiceImpl getQueryResult" type="invokebean" description="public void getQueryResult(java.lang.String messageName, java.lang.String queryId, java.lang.String version, java.lang.String senderName, java.lang.String siteName)" bounds="74,2257,141,105" partnerLink="MaterialPackingServiceImpl" partnerLinkType="MaterialPackingServiceImpl" operation="getQueryResult" operationDesc="public void getQueryResult(java.lang.String messageName, java.lang.String queryId, java.lang.String version, java.lang.String senderName, java.lang.String siteName)" ignoreThrow="false" fork="false">
                    <source idx="0" terminal="5,A" />
                    <input variable="messageName" type="java.lang.String" />
                    <input constant="GetInspectedList" type="java.lang.String" />
                    <input constant="10001" type="java.lang.String" />
                    <input constant="OICSender" type="java.lang.String" />
                    <input variable="siteName" type="java.lang.String" />
                </invoke>
                <terminate name="terminate" bounds="74,2392,141,65">
                    <source idx="0" terminal="5,A" />
                </terminate>
            </case>
            <otherwise name="otherwise" type="otherwise" bounds="305,1630,88,55">
                <source idx="0" terminal="5,A" />
                <invoke name="ESBService sendReplyBySender" type="invokebean" description="public void sendReplyBySender(java.lang.String replySubject, org.jdom.Document doc, java.lang.String senderName)" bounds="279,1715,141,105" partnerLink="ESBService" partnerLinkType="ESBService" operation="sendReplyBySender" operationDesc="public void sendReplyBySender(java.lang.String replySubject, org.jdom.Document doc, java.lang.String senderName)" ignoreThrow="false" fork="false">
                    <source idx="0" terminal="5,A" />
                    <input variable="replysubjectname" type="java.lang.String" />
                    <input variable="InnerStockIn" type="org.jdom.Document" />
                    <input constant="OICSender" type="java.lang.String" />
                </invoke>
                <terminate name="terminate" bounds="279,1850,141,65">
                    <source idx="0" terminal="5,A" />
                </terminate>
            </otherwise>
        </switch>
    </sequence>
</process>

