yujian
2019-01-24 1b1f8fb628c08fc757139a34e2293db8d2529092
Merge remote-tracking branch 'origin/master'
16个文件已修改
13个文件已添加
2551 ■■■■■ 已修改文件
fanli/src/main/java/com/yeshi/fanli/controller/AuthCallBackController.java 93 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/GoodsController.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/RecommendController.java 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/UserInfoController.java 87 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/UserMsgController.java 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/dao/mybatis/taobao/TaoBaoUnionAuthRecordMapper.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/dao/mybatis/user/UserExtraTaoBaoInfoMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/entity/bus/user/UserExtraTaoBaoInfo.java 91 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/entity/taobao/TaoBaoUnionAuthRecord.java 89 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/mapping/goods/ScanHistoryV2Mapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/mapping/taobao/TaoBaoUnionAuthRecordMapper.xml 91 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/mapping/user/UserExtraTaoBaoInfoMapper.xml 94 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/msg/UserSystemMsgServiceImpl.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TaoBaoUnionAuthRecordServiceImpl.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserExtraTaoBaoInfoServiceImpl.java 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/msg/UserSystemMsgService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/taobao/TaoBaoUnionAuthRecordService.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/user/UserExtraTaoBaoInfoService.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/Constant.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/TaoBaoHttpUtil.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/factory/msg/UserMsgVOFactory.java 87 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoUtil.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java 65 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeBaseUtil.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/resource/druid.properties 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/resource/uml/淘宝联盟授权流程.acd 1521 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/test/java/org/fanli/MyBatisProduce.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/test/java/org/fanli/TaoKeTest.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
utils/src/main/java/org/yeshi/utils/taobao/TaoBaoAuthUtil.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/AuthCallBackController.java
New file
@@ -0,0 +1,93 @@
package com.yeshi.fanli.controller;
import java.io.PrintWriter;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.util.Date;
import javax.annotation.Resource;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.entity.taobao.TaoBaoUnionAuthRecord;
import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionAuthRecordService;
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.TaoKeApiUtil;
import net.sf.json.JSONObject;
/**
 * æŽˆæƒå›žè°ƒ
 *
 * @author Administrator
 *
 */
@Controller
@RequestMapping("client/v1/auth/callback")
public class AuthCallBackController {
    @Resource
    private UserExtraTaoBaoInfoService userExtraTaoBaoInfoService;
    @Resource
    private TaoBaoUnionAuthRecordService taoBaoUnionAuthRecordService;
    @RequestMapping(value = "tb")
    public void tb(String code, String state, PrintWriter out) {
        if (StringUtil.isNullOrEmpty(code) || StringUtil.isNullOrEmpty(state))
            return;
        String stateStr = AESUtil.decrypt(state, Constant.UIDAESKEY);
        int errCode = 0;
        if (StringUtil.isNullOrEmpty(stateStr)) {
            // è§£å¯†é”™è¯¯
            errCode = 1;
        }
        JSONObject json = JSONObject.fromObject(stateStr);
        Long time = json.optLong("t");
        Long uid = json.optLong("u");
        if (System.currentTimeMillis() - time > 1000 * 60 * 10L) {
            // è¿‡æ—¶
            errCode = 2;
        }
        if (uid == null || uid.longValue() == 0L)
            errCode = 3;
        // è®¡å…¥è®°å½•
        try {
            String result = TaoKeApiUtil.getAccessToken(code, Constant.TAOBAO_AUTH_APPKEY,
                    Constant.TAOBAO_AUTH_APPSECRET);
            JSONObject data = JSONObject.fromObject(result);
            data = data.optJSONObject("top_auth_token_create_response").optJSONObject("token_result");
            String accessToken = data.optString("access_token");
            String openUid = data.optString("taobao_open_uid");
            String taoBaoUid = data.optString("taobao_user_id");
            String nickName = data.optString("taobao_user_nick");
            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);
            record.setTaoBaoUserId(taoBaoUid);
            record.setTaoBaoUserNick(nickName);
            record.setCreateTime(new Date());
            taoBaoUnionAuthRecordService.addAuthRecord(record);
        } catch (Exception e) {
            errCode = 4;
        }
        out.print("<html><body>绑定错误:错误码(" + errCode + ")</body></html>");
    }
}
fanli/src/main/java/com/yeshi/fanli/controller/client/GoodsController.java
@@ -75,6 +75,7 @@
            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) {
@@ -98,6 +99,7 @@
                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
@@ -16,7 +16,6 @@
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.yeshi.utils.BigDecimalUtil;
import org.yeshi.utils.IPUtil;
import org.yeshi.utils.JsonUtil;
import org.yeshi.utils.NumberUtil;
@@ -69,6 +68,7 @@
import com.yeshi.fanli.exception.goods.ScanHistoryException;
import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException;
import com.yeshi.fanli.exception.taobao.TaobaoGoodsUpdateException;
import com.yeshi.fanli.exception.user.UserCustomSettingsException;
import com.yeshi.fanli.log.LogHelper;
import com.yeshi.fanli.service.inter.common.JumpDetailV2Service;
import com.yeshi.fanli.service.inter.config.ConfigService;
@@ -99,6 +99,7 @@
import com.yeshi.fanli.service.inter.user.ShamUserService;
import com.yeshi.fanli.service.inter.user.ShareManageService;
import com.yeshi.fanli.service.inter.user.TBPidService;
import com.yeshi.fanli.service.inter.user.UserCustomSettingsService;
import com.yeshi.fanli.service.inter.user.UserGoodsStorageService;
import com.yeshi.fanli.service.inter.user.UserInfoService;
import com.yeshi.fanli.util.Constant;
@@ -112,6 +113,7 @@
import com.yeshi.fanli.util.taobao.TaoBaoOrderUtil;
import com.yeshi.fanli.util.taobao.TaoBaoUtil;
import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
import com.yeshi.fanli.vo.user.UserSettingsVO;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
@@ -224,6 +226,9 @@
    @Resource
    private JumpDetailV2Service jumpDetailV2Service;
    @Resource
    private UserCustomSettingsService userCustomSettingsService;
    @RequestMapping(value = "getrecommendsection")
    public void getRecommendSection(AcceptData acceptData, int index, PrintWriter out) {
@@ -1606,7 +1611,8 @@
     * @param out
     */
    @RequestMapping(value = "getNewRecommendInfo")
    public void getNewRecommendInfo(AcceptData acceptData, String specialCard, String swiperCard, PrintWriter out) {
    public void getNewRecommendInfo(AcceptData acceptData, Long uid, String specialCard, String swiperCard,
            PrintWriter out) {
        System system = systemService.getSystemCache(acceptData.getPlatform(), acceptData.getPackages());
        if (system == null) {
@@ -1717,7 +1723,16 @@
            if (("android".equalsIgnoreCase(acceptData.getPlatform()) && Integer.parseInt(acceptData.getVersion()) > 30)
                    || ("ios".equalsIgnoreCase(acceptData.getPlatform())
                            && Integer.parseInt(acceptData.getVersion()) > 37)) {
                root.put("invite", invite);
                if (uid != null) {
                    try {
                        UserSettingsVO vo = userCustomSettingsService.getMySettings(uid);
                        if (vo == null || vo.getNoInvitationBonus() == null || vo.getNoInvitationBonus() == 0)// æ²¡æœ‰å…³é—­é‚€è¯·
                            root.put("invite", invite);
                    } catch (UserCustomSettingsException e) {
                        e.printStackTrace();
                    }
                } else
                    root.put("invite", invite);
            }
        }
fanli/src/main/java/com/yeshi/fanli/controller/client/UserInfoController.java
@@ -211,16 +211,15 @@
    @Resource
    private UserShareGoodsRecordService userShareGoodsRecordService;
    @Resource
    private UserCustomSettingsService userCustomSettingsService;
    @Resource
    private UserInfoExtraService userInfoExtraService;
    @Resource
    private AppVersionService appVersionService;
    private static final String PASSWORD_MAX_ERROR = "password_max_error";
    private static final String EXTRACT_MIN_MONEY = "extract_min_money";
@@ -510,9 +509,8 @@
        BigDecimal fanliHB = user.getTotalHongBao();
        user.setTotalHongBao(fanliHB);
        UserInfo filterForClientUser = UserUtil.filterForClientUser(user);
        // 1.5.0 ç‰ˆæœ¬ä¹‹åŽè¿”回新的等级
        String version = acceptData.getVersion();
        if (version != null && version.trim().length() > 0) {
@@ -533,16 +531,16 @@
                }
            }
        }
        GsonBuilder gsonBuilder = new GsonBuilder().excludeFieldsWithoutExposeAnnotation();
        JSONObject data = new JSONObject();
        data.put("user", JsonUtil.getConvertBigDecimalToStringBuilder(gsonBuilder).create()
                .toJson(filterForClientUser));
        data.put("user",
                JsonUtil.getConvertBigDecimalToStringBuilder(gsonBuilder).create().toJson(filterForClientUser));
        data.put("first", 0);
        int spreadImgCount = spreadUserImgService.countUserSpreadImg(user.getId());
        long shareCount = userShareGoodsRecordService.countShareRecordByUid(user.getId());
        int showTiCheng = 1; // ä¸æ˜¾ç¤º
        if ("ios".equalsIgnoreCase(acceptData.getPlatform())
                && configService.iosOnLining(Integer.parseInt(acceptData.getVersion())))
@@ -560,16 +558,16 @@
                    Constant.systemCommonConfig.getProjectHost(), Constant.systemCommonConfig.getProjectName()));
        else
            data.put("inviteList", configService.get("team_list"));
        // ç•Œé¢çŠ¶æ€
        UserSettingsVO mySettings = null;
        UserSettingsVO mySettings = null;
        try {
            mySettings = userCustomSettingsService.getMySettings(user.getId());
        } catch (UserCustomSettingsException e) {
            mySettings = new UserSettingsVO();
            e.printStackTrace();
        }
        if (mySettings.getCancelNotice() == null) {
            mySettings.setCancelNotice(0);
        }
