admin
2019-01-26 9e0b95dc01a1fc0751c257414d96907d945cdeb3
增加会员权限管理
23个文件已修改
1个文件已添加
1460 ■■■■ 已修改文件
fanli/src/main/java/com/yeshi/fanli/controller/AuthCallBackController.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/ConfigController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/GoodsController.java 45 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/RecommendController.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/ShareController.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/UserAccountController.java 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/UserAuthController.java 91 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/UserOrderController.java 102 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/dao/mybatis/user/UserExtraTaoBaoInfoMapper.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/entity/bus/user/UserExtraTaoBaoInfo.java 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/entity/taobao/TaoBaoGoodsBrief.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/job/IPUpdateJob.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/mapping/user/UserExtraTaoBaoInfoMapper.xml 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/config/ConfigServiceImpl.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/goods/ShareGoodsServiceImpl.java 39 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserAccountServiceImpl.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserExtraTaoBaoInfoServiceImpl.java 43 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/config/ConfigService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/goods/ShareGoodsService.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/user/UserExtraTaoBaoInfoService.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/Constant.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoUtil.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java 96 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/resource/uml/淘宝联盟授权流程.acd 748 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/AuthCallBackController.java
@@ -1,11 +1,12 @@
package com.yeshi.fanli.controller;
import java.io.PrintWriter;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.util.Date;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -38,9 +39,16 @@
    private TaoBaoUnionAuthRecordService taoBaoUnionAuthRecordService;
    @RequestMapping(value = "tb")
    public void tb(String code, String state, PrintWriter out) {
    public void tb(String code, String state, HttpServletResponse response) {
        if (StringUtil.isNullOrEmpty(code) || StringUtil.isNullOrEmpty(state))
        {
            try {
                response.sendRedirect("http://apph5.yeshitv.com/apppage/flq_bonusState.html?code=1");
            } catch (IOException e1) {
                e1.printStackTrace();
            }
            return;
        }
        String stateStr = AESUtil.decrypt(state, Constant.UIDAESKEY);
        int errCode = 0;
        if (StringUtil.isNullOrEmpty(stateStr)) {
@@ -50,12 +58,27 @@
        JSONObject json = JSONObject.fromObject(stateStr);
        Long time = json.optLong("t");
        Long uid = json.optLong("u");
        String source = json.optString("s");
        if (System.currentTimeMillis() - time > 1000 * 60 * 10L) {
            // è¿‡æ—¶
            errCode = 2;
        }
        if (uid == null || uid.longValue() == 0L)
            errCode = 3;
        if (uid == 911382L) {
            try {
                if ("share".equalsIgnoreCase(source))
                    response.sendRedirect("http://apph5.yeshitv.com/apppage/flq_bonusState.html?code=1");
                else
                    response.sendRedirect("http://apph5.yeshitv.com/apppage/flq_rebateState.html?code=1");
            } catch (IOException e) {
            }
            return;
        }
        // è®¡å…¥è®°å½•
@@ -68,14 +91,23 @@
            String openUid = data.optString("taobao_open_uid");
            String taoBaoUid = data.optString("taobao_user_id");
            String nickName = data.optString("taobao_user_nick");
            // èŽ·å–æ¸ é“ID与会员ID
            if ("share".equalsIgnoreCase(source)) {
                String relationId = TaoKeApiUtil.getRelationId(accessToken, Constant.TAOBAO_AUTH_APPKEY,
                        Constant.TAOBAO_AUTH_APPSECRET);// æ¸ é“ID
                userExtraTaoBaoInfoService.addRelationId(uid, relationId, taoBaoUid, true);
            } else {
                String specialId = TaoKeApiUtil.getSpecialId(accessToken, Constant.TAOBAO_AUTH_APPKEY,
                        Constant.TAOBAO_AUTH_APPSECRET);
                userExtraTaoBaoInfoService.addSpecialId(uid, specialId, taoBaoUid, true);
            }
            if (!StringUtil.isNullOrEmpty(nickName))
                try {
                    nickName = URLDecoder.decode(nickName, "UTF-8");
                } catch (UnsupportedEncodingException e) {
                    e.printStackTrace();
                }
            // userExtraTaoBaoInfoService.addRelationId(uid, relationId);
            TaoBaoUnionAuthRecord record = new TaoBaoUnionAuthRecord();
            record.setUser(new UserInfo(uid));
            record.setTaoBaoOpenUid(openUid);
@@ -87,7 +119,23 @@
            errCode = 4;
        }
        out.print("<html><body>绑定错误:错误码(" + errCode + ")</body></html>");
        try {
            if (errCode == 0)// æˆåŠŸ
            {
                if ("share".equalsIgnoreCase(source))
                    response.sendRedirect("http://apph5.yeshitv.com/apppage/flq_bonusState.html?code=0");
                else
                    response.sendRedirect("http://apph5.yeshitv.com/apppage/flq_rebateState.html?code=0");
            } else {// å¤±è´¥
                if ("share".equalsIgnoreCase(source))
                    response.sendRedirect("http://apph5.yeshitv.com/apppage/flq_bonusState.html?code=1");
                else
                    response.sendRedirect("http://apph5.yeshitv.com/apppage/flq_rebateState.html?code=1");
            }
        } catch (Exception e) {
        }
    }
}
fanli/src/main/java/com/yeshi/fanli/controller/client/ConfigController.java
@@ -57,6 +57,10 @@
        JSONObject data = new JSONObject();
        if (appHomeFloatImg != null)
            data.put("floatImg", appHomeFloatImg);
        String notifyImg = configService.getAppHomeFloatNotifyImg();
        if (!StringUtil.isNullOrEmpty(notifyImg)) {
            data.put("floatNotifyImg", notifyImg);
        }
        out.print(JsonUtil.loadTrueResult(data));
    }
