<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:activiti="http://activiti.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:g="http://www.jboss.org/drools/flow/gpd" xmlns:tns="http://www.jboss.org/drools" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" expressionLanguage="http://www.mvel.org/2.0" id="Definition" name="" targetNamespace="http://www.jboss.org/drools" typeLanguage="http://www.java.com/javaTypes">
        <process id="cn.ibizlab.core.sample.service.logic.ibizorderdetailgetunitandprice" isClosed="false" isExecutable="true" name="sample_ibizorderdetail_getunitandprice_ruleFlow" processType="Private" tns:packageName="cn.ibizlab.core.sample.service.logic.ibizorderdetailgetunitandprice">
            <extensionElements>
                <tns:import name="java.util.Map" />
                <tns:import name="org.springframework.util.StringUtils"/>
                <tns:import name="cn.ibizlab.util.helper.RuleUtils"/>
                                <tns:metaData express="" name="ibizorderdetailgetunitandpricedefault" type="entity"/>
                                <tns:metaData express="new cn.ibizlab.core.sample.domain.IBIZOrder()" name="ibizorderdetailgetunitandpriceorder" type="refentity"/>
                                <tns:metaData express="new cn.ibizlab.core.sample.domain.IBIZUNIProduct()" name="ibizorderdetailgetunitandpriceproduct" type="refentity"/>
                                <tns:metaData express="new cn.ibizlab.core.sample.domain.IBIZBOOK()" name="ibizorderdetailgetunitandpricefilter" type="refentity"/>
                                <tns:metaData express="new HashMap()" name="ibizorderdetailgetunitandpricelist" type="refentity"/>
                                <tns:metaData express="new HashMap()" name="ibizorderdetailgetunitandpricepage" type="refentity"/>
                                <tns:metaData express="new HashMap()" name="ibizorderdetailgetunitandpricesession" type="refentity"/>
                                    <tns:metaData express="T(cn.ibizlab.util.security.SpringContextHolder).getBean(T(cn.ibizlab.core.sample.service.IIBIZOrderService))" name="ibizorderservice" type="service"/>
                                    <tns:metaData express="T(cn.ibizlab.util.security.SpringContextHolder).getBean(T(cn.ibizlab.core.sample.service.IIBIZBOOKService))" name="ibizbookservice" type="service"/>
                                    <tns:metaData express="T(cn.ibizlab.util.security.SpringContextHolder).getBean(T(cn.ibizlab.core.sample.service.IIBIZOrderDetailService))" name="ibizorderdetailservice" type="service"/>
                                    <tns:metaData express="T(cn.ibizlab.util.security.SpringContextHolder).getBean(T(cn.ibizlab.core.sample.service.IIBIZUNIProductService))" name="ibizuniproductservice" type="service"/>
                    <tns:metaData express="T(cn.ibizlab.util.security.SpringContextHolder).getBean(T(cn.ibizlab.core.sample.service.IIBIZOrderDetailService))" name="iBzSysIbizorderdetailDefaultService" type="service"/>
                    <tns:metaData express="T(cn.ibizlab.util.security.AuthenticationUser).getAuthenticationUser()" name="curuser" type="session"/>
                            <tns:global identifier="ibizorderdetailgetunitandpricedefault" type="cn.ibizlab.core.sample.domain.IBIZOrderDetail" />
                            <tns:global identifier="ibizorderdetailgetunitandpriceorder" type="cn.ibizlab.core.sample.domain.IBIZOrder" />
                            <tns:global identifier="ibizorderdetailgetunitandpriceproduct" type="cn.ibizlab.core.sample.domain.IBIZUNIProduct" />
                            <tns:global identifier="ibizorderdetailgetunitandpricefilter" type="cn.ibizlab.core.sample.domain.IBIZBOOK" />
            </extensionElements>
                        <startEvent id="begin" isInterrupting="true"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpricebindparam1" id="bindparam1" implementation="http://www.jboss.org/drools/rule" name="绑定参数"/>
                        <endEvent id="bindparam1_end" name="end"/>
                        <sequenceFlow id="bindparam1_end_line" sourceRef="bindparam1" targetRef="bindparam1_end"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpriceresetparam1" id="resetparam1" implementation="http://www.jboss.org/drools/rule" name="重置参数"/>
                        <endEvent id="resetparam1_end" name="end"/>
                        <sequenceFlow id="resetparam1_end_line" sourceRef="resetparam1" targetRef="resetparam1_end"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpricerenewparam1" id="renewparam1" implementation="http://www.jboss.org/drools/rule" name="重新建立参数"/>
                        <endEvent id="renewparam1_end" name="end"/>
                        <sequenceFlow id="renewparam1_end_line" sourceRef="renewparam1" targetRef="renewparam1_end"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpricecopyparam1" id="copyparam1" implementation="http://www.jboss.org/drools/rule" name="拷贝参数"/>
                        <endEvent id="copyparam1_end" name="end"/>
                        <sequenceFlow id="copyparam1_end_line" sourceRef="copyparam1" targetRef="copyparam1_end"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpricesortparam1" id="sortparam1" implementation="http://www.jboss.org/drools/rule" name="排序数组参数"/>
                        <endEvent id="sortparam1_end" name="end"/>
                        <sequenceFlow id="sortparam1_end_line" sourceRef="sortparam1" targetRef="sortparam1_end"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpriceappendparam1" id="appendparam1" implementation="http://www.jboss.org/drools/rule" name="附加到数组参数"/>
                        <endEvent id="appendparam1_end" name="end"/>
                        <sequenceFlow id="appendparam1_end_line" sourceRef="appendparam1" targetRef="appendparam1_end"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpriceprepareparam3" id="prepareparam3" implementation="http://www.jboss.org/drools/rule" name="设置orderid"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpricedeaction2" id="deaction2" implementation="http://www.jboss.org/drools/rule" name="获取订单信息"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpricethrowexception2" id="throwexception2" implementation="http://www.jboss.org/drools/rule" name="获取订单信息异常"/>
                        <endEvent id="throwexception2_end" name="end"/>
                        <sequenceFlow id="throwexception2_end_line" sourceRef="throwexception2" targetRef="throwexception2_end"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpricedebugparam4" id="debugparam4" implementation="http://www.jboss.org/drools/rule" name="调试逻辑参数"/>
                        <endEvent id="debugparam4_end" name="end"/>
                        <sequenceFlow id="debugparam4_end_line" sourceRef="debugparam4" targetRef="debugparam4_end"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpricedebugparam5" id="debugparam5" implementation="http://www.jboss.org/drools/rule" name="调试逻辑参数"/>
                        <endEvent id="debugparam5_end" name="end"/>
                        <sequenceFlow id="debugparam5_end_line" sourceRef="debugparam5" targetRef="debugparam5_end"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpricededataquery1" id="dedataquery1" implementation="http://www.jboss.org/drools/rule" name="实体数据查询"/>
                        <endEvent id="dedataquery1_end" name="end"/>
                        <sequenceFlow id="dedataquery1_end_line" sourceRef="dedataquery1" targetRef="dedataquery1_end"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpricedebugparam3" id="debugparam3" implementation="http://www.jboss.org/drools/rule" name="调试逻辑参数"/>
                        <endEvent id="debugparam3_end" name="end"/>
                        <sequenceFlow id="debugparam3_end_line" sourceRef="debugparam3" targetRef="debugparam3_end"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpricedelogic1" id="delogic1" implementation="http://www.jboss.org/drools/rule" name="统计金额"/>
                        <endEvent id="delogic1_end" name="end"/>
                        <sequenceFlow id="delogic1_end_line" sourceRef="delogic1" targetRef="delogic1_end"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpriceprepareparam1" id="prepareparam1" implementation="http://www.jboss.org/drools/rule" name="获取商品ID"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpricedeaction1" id="deaction1" implementation="http://www.jboss.org/drools/rule" name="获取商品信息"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpriceprepareparam2" id="prepareparam2" implementation="http://www.jboss.org/drools/rule" name="填充单位和单价"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpricededataset1" id="dedataset1" implementation="http://www.jboss.org/drools/rule" name="实体数据集"/>
                        <endEvent id="dedataset1_end" name="end"/>
                        <sequenceFlow id="dedataset1_end_line" sourceRef="dedataset1" targetRef="dedataset1_end"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpricedeaction3" id="deaction3" implementation="http://www.jboss.org/drools/rule" name="实体行为"/>
                        <endEvent id="deaction3_end" name="end"/>
                        <sequenceFlow id="deaction3_end_line" sourceRef="deaction3" targetRef="deaction3_end"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpricethrowexception" id="throwexception" implementation="http://www.jboss.org/drools/rule" name="获取产品价格异常"/>
                        <endEvent id="throwexception_end" name="end"/>
                        <sequenceFlow id="throwexception_end_line" sourceRef="throwexception" targetRef="throwexception_end"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpricededataquery2" id="dedataquery2" implementation="http://www.jboss.org/drools/rule" name="实体数据查询"/>
                        <endEvent id="dedataquery2_end" name="end"/>
                        <sequenceFlow id="dedataquery2_end_line" sourceRef="dedataquery2" targetRef="dedataquery2_end"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpriceprepareparam4" id="prepareparam4" implementation="http://www.jboss.org/drools/rule" name="Setting"/>
                        <endEvent id="prepareparam4_end" name="end"/>
                        <sequenceFlow id="prepareparam4_end_line" sourceRef="prepareparam4" targetRef="prepareparam4_end"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpricededataset2" id="dedataset2" implementation="http://www.jboss.org/drools/rule" name="实体数据集"/>
                        <endEvent id="dedataset2_end" name="end"/>
                        <sequenceFlow id="dedataset2_end_line" sourceRef="dedataset2" targetRef="dedataset2_end"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpriceend1" id="end1" implementation="http://www.jboss.org/drools/rule" name="结束"/>
                        <endEvent id="end1_end" name="end"/>
                        <sequenceFlow id="end1_end_line" sourceRef="end1" targetRef="end1_end"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpricedebugparam1" id="debugparam1" implementation="http://www.jboss.org/drools/rule" name="大于100处理"/>
                        <endEvent id="debugparam1_end" name="end"/>
                        <sequenceFlow id="debugparam1_end_line" sourceRef="debugparam1" targetRef="debugparam1_end"/>
                        <businessRuleTask activiti:exclusive="true" g:ruleFlowGroup="ibizorderdetailgetunitandpricedebugparam2" id="debugparam2" implementation="http://www.jboss.org/drools/rule" name="大于200处理"/>
                        <endEvent id="debugparam2_end" name="end"/>
                        <sequenceFlow id="debugparam2_end_line" sourceRef="debugparam2" targetRef="debugparam2_end"/>
                    <sequenceFlow id="begin_prepareparam1" sourceRef="begin" targetRef="prepareparam1">
                    </sequenceFlow>
                    <sequenceFlow id="prepareparam3_deaction2" sourceRef="prepareparam3" targetRef="deaction2">
                    </sequenceFlow>
                    <sequenceFlow id="deaction2_throwexception2" sourceRef="deaction2" targetRef="throwexception2">
                    </sequenceFlow>
                    <sequenceFlow id="gateway-deaction2_debugparam1" sourceRef="gateway-deaction2" targetRef="debugparam1">
                            <conditionExpression  language="http://www.jboss.org/drools/rule" ><![CDATA[
                                            $ibizorderdetailgetunitandpricedefault:IBIZOrderDetail();
                                            $ibizorderdetailgetunitandpriceorder:IBIZOrder();
                                            $ibizorderdetailgetunitandpriceproduct:IBIZUNIProduct();
                                            $ibizorderdetailgetunitandpricefilter:IBIZBOOK();
                                            $ibizorderdetailgetunitandpricelist:Map();
                                            $ibizorderdetailgetunitandpricepage:Map();
                                            $ibizorderdetailgetunitandpricesession:Map();
                                    eval($ibizorderdetailgetunitandpricedefault==ibizorderdetailgetunitandpricedefault && $ibizorderdetailgetunitandpriceorder==ibizorderdetailgetunitandpriceorder && $ibizorderdetailgetunitandpriceproduct==ibizorderdetailgetunitandpriceproduct && $ibizorderdetailgetunitandpricefilter==ibizorderdetailgetunitandpricefilter && );
                                eval((RuleUtils.test($ibizorderdetailgetunitandpriceorder.get("amount"),"GT","100")))
                                ]]>
                            </conditionExpression>
                    </sequenceFlow>
                    <sequenceFlow id="gateway-deaction2_debugparam2" sourceRef="gateway-deaction2" targetRef="debugparam2">
                            <conditionExpression  language="http://www.jboss.org/drools/rule" ><![CDATA[
                                            $ibizorderdetailgetunitandpricedefault:IBIZOrderDetail();
                                            $ibizorderdetailgetunitandpriceorder:IBIZOrder();
                                            $ibizorderdetailgetunitandpriceproduct:IBIZUNIProduct();
                                            $ibizorderdetailgetunitandpricefilter:IBIZBOOK();
                                            $ibizorderdetailgetunitandpricelist:Map();
                                            $ibizorderdetailgetunitandpricepage:Map();
                                            $ibizorderdetailgetunitandpricesession:Map();
                                    eval($ibizorderdetailgetunitandpricedefault==ibizorderdetailgetunitandpricedefault && $ibizorderdetailgetunitandpriceorder==ibizorderdetailgetunitandpriceorder && $ibizorderdetailgetunitandpriceproduct==ibizorderdetailgetunitandpriceproduct && $ibizorderdetailgetunitandpricefilter==ibizorderdetailgetunitandpricefilter && );
                                eval((RuleUtils.test($ibizorderdetailgetunitandpriceorder.get("amount"),"GT","PRICE")))
                                ]]>
                            </conditionExpression>
                    </sequenceFlow>
                    <sequenceFlow id="gateway-deaction2_debugparam4" sourceRef="gateway-deaction2" targetRef="debugparam4">
                            <conditionExpression  language="http://www.jboss.org/drools/rule" ><![CDATA[
                                            $ibizorderdetailgetunitandpricedefault:IBIZOrderDetail();
                                            $ibizorderdetailgetunitandpriceorder:IBIZOrder();
                                            $ibizorderdetailgetunitandpriceproduct:IBIZUNIProduct();
                                            $ibizorderdetailgetunitandpricefilter:IBIZBOOK();
                                            $ibizorderdetailgetunitandpricelist:Map();
                                            $ibizorderdetailgetunitandpricepage:Map();
                                            $ibizorderdetailgetunitandpricesession:Map();
                                    eval($ibizorderdetailgetunitandpricedefault==ibizorderdetailgetunitandpricedefault && $ibizorderdetailgetunitandpriceorder==ibizorderdetailgetunitandpriceorder && $ibizorderdetailgetunitandpriceproduct==ibizorderdetailgetunitandpriceproduct && $ibizorderdetailgetunitandpricefilter==ibizorderdetailgetunitandpricefilter && );
                                eval((RuleUtils.test($ibizorderdetailgetunitandpriceorder.get("createdate"),"GTANDEQ","CREATEDATE")))
                                ]]>
                            </conditionExpression>
                    </sequenceFlow>
                    <sequenceFlow id="gateway-deaction2_debugparam5" sourceRef="gateway-deaction2" targetRef="debugparam5">
                            <conditionExpression  language="http://www.jboss.org/drools/rule" ><![CDATA[
                                            $ibizorderdetailgetunitandpricedefault:IBIZOrderDetail();
                                            $ibizorderdetailgetunitandpriceorder:IBIZOrder();
                                            $ibizorderdetailgetunitandpriceproduct:IBIZUNIProduct();
                                            $ibizorderdetailgetunitandpricefilter:IBIZBOOK();
                                            $ibizorderdetailgetunitandpricelist:Map();
                                            $ibizorderdetailgetunitandpricepage:Map();
                                            $ibizorderdetailgetunitandpricesession:Map();
                                    eval($ibizorderdetailgetunitandpricedefault==ibizorderdetailgetunitandpricedefault && $ibizorderdetailgetunitandpriceorder==ibizorderdetailgetunitandpriceorder && $ibizorderdetailgetunitandpriceproduct==ibizorderdetailgetunitandpriceproduct && $ibizorderdetailgetunitandpricefilter==ibizorderdetailgetunitandpricefilter && );
                                eval((RuleUtils.test($ibizorderdetailgetunitandpriceorder.get("ordertime"),"LTANDEQ","")))
                                ]]>
                            </conditionExpression>
                    </sequenceFlow>
                    <sequenceFlow id="deaction2_debugparam3" sourceRef="deaction2" targetRef="debugparam3">
                    </sequenceFlow>
                    <sequenceFlow id="prepareparam1_deaction1" sourceRef="prepareparam1" targetRef="deaction1">
                    </sequenceFlow>
                    <sequenceFlow id="deaction1_prepareparam2" sourceRef="deaction1" targetRef="prepareparam2">
                    </sequenceFlow>
                    <sequenceFlow id="deaction1_throwexception" sourceRef="deaction1" targetRef="throwexception">
                    </sequenceFlow>
                    <sequenceFlow id="gateway-prepareparam2_prepareparam3" sourceRef="gateway-prepareparam2" targetRef="prepareparam3">
                            <conditionExpression  language="http://www.jboss.org/drools/rule" ><![CDATA[
                                            $ibizorderdetailgetunitandpricedefault:IBIZOrderDetail();
                                            $ibizorderdetailgetunitandpriceorder:IBIZOrder();
                                            $ibizorderdetailgetunitandpriceproduct:IBIZUNIProduct();
                                            $ibizorderdetailgetunitandpricefilter:IBIZBOOK();
                                            $ibizorderdetailgetunitandpricelist:Map();
                                            $ibizorderdetailgetunitandpricepage:Map();
                                            $ibizorderdetailgetunitandpricesession:Map();
                                    eval($ibizorderdetailgetunitandpricedefault==ibizorderdetailgetunitandpricedefault && $ibizorderdetailgetunitandpriceorder==ibizorderdetailgetunitandpriceorder && $ibizorderdetailgetunitandpriceproduct==ibizorderdetailgetunitandpriceproduct && $ibizorderdetailgetunitandpricefilter==ibizorderdetailgetunitandpricefilter && );
                                eval((RuleUtils.test($ibizorderdetailgetunitandpricedefault.get("unitprice"),"GT","Amount")))
                                ]]>
                            </conditionExpression>
                    </sequenceFlow>
                    <sequenceFlow id="prepareparam2_delogic1" sourceRef="prepareparam2" targetRef="delogic1">
                    </sequenceFlow>
                    <sequenceFlow id="prepareparam2_deaction3" sourceRef="prepareparam2" targetRef="deaction3">
                    </sequenceFlow>
                            <exclusiveGateway id="gateway-deaction2" name="Gateway" gatewayDirection="Diverging" default="gateway-deaction2_end_line"></exclusiveGateway>
                            <sequenceFlow id="deaction2_gateway-deaction2_gatewayline" sourceRef="deaction2" targetRef="gateway-deaction2"></sequenceFlow>
                            <sequenceFlow id="gateway-deaction2_end_line" sourceRef="gateway-deaction2" targetRef="gateway-deaction2_end"/>
                            <endEvent id="gateway-deaction2_end" name="end"/>
                            <exclusiveGateway id="gateway-prepareparam2" name="Gateway" gatewayDirection="Diverging" default="gateway-prepareparam2_end_line"></exclusiveGateway>
                            <sequenceFlow id="prepareparam2_gateway-prepareparam2_gatewayline" sourceRef="prepareparam2" targetRef="gateway-prepareparam2"></sequenceFlow>
                            <sequenceFlow id="gateway-prepareparam2_end_line" sourceRef="gateway-prepareparam2" targetRef="gateway-prepareparam2_end"/>
                            <endEvent id="gateway-prepareparam2_end" name="end"/>
        </process>
    </definitions>