@@ -585,9 +583,9 @@
        if (mySettings.getNoInvitationBonus() == null) {
            mySettings.setNoInvitationBonus(0);
        }
        data.put("moduleState", mySettings);
        out.print(JsonUtil.loadTrueResult(data));
        final UserInfo uuser = user;
        ThreadUtil.run(new Runnable() {
@@ -597,6 +595,13 @@
                uuser.setLastLoginTime(java.lang.System.currentTimeMillis());
                userInfoService.updateLoginInfo(uuser);
                wxDownService.save(device);
                // æ›´æ–°ç”¨æˆ·é™„加信息,老用户不存在的需要添加
                try {
                    userInfoExtraService.updateUserRankByUid(uuser.getId());
                } catch (UserInfoExtraException e) {
                    e.printStackTrace();
                }
            }
        });
    }
@@ -2012,10 +2017,10 @@
            e.printStackTrace();
        }
    }
    /**
     *  è®¾ç½®ç•Œé¢å¼€å…³çŠ¶æ€
     * è®¾ç½®ç•Œé¢å¼€å…³çŠ¶æ€
     *
     * @param acceptData
     * @param uid
     * @param params
@@ -2028,22 +2033,22 @@
            out.print(JsonUtil.loadFalseResult("用户未登录"));
            return;
        }
        try {
            if (params == null || params.trim().length() == 0) {
                out.print(JsonUtil.loadFalseResult("传递参数为空"));
                return;
            }
            JSONObject json = JSONObject.fromObject(params);
            Iterator<String> iterator = json.keys();
            while(iterator.hasNext()){
                 String type = (String) iterator.next();
                 int state = json.getInt(type);
                 userCustomSettingsService.saveModuleState(uid, type, state);
            Iterator<String> iterator = json.keys();
            while (iterator.hasNext()) {
                String type = (String) iterator.next();
                int state = json.getInt(type);
                userCustomSettingsService.saveModuleState(uid, type, state);
            }
            out.print(JsonUtil.loadTrueResult("设置成功"));
        } catch (UserCustomSettingsException e) {
            out.print(JsonUtil.loadFalseResult(e.getMsg()));
        } catch (Exception e) {
@@ -2052,9 +2057,9 @@
        }
    }
    /**
     *  èŽ·å–ç­‰çº§ä¿¡æ¯
     * èŽ·å–ç­‰çº§ä¿¡æ¯
     *
     * @param acceptData
     * @param uid
     * @param out
@@ -2066,20 +2071,18 @@
            out.print(JsonUtil.loadFalseResult("用户未登录"));
            return;
        }
        try {
            UserInfoExtraVO rankInfo = userInfoExtraService.getRankInfo(uid);
            GsonBuilder gsonBuilder = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder());
            gsonBuilder.excludeFieldsWithoutExposeAnnotation();
            Gson gson = gsonBuilder.setDateFormat("yyyy.MM.dd").create();
            JSONObject resultData = new JSONObject();
            resultData.put("rankInfo", gson.toJson(rankInfo));
            out.print(JsonUtil.loadTrueResult(resultData));
        } catch (UserInfoExtraException e) {
            out.print(JsonUtil.loadFalseResult(e.getMsg()));
        } catch (Exception e) {
@@ -2088,9 +2091,9 @@
        }
    }
    /**
     *  èŽ·å–ç­‰çº§ä¿¡æ¯
     * èŽ·å–ç­‰çº§ä¿¡æ¯
     *
     * @param acceptData
     * @param uid
     * @param out
@@ -2102,11 +2105,11 @@
            out.print(JsonUtil.loadFalseResult("用户未登录"));
            return;
        }
        try {
            String inviteCode = userInfoExtraService.getUserInviteCode(uid);
            JSONObject inviteData = new JSONObject();
            if (inviteCode == null || inviteCode.trim().length() == 0) {
                // æ— é‚€è¯·ç 
@@ -2117,12 +2120,12 @@
                inviteData.put("content", "邀请码");
                inviteData.put("link", configService.get("invite_activation_success_url"));
            }
            JSONObject data = new JSONObject();
            data.put("invite", inviteData);
            out.print(JsonUtil.loadTrueResult(data));
        } catch (UserInfoExtraException e) {
            out.print(JsonUtil.loadFalseResult(e.getMsg()));
        } catch (Exception e) {
fanli/src/main/java/com/yeshi/fanli/controller/client/UserMsgController.java
@@ -40,6 +40,7 @@
import com.yeshi.fanli.exception.goods.CommonGoodsException;
import com.yeshi.fanli.exception.goods.RecommendUserGoodsException;
import com.yeshi.fanli.exception.msg.UserSystemMsgException;
import com.yeshi.fanli.exception.user.UserCustomSettingsException;
import com.yeshi.fanli.service.inter.goods.CommonGoodsService;
import com.yeshi.fanli.service.inter.goods.RecommendUserGoodsService;
import com.yeshi.fanli.service.inter.lable.QualityFactoryService;
@@ -49,6 +50,7 @@
import com.yeshi.fanli.service.inter.msg.MsgOrderDetailService;
import com.yeshi.fanli.service.inter.msg.UserMsgReadStateService;
import com.yeshi.fanli.service.inter.msg.UserSystemMsgService;
import com.yeshi.fanli.service.inter.user.UserCustomSettingsService;
import com.yeshi.fanli.service.inter.user.UserInfoService;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.StringUtil;
@@ -59,6 +61,7 @@
import com.yeshi.fanli.vo.msg.UserHomeMsgVO;
import com.yeshi.fanli.vo.msg.UserMsgVO;
import com.yeshi.fanli.vo.msg.UserSystemMsgVO;
import com.yeshi.fanli.vo.user.UserSettingsVO;
import net.sf.json.JSONObject;
@@ -95,6 +98,9 @@
    @Resource
    private QualityFactoryService qualityFactoryService;
    @Resource
    private UserCustomSettingsService userCustomSettingsService;
    // æ¶ˆæ¯çš„类型
    final static String MSG_TYPE_ORDER = "order";
@@ -186,6 +192,16 @@
        JSONObject data = JSONObject.fromObject(JsonUtil.getApiCommonGson().toJson(num));
        data.put("totalCount", num.getTypeAccount() + num.getTypeInvite() + num.getTypeMoney() + num.getTypeOrder()
                + num.getTypeScore() + num.getTypeSystem());
        try {
            UserSettingsVO vo = userCustomSettingsService.getMySettings(uid);
            if (vo != null && vo.getNoNewsRedDot() != null && vo.getNoNewsRedDot() == 1) {
                data.put("totalCount", 0);
            }
        } catch (UserCustomSettingsException e) {
            e.printStackTrace();
        }
        out.print(JsonUtil.loadTrueResult(data));
    }
@@ -398,8 +414,7 @@
            UserSystemMsg usm = userSystemMsgService.getLatestUserSystemMsg(uid);
            if (usm != null)
                root.put("systemMsg",
                        new UserSystemMsgVO(usm.getId(), usm.getType().name(), usm.getSolved(), usm.getTitle(),
                                usm.getContent(),
                        new UserSystemMsgVO(usm.getId(), usm.getType().name(), usm.getSolved(), "系统消息", usm.getTitle(),
                                usm.getTimeTag() == 1 ? "http://img.flqapp.com/resource/msg/icon_emergent.png" : "",
                                "http://img.flqapp.com/resource/msg/icon_msg_system.png",
                                getTimeDesc(now, usm.getCreateTime()), num.getTypeSystem()));
fanli/src/main/java/com/yeshi/fanli/dao/mybatis/taobao/TaoBaoUnionAuthRecordMapper.java
New file
@@ -0,0 +1,9 @@
package com.yeshi.fanli.dao.mybatis.taobao;
import com.yeshi.fanli.dao.BaseMapper;
import com.yeshi.fanli.entity.taobao.TaoBaoUnionAuthRecord;
public interface TaoBaoUnionAuthRecordMapper extends BaseMapper<TaoBaoUnionAuthRecord>{
}
fanli/src/main/java/com/yeshi/fanli/dao/mybatis/user/UserExtraTaoBaoInfoMapper.java
New file
@@ -0,0 +1,16 @@
package com.yeshi.fanli.dao.mybatis.user;
import com.yeshi.fanli.dao.BaseMapper;
import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo;
public interface UserExtraTaoBaoInfoMapper extends BaseMapper<UserExtraTaoBaoInfo> {
    /**
     * æ ¹æ®ç”¨æˆ·ID查询对象
     *
     * @param uid
     * @return
     */
    UserExtraTaoBaoInfo selectByUid(Long uid);
}
fanli/src/main/java/com/yeshi/fanli/entity/bus/user/UserExtraTaoBaoInfo.java
New file
@@ -0,0 +1,91 @@
package com.yeshi.fanli.entity.bus.user;
import java.util.Date;
import org.yeshi.utils.mybatis.Column;
import org.yeshi.utils.mybatis.Table;
@Table("yeshi_ec_user_info_extra_taobao")
public class UserExtraTaoBaoInfo {
    @Column(name = "uiet_id")
    private Long id;
    @Column(name = "uiet_uid")
    private UserInfo user;
    @Column(name = "uiet_relation_id")
    private String relationId;
    @Column(name = "uiet_relation_update_time")
    private Date relationUpdateTime;
    @Column(name = "uiet_special_id")
    private String specialId;
    @Column(name = "uiet_special_update_time")
    private Date specialUpdateTime;
    @Column(name = "uiet_create_time")
    private Date createTime;
    @Column(name = "uiet_update_time")
    private Date updateTime;
    public Long getId() {
        return id;
    }
    public void setId(Long id) {
        this.id = id;
    }
    public UserInfo getUser() {
        return user;
    }
    public void setUser(UserInfo user) {
        this.user = user;
    }
    public String getRelationId() {
        return relationId;
    }
    public void setRelationId(String relationId) {
        this.relationId = relationId;
    }
    public Date getRelationUpdateTime() {
        return relationUpdateTime;
    }
    public void setRelationUpdateTime(Date relationUpdateTime) {
        this.relationUpdateTime = relationUpdateTime;
    }
    public String getSpecialId() {
        return specialId;
    }
    public void setSpecialId(String specialId) {
        this.specialId = specialId;
    }
    public Date getSpecialUpdateTime() {
        return specialUpdateTime;
    }
    public void setSpecialUpdateTime(Date specialUpdateTime) {
        this.specialUpdateTime = specialUpdateTime;
    }
    public Date getCreateTime() {
        return createTime;
    }
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
    public Date getUpdateTime() {
        return updateTime;
    }
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }
}
fanli/src/main/java/com/yeshi/fanli/entity/taobao/TaoBaoUnionAuthRecord.java
New file
@@ -0,0 +1,89 @@
package com.yeshi.fanli.entity.taobao;
import java.util.Date;
import org.yeshi.utils.mybatis.Column;
import org.yeshi.utils.mybatis.Table;
import com.yeshi.fanli.entity.bus.user.UserInfo;
/**
 * æ·˜å®è”盟授权记录
 *
 * @author Administrator
 *
 */