fanli/src/main/java/com/yeshi/fanli/controller/client/GoodsController.java
@@ -7,20 +7,26 @@
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.yeshi.utils.JsonUtil;
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo;
import com.yeshi.fanli.entity.taobao.ClientTBPid;
import com.yeshi.fanli.entity.taobao.PidUser;
import com.yeshi.fanli.entity.taobao.TBPid;
import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
import com.yeshi.fanli.entity.taobao.TaoBaoLink;
import com.yeshi.fanli.entity.taobao.TaoBaoUnionConfig;
import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException;
import com.yeshi.fanli.service.inter.goods.ShareGoodsService;
import com.yeshi.fanli.service.inter.monitor.MonitorService;
import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService;
import com.yeshi.fanli.service.inter.user.TBPidService;
import com.yeshi.fanli.service.inter.user.UserExtraTaoBaoInfoService;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.factory.MonitorFactory;
import org.yeshi.utils.JsonUtil;
import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
import net.sf.json.JSONObject;
@@ -39,6 +45,9 @@
    @Resource
    private MonitorService monitorService;
    @Resource
    private UserExtraTaoBaoInfoService userExtraTaoBaoInfoService;
    /**
     * èŽ·å–æ·˜å®çš„åˆ†äº«é“¾æŽ¥
@@ -63,19 +72,46 @@
        }
        JSONObject data = new JSONObject();
        data.put("native", true);
        boolean isNative = false;
        String pid = null;
        // æŸ¥è¯¢ç”¨æˆ·ID是否绑定了会员运营ID
        UserExtraTaoBaoInfo userInfo = userExtraTaoBaoInfoService.getByUid(uid);
        if (userInfo != null && !StringUtil.isNullOrEmpty(userInfo.getSpecialId()) && userInfo.getSpecialValid() != null
                && userInfo.getSpecialValid() == true) {
            // å·²ç»ç»‘定
            try {
                TaoBaoGoodsBrief goods = TaoKeApiUtil.getSimpleGoodsInfo(auctionId);
                if (goods.getMaterialLibType() != null && goods.getMaterialLibType() == 1) {
                    isNative = true;
                } else
                    isNative = false;
            } catch (TaobaoGoodsDownException e) {
                out.print(JsonUtil.loadFalseResult(3, "商品已下架"));
                return;
            }
            pid = Constant.TAOBAO_SPECIAL_PID_DEFAULT;
        } else {// å°šæœªç»‘定
            isNative = true;
        }
        data.put("native", isNative);
        try {
            int pidType = PidUser.TYPE_FANLI_ANDROID;
            if (acceptData.getPlatform().equalsIgnoreCase("ios"))
                pidType = PidUser.TYPE_FANLI_IOS;
            TaoBaoLink taoBaoLink = shareGoodsService.getTaoBaoLinkForBuy(uid, auctionId, pidType);
            JSONObject link = new JSONObject();
            link.put("clickUrl", taoBaoLink.getClickUrl());
            link.put("couponUrl", taoBaoLink.getCouponLink());
            data.put("type", 1);
            data.put("link", link);
            // TODO æ·»åŠ jumpType(h5,native,auto)
            out.print(JsonUtil.loadTrueResult(data));
        } catch (Exception e) {
@@ -99,7 +135,6 @@
                ClientTBPid clientTBPid = new ClientTBPid(config.getAppKey(), tbPid.getPid(), siteId, adzoneId);
                data.put("type", 2);
                data.put("tbPidInfo", clientTBPid);
                // TODO æ·»åŠ jumpType(h5,native,auto)
                out.print(JsonUtil.loadTrueResult(data));
            } else {
                out.print(JsonUtil.loadFalseResult(1, "请求失败"));
fanli/src/main/java/com/yeshi/fanli/controller/client/RecommendController.java
@@ -2042,6 +2042,13 @@
        data.put("couponUsers", listCouponUser);
        data.put("detailWebUrl", "http://apph5.yeshitv.com/apppage/goods_img.html?id=" + id);
        JSONObject shareActivity = new JSONObject();
        shareActivity.put("moneyDesc", "春节狂欢奖金:Â¥" + TaoBaoUtil.getGoodsHongBaoMoney(tb,
                new BigDecimal(configService.get("share_activity_proportion")).divide(new BigDecimal(100))));
        shareActivity.put("ruleDescPicture", "http://img.flqapp.com/resource/share_activity_img.png");
        data.put("shareActivity", shareActivity);
        out.print(JsonUtil.loadTrueResult(data));
        final String tempUid = uid;
fanli/src/main/java/com/yeshi/fanli/controller/client/ShareController.java
@@ -21,6 +21,7 @@
import com.yeshi.fanli.entity.bus.share.UserShareGoodsGroup;
import com.yeshi.fanli.entity.bus.share.UserShareGoodsHistory;
import com.yeshi.fanli.entity.bus.share.UserShareGoodsRecord;
import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.entity.taobao.TaoBaoLink;
import com.yeshi.fanli.exception.ShareGoodsException;
@@ -30,6 +31,7 @@
import com.yeshi.fanli.service.inter.goods.ShareGoodsService;
import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService;
import com.yeshi.fanli.service.inter.monitor.MonitorService;
import com.yeshi.fanli.service.inter.user.UserExtraTaoBaoInfoService;
import com.yeshi.fanli.service.inter.user.UserShareGoodsGroupService;
import com.yeshi.fanli.service.inter.user.UserShareGoodsRecordService;
import com.yeshi.fanli.util.AESUtil;
@@ -66,6 +68,9 @@
    @Resource
    private CommonGoodsService commonGoodsService;
    @Resource
    private UserExtraTaoBaoInfoService userExtraTaoBaoInfoService;
    // èŽ·å–å•†å“åˆ†äº«é“¾æŽ¥
    @RequestMapping(value = "getGoodsShareUrl")
    public void getGoodsShareUrl(AcceptData acceptData, long id, PrintWriter out) {
@@ -95,8 +100,13 @@
            return;
        }
        UserExtraTaoBaoInfo extraInfo = userExtraTaoBaoInfoService.getByUid(uid);
        try {
            TaoBaoLink taoBaoLink = shareGoodsService.getTaoBaoLinkForShare(uid, auctionId);
            String relationId = null;
            if (extraInfo.getRelationId() != null && extraInfo.getRelationValid() != null
                    && extraInfo.getRelationValid() == true)
                relationId = extraInfo.getRelationId();
            TaoBaoLink taoBaoLink = shareGoodsService.getTaoBaoLinkForShare(uid, auctionId, relationId);
            JSONObject data = new JSONObject();
            String url = String.format("http://%s%s?uid=%s&id=%s&appType=flq", configService.getH5Host(),
fanli/src/main/java/com/yeshi/fanli/controller/client/UserAccountController.java
@@ -151,12 +151,13 @@
     * @param tbOpenid
     * @param tbNickName
     * @param tbPortrait
     * @param tbSession(淘宝session数据,加密)
     * @param out
     */
    @RequestMapping(value = "login")
    public void login(AcceptData acceptData, String code, String vcode, String phone, boolean wxinstall,
            String tbOpenid, String tbNickName, String tbPortrait, int loginType, Boolean first, HttpSession session,
            HttpServletRequest request, PrintWriter out) {
            String tbOpenid, String tbNickName, String tbPortrait, String tbSession, int loginType, Boolean first,
            HttpSession session, HttpServletRequest request, PrintWriter out) {
        System system = systemService.getSystemCache(acceptData.getPlatform(), acceptData.getPackages());
        if (system == null) {
            out.print(JsonUtil.loadFalseResult("系统不存在"));
@@ -453,18 +454,27 @@
     * @param tbOpenid
     * @param tbNickName
     * @param tbPortrait
     * @param tbSession
     *            -淘宝授权session
     * @param out
     */
    @RequestMapping(value = "bindTaoBao")
    public void bindTaoBao(AcceptData acceptData, Long uid, String tbOpenid, String tbNickName, String tbPortrait,
            PrintWriter out) {
            String tbSession, PrintWriter out) {
        System system = systemService.getSystemCache(acceptData.getPlatform(), acceptData.getPackages());
        if (system == null) {
            out.print(JsonUtil.loadFalseResult("系统不存在"));
            return;
        }
        if (!StringUtil.isNullOrEmpty(tbSession)) {
            JSONObject session = JSONObject.fromObject(tbSession);
            tbOpenid = session.optString("openId");
            tbNickName = session.optString("nick");
            tbPortrait = session.optString("avatarUrl");
        }
        try {
            userAccountService.bindTaoBao(uid, tbOpenid, tbNickName, tbPortrait);
            UserInfo user = userInfoService.getUserByIdWithMybatis(uid);
fanli/src/main/java/com/yeshi/fanli/controller/client/UserAuthController.java
New file
@@ -0,0 +1,91 @@
package com.yeshi.fanli.controller.client;
import java.io.PrintWriter;
import javax.annotation.Resource;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.yeshi.utils.JsonUtil;
import org.yeshi.utils.encrypt.DESUtil;
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo;
import com.yeshi.fanli.service.inter.user.UserExtraTaoBaoInfoService;
import com.yeshi.fanli.util.AESUtil;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.taobao.TaoBaoUtil;
import net.sf.json.JSONObject;
@Controller
@RequestMapping("api/v1/userauth")
public class UserAuthController {
    @Resource
    private UserExtraTaoBaoInfoService userExtraTaoBaoInfoService;
    /**
     * èŽ·å–æ·˜å®æŽˆæƒä¿¡æ¯
     *
     * @param acceptData
     * @param uid
     * @param source
     * @param out
     */
    @RequestMapping(value = "getTaoBaoAuthInfo", method = RequestMethod.POST)
    public void getUserConfig(AcceptData acceptData, Long uid, String source, Boolean first, PrintWriter out) {
        if (uid == null) {
            out.print(JsonUtil.loadFalseResult(2, "用户未登录"));
            return;
        }
        if (StringUtil.isNullOrEmpty(source)) {
            out.print(JsonUtil.loadFalseResult(3, "来源错误"));
            return;
        }
        if (first == null) {
            out.print(JsonUtil.loadFalseResult(4, "请传first"));
            return;
        }
        //
        UserExtraTaoBaoInfo user = userExtraTaoBaoInfoService.getByUid(uid);
        if ("share".equalsIgnoreCase(source)) {
            if (user != null && !StringUtil.isNullOrEmpty(user.getRelationId()) && user.getRelationValid()) {
                out.print(JsonUtil.loadFalseResult(1, "无需授权"));
                return;
            }
        } else {
            if (user != null && !StringUtil.isNullOrEmpty(user.getSpecialId()) && user.getSpecialValid()) {
                out.print(JsonUtil.loadFalseResult(1, "无需授权"));
                return;
            }
        }
        String link = TaoBaoUtil.getTaoBaoUnionAuthUrl(Constant.TAOBAO_AUTH_APPKEY,
                "http://192.168.1.122:8080/fanli/client/v1/auth/callback/tb", uid, source);
        String orderJS = "var orderId= document.getElementById('tp-bought-root').getElementsByClassName('js-order-container')[0].getElementsByTagName('div')[0].getAttribute('data-id');";
        orderJS += "if(/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) {window.location.href='yestv://taobaoorder#'+orderId;} else {window.handle.showOrder(orderId)}";
        JSONObject data = new JSONObject();
        data.put("authLink", link);
        try {
            data.put("orderJS", DESUtil.encode(orderJS, StringUtil.getBase64String("YeShiFANLI889*+"),
                    StringUtil.getBase64String("*M#34f?,")));
        } catch (Exception e) {
            e.printStackTrace();
        }
        data.put("orderUrl", "https://buyertrade.taobao.com/trade/itemlist/list_bought_items.htm");
        if (first)
            out.print(JsonUtil.loadTrueResult(data));
        else
            out.print(JsonUtil.loadTrue(0, data, "绑定淘宝失败"));
    }
}
fanli/src/main/java/com/yeshi/fanli/controller/client/UserOrderController.java
@@ -14,17 +14,21 @@
import org.springframework.web.bind.annotation.RequestMethod;
import org.yeshi.utils.DateUtil;
import org.yeshi.utils.JsonUtil;
import org.yeshi.utils.encrypt.DESUtil;
import com.yeshi.fanli.entity.AppVersionInfo;
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.exception.order.CommonOrderException;
import com.yeshi.fanli.service.inter.config.AppVersionService;
import com.yeshi.fanli.service.inter.config.ConfigService;
import com.yeshi.fanli.service.inter.count.HongBaoV2CountService;
import com.yeshi.fanli.service.inter.order.CommonOrderService;
import com.yeshi.fanli.service.inter.user.UserExtraTaoBaoInfoService;
import com.yeshi.fanli.service.inter.user.UserInfoExtraService;
import com.yeshi.fanli.service.inter.user.UserInfoService;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.account.UserUtil;
import com.yeshi.fanli.vo.order.CommonOrderVO;
import com.yeshi.fanli.vo.user.UserInfoExtraVO;
@@ -53,26 +57,38 @@
    @Resource
    private HongBaoV2CountService hongBaoV2CountService;
    @Resource
    private UserExtraTaoBaoInfoService userExtraTaoBaoInfoService;
    /**
     * è®¢å•列表
     *
     * @param acceptData
     * @param page
     * @param uid
     * @param state  çŠ¶æ€ï¼š1-未到账 2-已到账 3-已失效
     * @param type   ç±»åž‹ï¼š1-返利订单 2-分享订单 3-邀请订单
     * @param orderState   1有效订单 2 ç»´æƒè®¢å•  3失效订单
     * @param orderNo è®¢å•号
     * @param startTime  èµ·å§‹æ—¶é—´
     * @param endTime   ç»“束时间
     * @param slotTime æ—¶é—´æ®µï¼š1-最近三天 2-最近七天 3最近半月 4本月 5近三月  6近半年
     * @param dateType   1-今日 2-昨天 3-本月 4-上个月  |
     * @param state
     *            çŠ¶æ€ï¼š1-未到账 2-已到账 3-已失效
     * @param type
     *            ç±»åž‹ï¼š1-返利订单 2-分享订单 3-邀请订单
     * @param orderState
     *            1有效订单 2 ç»´æƒè®¢å• 3失效订单
     * @param orderNo
     *            è®¢å•号
     * @param startTime
     *            èµ·å§‹æ—¶é—´
     * @param endTime
     *            ç»“束时间
     * @param slotTime
     *            æ—¶é—´æ®µï¼š1-最近三天 2-最近七天 3最近半月 4本月 5近三月 6近半年
     * @param dateType
     *            1-今日 2-昨天 3-本月 4-上个月 |
     * @param needCount
     * @param out
     */
    @RequestMapping(value = "getorder", method = RequestMethod.POST)
    public void getOrder(AcceptData acceptData, Integer page, Long uid, Integer state, Integer type,
            Integer orderState,String orderNo, String startTime, String endTime, Integer slotTime,
            boolean needCount, Integer dateType, PrintWriter out) {
    public void getOrder(AcceptData acceptData, Integer page, Long uid, Integer state, Integer type, Integer orderState,
            String orderNo, String startTime, String endTime, Integer slotTime, boolean needCount, Integer dateType,
            PrintWriter out) {
        
        if (uid == null) {
            out.print(JsonUtil.loadFalseResult(1, "用户未登录"));
@@ -113,15 +129,14 @@
            long todayTotal = 0;
            BigDecimal todayMoney = null;
            
            // æŸ¥è¯¢åˆ—表
            List<CommonOrderVO> list = commonOrderService.getOrderByUid(page, uid, state, type, orderState,
                    orderNo, startTime, endTime, dateType);
            List<CommonOrderVO> list = commonOrderService.getOrderByUid(page, uid, state, type, orderState, orderNo,
                    startTime, endTime, dateType);
            
            if (list != null && list.size() > 0) {
                // ç»Ÿè®¡æ€»æ•°
                count = commonOrderService.countGroupOrderNoByUid(uid,  state, type, orderState, orderNo,
                        startTime, endTime, dateType);
                count = commonOrderService.countGroupOrderNoByUid(uid, state, type, orderState, orderNo, startTime,
                        endTime, dateType);
            }
            
            // éœ€è¦ç»Ÿè®¡ç­›é€‰ä¿¡æ¯ ï¼šæœªå¤±æ•ˆçš„æ€»é‡‘额 ä»¥åŠè®¢å•
@@ -131,10 +146,9 @@
                
                todayTotal =  commonOrderService.countBonusOrderNumber(uid, type, dateType, startTime, endTime);
                
                // ç»Ÿè®¡æœ‰æ•ˆçš„订单数量 ã€ å¤±æ•ˆè®¢å•数量 ã€ç»´æƒè®¢å•数量
                Map<String, BigDecimal> countOrder = commonOrderService.countByUidAndOrderState(uid, type,
                        startTime, endTime, dateType);
                Map<String, BigDecimal> countOrder = commonOrderService.countByUidAndOrderState(uid, type, startTime,
                        endTime, dateType);
                
                if (countOrder.get("totalValid") != null) {
                    totalValid = countOrder.get("totalValid").intValue();
@@ -152,7 +166,6 @@
            if (todayMoney == null) {
                todayMoney = new BigDecimal(0.00);
            }
            
            String helpUrl = configService.get("order_list_help");
            
@@ -188,8 +201,10 @@
    /**
     * ç”¨æˆ·è®¢å•统计
     *
     * @param acceptData
     * @param uid ç”¨æˆ·id
     * @param uid
     *            ç”¨æˆ·id
     * @param out
     */
    @RequestMapping(value = "countorder", method = RequestMethod.POST)
@@ -219,7 +234,8 @@
                if (versionInfo != null) {
                    int versionCode150 = versionInfo.getVersionCode();
                    if (versionCode >= versionCode150) {
                        UserInfoExtraVO userInfoExtra = userInfoExtraService.getInfoExtraVOByUid(user.getId());                        if (userInfoExtra != null && userInfoExtra.getUserRank() != null) {
                        UserInfoExtraVO userInfoExtra = userInfoExtraService.getInfoExtraVOByUid(user.getId());
                        if (userInfoExtra != null && userInfoExtra.getUserRank() != null) {
                            String picture = userInfoExtra.getUserRank().getPicture();
                            String icon = userInfoExtra.getUserRank().getIcon();
                            
@@ -230,7 +246,6 @@
                }
            }
            
            JSONObject data = new JSONObject();
            data.put("userInfo", userInfo);
@@ -322,6 +337,7 @@
    
    /**
     * ç»Ÿè®¡å¥–金
     *
     * @param acceptData
     * @param uid
     * @param out
@@ -341,7 +357,8 @@
            Object inviteCount = 0;
            BigDecimal inviteMoney = new BigDecimal(0.00);
            
            Map<String, Object> shareMap = commonOrderService.countBonusOrderMoneyAndNumber(uid, 2 , dateType, null, null);
            Map<String, Object> shareMap = commonOrderService.countBonusOrderMoneyAndNumber(uid, 2, dateType, null,
                    null);
            if (shareMap != null) {
                Object totalNum = shareMap.get("totalNum");
                if (totalNum != null) {
@@ -355,7 +372,8 @@
            }
            
            // é‚€è¯·ç»Ÿè®¡
            Map<String, Object> inviteMap = commonOrderService.countBonusOrderMoneyAndNumber(uid, 3 , dateType, null, null);
            Map<String, Object> inviteMap = commonOrderService.countBonusOrderMoneyAndNumber(uid, 3, dateType, null,
                    null);
            if (inviteMap != null) {
                Object totalNum = inviteMap.get("totalNum");
                if (totalNum != null) {
@@ -367,7 +385,6 @@
                    inviteMoney = (BigDecimal) totalmoney;
                }
            }
            
            JSONObject data = new JSONObject();
            data.put("shareCount", shareCount);
@@ -384,9 +401,42 @@
        }
    }
    
    /**
     * ä¸Šä¼ è§£æžåˆ°çš„æ·˜å®è®¢å•
     *
     * @param acceptData
     * @param uid
     * @param orderData
     * @param source
     * @param out
     */
    @RequestMapping(value = "uploadParsedOrder", method = RequestMethod.POST)
    public void uploadParsedOrder(AcceptData acceptData, Long uid, String orderData, String source, PrintWriter out) {
        if (uid == null || StringUtil.isNullOrEmpty(orderData)) {
            out.print(JsonUtil.loadFalseResult(1, "数据错误"));
            return;
        }
        String orderId = null;
        try {
            orderId = DESUtil.decode(orderData, StringUtil.getBase64String("YeShiFANLI889*+"),
                    StringUtil.getBase64String("*M#34f?,"));
        } catch (Exception e) {
            e.printStackTrace();
        }
        if (!StringUtil.isNullOrEmpty(orderId) && orderId.length() > 6) {
            orderId = orderId.substring(orderId.length() - 6, orderId.length());
            UserExtraTaoBaoInfo info = userExtraTaoBaoInfoService.getByUid(uid);
            if (info != null && !StringUtil.isNullOrEmpty(info.getTaoBaoUid())) {
                userExtraTaoBaoInfoService.bindTaoBaoOrderEnd6Num(info.getTaoBaoUid(), orderId);
            }
        }
        out.print(JsonUtil.loadTrueResult(""));
    }
    
    /**
     * æ—¶é—´è½¬æ¢
     *
     * @param slotTime
     * @param startTime
     * @return
fanli/src/main/java/com/yeshi/fanli/dao/mybatis/user/UserExtraTaoBaoInfoMapper.java
@@ -12,5 +12,19 @@
     * @return
     */
    UserExtraTaoBaoInfo selectByUid(Long uid);
    /**
     * æ ¹æ®æ·˜å®UID查询
     * @param taoBaoUid
     * @return
     */
    UserExtraTaoBaoInfo selectByTaoBaoUid(String taoBaoUid);
    /**
     * æ¸…除用户ID
     * @param uid
     * @return
     */
    int clearUid(Long uid);
}
fanli/src/main/java/com/yeshi/fanli/entity/bus/user/UserExtraTaoBaoInfo.java
@@ -13,12 +13,20 @@
    private UserInfo user;
    @Column(name = "uiet_relation_id")
    private String relationId;
    @Column(name = "uiet_relation_valid")
    private Boolean relationValid;// æ˜¯å¦æœ‰æ•ˆ
    @Column(name = "uiet_relation_update_time")
    private Date relationUpdateTime;
    @Column(name = "uiet_special_id")
    private String specialId;
    @Column(name = "uiet_special_valid")
    private Boolean specialValid;// æ˜¯å¦æœ‰æ•ˆ
    @Column(name = "uiet_special_update_time")
    private Date specialUpdateTime;
    @Column(name = "uiet_taobao_uid")
    private String taoBaoUid;// æ·˜å®çš„用户ID
    @Column(name = "uiet_taobao_order_end_6_num")
    private String taoBaoOrderEnd6Num;// è®¢å•结尾的6个数字
    @Column(name = "uiet_create_time")
    private Date createTime;
    @Column(name = "uiet_update_time")
@@ -56,6 +64,14 @@
        this.relationUpdateTime = relationUpdateTime;
    }
    public String getTaoBaoOrderEnd6Num() {
        return taoBaoOrderEnd6Num;
    }
    public void setTaoBaoOrderEnd6Num(String taoBaoOrderEnd6Num) {
        this.taoBaoOrderEnd6Num = taoBaoOrderEnd6Num;
    }
    public String getSpecialId() {
        return specialId;
    }
@@ -64,6 +80,30 @@
        this.specialId = specialId;
    }
    public Boolean getRelationValid() {
        return relationValid;
    }
    public void setRelationValid(Boolean relationValid) {
        this.relationValid = relationValid;
    }
    public Boolean getSpecialValid() {
        return specialValid;
    }
    public void setSpecialValid(Boolean specialValid) {
        this.specialValid = specialValid;
    }
    public String getTaoBaoUid() {
        return taoBaoUid;
    }
    public void setTaoBaoUid(String taoBaoUid) {
        this.taoBaoUid = taoBaoUid;
    }
    public Date getSpecialUpdateTime() {
        return specialUpdateTime;
    }
fanli/src/main/java/com/yeshi/fanli/entity/taobao/TaoBaoGoodsBrief.java
@@ -268,10 +268,20 @@
    @Column
    private Integer state;// 0-正常 1-商品下架
    
    private Integer materialLibType;//物料库类型
    
    /* æ–°å¢žå­—段 2018-7-16 ï¼› ç”±äºŽæ•°æ®æœªä»Žæ·˜å®èŽ·å–æˆåŠŸï¼Œæš‚ä¸å¯ç”¨ */
    
    public Integer getMaterialLibType() {
        return materialLibType;
    }
    public void setMaterialLibType(Integer materialLibType) {
        this.materialLibType = materialLibType;
    }
    // @org.yeshi.utils.mybatis.Column(name = "catLeafName")
    @Transient
    private String leafName; // å­ç±»ç›®åç§°
fanli/src/main/java/com/yeshi/fanli/job/IPUpdateJob.java
@@ -12,7 +12,6 @@
import org.jsoup.nodes.Document;
import org.jsoup.select.Elements;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import org.yeshi.utils.entity.ProxyIP;
import com.yeshi.fanli.entity.common.Config;
@@ -20,7 +19,7 @@
import com.yeshi.fanli.service.inter.config.ConfigService;
import com.yeshi.fanli.util.taobao.TaoBaoUtil;
@Component
//@Component
public class IPUpdateJob {
    @Resource
fanli/src/main/java/com/yeshi/fanli/mapping/user/UserExtraTaoBaoInfoMapper.xml
@@ -16,13 +16,22 @@
            jdbcType="TIMESTAMP" />
        <result column="uiet_update_time" property="updateTime"
            jdbcType="TIMESTAMP" />
        <result column="uiet_relation_valid" property="relationValid"
            jdbcType="BOOLEAN" />
        <result column="uiet_special_valid" property="specialValid"
            jdbcType="BOOLEAN" />
        <result column="uiet_taobao_uid" property="taoBaoUid" jdbcType="VARCHAR" />
        <result column="uiet_taobao_order_end_6_num" property="taoBaoOrderEnd6Num"
            jdbcType="VARCHAR" />
        <association property="user" column="uiet_uid"
            javaType="com.yeshi.fanli.entity.bus.user.UserInfo">
            <id column="uiet_uid" property="id" />
        </association>
    </resultMap>
    <sql id="Base_Column_List">uiet_id,uiet_uid,uiet_relation_id,uiet_relation_update_time,uiet_special_id,uiet_special_update_time,uiet_create_time,uiet_update_time
    <sql id="Base_Column_List">uiet_id,uiet_uid,uiet_relation_id,uiet_relation_update_time,uiet_special_id,uiet_special_update_time,uiet_create_time,uiet_update_time,uiet_relation_valid,uiet_special_valid,uiet_taobao_uid,uiet_taobao_order_end_6_num
    </sql>
    <select id="selectByPrimaryKey" resultMap="BaseResultMap"
        parameterType="java.lang.Long">
@@ -31,15 +40,34 @@
        from yeshi_ec_user_info_extra_taobao where uiet_id =
        #{id,jdbcType=BIGINT}
    </select>
    <select id="selectByUid" resultMap="BaseResultMap"
        parameterType="java.lang.Long">
        select
        <include refid="Base_Column_List" />
        from yeshi_ec_user_info_extra_taobao where uiet_uid =
        #{0} limit 1
    </select>
    <select id="selectByTaoBaoUid" resultMap="BaseResultMap"
        parameterType="java.lang.String">
        select
        <include refid="Base_Column_List" />
        from yeshi_ec_user_info_extra_taobao where uiet_taobao_uid =
        #{0} limit 1
    </select>
    <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">delete from
        yeshi_ec_user_info_extra_taobao where uiet_id = #{id,jdbcType=BIGINT}
    </delete>
    <insert id="insert" parameterType="com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo"
        useGeneratedKeys="true" keyProperty="id">insert into
        yeshi_ec_user_info_extra_taobao
        (uiet_id,uiet_uid,uiet_relation_id,uiet_relation_update_time,uiet_special_id,uiet_special_update_time,uiet_create_time,uiet_update_time)
        (uiet_id,uiet_uid,uiet_relation_id,uiet_relation_update_time,uiet_special_id,uiet_special_update_time,uiet_create_time,uiet_update_time,uiet_relation_valid,uiet_special_valid,uiet_taobao_uid,uiet_taobao_order_end_6_num)
        values
        (#{id,jdbcType=BIGINT},#{user.id,jdbcType=BIGINT},#{relationId,jdbcType=VARCHAR},#{relationUpdateTime,jdbcType=TIMESTAMP},#{specialId,jdbcType=VARCHAR},#{specialUpdateTime,jdbcType=TIMESTAMP},#{createTime,jdbcType=TIMESTAMP},#{updateTime,jdbcType=TIMESTAMP})
        (#{id,jdbcType=BIGINT},#{user.id,jdbcType=BIGINT},#{relationId,jdbcType=VARCHAR},#{relationUpdateTime,jdbcType=TIMESTAMP},#{specialId,jdbcType=VARCHAR},#{specialUpdateTime,jdbcType=TIMESTAMP},#{createTime,jdbcType=TIMESTAMP},#{updateTime,jdbcType=TIMESTAMP},#{relationValid,jdbcType=BOOLEAN},#{specialValid,jdbcType=BOOLEAN},#{taoBaoUid,jdbcType=VARCHAR},#{taoBaoOrderEnd6Num,jdbcType=VARCHAR})
    </insert>
    <insert id="insertSelective" parameterType="com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo"
        useGeneratedKeys="true" keyProperty="id">
@@ -53,6 +81,10 @@
            <if test="specialUpdateTime != null">uiet_special_update_time,</if>
            <if test="createTime != null">uiet_create_time,</if>
            <if test="updateTime != null">uiet_update_time,</if>
            <if test="relationValid != null">uiet_relation_valid,</if>
            <if test="specialValid != null">uiet_special_valid,</if>
            <if test="taoBaoUid != null">uiet_taobao_uid,</if>
            <if test="taoBaoOrderEnd6Num != null">uiet_taobao_order_end_6_num,</if>
        </trim>
        values
        <trim prefix="(" suffix=")" suffixOverrides=",">
@@ -64,8 +96,15 @@
            <if test="specialUpdateTime != null">#{specialUpdateTime,jdbcType=TIMESTAMP},</if>
            <if test="createTime != null">#{createTime,jdbcType=TIMESTAMP},</if>
            <if test="updateTime != null">#{updateTime,jdbcType=TIMESTAMP},</if>
            <if test="relationValid != null">#{relationValid,jdbcType=BOOLEAN},</if>
            <if test="specialValid != null">#{specialValid,jdbcType=BOOLEAN},</if>
            <if test="taoBaoUid != null">#{taoBaoUid,jdbcType=VARCHAR},</if>
            <if test="taoBaoOrderEnd6Num != null">#{taoBaoOrderEnd6Num,jdbcType=VARCHAR},</if>
        </trim>
    </insert>
    <update id="updateByPrimaryKey" parameterType="com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo">update
        yeshi_ec_user_info_extra_taobao set uiet_uid =
        #{user.id,jdbcType=BIGINT},uiet_relation_id =
@@ -74,7 +113,13 @@
        #{specialId,jdbcType=VARCHAR},uiet_special_update_time =
        #{specialUpdateTime,jdbcType=TIMESTAMP},uiet_create_time =
        #{createTime,jdbcType=TIMESTAMP},uiet_update_time =
        #{updateTime,jdbcType=TIMESTAMP} where uiet_id = #{id,jdbcType=BIGINT}
        #{updateTime,jdbcType=TIMESTAMP} ,uiet_relation_valid
        =#{relationValid,jdbcType=BOOLEAN} ,uiet_special_valid
        =#{specialValid,jdbcType=BOOLEAN} ,uiet_taobao_uid
        =#{taoBaoUid,jdbcType=VARCHAR},uiet_taobao_order_end_6_num
        =#{taoBaoOrderEnd6Num,jdbcType=VARCHAR}
        where uiet_id =
        #{id,jdbcType=BIGINT}
    </update>
    <update id="updateByPrimaryKeySelective" parameterType="com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo">
        update yeshi_ec_user_info_extra_taobao
@@ -88,7 +133,19 @@
            </if>
            <if test="createTime != null">uiet_create_time=#{createTime,jdbcType=TIMESTAMP},</if>
            <if test="updateTime != null">uiet_update_time=#{updateTime,jdbcType=TIMESTAMP},</if>
            <if test="id !=null">uiet_id =#{id,jdbcType=BIGINT},</if>
            <if test="relationValid !=null">uiet_relation_valid =#{relationValid,jdbcType=BOOLEAN},
            </if>
            <if test="specialValid !=null">uiet_special_valid =#{specialValid,jdbcType=BOOLEAN},
            </if>
            <if test="taoBaoUid !=null">uiet_taobao_uid =#{taoBaoUid,jdbcType=VARCHAR},</if>
            <if test="taoBaoOrderEnd6Num !=null">uiet_taobao_order_end_6_num=#{taoBaoOrderEnd6Num,jdbcType=VARCHAR},
            </if>
        </set>
        where uiet_id = #{id,jdbcType=BIGINT}
    </update>
    <update id="clearUid" parameterType="java.lang.Long">
        update
        yeshi_ec_user_info_extra_taobao set uiet_uid=null where uiet_uid=#{0}
    </update>
</mapper>
fanli/src/main/java/com/yeshi/fanli/service/impl/config/ConfigServiceImpl.java
@@ -205,4 +205,10 @@
        return null;
    }
    @Override
    public String getAppHomeFloatNotifyImg() {
        return get("home_float_notify_img");
    }
}
fanli/src/main/java/com/yeshi/fanli/service/impl/goods/ShareGoodsServiceImpl.java
@@ -32,7 +32,6 @@
import com.yeshi.fanli.entity.taobao.TaoBaoUnionConfig;
import com.yeshi.fanli.entity.taobao.TaoKeAppInfo;
import com.yeshi.fanli.exception.ShareGoodsException;
import com.yeshi.fanli.exception.goods.CommonGoodsException;
import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException;
import com.yeshi.fanli.log.LogHelper;
import com.yeshi.fanli.service.inter.config.ConfigService;
@@ -49,8 +48,6 @@
import com.yeshi.fanli.util.ImageUtil;
import com.yeshi.fanli.util.RedisManager;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.ThreadUtil;
import com.yeshi.fanli.util.factory.CommonGoodsFactory;
import com.yeshi.fanli.util.taobao.TaoBaoUtil;
import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
@@ -354,7 +351,7 @@
    }
    @Override
    public TaoBaoLink getTaoBaoLinkForShare(Long uid, Long auctionId) throws ShareGoodsException {
    public TaoBaoLink getTaoBaoLinkForShare(Long uid, Long auctionId, String relationId) throws ShareGoodsException {
        if (uid == null || uid <= 0) {
            throw new ShareGoodsException(1, "用户ID不能为空");
@@ -364,19 +361,30 @@
            throw new ShareGoodsException(2, "商品ID不能为空");
        }
        TaoKeAppInfo info = new TaoKeAppInfo();
        if (!StringUtil.isNullOrEmpty(relationId)) {
            String pid = Constant.TAOBAO_RELATION_PID_DEFAULT;
            String appId = pid.split("_")[2];
            String adzoneId = pid.split("_")[3];
            TaoBaoUnionConfig taoBaoUnionConfig = taoBaoUnionConfigService.getConfigByAppIdCache(appId);
            info.setAdzoneId(adzoneId);
            info.setAppKey(taoBaoUnionConfig.getAppKey());
            info.setAppSecret(taoBaoUnionConfig.getAppSecret());
            info.setPid(pid);
        } else {
        TBPid tbPid = tbPidService.getTBPid(uid, PidUser.TYPE_SHARE_GOODS);
        if (tbPid == null) {
            throw new ShareGoodsException(3, "获取推广位失败");
        }
        String appId = tbPid.getPid().split("_")[2];
        String adzoneId = tbPid.getPid().split("_")[3];
        TaoBaoUnionConfig taoBaoUnionConfig = taoBaoUnionConfigService.getConfigByAppIdCache(appId);
        TaoKeAppInfo info = new TaoKeAppInfo();
            String adzoneId = tbPid.getPid().split("_")[3];
        info.setAdzoneId(adzoneId);
        info.setAppKey(taoBaoUnionConfig.getAppKey());
        info.setAppSecret(taoBaoUnionConfig.getAppSecret());
        info.setPid(tbPid.getPid());
        }
        TaoBaoGoodsBrief goods = null;
        try {
            goods = TaoKeApiUtil.searchGoodsDetail(auctionId, info);
@@ -389,12 +397,21 @@
        }
        if (StringUtil.isNullOrEmpty(goods.getCouponLink()) && !goods.getAuctionUrl().contains("s.click.taobao.com")) {
            TaoBaoLink taoBaoLink = TaoBaoUtil.getTbLinkForShare(auctionId, tbPid.getPid(), taoBaoUnionConfig);
            TaoBaoUnionConfig taoBaoUnionConfig = taoBaoUnionConfigService
                    .getConfigByAppIdCache(info.getPid().split("_")[2]);
            TaoBaoLink taoBaoLink = TaoBaoUtil.getTbLinkForShare(auctionId, info.getPid(), taoBaoUnionConfig);
            if (taoBaoLink == null) {
                throw new ShareGoodsException(201, "商品转链失败");
            }
            goods.setCouponLink(taoBaoLink.getCouponLink());
            goods.setAuctionUrl(taoBaoLink.getClickUrl());
        }
        if (!StringUtil.isNullOrEmpty(relationId)) {
            if (!StringUtil.isNullOrEmpty(goods.getAuctionUrl()))
                goods.setAuctionUrl(goods.getAuctionUrl() + "&relationId=" + relationId);
            if (!StringUtil.isNullOrEmpty(goods.getCouponLink()))
                goods.setCouponLink(goods.getCouponLink() + "&relationId=" + relationId);
        }
        // ä¿å­˜å•†å“è¯¦æƒ…
@@ -478,4 +495,10 @@
        return tbLink;
    }
    @Override
    public TaoBaoLink getTaoBaoLinkForBuyWithSpecial(Long uid, String specialId, Long auctionId)
            throws ShareGoodsException {
        return null;
    }
}
fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserAccountServiceImpl.java
@@ -698,9 +698,13 @@
        if (user == null)
            throw new UserAccountException(4, "用户不存在");
        if (!StringUtil.isNullOrEmpty(user.getOpenid()))
        if (!StringUtil.isNullOrEmpty(user.getOpenid()) && !user.getOpenid().equalsIgnoreCase(tbOpenId))
            throw new UserAccountException(5, "当前账号已经绑定了淘宝,请先解绑");
        //绑定同一个淘宝号
        if (!StringUtil.isNullOrEmpty(user.getOpenid()) && user.getOpenid().equalsIgnoreCase(tbOpenId))
            return;
        UserInfo taoBaoUser = getUserInfoByTaoBaoOpenId(user.getAppId(), tbOpenId);
        if (taoBaoUser != null)
            throw new UserAccountException(6, "当前淘宝号已经被绑定");
fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserExtraTaoBaoInfoServiceImpl.java
@@ -8,7 +8,9 @@
import com.yeshi.fanli.dao.mybatis.user.UserExtraTaoBaoInfoMapper;
import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.service.inter.user.UserExtraTaoBaoInfoService;
import com.yeshi.fanli.util.StringUtil;
@Service
public class UserExtraTaoBaoInfoServiceImpl implements UserExtraTaoBaoInfoService {
@@ -17,41 +19,51 @@
    private UserExtraTaoBaoInfoMapper userExtraTaoBaoInfoMapper;
    @Override
    public void addRelationId(Long uid, String relationId) {
    public void addRelationId(Long uid, String relationId, String taoBaoUid, boolean valid) {
        if (uid == null || relationId == null)
            return;
        UserExtraTaoBaoInfo info = getByUid(uid);
        if (info == null) {
            info = new UserExtraTaoBaoInfo();
            info.setUser(new UserInfo(uid));
            info.setCreateTime(new Date());
            info.setRelationId(relationId);
            info.setRelationUpdateTime(new Date());
            info.setRelationValid(valid);
            info.setTaoBaoUid(taoBaoUid);
            userExtraTaoBaoInfoMapper.insertSelective(info);
        } else {
            UserExtraTaoBaoInfo update = new UserExtraTaoBaoInfo();
            update.setId(info.getId());
            update.setRelationId(relationId);
            update.setRelationValid(valid);
            update.setRelationUpdateTime(new Date());
            update.setTaoBaoUid(taoBaoUid);
            userExtraTaoBaoInfoMapper.updateByPrimaryKeySelective(update);
        }
    }
    @Override
    public void addSpecialId(Long uid, String specialId) {
    public void addSpecialId(Long uid, String specialId, String taoBaoUid, boolean valid) {
        if (uid == null || specialId == null)
            return;
        UserExtraTaoBaoInfo info = getByUid(uid);
        if (info == null) {
            info = new UserExtraTaoBaoInfo();
            info.setUser(new UserInfo(uid));
            info.setCreateTime(new Date());
            info.setSpecialId(specialId);
            info.setSpecialUpdateTime(new Date());
            info.setSpecialValid(valid);
            info.setTaoBaoUid(taoBaoUid);
            userExtraTaoBaoInfoMapper.insertSelective(info);
        } else {
            UserExtraTaoBaoInfo update = new UserExtraTaoBaoInfo();
            update.setId(info.getId());
            update.setSpecialId(specialId);
            update.setSpecialUpdateTime(new Date());
            update.setSpecialValid(valid);
            update.setTaoBaoUid(taoBaoUid);
            userExtraTaoBaoInfoMapper.updateByPrimaryKeySelective(update);
        }
    }
@@ -61,4 +73,31 @@
        return userExtraTaoBaoInfoMapper.selectByUid(uid);
    }
    @Override
    public void updateSelective(UserExtraTaoBaoInfo ue) {
        if (ue == null || ue.getId() == null)
            return;
        userExtraTaoBaoInfoMapper.updateByPrimaryKeySelective(ue);
    }
    @Override
    public void unBindUid(Long uid) {
        userExtraTaoBaoInfoMapper.clearUid(uid);
    }
    @Override
    public void bindTaoBaoOrderEnd6Num(String taoBaoUid, String orderId) {
        if (taoBaoUid == null || StringUtil.isNullOrEmpty(orderId))
            return;
        UserExtraTaoBaoInfo extraInfo = userExtraTaoBaoInfoMapper.selectByTaoBaoUid(taoBaoUid);
        if (extraInfo != null) {
            UserExtraTaoBaoInfo update = new UserExtraTaoBaoInfo();
            update.setId(extraInfo.getId());
            update.setTaoBaoOrderEnd6Num(orderId);
            update.setUpdateTime(new Date());
            userExtraTaoBaoInfoMapper.updateByPrimaryKeySelective(update);
        }
    }
}
fanli/src/main/java/com/yeshi/fanli/service/inter/config/ConfigService.java
@@ -63,6 +63,13 @@
    AppHomeFloatImg getAppHomeFloatImg();
    /**
     * èŽ·å–é¦–é¡µæç¤ºå¤§å›¾
     *
     * @return
     */
    String getAppHomeFloatNotifyImg();
    /**
     * èŽ·å–é¦–é¡µweex的链接
     * 
     * @return
fanli/src/main/java/com/yeshi/fanli/service/inter/goods/ShareGoodsService.java
@@ -49,11 +49,12 @@
     * 
     * @param uid
     * @param auctionId
     * @param relationId -渠道ID
     * @return
     * @throws ShareGoodsException
     */
    public TaoBaoLink getTaoBaoLinkForShare(Long uid, Long auctionId) throws ShareGoodsException;
    public TaoBaoLink getTaoBaoLinkForShare(Long uid, Long auctionId,String relationId) throws ShareGoodsException;
    /**
     * èŽ·å–å•†å“çš„è´­ä¹°è½¬é“¾é“¾æŽ¥
@@ -65,4 +66,16 @@
     */
    public TaoBaoLink getTaoBaoLinkForBuy(Long uid, Long auctionId, int pidType) throws ShareGoodsException;
    /**
     * ç”¨ä¼šå‘˜è¿è¥ID获取商品的分享转链链接
     *
     * @param uid
     * @param auctionId
     * @param pidType
     * @return
     * @throws ShareGoodsException
     */
    public TaoBaoLink getTaoBaoLinkForBuyWithSpecial(Long uid, String specialId, Long auctionId)
            throws ShareGoodsException;
}
fanli/src/main/java/com/yeshi/fanli/service/inter/user/UserExtraTaoBaoInfoService.java
@@ -16,7 +16,7 @@
     * @param uid
     * @param relationId
     */
    public void addRelationId(Long uid, String relationId);
    public void addRelationId(Long uid, String relationId, String taoBaoUid, boolean valid);
    /**
     * æ·»åŠ ä¼šå‘˜ID
@@ -24,7 +24,7 @@
     * @param uid
     * @param specialId
     */
    public void addSpecialId(Long uid, String specialId);
    public void addSpecialId(Long uid, String specialId, String taoBaoUid, boolean valid);
    /**
     * é€šè¿‡UID获取淘宝联盟渠道信息
@@ -34,4 +34,26 @@
     */
    public UserExtraTaoBaoInfo getByUid(Long uid);
    /**
     * é€‰æ‹©æ€§æ›´æ–°
     *
     * @param ue
     */
    public void updateSelective(UserExtraTaoBaoInfo ue);
    /**
     * è§£ç»‘用户
     *
     * @param uid
     */
    public void unBindUid(Long uid);
    /**
     * ç»‘定淘宝后6位
     *
     * @param taoBaoUid
     * @param orderId
     */
    public void bindTaoBaoOrderEnd6Num(String taoBaoUid, String orderId);
}
fanli/src/main/java/com/yeshi/fanli/util/Constant.java
@@ -13,7 +13,7 @@
public class Constant {
    public static boolean IS_TASK = false;
    // å¤–网环境
    public static boolean IS_OUTNET = true;
    public static boolean IS_OUTNET = false;
    public static boolean IS_TEST = true;
@@ -75,6 +75,8 @@
    public static final String TAOBAO_AUTH_APPKEY = "24980167";
    public static final String TAOBAO_AUTH_APPSECRET = "e0a2e05deabf5ce039b52e5b492d5382";
    public static final String TAOBAO_RELATION_PID_DEFAULT = "mm_124933865_56750082_87140050199";
    public static final String TAOBAO_SPECIAL_PID_DEFAULT = "mm_124933865_56750082_89555600043";
    // æ¥æº-淘宝
    public static final int SOURCE_TYPE_TAOBAO = 1;
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoUtil.java
@@ -1716,13 +1716,14 @@
     * @param uid-用户ID
     * @return
     */
    public static String getTaoBaoUnionAuthUrl(String appKey, String callBackUrl, Long uid) {
    public static String getTaoBaoUnionAuthUrl(String appKey, String callBackUrl, Long uid, String source) {
        if (uid == null)
            return null;
        long timestamp = System.currentTimeMillis();
        JSONObject json = new JSONObject();
        json.put("u", uid);
        json.put("t", timestamp);
        json.put("s", source);
        String url = null;
        try {
            url = String.format(
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java
@@ -221,11 +221,20 @@
            if (item.optBoolean("free_shipment"))
                goods.setFreeShipment(1);
            System.out.println(item.optString("material_lib_type"));
            if (!StringUtil.isNullOrEmpty(item.optString("material_lib_type")))
                goods.setMaterialLibType(item.optInt("material_lib_type"));
            return goods;
        }
        return null;
    }
    public String convertSpecialGoodsLink(Long auctionId, TaoKeAppInfo app) {
        Map<String, String> map = new HashMap<>();
        map.put("method", "taobao.tbk.coupon.convert");
        map.put("item_id", auctionId + "");
        String resultStr = TaoKeBaseUtil.baseRequestForThreeTimes(map, app);
        return resultStr;
    }
    public static List<TaoBaoGoodsBrief> getBatchGoodsInfo(List<Long> listId)
@@ -1515,12 +1524,20 @@
        return null;
    }
    public static String beiAnQuDao(Long relationId, String accessToken, String appKey, String appSecret) {
    /**
     * èŽ·å–æ¸ é“é‚€è¯·ç 
     *
     * @param accessToken
     * @param appKey
     * @param appSecret
     * @return
     */
    public static String getRootRelationInviteCode(String accessToken, String appKey, String appSecret) {
        Map<String, String> map = new HashMap<>();
        map.put("method", "taobao.tbk.sc.publisher.info.save");
        map.put("method", "taobao.tbk.sc.invitecode.get");
        map.put("session", accessToken);
        map.put("inviter_code", "A2QnGL");
        map.put("info_type", "1");
        map.put("code_type", "1");
        map.put("relation_app", "common");
        JSONObject resultJSON = null;
        try {
            TaoKeAppInfo app = new TaoKeAppInfo();
@@ -1536,6 +1553,75 @@
        return null;
    }
    public static String getRootSpecialInviteCode(String accessToken, String appKey, String appSecret) {
        Map<String, String> map = new HashMap<>();
        map.put("method", "taobao.tbk.sc.invitecode.get");
        map.put("session", accessToken);
        map.put("code_type", "3");
        map.put("relation_app", "common");
        JSONObject resultJSON = null;
        try {
            TaoKeAppInfo app = new TaoKeAppInfo();
            app.setAppKey(appKey);
            app.setAppSecret(appSecret);
            resultJSON = TaoKeBaseUtil.baseRequest(map, app);
            return resultJSON.optJSONObject("tbk_sc_invitecode_get_response").optJSONObject("data")
                    .optString("inviter_code");
        } catch (TaoKeApiException e) {
            e.printStackTrace();
        }
        if (resultJSON == null)
            return null;
        return null;
    }
    public static String getRelationId(String accessToken, String appKey, String appSecret) {
        Map<String, String> map = new HashMap<>();
        map.put("method", "taobao.tbk.sc.publisher.info.save");
        map.put("session", accessToken);
        map.put("inviter_code", "A2QnGL");
        map.put("info_type", "1");
        map.put("online_scene", "1");
        JSONObject resultJSON = null;
        try {
            TaoKeAppInfo app = new TaoKeAppInfo();
            app.setAppKey(appKey);
            app.setAppSecret(appSecret);
            resultJSON = TaoKeBaseUtil.baseRequest(map, app);
            return resultJSON.optJSONObject("tbk_sc_publisher_info_save_response").optJSONObject("data")
                    .optString("relation_id");
        } catch (TaoKeApiException e) {
            e.printStackTrace();
        }
        return null;
    }
    public static String getSpecialId(String accessToken, String appKey, String appSecret) {
        Map<String, String> map = new HashMap<>();
        map.put("method", "taobao.tbk.sc.publisher.info.save");
        map.put("session", accessToken);
        map.put("inviter_code", "AA5ISJ");
        map.put("info_type", "1");
        map.put("online_scene", "1");
        JSONObject resultJSON = null;
        try {
            TaoKeAppInfo app = new TaoKeAppInfo();
            app.setAppKey(appKey);
            app.setAppSecret(appSecret);
            resultJSON = TaoKeBaseUtil.baseRequest(map, app);
            return resultJSON.optJSONObject("tbk_sc_publisher_info_save_response").optJSONObject("data")
                    .optString("special_id");
        } catch (TaoKeApiException e) {
            e.printStackTrace();
        }
        return null;
    }
    // AA5ISJ
    private static TaoBaoGoodsBrief parseWuLiaoItemFromMaterialId(JSONObject item) {
        TaoBaoGoodsBrief goods = new TaoBaoGoodsBrief();
        // è®¾ç½®æˆ320*320的图片尺寸
fanli/src/main/resource/uml/ÌÔ±¦ÁªÃËÊÚȨÁ÷³Ì.acd
@@ -179,8 +179,8 @@
                              <constraint>
                                <height>-1</height>
                                <width>-1</width>
                                <x>352</x>
                                <y>174</y>
                                <x>354</x>
                                <y>175</y>
                              </constraint>
                              <sourceConnections>
                                <net.java.amateras.uml.activitydiagram.model.FlowModel>
@@ -457,11 +457,90 @@
                                                                              </java.beans.PropertyChangeSupport>
                                                                            </listeners>
                                                                            <source class="net.java.amateras.uml.activitydiagram.model.DecisionModel" reference="../../.."/>
                                                                            <target class="net.java.amateras.uml.activitydiagram.model.ActionModel">
                                                                            <target class="net.java.amateras.uml.activitydiagram.model.FinalStateModel">
                                                                              <backgroundColor reference="../../../../../../../../../../../../../../../../../../../../../../backgroundColor"/>
                                                                              <foregroundColor reference="../../../../../../../../../../../../../../../../../../../../../../foregroundColor"/>
                                                                              <showIcon>true</showIcon>
                                                                              <parent class="net.java.amateras.uml.activitydiagram.model.ActivityModel" reference="../../../../../../../../../../../../../../../../../../../../.."/>
                                                                              <listeners serialization="custom">
                                                                                <java.beans.PropertyChangeSupport>
                                                                                  <default>
                                                                                    <source class="net.java.amateras.uml.activitydiagram.model.FinalStateModel" reference="../../../.."/>
                                                                                    <propertyChangeSupportSerializedDataVersion>2</propertyChangeSupportSerializedDataVersion>
                                                                                  </default>
                                                                                  <null/>
                                                                                </java.beans.PropertyChangeSupport>
                                                                              </listeners>
                                                                              <constraint>
                                                                                <height>-1</height>
                                                                                <width>-1</width>
                                                                                <x>646</x>
                                                                                <y>513</y>
                                                                              </constraint>
                                                                              <sourceConnections/>
                                                                              <targetConnections>
                                                                                <net.java.amateras.uml.activitydiagram.model.FlowModel reference="../../.."/>
                                                                              </targetConnections>
                                                                              <children/>
                                                                              <filterProperty/>
                                                                            </target>
                                                                            <bendpoints/>
                                                                            <condition>失败</condition>
                                                                          </net.java.amateras.uml.activitydiagram.model.FlowModel>
                                                                          <net.java.amateras.uml.activitydiagram.model.FlowModel>
                                                                            <showIcon>true</showIcon>
                                                                            <listeners serialization="custom">
                                                                              <java.beans.PropertyChangeSupport>
                                                                                <default>
                                                                                  <source class="net.java.amateras.uml.activitydiagram.model.FlowModel" reference="../../../.."/>
                                                                                  <propertyChangeSupportSerializedDataVersion>2</propertyChangeSupportSerializedDataVersion>
                                                                                </default>
                                                                                <null/>
                                                                              </java.beans.PropertyChangeSupport>
                                                                            </listeners>
                                                                            <source class="net.java.amateras.uml.activitydiagram.model.DecisionModel" reference="../../.."/>
                                                                            <target class="net.java.amateras.uml.activitydiagram.model.ActionModel">
                                                                              <backgroundColor>
                                                                                <red>255</red>
                                                                                <green>255</green>
                                                                                <blue>206</blue>
                                                                              </backgroundColor>
                                                                              <foregroundColor>
                                                                                <red>0</red>
                                                                                <green>0</green>
                                                                                <blue>0</blue>
                                                                              </foregroundColor>
                                                                              <showIcon>true</showIcon>
                                                                              <parent class="net.java.amateras.uml.activitydiagram.model.ActivityModel">
                                                                                <backgroundColor reference="../../backgroundColor"/>
                                                                                <foregroundColor reference="../../foregroundColor"/>
                                                                                <showIcon>true</showIcon>
                                                                                <listeners serialization="custom">
                                                                                  <java.beans.PropertyChangeSupport>
                                                                                    <default>
                                                                                      <source class="net.java.amateras.uml.activitydiagram.model.ActivityModel" reference="../../../.."/>
                                                                                      <propertyChangeSupportSerializedDataVersion>2</propertyChangeSupportSerializedDataVersion>
                                                                                    </default>
                                                                                    <null/>
                                                                                  </java.beans.PropertyChangeSupport>
                                                                                </listeners>
                                                                                <sourceConnections/>
                                                                                <targetConnections/>
                                                                                <children>
                                                                                  <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                  <net.java.amateras.uml.activitydiagram.model.InitialStateModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                  <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                  <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                  <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                  <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../.."/>
                                                                                  <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../.."/>
                                                                                  <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../.."/>
                                                                                  <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../.."/>
                                                                                  <net.java.amateras.uml.activitydiagram.model.ActionModel>
                                                                                    <backgroundColor reference="../../../../../../../../../../../../../../../../../../../../../../../../../backgroundColor"/>
                                                                                    <foregroundColor reference="../../../../../../../../../../../../../../../../../../../../../../../../../foregroundColor"/>
                                                                                    <showIcon>true</showIcon>
                                                                                    <parent class="net.java.amateras.uml.activitydiagram.model.ActivityModel" reference="../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                              <listeners serialization="custom">
                                                                                <java.beans.PropertyChangeSupport>
                                                                                  <default>
@@ -518,65 +597,24 @@
                                                                                      <sourceConnections/>
                                                                                      <targetConnections/>
                                                                                      <children>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.InitialStateModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.InitialStateModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../../../../../../../../../../../net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.FinalStateModel>
                                                                                          <backgroundColor reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../backgroundColor"/>
                                                                                          <foregroundColor reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../foregroundColor"/>
                                                                                                <backgroundColor reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../backgroundColor"/>
                                                                                                <foregroundColor reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../foregroundColor"/>
                                                                                          <showIcon>true</showIcon>
                                                                                          <parent class="net.java.amateras.uml.activitydiagram.model.ActivityModel" reference="../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                          <listeners serialization="custom">
                                                                                            <java.beans.PropertyChangeSupport>
                                                                                              <default>
                                                                                                <source class="net.java.amateras.uml.activitydiagram.model.FinalStateModel" reference="../../../.."/>
                                                                                                <propertyChangeSupportSerializedDataVersion>2</propertyChangeSupportSerializedDataVersion>
                                                                                              </default>
                                                                                              <null/>
                                                                                            </java.beans.PropertyChangeSupport>
                                                                                          </listeners>
                                                                                          <constraint>
                                                                                            <height>-1</height>
                                                                                            <width>-1</width>
                                                                                            <x>646</x>
                                                                                            <y>513</y>
                                                                                          </constraint>
                                                                                          <sourceConnections/>
                                                                                          <targetConnections>
                                                                                            <net.java.amateras.uml.activitydiagram.model.FlowModel>
                                                                                              <showIcon>true</showIcon>
                                                                                              <listeners serialization="custom">
                                                                                                <java.beans.PropertyChangeSupport>
                                                                                                  <default>
                                                                                                    <source class="net.java.amateras.uml.activitydiagram.model.FlowModel" reference="../../../.."/>
                                                                                                    <propertyChangeSupportSerializedDataVersion>2</propertyChangeSupportSerializedDataVersion>
                                                                                                  </default>
                                                                                                  <null/>
                                                                                                </java.beans.PropertyChangeSupport>
                                                                                              </listeners>
                                                                                              <source class="net.java.amateras.uml.activitydiagram.model.DecisionModel" reference="../../../../../../../../../../../.."/>
                                                                                              <target class="net.java.amateras.uml.activitydiagram.model.FinalStateModel" reference="../../.."/>
                                                                                              <bendpoints/>
                                                                                              <condition>失败</condition>
                                                                                            </net.java.amateras.uml.activitydiagram.model.FlowModel>
                                                                                          </targetConnections>
                                                                                          <children/>
                                                                                          <filterProperty/>
                                                                                        </net.java.amateras.uml.activitydiagram.model.FinalStateModel>
                                                                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.FinalStateModel>
                                                                                          <backgroundColor reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../backgroundColor"/>
                                                                                          <foregroundColor reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../foregroundColor"/>
                                                                                          <showIcon>true</showIcon>
                                                                                          <parent class="net.java.amateras.uml.activitydiagram.model.ActivityModel" reference="../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                                <parent class="net.java.amateras.uml.activitydiagram.model.ActivityModel" reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                          <listeners serialization="custom">
                                                                                            <java.beans.PropertyChangeSupport>
                                                                                              <default>
@@ -605,7 +643,7 @@
                                                                                                  <null/>
                                                                                                </java.beans.PropertyChangeSupport>
                                                                                              </listeners>
                                                                                              <source class="net.java.amateras.uml.activitydiagram.model.DecisionModel" reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                                    <source class="net.java.amateras.uml.activitydiagram.model.DecisionModel" reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <target class="net.java.amateras.uml.activitydiagram.model.FinalStateModel" reference="../../.."/>
                                                                                              <bendpoints/>
                                                                                              <condition>授权失败</condition>
@@ -722,7 +760,7 @@
                                                                                                        <null/>
                                                                                                      </java.beans.PropertyChangeSupport>
                                                                                                    </listeners>
                                                                                                    <source class="net.java.amateras.uml.activitydiagram.model.DecisionModel" reference="../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                                          <source class="net.java.amateras.uml.activitydiagram.model.DecisionModel" reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                                    <target class="net.java.amateras.uml.activitydiagram.model.ActionModel" reference="../../.."/>
                                                                                                    <bendpoints>
                                                                                                      <net.java.amateras.uml.editpart.ConnectionBendpoint>
@@ -853,25 +891,25 @@
                                                                                      <sourceConnections/>
                                                                                      <targetConnections/>
                                                                                      <children>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.InitialStateModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.InitialStateModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../../../../../net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.FinalStateModel"/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../../../../../../../../../../../net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../../../../../net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.FinalStateModel[2]"/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]"/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../../../../../net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target"/>
                                                                                        <net.java.amateras.uml.model.NoteModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.model.NoteModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.model.NoteModel>
                                                                                          <backgroundColor>
                                                                                            <red>255</red>
@@ -900,25 +938,25 @@
                                                                                            <sourceConnections/>
                                                                                            <targetConnections/>
                                                                                            <children>
                                                                                              <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.InitialStateModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../.."/>
                                                                                                    <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                                    <net.java.amateras.uml.activitydiagram.model.InitialStateModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                                    <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                                    <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                                    <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                                    <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                                    <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                                    <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                                    <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../../../../../../../../net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.FinalStateModel"/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                                    <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../.."/>
                                                                                                    <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../../../../../../../../../../../../../../net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                                                                                                    <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../../../../../../../../net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.FinalStateModel[2]"/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]"/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../../../../../../../../net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                                                                                              <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target"/>
                                                                                              <net.java.amateras.uml.model.NoteModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                                    <net.java.amateras.uml.model.NoteModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <net.java.amateras.uml.model.NoteModel reference="../../.."/>
                                                                                            </children>
                                                                                            <filterProperty/>
@@ -951,7 +989,7 @@
                                                                                                  <null/>
                                                                                                </java.beans.PropertyChangeSupport>
                                                                                              </listeners>
                                                                                              <source class="net.java.amateras.uml.activitydiagram.model.ActionModel" reference="../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                                    <source class="net.java.amateras.uml.activitydiagram.model.ActionModel" reference="../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                              <target class="net.java.amateras.uml.model.NoteModel" reference="../../.."/>
                                                                                              <bendpoints/>
                                                                                            </net.java.amateras.uml.model.AnchorModel>
@@ -975,10 +1013,10 @@
                                                                                      </java.beans.PropertyChangeSupport>
                                                                                    </listeners>
                                                                                    <constraint>
                                                                                      <height>30</height>
                                                                                      <width>177</width>
                                                                                      <x>579</x>
                                                                                      <y>586</y>
                                                                                            <height>54</height>
                                                                                            <width>213</width>
                                                                                            <x>547</x>
                                                                                            <y>570</y>
                                                                                    </constraint>
                                                                                    <sourceConnections/>
                                                                                    <targetConnections>
@@ -986,14 +1024,339 @@
                                                                                    </targetConnections>
                                                                                    <children/>
                                                                                    <filterProperty/>
                                                                                    <content>完成后此处直接关闭页面</content>
                                                                                    <old>此处直接关闭页面</old>
                                                                                          <content>1.在此步骤之前可爬取淘宝订单&#xd;
2.完成后此处直接关闭页面</content>
                                                                                          <old>在此步骤之前可爬取淘宝订单&#xd;
完成后此处直接关闭页面</old>
                                                                                  </target>
                                                                                  <bendpoints/>
                                                                                </net.java.amateras.uml.model.AnchorModel>
                                                                              </sourceConnections>
                                                                              <targetConnections>
                                                                                      <net.java.amateras.uml.activitydiagram.model.FlowModel>
                                                                                        <showIcon>true</showIcon>
                                                                                        <listeners serialization="custom">
                                                                                          <java.beans.PropertyChangeSupport>
                                                                                            <default>
                                                                                              <source class="net.java.amateras.uml.activitydiagram.model.FlowModel" reference="../../../.."/>
                                                                                              <propertyChangeSupportSerializedDataVersion>2</propertyChangeSupportSerializedDataVersion>
                                                                                            </default>
                                                                                            <null/>
                                                                                          </java.beans.PropertyChangeSupport>
                                                                                        </listeners>
                                                                                        <source class="net.java.amateras.uml.activitydiagram.model.DecisionModel">
                                                                                          <backgroundColor reference="../../../../../../../backgroundColor"/>
                                                                                          <foregroundColor reference="../../../../../../../foregroundColor"/>
                                                                                          <showIcon>true</showIcon>
                                                                                          <parent class="net.java.amateras.uml.activitydiagram.model.ActivityModel" reference="../../../../../.."/>
                                                                                          <listeners serialization="custom">
                                                                                            <java.beans.PropertyChangeSupport>
                                                                                              <default>
                                                                                                <source class="net.java.amateras.uml.activitydiagram.model.DecisionModel" reference="../../../.."/>
                                                                                                <propertyChangeSupportSerializedDataVersion>2</propertyChangeSupportSerializedDataVersion>
                                                                                              </default>
                                                                                              <null/>
                                                                                            </java.beans.PropertyChangeSupport>
                                                                                          </listeners>
                                                                                          <constraint>
                                                                                            <height>-1</height>
                                                                                            <width>-1</width>
                                                                                            <x>333</x>
                                                                                            <y>596</y>
                                                                                          </constraint>
                                                                                          <sourceConnections>
                                                                                <net.java.amateras.uml.activitydiagram.model.FlowModel reference="../../.."/>
                                                                                            <net.java.amateras.uml.activitydiagram.model.FlowModel>
                                                                                              <showIcon>true</showIcon>
                                                                                              <listeners serialization="custom">
                                                                                                <java.beans.PropertyChangeSupport>
                                                                                                  <default>
                                                                                                    <source class="net.java.amateras.uml.activitydiagram.model.FlowModel" reference="../../../.."/>
                                                                                                    <propertyChangeSupportSerializedDataVersion>2</propertyChangeSupportSerializedDataVersion>
                                                                                                  </default>
                                                                                                  <null/>
                                                                                                </java.beans.PropertyChangeSupport>
                                                                                              </listeners>
                                                                                              <source class="net.java.amateras.uml.activitydiagram.model.DecisionModel" reference="../../.."/>
                                                                                              <target class="net.java.amateras.uml.activitydiagram.model.FinalStateModel">
                                                                                                <backgroundColor reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../backgroundColor"/>
                                                                                                <foregroundColor reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../foregroundColor"/>
                                                                                                <showIcon>true</showIcon>
                                                                                                <parent class="net.java.amateras.uml.activitydiagram.model.ActivityModel" reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                                <listeners serialization="custom">
                                                                                                  <java.beans.PropertyChangeSupport>
                                                                                                    <default>
                                                                                                      <source class="net.java.amateras.uml.activitydiagram.model.FinalStateModel" reference="../../../.."/>
                                                                                                      <propertyChangeSupportSerializedDataVersion>2</propertyChangeSupportSerializedDataVersion>
                                                                                                    </default>
                                                                                                    <null/>
                                                                                                  </java.beans.PropertyChangeSupport>
                                                                                                </listeners>
                                                                                                <constraint>
                                                                                                  <height>-1</height>
                                                                                                  <width>-1</width>
                                                                                                  <x>339</x>
                                                                                                  <y>657</y>
                                                                                                </constraint>
                                                                                                <sourceConnections/>
                                                                                                <targetConnections>
                                                                                                  <net.java.amateras.uml.activitydiagram.model.FlowModel reference="../../.."/>
                                                                                                </targetConnections>
                                                                                                <children/>
                                                                                                <filterProperty/>
                                                                                              </target>
                                                                                              <bendpoints/>
                                                                                              <condition>绑定失败</condition>
                                                                                            </net.java.amateras.uml.activitydiagram.model.FlowModel>
                                                                                          </sourceConnections>
                                                                                          <targetConnections>
                                                                                            <net.java.amateras.uml.activitydiagram.model.FlowModel>
                                                                                              <showIcon>true</showIcon>
                                                                                              <listeners serialization="custom">
                                                                                                <java.beans.PropertyChangeSupport>
                                                                                                  <default>
                                                                                                    <source class="net.java.amateras.uml.activitydiagram.model.FlowModel" reference="../../../.."/>
                                                                                                    <propertyChangeSupportSerializedDataVersion>2</propertyChangeSupportSerializedDataVersion>
                                                                                                  </default>
                                                                                                  <null/>
                                                                                                </java.beans.PropertyChangeSupport>
                                                                                              </listeners>
                                                                                              <source class="net.java.amateras.uml.activitydiagram.model.ActionModel" reference="../../../../../../../../.."/>
                                                                                              <target class="net.java.amateras.uml.activitydiagram.model.DecisionModel" reference="../../.."/>
                                                                                              <bendpoints/>
                                                                                              <condition></condition>
                                                                                            </net.java.amateras.uml.activitydiagram.model.FlowModel>
                                                                                          </targetConnections>
                                                                                          <children/>
                                                                                          <filterProperty/>
                                                                                        </source>
                                                                                        <target class="net.java.amateras.uml.activitydiagram.model.ActionModel" reference="../../.."/>
                                                                                        <bendpoints/>
                                                                                        <condition>绑定成功</condition>
                                                                                      </net.java.amateras.uml.activitydiagram.model.FlowModel>
                                                                                    </targetConnections>
                                                                                    <children/>
                                                                                    <filterProperty/>
                                                                                    <actionName>联盟H5授权</actionName>
                                                                                  </net.java.amateras.uml.activitydiagram.model.ActionModel>
                                                                                  <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../.."/>
                                                                                  <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../../../../../net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                                                                                  <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                  <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.FinalStateModel[2]"/>
                                                                                  <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                                                                                  <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]"/>
                                                                                  <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                                                                                  <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target"/>
                                                                                  <net.java.amateras.uml.model.NoteModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                  <net.java.amateras.uml.model.NoteModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.model.NoteModel[2]"/>
                                                                                  <net.java.amateras.uml.model.NoteModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.model.AnchorModel/target"/>
                                                                                  <net.java.amateras.uml.model.NoteModel>
                                                                                    <backgroundColor>
                                                                                      <red>255</red>
                                                                                      <green>255</green>
                                                                                      <blue>206</blue>
                                                                                    </backgroundColor>
                                                                                    <foregroundColor>
                                                                                      <red>0</red>
                                                                                      <green>0</green>
                                                                                      <blue>0</blue>
                                                                                    </foregroundColor>
                                                                                    <showIcon>true</showIcon>
                                                                                    <parent class="net.java.amateras.uml.activitydiagram.model.ActivityModel">
                                                                                      <backgroundColor reference="../../backgroundColor"/>
                                                                                      <foregroundColor reference="../../foregroundColor"/>
                                                                                      <showIcon>true</showIcon>
                                                                                      <listeners serialization="custom">
                                                                                        <java.beans.PropertyChangeSupport>
                                                                                          <default>
                                                                                            <source class="net.java.amateras.uml.activitydiagram.model.ActivityModel" reference="../../../.."/>
                                                                                            <propertyChangeSupportSerializedDataVersion>2</propertyChangeSupportSerializedDataVersion>
                                                                                          </default>
                                                                                          <null/>
                                                                                        </java.beans.PropertyChangeSupport>
                                                                                      </listeners>
                                                                                      <sourceConnections/>
                                                                                      <targetConnections/>
                                                                                      <children>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.InitialStateModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel[6]"/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../../../../../../../../net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.FinalStateModel[2]"/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]"/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target"/>
                                                                                        <net.java.amateras.uml.model.NoteModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.model.NoteModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.model.NoteModel[2]"/>
                                                                                        <net.java.amateras.uml.model.NoteModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.model.AnchorModel/target"/>
                                                                                        <net.java.amateras.uml.model.NoteModel reference="../../.."/>
                                                                                      </children>
                                                                                      <filterProperty/>
                                                                                    </parent>
                                                                                    <listeners serialization="custom">
                                                                                      <java.beans.PropertyChangeSupport>
                                                                                        <default>
                                                                                          <source class="net.java.amateras.uml.model.NoteModel" reference="../../../.."/>
                                                                                          <propertyChangeSupportSerializedDataVersion>2</propertyChangeSupportSerializedDataVersion>
                                                                                        </default>
                                                                                        <null/>
                                                                                      </java.beans.PropertyChangeSupport>
                                                                                    </listeners>
                                                                                    <constraint>
                                                                                      <height>316</height>
                                                                                      <width>323</width>
                                                                                      <x>805</x>
                                                                                      <y>81</y>
                                                                                    </constraint>
                                                                                    <sourceConnections/>
                                                                                    <targetConnections/>
                                                                                    <children/>
                                                                                    <filterProperty/>
                                                                                    <content>每个阶段建议以code做区分:&#xd;
比如Android点击分享时:&#xd;
当点击登录时code=1,登录返回根据code处理,&#xd;
使用完后code=0;&#xd;
当点击淘宝登录时code=2,登录返回根据code处理,&#xd;
使用完后code=0;&#xd;
当H5授权时code=3,授权返回根据code处理,&#xd;
使用完后code=0;&#xd;
&#xd;
比如Android点击领券或者购买时:&#xd;
当点击登录时code=11,登录返回根据code处理,&#xd;
使用完后code=0;&#xd;
当点击淘宝登录时code=12,登录返回根据code处理,&#xd;
使用完后code=0;&#xd;
当H5授权时code=13,授权返回根据code处理,&#xd;
使用完后code=0;&#xd;
</content>
                                                                                    <old>每个阶段建议以code做区分:&#xd;
比如Android点击分享时:&#xd;
当点击登录时code=1,登录返回根据code处理,&#xd;
使用完后code=0;&#xd;
当点击淘宝登录时code=2,登录返回根据code处理,&#xd;
使用完后code=0;&#xd;
当H5授权时code=3,授权返回根据code处理,&#xd;
使用完后code=0;&#xd;
&#xd;
比如Android点击领券或者购买时:&#xd;
当点击登录时code=1,登录返回根据code处理,&#xd;
使用完后code=0;&#xd;
当点击淘宝登录时code=2,登录返回根据code处理,&#xd;
使用完后code=0;&#xd;
当H5授权时code=3,授权返回根据code处理,&#xd;
使用完后code=0;&#xd;
</old>
                                                                                  </net.java.amateras.uml.model.NoteModel>
                                                                                  <net.java.amateras.uml.model.NoteModel>
                                                                                    <backgroundColor>
                                                                                      <red>255</red>
                                                                                      <green>255</green>
                                                                                      <blue>206</blue>
                                                                                    </backgroundColor>
                                                                                    <foregroundColor>
                                                                                      <red>0</red>
                                                                                      <green>0</green>
                                                                                      <blue>0</blue>
                                                                                    </foregroundColor>
                                                                                    <showIcon>true</showIcon>
                                                                                    <parent class="net.java.amateras.uml.activitydiagram.model.ActivityModel">
                                                                                      <backgroundColor reference="../../backgroundColor"/>
                                                                                      <foregroundColor reference="../../foregroundColor"/>
                                                                                      <showIcon>true</showIcon>
                                                                                      <listeners serialization="custom">
                                                                                        <java.beans.PropertyChangeSupport>
                                                                                          <default>
                                                                                            <source class="net.java.amateras.uml.activitydiagram.model.ActivityModel" reference="../../../.."/>
                                                                                            <propertyChangeSupportSerializedDataVersion>2</propertyChangeSupportSerializedDataVersion>
                                                                                          </default>
                                                                                          <null/>
                                                                                        </java.beans.PropertyChangeSupport>
                                                                                      </listeners>
                                                                                      <sourceConnections/>
                                                                                      <targetConnections/>
                                                                                      <children>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.InitialStateModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel[6]"/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../../../../../../../../net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.FinalStateModel[2]"/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]"/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                                                                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target"/>
                                                                                        <net.java.amateras.uml.model.NoteModel reference="../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                        <net.java.amateras.uml.model.NoteModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.model.NoteModel[2]"/>
                                                                                        <net.java.amateras.uml.model.NoteModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.model.AnchorModel/target"/>
                                                                                        <net.java.amateras.uml.model.NoteModel reference="../../../../net.java.amateras.uml.model.NoteModel[4]"/>
                                                                                        <net.java.amateras.uml.model.NoteModel reference="../../.."/>
                                                                                      </children>
                                                                                      <filterProperty/>
                                                                                    </parent>
                                                                                    <listeners serialization="custom">
                                                                                      <java.beans.PropertyChangeSupport>
                                                                                        <default>
                                                                                          <source class="net.java.amateras.uml.model.NoteModel" reference="../../../.."/>
                                                                                          <propertyChangeSupportSerializedDataVersion>2</propertyChangeSupportSerializedDataVersion>
                                                                                        </default>
                                                                                        <null/>
                                                                                      </java.beans.PropertyChangeSupport>
                                                                                    </listeners>
                                                                                    <constraint>
                                                                                      <height>95</height>
                                                                                      <width>201</width>
                                                                                      <x>18</x>
                                                                                      <y>57</y>
                                                                                    </constraint>
                                                                                    <sourceConnections/>
                                                                                    <targetConnections/>
                                                                                    <children/>
                                                                                    <filterProperty/>
                                                                                    <content>进入详情页面:若用户已经登录,然而淘宝未授权,就去淘宝授权</content>
                                                                                    <old>若用户已经登录,然而淘宝未授权,就去淘宝授权</old>
                                                                                  </net.java.amateras.uml.model.NoteModel>
                                                                                  <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../.."/>
                                                                                  <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel[6]/targetConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/source"/>
                                                                                </children>
                                                                                <filterProperty/>
                                                                              </parent>
                                                                              <listeners serialization="custom">
                                                                                <java.beans.PropertyChangeSupport>
                                                                                  <default>
                                                                                    <source class="net.java.amateras.uml.activitydiagram.model.ActionModel" reference="../../../.."/>
                                                                                    <propertyChangeSupportSerializedDataVersion>2</propertyChangeSupportSerializedDataVersion>
                                                                                  </default>
                                                                                  <null/>
                                                                                </java.beans.PropertyChangeSupport>
                                                                              </listeners>
                                                                              <constraint>
                                                                                <height>-1</height>
                                                                                <width>-1</width>
                                                                                <x>250</x>
                                                                                <y>555</y>
                                                                              </constraint>
                                                                              <sourceConnections>
                                                                                <net.java.amateras.uml.activitydiagram.model.FlowModel reference="../../parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[6]/targetConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/source/targetConnections/net.java.amateras.uml.activitydiagram.model.FlowModel"/>
                                                                              </sourceConnections>
                                                                              <targetConnections>
                                                                                <net.java.amateras.uml.activitydiagram.model.FlowModel>
                                                                                  <showIcon>true</showIcon>
                                                                                  <listeners serialization="custom">
@@ -1011,37 +1374,38 @@
                                                                                    <net.java.amateras.uml.editpart.ConnectionBendpoint>
                                                                                      <weight>0.5</weight>
                                                                                      <d1>
                                                                                        <width>-111</width>
                                                                                        <height>-1</height>
                                                                                        <width>-100</width>
                                                                                        <height>-3</height>
                                                                                      </d1>
                                                                                      <d2>
                                                                                        <width>-203</width>
                                                                                        <height>-158</height>
                                                                                      </d2>
                                                                                    </net.java.amateras.uml.editpart.ConnectionBendpoint>
                                                                                    <net.java.amateras.uml.editpart.ConnectionBendpoint>
                                                                                      <weight>0.5</weight>
                                                                                      <d1>
                                                                                        <width>-111</width>
                                                                                        <height>157</height>
                                                                                      </d1>
                                                                                      <d2>
                                                                                        <width>-203</width>
                                                                                        <height>0</height>
                                                                                        <width>-2</width>
                                                                                        <height>-126</height>
                                                                                      </d2>
                                                                                    </net.java.amateras.uml.editpart.ConnectionBendpoint>
                                                                                  </bendpoints>
                                                                                  <condition>淘宝已经授权</condition>
                                                                                </net.java.amateras.uml.activitydiagram.model.FlowModel>
                                                                                <net.java.amateras.uml.activitydiagram.model.FlowModel reference="../../.."/>
                                                                              </targetConnections>
                                                                              <children/>
                                                                              <filterProperty/>
                                                                              <actionName>联盟H5授权</actionName>
                                                                              <actionName>绑定淘宝</actionName>
                                                                            </target>
                                                                            <bendpoints/>
                                                                            <condition>成功</condition>
                                                                            <bendpoints>
                                                                              <net.java.amateras.uml.editpart.ConnectionBendpoint>
                                                                                <weight>0.5</weight>
                                                                                <d1>
                                                                                  <width>-1</width>
                                                                                  <height>51</height>
                                                                                </d1>
                                                                                <d2>
                                                                                  <width>188</width>
                                                                                  <height>-1</height>
                                                                                </d2>
                                                                              </net.java.amateras.uml.editpart.ConnectionBendpoint>
                                                                            </bendpoints>
                                                                            <condition>授权成功</condition>
                                                                          </net.java.amateras.uml.activitydiagram.model.FlowModel>
                                                                          <net.java.amateras.uml.activitydiagram.model.FlowModel reference="../net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.FinalStateModel/targetConnections/net.java.amateras.uml.activitydiagram.model.FlowModel"/>
                                                                        </sourceConnections>
                                                                        <targetConnections>
                                                                          <net.java.amateras.uml.activitydiagram.model.FlowModel reference="../../.."/>
@@ -1063,7 +1427,7 @@
                                                                <bendpoints/>
                                                                <condition>尚未授权</condition>
                                                              </net.java.amateras.uml.activitydiagram.model.FlowModel>
                                                              <net.java.amateras.uml.activitydiagram.model.FlowModel reference="../net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/targetConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]"/>
                                                              <net.java.amateras.uml.activitydiagram.model.FlowModel reference="../net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/targetConnections/net.java.amateras.uml.activitydiagram.model.FlowModel"/>
                                                            </sourceConnections>
                                                            <targetConnections>
                                                              <net.java.amateras.uml.activitydiagram.model.FlowModel reference="../../.."/>
@@ -1074,7 +1438,7 @@
                                                          <bendpoints/>
                                                          <condition></condition>
                                                        </net.java.amateras.uml.activitydiagram.model.FlowModel>
                                                        <net.java.amateras.uml.model.AnchorModel reference="../net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.model.NoteModel[2]/targetConnections/net.java.amateras.uml.model.AnchorModel"/>
                                                        <net.java.amateras.uml.model.AnchorModel reference="../net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.model.NoteModel[2]/targetConnections/net.java.amateras.uml.model.AnchorModel"/>
                                                      </sourceConnections>
                                                      <targetConnections>
                                                        <net.java.amateras.uml.activitydiagram.model.FlowModel>
@@ -1118,7 +1482,7 @@
                                                </constraint>
                                                <sourceConnections>
                                                  <net.java.amateras.uml.activitydiagram.model.FlowModel reference="../../parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/targetConnections/net.java.amateras.uml.activitydiagram.model.FlowModel"/>
                                                  <net.java.amateras.uml.activitydiagram.model.FlowModel reference="../../parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/targetConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]"/>
                                                  <net.java.amateras.uml.activitydiagram.model.FlowModel reference="../../parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/targetConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]"/>
                                                </sourceConnections>
                                                <targetConnections>
                                                  <net.java.amateras.uml.activitydiagram.model.FlowModel reference="../../.."/>
@@ -1207,11 +1571,11 @@
                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]"/>
                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                                        <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[6]"/>
                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                                        <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.FinalStateModel"/>
                                        <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                                        <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../.."/>
                                        <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.FinalStateModel[2]"/>
                                        <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.FinalStateModel[2]"/>
                                      </children>
                                      <filterProperty/>
                                    </parent>
@@ -1232,7 +1596,7 @@
                                    </constraint>
                                    <sourceConnections>
                                      <net.java.amateras.uml.activitydiagram.model.FlowModel reference="../../parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/targetConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]"/>
                                      <net.java.amateras.uml.activitydiagram.model.FlowModel reference="../../parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.FinalStateModel[2]/targetConnections/net.java.amateras.uml.activitydiagram.model.FlowModel"/>
                                      <net.java.amateras.uml.activitydiagram.model.FlowModel reference="../../parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.FinalStateModel[2]/targetConnections/net.java.amateras.uml.activitydiagram.model.FlowModel"/>
                                    </sourceConnections>
                                    <targetConnections>
                                      <net.java.amateras.uml.activitydiagram.model.FlowModel reference="../../.."/>
@@ -1315,15 +1679,15 @@
                      <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]"/>
                      <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                      <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                      <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                      <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[6]"/>
                      <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                      <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.FinalStateModel"/>
                      <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                      <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                      <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.FinalStateModel[2]"/>
                      <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                      <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]"/>
                      <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                      <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target"/>
                      <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.FinalStateModel[2]"/>
                      <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                      <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]"/>
                      <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
                      <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target"/>
                      <net.java.amateras.uml.model.NoteModel reference="../../.."/>
                    </children>
                    <filterProperty/>
@@ -1397,125 +1761,23 @@
    <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]"/>
    <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
    <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
    <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
    <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[6]"/>
    <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
    <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.FinalStateModel"/>
    <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
    <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
    <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.FinalStateModel[2]"/>
    <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
    <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]"/>
    <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
    <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target"/>
    <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.FinalStateModel[2]"/>
    <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
    <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]"/>
    <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
    <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target"/>
    <net.java.amateras.uml.model.NoteModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target"/>
    <net.java.amateras.uml.model.NoteModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.model.NoteModel[2]"/>
    <net.java.amateras.uml.model.NoteModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.model.AnchorModel/target"/>
    <net.java.amateras.uml.model.NoteModel>
      <backgroundColor>
        <red>255</red>
        <green>255</green>
        <blue>206</blue>
      </backgroundColor>
      <foregroundColor>
        <red>0</red>
        <green>0</green>
        <blue>0</blue>
      </foregroundColor>
      <showIcon>true</showIcon>
      <parent class="net.java.amateras.uml.activitydiagram.model.ActivityModel">
        <backgroundColor reference="../../backgroundColor"/>
        <foregroundColor reference="../../foregroundColor"/>
        <showIcon>true</showIcon>
        <listeners serialization="custom">
          <java.beans.PropertyChangeSupport>
            <default>
              <source class="net.java.amateras.uml.activitydiagram.model.ActivityModel" reference="../../../.."/>
              <propertyChangeSupportSerializedDataVersion>2</propertyChangeSupportSerializedDataVersion>
            </default>
            <null/>
          </java.beans.PropertyChangeSupport>
        </listeners>
        <sourceConnections/>
        <targetConnections/>
        <children>
          <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel"/>
          <net.java.amateras.uml.activitydiagram.model.InitialStateModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel"/>
          <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel"/>
          <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]"/>
          <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]"/>
          <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
          <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]"/>
          <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
          <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
          <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
          <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
          <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.FinalStateModel"/>
          <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
          <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.FinalStateModel[2]"/>
          <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
          <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]"/>
          <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target"/>
          <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target"/>
          <net.java.amateras.uml.model.NoteModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target"/>
          <net.java.amateras.uml.model.NoteModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.model.NoteModel[2]"/>
          <net.java.amateras.uml.model.NoteModel reference="../../../../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.model.AnchorModel/target"/>
          <net.java.amateras.uml.model.NoteModel reference="../../.."/>
        </children>
        <filterProperty/>
      </parent>
      <listeners serialization="custom">
        <java.beans.PropertyChangeSupport>
          <default>
            <source class="net.java.amateras.uml.model.NoteModel" reference="../../../.."/>
            <propertyChangeSupportSerializedDataVersion>2</propertyChangeSupportSerializedDataVersion>
          </default>
          <null/>
        </java.beans.PropertyChangeSupport>
      </listeners>
      <constraint>
        <height>316</height>
        <width>346</width>
        <x>747</x>
        <y>229</y>
      </constraint>
      <sourceConnections/>
      <targetConnections/>
      <children/>
      <filterProperty/>
      <content>每个阶段建议以code做区分:&#xd;
