appDetail.html 12 KB
Newer Older
manxiaoqiang committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247
<div class="formDetailInfo appPageWrap">
    <div class="formDetailTitle" style="margin-bottom: 30px;">
        <a class="pretitle hand" ng-click="cancel()">产品中心</a>
        <span ng-if="!infoId"> > 新建产品</span>
        <span ng-if="infoId"> > 修改产品</span>
    </div>

    <div class="clear"></div>

    <div class="circlewrap" ng-show="isLog || !infoId">
        <span class="active">
            <span class="circle">1</span>
            <span class="circlelabel" ng-if="!infoId"> 新建产品</span>
            <span class="circlelabel" ng-if="infoId"> 修改产品</span>
        </span>
        <span class="circleline"></span>
        <span ng-class="{'active':stepflag>1}" class="hand"> <!--ng-click="changeStep()"-->
            <span class="circle">2</span>
            <span class="circlelabel">嵌入SDK</span>
        </span>
        <!-- <span class="circleline"></span>
        <span ng-class="{'active':stepflag>2}">
            <span class="circle">3</span>
            <span class="circlelabel">数据调试</span>
        </span> -->
    </div>

    <div ng-show="stepflag==1">
        <div class="formDetailItem">
            <div class="iptlabel must">产品名称:</div>
            <input type="text" class="iptform" ng-model="name" ng-blur="exixtName()" placeholder="请输入应用名称">
            <em class="error" ng-if="tip.name.status">{{tip.name.txt}}</em>
        </div>
        <div class="formDetailItem">
            <div class="iptlabel must">平台:</div>
            <div class="radioWrap" ng-show="!id">
                <div class="radiolabel" ng-click="platform='iOS'">
                    <span class="radio" ng-class="{'active':platform=='iOS'}"></span>
                    iOS
                </div>
                <div class="radiolabel" ng-click="platform='Android'">
                    <span class="radio" ng-class="{'active':platform=='Android'}"></span>
                    Android
                </div>
                <div class="radiolabel" ng-click="platform='H5'">
                    <span class="radio" ng-class="{'active':platform=='H5'}"></span>
                    H5
                </div>
                <!-- <div class="radiolabel" ng-click="platform='web'">
                    <span class="radio" ng-class="{'active':platform=='web'}"></span>
                    web
                </div> -->
            </div>
            <div class="radioWrap" ng-show="id">
                <span class="label">{{platform}}</span>
            </div>
        </div>
        <div class="formDetailItem" ng-show="platform=='iOS'">
            <div class="iptlabel must">apple_appid:</div>
            <input type="text" class="iptform" ng-model="bundleid" ng-blur="existBundleid()" placeholder="请输入apple_appid">
            <em class="error" ng-if="tip.bundleid.status">{{tip.bundleid.txt}}</em>
            <div class="iptwrap desc">例:https://itunes.apple.com/cn/app/xxxxx/id1032170871
    则apple_appid为1032170871,如果apple_appid暂时无法获取,请输入任意9-10位的数字,待应用上线后,请修改</div>
        </div>
        <div class="formDetailItem">
            <div class="iptlabel must">产品类别:</div>
            <input type="text" class="iptform" ng-model="appGenreName" ng-disabled="true" ng-if="id">
            <select-list meau-info="typeList" meau-id="appGenre" meau-data="appGenreInit"  keyid="categoryid" ng-show="!id"></select-list>
        </div>
        <div class="formDetailItem" ng-show="showGame">
            <div class="iptlabel must">游戏类别:</div>
            <input type="text" class="iptform" ng-model="gameGenreName" ng-disabled="true" ng-if="id">
            <select-list meau-info="gameList" meau-id="gameGenre" meau-data="gameGenreInit" keyid="categoryid" ng-show="!id"></select-list>
        </div>
        <div class="formDetailItem">
            <div class="iptlabel must">下载地址:</div>
            <input type="text" class="iptform" ng-model="url" placeholder="请输入下载地址">
            <em class="error" ng-if="tip.url.status">{{tip.url.txt}}</em>
        </div>
        <div class="formsaveBtnWrap clearfix">
            <div class="btn5" ng-click="save()">
                <span ng-if="!id">立即创建</span>
                <span ng-if="id">保存</span>
            </div>
            <div class="btn6" ng-click="cancel()">取消</div>
        </div>
    </div>

    <div ng-show="stepflag==2">
        <div class="appsdk">
            <div class="appTitle">产品名称:</div>
            <div class="appText">{{name}}</div>
        </div>
        <div class="appsdk">
            <div class="appTitle">您的APPKEY:</div>
            <div class="appText appid">
                <span id="appidCopy">{{appkey}}</span>
                <button class="sdkAppid" data-clipboard-action="copy" data-clipboard-target="#appidCopy">复制</button>
            </div>
        </div>
        <div class="appsdk idenText">
            <div class="appTitle">&nbsp;</div>
            <div class="appText iden">(APPKEY是应用的唯一标识,用来集成到SDK中。)</div>
        </div>
        <div class="appsdk">
            <a href="http://doc.trackingio.com/sdkwen-dang.html" target="_blank"><div class="sdkButton" ng-click="downloadsdk()">查看集成文档并下载SDK</div></a>
        </div>
        <div class="useSdk">
            <p class="userTitle">使用流程:</p>
            <p class="userText">
              1.下载SDK<span class="circleline"></span>
              2.集成SDK
              <!-- <span class="circleline"></span> -->
              <!-- 3.数据调试 -->
            </p>
        </div>
        <!-- <p class="userText error" style="padding-left: 38px; margin-top: 20px">数据调试结束后上报的数据才进入正常的数据统计。</p> -->
        <div class="btn3 stepBtn" ng-click="nextStep()">
            完成
        </div>
    </div>

    <div ng-show="stepflag == 3">
        <div class="btn6 sdkLast" ng-click="changeStep()" style="width: 120px;">上一步</div>
        <div class="btn3 sdkSave" ng-click="finisStep()" style="width: 130px;" ng-if="hasZeroEvt==0">
            完成调试,保存新建
        </div>
        <div class="btn2 big dis sdkSave" style="width: 150px;" ng-if="hasZeroEvt>0">完成调试,保存新建</div>

        <div class="clearfix">
            <div class="btn10 mr10" ng-click="queryLogInfo()" style="float: right;">
                <span class="f5IconGray"></span>数据刷新
            </div>
            <span style="float: right;" class="error lh32" ng-if="(platform=='H5' && hasZeroEvt==1) || hasZeroEvt==2">我们还没有接收到来自您的任何数据,请继续进行集成工作。</span>
        </div>
        <div class="applogWrap clearfix">
            <div class="logTestWrap mr10">
                <div class="logTestTitle">LogTest</div>
                <div class="logTestCont">
                    <div class="appsdk">
                        <div class="appTitle">您的APPKEY:</div>
                        <div class="appText appid">
                            <span>{{appkey}}</span>
                        </div>
                    </div>
                    <dl class="tipsList">
                        <dt>说明</dt>
                        <dd>1.打开集成好的客户端,SDK将自动帮助收集数据。</dd>
                        <dd>2.在任意平台有数据量产生后,您可随时完成调试,进入正式数据报表。</dd>
                        <dd>3.一个APP最多显示1W条测试数据,且保留最近7天数据。</dd>
                    </dl>
                    <div class="appEvtWrap hm-scroll">
                        <div class="appEvtItem" ng-repeat="test in testInfos track by $index">
                            <span>{{test.eventNameAlias}}</span>
                            <em>{{test.eventNumber}}</em>
                        </div>
                    </div>
                </div>
            </div>
            <div class="logTestWrap">
                <div class="logTestTitle">日志
                    <select-list meau-info="deviceList" meau-id="deviceId" meau-data="deviceInit" style="float:right;width:230px;" ng-show="logInfos.length>0"></select-list>
                </div>
                <div class="logTestCont">
                    <dl class="tipsList" ng-if="logInfos.length==0">
                        <dt>已经集成,依然查阅不到任何数据?请仔细检查下述事项: </dt>
                        <dd>1.仔细检查APPKEY是否填写正确,是否多输入了空格等字符。</dd>
                        <dd>2.检查您的测试设备是否网络正常。</dd>
                    </dl>
                    <ul class="chainWrap hm-scroll">
                        <li ng-repeat="log in logInfos | filter:{'deviceId':deviceTxt} track by $index">
                            <i></i>
                            <span>{{log.xcontext._deviceid}}</span>
                            <h6 ng-click="lookEvents(log)" stop-event>{{log.eventName}}</h6>
                            <em>{{log.xwhen}}</em>
                        </li>
                    </ul>
                </div>
            </div>
        </div>
        <div class="chartWrap clearfix">
            <div class="chartWrapItem nothborder" ng-if="platform!='H5'">
                <div class="chartModule">
                    <span>调试设备列表</span>
                </div>
                <div class="tableList">
                    <table>
                        <tr>
                            <th>平台</th>
                            <th>设备ID</th>
                            <!-- <th>分包渠道</th> -->
                            <th>最后测试时间</th>
                            <th>测试日志总数</th>
                        </tr>
                        <tr ng-repeat="total in totalInfos track by $index">
                            <td>
                                <b class="platformIcon" ng-class="getPlatClass(total.os)"></b>
                            </td>
                            <td>{{total.deviceId}}</td>
                            <!-- <td>
                                <span ng-if="total.packetChannel!='_default_' && total.packetChannel!='unknown'">{{total.packetChannel}}</span>
                            </td> -->
                            <td>{{total.latestTime}}</td>
                            <td>{{total.number}}</td>
                        </tr>
                    </table>
                </div>
            </div>
        </div>
    </div>

    <div class="leftTipsSlider" ng-class="{'sliderLog':logFlag>0}" stop-event>
        <div class="slideHeader" ng-show="logFlag==1">
            日志详情
            <div class="whiteClose" ng-click="hideDetails()"></div>
        </div>
        <div class="slideHeader" ng-show="logFlag==2">
            <div class="backLog left" ng-click="logFlag=1">返回</div>
            事件属性
            <div class="whiteClose" ng-click="hideDetails()"></div>
        </div>
        <div class="tableList hm-scroll" style="max-height: 90%;overflow-y: auto;">
            <table ng-show="logFlag==1">
                <tr ng-repeat="event in eventDetails track  by $index">
                    <td>{{event.name}}</td>
                    <td ng-if="!event.isevent">
                        <span ng-if="event.second">
                            {{curEvtLogInfo.xcontext[event.key]}}
                        </span>
                        <span ng-if="!event.second">
                            <span ng-if="!event.value">{{curEvtLogInfo[event.key]}}</span>
                            <span ng-if="event.value">{{event.value}}</span>
                        </span>
                    </td>

                    <td class="ckEvt" ng-click="lookParams()" ng-if="event.isevent">{{curEvtLogInfo[event.key]}}</td>
                </tr>
            </table>
            <table ng-show="logFlag==2">
                <tr ng-repeat="param in paramsList track by $index">
                    <td>{{param.name}}</td>
                    <td>{{param.value}}</td>
                </tr>
            </table>
        </div>
    </div>
</div>