@Table("yeshi_ec_taobao_union_auth_record")
public class TaoBaoUnionAuthRecord {
    @Column(name = "tuar_id")
    private Long id;
    @Column(name = "tuar_uid")
    private UserInfo user;
    @Column(name = "tuar_taobao_user_nick")
    private String taoBaoUserNick;
    @Column(name = "tuar_taobao_open_uid")
    private String taoBaoOpenUid;
    @Column(name = "tuar_taobao_user_id")
    private String taoBaoUserId;
    @Column(name = "tuar_create_time")
    private Date createTime;
    @Column(name = "tuar_update_time")
    private Date updateTime;
    public Long getId() {
        return id;
    }
    public void setId(Long id) {
        this.id = id;
    }
    public UserInfo getUser() {
        return user;
    }
    public void setUser(UserInfo user) {
        this.user = user;
    }
    public String getTaoBaoUserNick() {
        return taoBaoUserNick;
    }
    public void setTaoBaoUserNick(String taoBaoUserNick) {
        this.taoBaoUserNick = taoBaoUserNick;
    }
    public String getTaoBaoOpenUid() {
        return taoBaoOpenUid;
    }
    public void setTaoBaoOpenUid(String taoBaoOpenUid) {
        this.taoBaoOpenUid = taoBaoOpenUid;
    }
    public String getTaoBaoUserId() {
        return taoBaoUserId;
    }
    public void setTaoBaoUserId(String taoBaoUserId) {
        this.taoBaoUserId = taoBaoUserId;
    }
    public Date getCreateTime() {
        return createTime;
    }
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
    public Date getUpdateTime() {
        return updateTime;
    }
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }
}
fanli/src/main/java/com/yeshi/fanli/mapping/goods/ScanHistoryV2Mapper.xml
@@ -29,7 +29,7 @@
    <!-- æ ¹æ®UID或者设备号获取浏览记录 -->
    <select id="selectByDeviceOrUid" resultMap="BaseResultMap">
        SELECT s.*,MAX(s.`s_id`) AS orderid FROM yeshi_ec_scanhistory_v2 s
        SELECT s.*,MAX(s.`s_createtime`) AS orderid FROM yeshi_ec_scanhistory_v2 s
        WHERE
        <trim prefix="(" suffix=")" suffixOverrides="or">
            <if test="uid != null"> s.`s_uid`=#{uid,jdbcType=BIGINT} or</if>
fanli/src/main/java/com/yeshi/fanli/mapping/taobao/TaoBaoUnionAuthRecordMapper.xml
New file
@@ -0,0 +1,91 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yeshi.fanli.dao.mybatis.taobao.TaoBaoUnionAuthRecordMapper">
    <resultMap id="BaseResultMap"
        type="com.yeshi.fanli.entity.taobao.TaoBaoUnionAuthRecord">
        <id column="tuar_id" property="id" jdbcType="BIGINT" />
        <result column="tuar_taobao_user_nick" property="taoBaoUserNick"
            jdbcType="VARCHAR" />
        <result column="tuar_taobao_open_uid" property="taoBaoOpenUid"
            jdbcType="VARCHAR" />
        <result column="tuar_taobao_user_id" property="taoBaoUserId"
            jdbcType="VARCHAR" />
        <result column="tuar_create_time" property="createTime"
            jdbcType="TIMESTAMP" />
        <result column="tuar_update_time" property="updateTime"
            jdbcType="TIMESTAMP" />
        <association property="user" column="tuar_uid"
            javaType="com.yeshi.fanli.entity.bus.user.UserInfo">
            <id column="tuar_uid" property="id" />
        </association>
    </resultMap>
    <sql id="Base_Column_List">tuar_id,tuar_uid,tuar_taobao_user_nick,tuar_taobao_open_uid,tuar_taobao_user_id,tuar_create_time,tuar_update_time
    </sql>
    <select id="selectByPrimaryKey" resultMap="BaseResultMap"
        parameterType="java.lang.Long">
        select
        <include refid="Base_Column_List" />
        from yeshi_ec_taobao_union_auth_record where tuar_id =
        #{id,jdbcType=BIGINT}
    </select>
    <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">delete from
        yeshi_ec_taobao_union_auth_record where tuar_id =
        #{id,jdbcType=BIGINT}
    </delete>
    <insert id="insert" parameterType="com.yeshi.fanli.entity.taobao.TaoBaoUnionAuthRecord"
        useGeneratedKeys="true" keyProperty="id">insert into
        yeshi_ec_taobao_union_auth_record
        (tuar_id,tuar_uid,tuar_taobao_user_nick,tuar_taobao_open_uid,tuar_taobao_user_id,tuar_create_time,tuar_update_time)
        values
        (#{id,jdbcType=BIGINT},#{user.id,jdbcType=BIGINT},#{taoBaoUserNick,jdbcType=VARCHAR},#{taoBaoOpenUid,jdbcType=VARCHAR},#{taoBaoUserId,jdbcType=VARCHAR},#{createTime,jdbcType=TIMESTAMP},#{updateTime,jdbcType=TIMESTAMP})
    </insert>
    <insert id="insertSelective" parameterType="com.yeshi.fanli.entity.taobao.TaoBaoUnionAuthRecord"
        useGeneratedKeys="true" keyProperty="id">
        insert into yeshi_ec_taobao_union_auth_record
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="id != null">tuar_id,</if>
            <if test="user != null">tuar_uid,</if>
            <if test="taoBaoUserNick != null">tuar_taobao_user_nick,</if>
            <if test="taoBaoOpenUid != null">tuar_taobao_open_uid,</if>
            <if test="taoBaoUserId != null">tuar_taobao_user_id,</if>
            <if test="createTime != null">tuar_create_time,</if>
            <if test="updateTime != null">tuar_update_time,</if>
        </trim>
        values
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="id != null">#{id,jdbcType=BIGINT},</if>
            <if test="user != null">#{user.id,jdbcType=BIGINT},</if>
            <if test="taoBaoUserNick != null">#{taoBaoUserNick,jdbcType=VARCHAR},</if>
            <if test="taoBaoOpenUid != null">#{taoBaoOpenUid,jdbcType=VARCHAR},</if>
            <if test="taoBaoUserId != null">#{taoBaoUserId,jdbcType=VARCHAR},</if>
            <if test="createTime != null">#{createTime,jdbcType=TIMESTAMP},</if>
            <if test="updateTime != null">#{updateTime,jdbcType=TIMESTAMP},</if>
        </trim>
    </insert>
    <update id="updateByPrimaryKey" parameterType="com.yeshi.fanli.entity.taobao.TaoBaoUnionAuthRecord">update
        yeshi_ec_taobao_union_auth_record set tuar_uid =
        #{user.id,jdbcType=BIGINT},tuar_taobao_user_nick =
        #{taoBaoUserNick,jdbcType=VARCHAR},tuar_taobao_open_uid =
        #{taoBaoOpenUid,jdbcType=VARCHAR},tuar_taobao_user_id =
        #{taoBaoUserId,jdbcType=VARCHAR},tuar_create_time =
        #{createTime,jdbcType=TIMESTAMP},tuar_update_time =
        #{updateTime,jdbcType=TIMESTAMP} where tuar_id = #{id,jdbcType=BIGINT}
    </update>
    <update id="updateByPrimaryKeySelective" parameterType="com.yeshi.fanli.entity.taobao.TaoBaoUnionAuthRecord">
        update yeshi_ec_taobao_union_auth_record
        <set>
            <if test="user != null">tuar_uid=#{user.id,jdbcType=BIGINT},</if>
            <if test="taoBaoUserNick != null">tuar_taobao_user_nick=#{taoBaoUserNick,jdbcType=VARCHAR},
            </if>
            <if test="taoBaoOpenUid != null">tuar_taobao_open_uid=#{taoBaoOpenUid,jdbcType=VARCHAR},
            </if>
            <if test="taoBaoUserId != null">tuar_taobao_user_id=#{taoBaoUserId,jdbcType=VARCHAR},
            </if>
            <if test="createTime != null">tuar_create_time=#{createTime,jdbcType=TIMESTAMP},</if>
            <if test="updateTime != null">tuar_update_time=#{updateTime,jdbcType=TIMESTAMP},</if>
        </set>
        where tuar_id = #{id,jdbcType=BIGINT}
    </update>
</mapper>
fanli/src/main/java/com/yeshi/fanli/mapping/user/UserExtraTaoBaoInfoMapper.xml
New file
@@ -0,0 +1,94 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yeshi.fanli.dao.mybatis.user.UserExtraTaoBaoInfoMapper">
    <resultMap id="BaseResultMap"
        type="com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo">
        <id column="uiet_id" property="id" jdbcType="BIGINT" />
        <result column="uiet_relation_id" property="relationId"
            jdbcType="VARCHAR" />
        <result column="uiet_relation_update_time" property="relationUpdateTime"
            jdbcType="TIMESTAMP" />
        <result column="uiet_special_id" property="specialId" jdbcType="VARCHAR" />
        <result column="uiet_special_update_time" property="specialUpdateTime"
            jdbcType="TIMESTAMP" />
        <result column="uiet_create_time" property="createTime"
            jdbcType="TIMESTAMP" />
        <result column="uiet_update_time" property="updateTime"
            jdbcType="TIMESTAMP" />
        <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>
    <select id="selectByPrimaryKey" resultMap="BaseResultMap"
        parameterType="java.lang.Long">
        select
        <include refid="Base_Column_List" />
        from yeshi_ec_user_info_extra_taobao where uiet_id =
        #{id,jdbcType=BIGINT}
    </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)
        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})
    </insert>
    <insert id="insertSelective" parameterType="com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo"
        useGeneratedKeys="true" keyProperty="id">
        insert into yeshi_ec_user_info_extra_taobao
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="id != null">uiet_id,</if>
            <if test="user != null">uiet_uid,</if>
            <if test="relationId != null">uiet_relation_id,</if>
            <if test="relationUpdateTime != null">uiet_relation_update_time,</if>
            <if test="specialId != null">uiet_special_id,</if>
            <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>
        </trim>
        values
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="id != null">#{id,jdbcType=BIGINT},</if>
            <if test="user != null">#{user.id,jdbcType=BIGINT},</if>
            <if test="relationId != null">#{relationId,jdbcType=VARCHAR},</if>
            <if test="relationUpdateTime != null">#{relationUpdateTime,jdbcType=TIMESTAMP},</if>
            <if test="specialId != null">#{specialId,jdbcType=VARCHAR},</if>
            <if test="specialUpdateTime != null">#{specialUpdateTime,jdbcType=TIMESTAMP},</if>
            <if test="createTime != null">#{createTime,jdbcType=TIMESTAMP},</if>
            <if test="updateTime != null">#{updateTime,jdbcType=TIMESTAMP},</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 =
        #{relationId,jdbcType=VARCHAR},uiet_relation_update_time =
        #{relationUpdateTime,jdbcType=TIMESTAMP},uiet_special_id =
        #{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}
    </update>
    <update id="updateByPrimaryKeySelective" parameterType="com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo">
        update yeshi_ec_user_info_extra_taobao
        <set>
            <if test="user != null">uiet_uid=#{user.id,jdbcType=BIGINT},</if>
            <if test="relationId != null">uiet_relation_id=#{relationId,jdbcType=VARCHAR},</if>
            <if test="relationUpdateTime != null">uiet_relation_update_time=#{relationUpdateTime,jdbcType=TIMESTAMP},
            </if>
            <if test="specialId != null">uiet_special_id=#{specialId,jdbcType=VARCHAR},</if>
            <if test="specialUpdateTime != null">uiet_special_update_time=#{specialUpdateTime,jdbcType=TIMESTAMP},
            </if>
            <if test="createTime != null">uiet_create_time=#{createTime,jdbcType=TIMESTAMP},</if>
            <if test="updateTime != null">uiet_update_time=#{updateTime,jdbcType=TIMESTAMP},</if>
        </set>
        where uiet_id = #{id,jdbcType=BIGINT}
    </update>