比如Android点击分享时:&#xd;
当点击登录时code=1,登录返回根据code处理,&#xd;
使用完后code=0;&#xd;
当点击淘宝登录时code=2,登录返回根据code处理,&#xd;
使用完后code=0;&#xd;
当H5授权时code=3,授权返回根据code处理,&#xd;
使用完后code=0;&#xd;
&#xd;
比如Android点击领券或者购买时:&#xd;
当点击登录时code=11,登录返回根据code处理,&#xd;
使用完后code=0;&#xd;
当点击淘宝登录时code=12,登录返回根据code处理,&#xd;
使用完后code=0;&#xd;
当H5授权时code=13,授权返回根据code处理,&#xd;
使用完后code=0;&#xd;
</content>
      <old>每个阶段建议以code做区分:&#xd;
比如Android点击分享时:&#xd;
当点击登录时code=1,登录返回根据code处理,&#xd;
使用完后code=0;&#xd;
当点击淘宝登录时code=2,登录返回根据code处理,&#xd;
使用完后code=0;&#xd;
当H5授权时code=3,授权返回根据code处理,&#xd;
使用完后code=0;&#xd;
&#xd;
比如Android点击领券或者购买时:&#xd;
当点击登录时code=1,登录返回根据code处理,&#xd;
使用完后code=0;&#xd;
当点击淘宝登录时code=2,登录返回根据code处理,&#xd;
使用完后code=0;&#xd;
当H5授权时code=3,授权返回根据code处理,&#xd;
使用完后code=0;&#xd;
</old>
    </net.java.amateras.uml.model.NoteModel>
    <net.java.amateras.uml.model.NoteModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.model.NoteModel[2]"/>
    <net.java.amateras.uml.model.NoteModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[6]/sourceConnections/net.java.amateras.uml.model.AnchorModel/target"/>
    <net.java.amateras.uml.model.NoteModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/parent/children/net.java.amateras.uml.model.NoteModel[4]"/>
    <net.java.amateras.uml.model.NoteModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/parent/children/net.java.amateras.uml.model.NoteModel[5]"/>
    <net.java.amateras.uml.activitydiagram.model.ActionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target"/>
    <net.java.amateras.uml.activitydiagram.model.DecisionModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[6]/targetConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/source"/>
    <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../net.java.amateras.uml.activitydiagram.model.ActionModel/parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.model.AnchorModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[4]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[6]/targetConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/source/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target"/>
  </children>
  <filterProperty/>
</net.java.amateras.uml.activitydiagram.model.ActivityModel>