</mapper>
fanli/src/main/java/com/yeshi/fanli/service/impl/msg/UserSystemMsgServiceImpl.java
@@ -7,6 +7,8 @@
import org.springframework.stereotype.Service;
import com.yeshi.fanli.dao.config.SystemZnxDao;
import com.yeshi.fanli.dao.mybatis.UserInfoMapper;
import com.yeshi.fanli.dao.mybatis.msg.UserSystemMsgMapper;
import com.yeshi.fanli.entity.bus.msg.UserSystemMsg;
import com.yeshi.fanli.entity.bus.msg.UserSystemMsgTypeEnum;
@@ -25,6 +27,12 @@
    @Resource
    private UserMsgReadStateService userMsgReadStateService;
    @Resource
    private UserInfoMapper userInfoMapper;
    @Resource
    private SystemZnxDao systemZnxDao;
    @Override
    public void addUserSystemMsg(Long uid, UserSystemMsgTypeEnum type, String title, String content, int timeTag,
@@ -104,4 +112,25 @@
        userSystemMsgMapper.setMsgReadByUid(uid);
    }
    @Override
    public void syncSystemZNX(Long uid) {
        UserInfo user = userInfoMapper.selectByPrimaryKey(uid);
        if (user == null)
            return;
        long createtTime = user.getCreatetime();
        List<SystemZnx> list = systemZnxDao.list("from SystemZnx s where s.createTime>=" + createtTime);
        if (list != null && list.size() > 0) {
            for (SystemZnx znx : list) {
                UserSystemMsg msg = userSystemMsgMapper.selectBySystemZNXId(znx.getId());
                if (msg == null)
                    try {
                        addUserSystemMsg(uid, UserSystemMsgTypeEnum.common, null, null, UserSystemMsg.TIME_TAG_COMMON, znx);
                    } catch (UserSystemMsgException e) {
                        e.printStackTrace();
                    }
            }
        }
    }
}
fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TaoBaoUnionAuthRecordServiceImpl.java
New file
@@ -0,0 +1,25 @@
package com.yeshi.fanli.service.impl.taobao;
import java.util.Date;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import com.yeshi.fanli.dao.mybatis.taobao.TaoBaoUnionAuthRecordMapper;
import com.yeshi.fanli.entity.taobao.TaoBaoUnionAuthRecord;
import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionAuthRecordService;
@Service
public class TaoBaoUnionAuthRecordServiceImpl implements TaoBaoUnionAuthRecordService {
    @Resource
    private TaoBaoUnionAuthRecordMapper taoBaoUnionAuthRecordMapper;
    @Override
    public void addAuthRecord(TaoBaoUnionAuthRecord record) {
        record.setCreateTime(new Date());
        taoBaoUnionAuthRecordMapper.insertSelective(record);
    }
}
fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserExtraTaoBaoInfoServiceImpl.java
New file
@@ -0,0 +1,64 @@
package com.yeshi.fanli.service.impl.user;
import java.util.Date;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import com.yeshi.fanli.dao.mybatis.user.UserExtraTaoBaoInfoMapper;
import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo;
import com.yeshi.fanli.service.inter.user.UserExtraTaoBaoInfoService;
@Service
public class UserExtraTaoBaoInfoServiceImpl implements UserExtraTaoBaoInfoService {
    @Resource
    private UserExtraTaoBaoInfoMapper userExtraTaoBaoInfoMapper;
    @Override
    public void addRelationId(Long uid, String relationId) {
        if (uid == null || relationId == null)
            return;
        UserExtraTaoBaoInfo info = getByUid(uid);
        if (info == null) {
            info = new UserExtraTaoBaoInfo();
            info.setCreateTime(new Date());
            info.setRelationId(relationId);
            info.setRelationUpdateTime(new Date());
            userExtraTaoBaoInfoMapper.insertSelective(info);
        } else {
            UserExtraTaoBaoInfo update = new UserExtraTaoBaoInfo();
            update.setId(info.getId());
            update.setRelationId(relationId);
            update.setRelationUpdateTime(new Date());
            userExtraTaoBaoInfoMapper.updateByPrimaryKeySelective(update);
        }
    }
    @Override
    public void addSpecialId(Long uid, String specialId) {
        if (uid == null || specialId == null)
            return;
        UserExtraTaoBaoInfo info = getByUid(uid);
        if (info == null) {
            info = new UserExtraTaoBaoInfo();
            info.setCreateTime(new Date());
            info.setSpecialId(specialId);
            info.setSpecialUpdateTime(new Date());
            userExtraTaoBaoInfoMapper.insertSelective(info);
        } else {
            UserExtraTaoBaoInfo update = new UserExtraTaoBaoInfo();
            update.setId(info.getId());
            update.setSpecialId(specialId);
            update.setSpecialUpdateTime(new Date());
            userExtraTaoBaoInfoMapper.updateByPrimaryKeySelective(update);
        }
    }
    @Override
    public UserExtraTaoBaoInfo getByUid(Long uid) {
        return userExtraTaoBaoInfoMapper.selectByUid(uid);
    }
}
fanli/src/main/java/com/yeshi/fanli/service/inter/msg/UserSystemMsgService.java
@@ -29,6 +29,13 @@
            SystemZnx sz) throws UserSystemMsgException;
    /**
     * åŒæ­¥ç³»ç»Ÿç«™å†…ä¿¡
     *
     * @param uid
     */
    public void syncSystemZNX(Long uid);
    /**
     * èŽ·å–æœ€è¿‘ä¸€æ¬¡çš„ç³»ç»Ÿæ¶ˆæ¯
     * 
     * @param uid
fanli/src/main/java/com/yeshi/fanli/service/inter/taobao/TaoBaoUnionAuthRecordService.java
New file
@@ -0,0 +1,14 @@
package com.yeshi.fanli.service.inter.taobao;
import com.yeshi.fanli.entity.taobao.TaoBaoUnionAuthRecord;
public interface TaoBaoUnionAuthRecordService {
    /**
     * æ·»åŠ æŽˆæƒè®°å½•
     *
     * @param record
     */
    public void addAuthRecord(TaoBaoUnionAuthRecord record);
}
fanli/src/main/java/com/yeshi/fanli/service/inter/user/UserExtraTaoBaoInfoService.java
New file
@@ -0,0 +1,37 @@
package com.yeshi.fanli.service.inter.user;
import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo;
/**
 * ç”¨æˆ·æ·˜å®è”盟服务
 *
 * @author Administrator
 *
 */
public interface UserExtraTaoBaoInfoService {
    /**
     * æ·»åŠ æ¸ é“ID
     *
     * @param uid
     * @param relationId
     */
    public void addRelationId(Long uid, String relationId);
    /**
     * æ·»åŠ ä¼šå‘˜ID
     *
     * @param uid
     * @param specialId
     */
    public void addSpecialId(Long uid, String specialId);
    /**
     * é€šè¿‡UID获取淘宝联盟渠道信息
     *
     * @param uid
     * @return
     */
    public UserExtraTaoBaoInfo getByUid(Long uid);
}
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 = false;
    public static boolean IS_OUTNET = true;
    public static boolean IS_TEST = true;
@@ -73,20 +73,20 @@
    public static final String MYLIKE = "mylike";
    public static final String MYDYNAMIC = "mydynamic";
    public static final String TAOBAO_AUTH_APPKEY = "24980167";
    public static final String TAOBAO_AUTH_APPSECRET = "e0a2e05deabf5ce039b52e5b492d5382";
    // æ¥æº-淘宝
    public static final int SOURCE_TYPE_TAOBAO = 1;
    // æ¥æº-京东
    public static final int SOURCE_TYPE_JD = 2;
    // è‡ªè´­-返利
    public static final int TYPE_REBATE= 1;
    public static final int TYPE_REBATE = 1;
    // åˆ†äº«
    public static final int TYPE_SHAER = 2;
    // é‚€è¯·
    public static final int TYPE_INVITE = 3;
    public static WXGZConfig wxGZConfig;
fanli/src/main/java/com/yeshi/fanli/util/TaoBaoHttpUtil.java
@@ -277,7 +277,9 @@
        // result = get("http://118.178.179.189/taoke/", params, false);
        // if (StringUtil.isNullOrEmpty(result))
        String result = get("http://gw.api.taobao.com/router/rest", params, false);
        //https://eco.taobao.com/router/rest
        //http://gw.api.taobao.com/router/rest
        String result = get("https://eco.taobao.com/router/rest", params, false);
        return result;
    }
fanli/src/main/java/com/yeshi/fanli/util/factory/msg/UserMsgVOFactory.java
@@ -37,50 +37,51 @@
        List<CommonMsgItemVO> items = new ArrayList<>();
        List<ClientTextStyleVO> contentList = new ArrayList<>();
        contentList.add(new ClientTextStyleVO(msg.getOrderId(), "#000000"));
        items.add(new CommonMsgItemVO(new ClientTextStyleVO("订单号", "#888888"), contentList));
        contentList.add(new ClientTextStyleVO(msg.getOrderId(), COLOR_CONTENT));
        items.add(new CommonMsgItemVO(new ClientTextStyleVO("订单号", COLOR_TITLE), contentList));
        contentList = new ArrayList<>();
        contentList.add(new ClientTextStyleVO("共", "#000000"));
        contentList.add(new ClientTextStyleVO(msg.getGoodsCount() + "", "#E5005C"));
        contentList.add(new ClientTextStyleVO("件商品", "#000000"));
        items.add(new CommonMsgItemVO(new ClientTextStyleVO("商品数量", "#888888"), contentList));
        contentList.add(new ClientTextStyleVO("共", COLOR_CONTENT));
        contentList.add(new ClientTextStyleVO(msg.getGoodsCount() + "", COLOR_HIGHLIGHT_CONTENT));
        contentList.add(new ClientTextStyleVO("件商品", COLOR_CONTENT));
        items.add(new CommonMsgItemVO(new ClientTextStyleVO("商品数量", COLOR_TITLE), contentList));
        contentList = new ArrayList<>();
        contentList.add(new ClientTextStyleVO(msg.getType().getDesc(), "#000000"));
        items.add(new CommonMsgItemVO(new ClientTextStyleVO("订单类型", "#888888"), contentList));
        contentList.add(new ClientTextStyleVO(msg.getType().getDesc(), COLOR_CONTENT));
        items.add(new CommonMsgItemVO(new ClientTextStyleVO("订单类型", COLOR_TITLE), contentList));
        contentList = new ArrayList<>();
        if (msg.getState() == MsgOrderDetail.STATE_FK)
            contentList.add(new ClientTextStyleVO("已付款", "#E5005C"));
            contentList.add(new ClientTextStyleVO("已付款", COLOR_HIGHLIGHT_CONTENT));
        else if (msg.getState() == MsgOrderDetail.STATE_JS)
            contentList.add(new ClientTextStyleVO("已收货", "#E5005C"));
            contentList.add(new ClientTextStyleVO("已收货", COLOR_HIGHLIGHT_CONTENT));
        else if (msg.getState() == MsgOrderDetail.STATE_SX)
            contentList.add(new ClientTextStyleVO("未付款/已退款", "#E5005C"));
            contentList.add(new ClientTextStyleVO("未付款/已退款", COLOR_HIGHLIGHT_CONTENT));
        else if (msg.getState() == MsgOrderDetail.STATE_WQ)
            contentList.add(new ClientTextStyleVO("已维权", "#E5005C"));
            contentList.add(new ClientTextStyleVO("已维权", COLOR_HIGHLIGHT_CONTENT));
        items.add(new CommonMsgItemVO(new ClientTextStyleVO("订单状态", "#888888"), contentList));
        items.add(new CommonMsgItemVO(new ClientTextStyleVO("订单状态", COLOR_TITLE), contentList));
        contentList = new ArrayList<>();
        contentList.add(new ClientTextStyleVO("Â¥" + MoneyBigDecimalUtil.getWithNoZera(msg.getPayMoney()), "#E5005C"));
        items.add(new CommonMsgItemVO(new ClientTextStyleVO("付款金额", "#888888"), contentList));
        contentList.add(new ClientTextStyleVO("Â¥" + MoneyBigDecimalUtil.getWithNoZera(msg.getPayMoney()),
                COLOR_HIGHLIGHT_CONTENT));
        items.add(new CommonMsgItemVO(new ClientTextStyleVO("付款金额", COLOR_TITLE), contentList));
        contentList = new ArrayList<>();
        contentList
                .add(new ClientTextStyleVO("Â¥" + MoneyBigDecimalUtil.getWithNoZera(msg.getHongBaoMoney()), "#E5005C"));
        contentList.add(new ClientTextStyleVO("Â¥" + MoneyBigDecimalUtil.getWithNoZera(msg.getHongBaoMoney()),
                COLOR_HIGHLIGHT_CONTENT));
        if (msg.getType() == MsgTypeOrderTypeEnum.fanli)
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("返利金额", "#888888"), contentList));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("返利金额", COLOR_TITLE), contentList));
        else if (msg.getType() == MsgTypeOrderTypeEnum.share)
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("分享奖金", "#888888"), contentList));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("分享奖金", COLOR_TITLE), contentList));
        else if (msg.getType() == MsgTypeOrderTypeEnum.invite)
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("邀请奖金", "#888888"), contentList));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("邀请奖金", COLOR_TITLE), contentList));
        contentList = new ArrayList<>();
        contentList.add(
                new ClientTextStyleVO(StringUtil.isNullOrEmpty(msg.getBeiZhu()) ? "无" : msg.getBeiZhu(), "#000000"));
        items.add(new CommonMsgItemVO(new ClientTextStyleVO("备注", "#888888"), contentList));
        contentList.add(new ClientTextStyleVO(StringUtil.isNullOrEmpty(msg.getBeiZhu()) ? "无" : msg.getBeiZhu(),
                COLOR_CONTENT));
        items.add(new CommonMsgItemVO(new ClientTextStyleVO("备注", COLOR_TITLE), contentList));
        return new UserMsgVO("http://img.flqapp.com/resource/msg/icon_msg_order.png", "订单消息",
                msg.getUpdateTime() == null ? msg.getCreateTime() : msg.getUpdateTime(), items);
    }
@@ -106,12 +107,12 @@
            ba = UserUtil.filterBindingAccount(ba);
            contentList.add(new ClientTextStyleVO("支付宝:" + ba.getName() + " " + ba.getAccount(), COLOR_CONTENT));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("提现账号", COLOR_CONTENT), contentList));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("提现账号", COLOR_TITLE), contentList));
            contentList = new ArrayList<>();
            contentList.add(new ClientTextStyleVO("Â¥" + MoneyBigDecimalUtil.getWithNoZera(msg.getExtract().getMoney()),
                    COLOR_HIGHLIGHT_CONTENT));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("提现金额", "#888888"), contentList));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("提现金额", COLOR_TITLE), contentList));
            contentList = new ArrayList<>();
            if (msg.getExtract().getState() == Extract.STATE_NOT_PROCESS
@@ -121,7 +122,7 @@
                contentList.add(new ClientTextStyleVO("已通过", COLOR_HIGHLIGHT_CONTENT));
            else if (msg.getExtract().getState() == Extract.STATE_REJECT)
                contentList.add(new ClientTextStyleVO("提现被拒绝", COLOR_HIGHLIGHT_CONTENT));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("提现状态", "#888888"), contentList));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("提现状态", COLOR_TITLE), contentList));
            contentList = new ArrayList<>();
            if (msg.getExtract().getState() == Extract.STATE_NOT_PROCESS
@@ -131,25 +132,25 @@
                contentList.add(new ClientTextStyleVO("无", COLOR_CONTENT));
            else if (msg.getExtract().getState() == Extract.STATE_REJECT)
                contentList.add(new ClientTextStyleVO(msg.getExtract().getReason(), COLOR_CONTENT));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("状态说明", "#888888"), contentList));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("状态说明", COLOR_TITLE), contentList));
            contentList = new ArrayList<>();
            contentList.add(new ClientTextStyleVO(
                    TimeUtil.getGernalTime(msg.getExtract().getExtractTime()+1000*60*60*24L, "yyyy-MM-dd HH:mm"), COLOR_CONTENT));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("预计到账", "#888888"), contentList));
            contentList.add(new ClientTextStyleVO(TimeUtil.getGernalTime(
                    msg.getExtract().getExtractTime() + 1000 * 60 * 60 * 24L, "yyyy-MM-dd HH:mm"), COLOR_CONTENT));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("预计到账", COLOR_TITLE), contentList));
            if (msg.getExtract().getState() == Extract.STATE_PASS) {//
                contentList = new ArrayList<>();
                contentList.add(new ClientTextStyleVO(
                        TimeUtil.getGernalTime(msg.getExtract().getReceiveTime().getTime(), "yyyy-MM-dd HH:mm"),
                        COLOR_CONTENT));
                items.add(new CommonMsgItemVO(new ClientTextStyleVO("实际到账", "#888888"), contentList));
                items.add(new CommonMsgItemVO(new ClientTextStyleVO("实际到账", COLOR_TITLE), contentList));
            }
            contentList = new ArrayList<>();
            contentList.add(new ClientTextStyleVO(StringUtil.isNullOrEmpty(msg.getBeiZhu()) ? "无" : msg.getBeiZhu(),
                    COLOR_CONTENT));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("备注", "#888888"), contentList));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("备注", COLOR_TITLE), contentList));
            return new UserMsgVO("http://img.flqapp.com/resource/msg/icon_msg_extract.png", "提现",
                    msg.getUpdateTime() == null ? msg.getCreateTime() : msg.getUpdateTime(), items);
        } else if (msg.getMsgType() == MsgTypeMoneyTypeEnum.extractValid) {
@@ -165,20 +166,20 @@
            contentList = new ArrayList<>();
            contentList.add(new ClientTextStyleVO("Â¥" + MoneyBigDecimalUtil.getWithNoZera(msg.getMoney()),
                    COLOR_HIGHLIGHT_CONTENT));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("提现金额", "#888888"), contentList));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("提现金额", COLOR_TITLE), contentList));
            contentList = new ArrayList<>();
            contentList.add(new ClientTextStyleVO("¥验证成功", COLOR_HIGHLIGHT_CONTENT));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("验证状态", "#888888"), contentList));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("验证状态", COLOR_TITLE), contentList));
            contentList = new ArrayList<>();
            contentList.add(new ClientTextStyleVO(msg.getStateDesc(), COLOR_CONTENT));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("状态说明", "#888888"), contentList));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("状态说明", COLOR_TITLE), contentList));
            contentList = new ArrayList<>();
            contentList.add(new ClientTextStyleVO(StringUtil.isNullOrEmpty(msg.getBeiZhu()) ? "无" : msg.getBeiZhu(),
                    COLOR_CONTENT));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("备注", "#888888"), contentList));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("备注", COLOR_TITLE), contentList));
            return new UserMsgVO("http://img.flqapp.com/resource/msg/icon_msg_extract.png", "提现账号验证",
                    msg.getUpdateTime() == null ? msg.getCreateTime() : msg.getUpdateTime(), items);
@@ -231,7 +232,7 @@
            contentList = new ArrayList<>();
            contentList.add(new ClientTextStyleVO("Â¥" + MoneyBigDecimalUtil.getWithNoZera(msg.getBalance()) + "",
                    COLOR_HIGHLIGHT_CONTENT));
                    COLOR_CONTENT));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("账号余额", COLOR_TITLE), contentList));
            contentList = new ArrayList<>();
@@ -249,7 +250,7 @@
                        date + msg.getMsgType().getDesc(),
                        msg.getUpdateTime() == null ? msg.getCreateTime() : msg.getUpdateTime(), items);
            else
                return new UserMsgVO("http://img.flqapp.com/resource/msg/icon_msg_invite.png.png",
                return new UserMsgVO("http://img.flqapp.com/resource/msg/icon_msg_invite_money.png",
                        date + msg.getMsgType().getDesc(),
                        msg.getUpdateTime() == null ? msg.getCreateTime() : msg.getUpdateTime(), items);
@@ -301,8 +302,9 @@
                    COLOR_CONTENT));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("备注", COLOR_TITLE), contentList));
            return new UserMsgVO("http://img.flqapp.com/resource/msg/icon_msg_share_money.png", msg.getMsgType().getDesc(),
                    msg.getUpdateTime() == null ? msg.getCreateTime() : msg.getUpdateTime(), items);
            return new UserMsgVO("http://img.flqapp.com/resource/msg/icon_msg_share_money.png",
                    msg.getMsgType().getDesc(), msg.getUpdateTime() == null ? msg.getCreateTime() : msg.getUpdateTime(),
                    items);
        } else if (msg.getMsgType() == MsgTypeMoneyTypeEnum.inviteWeiQuan) {
            contentList.add(new ClientTextStyleVO(msg.getOrderId(), COLOR_CONTENT));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("邀请订单", COLOR_TITLE), contentList));
@@ -326,8 +328,9 @@
                    COLOR_CONTENT));
            items.add(new CommonMsgItemVO(new ClientTextStyleVO("备注", COLOR_TITLE), contentList));
            return new UserMsgVO("http://img.flqapp.com/resource/msg/icon_msg_invite.png", msg.getMsgType().getDesc(),
                    msg.getUpdateTime() == null ? msg.getCreateTime() : msg.getUpdateTime(), items);
            return new UserMsgVO("http://img.flqapp.com/resource/msg/icon_msg_invite_money.png",
                    msg.getMsgType().getDesc(), msg.getUpdateTime() == null ? msg.getCreateTime() : msg.getUpdateTime(),
                    items);
        }
        return null;
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoUtil.java
@@ -57,6 +57,8 @@
import com.yeshi.fanli.service.inter.goods.TaoBaoLinkService;
import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService;
import com.yeshi.fanli.tag.PageEntity;
import com.yeshi.fanli.util.AESUtil;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.MoneyBigDecimalUtil;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.TaoBaoHttpUtil;
@@ -1245,7 +1247,7 @@
            }
            return parsePhoneTmAndTb(id);
        } catch (Exception e) {
            LogHelper.error("无法解析到淘宝商品ID:"+burl);
            LogHelper.error("无法解析到淘宝商品ID:" + burl);
            return null;
        }
@@ -1704,6 +1706,35 @@
        return taoBaoGoods;
    }
    /**
     * èŽ·å–æ·˜å®è”ç›Ÿçš„æŽˆæƒé“¾æŽ¥
     *
     * @param appKey
     *            -应用Key
     * @param callBackUrl
     *            -回调链接
     * @param uid-用户ID
     * @return
     */
    public static String getTaoBaoUnionAuthUrl(String appKey, String callBackUrl, Long uid) {
        if (uid == null)
            return null;
        long timestamp = System.currentTimeMillis();
        JSONObject json = new JSONObject();
        json.put("u", uid);
        json.put("t", timestamp);
        String url = null;
        try {
            url = String.format(
                    "https://oauth.taobao.com/authorize?response_type=code&client_id=%s&redirect_uri=%s&state=%s&view=wap",
                    appKey, callBackUrl,
                    URLEncoder.encode(AESUtil.encrypt(json.toString(), Constant.UIDAESKEY), "UTF-8"));
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
        return url;
    }
    public static void main(String[] args) {
        String s = channelMap.get("3");
        System.out.println(s);
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java
@@ -158,7 +158,7 @@
        map.put("method", "taobao.tbk.item.info.get");
        map.put("num_iids", id + "");
        String resultStr = TaoKeBaseUtil.baseRequestForThreeTimes(map, true);
//        System.out.println(resultStr);
        // System.out.println(resultStr);
        JSONObject data = JSONObject.fromObject(resultStr);
        // å•†å“ä¸‹æž¶
        if (data.optJSONObject("error_response") != null && data.optJSONObject("error_response").optInt("code") == 15
@@ -220,7 +220,7 @@
            if (item.optBoolean("free_shipment"))
                goods.setFreeShipment(1);
            System.out.println(item.optString("material_lib_type"));
            return goods;
@@ -324,10 +324,11 @@
                    goods.setPayRate30(1);
                if (item.optBoolean("free_shipment"))
                    goods.setFreeShipment(1);
                //if("1".equalsIgnoreCase(item.optString("material_lib_type")))
                //TaoKeTest.count++;
                    goods.setFreeShipment(1);
                if ("1".equalsIgnoreCase(item.optString("material_lib_type")))
                    ;
                goodsList.add(goods);
            }
        }
@@ -1469,25 +1470,41 @@
    }
    public static String getAccessToken(String code, String appKey, String appSecret) {
        Map<String, String> map = new HashMap<>();
        map.put("method", "taobao.top.auth.token.create");
        map.put("code", code);
        TaoKeAppInfo app = new TaoKeAppInfo();
        app.setAppKey(appKey);
        app.setAppSecret(appSecret);
        try {
            JSONObject json = TaoKeBaseUtil.baseRequest(map, app);
            if (json != null)
                return json.toString();
        } catch (TaoKeApiException e) {
            e.printStackTrace();
        }
        return null;
    }
    /**
     * æ¸ é“邀请码
     * 
     * @param relationId
     * @return
     */
    public static String getInviteCode(Long relationId, String accessToken) {
    public static String getInviteCode(Long relationId, 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("relation_id", relationId + "");
        map.put("code_type", "2");
        map.put("relation_app", "返利券");
        map.put("code_type", "1");
        map.put("relation_app", "common");
        JSONObject resultJSON = null;
        try {
            TaoKeAppInfo app=new TaoKeAppInfo();
            app.setAppKey("24567001");
            app.setAppSecret("e26a8d0f8726883d44bf04742829b533");
            app.setAdzoneId("123123");
            TaoKeAppInfo app = new TaoKeAppInfo();
            app.setAppKey(appKey);
            app.setAppSecret(appSecret);
            resultJSON = TaoKeBaseUtil.baseRequest(map, app);
        } catch (TaoKeApiException e) {
            e.printStackTrace();
@@ -1496,7 +1513,27 @@
            return null;
        return null;
    }
    public static String beiAnQuDao(Long relationId, 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");
        JSONObject resultJSON = null;
        try {
            TaoKeAppInfo app = new TaoKeAppInfo();
            app.setAppKey(appKey);
            app.setAppSecret(appSecret);
            resultJSON = TaoKeBaseUtil.baseRequest(map, app);
        } catch (TaoKeApiException e) {
            e.printStackTrace();
        }
        if (resultJSON == null)
            return null;
        return null;
    }
    private static TaoBaoGoodsBrief parseWuLiaoItemFromMaterialId(JSONObject item) {
fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeBaseUtil.java
@@ -83,7 +83,8 @@
        params.put("v", "2.0");
        params.put("timestamp", TimeUtil.getGernalTime(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss"));
        params.put("format", "json");
        params.put("adzone_id", app.getAdzoneId());
        if (!StringUtil.isNullOrEmpty(app.getAdzoneId()))
            params.put("adzone_id", app.getAdzoneId());
        params.put("sign", getSign(params, "md5", app).toUpperCase());
        String result = TaoBaoHttpUtil.taoKeGet(params);
        JSONObject data = JSONObject.fromObject(result);
fanli/src/main/resource/druid.properties
@@ -10,9 +10,9 @@
#druid.password=123456
#druid.url=jdbc:mysql://172.16.16.17:3306/ec_quan_test
#druid.username=root
#druid.password=Yeshi2016@
druid.url=jdbc:mysql://172.16.16.17:3306/ec_quan_test
druid.username=root
druid.password=Yeshi2016@
#druid.url=jdbc:mysql://172.16.16.17:3306/ec_quan_test_online
@@ -22,12 +22,12 @@
#外网正式
druid.url=jdbc:mysql://172.16.16.17:3306/ec_quan
druid.username=root
druid.password=Yeshi2016@
#druid.url=jdbc:mysql://172.16.16.17:3306/ec_quan
#druid.username=root
#druid.password=Yeshi2016@
#外网本地测试
#druid.url=jdbc:mysql://gz-cdb-r13d0yi9.sql.tencentcdb.com:62929/ec_quan
#druid.url=jdbc:mysql://gz-cdb-r13d0yi9.sql.tencentcdb.com:62929/ec_quan_test
#druid.username=root
#druid.password=Yeshi2016@
fanli/src/main/resource/uml/ÌÔ±¦ÁªÃËÊÚȨÁ÷³Ì.acd
New file
@@ -0,0 +1,1521 @@
<?xml version="1.0" encoding="UTF-8"?>
<net.java.amateras.uml.activitydiagram.model.ActivityModel>
  <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>
  <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>
      <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>
            <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.InitialStateModel" reference="../../../.."/>
                  <propertyChangeSupportSerializedDataVersion>2</propertyChangeSupportSerializedDataVersion>
                </default>
                <null/>
              </java.beans.PropertyChangeSupport>
            </listeners>
            <constraint>
              <height>-1</height>
              <width>-1</width>
              <x>373</x>
              <y>0</y>
            </constraint>
            <sourceConnections>
              <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.InitialStateModel" reference="../../.."/>
                <target class="net.java.amateras.uml.activitydiagram.model.ActionModel" reference="../../../../../.."/>
                <bendpoints/>
                <condition></condition>
              </net.java.amateras.uml.activitydiagram.model.FlowModel>
              <net.java.amateras.uml.model.AnchorModel>
                <showIcon>true</showIcon>
                <listeners serialization="custom">
                  <java.beans.PropertyChangeSupport>
                    <default>
                      <source class="net.java.amateras.uml.model.AnchorModel" reference="../../../.."/>
                      <propertyChangeSupportSerializedDataVersion>2</propertyChangeSupportSerializedDataVersion>
                    </default>
                    <null/>
                  </java.beans.PropertyChangeSupport>
                </listeners>
                <source class="net.java.amateras.uml.activitydiagram.model.InitialStateModel" reference="../../.."/>
                <target class="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>
                        <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>
                              <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.ActionModel" reference="../../../.."/>
                                    <propertyChangeSupportSerializedDataVersion>2</propertyChangeSupportSerializedDataVersion>
                                  </default>
                                  <null/>
                                </java.beans.PropertyChangeSupport>
                              </listeners>
                              <constraint>
                                <height>-1</height>
                                <width>-1</width>
                                <x>352</x>
                                <y>174</y>
                              </constraint>
                              <sourceConnections>
                                <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">
                                    <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>
                                          <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="../../.."/>
                                            </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>308</x>
                                            <y>252</y>
                                          </constraint>
                                          <sourceConnections>
                                            <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">
                                                <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>
                                                      <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.ActionModel" reference="../../../.."/>
                                                            <propertyChangeSupportSerializedDataVersion>2</propertyChangeSupportSerializedDataVersion>
                                                          </default>
                                                          <null/>
                                                        </java.beans.PropertyChangeSupport>
                                                      </listeners>
                                                      <constraint>
                                                        <height>-1</height>
                                                        <width>-1</width>
                                                        <x>325</x>
                                                        <y>378</y>
                                                      </constraint>
                                                      <sourceConnections>
                                                        <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">
                                                            <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>367</x>
                                                              <y>440</y>
                                                            </constraint>
                                                            <sourceConnections>
                                                              <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 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.ActionModel" reference="../../../.."/>
                                                                        <propertyChangeSupportSerializedDataVersion>2</propertyChangeSupportSerializedDataVersion>
                                                                      </default>
                                                                      <null/>
                                                                    </java.beans.PropertyChangeSupport>
                                                                  </listeners>
                                                                  <constraint>
                                                                    <height>-1</height>
                                                                    <width>-1</width>
                                                                    <x>351</x>
                                                                    <y>504</y>
                                                                  </constraint>
                                                                  <sourceConnections>
                                                                    <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">
                                                                        <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>458</x>
                                                                          <y>511</y>
                                                                        </constraint>
                                                                        <sourceConnections>
                                                                          <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 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.ActionModel" reference="../../../.."/>
                                                                                    <propertyChangeSupportSerializedDataVersion>2</propertyChangeSupportSerializedDataVersion>
                                                                                  </default>
                                                                                  <null/>
                                                                                </java.beans.PropertyChangeSupport>
                                                                              </listeners>
                                                                              <constraint>
                                                                                <height>-1</height>
                                                                                <width>-1</width>
                                                                                <x>432</x>
                                                                                <y>589</y>
                                                                              </constraint>
                                                                              <sourceConnections>
                                                                                <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.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 reference="../../../../../.."/>
                                                                                        <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="../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                          <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="../../../../../../../../../../../../../../../../../../../../../../../../../../.."/>
                                                                                          <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>768</x>
                                                                                            <y>183</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.ActionModel reference="../../.."/>
                                                                                        <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>607</x>
                                                                                            <y>664</y>
                                                                                          </constraint>
                                                                                          <sourceConnections>
                                                                                            <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">
                                                                                                <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>714</x>
                                                                                                  <y>661</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 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.ActionModel" reference="../../../.."/>
                                                                                                      <propertyChangeSupportSerializedDataVersion>2</propertyChangeSupportSerializedDataVersion>
                                                                                                    </default>
                                                                                                    <null/>
                                                                                                  </java.beans.PropertyChangeSupport>
                                                                                                </listeners>
                                                                                                <constraint>
                                                                                                  <height>-1</height>
                                                                                                  <width>-1</width>
                                                                                                  <x>529</x>
                                                                                                  <y>738</y>
                                                                                                </constraint>
                                                                                                <sourceConnections/>
                                                                                                <targetConnections>
                                                                                                  <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.ActionModel" reference="../../.."/>
                                                                                                    <bendpoints>
                                                                                                      <net.java.amateras.uml.editpart.ConnectionBendpoint>
                                                                                                        <weight>0.5</weight>
                                                                                                        <d1>
                                                                                                          <width>-306</width>
                                                                                                          <height>0</height>
                                                                                                        </d1>
                                                                                                        <d2>
                                                                                                          <width>-544</width>
                                                                                                          <height>-422</height>
                                                                                                        </d2>
                                                                                                      </net.java.amateras.uml.editpart.ConnectionBendpoint>
                                                                                                      <net.java.amateras.uml.editpart.ConnectionBendpoint>
                                                                                                        <weight>0.5</weight>
                                                                                                        <d1>
                                                                                                          <width>-304</width>
                                                                                                          <height>421</height>
                                                                                                        </d1>
                                                                                                        <d2>
                                                                                                          <width>-542</width>
                                                                                                          <height>-1</height>
                                                                                                        </d2>
                                                                                                      </net.java.amateras.uml.editpart.ConnectionBendpoint>
                                                                                                    </bendpoints>
                                                                                                    <condition>无需授权</condition>
                                                                                                  </net.java.amateras.uml.activitydiagram.model.FlowModel>
                                                                                                </targetConnections>
                                                                                                <children/>
                                                                                                <filterProperty/>
                                                                                                <actionName>请求分享链接接口,做后续操作</actionName>
                                                                                              </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/>
                                                                                        </net.java.amateras.uml.activitydiagram.model.DecisionModel>
                                                                                        <net.java.amateras.uml.activitydiagram.model.FinalStateModel reference="../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[6]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel[2]/target"/>
                                                                                      </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>395</x>
                                                                                      <y>658</y>
                                                                                    </constraint>
                                                                                    <sourceConnections>
                                                                                      <net.java.amateras.uml.activitydiagram.model.FlowModel reference="../../parent/children/net.java.amateras.uml.activitydiagram.model.DecisionModel[6]/targetConnections/net.java.amateras.uml.activitydiagram.model.FlowModel"/>
                                                                                    </sourceConnections>
                                                                                    <targetConnections>
                                                                                      <net.java.amateras.uml.activitydiagram.model.FlowModel reference="../../.."/>
                                                                                    </targetConnections>
                                                                                    <children/>
                                                                                    <filterProperty/>
                                                                                    <actionName>再次检测是否需要H5授权</actionName>
                                                                                  </target>
                                                                                  <bendpoints/>
                                                                                  <condition>授权结束后</condition>
                                                                                </net.java.amateras.uml.activitydiagram.model.FlowModel>
                                                                                <net.java.amateras.uml.model.AnchorModel>
                                                                                  <showIcon>true</showIcon>
                                                                                  <listeners serialization="custom">
                                                                                    <java.beans.PropertyChangeSupport>
                                                                                      <default>
                                                                                        <source class="net.java.amateras.uml.model.AnchorModel" 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.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.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.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>
                                                                                          <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.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.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="../../.."/>
                                                                                            </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>33</height>
                                                                                            <width>185</width>
                                                                                            <x>502</x>
                                                                                            <y>376</y>
                                                                                          </constraint>
                                                                                          <sourceConnections/>
                                                                                          <targetConnections>
                                                                                            <net.java.amateras.uml.model.AnchorModel>
                                                                                              <showIcon>true</showIcon>
                                                                                              <listeners serialization="custom">
                                                                                                <java.beans.PropertyChangeSupport>
                                                                                                  <default>
                                                                                                    <source class="net.java.amateras.uml.model.AnchorModel" 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.model.NoteModel" reference="../../.."/>
                                                                                              <bendpoints/>
                                                                                            </net.java.amateras.uml.model.AnchorModel>
                                                                                          </targetConnections>
                                                                                          <children/>
                                                                                          <filterProperty/>
                                                                                          <content>此接口会返回淘宝H5授权链接</content>
                                                                                          <old></old>
                                                                                        </net.java.amateras.uml.model.NoteModel>
                                                                                        <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>30</height>
                                                                                      <width>177</width>
                                                                                      <x>579</x>
                                                                                      <y>586</y>
                                                                                    </constraint>
                                                                                    <sourceConnections/>
                                                                                    <targetConnections>
                                                                                      <net.java.amateras.uml.model.AnchorModel reference="../../.."/>
                                                                                    </targetConnections>
                                                                                    <children/>
                                                                                    <filterProperty/>
                                                                                    <content>完成后此处直接关闭页面</content>
                                                                                    <old>此处直接关闭页面</old>
                                                                                  </target>
                                                                                  <bendpoints/>
                                                                                </net.java.amateras.uml.model.AnchorModel>
                                                                              </sourceConnections>
                                                                              <targetConnections>
                                                                                <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.ActionModel" reference="../../.."/>
                                                                                  <bendpoints>
                                                                                    <net.java.amateras.uml.editpart.ConnectionBendpoint>
                                                                                      <weight>0.5</weight>
                                                                                      <d1>
                                                                                        <width>-111</width>
                                                                                        <height>-1</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>
                                                                                      </d2>
                                                                                    </net.java.amateras.uml.editpart.ConnectionBendpoint>
                                                                                  </bendpoints>
                                                                                  <condition>淘宝已经授权</condition>
                                                                                </net.java.amateras.uml.activitydiagram.model.FlowModel>
                                                                              </targetConnections>
                                                                              <children/>
                                                                              <filterProperty/>
                                                                              <actionName>联盟H5授权</actionName>
                                                                            </target>
                                                                            <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="../../.."/>
                                                                        </targetConnections>
                                                                        <children/>
                                                                        <filterProperty/>
                                                                      </target>
                                                                      <bendpoints/>
                                                                      <condition></condition>
                                                                    </net.java.amateras.uml.activitydiagram.model.FlowModel>
                                                                  </sourceConnections>
                                                                  <targetConnections>
                                                                    <net.java.amateras.uml.activitydiagram.model.FlowModel reference="../../.."/>
                                                                  </targetConnections>
                                                                  <children/>
                                                                  <filterProperty/>
                                                                  <actionName>淘宝授权</actionName>
                                                                </target>
                                                                <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]"/>
                                                            </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.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"/>
                                                      </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.ActionModel" reference="../../.."/>
                                                          <bendpoints/>
                                                          <condition>需要授权</condition>
                                                        </net.java.amateras.uml.activitydiagram.model.FlowModel>
                                                      </targetConnections>
                                                      <children/>
                                                      <filterProperty/>
                                                      <actionName>判断淘宝是否授权</actionName>
                                                    </net.java.amateras.uml.activitydiagram.model.ActionModel>
                                                  </children>
                                                  <filterProperty/>
                                                </parent>
                                                <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>370</x>
                                                  <y>324</y>
                                                </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]"/>
                                                </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.DecisionModel" reference="../../../../../../../../../../../.."/>
                                              <target class="net.java.amateras.uml.activitydiagram.model.ActionModel" reference="../../.."/>
                                              <bendpoints>
                                                <net.java.amateras.uml.editpart.ConnectionBendpoint>
                                                  <weight>0.5</weight>
                                                  <d1>
                                                    <width>-132</width>
                                                    <height>-1</height>
                                                  </d1>
                                                  <d2>
                                                    <width>-130</width>
                                                    <height>-149</height>
                                                  </d2>
                                                </net.java.amateras.uml.editpart.ConnectionBendpoint>
                                                <net.java.amateras.uml.editpart.ConnectionBendpoint>
                                                  <weight>0.5</weight>
                                                  <d1>
                                                    <width>-132</width>
                                                    <height>150</height>
                                                  </d1>
                                                  <d2>
                                                    <width>-130</width>
                                                    <height>2</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>
                                              <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" reference="../../.."/>
                                              <bendpoints>
                                                <net.java.amateras.uml.editpart.ConnectionBendpoint>
                                                  <weight>0.5</weight>
                                                  <d1>
                                                    <width>-1</width>
                                                    <height>75</height>
                                                  </d1>
                                                  <d2>
                                                    <width>170</width>
                                                    <height>-1</height>
                                                  </d2>
                                                </net.java.amateras.uml.editpart.ConnectionBendpoint>
                                              </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.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[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.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.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]"/>
                                      </children>
                                      <filterProperty/>
                                    </parent>
                                    <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>542</x>
                                      <y>184</y>
                                    </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"/>
                                    </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.DecisionModel" reference="../../../../../.."/>
                                  <target class="net.java.amateras.uml.activitydiagram.model.ActionModel" reference="../../.."/>
                                  <bendpoints/>
                                  <condition>未登录</condition>
                                </net.java.amateras.uml.activitydiagram.model.FlowModel>
                              </targetConnections>
                              <children/>
                              <filterProperty/>
                              <actionName>授权登录</actionName>
                            </net.java.amateras.uml.activitydiagram.model.ActionModel>
                          </children>
                          <filterProperty/>
                        </parent>
                        <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>373</x>
                          <y>112</y>
                        </constraint>
                        <sourceConnections>
                          <net.java.amateras.uml.activitydiagram.model.FlowModel reference="../../parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[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[2]/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel/target/parent/children/net.java.amateras.uml.activitydiagram.model.ActionModel[3]/targetConnections/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/>
                      </net.java.amateras.uml.activitydiagram.model.DecisionModel>
                      <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]"/>
                      <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]"/>
                      <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"/>
                      <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.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.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.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>72</height>
                    <width>215</width>
                    <x>510</x>
                    <y>23</y>
                  </constraint>
                  <sourceConnections/>
                  <targetConnections>
                    <net.java.amateras.uml.model.AnchorModel reference="../../.."/>
                  </targetConnections>
                  <children/>
                  <filterProperty/>
                  <content>点击分享赚/邀请赚的前期准备工作,&#xd;
</content>
                  <old>点击分享赚的前期准备工作,&#xd;
</old>
                </target>
                <bendpoints/>
              </net.java.amateras.uml.model.AnchorModel>
            </sourceConnections>
            <targetConnections/>
            <children/>
            <filterProperty/>
          </net.java.amateras.uml.activitydiagram.model.InitialStateModel>
        </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>326</x>
        <y>44</y>
      </constraint>
      <sourceConnections>
        <net.java.amateras.uml.activitydiagram.model.FlowModel reference="../../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/targetConnections/net.java.amateras.uml.activitydiagram.model.FlowModel"/>
      </sourceConnections>
      <targetConnections>
        <net.java.amateras.uml.activitydiagram.model.FlowModel reference="../../parent/children/net.java.amateras.uml.activitydiagram.model.InitialStateModel/sourceConnections/net.java.amateras.uml.activitydiagram.model.FlowModel"/>
      </targetConnections>
      <children/>
      <filterProperty/>
      <actionName>判断用户是否登录</actionName>
    </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>
      <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>
  </children>
  <filterProperty/>
</net.java.amateras.uml.activitydiagram.model.ActivityModel>
fanli/src/test/java/org/fanli/MyBatisProduce.java
@@ -4,13 +4,15 @@
import org.junit.Test;
import org.yeshi.utils.mybatis.MyBatisMapperUtil;
import com.yeshi.fanli.entity.bus.share.UserShareGoodsRecord;
import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo;
import com.yeshi.fanli.entity.taobao.TaoBaoUnionAuthRecord;
public class MyBatisProduce {
    @Test
    public void test3() {
        MyBatisMapperUtil.createMapper(UserShareGoodsRecord.class);
        MyBatisMapperUtil.createMapper(UserExtraTaoBaoInfo.class);
        MyBatisMapperUtil.createMapper(TaoBaoUnionAuthRecord.class);
    }
}
fanli/src/test/java/org/fanli/TaoKeTest.java
@@ -6,6 +6,7 @@
import java.util.ArrayList;
import java.util.List;
import org.junit.Ignore;
import org.junit.Test;
import com.yeshi.fanli.entity.taobao.SearchFilter;
@@ -22,7 +23,7 @@
import com.yeshi.fanli.util.taobao.TaoBaoOrderUtil;
import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
//@Ignore
@Ignore
public class TaoKeTest {
    
    public static int count=0;
utils/src/main/java/org/yeshi/utils/taobao/TaoBaoAuthUtil.java
New file
@@ -0,0 +1,13 @@
package org.yeshi.utils.taobao;
public class TaoBaoAuthUtil {
    public static String getAcessToken(String code,String appKey,String appSecret)
    {
        //wCa9so9Yz7Ogh9es8zydEUPz4990482
        return null;
    }
}