diff --git a/io.iml b/io.iml index a419bd0..f49b847 100644 --- a/io.iml +++ b/io.iml @@ -69,6 +69,35 @@ <orderEntry type="library" name="Maven: ch.qos.logback:logback-access:1.1.3" level="project" /> <orderEntry type="library" name="Maven: org.logback-extensions:logback-ext-spring:0.1.2" level="project" /> <orderEntry type="library" name="Maven: org.javassist:javassist:3.20.0-GA" level="project" /> + <orderEntry type="module-library"> + <library name="Maven: com.dianping.cat:cat-client:2.0.0"> + <CLASSES> + <root url="jar://$MODULE_DIR$/lib/cat-client-2.0.0.jar!/" /> + </CLASSES> + <JAVADOC /> + <SOURCES /> + </library> + </orderEntry> + <orderEntry type="module-library"> + <library name="Maven: com.dianping.cat:cat-core:2.0.0"> + <CLASSES> + <root url="jar://$MODULE_DIR$/lib/cat-core-2.0.0.jar!/" /> + </CLASSES> + <JAVADOC /> + <SOURCES /> + </library> + </orderEntry> + <orderEntry type="module-library"> + <library name="Maven: org.unidal.framework:foundation-service:4.0.0"> + <CLASSES> + <root url="jar://$MODULE_DIR$/lib/foundation-service-4.0.0.jar!/" /> + </CLASSES> + <JAVADOC /> + <SOURCES /> + </library> + </orderEntry> + <orderEntry type="library" name="Maven: io.netty:netty-all:4.0.23.Final" level="project" /> + <orderEntry type="library" name="Maven: com.google.code.gson:gson:1.6" level="project" /> <orderEntry type="library" name="Maven: mysql:mysql-connector-java:5.1.25" level="project" /> <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.8.5" level="project" /> <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.8.5" level="project" /> @@ -246,7 +275,6 @@ <orderEntry type="library" name="Maven: org.codehaus.janino:janino:2.7.6" level="project" /> <orderEntry type="library" name="Maven: org.codehaus.janino:commons-compiler:2.7.6" level="project" /> <orderEntry type="library" name="Maven: org.apache.calcite:calcite-avatica:1.0.0-incubating" level="project" /> - <orderEntry type="library" name="Maven: com.google.code.gson:gson:2.2.4" level="project" /> <orderEntry type="library" name="Maven: jline:jline:2.12" level="project" /> <orderEntry type="library" name="Maven: org.apache.hbase:hbase-common:1.2.0-cdh5.12.1" level="project" /> <orderEntry type="library" name="Maven: org.apache.hbase:hbase-protocol:1.2.0-cdh5.12.1" level="project" /> diff --git a/pom.xml b/pom.xml index c2015e9..e964179 100644 --- a/pom.xml +++ b/pom.xml @@ -54,17 +54,19 @@ <redis.event.port>6379</redis.event.port> <redis.event.database>0</redis.event.database> <!--Redis setting//end--> - + <admin.url>http://localhost:8080</admin.url> <awsneed>false</awsneed> <mail.host>smtp.exmail.qq.com</mail.host> - <mail.username>service1@reyun.com</mail.username> - <mail.password>3xy9cUFpe4VdPuoH</mail.password> + <mail.username>manager@reyun.com</mail.username> + <mail.password>Reyun123</mail.password> <mail.content_type>text/plain;charset\=GBK</mail.content_type> <mail.list>zhangliang@reyun.com</mail.list> <mail.valid_time>4320</mail.valid_time> + <report.url>http://172.31.1.122:9010</report.url> + <presto.driver>com.facebook.presto.jdbc.PrestoDriver</presto.driver> <presto.url>jdbc:presto://172.31.21.99:18889/hive/default</presto.url> <presto.username>root</presto.username> @@ -121,7 +123,7 @@ <hive.driver>org.apache.hive.jdbc.HiveDriver</hive.driver> <hive.url>jdbc:hive2://172.31.25.200:10000/tkio_bigtable</hive.url> <hive.username>root</hive.username> - + <report.url>http://172.31.1.122:9010</report.url> <!--trackingio域名服务地址--> <account.check.url>http://52.83.173.174:8005</account.check.url> @@ -468,7 +470,39 @@ <version>3.20.0-GA</version> </dependency> <!-- logger end --> - + <!-- cat --> + <dependency> + <groupId>com.dianping.cat</groupId> + <artifactId>cat-client</artifactId> + <version>2.0.0</version> + <scope>system</scope> + <systemPath>${pom.basedir}/lib/cat-client-2.0.0.jar</systemPath> + </dependency> + <dependency> + <groupId>com.dianping.cat</groupId> + <artifactId>cat-core</artifactId> + <version>2.0.0</version> + <scope>system</scope> + <systemPath>${pom.basedir}/lib/cat-core-2.0.0.jar</systemPath> + </dependency> + <dependency> + <groupId>org.unidal.framework</groupId> + <artifactId>foundation-service</artifactId> + <version>4.0.0</version> + <scope>system</scope> + <systemPath>${pom.basedir}/lib/foundation-service-4.0.0.jar</systemPath> + </dependency> + <dependency> + <groupId>io.netty</groupId> + <artifactId>netty-all</artifactId> + <version>4.0.23.Final</version> + </dependency> + <dependency> + <groupId>com.google.code.gson</groupId> + <artifactId>gson</artifactId> + <version>1.6</version> + </dependency> + <!-- cat //End--> <!-- database begin --> <dependency> diff --git a/src/main/java/com/reyun/controller/manage/RegedController.java b/src/main/java/com/reyun/controller/manage/RegedController.java index 62c25aa..be38114 100644 --- a/src/main/java/com/reyun/controller/manage/RegedController.java +++ b/src/main/java/com/reyun/controller/manage/RegedController.java @@ -1,5 +1,6 @@ package com.reyun.controller.manage; +import com.dianping.cat.Cat; import com.reyun.dic.LogEnumType; import com.reyun.model.Account; import com.reyun.model.App; @@ -14,9 +15,12 @@ import com.reyun.util.CipherUtil; import com.reyun.util.Constant; import com.reyun.util.DateUtil; import com.reyun.util.HashAlgorithms; +import com.reyun.util.HttpClientUtil; import com.reyun.util.IPAddrUtil; import com.reyun.util.MailUtils; +import com.reyun.util.RedisUtilNew; import com.reyun.util.ResultModel; +import com.reyun.util.StringUtil; import com.reyun.util.ValidateUtil; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -56,23 +60,25 @@ public class RegedController { @Autowired UserLogService userLogService; - @Autowired - BussinessManRepository bussinessManRepository; - - @Autowired - AuthService authService; + @Autowired + BussinessManRepository bussinessManRepository; + + @Autowired + AuthService authService; - @Autowired + @Autowired BussinessManRepository bussinessRepository; - - @Autowired - SystemParamRepository systemParamRepository; - private static final String ACTIVE_EMAIL_SEND_URL = Constant.accountCheckUrl + "/api/reged/active/"; + @Autowired + SystemParamRepository systemParamRepository; + + private static final String VERIFY_EMAIL_SEND_URL = Constant.adminUrl + "/api/tool/account/sendemail/"; - private static final int VALID_EMAIL_EXPIRE_TIME = 5; + private static final String ACTIVE_EMAIL_SEND_URL = Constant.accountCheckUrl + "/api/reged/active/"; - /** + private static final int VALID_EMAIL_EXPIRE_TIME = 5; + + /** * 网站首页注册帐号并发送激活邮件 * @param request * @param resource @@ -81,6 +87,7 @@ public class RegedController { @RequestMapping(value = "regedaccount",method = RequestMethod.POST) @ResponseBody public ResultModel createOrigi(HttpServletRequest request, @RequestBody Account resource) { + Cat.logMetricForCount("帐号注册(首页)"); Account accountDB = authService.check(resource.getEmail()); if (accountDB != null) { @@ -96,8 +103,8 @@ public class RegedController { resource.setIsChannelPerson(false); resource.setActiveTime(System.currentTimeMillis()); resource.setActiveStatus(false); - resource.setRoleCategory(0L); - resource.setDelFlag(false); + resource.setRoleCategory(0L); + resource.setDelFlag(false); try { resource.setRegIpAddr(IPAddrUtil.getIpAddr(request)); resource.setRegIpLocation(IPAddrUtil.getLocationFromIpAddr(resource.getRegIpAddr())); @@ -106,16 +113,16 @@ public class RegedController { } Account account = accountRepository.save(resource); - //更新rootParent - account.setRootParent(account.getId()); - accountRepository.save(account); + //更新rootParent + account.setRootParent(account.getId()); + accountRepository.save(account); String token = HashAlgorithms.MD5("superuser_" + account.getId() + account.getActiveTime()); //2.发送邮件,激活 String activeInterfaceUrl = ACTIVE_EMAIL_SEND_URL+0+token+resource.getId(); - String subject = "TrackingIo账号激活"; + String subject = "Io账号激活"; StringBuilder content = new StringBuilder(); content.append("<!doctype html> <html><head></head><body> ") @@ -160,6 +167,7 @@ public class RegedController { @RequestMapping(value = "active/{message}" ,method = RequestMethod.GET) @ResponseBody public ModelAndView active(HttpServletRequest httpServletRequest,@PathVariable String message) throws IOException { + Cat.logMetricForCount("帐号激活"); String flagstr = message.substring(0,1); String tokenstr = message.substring(1,33); @@ -180,16 +188,33 @@ public class RegedController { //flag=0表示新用户激活 防止二次点击修改status if(flagstr.equals("0") && one.getStatus()!= -1) { - one.setStatus(1); + one.setStatus(-2); } one.setActiveStatus(true); one.setFlowRestrict(true); - one.setPricelevel(6L); - one.setAllowBehavior(true); - one.setPastDate(DateUtil.getBeforeDays(-365)); Account result = this.accountRepository.save(one); logger.info(result.toString()); + //加上判断,防止多次点击 和 老用户不用审核 + if(one.getStatus() != -1 && "0".equals(flagstr)) { + /** + * 激活成功发送审核请求 + */ + String ip = "unknown"; + try { + ip = IPAddrUtil.getIpAddr(httpServletRequest); + } catch (Exception e) { + e.printStackTrace(); + } + if (RedisUtilNew.getInstance().tryLock(account.getEmail()+account.getId(), VALID_EMAIL_EXPIRE_TIME) != null) { + logger.info("enter trylock_____________"); + this.regedService.verifyAccount(result, ip); + } + else + { + logger.info("重复的审核请求"); + } + } return new ModelAndView("redirect:/success.html"); } @@ -204,6 +229,35 @@ public class RegedController { } } + /** + * 激活后审核接口 + * @param httpServletRequest + * @param id + * @return + */ + @RequestMapping(value = "verify/{id}" ,method = RequestMethod.GET) + @ResponseBody + public ResultModel verify(HttpServletRequest httpServletRequest,@PathVariable Long id) + { + Cat.logMetricForCount("帐号审核"); + + Account account = this.accountRepository.findOne(id); + + //状态改为审核中 + account.setStatus(-1); + account.setVerifyEmail(false); + Account result = this.accountRepository.save(account); + + String token = HashAlgorithms.MD5("superuser_" + id); + String ipAddr = IPAddrUtil.getIpAddr(httpServletRequest); + + //审核 + logger.info("调用office系统接口, 发送审核邮件. accountid: {}", account.getId()); + final String sendEmailUrl = VERIFY_EMAIL_SEND_URL + account.getId() + "/" + token + "?ip=" + (StringUtil.isEmpty(ipAddr) ? "" : ipAddr); + String reqResult = HttpClientUtil.doHttpGetRequest(sendEmailUrl, "io"); logger.info("调用office系统接口, 发送审核邮件. accountid: {}, result:{}", account.getId(), reqResult); + + return ResultModel.OK(result); + } /** * 修改用户email @@ -277,29 +331,29 @@ public class RegedController { String result = "failure"; Account account = this.accountRepository.findOne(id); - //判断用户是否已经激活 - if (account.getStatus() > -2 && flag == 0) { + //判断用户是否已经激活 + if (account.getStatus() > -2 && flag == 0) { - result = "actived"; + result = "actived"; - } else if (account.getIsSuperUser()) { - //更新激活时间 - account.setActiveTime(new Date().getTime()); - account.setActiveStatus(false); - this.accountRepository.save(account); + } else if (account.getIsSuperUser()) { + //更新激活时间 + account.setActiveTime(new Date().getTime()); + account.setActiveStatus(false); + this.accountRepository.save(account); - String token = HashAlgorithms.MD5("superuser_" + id + account.getActiveTime()); + String token = HashAlgorithms.MD5("superuser_" + id + account.getActiveTime()); - String activeInterfaceUrl = ACTIVE_EMAIL_SEND_URL + flag + token + id; - Boolean emailResult = this.regedService.sendActiceEmail(activeInterfaceUrl, account.getId()); + String activeInterfaceUrl = ACTIVE_EMAIL_SEND_URL + flag + token + id; + Boolean emailResult = this.regedService.sendActiceEmail(activeInterfaceUrl, account.getId()); - if (emailResult) { - result = "success"; - } else { - return new ResultModel(250, "邮件发送失败", "邮件发送失败"); - } + if (emailResult) { + result = "success"; + } else { + return new ResultModel(250, "邮件发送失败", "邮件发送失败"); + } - } + } return ResultModel.OK(result); } @@ -335,14 +389,14 @@ public class RegedController { Account account = this.accountRepository.findOne(id); if(ValidateUtil.isValid(account)) { - if("admin@reyun.com".equals(account.getEmail())||"demo@reyun.com".equals(account.getEmail())) - { - result = "该账号密码不能修改"; - } - else - { - result = this.regedService.updatepwd(id,pwd.get("newpwd"),pwd.get("token")); - } + if("admin@reyun.com".equals(account.getEmail())||"demo@reyun.com".equals(account.getEmail())) + { + result = "该账号密码不能修改"; + } + else + { + result = this.regedService.updatepwd(id,pwd.get("newpwd"),pwd.get("token")); + } } else diff --git a/src/main/java/com/reyun/service/RegedService.java b/src/main/java/com/reyun/service/RegedService.java index b373f27..5ca33c8 100644 --- a/src/main/java/com/reyun/service/RegedService.java +++ b/src/main/java/com/reyun/service/RegedService.java @@ -23,4 +23,6 @@ public interface RegedService { public Boolean sendactivewhenUpdateEmail(String url,String newemail,Long time); + public void verifyAccount(Account account,String ip); + } diff --git a/src/main/java/com/reyun/service/impl/RegedServiceImpl.java b/src/main/java/com/reyun/service/impl/RegedServiceImpl.java index cbb8434..49d75da 100644 --- a/src/main/java/com/reyun/service/impl/RegedServiceImpl.java +++ b/src/main/java/com/reyun/service/impl/RegedServiceImpl.java @@ -22,6 +22,7 @@ public class RegedServiceImpl implements RegedService { @Autowired AccountRepository accountRepository; + private static final String VERIFY_EMAIL_SEND_URL = Constant.adminUrl + "/api/tool/account/sendemail/"; @Override public Boolean sendActiceEmail(String url, Long id) { @@ -263,6 +264,24 @@ public class RegedServiceImpl implements RegedService { return result; } + @Override + public void verifyAccount(Account account, String ip) { + + account.setStatus(-1); + Account result = this.accountRepository.save(account); + + String token = HashAlgorithms.MD5("superuser_" + account.getId()); + //审核 + final String sendEmailUrl = VERIFY_EMAIL_SEND_URL + account.getId()+"/"+token + "?ip=" + (StringUtil.isEmpty(ip)?"":ip); + Thread sendEmailThread = new Thread(){ + @Override + public void run(){ + HttpClientUtil.doHttpGetRequest(sendEmailUrl,"trackingio"); + } + }; + sendEmailThread.setName("sendEmailThread"); + sendEmailThread.start(); + } } diff --git a/src/main/webapp/Gruntfile.js b/src/main/webapp/Gruntfile.js index 404f206..a2610bc 100644 --- a/src/main/webapp/Gruntfile.js +++ b/src/main/webapp/Gruntfile.js @@ -51,8 +51,8 @@ module.exports = function(grunt) { connect: { proxies: [{ context: ['/api'], - host: 'localhost', - //host: '192.168.2.9', + // host: 'localhost', + host: '192.168.2.37', port: 8091, https: false, xforward: true, @@ -152,7 +152,7 @@ module.exports = function(grunt) { } } }, - + useminPrepare: { html: ["<%= yeoman.app %>/index.html","<%= yeoman.app %>/login.html","<%= yeoman.app %>/activation.html","<%= yeoman.app %>/failure.html","<%= yeoman.app %>/forget.html","<%= yeoman.app %>/register.html","<%= yeoman.app %>/success.html","<%= yeoman.app %>/resetpwd.html","<%= yeoman.app %>/olduser.html","<%= yeoman.app %>/demo.html","<%= yeoman.app %>/home.html","<%= yeoman.app %>/main.html"], options: { @@ -217,13 +217,13 @@ module.exports = function(grunt) { "template/**/*.jpg", "*.ico" ] - }, + }, { expand: true, cwd: ".tmp/images", dest: "<%= yeoman.dist %>/images", src: ["generated/*"] - }, + }, { expand: true, cwd: "", @@ -327,7 +327,7 @@ module.exports = function(grunt) { else{ dd.setDate(m-i); } - + arr.unshift(this.date(dd,'YYYY-MM-DD')); } return arr; @@ -388,6 +388,6 @@ module.exports = function(grunt) { }); grunt.registerTask("build", ["clean:dist", "useminPrepare", "concurrent:dist", "copy:dist", "concat", "cssmin", "uglify", "usemin"]); - + return grunt.registerTask("default", ["build"]); }; diff --git a/src/main/webapp/activation.html b/src/main/webapp/activation.html index 0221c21..1a08d24 100644 --- a/src/main/webapp/activation.html +++ b/src/main/webapp/activation.html @@ -7,10 +7,10 @@ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=0" name="viewport"> <link rel="shortcut icon" href="favicon.ico" type="image/x-icon"> - <link rel="stylesheet" href="styles/login.css?r=0.2909022173844278"> - <script src="scripts/change.js?r=0.030827486654743552"></script> - <script src="scripts/regcom1.js?r=0.3052951830904931"></script> - <script src="scripts/regui.js?r=0.25714277545921504"></script> + <link rel="stylesheet" href="styles/login.css?r=0.3226349928881973"> + <script src="scripts/change.js?r=0.7112433344591409"></script> + <script src="scripts/regcom1.js?r=0.8485788230318576"></script> + <script src="scripts/regui.js?r=0.6336440013255924"></script> </head> <body ng-app="app" ng-controller="acvitationCtrl"> diff --git a/src/main/webapp/demo.html b/src/main/webapp/demo.html index 3a634b5..c927e80 100644 --- a/src/main/webapp/demo.html +++ b/src/main/webapp/demo.html @@ -7,8 +7,8 @@ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=0" name="viewport"> <link rel="shortcut icon" href="favicon.ico" type="image/x-icon"> - <script src="scripts/change.js?r=0.08680267073214054"></script> - <script src="scripts/demo.js?r=0.045918663730844855"></script> + <script src="scripts/change.js?r=0.8273717106785625"></script> + <script src="scripts/demo.js?r=0.6742043008562177"></script> <script type="text/javascript"> $.get("/api/demo",function(data) { diff --git a/src/main/webapp/failure.html b/src/main/webapp/failure.html index 52b738c..82aa0a4 100644 --- a/src/main/webapp/failure.html +++ b/src/main/webapp/failure.html @@ -7,10 +7,10 @@ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=0" name="viewport"> <link rel="shortcut icon" href="favicon.ico" type="image/x-icon"> - <link rel="stylesheet" href="styles/login.css?r=0.37783288047648966"> - <script src="scripts/change.js?r=0.3716961811296642"></script> - <script src="scripts/regcom2.js?r=0.37709248601458967"></script> - <script src="scripts/failure.js?r=0.3122320701368153"></script> + <link rel="stylesheet" href="styles/login.css?r=0.004987573949620128"> + <script src="scripts/change.js?r=0.7360319485887885"></script> + <script src="scripts/regcom2.js?r=0.9184650341048837"></script> + <script src="scripts/failure.js?r=0.9326669548172504"></script> </head> <body ng-app="app" ng-controller="failureCtrl"> diff --git a/src/main/webapp/forget.html b/src/main/webapp/forget.html index aee9c25..c363cfe 100644 --- a/src/main/webapp/forget.html +++ b/src/main/webapp/forget.html @@ -7,10 +7,10 @@ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=0" name="viewport"> <link rel="shortcut icon" href="favicon.ico" type="image/x-icon"> - <link rel="stylesheet" href="styles/login.css?r=0.6608913082163781"> - <script src="scripts/change.js?r=0.30872130882926285"></script> - <script src="scripts/regcom3.js?r=0.47114668297581375"></script> - <script src="scripts/forget.js?r=0.03463357547298074"></script> + <link rel="stylesheet" href="styles/login.css?r=0.8714517550542951"> + <script src="scripts/change.js?r=0.722045328002423"></script> + <script src="scripts/regcom3.js?r=0.9209529019426554"></script> + <script src="scripts/forget.js?r=0.02848458243533969"></script> </head> <body ng-app="app" ng-controller="forgetCtrl"> diff --git a/src/main/webapp/home1.html b/src/main/webapp/home1.html index cc49b5f..b3b3fa9 100644 --- a/src/main/webapp/home1.html +++ b/src/main/webapp/home1.html @@ -7,11 +7,11 @@ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=0" name="viewport"> <link rel="shortcut icon" href="favicon.ico" type="image/x-icon"> - <link rel="stylesheet" href="styles/home.css?r=0.8068126861471683"> + <link rel="stylesheet" href="styles/home.css?r=0.12386019225232303"> - <script src="scripts/change.js?r=0.7223377269692719"></script> - <script src="scripts/home.js?r=0.3399517161305994"></script> - <script src="scripts/homectrl.js?r=0.7286222137045115"></script> + <script src="scripts/change.js?r=0.012064240872859955"></script> + <script src="scripts/home.js?r=0.8174812090583146"></script> + <script src="scripts/homectrl.js?r=0.19571213447488844"></script> <script> var _hmt = _hmt || []; diff --git a/src/main/webapp/index.html b/src/main/webapp/index.html index 860dd61..968b6e0 100644 --- a/src/main/webapp/index.html +++ b/src/main/webapp/index.html @@ -8,12 +8,12 @@ <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=0" name="viewport"> <link rel="shortcut icon" href="favicon.ico" type="image/x-icon"> - <link rel="stylesheet" href="styles/index.css?r=0.15496363677084446"> - <script src="scripts/change.js?r=0.8926405222155154"></script> - <script src="scripts/com.js?r=0.8612561319023371"></script> - <script src="scripts/app.js?r=0.24742182483896613"></script> + <link rel="stylesheet" href="styles/index.css?r=0.37707017827779055"> + <script src="scripts/change.js?r=0.820802059955895"></script> + <script src="scripts/com.js?r=0.2901791038457304"></script> + <script src="scripts/app.js?r=0.8841697168536484"></script> - <script src="scripts/ui.js?r=0.9506633128039539"></script> + <script src="scripts/ui.js?r=0.6637934029567987"></script> </head> <body ng-app="app" ng-controller="indexCtrl" ng-class="{'noreport':backReport}"> @@ -26,8 +26,8 @@ </div> <div class="rightHeader clearfix"> <div class="mainMenu" ng-class="{'mainShow':hasMenuFlag || isall}"> - <div ng-class="{'active':mainMenu=='behavior'}" ng-click="showSubMenus('behavior')" ng-if="showMenuFlag.behavior || isall">行为分析</div> - <!-- <div ng-class="{'active':mainMenu=='export'}" ng-click="showSubMenus('export')" ng-if="showMenuFlag.export || isall">数据导出</div> --> + <div ng-class="{'active':mainMenu=='behavior'}" ng-click="showSubMenus('behavior')">行为分析</div> + <div ng-class="{'active':mainMenu=='export'}" ng-click="showSubMenus('export')">数据导出</div> <div ng-class="{'active':mainMenu=='management'}" ng-click="showSubMenus('management')">管理中心</div> </div> @@ -46,6 +46,19 @@ <span class="mr10">注册会员</span> <span style="cursor: default;">升级套餐,请联系商务</span> </div> + + <div class="itemInfo light" ng-if="!byflow && !flowRestrict && behaviorAuth && (isSuper || isManage)"> + 用户行为分析 :本月已使用流量 {{ioUsed}}K + </div> + + <div class="itemInfo light" ng-if="byflow && !flowRestrict && behaviorAuth && (isSuper || isManage)"> + <div class="userflowText">用户行为分析(月流量):</div> + <div class="allflow"> + <div class="useflow" ng-class="{'useflowRed': ioPercent >= 0.8}" style="width: {{ioPercent*70}}px; max-width: 70px"></div> + </div> + <div class="userflowText">{{ioUsed}}K/{{ioAll}}K</div> + </div> + <div class="itemInfo light" ng-if="!preStatus"> 有效期至:<span ng-class="{'error':pastLong <= 0}">{{userPastDate}}</span> </div> @@ -127,8 +140,40 @@ <div class="btn8" ng-click="okCust()">确定</div> </div> </div> + + <!--行为分析 流量用户--> + <div class="openTipWin" ng-if="ioAlert && byflow && ioPercentRel <= 0.2 && behaviorAuth && !flowRestrict" ng-controller="collectCtrl" ng-cloak style="z-index: 999;"> + <div class="closeGray" ng-click="closeFlow('ioAlert')"></div> + <div class="tipCont" style="height: 100px;"> + <p ng-if="ioPercentRel > 0.05 && ioPercentRel <= 0.2">您订阅的用户行为分析“{{flowName}}”中本月的{{ioAll}}K事件数已经使用{{ioUsed}}K,请关注您的套餐流量使用情况。<br> </p> + <p ng-if="ioPercentRel > 0 && ioPercentRel < 0.05">您订阅的用户行为分析“{{flowName}}”中本月的{{ioAll}}K事件数已经使用{{ioUsed}}K,流量即将用尽,超出部分将占用下月流量限额,最高使用量不超出5%。服务到期后我们将会继续支持您的数据上报和接收,但数据展示服务将暂时无法使用。</p> + <p ng-if="ioPercentRel <= 0 && ioPercentRel > -0.05">您订阅的用户行为分析“{{flowName}}”中本月的{{ioAll}}K事件数已经用完,本月超出部分将占用下月流量限额,最高使用量不超出5%。服务到期后我们将会继续支持您的数据上报和接收,但数据展示服务将暂时无法使用。请您预估下月的流量使用,如果产品统计需求增加,请联系商务升级您的套餐。</p> + <p ng-if="ioPercentRel <= -0.05"> + <span ng-hide="behaviorAuth && ioPercentRel <= -0.05">您订阅的用户行为分析“{{flowName}}”中本月的{{ioAll}}K事件数已经用完,本月超出部分将占用下月流量限额,最高使用量不超出5%。服务到期后我们将会继续支持您的数据上报和接收,但数据展示服务将暂时无法使用。请您预估下月的流量使用,如果产品统计需求增加,请联系商务升级您的套餐。</span> + <span ng-show="behaviorAuth && ioPercentRel <= -0.05">您购买的“{{flowName}}”已经用完,账号将自动退出,为了不影响您的正常使用,请尽快联系商务续订服务。流量用尽后我们将会继续支持您的数据上报和接收,但数据展示服务将暂时无法使用。<br> </span> + </p> + </div> + <div class="openBtnGroup clearfix"> + <div class="btn8" ng-click="closeFlow('ioAlert')" style="margin-left: 65px;">我知道了</div> + </div> + </div> + <!--行为分析 流量用户到期--> + <div class="openTipWin" ng-if="ioDateAlert && pastLong <= 30 && behaviorAuth && !flowRestrict" ng-controller="collectCtrl" ng-cloak> + <div class="closeGray" ng-click="closeFlow('ioDateAlert')"></div> + <div class="tipCont" style="height: 100px;"> + <p ng-if="pastLong > 0 && pastLong <= 30">您购买的用户行为分析“{{flowName}}”将在<span ng-if="pastLong!= 30">{{pastLong}}天</span><span ng-if="pastLong== 30">一个月</span>后({{userPastDate}})到期,为了不影响您的正常使用,请尽快联系商务续订服务。服务到期后我们将会继续支持您的数据上报和接收,但数据展示服务将暂时无法使用。</p> + <p ng-if="pastLong==0">您购买的用户行为分析“{{flowName}}”将在明天过期,为了不影响您的正常使用,请尽快联系商务续订服务。服务到期后我们将会继续支持您的数据上报和接收,但数据展示服务将暂时无法使用。</p> + <p ng-if="pastLong < 0">您购买的用户行为分析“{{flowName}}”已经到期,为了不影响您的正常使用,请尽快联系商务续订服务。服务到期后我们将会继续支持您的数据上报和接收,但数据展示服务将暂时无法使用。</p> + </div> + <div class="openBtnGroup clearfix"> + <div class="btn8" ng-click="closeFlow('ioDateAlert')" style="margin-left: 65px;">我知道了</div> + </div> + </div> + </div> <div class="helpTipWrap winTips" id="winTC"></div> </div> + <div class="alphaDiv" ng-if="ioAlert && byflow && ioPercentRel <= 0.2 && behaviorAuth && !flowRestrict" style="z-index: 997"></div> + <div class="alphaDiv" ng-if="ioDateAlert && pastLong <= 30 && behaviorAuth && !flowRestrict" style="z-index: 997"></div> </body> </html> diff --git a/src/main/webapp/login.html b/src/main/webapp/login.html index 048424b..de1fd92 100644 --- a/src/main/webapp/login.html +++ b/src/main/webapp/login.html @@ -7,11 +7,11 @@ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=0" name="viewport"> <link rel="shortcut icon" href="favicon.ico" type="image/x-icon"> - <link rel="stylesheet" href="styles/login.css?r=0.6724015795625746"> + <link rel="stylesheet" href="styles/login.css?r=0.09618336986750364"> - <script src="scripts/change.js?r=0.37141271703876555"></script> - <script src="scripts/lgcom4.js?r=0.6735840095207095"></script> - <script src="scripts/lgui.js?r=0.5855049260426313"></script> + <script src="scripts/change.js?r=0.05420921300537884"></script> + <script src="scripts/lgcom4.js?r=0.7121068546548486"></script> + <script src="scripts/lgui.js?r=0.24842062732204795"></script> <script> var _hmt = _hmt || []; @@ -58,10 +58,10 @@ <div class="errorWrap"></div> <div class="loginBtn" ng-click="doLogin()">登录</div> - <!-- <div class="forgetWrap"> + <div class="forgetWrap"> <span class="ml10">还没有账号?<a href="register.html"><span class="under">立即注册</span></a></span> - <span class="right under">体验DEMO</span> - </div> --> + <!-- <span class="right under">体验DEMO</span> --> + </div> </div> </div> <div class="openBgDiv" ng-show="noActive==1" ng-cloak></div> diff --git a/src/main/webapp/olduser.html b/src/main/webapp/olduser.html index dec395f..28d8946 100644 --- a/src/main/webapp/olduser.html +++ b/src/main/webapp/olduser.html @@ -7,10 +7,10 @@ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=0" name="viewport"> <link rel="shortcut icon" href="favicon.ico" type="image/x-icon"> - <link rel="stylesheet" href="styles/login.css?r=0.5317122181877494"> - <script src="scripts/change.js?r=0.7924824352376163"></script> - <script src="scripts/regcom5.js?r=0.4877237342298031"></script> - <script src="scripts/olduser.js?r=0.97215764853172"></script> + <link rel="stylesheet" href="styles/login.css?r=0.31149819074198604"> + <script src="scripts/change.js?r=0.8929546170402318"></script> + <script src="scripts/regcom5.js?r=0.5510864944662899"></script> + <script src="scripts/olduser.js?r=0.7056754943914711"></script> </head> <body ng-app="app" ng-controller="olduserCtrl"> diff --git a/src/main/webapp/register_.html b/src/main/webapp/register_.html index 2dfbf2d..1a02bb2 100644 --- a/src/main/webapp/register_.html +++ b/src/main/webapp/register_.html @@ -7,10 +7,10 @@ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=0" name="viewport"> <link rel="shortcut icon" href="favicon.ico" type="image/x-icon"> - <link rel="stylesheet" href="styles/login.css?r=0.5324887416791171"> - <script src="scripts/change.js?r=0.8414971525780857"></script> - <script src="scripts/regcom6.js?r=0.13982015755027533"></script> - <script src="scripts/register.js?r=0.6793806061614305"></script> + <link rel="stylesheet" href="styles/login.css?r=0.9104294695425779"> + <script src="scripts/change.js?r=0.6640091622248292"></script> + <script src="scripts/regcom6.js?r=0.7040833386126906"></script> + <script src="scripts/register.js?r=0.0359445393551141"></script> <script> var _hmt = _hmt || []; diff --git a/src/main/webapp/resetpwd.html b/src/main/webapp/resetpwd.html index f76ac11..f6b31c6 100644 --- a/src/main/webapp/resetpwd.html +++ b/src/main/webapp/resetpwd.html @@ -7,10 +7,10 @@ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=0" name="viewport"> <link rel="shortcut icon" href="favicon.ico" type="image/x-icon"> - <link rel="stylesheet" href="styles/login.css?r=0.12542712758295238"> - <script src="scripts/change.js?r=0.9124180839862674"></script> - <script src="scripts/regcom7.js?r=0.9299184740521014"></script> - <script src="scripts/resetpwd.js?r=0.9602820398285985"></script> + <link rel="stylesheet" href="styles/login.css?r=0.5230596014298499"> + <script src="scripts/change.js?r=0.7893789829686284"></script> + <script src="scripts/regcom7.js?r=0.5114126577973366"></script> + <script src="scripts/resetpwd.js?r=0.8044941681437194"></script> </head> <body ng-app="app" ng-controller="resetpwdCtrl"> diff --git a/src/main/webapp/scripts/app.js b/src/main/webapp/scripts/app.js index 07b8fea..2b180d2 100644 --- a/src/main/webapp/scripts/app.js +++ b/src/main/webapp/scripts/app.js @@ -1,3 +1,3 @@ -!function(){"use strict";angular.module("app",["ui.router","ngAnimate","app.collect","app.manage","app.active"])}(),function(){"use strict";function a(a,b,c){var d={},e=a;return d.setName=function(a){e.name=a},d.getName=function(){return e.name},d.isDemoUser=function(){return"demo@reyun.com"==c.getCookie("ryioUname")},d.getChannelCampaignList=function(){var a=[{id:"channel",name:"渠道"},{id:"campgroup",name:"活动组"},{id:"campaign",name:"活动"}];return c.cloneJSON(a)},d.getPackTypeList=function(){var a=[{id:"all",name:"全部"},{id:"APPMARKET",name:"分包"},{id:"ADVERTISING",name:"分链接"}];return c.cloneJSON(a)},d.getDeviceTypeList=function(){var a=[{id:"device",name:"按设备看"},{id:"user",name:"按账号看"}];return c.cloneJSON(a)},d.getChannelCampaignParams=function(a,b,c){var d="",e="";return"channel"==a?(d=b+"/channel/findall",e="渠道"):"campgroup"==a?(d=b+"/campgroup/findall",e="活动组"):"campbychannel"==a?(d=b+"/campaign/findbychannel?channelid="+c,e="活动"):(d=b+"/campaign/findall",e="活动"),{url:d,txt:e}},d.getParams=function(a,b){var c={appid:a.appid};if(a.date&&(c.startdate=a.date.startDate,c.enddate=a.date.endDate),b&&1==b&&""!=a.typeInfoIds&&-1!=a.typeInfoIds)switch(a.typeId){case"campgroup":c.cgroupid=a.typeInfoIds;break;case"campaign":c.campaignid=a.typeInfoIds;break;case"channel":default:c.cid=a.typeInfoIds}return c},d.getOneColors=function(){return["#1fb9e9"]},d.getTwoColors=function(){return["#1fb9e9","#f8a20f"]},d.getThreeColors=function(){return["#1fb9e9","#f8a20f","#8e6eb6"]},d.getSixColors=function(){return["#1fb9e9","#f8a20f","#8e6eb6","#9cc272","#f36e55","#00b37f"]},d.getTenColors=function(){return["#1fb9e9","#f8a20f","#00b37f","#f36e55","#5c9eff","#fccc01","#9cc272","#ec407a","#8e6eb6","#cddc39"]},d.getToday=function(){return{startDate:c.getDay(0),endDate:c.getDay(0)}},d.getYesDay=function(){return{startDate:c.getDay(-1),endDate:c.getDay(-1)}},d.getLastDays=function(a,b){return angular.isUndefined(b)?b=-1:a>0?a-=1:a+=1,{startDate:c.getDay(a),endDate:c.getDay(b)}},d.getLastWeeks=function(a){var b=c.getNowWeekNum(),d=new Date,e=d.getFullYear(),f={end:e+c.getStr(b)},g=a+b+1;if(g>0)f.start=e+c.getStr(g);else{var h=c.getYearWeekCount(e-1);f.start=e-1+c.getStr(h+g)}return f},d.getLastMonths=function(a){var b=new Date,d=b.getFullYear(),e=b.getMonth()+1,f={end:d+c.getStr(e)},g=e+a+1;return f.start=g>0?d+c.getStr(g):d-1+c.getStr(12+g),f},d.getStringTypes=function(){return[{id:"=",name:"="},{id:"!=",name:"≠"},{id:"in",name:"in",more:!0},{id:"not in",name:"not in",more:!0}]},d.getNumberTypes=function(){return[{id:">",name:">"},{id:">=",name:">="},{id:"=",name:"="},{id:"<=",name:"<="},{id:"<",name:"<"},{id:"between",name:"between",both:!0}]},d.showLoading=function(){document.getElementById("sysLoad").style.display="block"},d.hideLoading=function(){document.getElementById("sysLoad").style.display="none"},d.showAlp=function(){document.getElementById("alpLoad").style.display="block"},d.hideAlp=function(){document.getElementById("alpLoad").style.display="none"},d.showTips=function(c,e){d.hideLoading();var f=1200;c.length>10&&(f=2e3),e=e||f,a.operShow=!0,a.operMsg=c,b(function(){d.hideTips()},e)},d.hideTips=function(){a.operShow=!1,a.operMsg=""},d.getMenuTip=function(b){var c=a.currentPageTips[b];return c||(c="无"),c},d.getFunnelData=function(a,b,d){var e=(new Date).getTime();angular.isUndefined(a)&&(a={});var f=[],g=[],h=[],i=-1;d.filter(function(b){var d=a[b],e=a["rate_"+b];d=angular.isUndefined(d)?0:d,e=angular.isUndefined(e)?0:e,f.push(d),g.push(e),i>-1&&(0==i?h.push(0):h.push(c.decimal2(d/i*100))),i=d});for(var j={val:[g,f],trans4last:h,key:b,rmd:++e},k=j.val[0],l=[],m=0,n=0;n<k.length;n++){var o=m-k[n];m>0||(o=0),l.push(o),m=k[n]}return j.val.splice(1,0,l),j},d.noDataChart=function(){var a=(new Date).getTime();return{val:[],trans4last:[],key:[],rmd:++a,name:[]}},d.getChartConditions=function(a,b,d,e,f){c.isNullStr(e)&&(e="normal");var g=d.appid,h=c.cloneJSON(d),i=d.viewtype||"";delete h.appid;var j={reportName:b,conditions:JSON.stringify(h),functionType:e,subType:i,app:g,name:a};return c.isNullStr(f)||(j.functionId=f),j},d.getByteLen=function(a){for(var b=0,c=0;c<a.length;c++){null!=a.charAt(c).match(/[a-zA-Z\u4e00-\u9fa5]/)?b+=2:b+=1}return b},d.getTableColsWidth=function(b,c,e){var f=[],g=a.unfoldFlag?90:230,h=c?($(window).width()-10-g)/(e||2)-(3==e?48:45):$(window).width()-g,i=0;if(angular.forEach(b,function(a){var b=d.getByteLen(a),e="推广活动,推广活动组,渠道,子渠道,子账号,关键字,创意,付费激活周期".indexOf(a)>-1?240:"日期"==a?"day"!=c?160:90:"分组"==a?150:8*b+(c?13:27),g={width:e+"px","max-width":e+"px"};i+=e,f.push(g)}),i<h){var j=h-2-i,k=f.length,l=(j-12*k)/k;angular.forEach(f,function(a){var b=parseInt(a.width.slice(0,-2));a.width=a["max-width"]=b+l+"px"})}return f},d.getCMidInfo=function(){var a=localStorage.getItem("rytf_cid"),b=localStorage.getItem("rytf_campid");return c.isNullStr(a)&&(a=-1,b="_default_"),{cid:a,campaignid:b}},d.getRoleName=function(){return a.isSuper?"主账号":a.isManage?"管理员":a.isAppManage?"子应用管理员":void 0},d.getUser=function(){var a=localStorage.getItem("ry_user");return c.isNullStr(a)?{}:JSON.parse(a)},d}angular.module("app").factory("ToolService",["$rootScope","$timeout","UtilService",a])}(),function(){"use strict";function a(){var a={};return a.randRange=function(a,b){return Math.floor(Math.random()*(b-a+1))+a},a.sortArray=function(a,b){return"desc"==b?a.sort(function(a,b){return a==b?0:a>b?-1:1}):a.sort(function(a,b){return a==b?0:a>b?1:-1})},a.getMaxByArray=function(b){var c=a.cloneJSON(b);return c=c.sort(function(a,b){return a==b?0:a>b?-1:1}),c[0]},a.sortArray2=function(a,b,c,d){var e=[],f=a.length;f>0&&(b.filter(function(b,c){for(var d=[],g=0;g<f;g++)d.push(a[g][c]);d.push(b),e.push(d)}),"desc"==d?e.sort(function(a,b){return a[c]==b[c]?0:a[c]>b[c]?-1:1}):e.sort(function(a,b){return a[c]==b[c]?0:a[c]>b[c]?1:-1}),e.filter(function(c,d){b[d]=c.pop();for(var e=0;e<f;e++)a[e][d]=c[e]}))},a.sumArray=function(a){for(var b=0,c=0;c<a.length;c++)null!=a[c]&&(b+=a[c]);return b},a.decimal2=function(a,b){b=b||2;for(var c="1",d=1,e=0;e<b;e++)c+="0";d=parseInt(c);var f=Math.round(a*d)/d,g=f+"",h=g.indexOf(".");return h>0&&g.substring(h,g.length)>2&&(g=g.substring(0,g.length-2),f=parseFloat(g)),f},a.getDay=function(a){var b=new Date,c=function(a){var b=a.getFullYear(),c=a.getMonth()+1,d=a.getDate();return c<10&&(c="0"+c),d<10&&(d="0"+d),b+"-"+c+"-"+d},d=b.getTime()+864e5*a;return b.setTime(d),c(b)},a.getLastMonthsDate=function(a,b){var c=new Date(a);return c.setMonth(c.getMonth()-Number(b)),c.Format("yyyy-MM-dd")},a.getYearWeekList=function(a){if(void 0===a){a=(new Date).getFullYear()}var b=[],c=new Date(a,0,1),d=c.getDay(),e=new Date(a,11,31);d=0==d?7:d;var f=c.clone().addDays(7-d),g=0;for(d>0&&d<5&&(g=1,b.push({week:g,date:f,year:a}));f<e&&!e.isSameDay(f);)g++,f=f.clone().addDays(7),b.push({week:g,date:f,year:a});var h=new Date(a,11,31),i=h.getDay();return i>0&&i<4&&b.pop(),b},a.getYearWeekCount=function(b){return a.getYearWeekList(b).length},a.getNowWeekNum=function(){var a=Date.today(),b=new Date(a.getFullYear(),0,1),c=b.getDay(),d=b.clone(),e=0;c>0&&(d=d.addDays(8-c),e=1);var f=diffDate(d,a);return Math.ceil(f/7)+e},a.cloneJSON=function(a){var b=Object.prototype.toString.call(a);return b.indexOf("Object")>-1?jQuery.extend(!0,{},a):b.indexOf("Array")>0?a.concat():a},a.splitString=function(a,b){for(var c="",d=0,e=new RegExp(/[^\x00-\xff]/),f=0;f<a.length;f++){var g=a.charAt(f);d+=e.test(g)?2:1,d<=b&&(c+=g)}return{str:c,len:d}},a.merge=function(){return Array.prototype.concat.apply([],arguments)},a.isNullStr=function(a){return!(!angular.isUndefined(a)&&""!=a&&null!=a&&"null"!=a)},a.getStr=function(a){return a<10?"0"+a:a+""},a.setCookie=function(a,b,c){$.cookie(a,b,{expires:c,path:"/",secure:!1,raw:!1})},a.getCookie=function(a){return $.cookie(a)},a.setItem=function(a,b){window.localStorage.setItem(a,b)},a.getItem=function(a){return window.localStorage.getItem(a)},a.copyTxt=function(a){$(a).select();var b=!1;try{b=document.execCommand("Copy","false",null)}catch(c){b=!1}return b},a.randRangeId=function(){if(a.getCookie("tkRmdId"))return a.getCookie("tkRmdId");var b=(new Date).getTime()+a.randRange(3,5);return a.setCookie("tkRmdId",b,1095),b},a.randDeviceId=function(){if(localStorage.getItem("rmdDeviceId"))return localStorage.getItem("rmdDeviceId");var b=(new Date).getTime()+a.randRange(3,10);return localStorage.setItem("rmdDeviceId",b),b},a.getAppkey=function(){return"0d401839250deff23daf62fd49a444cb"},a.getTKAppkey=function(){return"f0f251af10e66a0c94d2e923d8863105"},a.getLogRoot=function(){return"http://log.reyun.com"},a.deviceInfo=function(){return{versions:function(){var a=navigator.userAgent;navigator.appVersion;return{trident:a.indexOf("Trident")>-1,presto:a.indexOf("Presto")>-1,webKit:a.indexOf("AppleWebKit")>-1,gecko:a.indexOf("Gecko")>-1&&-1==a.indexOf("KHTML"),mobile:!!a.match(/AppleWebKit.*Mobile.*/),ios:!!a.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/),android:a.indexOf("Android")>-1||a.indexOf("Linux")>-1,iPhone:a.indexOf("iPhone")>-1,iPad:a.indexOf("iPad")>-1,webApp:-1==a.indexOf("Safari")}}(),language:(navigator.browserLanguage||navigator.language).toLowerCase()}},a.operatorSystem=function(){var a=navigator.userAgent,b="Win32"==navigator.platform||"Windows"==navigator.platform,c="Mac68K"==navigator.platform||"MacPPC"==navigator.platform||"Macintosh"==navigator.platform||"MacIntel"==navigator.platform;if(c)return"Mac";if("ipad"==a.match(/ipad/i))return"ipad";if("iPhone"==navigator.platform)return"iPhone";if("X11"==navigator.platform&&!b&&!c)return"Unix";var d=String(navigator.platform).indexOf("Linux")>-1,e="android"==a.toLowerCase().match(/android/i);if(d)return e?"Android":"Linux";if(b){if(a.indexOf("Windows NT 5.0")>-1||a.indexOf("Windows 2000")>-1)return"Win2000";if(a.indexOf("Windows NT 5.1")>-1||a.indexOf("Windows XP")>-1)return"WinXP";if(a.indexOf("Windows NT 5.2")>-1||a.indexOf("Windows 2003")>-1)return"Win2003";if(a.indexOf("Windows NT 6.0")>-1||a.indexOf("Windows Vista")>-1)return"WinVista";if(a.indexOf("Windows NT 6.1")>-1||a.indexOf("Windows 7")>-1)return"Win7";if(a.indexOf("Windows NT 6.2")>-1||a.indexOf("Windows 8")>-1)return"Win8"}return"other"},a.getBrowser=function(a){var b=window.navigator.userAgent,c="",d="";b.toLowerCase().indexOf("micromessenger")>-1?c="wechat":/Firefox/g.test(b)?(b=b.split(" "),c="Firefox",d=b[b.length-1].split("/")[1]):/MSIE/g.test(b)?(c="IE",b.indexOf("QQBrowser")>-1&&(c="QQBrowser"),b=b.split(";"),d=b[1].split(" ")[2]):/Opera/g.test(b)?(b=b.split(" "),c="Opera",d=b[b.length-1].split("/")[1]):/Chrome/g.test(b)?(b=b.split(" "),c="Chrome",d=b[b.length-2].split("/")[1]):/^apple\s+/i.test(navigator.vendor)?(b=b.split(" "),c="Safair",d=b[b.length-2].split("/")[1]):c="others";var e=d.split(".");return e.length>1&&(d=e[0]+"."+e[1]),a?c+d:c},a}angular.module("app").factory("UtilService",a)}(),function(){"use strict";function a(){var a={};return a.getDay=function(a){var b=new Date,c=function(a){var b=a.getFullYear(),c=a.getMonth()+1,d=a.getDate();return c<10&&(c="0"+c),d<10&&(d="0"+d),b+"-"+c+"-"+d},d=b.getTime()+864e5*a;return b.setTime(d),c(b)},a.getYearWeekList=function(a){if(void 0===a){a=(new Date).getFullYear()}var b=[],c=new Date(a,0,1),d=c.getDay(),e=new Date(a,11,31);d=0==d?7:d;var f=c.clone().addDays(7-d),g=0;for(d>0&&d<5&&(g=1,b.push({week:g,date:f,year:a}));f<e&&!e.isSameDay(f);)g++,f=f.clone().addDays(7),b.push({week:g,date:f,year:a});var h=new Date(a,11,31),i=h.getDay();return i>0&&i<4&&b.pop(),b},a.getYearWeekCount=function(b){return a.getYearWeekList(b).length},a.getNowWeekNum=function(){var a=Date.today(),b=new Date(a.getFullYear(),0,1),c=b.getDay(),d=b.clone(),e=0;c>0&&(d=d.addDays(8-c),e=1);var f=diffDate(d,a);return Math.ceil(f/7)+e},a.getToday=function(){return{startDate:a.getDay(0),endDate:a.getDay(0)}},a.getYesDay=function(){return{startDate:a.getDay(-1),endDate:a.getDay(-1)}},a.getLastDays=function(b,c){return angular.isUndefined(c)&&(c=-1),0==c&&b<0&&(b+=1),0==c&&b>0&&(b-=1),{startDate:a.getDay(b),endDate:a.getDay(c)}},a.getLastWeeks=function(b){var c=a.getNowWeekNum(),d=new Date,e=d.getFullYear(),f={end:e+a.getStr(c)},g=b+c+1;if(g>0)f.start=e+a.getStr(g);else{var h=a.getYearWeekCount(e-1);f.start=e-1+a.getStr(h+g)}return f},a.getLastMonths=function(b){var c=new Date,d=c.getFullYear(),e=c.getMonth()+1,f={end:d+a.getStr(e)},g=e+b+1;return f.start=g>0?d+a.getStr(g):d-1+a.getStr(12+g),f},a.getStr=function(a){return a<10?"0"+a:a+""},a.getWeekRangeDate=function(a,b){a=a||0;var c=new Date,d=c.getDay();d=0==d?7:d;var e=c.clone().addDays(1-d),f=c;return a>0?(e=e.clone().addDays(7*a),f=e.clone().addDays(6)):a<0&&(f=e.clone().addDays(7*(a+1)-1),e=e.clone().addDays(7*a)),b&&-1==b&&Date.isSameDay(f,Date.today())&&(e==f?e=f=f.clone().addDays(-1):f=f.clone().addDays(-1)),{startDate:e.Format("yyyy-MM-dd"),endDate:f.Format("yyyy-MM-dd")}},a.getMonthRangeDate=function(a,b){a=a||0;var c=new Date,d=c.getFullYear(),e=c.getMonth(),f=c.getDate(),g=null,h=null;return 0!=a?(e+=a,e<0&&(e+=11,--d),f=Date.getDaysInMonth(d,e),h=new Date(d,e,f),g=h.clone(),g.setDate(1)):(b&&-1==b&&(f+=-1),g=c.clone(),h=c,g.setDate(1),h.setDate(f)),{startDate:g.Format("yyyy-MM-dd"),endDate:h.Format("yyyy-MM-dd")}},a.getDaysNum=function(a,b){var c,d,e="-";c=a.split(e),d=b.split(e);var f=new Date(c[0],c[1]-1,c[2]),g=new Date(d[0],d[1]-1,d[2]);return parseInt(Math.abs(f-g)/1e3/60/60/24)},a}angular.module("app").factory("DateService",a)}(),function(){"use strict";angular.module("app").run(["$rootScope","$state","$stateParams","UtilService","$templateCache","$location","$window","ToolService","HttpService","DateService","$timeout",function(a,b,c,d,e,f,g,h,i,j,k){function l(a){e.removeAll()}a.$state=b,a.$stateParams=c,a.isSuper="true"==d.getCookie("ryioIsSuper")||1==d.getCookie("ryioIsSuper");var m=d.getCookie("ryioRole");m&&"1"==m?a.isManage=!0:m&&"2"==m&&(a.isAppManage=!0),a.isall=a.isSuper||a.isManage||a.isAppManage,a.firstMeau="/collect/custommenu";var n=(d.getCookie("ryioUid"),["userinfo","product","nopower","expiration"]);a.mainMenus={behavior:["custommenu","eventstats","retention","funnel","usergroup","profile","event","activityevent","custommenuDetail","intelligentpath"],dataexport:["report"],manage:["app","auth"]},a.$on("$stateChangeStart",function(b,c,e,h){var i=c.name,j=i.substring(i.indexOf(".")+1),l=j.indexOf("Detail"),m=h.name,o=m.substring(m.indexOf(".")+1);if(""==m&&("nopower"==j||"expiration"==j))return window.location.href="index.html",!1;var p=j||o;a.mainMenus.behavior.indexOf(p)>-1?a.mainMenu="behavior":a.mainMenus.dataexport.indexOf(p)>-1?a.mainMenu="export":a.mainMenus.manage.indexOf(p)>-1&&(a.mainMenu="management");var q=function(){var b=d.getCookie("unfoldFlag");b&&(a.unfoldFlag="false"!=b),document.getElementById("sysLoad").style.display="none",document.getElementById("alpLoad").style.display="none",l>-1&&(j=j.substring(0,l));"activityevent"==j&&(j="event");var c=a.isweb&&a.webHideMenus.indexOf(j)>-1;if(""==j||"collect"==j||c)return f.path(a.firstMeau),!1;if("systemparam"==j&&a.demoU);else if(n.indexOf(j)>-1);else if(!a.isSuper&&a.curRoleAuth&&!a.hasTheMenu(j)){var e=a.firstMeau,h=e.substring(e.lastIndexOf("/")+1);return f.path(a.firstMeau),h==a.pagePath&&g.location.reload(),!1}n.indexOf(j)>-1?a.backReport=!0:a.backReport=!1,a.preStatus="product"==j||"userinfo"==j&&"product"==o,$(".rightWrap").scrollTop(0),a.pagePath=j};a.limitInfo?q():k(function(){q()},100)});var l=a.$on("$stateChangeSuccess",l)}]).config(["$provide",function(a){a.decorator("$exceptionHandler",["$delegate",function(a){return function(b,c){document.getElementById("sysLoad").style.display="none",-1==String(b).indexOf("$compile:tpload")&&a(b,c)}}])}]).factory("httpInterceptor",[function(){return{request:function(a){var b=$.cookie("ryioToken");return a.headers.Authorization=b,a.requestTimestamp=(new Date).getTime(),a.timeout=3e4,a},response:function(a){return a.config.responseTimestamp=(new Date).getTime(),a}}}]).config(["$httpProvider",function(a){a.interceptors.push("httpInterceptor")}])}(),function(){function a(a,b,c,d,e,f,g,h,j){a.unfoldFlag=void 0!=a.unfoldFlag&&a.unfoldFlag,b.queryLimit=function(b){angular.isDefined(b)?limitPM=c.getInfo("login/limit/"+b):limitPM=c.getInfo("login/limit"),limitPM.then(function(b){a.limitInfo=b,e.setItem("limitInfo",JSON.stringify(a.limitInfo))})},a.demoU=d.isDemoUser(),b.goLogin=function(){window.location.href="/login.html"},b.queryApp=function(d){c.getInfo("app/findall").then(function(c){if(b.appAlllistInfo=c,b.applistInfo=c.filter(function(a){return 1!=a.isDebug}),1==d)return!1;var g=e.getCookie("ryioLastApp"),h=e.getCookie("ryioDemoapk");if(e.setCookie("ryioDemoapk",""),b.applistInfo.length>0){e.isNullStr(g)&&(g="-1"),g=Number(g);var j=b.applistInfo.filter(function(a){return e.isNullStr(h)?a.id==g:a.appkey==h});for(g=0==j.length?b.applistInfo[0].id:j[0].id,b.appidInit==g?b.appfresh=++k:b.appidInit=g,i=0;i<b.applistInfo.length;i++)b.applistInfo[i].id==b.appidInit&&(b.appkey=b.applistInfo[i].appkey)}else a.isSuper||a.isManage||a.isAppManage?f.go("collect.app"):b.goLogin()})},b.$on("f5Applist",function(a,c){b.queryApp(c)}),b.hasSubMenus=function(){b.showMenuFlag={};for(var c=a.curRoleAuth.roleAuthDetailList,d=0;d<c.length&&!(b.showMenuFlag.admonitor&&b.showMenuFlag.behavior&&b.showMenuFlag.export);d++)"admonitor"==c[d].parentAuth||"campaignmanager"==c[d].parentAuth?b.showMenuFlag.admonitor=!0:"behavior"==c[d].parentAuth||"eventmanage"==c[d].parentAuth?b.showMenuFlag.behavior=!0:"export"==c[d].parentAuth&&(b.showMenuFlag.export=!0);"export"==a.mainMenu&&!b.showMenuFlag.export||"behavior"==a.mainMenu&&!b.showMenuFlag.behavior?a.mainMenu="":"admonitor"!=a.mainMenu||b.showMenuFlag.admonitor||(a.mainMenu="")},a.webHideMenus=[],b.$on("appid",function(c,d){a.appInstance=d.info,b.platform=d.info.platform,a.isandroid="Android"==b.platform,a.isios="iOS"==b.platform,a.isweb="H5"==b.platform;var f=g.$$path,h=f.indexOf("Detail");if(f.indexOf("appDetail")>-1)return!1;h>-1?(b.appid=void 0,g.path(f.substring(0,h))):a.isweb&&a.webHideMenus.indexOf(a.pagePath)>-1&&(b.appid=void 0,g.path(a.firstMeau)),(""==a.pagePath||"collect"==a.pagePath||!a.isSuper&&a.curRoleAuth&&!b.hasTheMenu(a.pagePath))&&(b.appid=void 0,g.path(a.firstMeau)),a.appid=b.appid=d.info.id,e.setCookie("ryioLastApp",b.appid,7)}),b.goToCustom=function(b,c){g.path("/collect/custommenu/"+b),a.custID=b},b.gotoCustonMenu=function(a){var b=f.href("collect.custommenu");window.open(b+"/"+a,"_blank")};var k=(new Date).getTime();b.$on("mngappTo",function(a,c){if(b.appid==c)return!1;b.appidInit==c?b.appfresh=++k:b.appidInit=c}),b.loginuserName=e.getCookie("ryioUname"),b.currentAccountId=e.getCookie("ryioUid"),b.userPastDate=e.getCookie("ryioPastDate"),b.errorBack=function(a){d.showTips(a)};e.randRangeId(),e.getCookie("ryioUid");b.goPage=function(b){a.channeluniqueName="normal","home"==b&&(b=a.firstMeau,b=b.substring(1).replace("/",".")),"collect.custommenu"==b&&(a.custID=""),"channel"==b.substring(b.indexOf(".")+1)&&(a.channeluniqueName="normal"),f.current&&f.current.name==b?f.reload(b,{pageid:null}):f.go(b,{pageid:null})},b.resizeStyle=function(){var b="0px";return"userinfo"==a.pagePath||"nopower"==a.pagePath?a.mainMenu=!1:b=a.unfoldFlag?"40px":"186px",$(".conditionAlpha").css("left",b),a.panelw=$(window).width()-b.slice(0,-2)-84,{"margin-left":b}},b.toggleMenu=function(){a.unfoldFlag=!a.unfoldFlag,e.setCookie("unfoldFlag",a.unfoldFlag),b.$broadcast("conentresize",!0)},a.hasTheMenu=function(c,d,e){var f=a.curRoleAuth.roleAuthDetailList.filter(function(e){return angular.isDefined(d)&&1==d?a.isweb?e.parentAuth==c&&-1==b.webHideMenus.indexOf(e.auth):e.parentAuth==c:angular.isDefined(d)&&2==d?e.auth==c&&1==e.edit:"export"==c?a.hasTheMenu(c,1):e.auth==c&&1==e.view});return angular.isDefined(e)?f:f.length>0},a.showSubMenus=function(c){if(b.channelAlert)return!1;if("management"!=c&&b.applistInfo&&0==b.applistInfo.length)return b.appAlllistInfo.length>0?d.showTips("请先完成"+b.appAlllistInfo[0].name+"的数据调试"):d.showTips("请先创建应用"),!1;a.mainMenu=c;var e="";e="behavior"==c?"/collect/"+a.mainMenus.behavior[0]:"export"==c?"/collect/"+a.mainMenus.dataexport[a.isweb?1:0]:"/manage/"+a.mainMenus.manage[0],g.path(e)},a.showMenu=function(c,d){return null==c&&(c=b.pagePath),!(b.isweb&&b.webHideMenus.indexOf(c)>-1)&&(a.isSuper||a.isManage||a.isAppManage?(b.campaigninfoGroup=!0,!0):!!a.curRoleAuth&&b.hasTheMenu(c,d))},a.hasEditPower=function(){return a.showMenu(null,2)},b.showDataModel=function(b){if(a.isweb&&"retention"==b)return!1;if("flow"==b)return!0;if("channel"==b)return!0;var c={pay:"payAuth",retention:"retentionAuth",isnatureopen:"isNatureOpen",topauth:"topAuth"}[b];return!!(a.isSuper||a.isManage||a.isAppManage)||!!a.curRoleAuth&&a.curRoleAuth[c]},b.formTipMsg="信息没填全或数据格式有误,请检查",a.$watch("pagePath+isweb",function(d){if(d=b.pagePath,angular.isDefined(d)&&""!=d&&"product"!=d){c.getInfo("tip/"+d,{}).then(function(b){a.currentPageTips=b},function(b){a.currentPageTips={}})}else a.currentPageTips={}}),b.userLogout=function(){c.getInfo("login/logout",{}).then(function(a){c.logOutCookie()})},b.showNoticew=!1,b.queryNotice=function(){c.getInfo("notice/findDeploy",{}).then(function(a){b.noticeList=a;var c=e.cloneJSON(a);c&&angular.isArray(c)?c.sort(function(a,b){return new Date(a.deployDate)>new Date(b.deployDate)?-1:1}):c=[],c.length>0&&(b.newNoticeInfo=c[0])}),j(b.queryNotice,18e4)},b.showNoticeWin=function(){b.showNoticew=!0,d.showAlp()},b.hideNoticeWin=function(){b.showNoticew=!1,d.hideAlp()},b.clickNotice=function(a){var d=a.id;b.curNoticeId==d?b.curNoticeId=-1:(b.curNoticeId=d,a.isRead||(a.isRead=!0,b.newNoticeInfo&&b.newNoticeInfo.id==d&&(b.newNoticeInfo.isRead=!0),c.postInfo("notice/saveReadLog/"+d,{})))},b.initpage=function(){b.queryLimit(),b.queryApp(),b.queryNotice()},"/active/product"!=g.path()&&b.initpage(),b.judgeNameChange=function(a,b){return!e.isNullStr(b)&&(""!=a&&""!=b&&angular.lowercase(a)!=angular.lowercase(b)||""==a&&""!=b)},b.pwdPlacehold="仅支持数字,大小写字母,且至少包含其中2种,长度限制为6-18位"}angular.module("app").controller("indexCtrl",["$rootScope","$scope","HttpService","ToolService","UtilService","$state","$location","DateService","$timeout",a])}(),function(){function a(a,b,c){var d={};return d.loginTimeout=function(a){null!=a&&a.code&&-1002==a.code&&d.logOutCookie()},d.noLogin=function(a){if(angular.isUndefined(a)||-1==a.indexOf("login")){var b=c.getCookie("ryioUid");c.isNullStr(b)&&d.logOutCookie()}},d.logOutCookie=function(){c.setCookie("ryioUid",""),window.localStorage.setItem("ryioUauth",""),c.setCookie("ryioToken",""),c.setCookie("ryioIsSuper",""),window.location.href="/login.html"},d.getInfo=function(c,e,f){f||d.noLogin(c);var g=b.defer(),h="";for(var i in e)h+="&"+i+"="+e[i];-1==c.indexOf("?")?c+="?r="+Math.random():c+="&r="+Math.random(),c+=h;a.get("/api/"+c).success(function(a){d.loginTimeout(a),a.code&&200!=a.code?g.reject(a):g.resolve(a.content||a)}).error(function(a){d.loginTimeout(a),g.reject(a)});return g.promise},d.getInfoByUrl=function(c){d.noLogin();var e=b.defer();a.get(c).success(function(a){d.loginTimeout(a),e.resolve(a.content||a)}).error(function(a){d.loginTimeout(a),e.reject(a)});return e.promise},d.getReportData=function(e,f){d.noLogin();var g=b.defer(),h=c.cloneJSON(f),i=h.appid;delete h.appid;var j="?r="+Math.random();for(var k in h)j+="&"+k+"="+h[k];a.get("/api/report/"+i+"/"+e+j).success(function(a){d.loginTimeout(a),a.code&&200!=a.code?g.reject(a):g.resolve(a.content||a)}).error(function(a){d.loginTimeout(a),g.reject(a)});return g.promise},d.postInfo=function(c,e,f){f||d.noLogin(c);var g=b.defer();-1==c.indexOf("?")?c+="?r="+Math.random():c+="&r="+Math.random();a.post("/api/"+c,e).success(function(a,b){d.loginTimeout(a),a.status=b,a.code&&-5e3==a.code?g.resolve(a):a.code&&-6001==a.code?g.resolve(a):g.resolve(a.content||a)}).error(function(a){d.loginTimeout(a),g.reject(a)});return g.promise},d.postInfoByUrl=function(c,e){d.noLogin();var f=b.defer();-1==c.indexOf("?")?c+="?r="+Math.random():c+="&r="+Math.random();a.post(c,e).success(function(a){f.resolve(a.content||a)}).error(function(a){d.loginTimeout(a),f.reject(a)});return f.promise},d.putInfo=function(c,e){d.noLogin(c);var f=b.defer();-1==c.indexOf("?")?c+="?r="+Math.random():c+="&r="+Math.random();a.put("/api/"+c,e).success(function(a,b){d.loginTimeout(a),a.status=b,a.code&&a.code<0?f.reject(a):f.resolve(a.content||a)}).error(function(a){d.loginTimeout(a),f.reject(a)});return f.promise},d.deleteInfo=function(c){d.noLogin();var e=b.defer();-1==c.indexOf("?")?c+="?r="+Math.random():c+="&r="+Math.random();a.delete("/api/"+c).success(function(a,b){d.loginTimeout(a),a.status=b,e.resolve(a.content||a)}).error(function(a){d.loginTimeout(a),e.reject(a)});return e.promise},d.downFile=function(c,d){var e=b.defer();return-1==c.indexOf("api")&&(c="/api/"+c),a({method:"GET",url:c,params:d,responseType:"arraybuffer"}).success(function(a,b,c){if(204==b)return e.resolve({code:-1}),!1;e.resolve({code:1}),c=c();var d=c.filename,f=c["content-type"],g=document.createElement("a");try{var h=new Blob([a],{type:f}),i=window.URL.createObjectURL(h);g.setAttribute("href",i),g.setAttribute("download",decodeURIComponent(d));var j=new MouseEvent("click",{view:window,bubbles:!0,cancelable:!1});g.dispatchEvent(j)}catch(k){}}).error(function(a){}),e.promise},d}angular.module("app").factory("HttpService",["$http","$q","UtilService",a])}(),function(){function a(a,c){var d={},e={line:1,column:2,columnstack:3,bar:4,area:5,areastack:6,arealiner:7,pie:8,funnel:9,columnline:10,barY:11};d.getOption=function(d,f,g){var h=new b(c,g,a),i=h.init(d,g),j=[];if(e[f]==e.line)j=h.lineChart();else if(e[f]==e.area)j=h.areaChart();else if(e[f]==e.areastack)j=h.areaChart(!0,!1);else if(e[f]==e.arealiner)j=h.areaChart(!1,!0);else if(e[f]==e.column)j=h.columnChart(!1),i.yAxis[0].axisTick=i.xAxis[0].axisTick,i.yAxis[0].axisLine=i.xAxis[0].axisLine;else if(e[f]==e.columnstack)j=h.columnChart(!0,g.flag),i.yAxis[0].axisTick=i.xAxis[0].axisTick,i.yAxis[0].axisLine=i.xAxis[0].axisLine;else if(e[f]==e.bar)j=h.barChart(),i.yAxis[0]=h.getXaxis2(),i.xAxis[0]=h.getYaxis2(),i.grid.right=20;else if(e[f]==e.funnel)j=h.funnelChart(),i.tooltip=h.funnelTooltip();else if(e[f]==e.columnline)j=h.columnLineChart(),i.yAxis[0].axisTick=i.xAxis[0].axisTick,i.yAxis[0].axisLine=i.xAxis[0].axisLine,i.yAxis.push(h.getYaxis(!0));else if(e[f]==e.barY){j=h.barChart(!0),i.yAxis[0]=h.getXaxis2(),i.xAxis[0]=h.getYaxis2(),i.grid.right=20,i.grid.top=0;for(var k=d.name,l=k.length-1,m=0;m<l;m++)i.xAxis.push(h.getYaxis2()),i.xAxis[m+1].show=!1}return i.series=j,angular.isDefined(g.color)&&(i.color=g.color),angular.isDefined(g.legend)&&(i.legend.show=g.legend),i};var f=new b(c);return d.getPieOption=function(a,b,c){return f.pieChart(a,c)},d.getMapOption=function(a,b,c){return f.mapChart(a,c)},d.getLoginMapOption=function(a,b,c){return f.loginMapChart(a,c)},d}function b(a,b,d){var e="#666666",f="#d5d7d8",g="SimHei,Arial",h="#666666",i=12;this.UtilService=a,this.init=function(a,b){this.data=a.val,this.name=a.name,this.key=a.key,this.chartData=a,this.config=b;var c=this.commonOptions();return c.xAxis=[this.getXaxis()],c.yAxis=[this.getYaxis()],c},this.commonOptions=function(a){var c="";this.config.ispercent&&1==this.config.ispercent&&(c+="%");var e=[],j=0,k={};if(this.name&&this.name.length>0){for(var l=0;l<this.name.length;l++){var m=this.name[l].lastIndexOf("_");e.push({name:b.flag?this.name[l].slice(0,-1==m?this.name[l].length-1:m):this.name[l],icon:"rect"})}if(this.config.hidelast)for(var l=this.config.hidelast;l>0;l--){var n=this.name.slice(0-l)[0];k[n]=!1}}var o="",p=this;return this.config.title&&(o=this.config.title,0!=this.config.legend&&(j=30)),{title:{text:o,textStyle:{color:h,fontSize:i,fontFamily:g},left:"center"},legend:{data:e,top:j,textStyle:{color:h,fontSize:i,fontFamily:g},itemWidth:10,itemHeight:10,formatter:function(a){return e.length>2?echarts.format.truncateText(a,80,"14px Microsoft Yahei","…"):a},tooltip:{show:!0},selected:k},grid:{left:10,top:j+40,bottom:10,right:0,containLabel:!0},tooltip:{trigger:b.flag&&"hasGro"!=b.flag&&"nohasGro"!=b.flag?"item":"axis",formatter:function(a){var e,f=a.length,g="";if(b.flag&&"hasGro"!=b.flag&&"nohasGro"!=b.flag){var h=a.seriesName;return null!=a.value&&"-"!=a.value&&(g+='<span style="color:'+a.color+'">●</span>'+h+" : "+p.UtilService.decimal2(a.value,2)+c,p.config.lastprecent&&(g+="%"),p.config.namesub&&p.config.namesub.length>0&&p.config.namesub[a.seriesIndex]&&(g+=p.config.namesub[a.seriesIndex]),g+="<br/>"),g=a.name+"<br/>"+g}for(var i=0;i<f;i++){e=a[i];var h=e.seriesName;null!=e.value&&"-"!=e.value&&(g+='<span style="color:'+e.color+'">●</span>'+h+" : "+p.UtilService.decimal2(e.value,2)+c,p.config.lastprecent&&i==f-1&&(g+="%"),p.config.namesub&&p.config.namesub.length>0&&p.config.namesub[i]&&(g+=p.config.namesub[i]),g+="<br/>")}return g=e.name+"<br/>"+g,b.id?(d.$emit("tooltipObj",{objs:a,id:b.id,flag:b.flag}),""):g},axisPointer:{type:"hasGro"==b.flag||"nohasGro"==b.flag?"shadow":"line",lineStyle:{color:f}}},toolbox:{show:!0,feature:{mark:{show:!1},dataView:{show:!1,readOnly:!1},saveAsImage:{show:!1}}},calculable:!1,color:["#e8340e","#0088cc","#61a0a8","#d48265","#91c7ae","#749f83","#ca8622","#bda29a","#6e7074","#546570","#2f4554","#006000","#642100","#6c3365","#484891","#844200","#006030","#003e3e","#584b00","#336666"]}},this.getXaxis=function(a){var b=this;return{type:"category",data:this.key,splitLine:{show:!1},axisLabel:{textStyle:{color:e,fontSize:i,fontFamily:g},formatter:function(a){if(a){var c=b.UtilService.splitString(a,12);return b.config.issmart&&c.len>12?c.str+"...":a}}},axisTick:{lineStyle:{color:f}},axisLine:{lineStyle:{color:f}}}},this.getXaxis2=function(a){var b=this;return{type:"category",data:this.key,splitLine:{show:!1},axisLabel:{textStyle:{color:e,fontSize:i,fontFamily:g},formatter:function(a){if(angular.isUndefined(a))return"";var c=b.UtilService.splitString(a,12);return c.len>12?c.str+"...":a}},axisTick:{lineStyle:{color:f}},axisLine:{lineStyle:{color:f}},inverse:!0}},this.getYaxis=function(a){var b="";return(this.config.ispercent&&1==this.config.ispercent||a)&&(b+="%"),{type:"value",axisLabel:{textStyle:{color:e,fontSize:i,fontFamily:g},formatter:function(a){return c(a)+b}},axisTick:{show:!1,lineStyle:{opacity:0}},axisLine:{show:!1},splitLine:{show:!0,lineStyle:{color:f,type:"dashed"}},min:0,splitNumber:4}},this.getYaxis2=function(){var a="";return this.config.ispercent&&1==this.config.ispercent&&(a+="%"),{type:"value",axisLabel:{textStyle:{color:e,fontSize:i,fontFamily:g},formatter:function(b){return c(b)+a}},axisTick:{lineStyle:{color:f}},axisLine:{lineStyle:{color:f}},splitLine:{show:!1},min:0,splitNumber:3}},this.lineChart=function(){for(var a=[],b=0;b<this.name.length;b++){var c={};c.name=this.name[b],c.type="line",c.lineStyle={normal:{width:1.2}},c.smooth=!0,c.data=this.data[b],a[b]=c}return a},this.areaChart=function(a,b){var c=[],d=.25;this.config.opacity&&(d=this.config.opacity);for(var e=0;e<this.name.length;e++){var f={};f.name=this.name[e],f.type="line",f.data=this.data[e],a&&(f.stack="总量"),f.smooth=!0,f.areaStyle={normal:{opacity:d}},b&&(f.areaStyle.normal.color=new echarts.graphic.LinearGradient(0,0,0,1,[{offset:0,color:this.config.color[e]},{offset:1,color:"#fff"}])),f.lineStyle={normal:{width:1.2}},c[e]=f}return c},this.columnChart=function(a,b){for(var c=[],d=[],e=0;e<this.name.length;e++){var f={},g=this.name[e].lastIndexOf("_");f.name=b?this.name[e].slice(0,-1==g?this.name[e].length:g):this.name[e],f.type="bar",f.barMaxWidth=18,f.barGap=0,f.data=this.data[e],a&&(f.stack="总量"+(b?this.name[e].slice(-1==g?0:g):""));var h="";h=d.indexOf(f.name)>-1?c[e-1].itemStyle.normal.color:this.config.color[e],f.itemStyle={normal:{color:h}},b||(f.itemStyle.emphasis={color:this.config.color[e]}),d.push(f.name),c[e]=f}return c},this.barChart=function(a){for(var b=[],d=0;d<this.name.length;d++){var e={};e.name=this.name[d],e.type="bar",this.config.barwidth?e.barMaxWidth=this.config.barwidth:(e.barMaxWidth=18,e.barGap=0),a&&(e.xAxisIndex=d),e.data=this.data[d], -this.config.isbartext&&1==this.config.isbartext&&(e.label={normal:{show:!0,position:"right",formatter:function(a){var b=a.data;return b>0?c(b):""}}}),b[d]=e}return b},this.pieChart=function(a,b){var c=a.name,d=a.key,e=a.val[0],f=[];return e&&d.filter(function(b,d){var g=[];c.filter(function(a,c){g.push({value:e[b][c],name:a})});var h={type:"pie",clockwise:!1,label:{normal:{show:!(c.length>20)}},radius:[0,120],center:1==a.key.length?["50%","50%"]:0==d?["25%","50%"]:["75%","50%"],selectedOffset:5,data:g};f.push(h)}),{tooltip:{trigger:"item",formatter:"{b}: {c} ({d}%)"},legend:{show:!1},color:b.color,series:f}},this.funnelTooltip=function(){var a=this,b="用户";return 0==this.config.isdevice&&(b="用户"),{trigger:"axis",formatter:function(c){if("markPoint"==c.componentType)return"转化率"+c.value;c.length>0&&(c=c[0]);var d=c.dataIndex;if(d>0){var e="";return c?(e=c.name+"的"+b+"个数:"+a.data[2][d]+"<br/>",e+=a.key[0]+"到"+c.name+"的"+b+"转化成功率:"+a.data[0][d]+"%"):e="",e}return c.name+"的"+b+"个数:"+a.data[2][0]}}},this.funnelChart=function(){var a=this,b=this.config.barwidth,c=[],d=[],e="image:///images/chartarrow.png",f=[54,26],h=this.key.length;if(h>0){var i=(b-70)/h,j=80,k="insideTop",l="#ffffff";if(h>5&&(j=40),1==this.config.issmart)h>5?(e="image:///images/chartarrow2.png",f=[10,10],i=(b-20)/h,j=30,k="insideTop",l="#666"):j=45;else for(var m=this.chartData.trans4last,n=0;n<m.length;n++)c.push({value:m[n]+"%",x:40+5*n+i*(n+1)+"px",y:"50%"});for(var n=0;n<2;n++){var o={};o.type="bar",o.stack="转化率",o.barMaxWidth=j,o.barGap=0,o.data=this.data[n],0==n&&(o.label={normal:{show:!0,position:k,formatter:function(b){return 0==b.value&&0==a.data[2][b.dataIndex]||b.value<10?"":a.UtilService.decimal2(b.value)+"%"},textStyle:{color:l,fontFamily:g}}},o.itemStyle={normal:{color:this.config.color[0],textStyle:{color:"#ffffff",fontFamily:g}}}),1==n&&(o.itemStyle={normal:{color:this.config.color[1]},emphasis:{color:this.config.color[1]}}),o.markPoint={show:!0,symbol:e,symbolSize:f,label:{normal:{formatter:function(b){return h>5&&1==a.config.issmart?"":b.value},textStyle:{color:"#ffffff",fontFamily:g}},emphasis:{formatter:function(a){return a.value}}},data:c},d[n]=o}}return d},this.mapChart=function(a,b){var c=a.name,d=a.key,f=a.val[0],h=[],i=0;if(f&&f.length>0){var i=this.UtilService.getMaxByArray(f);i=100*Math.ceil(i/100),d.filter(function(a,b){h.push({value:f[b],name:a})})}return{tooltip:{trigger:"item",formatter:function(a){return isNaN(a.value)?a.name:a.name+"<br/>"+a.seriesName+":"+a.value}},visualMap:{min:0,max:i,color:["#7ec3f2","#dcebf4"]},series:[{name:c[0],type:"map",mapType:"china",selectedMode:"multiple",top:20,bottom:20,label:{normal:{show:!0,textStyle:{fontSize:4,color:e,fontFamily:g}},emphasis:{show:!0}},itemStyle:{normal:{areaColor:"#eeeeee",borderColor:"#858585"},emphasis:{areaColor:"#1fb9e9"}},data:h}]}},this.loginMapChart=function(a,b){var c=a.name,d=a.key,f=a.val[0],h=[],i=0;if(f&&f.length>0){var i=this.UtilService.getMaxByArray(f);i=100*Math.ceil(i/100),d.filter(function(a,b){h.push({value:f[b],name:a})})}return{tooltip:{trigger:"item",show:!1,formatter:function(a){return isNaN(a.value)?a.name:a.name+"<br/>"+a.seriesName+":"+a.value}},series:[{name:c[0],type:"map",mapType:"china",selectedMode:"multiple",top:20,bottom:20,label:{normal:{show:!1,textStyle:{fontSize:4,color:e,fontFamily:g}},emphasis:{show:!0}},itemStyle:{normal:{areaColor:"#424250",borderColor:"#1e1e26"},emphasis:{areaColor:"#3c3c4a"}},data:h}]}},this.columnLineChart=function(){for(var a=[],b=this.name.length,c=0;c<b;c++){var d={};d.name=this.name[c],d.barMaxWidth=18,d.barGap=0,d.data=this.data[c],c==b-1?(d.type="line",d.yAxisIndex=1):d.type="bar",d.itemStyle={normal:{color:this.config.color[c]},emphasis:{color:this.config.color[c]}},a[c]=d}return a}}function c(a){return a>999&a<1e4?(a/1e3).toFixed(1).toString()+"k":a>=1e4&&a<1e6?(a/1e4).toFixed(1).toString()+"w":a>=1e6&&a<1e9?(a/1e6).toFixed(1).toString()+"m":a>=1e9?(a/1e9).toFixed(1).toString()+"b":a}angular.module("app").factory("OptionService",["$rootScope","UtilService",a])}(),function(){function delTip(){return{restrict:"E",replace:!0,templateUrl:"/template/common/delwin.html?r="+tempVersion,transclude:!0,scope:{delfn:"&",status:"=",okTitle:"@"},link:function(a,b){a.btnname=a.okTitle?a.okTitle:"确定",a.hideWin=function(){a.status=!1}}}}function wincrmTip(){return{restrict:"E",replace:!0,templateUrl:"/template/common/wincrm.html?r="+tempVersion,transclude:!0,scope:{okfn:"&",nofn:"&",title:"@",status:"=",okTitle:"@",noTitle:"@"},link:function(a,b){angular.isUndefined(a.okTitle)&&(a.okTitle="确定"),angular.isUndefined(a.noTitle)&&(a.noTitle="取消"),a.hideWin=function(){a.status=!1,a.nofn()},a.crmWin=function(){a.status=!1,a.okfn()}}}}function okcrmTip(a){return{restrict:"E",replace:!0,templateUrl:"/template/common/okcrm.html?r="+tempVersion,transclude:!0,scope:{title:"@",status:"=",okfn:"&"},link:function(b,c){b.$watch("status",function(b){angular.isDefined(b)&&1==b&&a.showAlp()}),b.crmWin=function(){b.status=!1,a.hideAlp(),b.okfn()}}}}function stopEvent(){return{restrict:"A",link:function(a,b){jQuery(b).on("click",function(a){a.stopPropagation()})}}}function selectList(a){return{restrict:"E",replace:!0,templateUrl:"/template/common/select.html?r="+tempVersion,scope:{meauInfo:"=",meauName:"=",meauId:"@",meauId2:"=",meauData:"=",meauRefresh:"=",keyname:"@",keyid:"@",meauNull:"=",meauRed:"=",nosearch:"@",operationSel:"=",iconType:"@",meauSpe:"="},link:function(b,c){b.selme=!1,b.meauId=b.meauId||b.meauId2,b.clickMeau=function(c){if(!b.operSel||"pie"==c[b.keyid]&&b.meauSpe)return a.showTips("饼状图只适用于有分组的事件分析。"),!1;b.currentInfo=c,b.selName=c[b.keyname],b.selId=c[b.keyid],b.meauRed=!1,b.$emit(b.meauId,{info:c})},b.$watch("operationSel",function(a){angular.isUndefined(b.operationSel)?b.operSel=!0:b.operSel=a}),b.showsearch="true"!=b.nosearch,angular.isUndefined(b.keyname)&&(b.keyname="name"),angular.isUndefined(b.keyid)&&(b.keyid="id"),b.$watch("meauData+meauName+meauRefresh+meauInfo",function(){if(b.meauInfo&&angular.isDefined(b.meauData)&&-1!=b.meauData){var a=b.meauInfo.filter(function(a){return a[b.keyid]==b.meauData});a.length>0?b.clickMeau(a[0]):(b.selName=b.meauName,b.selId="")}else b.selName=b.meauName,b.selId=""}),b.$watch("meauNull",function(a){angular.isDefined(a)&&(b.selName=b.meauName,b.selId="")})}}}function selectTList(){return{restrict:"E",replace:!0,templateUrl:"/template/common/selectT.html?r="+tempVersion,scope:{meauInfo:"=",meauName:"=",meauId:"@",meauId2:"=",meauData:"=",meauType:"=",meauRefresh:"=",keyname:"@",keyid:"@",meauNull:"=",meauRed:"=",meauTypekey:"@",meauTypename:"@",operationSel:"="},link:function($scope,$element){angular.isDefined($scope.meauTypekey)&&($scope.typeKey=eval($scope.meauTypekey),$scope.typeName=eval($scope.meauTypename)),$scope.$watch("operationSel",function(a){angular.isUndefined($scope.operationSel)?$scope.operSel=!0:$scope.operSel=a}),$scope.selme=!1,$scope.meauId=$scope.meauId||$scope.meauId2,$scope.clickMeau=function(a){if(!$scope.operSel)return!1;$scope.selName=a[$scope.keyname],$scope.selId=a[$scope.keyid],$scope.meauRed=!1,$scope.$emit($scope.meauId,{info:a})},angular.isUndefined($scope.keyname)&&($scope.keyname="name"),angular.isUndefined($scope.keyid)&&($scope.keyid="id"),$scope.$watch("meauData+meauName+meauRefresh+meauInfo",function(){if($scope.meauInfo&&angular.isDefined($scope.meauData)&&-1!=$scope.meauData){var a=$scope.meauInfo.filter(function(a){return a[$scope.keyid]==$scope.meauData&&(a.type==$scope.meauType||!$scope.meauType)});a.length>0?$scope.clickMeau(a[0]):$scope.selName=$scope.meauName}else $scope.selName=$scope.meauName}),$scope.haslist=function(a){if(!$scope.meauInfo)return!1;for(var b=!1,c=0;c<$scope.meauInfo.length;c++)if($scope.meauInfo[c].type==a||$scope.meauInfo[c].dimensionType==a){b=!0;break}return b},$scope.$watch("searchlitxt",function(a){if(angular.isUndefined(a)||!a)return!1;$scope.virtual="",$scope.nature="",$scope.meauInfo.filter(function(b){angular.uppercase(b.name).indexOf(angular.uppercase(a))>-1&&"virtual"==b.type&&($scope.virtual=b.type),angular.uppercase(b.name).indexOf(angular.uppercase(a))>-1&&"nature"==b.type&&($scope.nature=b.type)})})}}}function selectMoreList(){return{restrict:"E",replace:!0,templateUrl:"/template/common/selectmore.html?r="+tempVersion,scope:{meauInfo:"=",meauName:"=",meauId:"@",meauData:"=",meauRefresh:"=",keyname:"@",keyid:"@",meauRed:"="},link:function(a,b){a.ischeckall=!1,a.selme=!1,angular.isUndefined(a.keyname)&&(a.keyname="name"),angular.isUndefined(a.keyid)&&(a.keyid="id"),a.clickMeau=function(b){a.meauRed=!1;var c=a.selIDS.indexOf(b[a.keyid]);c>-1?(a.selIDS.splice(c,1),a.selNames.splice(c,1),a.ischeckall=!1):(a.selIDS.push(b[a.keyid]),a.selNames.push(b[a.keyname]))},a.okSelect=function(){a.$emit(a.meauId,{info:a.selIDS.join(",")}),a.selme=!1},a.$watch("selme",function(){!a.selme&&"eventName"==a.keyid&&a.selIDS&&a.$emit(a.meauId,{info:a.selIDS.join(",")})}),a.$watch("meauData+meauName+meauRefresh+meauInfo",function(){if(a.selIDS=[],a.selNames=[],a.ischeckall=!1,a.meauInfo&&angular.isDefined(a.meauData)&&-1!=a.meauData&&"string"==typeof a.meauData){var b=a.meauData.split(","),c=a.meauInfo.filter(function(c){return b.indexOf(c[a.keyid])>-1});c.length>0?angular.forEach(c,function(b){a.clickMeau(b)}):a.selName=a.meauName}else a.selName=a.meauName}),a.checkAll=function(){a.ischeckall=!a.ischeckall,a.meauInfo.filter(function(b){var c=a.selIDS.indexOf(b[a.keyid]);!a.ischeckall&&c>-1&&(a.selIDS.splice(c,1),a.selNames.splice(c,1)),a.ischeckall&&-1==c&&(a.selIDS.push(b[a.keyid]),a.selNames.push(b[a.keyname]))})}}}}function selectParams(a){return{restrict:"E",replace:!0,templateUrl:"/template/common/selectparams.html?r="+tempVersion,scope:{meauInfo:"=",meauName:"=",meauId:"@",meauRefresh:"="},link:function(b,c){b.selme=!1,b.secondSel=!1,b.showSelWin=function(){b.selme=!0,b.selId&&(b.secondSel=!0)},b.clickMeau=function(a){var d=$(c).find(".optionList:eq(0)").width();b.selId!=a.id&&(b.secIDS=[],b.secKeys=[]),b.selId=a.id,b.selN=a.name,b.evtType=a.type,b.secondSel=!0,b.secondList=a.value,b.secKeyList=a.key,b.secondStyle={left:d+"px"}},b.clickSecMeau=function(a,c){var d=b.secIDS.indexOf(a);d>-1?(b.secIDS.splice(d,1),b.secKeyList&&b.secKeys.splice(d,1)):(b.secIDS.push(a),b.secKeyList&&b.secKeys.push(b.secKeyList[c]))},b.okSelect=function(){var c="";if(b.selId&&""!=b.selId){var d={};if(0==b.secIDS.length||b.secIDS.length>10)return a.showTips("请选择10个以内对比属性值"),!1;b.secKeyList?d[b.selId]=b.secKeys.join(","):d[b.selId]=b.secIDS.join(","),d.type=b.evtType,c=JSON.stringify(d),b.selName=b.selN}else b.selName=b.meauName;b.$emit(b.meauId,{info:c,name:b.selN}),b.selme=!1,b.secondSel=!1},b.$watch("meauName+meauInfo+meauRefresh",function(){b.meauInfo&&(b.secIDS=[],b.secondList=[],b.selId="",b.secondSel=!1),b.selName=b.meauName}),angular.element(document).on("click",function(){b.$apply(function(){b.selme=!1,b.secondSel=!1})})}}}function flipInfo(){return{restrict:"E",replace:!0,templateUrl:"/template/common/flipinfo.html?r="+tempVersion,scope:{listInfo:"=",searchTxt:"=",searchName:"@",listKey:"@",searchKey:"=",listRefresh:"="},link:function(a,b){a.everyId="everyId",a.everyList=[{id:10,name:"每页10条"},{id:20,name:"每页20条"},{id:30,name:"每页30条"}],a.minNum=a.everyInit=a.everyList[0].id,a.$on(a.everyId,function(b,c){var d=c.info.id;a.everyNum="all"==d?a.listInfo.length:d}),a.page={},a.$watch("listInfo+everyNum",function(b){if(angular.isDefined(a.listInfo)){var c=0;c=angular.isDefined(a.searchTxt)&&""!=a.searchTxt?a.filterCurList.length:a.listInfo.length,a.refreshInfos(c)}}),a.$watch("searchTxt",function(b){if(angular.isDefined(b)&&a.listInfo){a.searchN=a.searchName||a.searchKey,angular.isDefined(a.searchN)&&(a.searchNames=a.searchN.split(","));var c=a.listInfo.filter(function(c){for(var d=!1,e=a.searchNames.length-1;e>=0;e--)if(c[a.searchNames[e]]&&angular.uppercase(String(c[a.searchNames[e]])).indexOf(angular.uppercase(b))>-1){d=!0;break}return d});a.filterCurList=c,a.refreshInfos(c.length)}}),a.refreshInfos=function(b){var c=a.everyNum?a.everyNum:a.everyInit;a.page.totals=b,a.page.totalpages=Math.ceil(a.page.totals/c),a.page.curpage=1,a.sendData()},a.goto=function(b,c){switch(b){case 0:a.page.curpage=c;break;case 2:a.page.curpage>1&&a.page.curpage--;break;case 3:a.page.curpage<a.page.totalpages&&a.page.curpage++;break;case 4:a.page.curpage=a.page.totalpages;break;case 5:""!=a.gonum&&angular.isNumber(a.gonum)&&a.gonum<=a.page.totalpages?a.page.curpage=a.gonum:a.gonum=""}a.sendData()},a.$watch("page.curpage",function(b){angular.isDefined(b)&&(a.gonum=b)}),a.$watch("listRefresh",function(b){angular.isDefined(b)&&a.goto(0,1)}),a.sendData=function(){var b=(a.page.curpage-1)*a.everyNum-1,c=a.page.curpage*a.everyNum;a.$emit("flipinfo",{start:b,end:c,listkey:a.listKey,pagen:a.everyNum})}}}}function flipInfoDy(){return{restrict:"E",replace:!0,templateUrl:"/template/common/flipinfody.html?r="+tempVersion,scope:{totalNum:"=",listKey:"@",listRefresh:"="},link:function(a,b){a.everyId="everyId",a.everyList=[{id:20,name:"每页20条"},{id:50,name:"每页50条"},{id:100,name:"每页100条"}],a.minNum=a.everyInit=a.everyList[0].id,a.$on(a.everyId,function(b,c){var d=c.info.id;a.everyNum="all"==d?a.totalNum:d}),a.page={},a.$watch("totalNum+everyNum+listRefresh",function(b){angular.isDefined(a.totalNum)&&a.refreshInfos(a.totalNum-1)}),a.refreshInfos=function(b){var c=a.everyNum?a.everyNum:a.everyInit;a.page.totals=b,a.page.totalpages=Math.ceil(a.page.totals/c),a.page.curpage=1,a.sendData()},a.goto=function(b,c){var d=!1;switch(b){case 0:a.page.curpage==c&&(d=!0),a.page.curpage=c;break;case 2:1==a.page.curpage&&(d=!0),a.page.curpage>1&&a.page.curpage--;break;case 3:(a.page.curpage==a.page.totalpages||a.page.totalpages<=1)&&(d=!0),a.page.curpage<a.page.totalpages&&a.page.curpage++;break;case 4:a.page.curpage==a.page.totalpages&&(d=!0),a.page.curpage=a.page.totalpages;break;case 5:""!=a.gonum&&angular.isNumber(a.gonum)&&a.gonum<=a.page.totalpages?(a.page.curpage==a.gonum&&(d=!0),a.page.curpage=a.gonum):a.gonum=""}d||a.sendData()},a.$watch("page.curpage",function(b){angular.isDefined(b)&&(a.gonum=b)}),a.sendData=function(){a.$emit("flipinfo",{current:a.page.curpage,pagenum:a.everyNum,listkey:a.listKey})}}}}function minChart(a,b,c,d,e,f,g){return{restrict:"E",replace:!0,templateUrl:"/template/common/chart.html?r="+tempVersion,scope:{chartTitle:"@",chartData:"=",chartType:"@",chartTp:"=",chartConfig:"=",chartLoading:"=",chartResize:"@",chartCondition:"=",chartBack:"="},link:function(e,h){var i=echarts.init($(h).find(".chartInfo").get(0));e.$watch("chartLoading",function(){e.chartLoading});var j=0;e.$watch("chartData",function(){if(angular.isUndefined(e.chartData))return!1;j=0,e.chartType=e.chartTp||e.chartType;var d=null;if("funnel"==e.chartType){var f=$(h).find(".chartInfo").width();e.chartConfig.barwidth=f}if(i.clear(),d="pie"==e.chartType?a.getPieOption(e.chartData,e.chartType,e.chartConfig||{}):"map"==e.chartType?a.getMapOption(e.chartData,e.chartType,e.chartConfig||{}):a.getOption(e.chartData,e.chartType,e.chartConfig||{}),"funnel"==e.chartType&&0==e.chartConfig.barwidth);else{i.setOption(d);var f=$(h).find(".chartInfo").width();e.chartResize&&"yes"==e.chartResize?i.resize():0==f&&c(function(){i.resize()},500)}c(function(){if("funnel"==e.chartType&&0==e.chartConfig.barwidth){var b=$(h).find(".chartInfo").width();e.chartConfig.barwidth=b,d=a.getOption(e.chartData,e.chartType,e.chartConfig||{}),i.setOption(d)}i.resize()},200),i.hideLoading(),angular.element(b).bind("resize",function(){i.resize()}),e.$on("conentresize",function(){c(function(){i.resize()},50)})},!0),e.isChart=!0,e.changeChart=function(a){e.isChart=a,a&&c(function(){i.resize()},100)},g.$watch("limitInfo",function(a){angular.isDefined(a)&&(e.iscanExport=g.showMenu("export")&&1==g.limitInfo.platformExport)}),e.exportData=function(){var a=(new Date).getTime();if(j>0&&a-j<=expLimitTime)return j=a,f.showTips(expTimeTips),!1;j=a,f.showLoading(),d.postInfo("mng/export/report/"+e.chartCondition.app+"/generatefile",e.chartCondition).then(function(a){f.hideLoading(),f.showTips(exportTips)})}}}}function exportButton(a,b,c,d){return{restrict:"E",transclude:!0,replace:!0,templateUrl:"/template/common/export.html?r="+tempVersion,scope:{exportCondition:"="},link:function(b,e){b.style1={float:"right","margin-top":"11px","margin-right":"10px"};var f=0;b.$watch("exportCondition",function(){f=0}),b.exportData=function(){var d=(new Date).getTime();if(f>0&&d-f<=expLimitTime)return f=d,c.showTips(expTimeTips),!1;f=d,c.showLoading(),a.postInfo("mng/export/report/"+b.exportCondition.app+"/generatefile",b.exportCondition).then(function(a){c.hideLoading(),c.showTips(exportTips)})},d.$watch("limitInfo",function(a){angular.isDefined(a)&&(b.iscanExport=d.showMenu("export")&&1==d.limitInfo.platformExport)})}}}function ngEnter(){return function(a,b,c){b.bind("keydown keypress",function(b){13===b.which&&(a.$apply(function(){a.$eval(c.ngEnter)}),b.preventDefault())})}}function selectChannel(a,b){return{restrict:"E",replace:!0,templateUrl:"/template/common/channel.html?r="+tempVersion,scope:{channelList:"=",appOs:"=",type:"="},link:function(c,d){c.isSuper=b.isSuper,c.type?c.channType=null:c.channType="ry_coop",c.category="ADVERTISING",c.letter="",c.popchannellist=!1,angular.element(d).parent().bind("click",function(){c.$broadcast("popchannel",{}),c.$apply()}),c.$on("popchannel",function(){c.popchannellist=!0}),c.$watch("appOs",function(a){angular.isDefined(a)&&(c.appplattype=a)}),c.changeType=function(a){c.channType=a,c.category="ADVERTISING",c.letter=""},c.$watch("channType+appplattype+channelList+category",function(a){angular.isDefined(c.channelList)&&angular.isDefined(c.appplattype)&&angular.isDefined(c.category)&&(2==c.appplattype?"ry_bd"!=c.channType?c.curChannelList=c.channelList.filter(function(a){return a.type==c.channType&&a.osAndroid&&a.category==c.category}):c.curChannelList=c.channelList.filter(function(a){return a.type==c.channType&&a.osAndroid}):1==c.appplattype?c.curChannelList=c.channelList.filter(function(a){return a.type==c.channType&&a.osIos&&"ADVERTISING"==a.category}):c.curChannelList=c.channelList.filter(function(a){return a.type==c.channType&&a.osWeb}))}),c.clickChannel=function(a){c.$emit("curchannel",{info:a}),c.curchid=a.id,c.popchannellist=!1},c.goChannel=function(){a.go("collect.channel")}}}}function popTip(){return{restrict:"E",transclude:!0,replace:!0,template:'<div class="opIcon p" ng-mouseleave="showtip=false" style="height:30px;"><span ng-transclude ng-click="clickTip()"></span><div class="poptips" ng-show="showtip"><div class="poparrow"></div>{{tipinfo}}</div></div>',scope:{tipinfo:"="},link:function(a,b){a.showtip=!1,a.clickTip=function(){a.showtip=!a.showtip}}}}function isLoading(){return{restrict:"E",replace:!0,templateUrl:"/template/common/loading.html?r="+tempVersion,scope:{doLoading:"="},link:function(a,b){a.myLoading=!1,a.$watch("doLoading",function(b){angular.isDefined(b)&&(a.myLoading=b)})}}}function noData(){return{restrict:"E",replace:!0,templateUrl:"/template/common/nodata.html?r="+tempVersion,scope:{},link:function(a,b){}}}function dateRange(a){return{restrict:"E",replace:!0,templateUrl:"/template/common/daterange.html?r="+tempVersion,scope:{nodrange:"@",noToday:"@",datekey:"@",maxRange:"@"},link:function(b,c){angular.isUndefined(b.nodrange)&&(b.nodrange=!1),a.isDemoUser()&&(b.nodrange=!0),angular.isUndefined(b.noToday)?b.noToday=!0:b.noToday="false"!=b.noToday&&0!=b.noToday,angular.isUndefined(b.datekey)&&(b.datekey="curdate");var d=a.getToday(),e=a.getYesDay();b.changeDate=function(c){switch(c){case"today":b.subfix="hour",b.mydate=d;break;case"yesday":b.subfix="hour",b.mydate=e;break;case"d7":b.subfix="ds",b.mydate=a.getLastDays(-7,0);break;case"d14":b.subfix="ds",b.mydate=a.getLastDays(-14,0);break;case"d30":b.subfix="ds",b.mydate=a.getLastDays(-30,0)}b.timeflag=c},b.maxDay=0,1==b.noToday?(b.changeDate("yesday"),b.maxDay=-1):b.changeDate("today"),b.myrangeday=b.maxRange,b.$on("dateCustos",function(a,c){c.startDate==c.endDate&&c.startDate==d.startDate?(b.timeflag="today",b.subfix="hour"):c.startDate==c.endDate&&c.startDate==e.startDate?(b.timeflag="yesday",b.subfix="hour"):(b.timeflag=c.dateflag,b.subfix="ds"),b.mydate=c}),b.$watch("mydate",function(a){angular.isDefined(a)&&(b.datestr=b.mydate.startDate+"至"+b.mydate.endDate,b.$emit(b.datekey,{date:b.mydate,subfix:b.subfix,timeflag:b.timeflag}))},!0)}}}function numberTxt(){return{restrict:"A",link:function(a,b){b.bind("keydown",function(a){a=window.event||a,a.keyCode>=48&&a.keyCode<=57||a.keyCode>=96&&a.keyCode<=105||8==a.keyCode||190==a.keyCode||a.preventDefault()}).bind("input propertychange",function(){})}}}function integerTxt(){return{restrict:"A",link:function(a,b){b.bind("keydown",function(a){a=window.event||a,a.keyCode>=48&&a.keyCode<=57||a.keyCode>=96&&a.keyCode<=105||8==a.keyCode||a.preventDefault()}).bind("input propertychange",function(){var a=$(b).val().replace(/\D/g,"");$(b).val(a)})}}}function helpTip(a,b){return{restrict:"E",replace:!0,scope:{name:"@",dname:"=",dn2:"=",hidx:"@",red:"="},templateUrl:"/template/common/helptip.html?r="+tempVersion,link:function(c,d){c.showtip=!1;var e=c.hidx?c.hidx:2;c.spanStyle={"z-index":e};var f=$(d).find(".helpTipWrap"),g=Number($(d).parent().css("z-index"));f.hide(),c.showTip=function(){g=Number($(d).parent().css("z-index")),angular.isNumber(g)&&$(d).parent().css("z-index",g+1),$(".helpTipWrap").not(f).parent().parent().css("z-index",g),$(".helpTipWrap").not(f).hide().animate({opacity:0}),f.show().animate({opacity:1},100,"linear")},angular.element(document).on("click",function(){angular.isNumber(g)&&f.parent().parent().css("z-index",g),f.animate({opacity:0}).hide()}),c.$watch("name+dname+dn2",function(b){var d=c.name?c.name:c.dname;angular.isDefined(c.dn2)&&(d+=c.dn2),angular.isDefined(d)&&(c.tipname=d,c.tipcontent=a.getMenuTip(c.tipname))}),b.$watch("currentPageTips",function(){c.tipcontent=a.getMenuTip(c.tipname)})}}}function helpWinTip(a,b,c){return{restrict:"E",scope:{name:"@",dname:"=",zIndex:"=",titlev:"@",helpw:"@"},replace:!0,template:'<span ng-click="showTip()" title="{{titlev}}" stop-event></span>',link:function(b,c){angular.element(document).on("click",function(){$("#winTC").hide()}),b.showTip=function(){var d=b.name?b.name:b.dname,e=$(c).offset(),f=e.left,g=e.top;h=$(c).innerHeight(),w=$(c).innerWidth(),winWidth=$(window).width(),g=Math.ceil(g+h);var i={top:g,display:"block",opacity:1},j=$("#winTC");b.zIndex&&j.css("z-index",b.zIndex),b.helpw?j.css("width",b.helpw+"px"):j.css("width","200px"),$(c).hasClass("rightTip")?(j.addClass("rightPosition"),f=Math.ceil(f-j.innerWidth()+w)):j.removeClass("rightPosition"),winWidth-f<200&&(j.addClass("rightPosition"),f=Math.ceil(f-j.innerWidth()+w)),i.left=f,j.html(a.getMenuTip(d)).css(i)}}}}function fixHeader(a){return{restrict:"A",scope:{titleName:"=",fixFirtd:"@",fixList:"="},link:function(b,c){var d=$(c),e=d.parent(),f=0,g=null,h=1;angular.isDefined(b.fixFirtd)&&(f=Number(b.fixFirtd),h=2),b.$watch("titleName",function(){a(function(){d.find("thead th").css({position:"relative","z-index":h}),e.scroll(function(){var a=$(this).scrollTop();a>5&&a--,d.find("thead th").css({top:a+"px"})})})}),f>0&&b.$watch("fixList",function(){a(function(){g=d.find("tr td:nth-child("+f+")"),g.css({position:"relative","z-index":1}),e.scroll(function(){var a=$(this).scrollLeft();a>5&&(a-=2),g.css({left:a+"px"})})})})}}}function customEvent(a,b,c,d,e){return{restrict:"E",replace:!0,templateUrl:"/template/common/custom.html?r="+tempVersion,scope:{type:"=",eventList:"=",oldInfo:"="},link:function(f,g){var h=(new Date).getTime();f.$watch("oldInfo",function(c){if(angular.isDefined(f.oldInfo))if("eventstats"==f.type)f.changeEvent(null,f.oldInfo);else{f.eventInfo=[],evts=[],evtvals=[],f.oldInfo.filter(function(b){var c={event:b.event,param:[]};a.cloneJSON(b.params).filter(function(a){c.param.push(a.attr)}),evts.push(b.event),evtvals.push(c)}),b.showLoading();var g=d.getInfo(e.appid+"/event/find/param?names="+evts.join(",")+"¶ms="+JSON.stringify(evtvals));g.then(function(c){c.filter(function(a){for(var b=0;b<f.eventList.length;b++)if(a.eventName==f.eventList[b].eventName){f.eventList[b].profiles=a.profiles;break}}),f.oldInfo.filter(function(b){b.oldparams=a.cloneJSON(b.params),delete b.params,f.addEvent(b)}),b.hideLoading()})}}),f.$on("eventId",function(a,b){f.changeEvent(b.info)}),f.initEvent=function(){f.eventinitname="全部事件",f.eventInit=0-h,f.event={},f.propertyList=[],f.sumtypeList=[]},f.changeEvent=function(g,i){if(i){f.initEvent(),f.eventinitname=i.event,f.properinitname=i.viewField;var j=f.eventList.filter(function(a){return a.eventName==i.event});j.length>0?(g=j[0],f.eventinitname=g.eventNameAlias,f.evnullevent=!1):f.evnullevent=!0}if(f.event={id:"evt_"+h,params:[],paramsList:[],relation:"and"},!a.isNullStr(g)){f.eventId=g.eventName,f.eventstatsEvtName=g.eventNameAlias;var k=function(){f.propertyList=g.firstLevelAttr,f.sumtypeList=g.secondLevelAttr,f.event.paramsList=g.profiles};if(g.secondLevelAttr)k();else{var l=[],m={event:f.eventId,param:[]};i&&(i.params.filter(function(a){m.param.push(a.attr)}),l.push(m)),b.showLoading();d.getInfo(e.appid+"/event/find/param?names="+f.eventId+"¶ms="+JSON.stringify(l)).then(function(a){a.filter(function(a){for(var b=0;b<f.eventList.length;b++)if(a.eventName==f.eventList[b].eventName){f.eventList[b].profiles=a.profiles,f.eventList[b].firstLevelAttr=a.firstLevelAttr,f.eventList[b].secondLevelAttr=a.secondLevelAttr;break}}),k(),b.hideLoading()})}}i?(f.event.relation=i.relation,c(function(){f.propertyInit=i.viewField,f.prorefresh=++h,f.event.secondval=i.fieldOperate,""!=i.fieldOperate&&(f.event.second=!0,f.suminitname=i.fieldOperate),i.params.filter(function(a){a.attrMatch=!1,f.addEventParams(f.event,a)})})):(f.propertyInit=f.propertyList[0].attr,f.prorefresh=++h)},f.$on("propertyId",function(a,b){f.event.proId=b.info.attr,f.event.sumId="","default"!=b.info.type?(f.event.second=!0,f.event.secondval?(f.sumtypeInit=f.event.secondval,delete f.event.secondval):f.sumtypeInit=f.sumtypeList[0].attr):(f.sumtypeInit="",f.event.second=!1)}),f.$on("sumtypeId",function(a,b){f.event.sumId=b.info.attr}),f.getEventNum=function(){return f.eventInfo?f.eventInfo.filter(function(a){return 0!=a.show}).length:20},f.setEventSteps=function(){if(!f.eventInfo)return 20;var a=-1,b=f.eventInfo.length;f.eventInfo.filter(function(c,d){0!=c.show&&(a++,c.steps=["一","二","三","四","五","六","七","八","九","十"][a],c.style={"z-index":b-d})})},f.addEvent=function(a){h++;var b={id:"evt_"+h,eventid:"event_"+h,relation:"and"};if(a){for(var c in a)b[c]=a[c];b.eventinit=a.event,b.eventinitname=a.event,b.params=[];0==f.eventList.filter(function(b){return b.eventName==a.event}).length&&(b.nullevent=!0,b.oldparams&&(b.oldparams.filter(function(a){f.addEventParams(b,a)}),delete b.oldparams))}!function(a){f.$on(a.eventid,function(b,c){a.params=[],a.event=c.info.eventName,a.evtname=c.info.eventNameAlias,a.nullevent=!1;var g=function(){a.paramsList=c.info.profiles,a.oldparams&&(a.oldparams.filter(function(b){f.addEventParams(a,b)}),delete a.oldparams)};if(angular.isArray(c.info.profiles))g(c.info.profiles);else{d.getInfo(e.appid+"/event/find/param?names="+a.event).then(function(a){c.info.profiles=a[0].profiles,g()})}})}(b),f.eventInfo.push(b),f.setEventSteps()},f.removeEvent=function(a){if(f.getEventNum()<=2&&"funnel"==f.type)return b.showTips("漏斗步骤不能少于2步"),!1;for(var c=0;c<f.eventInfo.length;c++)if(f.eventInfo[c].id==a.id){f.eventInfo[c].show=!1;break}f.setEventSteps()},f.changeRel=function(a){a.relation="and"==a.relation?"or":"and"},f.getEventParamsNum=function(a){return a.params?a.params.filter(function(a){return 0!=a.show}).length:5},f.addEventParams=function(a,b){if(!a.params||f.getEventParamsNum(a)>=3)return!1;h++;var c={id:"pam_"+h,pid:a.id};if(b)for(var d in b)c[d]=b[d];a.params.push(c)},f.removeEventParams=function(a,b){for(var c=0;c<a.params.length;c++)if(a.params[c].id==b.id){a.params[c].show=!1;break}},f.$on("event",function(a,b){if("eventstats"==f.type){for(var c=f.event.params,d=0;d<c.length;d++)if(c[d].id==b.id){c[d]=b;break}}else for(var e=0;e<f.eventInfo.length;e++)if(f.eventInfo[e].id==b.pid)for(var c=f.eventInfo[e].params,d=0;d<c.length;d++)if(c[d].id==b.id){c[d]=b;break}}),f.okSave=function(){var c=!1,d=[],e=[];f.eventInfo.filter(function(b){if(0!=b.show){var g={event:b.event,relation:b.relation,params:[],eventMatch:!0};a.isNullStr(b.event)||1==b.nullevent?(b.nullevent=!0,c=!0):(b.nullevent=!1,b.params.filter(function(b){if(0!=b.show){var d={};for(var e in b)"id"!=e&&"pid"!=e&&(d[e]="value"!=e?b[e]:b[e].join(","),a.isNullStr(b[e])&&(f.$broadcast(b.id,"null"),c=!0));g.params.push(d)}})),d.push(g),e.push(b.evtname)}}),!c&&d.length>0?f.$emit("matchok",{info:d,names:e}):b.showTips("信息没填全或数据有误,请检查")},f.eventSave=function(){if(!f.event.params)return!1;var c=!1,d={event:f.eventId,relation:f.event.relation,params:[]};d.viewField=f.event.proId,f.event.second?d.fieldOperate=f.event.sumId:d.fieldOperate="",f.event.params.filter(function(b){if(0!=b.show){a.isNullStr(b.attr)&&(f.$broadcast(b.id,"error"),c=!0);var e={};for(var g in b)"id"!=g&&"pid"!=g&&(e[g]="value"!=g?b[g]:b[g].join(","),a.isNullStr(b[g])&&(f.$broadcast(b.id,"error"),c=!0));d.params.push(e)}}),c||!f.eventId?b.showTips("信息没填全或数据有误,请检查"):f.$emit("matchok",{info:d,names:[f.eventstatsEvtName]})}}}}function fileModel(a){return{restrict:"A",scope:{},link:function(b,c,d){var e=a(d.fileModel),f=e.assign;c.bind("change",function(){if(""==angular.element(c).val())return!1;b.$apply(function(){var a=c[0].files;d.multiple?f(b,c[0].files):(f(b,c[0].files[0]),a=c[0].files[0]),b.$emit("myFile",a),angular.element(c).val("")})})}}}function searchGroup(){return{restrict:"E",replace:!0,scope:{filterfn:"&",initTxt:"=",initf5:"=",list:"="},templateUrl:"/template/common/searchGroup.html?r="+tempVersion,link:function(a,b,c){a.query=function(){if(a.preTxt==a.srhTxt)return!1;a.filterfn({txt:a.srhTxt}),a.preTxt=a.srhTxt},a.$watch("initTxt+initf5+list",function(){a.srhTxt=a.preTxt=a.initTxt||""}),a.doNull=function(){a.srhTxt="",a.query()}}}}function bigTable(a,b){return{restrict:"A",replace:!0,scope:{fixedCol:"@",fixChange:"=",infoList:"=",initf5:"=",noScroll:"@",noAllScroll:"@",noEmpty:"="},link:function(c,d){var e=$(d).find(".tableSpline"),f=$(d).find(".tableHeader"),g=$(d).find(".tableInfo"),h=$(d).find(".copyColWrap"),i=h.find("table"),j=0,k=0,l=!1,m=0,n=0,o=0,p=$(".helpTipWrap");0==e.length&&($(d).append("<div class='tableSpline'></div>"),e=$(d).find(".tableSpline")),0==h.length&&($(d).prepend("<div class='copyColWrap'><table></table></div>"),h=$(d).find(".copyColWrap"),i=h.find("table"),c.noAllScroll&&h.css({"max-height":"233px",top:"35px"}));var q=function(){j=1,f.scrollLeft(0),g.scrollLeft(0),g.scrollTop(0),k=g.find("table").height();for(var a=0;a<c.fixedCol;a++)j+=f.find("#title_"+a).parent().width();e.css({left:j}),$(d).find(".tableHeader th:lt("+c.fixedCol+")").css("left","0px"),o=0},r=function(){var a=g.find("table"),b=f.find("table");l=!c.noEmpty&&(c.infoList&&0==c.infoList.length);var h=b.css("width"),i=b.css("height"),j=a.find("tbody").height(),m=b.height(),n=g.find("table tr:last");if(l)0==n.length&&a.append("<tr></tr>"),a.width(h),a.height(0==k?i:k),e.height(i);else{g.find("table").width(""),g.find("table").height("");var p=m+j,q=$(d).height();e.height(p>q?q:p),n.html()||n.remove()}g.perfectScrollbar("update"),g.scrollLeft(o),g.scrollTop(0)},s=function(){i.html(""),l||g.find("tr").each(function(a){i.append("<tr></tr>");for(var d=i.find("tr:last-child"),e=0;e<c.fixedCol;e++)if(d.append($(this).children("td:eq("+e+")").clone(!0)),0==e){var f=d.find("td");f.each(function(){var a=$(this).find("div").html();$(this).html(b($(this).clone(!0))(c.$parent)),$(this).find("div").html(a)})}})};c.$watch("initf5",function(b){if(angular.isDefined(b)){e.hide(),i.html("");var c=a(function(){q()},50);c.then(function(){a.cancel(c)})}}),c.$watch("fixChange",function(b){if(angular.isDefined(b)&&c.infoList){ -i.html("");var d=a(function(){r(),s()},100);d.then(function(){a.cancel(d)})}}),c.$on("conentresize",function(){g.perfectScrollbar("update"),g.scrollLeft(0),g.scrollTop(0),e.hide()});var m=0;g.scroll(function(a){p.hide();var b=a.target,i=b.scrollLeft;o=i,f.scrollLeft(i);var j={position:"relative",left:i,"-webkit-overflow-scroll":"touch"};$(d).find(".tableHeader th:lt("+c.fixedCol+")").each(function(a){$(this).css(j)}),i>0?e.show():e.hide().css("-webkit-overflow-scroll","auto"),n=$(this).scrollTop(),h.scrollTop(n),c.noAllScroll||(m>n?n<200&&!c.noScroll&&$(".rightWrap").scrollTop(n):c.noScroll?$(".rightWrap").scrollTop($(".rightWrap").scrollTop()+this.scrollHeight):n>=g.find("table").height()-g.height()&&this.scrollTop>0&&$(".rightWrap").scrollTop(this.scrollHeight),m=n)}),$(".rightWrap").scroll(function(){p.hide()}),g.perfectScrollbar()}}}function dragOrder(a){return{restrict:"A",scope:{dragId:"=",dragflag:"@"},link:function(a,b,c){b.attr("draggable",!0),angular.element(b).on("dragstart",function(b){sourceId=a.dragId}),angular.element(b).on("dragover",function(a){a.preventDefault()}),angular.element(b).on("drop",function(b){var c=$(this),d=JSON.parse(c.attr("drag-info"));b.preventDefault(),sourceId!=d.id&&a.$emit("dragorder",{id:sourceId,index:d.orderindex,flag:a.dragflag})})}}}var tempVersion=(new Date).getTime();angular.module("app").directive("flipInfo",flipInfo).directive("flipInfoDy",flipInfoDy).directive("selectList",["ToolService",selectList]).directive("selectTList",selectTList).directive("selectMoreList",selectMoreList).directive("selectParams",["ToolService",selectParams]).directive("delTip",delTip).directive("wincrmTip",wincrmTip).directive("okcrmTip",["ToolService",okcrmTip]).directive("stopEvent",stopEvent).directive("minChart",["OptionService","$window","$timeout","HttpService","UtilService","ToolService","$rootScope",minChart]).directive("exportButton",["HttpService","UtilService","ToolService","$rootScope",exportButton]).directive("ngEnter",ngEnter).directive("popTip",popTip).directive("isLoading",isLoading).directive("dateRange",["ToolService",dateRange]).directive("selectChannel",["$state","$rootScope",selectChannel]).directive("numberTxt",numberTxt).directive("integerTxt",integerTxt).directive("fixHeader",["$timeout",fixHeader]).directive("helpTip",["ToolService","$rootScope",helpTip]).directive("helpWinTip",["ToolService","$rootScope","$filter",helpWinTip]).directive("noData",[noData]).directive("customEvent",["UtilService","ToolService","$timeout","HttpService","$rootScope",customEvent]).directive("fileModel",["$parse",fileModel]).directive("searchGroup",[searchGroup]).directive("bigTable",["$timeout","$compile",bigTable]).directive("dragOrder",[dragOrder]);var exportTips="导出成功,请到数据导出-下载报表处进行下载",expTimeTips="请1分钟后再点",expLimitTime=6e4,sourceId=0}(),function(){function a(a,c,d,e){return{restrict:"E",templateUrl:"/template/common/profileItem.html?r="+b,scope:{infoList:"=",itemId:"=",itemInfo:"=",itemType:"@",itemEvent:"=",common:"@"},link:function(b,f){b.stringList=a.getStringTypes(),b.numberList=a.getNumberTypes(),b.initdate=a.getToday();var g={};if(angular.isDefined(b.itemInfo)&&(g=c.cloneJSON(b.itemInfo)),b.itemData={id:b.itemInfo.id,pid:b.itemInfo.pid},b.sdate=b.initdate.startDate,b.edate=b.initdate.endDate,b.$on("sdate",function(a,c){b.sdate=c,b.setDateValue()}),b.$on("edate",function(a,c){b.edate=c,b.setDateValue()}),b.setDateValue=function(){b.itemData.value[0]=b.sdate,2==b.valflag&&(b.itemData.value[1]=b.edate),b.sendData()},b.valueSelList=[],b.keyValList=[],b.keyValSelList=[],b.attrnull=!1,b.valnull=!1,b.initValue=function(){if("string"==b.showtype)if(b.valTxt="",b.keyValSelList.length>0){b.keyValList=c.cloneJSON(b.itemData.value);var a=angular.isNumber(b.keyValSelList[0]);b.keyValList.filter(function(c){a&&(isNaN(Number(c))||(c=Number(c)));var d=b.keyValSelList.indexOf(c);-1==d?(b.valueSelList.unshift(c),b.valueList.push(c)):b.valueList.push(b.valueSelList[d])})}else b.valueList=c.cloneJSON(b.itemData.value),b.valueList.filter(function(a){-1==b.valueSelList.indexOf(a)&&b.valueSelList.unshift(a)});else"date"==b.showtype?(b.itemData.value.length>0?(b.sdate=b.itemData.value[0],2==b.valflag&&(b.edate=b.itemData.value[1])):(b.sdate=b.initdate.startDate,b.edate=b.initdate.endDate),b.itemData.value=[b.sdate,b.edate]):"number"==b.showtype&&(b.itemData.value.length>0?(b.valTxt1=b.itemData.value[0],2==b.valflag&&(b.valTxt2=b.itemData.value[1])):(b.valTxt1="",b.valTxt2=""));b.valueList.length>0&&(b.valStyle={width:"50px"})},g.operator||(b.operationList=b.stringList,b.operationinit=b.operationList[0].id),angular.isDefined(b.itemInfo.attrMatch))if(b.profileinitname=b.itemInfo.attr,b.showtype=b.itemInfo.type,"string"==b.itemInfo.type?b.operationList=b.stringList:b.operationList=b.numberList,b.operationinit=b.itemInfo.operator,b.itemData.value=b.itemInfo.value.split(","),b.initValue(),b.infoList&&0!=b.infoList.length){var h=b.infoList.filter(function(a){return a.attr==b.itemInfo.attr});0==h.length&&(b.attrnull=!0)}else b.attrnull=!0;else"profile"==b.itemType?b.profileinitname="请选择用户属性":"event"==b.itemType?b.profileinitname="请选择事件属性":b.profileinitname="请选择";g.attr&&(b.profileinit=g.attr),b.changeval=!1,b.$on("profileid",function(a,d){b.proId=d.info.attr,b.itemData.attr=d.info.attr,b.itemData.type=d.info.dataType,b.showtype=d.info.webType||d.info.dataType,b.itemData.value=[],b.valueList=[],d.info.value?(b.valueSelList=c.cloneJSON(d.info.value),b.changeval=!1):(b.valueSelList=[],b.changeval=!0),d.info.key?b.keyValSelList=c.cloneJSON(d.info.key):b.keyValSelList=[],b.attrnull=!1,"string"==b.showtype?b.operationList=b.stringList:b.operationList=b.numberList,g.operator?(b.operationinit=g.operator,delete g.operator):b.operationinit=b.operationList[0].id,b.sendData()}),b.$on("operationId",function(a,c){c.info.more?b.valflag=3:c.info.both?b.valflag=2:b.valflag=1,b.itemData.operator=c.info.id,g.value?(b.itemData.value=g.value.split(","),b.txtTip="",delete g.value):(b.itemData.value=[],b.valueList=[],b.keyValList=[]),b.valnull=!1,b.initValue(),b.sendData()}),b.valueList=[],b.txtTip="请输入一个属性过滤条件",b.getValueList=function(){if(b.changeval&&b.proId&&"event"==b.itemType){var a=b.common?"/event/find/value/attr":"/event/find/value/one",c=b.common?{attrName:b.proId}:{eventname:b.itemEvent,attrname:b.proId};d.getInfo(e.appid+a,c).then(function(a){a.key&&null!=a.key?b.keyValSelList=a.key:b.keyValSelList=[],a.value&&null!=a.value?b.valueSelList=a.value:b.valueSelList=[],b.changeval=!1})}},b.setValue=function(a){if(b.valnull=!1,!a||""==a)return!1;if(b.valueList.indexOf(a)>-1);else{if(3==b.valflag?b.valueList.push(a):b.valueList=[a],b.keyValSelList.length>0){var d=b.valueSelList.indexOf(a),e=b.keyValSelList[d];e||(e=a),3==b.valflag?b.keyValList.push(e):b.keyValList=[e],-1==d&&(b.keyValSelList.push(e),b.valueSelList.push(a)),b.writeValue(e),b.itemData.value=c.cloneJSON(b.keyValList)}else{b.itemData.value=c.cloneJSON(b.valueList);var d=b.valueSelList.indexOf(a);-1==d&&b.valueSelList.push(a)}b.sendData()}b.showsel=!1,b.valTxt="",b.txtTip="",$(f).find("#valTxt").focus()},b.removeValue=function(a){b.valueList.splice(a,1),b.keyValList.length>0?(b.keyValList.splice(a,1),b.itemData.value=b.keyValList):b.itemData.value=b.valueList,0==b.valueList.length&&(b.txtTip="请输入一个属性过滤条件",b.valStyle={}),b.sendData()},b.writeValue=function(a){if(b.showsel=!0,0==b.valueList.length)return b.txtTip="请输入一个属性过滤条件",void(b.valStyle={});var c=8*(a+"").length;c=c<50?50:c,c=c>120?120:c,b.valStyle={width:c+"px"}},b.setNumberVal=function(){b.itemData.value[0]=b.valTxt1,2==b.valflag&&(b.itemData.value[1]=b.valTxt2),b.sendData()},b.addNumber=function(a,c){b.valnull=!1,1==a&&(b.valTxt1&&""!=b.valTxt1||(b.valTxt1=0),b.valTxt1=Number(b.valTxt1),b.valTxt1+=c,b.valTxt1=b.valTxt1<0?0:b.valTxt1,b.itemData.value[0]=b.valTxt1),2==a&&(b.valTxt2=Number(b.valTxt2),b.valTxt2&&""!=b.valTxt2||(b.valTxt2=0),b.valTxt2+=c,b.valTxt2=b.valTxt2<0?0:b.valTxt2,b.itemData.value[1]=b.valTxt2),b.sendData()},b.sendData=function(){b.$emit(b.itemType,b.itemData)},b.$on(b.itemData.id,function(){c.isNullStr(b.itemData.attr)&&(b.attrnull=!0),c.isNullStr(b.itemData.value)||0==b.itemData.value.length?b.valnull=!0:2!=b.valflag||""!=b.valTxt1&&""!=b.valTxt2||(b.valnull=!0)})}}}var b=(new Date).getTime();angular.module("app").directive("profileItem",["ToolService","UtilService","HttpService","$rootScope",a])}(),function(){function a(a,b,c){var d=Date.today(),f={abbrWeeks:["日","一","二","三","四","五","六"],format:"YYYY-MM-DD",min:null,max:d,start:d,end:d,current:d,months:2,chooseCls:"is-choose",todayCls:"is-today"};return{restrict:"EA",transclude:!0,replace:!0,templateUrl:"/template/common/datepicker.html?r="+e,scope:{dateName:"@",noMax:"@",rangeDays:"@",rangeDays2:"=",initDay:"=",maxDay:"@",maxDay2:"=",operationSel:"=",min:"="},link:function(e,g,h){e.maxDay=e.maxDay||e.maxDay2;var i=-1;c.isNullStr(e.maxDay)&&(i=0);var j={yesday:b.getYesDay(),d7:b.getLastDays(-7,i),d14:b.getLastDays(-14,i),d30:b.getLastDays(-30,i),"-w1":b.getWeekRangeDate(-1,i),w0:b.getWeekRangeDate(0,i),"-m1":b.getMonthRangeDate(-1,i),m0:b.getMonthRangeDate(0,i)};e.$watch("operationSel",function(a){angular.isUndefined(e.operationSel)?e.operSel=!0:e.operSel=a}),e.getRelativeFlag=function(a,b){var c="";for(var d in j){var f=j[d];if(a==f.startDate&&b==f.endDate){c=d;break}}e.selDayflag=c},e.$watch("initDay",function(a){angular.isDefined(a)&&a.startDate&&(e.options.start.isSameDay(new Date(a.startDate))&&e.options.end.isSameDay(new Date(a.endDate))||(e.getRelativeFlag(a.startDate,a.endDate),e.options.start=e.completeStrat=new Date(a.startDate),e.options.end=e.completeEnd=new Date(a.endDate)))}),e.selme=!1,e.$watch("rangeDays+rangeDays2",function(a){var b=e.rangeDays||e.rangeDays2;angular.isDefined(b)?e.rgDays=Number(b):e.rgDays=31});var k=d,l=e.dateName||"dateCustos";if(e.maxDay&&-1==e.maxDay&&(k=Date.yesterday()),e.noMax&&"true"==e.noMax){var m=Date.today();m.setFullYear(d.getFullYear()+100),k=m}var n="";e.$watch("min",function(a){angular.isDefined(a)&&(n=new Date(a).addDays(-1))});var o=c.cloneJSON(f);!function(){o.start=k,o.end=k,o.max=k,o.current=d,e.options=angular.extend(o,e.options||{}),e.options.start.clearTime(),e.options.end.clearTime(),e.completeStrat=e.options.start,e.completeEnd=e.options.end,e.customStrat=e.options.start.toFormat(e.options.format),e.customEnd=e.options.end.toFormat(e.options.format),e.panelEndDate=Date.getFirstDay(e.options.end)}();var p=function(a){for(var b=[],c=e.options.months,a=(a||e.panelEndDate).clone(),f=0;f<c;f++){for(var h=[],i=a.clone().addMonths(-(c-1-f)),j=Date.getFirstDay(i),k=j.getDay(),l=Date.getDaysInMonth(i.getFullYear(),i.getMonth()),m=Math.ceil((k+l)/7),n=j.clone().addDays(-k),o=0;o<m;o++){for(var p=[],q=0;q<7;q++){var r=n.clone();p.push({day:r,choose:r.between(e.options.start,e.options.end),other:r.getMonth()!=i.getMonth(),today:Date.isSameDay(r,d)}),n=n.addDays(1)}h.push(p)}b.push({date:i,weeks:h})}$(g).parent().prevAll().show(),e.panels=b,e.wstyle={width:274*c+80+"px"}};e.cellClass=function(a){return a.other?"other-month":a.day.isSameDay(e.options.start)||a.day.isSameDay(e.options.end)?"start_end":a.day.between(e.options.start,e.options.end)?"choose":a.day.isSameDay(e.options.current)&&a.day.isSameDay(k)?"is-today":a.day.isAfter(k)||""!=n&&a.day.isBefore(n)?"disabled":""},e.changeMonth=function(a,b,c){e.dateMonth=e.panelEndDate.addMonths(c),p(e.dateMonth)},e.showDateTable=function(){if(!e.operSel)return!1;var a=$(g).find(".dateTabRange");$(".dateTabRange").each(function(){$(this)!==a&&$(this).addClass("ng-hide")}),a.hasClass("ng-hide")?(e.showFlag=!0,a.removeClass("ng-hide")):(e.showFlag=!1,a.addClass("ng-hide"))};var q=0;e.chooseDate=function(a){a.day.isAfter(k)||""!=n&&a.day.isBefore(n)||(q>=2&&(q=0),q++,1===q?e.options.end=e.options.start=a.day:2===q&&(a.day.isAfter(e.options.start)?e.options.end=a.day:e.options.start=a.day))},e.setRelDate=function(b){var c=j[b];if(-1!=e.rgDays){if(diffDate(c.startDate,c.endDate)>e.rgDays)return a.showTips("日期范围不能大于"+e.rgDays+"天"),!1}return e.selDayflag=b,""!=n&&new Date(c.startDate).isBefore(n)?void a.showTips("超出最小可选日期限制了"):(e.options.start=new Date(c.startDate),""!=n&&new Date(c.endDate).isBefore(n)?void a.showTips("超出最小可选日期限制了"):(e.options.end=new Date(c.endDate),void e.complete(1)))},e.complete=function(b){if(angular.isUndefined(b)&&-1!=e.rgDays){if(diffDate(e.options.start,e.options.end)>e.rgDays)return a.showTips("日期范围不能大于"+e.rgDays+"天"),!1}e.completeStrat=e.options.start,e.completeEnd=e.options.end;var c=e.completeStrat.toFormat(e.options.format),d=e.completeEnd.toFormat(e.options.format);angular.isUndefined(b)&&e.getRelativeFlag(c,d),e.$emit(l,{startDate:c,endDate:d,dateflag:e.selDayflag}),e.showFlag=!1},e.cancel=function(){e.options.start==e.completeStrat&&e.options.end==e.completeEnd||(e.options.start=e.completeStrat,e.options.end=e.completeEnd,e.getRelativeFlag(e.completeStrat.toFormat(e.options.format),e.completeEnd.toFormat(e.options.format))),e.showFlag=!1},e.$watch("options.start+options.end",function(){e.customStrat=e.options.start.toFormat(e.options.format),e.customEnd=e.options.end.toFormat(e.options.format)}),p(),$(document).on("click",function(){e.cancel(),e.$apply()})}}}function b(){var a=Date.today(),b={abbrWeeks:["日","一","二","三","四","五","六"],format:"YYYY-MM-DD",min:null,max:a,start:a,end:a,current:a,months:1,chooseCls:"is-choose",todayCls:"is-today"};return{restrict:"EA",transclude:!0,replace:!0,templateUrl:"/template/common/datepicker.html?r="+e,scope:{dateName:"@",campareDays:"=",operationSel:"="},link:function(c,d,e){c.$watch("operationSel",function(a){angular.isUndefined(c.operationSel)?c.operSel=!0:c.operSel=a});var f=a,g=c.dateName;!function(){b.start=f,b.end=f,b.max=f,b.current=f,c.options=angular.extend(b,c.options||{}),c.options.start.clearTime(),c.options.end.clearTime(),c.completeStrat=c.options.start,c.completeEnd=c.options.end,c.customStrat=c.options.start.toFormat(c.options.format),c.customEnd=c.options.end.toFormat(c.options.format),c.panelEndDate=Date.getFirstDay(c.options.end)}();var h=function(b){var e=[],g=c.options.months,b=(b||c.panelEndDate).clone();g=1;for(var h=0;h<g;h++){for(var i=[],j=b.clone().addMonths(-(g-1-h)),k=Date.getFirstDay(j),l=k.getDay(),m=Date.getDaysInMonth(j.getFullYear(),j.getMonth()),n=Math.ceil((l+m)/7),o=k.clone().addDays(-l),p=0;p<n;p++){for(var q=[],r=0;r<7;r++){var s=o.clone();q.push({day:s,choose:s.between(c.options.start,c.options.end),other:s.getMonth()!=j.getMonth(),today:Date.isSameDay(s,a)}),o=o.addDays(1)}i.push(q)}e.push({date:j,weeks:i})}f!==a?(c.complete(),$(d).parent().prevAll().hide()):$(d).parent().prevAll().show(),c.panels=e,c.wstyle={width:274*g+"px"}};c.cellClass=function(a){return a.other?"other-month":a.day.between(c.options.start,c.options.end)?"choose":a.day.isSameDay(f)?"is-today":a.day.isAfter(f)?"disabled":""},c.changeMonth=function(a,b,d){c.dateMonth=c.panelEndDate.addMonths(d),h(c.dateMonth)},c.showDateTable=function(){if(!c.operSel)return!1;void 0===c.showFlag?c.showFlag=!0:1==c.showFlag?c.showFlag=!1:0==c.showFlag&&(c.showFlag=!0)};var i=0;c.chooseDate=function(b){b.day.isAfter(a)||b.day.isAfter(f)||(i>=2&&(i=0),i++,angular.isDefined(c.campareDays)&&c.campareDays>0?(c.options.end=b.day,c.options.start=new Date(addDate(b.day,-c.campareDays))):c.options.end=c.options.start=b.day,c.complete())},c.complete=function(){c.completeStrat=c.options.start,c.completeEnd=c.options.end,angular.isDefined(c.campareDays)&&c.campareDays>0?c.$emit(g,c.completeStrat.toFormat(c.options.format)+" - "+c.completeEnd.toFormat(c.options.format)):c.$emit(g,c.completeStrat.toFormat(c.options.format)),c.showFlag=!1},c.cancel=function(){c.options.start=c.completeStrat,c.options.end=c.completeEnd,c.showFlag=!1},c.$watch("options.start+options.end",function(){c.customStrat=c.options.start.toFormat(c.options.format),c.customEnd=c.options.end.toFormat(c.options.format)}),h(),$(document).on("click",function(){c.cancel(),c.$apply()})}}}function c(a){var b=Date.yesterday();return{restrict:"EA",transclude:!0,replace:!0,templateUrl:"/template/common/dateweek.html?r="+e,scope:{dateName:"@",weeks:"@"},link:function(c,d,e){c.options={},c.weeks?c.options.weeks=c.weeks:c.options.weeks=1,c.showDateTable=function(){void 0===c.showFlag?c.showFlag=!0:1==c.showFlag?c.showFlag=!1:0==c.showFlag&&(c.showFlag=!0)};var f=(c.nowyear=b.getFullYear(),b.clone()),g=(new Date).getDay();g=0==g?7:g,c.options.start=c.options.end={week:getNowWeek(),date:(new Date).clone().addDays(7-g),year:c.nowyear},c.setWeeklist=function(){c.weeklist=[];var a=7,b=new Date(c.nowyear,0,1),d=b.getDay(),e=new Date(c.nowyear,11,31),f=[];d=0==d?7:d;var g=b.clone().addDays(7-d),h=0;for(d>0&&d<5&&(h=1,f.push({week:h,date:g,year:c.nowyear}));g<e&&!e.isSameDay(g);)h++,g=g.clone().addDays(7),f.push({week:h,date:g,year:c.nowyear}),h%a==0&&(c.weeklist.push(f),f=[]);var i=new Date(c.nowyear,11,31),j=i.getDay();j>0&&j<4&&(0==f.length?c.weeklist[c.weeklist.length-1].pop():f.pop()),f.length>0&&c.weeklist.push(f)},c.changeYear=function(a){c.nowyear+=a,c.setWeeklist()},c.setWeeklist();var h=0;c.chooseDate=function(a){if(a.date.clone().addDays(-6).isAfter(b))return!1;if(1==c.options.weeks)f=a.date,c.options.start=c.options.end=a,c.$emit(c.dateName,a.year+""+getStr(a.week)),c.cancel();else if(h>=2&&(h=0),1==++h)c.options.start=c.options.end=a;else{var d=c.options.start;d.date>a.date?c.options.start=a:c.options.end=a}},c.complete=function(){var b=c.options.start.year+""+a.getStr(c.options.start.week),d=c.options.end.year+""+a.getStr(c.options.end.week);c.$emit(c.dateName,{start:b,end:d}),c.cancel()},c.cellClass=function(a){return a.date.between(c.options.start.date,c.options.end.date)?"choose":a.year==c.options.start.year&&a.week==c.options.start.week||a.year==c.options.end.year&&a.week==c.options.end.week?"start_end":b.between(a.date.clone().addDays(-6),a.date)?"is-now":a.date.isAfter(b)?"disabled":""},c.cancel=function(){c.showFlag=!1},$(document).on("click",function(){c.cancel(),c.$apply()})}}}function d(a){var b=Date.yesterday();return{restrict:"EA",transclude:!0,replace:!0,templateUrl:"/template/common/datemonth.html?r="+e,scope:{dateName:"@",months:"@"},link:function(c,d,e){var f=c.nowyear=b.getFullYear(),g=c.nowMonth=b.getMonth()+1;c.options={},c.months?c.options.months=c.months:c.options.months=1,c.showDateTable=function(){void 0===c.showFlag?c.showFlag=!0:1==c.showFlag?c.showFlag=!1:0==c.showFlag&&(c.showFlag=!0)},c.changeYear=function(a){c.nowyear+=a,c.setmonthList()},c.setmonthList=function(){c.monthList=[];for(var a=4,b=[],d=1;d<=12;d++)b.push({month:d,year:c.nowyear,date:new Date(c.nowyear,d-1,1)}),angular.isUndefined(c.options.start)&&d==g&&c.nowyear==f&&(c.options.start=c.options.end=b.slice(-1)[0]),d%a==0&&(c.monthList.push(b),b=[])},c.setmonthList();var h=0;c.chooseDate=function(b){if(b.year>f||b.month>c.nowMonth&&b.year==f)return!1;if(1==c.options.months)g=b.month,c.options.start=c.options.end=b,c.$emit(c.dateName,b.year+""+a.getStr(b.month)),c.cancel();else if(h>=2&&(h=0),1==++h)c.options.start=c.options.end=b;else{var d=c.options.start;d.year>b.year||d.year==b.year&&d.month>b.month?c.options.start=b:c.options.end=b}},c.complete=function(){var b=c.options.start.year+""+a.getStr(c.options.start.month),d=c.options.end.year+""+a.getStr(c.options.end.month);c.$emit(c.dateName,{start:b,end:d}),c.cancel()},c.cellClass=function(a){return a.date.between(c.options.start.date,c.options.end.date)?"choose":a.month==c.nowMonth&&a.year==f?"is-today":a.year>f||a.month>c.nowMonth&&a.year==f?"disabled":""},c.cancel=function(){c.showFlag=!1},$(document).on("click",function(){c.cancel(),c.$apply()})}}}angular.module("app").directive("myDatepicker",["ToolService","DateService","UtilService",a]).directive("singleDatepicker",b).directive("myDateweek",["UtilService",c]).directive("myDatemonth",["UtilService",d]);var e=(new Date).getTime()}(),function(){function a(){return function(a,b){if(""==b)return a;var c=[];return angular.forEach(a,function(a,d){b.indexOf(a.firstchar)>-1&&c.push(a)}),c}}function b(){return function(a,b,c){if(b&&""!=b){var d=c.split(",");return a.filter(function(a){for(var c=!1,e=d.length-1;e>=0;e--)if(a[d[e]]&&angular.uppercase(String(a[d[e]])).indexOf(angular.uppercase(b))>-1){c=!0;break}return c})}return a}}function c(){return function(a){return a<1e4?a:(a/1e4).toFixed(1)+"w"}}function d(a){return function(b){return null==b?"":a.trustAsHtml(b)}}function e(a){return function(b,c){return null==b||"null"==b?0:(c=c||2,isNaN(Number(b))?b:a.decimal2(Number(b),c))}}function f(a){return function(b,c,d,e){if(null==b||"null"==b||!c||!d)return b;if(isNaN(Number(b)))return 0==b.indexOf("_")&&(b=b.substring(1)),b;e&&(c=e);var f=d[c];return f||(f="float"),"percent"==f?a.decimal2(100*Number(b),2)+"%":"float"==f?a.decimal2(Number(b),2):"int"==f?Math.round(Number(b)):b}}(new Date).getTime();angular.module("app").filter("charfilter",a).filter("filterList",b).filter("filterPay",c).filter("numFixed",["UtilService",e]).filter("filterHtml",["$sce",d]).filter("formatRate",["UtilService",f])}(); \ No newline at end of file +!function(){"use strict";angular.module("app",["ui.router","ngAnimate","app.collect","app.manage","app.active"])}(),function(){"use strict";function a(a,b,c){var d={},e=a,f={admonitor:"广告监测",behavior:"行为分析",export:"数据导出",management:"管理中心"},g={custommenu:"行业看单",eventstats:"事件分析",funnel:"漏斗转化",retention:"留存分析",intelligentpath:"智能路径",usergroup:"用户分群",event:"APP事件管理",profile:"用户属性管理",logtool:"日志流",report:"下载报表",app:"产品中心",auth:"成员管理"};return d.setName=function(a){e.name=a},d.getName=function(){return e.name},d.isDemoUser=function(){return"demo@reyun.com"==c.getCookie("ryioUname")},d.getChannelCampaignList=function(){var a=[{id:"channel",name:"渠道"},{id:"campgroup",name:"活动组"},{id:"campaign",name:"活动"}];return c.cloneJSON(a)},d.getPackTypeList=function(){var a=[{id:"all",name:"全部"},{id:"APPMARKET",name:"分包"},{id:"ADVERTISING",name:"分链接"}];return c.cloneJSON(a)},d.getDeviceTypeList=function(){var a=[{id:"device",name:"按设备看"},{id:"user",name:"按账号看"}];return c.cloneJSON(a)},d.getChannelCampaignParams=function(a,b,c){var d="",e="";return"channel"==a?(d=b+"/channel/findall",e="渠道"):"campgroup"==a?(d=b+"/campgroup/findall",e="活动组"):"campbychannel"==a?(d=b+"/campaign/findbychannel?channelid="+c,e="活动"):(d=b+"/campaign/findall",e="活动"),{url:d,txt:e}},d.getParams=function(a,b){var c={appid:a.appid};if(a.date&&(c.startdate=a.date.startDate,c.enddate=a.date.endDate),b&&1==b&&""!=a.typeInfoIds&&-1!=a.typeInfoIds)switch(a.typeId){case"campgroup":c.cgroupid=a.typeInfoIds;break;case"campaign":c.campaignid=a.typeInfoIds;break;case"channel":default:c.cid=a.typeInfoIds}return c},d.getOneColors=function(){return["#1fb9e9"]},d.getTwoColors=function(){return["#1fb9e9","#f8a20f"]},d.getThreeColors=function(){return["#1fb9e9","#f8a20f","#8e6eb6"]},d.getSixColors=function(){return["#1fb9e9","#f8a20f","#8e6eb6","#9cc272","#f36e55","#00b37f"]},d.getTenColors=function(){return["#1fb9e9","#f8a20f","#00b37f","#f36e55","#5c9eff","#fccc01","#9cc272","#ec407a","#8e6eb6","#cddc39"]},d.getToday=function(){return{startDate:c.getDay(0),endDate:c.getDay(0)}},d.getYesDay=function(){return{startDate:c.getDay(-1),endDate:c.getDay(-1)}},d.getLastDays=function(a,b){return angular.isUndefined(b)?b=-1:a>0?a-=1:a+=1,{startDate:c.getDay(a),endDate:c.getDay(b)}},d.getLastWeeks=function(a){var b=c.getNowWeekNum(),d=new Date,e=d.getFullYear(),f={end:e+c.getStr(b)},g=a+b+1;if(g>0)f.start=e+c.getStr(g);else{var h=c.getYearWeekCount(e-1);f.start=e-1+c.getStr(h+g)}return f},d.getLastMonths=function(a){var b=new Date,d=b.getFullYear(),e=b.getMonth()+1,f={end:d+c.getStr(e)},g=e+a+1;return f.start=g>0?d+c.getStr(g):d-1+c.getStr(12+g),f},d.getStringTypes=function(){return[{id:"=",name:"="},{id:"!=",name:"≠"},{id:"in",name:"in",more:!0},{id:"not in",name:"not in",more:!0}]},d.getNumberTypes=function(){return[{id:">",name:">"},{id:">=",name:">="},{id:"=",name:"="},{id:"<=",name:"<="},{id:"<",name:"<"},{id:"between",name:"between",both:!0}]},d.showLoading=function(){document.getElementById("sysLoad").style.display="block",setTimeout(function(){d.hideLoading()},6e3)},d.hideLoading=function(){document.getElementById("sysLoad").style.display="none"},d.showAlp=function(){document.getElementById("alpLoad").style.display="block"},d.hideAlp=function(){document.getElementById("alpLoad").style.display="none"},d.showTips=function(c,e){d.hideLoading();var f=1200;c.length>10&&(f=2e3),e=e||f,a.operShow=!0,a.operMsg=c,b(function(){d.hideTips()},e)},d.hideTips=function(){a.operShow=!1,a.operMsg=""},d.getMenuTip=function(b){var c=a.currentPageTips[b];return c||(c="无"),c},d.getFunnelData=function(a,b,d){var e=(new Date).getTime();angular.isUndefined(a)&&(a={});var f=[],g=[],h=[],i=-1;d.filter(function(b){var d=a[b],e=a["rate_"+b];d=angular.isUndefined(d)?0:d,e=angular.isUndefined(e)?0:e,f.push(d),g.push(e),i>-1&&(0==i?h.push(0):h.push(c.decimal2(d/i*100))),i=d});for(var j={val:[g,f],trans4last:h,key:b,rmd:++e},k=j.val[0],l=[],m=0,n=0;n<k.length;n++){var o=m-k[n];m>0||(o=0),l.push(o),m=k[n]}return j.val.splice(1,0,l),j},d.noDataChart=function(){var a=(new Date).getTime();return{val:[],trans4last:[],key:[],rmd:++a,name:[]}},d.getChartConditions=function(a,b,d,e,f){c.isNullStr(e)&&(e="normal");var g=d.appid,h=c.cloneJSON(d),i=d.viewtype||"";delete h.appid;var j={reportName:b,conditions:JSON.stringify(h),functionType:e,subType:i,app:g,name:a};return c.isNullStr(f)||(j.functionId=f),j},d.getByteLen=function(a){for(var b=0,c=0;c<a.length;c++){null!=a.charAt(c).match(/[a-zA-Z\u4e00-\u9fa5]/)?b+=2:b+=1}return b},d.getTableColsWidth=function(b,c,e){var f=[],g=a.unfoldFlag?90:230,h=c?($(window).width()-10-g)/(e||2)-(3==e?48:45):$(window).width()-g,i=0;if(angular.forEach(b,function(a){var b=d.getByteLen(a),e="推广活动,推广活动组,渠道,子渠道,子账号,关键字,创意,付费激活周期".indexOf(a)>-1?240:"日期"==a?"day"!=c?160:90:"分组"==a?150:8*b+(c?13:27),g={width:e+"px","max-width":e+"px"};i+=e,f.push(g)}),i<h){var j=h-2-i,k=f.length,l=(j-12*k)/k;angular.forEach(f,function(a){var b=parseInt(a.width.slice(0,-2));a.width=a["max-width"]=b+l+"px"})}return f},d.getCMidInfo=function(){var a=localStorage.getItem("rytf_cid"),b=localStorage.getItem("rytf_campid");return c.isNullStr(a)&&(a=-1,b="_default_"),{cid:a,campaignid:b}},d.getRoleName=function(){return a.isSuper?"主账号":a.isManage?"管理员":a.isAppManage?"子应用管理员":void 0},d.getUser=function(){var a=localStorage.getItem("ry_user");return c.isNullStr(a)?{}:JSON.parse(a)},d.getMenuSubmitData=function(b){if("userinfo"!=a.pagePath&&f[a.mainMenu]){var e=d.getCMidInfo(),h=d.getUser().company;c.isNullStr(h)&&(h="");var i="",j="",k="";a.appInstance&&(i=a.appInstance.appkey,j=a.appInstance.appGenreName,k=a.appInstance.name),b&&""!=b||(b=g[a.pagePath]);var l={appid:c.getTKAppkey(),who:c.getCookie("ryioUname"),what:"pageview",context:{rootmenu:f[a.mainMenu],menu:g[a.pagePath],submenu:b,sessionid:c.getCookie("JSESSIONID"),user_appkey:i,appcategory:j,appname:k,rolename:d.getRoleName(),company:h,_cid:e.cid,_campaignid:e.campaignid,_apptype:"wap",email:c.getCookie("ryioUname"),_deviceid:c.randDeviceId(),operatesystem:c.operatorSystem(),browser:c.getBrowser()}};$.post(c.getLogRoot()+"/receive/tkio/event",JSON.stringify(l))}},d.getOperSubmitData=function(b){var e="",f="",h="";a.appInstance&&(e=a.appInstance.appkey,f=a.appInstance.appGenreName,h=a.appInstance.name);var i=d.getCMidInfo(),j=d.getUser().company;c.isNullStr(j)&&(j="");var k={appid:c.getTKAppkey(),who:c.getCookie("ryioUname"),what:"operation",context:{menu:g[a.pagePath],opername:b,email:c.getCookie("ryioUname"),user_appkey:e,appcategory:f,appname:h,rolename:d.getRoleName(),company:j,_cid:i.cid,_campaignid:i.campaignid,_apptype:"wap",_deviceid:c.randDeviceId(),operatesystem:c.operatorSystem(),browser:c.getBrowser()}};$.post(c.getLogRoot()+"/receive/tkio/event",JSON.stringify(k))},d}angular.module("app").factory("ToolService",["$rootScope","$timeout","UtilService",a])}(),function(){"use strict";function a(){var a={};return a.randRange=function(a,b){return Math.floor(Math.random()*(b-a+1))+a},a.sortArray=function(a,b){return"desc"==b?a.sort(function(a,b){return a==b?0:a>b?-1:1}):a.sort(function(a,b){return a==b?0:a>b?1:-1})},a.getMaxByArray=function(b){var c=a.cloneJSON(b);return c=c.sort(function(a,b){return a==b?0:a>b?-1:1}),c[0]},a.sortArray2=function(a,b,c,d){var e=[],f=a.length;f>0&&(b.filter(function(b,c){for(var d=[],g=0;g<f;g++)d.push(a[g][c]);d.push(b),e.push(d)}),"desc"==d?e.sort(function(a,b){return a[c]==b[c]?0:a[c]>b[c]?-1:1}):e.sort(function(a,b){return a[c]==b[c]?0:a[c]>b[c]?1:-1}),e.filter(function(c,d){b[d]=c.pop();for(var e=0;e<f;e++)a[e][d]=c[e]}))},a.sumArray=function(a){for(var b=0,c=0;c<a.length;c++)null!=a[c]&&(b+=a[c]);return b},a.decimal2=function(a,b){b=b||2;for(var c="1",d=1,e=0;e<b;e++)c+="0";d=parseInt(c);var f=Math.round(a*d)/d,g=f+"",h=g.indexOf(".");return h>0&&g.substring(h,g.length)>2&&(g=g.substring(0,g.length-2),f=parseFloat(g)),f},a.getDay=function(a){var b=new Date,c=function(a){var b=a.getFullYear(),c=a.getMonth()+1,d=a.getDate();return c<10&&(c="0"+c),d<10&&(d="0"+d),b+"-"+c+"-"+d},d=b.getTime()+864e5*a;return b.setTime(d),c(b)},a.getLastMonthsDate=function(a,b){var c=new Date(a);return c.setMonth(c.getMonth()-Number(b)),c.Format("yyyy-MM-dd")},a.getYearWeekList=function(a){if(void 0===a){a=(new Date).getFullYear()}var b=[],c=new Date(a,0,1),d=c.getDay(),e=new Date(a,11,31);d=0==d?7:d;var f=c.clone().addDays(7-d),g=0;for(d>0&&d<5&&(g=1,b.push({week:g,date:f,year:a}));f<e&&!e.isSameDay(f);)g++,f=f.clone().addDays(7),b.push({week:g,date:f,year:a});var h=new Date(a,11,31),i=h.getDay();return i>0&&i<4&&b.pop(),b},a.getYearWeekCount=function(b){return a.getYearWeekList(b).length},a.getNowWeekNum=function(){var a=Date.today(),b=new Date(a.getFullYear(),0,1),c=b.getDay(),d=b.clone(),e=0;c>0&&(d=d.addDays(8-c),e=1);var f=diffDate(d,a);return Math.ceil(f/7)+e},a.cloneJSON=function(a){var b=Object.prototype.toString.call(a);return b.indexOf("Object")>-1?jQuery.extend(!0,{},a):b.indexOf("Array")>0?a.concat():a},a.splitString=function(a,b){for(var c="",d=0,e=new RegExp(/[^\x00-\xff]/),f=0;f<a.length;f++){var g=a.charAt(f);d+=e.test(g)?2:1,d<=b&&(c+=g)}return{str:c,len:d}},a.merge=function(){return Array.prototype.concat.apply([],arguments)},a.isNullStr=function(a){return!(!angular.isUndefined(a)&&""!=a&&null!=a&&"null"!=a)},a.getStr=function(a){return a<10?"0"+a:a+""},a.setCookie=function(a,b,c){$.cookie(a,b,{expires:c,path:"/",secure:!1,raw:!1})},a.getCookie=function(a){return $.cookie(a)},a.setItem=function(a,b){window.localStorage.setItem(a,b)},a.getItem=function(a){return window.localStorage.getItem(a)},a.copyTxt=function(a){$(a).select();var b=!1;try{b=document.execCommand("Copy","false",null)}catch(c){b=!1}return b},a.randRangeId=function(){if(a.getCookie("tkRmdId"))return a.getCookie("tkRmdId");var b=(new Date).getTime()+a.randRange(3,5);return a.setCookie("tkRmdId",b,1095),b},a.randDeviceId=function(){if(localStorage.getItem("rmdDeviceId"))return localStorage.getItem("rmdDeviceId");var b=(new Date).getTime()+a.randRange(3,10);return localStorage.setItem("rmdDeviceId",b),b},a.getAppkey=function(){return"0d401839250deff23daf62fd49a444cb"},a.getTKAppkey=function(){return"f0f251af10e66a0c94d2e923d8863105"},a.getLogRoot=function(){return"http://log.reyun.com"},a.deviceInfo=function(){return{versions:function(){var a=navigator.userAgent;navigator.appVersion;return{trident:a.indexOf("Trident")>-1,presto:a.indexOf("Presto")>-1,webKit:a.indexOf("AppleWebKit")>-1,gecko:a.indexOf("Gecko")>-1&&-1==a.indexOf("KHTML"),mobile:!!a.match(/AppleWebKit.*Mobile.*/),ios:!!a.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/),android:a.indexOf("Android")>-1||a.indexOf("Linux")>-1,iPhone:a.indexOf("iPhone")>-1,iPad:a.indexOf("iPad")>-1,webApp:-1==a.indexOf("Safari")}}(),language:(navigator.browserLanguage||navigator.language).toLowerCase()}},a.operatorSystem=function(){var a=navigator.userAgent,b="Win32"==navigator.platform||"Windows"==navigator.platform,c="Mac68K"==navigator.platform||"MacPPC"==navigator.platform||"Macintosh"==navigator.platform||"MacIntel"==navigator.platform;if(c)return"Mac";if("ipad"==a.match(/ipad/i))return"ipad";if("iPhone"==navigator.platform)return"iPhone";if("X11"==navigator.platform&&!b&&!c)return"Unix";var d=String(navigator.platform).indexOf("Linux")>-1,e="android"==a.toLowerCase().match(/android/i);if(d)return e?"Android":"Linux";if(b){if(a.indexOf("Windows NT 5.0")>-1||a.indexOf("Windows 2000")>-1)return"Win2000";if(a.indexOf("Windows NT 5.1")>-1||a.indexOf("Windows XP")>-1)return"WinXP";if(a.indexOf("Windows NT 5.2")>-1||a.indexOf("Windows 2003")>-1)return"Win2003";if(a.indexOf("Windows NT 6.0")>-1||a.indexOf("Windows Vista")>-1)return"WinVista";if(a.indexOf("Windows NT 6.1")>-1||a.indexOf("Windows 7")>-1)return"Win7";if(a.indexOf("Windows NT 6.2")>-1||a.indexOf("Windows 8")>-1)return"Win8"}return"other"},a.getBrowser=function(a){var b=window.navigator.userAgent,c="",d="";b.toLowerCase().indexOf("micromessenger")>-1?c="wechat":/Firefox/g.test(b)?(b=b.split(" "),c="Firefox",d=b[b.length-1].split("/")[1]):/MSIE/g.test(b)?(c="IE",b.indexOf("QQBrowser")>-1&&(c="QQBrowser"),b=b.split(";"),d=b[1].split(" ")[2]):/Opera/g.test(b)?(b=b.split(" "),c="Opera",d=b[b.length-1].split("/")[1]):/Chrome/g.test(b)?(b=b.split(" "),c="Chrome",d=b[b.length-2].split("/")[1]):/^apple\s+/i.test(navigator.vendor)?(b=b.split(" "),c="Safair",d=b[b.length-2].split("/")[1]):c="others";var e=d.split(".");return e.length>1&&(d=e[0]+"."+e[1]),a?c+d:c},a}angular.module("app").factory("UtilService",a)}(),function(){"use strict";function a(){var a={};return a.getDay=function(a){var b=new Date,c=function(a){var b=a.getFullYear(),c=a.getMonth()+1,d=a.getDate();return c<10&&(c="0"+c),d<10&&(d="0"+d),b+"-"+c+"-"+d},d=b.getTime()+864e5*a;return b.setTime(d),c(b)},a.getYearWeekList=function(a){if(void 0===a){a=(new Date).getFullYear()}var b=[],c=new Date(a,0,1),d=c.getDay(),e=new Date(a,11,31);d=0==d?7:d;var f=c.clone().addDays(7-d),g=0;for(d>0&&d<5&&(g=1,b.push({week:g,date:f,year:a}));f<e&&!e.isSameDay(f);)g++,f=f.clone().addDays(7),b.push({week:g,date:f,year:a});var h=new Date(a,11,31),i=h.getDay();return i>0&&i<4&&b.pop(),b},a.getYearWeekCount=function(b){return a.getYearWeekList(b).length},a.getNowWeekNum=function(){var a=Date.today(),b=new Date(a.getFullYear(),0,1),c=b.getDay(),d=b.clone(),e=0;c>0&&(d=d.addDays(8-c),e=1);var f=diffDate(d,a);return Math.ceil(f/7)+e},a.getToday=function(){return{startDate:a.getDay(0),endDate:a.getDay(0)}},a.getYesDay=function(){return{startDate:a.getDay(-1),endDate:a.getDay(-1)}},a.getLastDays=function(b,c){return angular.isUndefined(c)&&(c=-1),0==c&&b<0&&(b+=1),0==c&&b>0&&(b-=1),{startDate:a.getDay(b),endDate:a.getDay(c)}},a.getLastWeeks=function(b){var c=a.getNowWeekNum(),d=new Date,e=d.getFullYear(),f={end:e+a.getStr(c)},g=b+c+1;if(g>0)f.start=e+a.getStr(g);else{var h=a.getYearWeekCount(e-1);f.start=e-1+a.getStr(h+g)}return f},a.getLastMonths=function(b){var c=new Date,d=c.getFullYear(),e=c.getMonth()+1,f={end:d+a.getStr(e)},g=e+b+1;return f.start=g>0?d+a.getStr(g):d-1+a.getStr(12+g),f},a.getStr=function(a){return a<10?"0"+a:a+""},a.getWeekRangeDate=function(a,b){a=a||0;var c=new Date,d=c.getDay();d=0==d?7:d;var e=c.clone().addDays(1-d),f=c;return a>0?(e=e.clone().addDays(7*a),f=e.clone().addDays(6)):a<0&&(f=e.clone().addDays(7*(a+1)-1),e=e.clone().addDays(7*a)),b&&-1==b&&Date.isSameDay(f,Date.today())&&(e==f?e=f=f.clone().addDays(-1):f=f.clone().addDays(-1)),{startDate:e.Format("yyyy-MM-dd"),endDate:f.Format("yyyy-MM-dd")}},a.getMonthRangeDate=function(a,b){a=a||0;var c=new Date,d=c.getFullYear(),e=c.getMonth(),f=c.getDate(),g=null,h=null;return 0!=a?(e+=a,e<0&&(e+=11,--d),f=Date.getDaysInMonth(d,e),h=new Date(d,e,f),g=h.clone(),g.setDate(1)):(b&&-1==b&&(f+=-1),g=c.clone(),h=c,g.setDate(1),h.setDate(f)),{startDate:g.Format("yyyy-MM-dd"),endDate:h.Format("yyyy-MM-dd")}},a.getDaysNum=function(a,b){var c,d,e="-";c=a.split(e),d=b.split(e);var f=new Date(c[0],c[1]-1,c[2]),g=new Date(d[0],d[1]-1,d[2]);return parseInt(Math.abs(f-g)/1e3/60/60/24)},a}angular.module("app").factory("DateService",a)}(),function(){"use strict";angular.module("app").run(["$rootScope","$state","$stateParams","UtilService","$templateCache","$location","$window","ToolService","HttpService","DateService","$timeout",function(a,b,c,d,e,f,g,h,i,j,k){function l(a){e.removeAll()}a.$state=b,a.$stateParams=c,a.isSuper="true"==d.getCookie("ryioIsSuper")||1==d.getCookie("ryioIsSuper");var m=d.getCookie("ryioRole");m&&"1"==m?a.isManage=!0:m&&"2"==m&&(a.isAppManage=!0),a.isall=a.isSuper||a.isManage||a.isAppManage,a.firstMeau="/collect/custommenu";var n=d.getCookie("ryioUid"),o=i.getInfo("mng/accountRestrict/find/"+n);!function(){o.then(function(b){a.flowName=b.packageName,a.flowLevel=b.priceLevel,1==b.flowRestrict?a.flowRestrict=!1:a.flowRestrict=!0,a.flowLevel<=4||a.flowLevel>=14?a.byflow=!0:a.byflow=!1,a.ioAll=parseInt(b.iolimit/1e3),a.ioPercentRel=b.ioremainPercent,a.ioPercent=1-b.ioremainPercent,a.ioUsed=parseInt(b.thisMonthIOFlow/1e3),a.ioRemainDay=parseInt(b.iOremainingDays),a.ioAlert=b.ioflowNotified,a.ioDateAlert=b.iopastTimeNotified,a.behaviorAuth=!0,a.userPastDate=b.pastDate;var c=j.getToday().startDate;if(a.pastLong=j.getDaysNum(a.userPastDate,c),a.isSuper&&a.behaviorAuth&&a.ioPercentRel<=-.05&&(a.ioAlert=!1),!a.isSuper&&(a.pastLong<0||a.behaviorAuth&&a.ioPercentRel<=-.05&&!a.flowRestrict)){i.getInfo("login/logout",{}).then(function(a){i.logOutCookie()})}})}();var p=["userinfo","product","nopower","expiration"];a.mainMenus={behavior:["custommenu","eventstats","retention","funnel","usergroup","profile","event","activityevent","custommenuDetail","intelligentpath"],dataexport:["logtool","report"],manage:["app","auth"]},a.$on("$stateChangeStart",function(b,c,e,i){var j=c.name,l=j.substring(j.indexOf(".")+1),m=l.indexOf("Detail"),n=i.name,o=n.substring(n.indexOf(".")+1);if(""==n&&"expiration"==l)return window.location.href="index.html",!1;var q=l||o;a.mainMenus.behavior.indexOf(q)>-1?a.mainMenu="behavior":a.mainMenus.dataexport.indexOf(q)>-1?a.mainMenu="export":a.mainMenus.manage.indexOf(q)>-1&&(a.mainMenu="management");var r=function(){var b=d.getCookie("unfoldFlag");b&&(a.unfoldFlag="false"!=b),document.getElementById("sysLoad").style.display="none",document.getElementById("alpLoad").style.display="none",m>-1&&(l=l.substring(0,m));var e="",i={activityevent:"虚拟事件"};"activityevent"==l&&(e=l,l="event");var j=a.isweb&&a.webHideMenus.indexOf(l)>-1;if(""==l||"collect"==l||j)return f.path(a.firstMeau),!1;if("systemparam"==l&&a.demoU);else if(p.indexOf(l)>-1);else if(!a.isSuper&&a.curRoleAuth&&!a.hasTheMenu(l)){var k=a.firstMeau,n=k.substring(k.lastIndexOf("/")+1);return f.path(a.firstMeau),n==a.pagePath&&g.location.reload(),!1}if(p.indexOf(l)>-1?a.backReport=!0:a.backReport=!1,a.preStatus="product"==l||"userinfo"==l&&"product"==o,$(".rightWrap").scrollTop(0),a.byflow&&a.ioPercentRel<=-.05&&a.mainMenus.behavior.indexOf(l)>-1&&!a.flowRestrict)return l="expiration",window.location.href="index.html#/collect/expiration",!1;a.pagePath=l,"custommenu"==l&&c.url.indexOf(":pageid")>-1||-1==["nopower","expiration"].indexOf(l)&&h.getMenuSubmitData(i[e])};a.limitInfo?r():k(function(){r()},100)});var l=a.$on("$stateChangeSuccess",l)}]).config(["$provide",function(a){a.decorator("$exceptionHandler",["$delegate",function(a){return function(b,c){document.getElementById("sysLoad").style.display="none",-1==String(b).indexOf("$compile:tpload")&&a(b,c)}}])}]).factory("httpInterceptor",[function(){return{request:function(a){var b=$.cookie("ryioToken");return a.headers.Authorization=b,a.requestTimestamp=(new Date).getTime(),a.timeout=3e4,a},response:function(a){return a.config.responseTimestamp=(new Date).getTime(),a}}}]).config(["$httpProvider",function(a){a.interceptors.push("httpInterceptor")}])}(),function(){function a(a,b,c,d,e,f,g,h,j){a.unfoldFlag=void 0!=a.unfoldFlag&&a.unfoldFlag,b.queryLimit=function(b){angular.isDefined(b)?limitPM=c.getInfo("login/limit/"+b):limitPM=c.getInfo("login/limit"),limitPM.then(function(b){a.limitInfo=b,e.setItem("limitInfo",JSON.stringify(a.limitInfo))})},a.demoU=d.isDemoUser(),b.goLogin=function(){window.location.href="/login.html"},b.queryApp=function(d){c.getInfo("app/findall").then(function(c){if(b.appAlllistInfo=c,b.applistInfo=c.filter(function(a){return 1!=a.isDebug}),1==d)return!1;var g=e.getCookie("ryioLastApp"),h=e.getCookie("ryioDemoapk");if(e.setCookie("ryioDemoapk",""),b.applistInfo.length>0){e.isNullStr(g)&&(g="-1"),g=Number(g);var j=b.applistInfo.filter(function(a){return e.isNullStr(h)?a.id==g:a.appkey==h});for(g=0==j.length?b.applistInfo[0].id:j[0].id,b.appidInit==g?b.appfresh=++k:b.appidInit=g,i=0;i<b.applistInfo.length;i++)b.applistInfo[i].id==b.appidInit&&(b.appkey=b.applistInfo[i].appkey)}else a.isSuper||a.isManage||a.isAppManage?f.go("collect.app"):b.goLogin()})},b.$on("f5Applist",function(a,c){b.queryApp(c)}),a.webHideMenus=[],b.$on("appid",function(c,d){a.appInstance=d.info,b.platform=d.info.platform,a.isandroid="Android"==b.platform,a.isios="iOS"==b.platform,a.isweb="H5"==b.platform;var f=g.$$path,h=f.indexOf("Detail");if(f.indexOf("appDetail")>-1)return!1;h>-1?(b.appid=void 0,g.path(f.substring(0,h))):a.isweb&&a.webHideMenus.indexOf(a.pagePath)>-1&&(b.appid=void 0,g.path(a.firstMeau)),(""==a.pagePath||"collect"==a.pagePath||!a.isSuper&&a.curRoleAuth&&!b.hasTheMenu(a.pagePath))&&(b.appid=void 0,g.path(a.firstMeau)),a.appid=b.appid=d.info.id,e.setCookie("ryioLastApp",b.appid,7)}),b.goToCustom=function(b,c){g.path("/collect/custommenu/"+b),a.custID=b},b.gotoCustonMenu=function(a){var b=f.href("collect.custommenu");window.open(b+"/"+a,"_blank")};var k=(new Date).getTime();b.$on("mngappTo",function(a,c){if(b.appid==c)return!1;b.appidInit==c?b.appfresh=++k:b.appidInit=c}),b.loginuserName=e.getCookie("ryioUname"),b.currentAccountId=e.getCookie("ryioUid"),b.userPastDate=e.getCookie("ryioPastDate"),b.errorBack=function(a){d.showTips(a)};e.randRangeId(),e.getCookie("ryioUid");b.goPage=function(b){a.channeluniqueName="normal","home"==b&&(b=a.firstMeau,b=b.substring(1).replace("/",".")),"collect.custommenu"==b&&(a.custID=""),"channel"==b.substring(b.indexOf(".")+1)&&(a.channeluniqueName="normal"),f.current&&f.current.name==b?f.reload(b,{pageid:null}):f.go(b,{pageid:null})},b.resizeStyle=function(){var b="0px";return"userinfo"==a.pagePath||"nopower"==a.pagePath?a.mainMenu=!1:b=a.unfoldFlag?"40px":"186px",$(".conditionAlpha").css("left",b),a.panelw=$(window).width()-b.slice(0,-2)-84,{"margin-left":b}},b.toggleMenu=function(){a.unfoldFlag=!a.unfoldFlag,e.setCookie("unfoldFlag",a.unfoldFlag),b.$broadcast("conentresize",!0)},a.showSubMenus=function(c){if(b.channelAlert)return!1;if("management"!=c&&b.applistInfo&&0==b.applistInfo.length)return b.appAlllistInfo.length>0?d.showTips("请先完成"+b.appAlllistInfo[0].name+"的数据调试"):d.showTips("请先创建应用"),!1;a.mainMenu=c;var e="";e="behavior"==c?"/collect/"+a.mainMenus.behavior[0]:"export"==c?"/collect/"+a.mainMenus.dataexport[a.isweb?1:0]:"/manage/"+a.mainMenus.manage[0],g.path(e)},a.showMenu=function(c,d){return null==c&&(c=b.pagePath),!(b.isweb&&b.webHideMenus.indexOf(c)>-1)&&(!!(a.isSuper||a.isManage||a.isAppManage)||void 0)},a.hasEditPower=function(){return a.showMenu(null,2)},b.formTipMsg="信息没填全或数据格式有误,请检查",a.$watch("pagePath+isweb",function(d){if(d=b.pagePath,angular.isDefined(d)&&""!=d&&"product"!=d){c.getInfo("tip/"+d,{}).then(function(b){a.currentPageTips=b},function(b){a.currentPageTips={}})}else a.currentPageTips={}}),b.userLogout=function(){c.getInfo("login/logout",{}).then(function(a){c.logOutCookie()})},b.showNoticew=!1,b.queryNotice=function(){c.getInfo("notice/findDeploy",{}).then(function(a){b.noticeList=a;var c=e.cloneJSON(a);c&&angular.isArray(c)?c.sort(function(a,b){return new Date(a.deployDate)>new Date(b.deployDate)?-1:1}):c=[],c.length>0&&(b.newNoticeInfo=c[0])}),j(b.queryNotice,18e4)},b.showNoticeWin=function(){b.showNoticew=!0,d.showAlp()},b.hideNoticeWin=function(){b.showNoticew=!1,d.hideAlp()},b.clickNotice=function(a){var d=a.id;b.curNoticeId==d?b.curNoticeId=-1:(b.curNoticeId=d,a.isRead||(a.isRead=!0,b.newNoticeInfo&&b.newNoticeInfo.id==d&&(b.newNoticeInfo.isRead=!0),c.postInfo("notice/saveReadLog/"+d,{})))},b.initpage=function(){b.queryLimit(),b.queryApp(),b.queryNotice()},"/active/product"!=g.path()&&b.initpage(),b.judgeNameChange=function(a,b){return!e.isNullStr(b)&&(""!=a&&""!=b&&angular.lowercase(a)!=angular.lowercase(b)||""==a&&""!=b)},b.closeFlow=function(c){a.pastLong<0?b.userLogout():b.behaviorAuth&&a.ioPercentRel<=-.05&&!a.flowRestrict&&b.userLogout(),b.flowKnow=!0,e.setCookie("ryioRedCircle",!0,7),"ioAlert"==c?b.ioAlert=!1:"ioDateAlert"==c&&(b.ioDateAlert=!1)},a.menuSubmitData=function(a){d.getMenuSubmitData(a)},a.operSubmitData=function(a){d.getOperSubmitData(a)},a.$watch("thirdtab",function(a){angular.isDefined(a)&&d.getMenuSubmitData(a)}),b.pwdPlacehold="仅支持数字,大小写字母,且至少包含其中2种,长度限制为6-18位"}angular.module("app").controller("indexCtrl",["$rootScope","$scope","HttpService","ToolService","UtilService","$state","$location","DateService","$timeout",a])}(),function(){function a(a,b,c){var d={};return d.loginTimeout=function(a){null!=a&&a.code&&-1002==a.code&&d.logOutCookie()},d.noLogin=function(a){if(angular.isUndefined(a)||-1==a.indexOf("login")){var b=c.getCookie("ryioUid");c.isNullStr(b)&&d.logOutCookie()}},d.logOutCookie=function(){c.setCookie("ryioUid",""),window.localStorage.setItem("ryioUauth",""),c.setCookie("ryioToken",""),c.setCookie("ryioIsSuper",""),window.location.href="/login.html"},d.getInfo=function(c,e,f){f||d.noLogin(c);var g=b.defer(),h="";for(var i in e)h+="&"+i+"="+e[i];-1==c.indexOf("?")?c+="?r="+Math.random():c+="&r="+Math.random(),c+=h;a.get("/api/"+c).success(function(a){d.loginTimeout(a),a.code&&200!=a.code?g.reject(a):g.resolve(a.content||a)}).error(function(a){d.loginTimeout(a),g.reject(a)});return g.promise},d.getInfoByUrl=function(c){d.noLogin();var e=b.defer();a.get(c).success(function(a){d.loginTimeout(a),e.resolve(a.content||a)}).error(function(a){d.loginTimeout(a),e.reject(a)});return e.promise},d.getReportData=function(e,f){d.noLogin();var g=b.defer(),h=c.cloneJSON(f),i=h.appid;delete h.appid;var j="?r="+Math.random();for(var k in h)j+="&"+k+"="+h[k];a.get("/api/report/"+i+"/"+e+j).success(function(a){d.loginTimeout(a),a.code&&200!=a.code?g.reject(a):g.resolve(a.content||a)}).error(function(a){d.loginTimeout(a),g.reject(a)});return g.promise},d.postInfo=function(c,e,f){f||d.noLogin(c);var g=b.defer();-1==c.indexOf("?")?c+="?r="+Math.random():c+="&r="+Math.random();a.post("/api/"+c,e).success(function(a,b){d.loginTimeout(a),a.status=b,a.code&&-5e3==a.code?g.resolve(a):a.code&&-6001==a.code?g.resolve(a):g.resolve(a.content||a)}).error(function(a){d.loginTimeout(a),g.reject(a)});return g.promise},d.postInfoByUrl=function(c,e){d.noLogin();var f=b.defer();-1==c.indexOf("?")?c+="?r="+Math.random():c+="&r="+Math.random();a.post(c,e).success(function(a){f.resolve(a.content||a)}).error(function(a){d.loginTimeout(a),f.reject(a)});return f.promise},d.putInfo=function(c,e){d.noLogin(c);var f=b.defer();-1==c.indexOf("?")?c+="?r="+Math.random():c+="&r="+Math.random();a.put("/api/"+c,e).success(function(a,b){d.loginTimeout(a),a.status=b,a.code&&a.code<0?f.reject(a):f.resolve(a.content||a)}).error(function(a){d.loginTimeout(a),f.reject(a)});return f.promise},d.deleteInfo=function(c){d.noLogin();var e=b.defer();-1==c.indexOf("?")?c+="?r="+Math.random():c+="&r="+Math.random();a.delete("/api/"+c).success(function(a,b){d.loginTimeout(a),a.status=b,e.resolve(a.content||a)}).error(function(a){d.loginTimeout(a),e.reject(a)});return e.promise},d.downFile=function(c,d){var e=b.defer();return-1==c.indexOf("api")&&(c="/api/"+c),a({method:"GET",url:c,params:d,responseType:"arraybuffer"}).success(function(a,b,c){if(204==b)return e.resolve({code:-1}),!1;e.resolve({code:1}),c=c();var d=c.filename,f=c["content-type"],g=document.createElement("a");try{var h=new Blob([a],{type:f}),i=window.URL.createObjectURL(h);g.setAttribute("href",i),g.setAttribute("download",decodeURIComponent(d));var j=new MouseEvent("click",{view:window,bubbles:!0,cancelable:!1});g.dispatchEvent(j)}catch(k){}}).error(function(a){}),e.promise},d}angular.module("app").factory("HttpService",["$http","$q","UtilService",a])}(),function(){function a(a,c){var d={},e={line:1,column:2,columnstack:3,bar:4,area:5,areastack:6,arealiner:7,pie:8,funnel:9,columnline:10,barY:11};d.getOption=function(d,f,g){var h=new b(c,g,a),i=h.init(d,g),j=[];if(e[f]==e.line)j=h.lineChart();else if(e[f]==e.area)j=h.areaChart();else if(e[f]==e.areastack)j=h.areaChart(!0,!1);else if(e[f]==e.arealiner)j=h.areaChart(!1,!0);else if(e[f]==e.column)j=h.columnChart(!1),i.yAxis[0].axisTick=i.xAxis[0].axisTick,i.yAxis[0].axisLine=i.xAxis[0].axisLine;else if(e[f]==e.columnstack)j=h.columnChart(!0,g.flag),i.yAxis[0].axisTick=i.xAxis[0].axisTick,i.yAxis[0].axisLine=i.xAxis[0].axisLine;else if(e[f]==e.bar)j=h.barChart(),i.yAxis[0]=h.getXaxis2(),i.xAxis[0]=h.getYaxis2(),i.grid.right=20;else if(e[f]==e.funnel)j=h.funnelChart(),i.tooltip=h.funnelTooltip();else if(e[f]==e.columnline)j=h.columnLineChart(),i.yAxis[0].axisTick=i.xAxis[0].axisTick,i.yAxis[0].axisLine=i.xAxis[0].axisLine,i.yAxis.push(h.getYaxis(!0));else if(e[f]==e.barY){j=h.barChart(!0),i.yAxis[0]=h.getXaxis2(),i.xAxis[0]=h.getYaxis2(),i.grid.right=20,i.grid.top=0;for(var k=d.name,l=k.length-1,m=0;m<l;m++)i.xAxis.push(h.getYaxis2()),i.xAxis[m+1].show=!1}return i.series=j,angular.isDefined(g.color)&&(i.color=g.color),angular.isDefined(g.legend)&&(i.legend.show=g.legend),i};var f=new b(c);return d.getPieOption=function(a,b,c){return f.pieChart(a,c)},d.getMapOption=function(a,b,c){return f.mapChart(a,c)},d.getLoginMapOption=function(a,b,c){return f.loginMapChart(a,c)},d}function b(a,b,d){var e="#666666",f="#d5d7d8",g="SimHei,Arial",h="#666666",i=12;this.UtilService=a,this.init=function(a,b){this.data=a.val,this.name=a.name,this.key=a.key,this.chartData=a,this.config=b;var c=this.commonOptions();return c.xAxis=[this.getXaxis()],c.yAxis=[this.getYaxis()],c},this.commonOptions=function(a){var c="";this.config.ispercent&&1==this.config.ispercent&&(c+="%");var e=[],j=0,k={};if(this.name&&this.name.length>0){for(var l=0;l<this.name.length;l++){var m=this.name[l].lastIndexOf("_");e.push({name:b.flag?this.name[l].slice(0,-1==m?this.name[l].length-1:m):this.name[l],icon:"rect"})}if(this.config.hidelast)for(var l=this.config.hidelast;l>0;l--){var n=this.name.slice(0-l)[0];k[n]=!1}}var o="",p=this;return this.config.title&&(o=this.config.title,0!=this.config.legend&&(j=30)),{title:{text:o,textStyle:{color:h,fontSize:i,fontFamily:g},left:"center"},legend:{data:e,top:j,textStyle:{color:h,fontSize:i,fontFamily:g},itemWidth:10,itemHeight:10,formatter:function(a){return e.length>2?echarts.format.truncateText(a,80,"14px Microsoft Yahei","…"):a},tooltip:{show:!0},selected:k},grid:{left:10,top:j+40,bottom:10,right:0,containLabel:!0},tooltip:{trigger:b.flag&&"hasGro"!=b.flag&&"nohasGro"!=b.flag?"item":"axis",formatter:function(a){var e,f=a.length,g="";if(b.flag&&"hasGro"!=b.flag&&"nohasGro"!=b.flag){var h=a.seriesName;return null!=a.value&&"-"!=a.value&&(g+='<span style="color:'+a.color+'">●</span>'+h+" : "+p.UtilService.decimal2(a.value,2)+c,p.config.lastprecent&&(g+="%"),p.config.namesub&&p.config.namesub.length>0&&p.config.namesub[a.seriesIndex]&&(g+=p.config.namesub[a.seriesIndex]),g+="<br/>"),g=a.name+"<br/>"+g}for(var i=0;i<f;i++){e=a[i];var h=e.seriesName;null!=e.value&&"-"!=e.value&&(g+='<span style="color:'+e.color+'">●</span>'+h+" : "+p.UtilService.decimal2(e.value,2)+c,p.config.lastprecent&&i==f-1&&(g+="%"),p.config.namesub&&p.config.namesub.length>0&&p.config.namesub[i]&&(g+=p.config.namesub[i]),g+="<br/>")}return g=e.name+"<br/>"+g,b.id?(d.$emit("tooltipObj",{objs:a,id:b.id,flag:b.flag}),""):g},axisPointer:{type:"hasGro"==b.flag||"nohasGro"==b.flag?"shadow":"line",lineStyle:{color:f}}},toolbox:{show:!0,feature:{mark:{show:!1},dataView:{show:!1,readOnly:!1},saveAsImage:{show:!1}}},calculable:!1,color:["#e8340e","#0088cc","#61a0a8","#d48265","#91c7ae","#749f83","#ca8622","#bda29a","#6e7074","#546570","#2f4554","#006000","#642100","#6c3365","#484891","#844200","#006030","#003e3e","#584b00","#336666"]}},this.getXaxis=function(a){var b=this;return{type:"category",data:this.key,splitLine:{show:!1},axisLabel:{textStyle:{color:e,fontSize:i,fontFamily:g},formatter:function(a){if(a){var c=b.UtilService.splitString(a,12);return b.config.issmart&&c.len>12?c.str+"...":a}}},axisTick:{lineStyle:{color:f}},axisLine:{lineStyle:{color:f}}}},this.getXaxis2=function(a){var b=this;return{type:"category",data:this.key,splitLine:{show:!1},axisLabel:{textStyle:{color:e,fontSize:i,fontFamily:g},formatter:function(a){if(angular.isUndefined(a))return"";var c=b.UtilService.splitString(a,12);return c.len>12?c.str+"...":a}},axisTick:{lineStyle:{color:f}},axisLine:{lineStyle:{color:f}},inverse:!0}},this.getYaxis=function(a){var b="";return(this.config.ispercent&&1==this.config.ispercent||a)&&(b+="%"),{ +type:"value",axisLabel:{textStyle:{color:e,fontSize:i,fontFamily:g},formatter:function(a){return c(a)+b}},axisTick:{show:!1,lineStyle:{opacity:0}},axisLine:{show:!1},splitLine:{show:!0,lineStyle:{color:f,type:"dashed"}},min:0,splitNumber:4}},this.getYaxis2=function(){var a="";return this.config.ispercent&&1==this.config.ispercent&&(a+="%"),{type:"value",axisLabel:{textStyle:{color:e,fontSize:i,fontFamily:g},formatter:function(b){return c(b)+a}},axisTick:{lineStyle:{color:f}},axisLine:{lineStyle:{color:f}},splitLine:{show:!1},min:0,splitNumber:3}},this.lineChart=function(){for(var a=[],b=0;b<this.name.length;b++){var c={};c.name=this.name[b],c.type="line",c.lineStyle={normal:{width:1.2}},c.smooth=!0,c.data=this.data[b],a[b]=c}return a},this.areaChart=function(a,b){var c=[],d=.25;this.config.opacity&&(d=this.config.opacity);for(var e=0;e<this.name.length;e++){var f={};f.name=this.name[e],f.type="line",f.data=this.data[e],a&&(f.stack="总量"),f.smooth=!0,f.areaStyle={normal:{opacity:d}},b&&(f.areaStyle.normal.color=new echarts.graphic.LinearGradient(0,0,0,1,[{offset:0,color:this.config.color[e]},{offset:1,color:"#fff"}])),f.lineStyle={normal:{width:1.2}},c[e]=f}return c},this.columnChart=function(a,b){for(var c=[],d=[],e=0;e<this.name.length;e++){var f={},g=this.name[e].lastIndexOf("_");f.name=b?this.name[e].slice(0,-1==g?this.name[e].length:g):this.name[e],f.type="bar",f.barMaxWidth=18,f.barGap=0,f.data=this.data[e],a&&(f.stack="总量"+(b?this.name[e].slice(-1==g?0:g):""));var h="";h=d.indexOf(f.name)>-1?c[e-1].itemStyle.normal.color:this.config.color[e],f.itemStyle={normal:{color:h}},b||(f.itemStyle.emphasis={color:this.config.color[e]}),d.push(f.name),c[e]=f}return c},this.barChart=function(a){for(var b=[],d=0;d<this.name.length;d++){var e={};e.name=this.name[d],e.type="bar",this.config.barwidth?e.barMaxWidth=this.config.barwidth:(e.barMaxWidth=18,e.barGap=0),a&&(e.xAxisIndex=d),e.data=this.data[d],this.config.isbartext&&1==this.config.isbartext&&(e.label={normal:{show:!0,position:"right",formatter:function(a){var b=a.data;return b>0?c(b):""}}}),b[d]=e}return b},this.pieChart=function(a,b){var c=a.name,d=a.key,e=a.val[0],f=[];return e&&d.filter(function(b,d){var g=[];c.filter(function(a,c){g.push({value:e[b][c],name:a})});var h={type:"pie",clockwise:!1,label:{normal:{show:!(c.length>20)}},radius:[0,120],center:1==a.key.length?["50%","50%"]:0==d?["25%","50%"]:["75%","50%"],selectedOffset:5,data:g};f.push(h)}),{tooltip:{trigger:"item",formatter:"{b}: {c} ({d}%)"},legend:{show:!1},color:b.color,series:f}},this.funnelTooltip=function(){var a=this,b="用户";return 0==this.config.isdevice&&(b="用户"),{trigger:"axis",formatter:function(c){if("markPoint"==c.componentType)return"转化率"+c.value;c.length>0&&(c=c[0]);var d=c.dataIndex;if(d>0){var e="";return c?(e=c.name+"的"+b+"个数:"+a.data[2][d]+"<br/>",e+=a.key[0]+"到"+c.name+"的"+b+"转化成功率:"+a.data[0][d]+"%"):e="",e}return c.name+"的"+b+"个数:"+a.data[2][0]}}},this.funnelChart=function(){var a=this,b=this.config.barwidth,c=[],d=[],e="image:///images/chartarrow.png",f=[54,26],h=this.key.length;if(h>0){var i=(b-70)/h,j=80,k="insideTop",l="#ffffff";if(h>5&&(j=40),1==this.config.issmart)h>5?(e="image:///images/chartarrow2.png",f=[10,10],i=(b-20)/h,j=30,k="insideTop",l="#666"):j=45;else for(var m=this.chartData.trans4last,n=0;n<m.length;n++)c.push({value:m[n]+"%",x:40+5*n+i*(n+1)+"px",y:"50%"});for(var n=0;n<2;n++){var o={};o.type="bar",o.stack="转化率",o.barMaxWidth=j,o.barGap=0,o.data=this.data[n],0==n&&(o.label={normal:{show:!0,position:k,formatter:function(b){return 0==b.value&&0==a.data[2][b.dataIndex]||b.value<10?"":a.UtilService.decimal2(b.value)+"%"},textStyle:{color:l,fontFamily:g}}},o.itemStyle={normal:{color:this.config.color[0],textStyle:{color:"#ffffff",fontFamily:g}}}),1==n&&(o.itemStyle={normal:{color:this.config.color[1]},emphasis:{color:this.config.color[1]}}),o.markPoint={show:!0,symbol:e,symbolSize:f,label:{normal:{formatter:function(b){return h>5&&1==a.config.issmart?"":b.value},textStyle:{color:"#ffffff",fontFamily:g}},emphasis:{formatter:function(a){return a.value}}},data:c},d[n]=o}}return d},this.mapChart=function(a,b){var c=a.name,d=a.key,f=a.val[0],h=[],i=0;if(f&&f.length>0){var i=this.UtilService.getMaxByArray(f);i=100*Math.ceil(i/100),d.filter(function(a,b){h.push({value:f[b],name:a})})}return{tooltip:{trigger:"item",formatter:function(a){return isNaN(a.value)?a.name:a.name+"<br/>"+a.seriesName+":"+a.value}},visualMap:{min:0,max:i,color:["#7ec3f2","#dcebf4"]},series:[{name:c[0],type:"map",mapType:"china",selectedMode:"multiple",top:20,bottom:20,label:{normal:{show:!0,textStyle:{fontSize:4,color:e,fontFamily:g}},emphasis:{show:!0}},itemStyle:{normal:{areaColor:"#eeeeee",borderColor:"#858585"},emphasis:{areaColor:"#1fb9e9"}},data:h}]}},this.loginMapChart=function(a,b){var c=a.name,d=a.key,f=a.val[0],h=[],i=0;if(f&&f.length>0){var i=this.UtilService.getMaxByArray(f);i=100*Math.ceil(i/100),d.filter(function(a,b){h.push({value:f[b],name:a})})}return{tooltip:{trigger:"item",show:!1,formatter:function(a){return isNaN(a.value)?a.name:a.name+"<br/>"+a.seriesName+":"+a.value}},series:[{name:c[0],type:"map",mapType:"china",selectedMode:"multiple",top:20,bottom:20,label:{normal:{show:!1,textStyle:{fontSize:4,color:e,fontFamily:g}},emphasis:{show:!0}},itemStyle:{normal:{areaColor:"#424250",borderColor:"#1e1e26"},emphasis:{areaColor:"#3c3c4a"}},data:h}]}},this.columnLineChart=function(){for(var a=[],b=this.name.length,c=0;c<b;c++){var d={};d.name=this.name[c],d.barMaxWidth=18,d.barGap=0,d.data=this.data[c],c==b-1?(d.type="line",d.yAxisIndex=1):d.type="bar",d.itemStyle={normal:{color:this.config.color[c]},emphasis:{color:this.config.color[c]}},a[c]=d}return a}}function c(a){return a>999&a<1e4?(a/1e3).toFixed(1).toString()+"k":a>=1e4&&a<1e6?(a/1e4).toFixed(1).toString()+"w":a>=1e6&&a<1e9?(a/1e6).toFixed(1).toString()+"m":a>=1e9?(a/1e9).toFixed(1).toString()+"b":a}angular.module("app").factory("OptionService",["$rootScope","UtilService",a])}(),function(){function delTip(){return{restrict:"E",replace:!0,templateUrl:"/template/common/delwin.html?r="+tempVersion,transclude:!0,scope:{delfn:"&",status:"=",okTitle:"@"},link:function(a,b){a.btnname=a.okTitle?a.okTitle:"确定",a.hideWin=function(){a.status=!1}}}}function wincrmTip(){return{restrict:"E",replace:!0,templateUrl:"/template/common/wincrm.html?r="+tempVersion,transclude:!0,scope:{okfn:"&",nofn:"&",title:"@",status:"=",okTitle:"@",noTitle:"@"},link:function(a,b){angular.isUndefined(a.okTitle)&&(a.okTitle="确定"),angular.isUndefined(a.noTitle)&&(a.noTitle="取消"),a.hideWin=function(){a.status=!1,a.nofn()},a.crmWin=function(){a.status=!1,a.okfn()}}}}function okcrmTip(a){return{restrict:"E",replace:!0,templateUrl:"/template/common/okcrm.html?r="+tempVersion,transclude:!0,scope:{title:"@",status:"=",okfn:"&"},link:function(b,c){b.$watch("status",function(b){angular.isDefined(b)&&1==b&&a.showAlp()}),b.crmWin=function(){b.status=!1,a.hideAlp(),b.okfn()}}}}function stopEvent(){return{restrict:"A",link:function(a,b){jQuery(b).on("click",function(a){a.stopPropagation()})}}}function selectList(a){return{restrict:"E",replace:!0,templateUrl:"/template/common/select.html?r="+tempVersion,scope:{meauInfo:"=",meauName:"=",meauId:"@",meauId2:"=",meauData:"=",meauRefresh:"=",keyname:"@",keyid:"@",meauNull:"=",meauRed:"=",nosearch:"@",operationSel:"=",iconType:"@",meauSpe:"="},link:function(b,c){b.selme=!1,b.meauId=b.meauId||b.meauId2,b.clickMeau=function(c){if(!b.operSel||"pie"==c[b.keyid]&&b.meauSpe)return a.showTips("饼状图只适用于有分组的事件分析。"),!1;b.currentInfo=c,b.selName=c[b.keyname],b.selId=c[b.keyid],b.meauRed=!1,b.$emit(b.meauId,{info:c})},b.$watch("operationSel",function(a){angular.isUndefined(b.operationSel)?b.operSel=!0:b.operSel=a}),b.showsearch="true"!=b.nosearch,angular.isUndefined(b.keyname)&&(b.keyname="name"),angular.isUndefined(b.keyid)&&(b.keyid="id"),b.$watch("meauData+meauName+meauRefresh+meauInfo",function(){if(b.meauInfo&&angular.isDefined(b.meauData)&&-1!=b.meauData){var a=b.meauInfo.filter(function(a){return a[b.keyid]==b.meauData});a.length>0?b.clickMeau(a[0]):(b.selName=b.meauName,b.selId="")}else b.selName=b.meauName,b.selId=""}),b.$watch("meauNull",function(a){angular.isDefined(a)&&(b.selName=b.meauName,b.selId="")})}}}function selectTList(){return{restrict:"E",replace:!0,templateUrl:"/template/common/selectT.html?r="+tempVersion,scope:{meauInfo:"=",meauName:"=",meauId:"@",meauId2:"=",meauData:"=",meauType:"=",meauRefresh:"=",keyname:"@",keyid:"@",meauNull:"=",meauRed:"=",meauTypekey:"@",meauTypename:"@",operationSel:"="},link:function($scope,$element){angular.isDefined($scope.meauTypekey)&&($scope.typeKey=eval($scope.meauTypekey),$scope.typeName=eval($scope.meauTypename)),$scope.$watch("operationSel",function(a){angular.isUndefined($scope.operationSel)?$scope.operSel=!0:$scope.operSel=a}),$scope.selme=!1,$scope.meauId=$scope.meauId||$scope.meauId2,$scope.clickMeau=function(a){if(!$scope.operSel)return!1;$scope.selName=a[$scope.keyname],$scope.selId=a[$scope.keyid],$scope.meauRed=!1,$scope.$emit($scope.meauId,{info:a})},angular.isUndefined($scope.keyname)&&($scope.keyname="name"),angular.isUndefined($scope.keyid)&&($scope.keyid="id"),$scope.$watch("meauData+meauName+meauRefresh+meauInfo",function(){if($scope.meauInfo&&angular.isDefined($scope.meauData)&&-1!=$scope.meauData){var a=$scope.meauInfo.filter(function(a){return a[$scope.keyid]==$scope.meauData&&(a.type==$scope.meauType||!$scope.meauType)});a.length>0?$scope.clickMeau(a[0]):$scope.selName=$scope.meauName}else $scope.selName=$scope.meauName}),$scope.haslist=function(a){if(!$scope.meauInfo)return!1;for(var b=!1,c=0;c<$scope.meauInfo.length;c++)if($scope.meauInfo[c].type==a||$scope.meauInfo[c].dimensionType==a){b=!0;break}return b},$scope.$watch("searchlitxt",function(a){if(angular.isUndefined(a)||!a)return!1;$scope.virtual="",$scope.nature="",$scope.meauInfo.filter(function(b){angular.uppercase(b.name).indexOf(angular.uppercase(a))>-1&&"virtual"==b.type&&($scope.virtual=b.type),angular.uppercase(b.name).indexOf(angular.uppercase(a))>-1&&"nature"==b.type&&($scope.nature=b.type)})})}}}function selectMoreList(){return{restrict:"E",replace:!0,templateUrl:"/template/common/selectmore.html?r="+tempVersion,scope:{meauInfo:"=",meauName:"=",meauId:"@",meauData:"=",meauRefresh:"=",keyname:"@",keyid:"@",meauRed:"="},link:function(a,b){a.ischeckall=!1,a.selme=!1,angular.isUndefined(a.keyname)&&(a.keyname="name"),angular.isUndefined(a.keyid)&&(a.keyid="id"),a.clickMeau=function(b){a.meauRed=!1;var c=a.selIDS.indexOf(b[a.keyid]);c>-1?(a.selIDS.splice(c,1),a.selNames.splice(c,1),a.ischeckall=!1):(a.selIDS.push(b[a.keyid]),a.selNames.push(b[a.keyname]))},a.okSelect=function(){a.$emit(a.meauId,{info:a.selIDS.join(",")}),a.selme=!1},a.$watch("selme",function(){!a.selme&&"eventName"==a.keyid&&a.selIDS&&a.$emit(a.meauId,{info:a.selIDS.join(",")})}),a.$watch("meauData+meauName+meauRefresh+meauInfo",function(){if(a.selIDS=[],a.selNames=[],a.ischeckall=!1,a.meauInfo&&angular.isDefined(a.meauData)&&-1!=a.meauData&&"string"==typeof a.meauData){var b=a.meauData.split(","),c=a.meauInfo.filter(function(c){return b.indexOf(c[a.keyid])>-1});c.length>0?angular.forEach(c,function(b){a.clickMeau(b)}):a.selName=a.meauName}else a.selName=a.meauName}),a.checkAll=function(){a.ischeckall=!a.ischeckall,a.meauInfo.filter(function(b){var c=a.selIDS.indexOf(b[a.keyid]);!a.ischeckall&&c>-1&&(a.selIDS.splice(c,1),a.selNames.splice(c,1)),a.ischeckall&&-1==c&&(a.selIDS.push(b[a.keyid]),a.selNames.push(b[a.keyname]))})}}}}function selectParams(a){return{restrict:"E",replace:!0,templateUrl:"/template/common/selectparams.html?r="+tempVersion,scope:{meauInfo:"=",meauName:"=",meauId:"@",meauRefresh:"="},link:function(b,c){b.selme=!1,b.secondSel=!1,b.showSelWin=function(){b.selme=!0,b.selId&&(b.secondSel=!0)},b.clickMeau=function(a){var d=$(c).find(".optionList:eq(0)").width();b.selId!=a.id&&(b.secIDS=[],b.secKeys=[]),b.selId=a.id,b.selN=a.name,b.evtType=a.type,b.secondSel=!0,b.secondList=a.value,b.secKeyList=a.key,b.secondStyle={left:d+"px"}},b.clickSecMeau=function(a,c){var d=b.secIDS.indexOf(a);d>-1?(b.secIDS.splice(d,1),b.secKeyList&&b.secKeys.splice(d,1)):(b.secIDS.push(a),b.secKeyList&&b.secKeys.push(b.secKeyList[c]))},b.okSelect=function(){var c="";if(b.selId&&""!=b.selId){var d={};if(0==b.secIDS.length||b.secIDS.length>10)return a.showTips("请选择10个以内对比属性值"),!1;b.secKeyList?d[b.selId]=b.secKeys.join(","):d[b.selId]=b.secIDS.join(","),d.type=b.evtType,c=JSON.stringify(d),b.selName=b.selN}else b.selName=b.meauName;b.$emit(b.meauId,{info:c,name:b.selN}),b.selme=!1,b.secondSel=!1},b.$watch("meauName+meauInfo+meauRefresh",function(){b.meauInfo&&(b.secIDS=[],b.secondList=[],b.selId="",b.secondSel=!1),b.selName=b.meauName}),angular.element(document).on("click",function(){b.$apply(function(){b.selme=!1,b.secondSel=!1})})}}}function flipInfo(){return{restrict:"E",replace:!0,templateUrl:"/template/common/flipinfo.html?r="+tempVersion,scope:{listInfo:"=",searchTxt:"=",searchName:"@",listKey:"@",searchKey:"=",listRefresh:"="},link:function(a,b){a.everyId="everyId",a.everyList=[{id:10,name:"每页10条"},{id:20,name:"每页20条"},{id:30,name:"每页30条"}],a.minNum=a.everyInit=a.everyList[0].id,a.$on(a.everyId,function(b,c){var d=c.info.id;a.everyNum="all"==d?a.listInfo.length:d}),a.page={},a.$watch("listInfo+everyNum",function(b){if(angular.isDefined(a.listInfo)){var c=0;c=angular.isDefined(a.searchTxt)&&""!=a.searchTxt?a.filterCurList.length:a.listInfo.length,a.refreshInfos(c)}}),a.$watch("searchTxt",function(b){if(angular.isDefined(b)&&a.listInfo){a.searchN=a.searchName||a.searchKey,angular.isDefined(a.searchN)&&(a.searchNames=a.searchN.split(","));var c=a.listInfo.filter(function(c){for(var d=!1,e=a.searchNames.length-1;e>=0;e--)if(c[a.searchNames[e]]&&angular.uppercase(String(c[a.searchNames[e]])).indexOf(angular.uppercase(b))>-1){d=!0;break}return d});a.filterCurList=c,a.refreshInfos(c.length)}}),a.refreshInfos=function(b){var c=a.everyNum?a.everyNum:a.everyInit;a.page.totals=b,a.page.totalpages=Math.ceil(a.page.totals/c),a.page.curpage=1,a.sendData()},a.goto=function(b,c){switch(b){case 0:a.page.curpage=c;break;case 2:a.page.curpage>1&&a.page.curpage--;break;case 3:a.page.curpage<a.page.totalpages&&a.page.curpage++;break;case 4:a.page.curpage=a.page.totalpages;break;case 5:""!=a.gonum&&angular.isNumber(a.gonum)&&a.gonum<=a.page.totalpages?a.page.curpage=a.gonum:a.gonum=""}a.sendData()},a.$watch("page.curpage",function(b){angular.isDefined(b)&&(a.gonum=b)}),a.$watch("listRefresh",function(b){angular.isDefined(b)&&a.goto(0,1)}),a.sendData=function(){var b=(a.page.curpage-1)*a.everyNum-1,c=a.page.curpage*a.everyNum;a.$emit("flipinfo",{start:b,end:c,listkey:a.listKey,pagen:a.everyNum})}}}}function flipInfoDy(){return{restrict:"E",replace:!0,templateUrl:"/template/common/flipinfody.html?r="+tempVersion,scope:{totalNum:"=",listKey:"@",listRefresh:"="},link:function(a,b){a.everyId="everyId",a.everyList=[{id:20,name:"每页20条"},{id:50,name:"每页50条"},{id:100,name:"每页100条"}],a.minNum=a.everyInit=a.everyList[0].id,a.$on(a.everyId,function(b,c){var d=c.info.id;a.everyNum="all"==d?a.totalNum:d}),a.page={},a.$watch("totalNum+everyNum+listRefresh",function(b){angular.isDefined(a.totalNum)&&a.refreshInfos(a.totalNum-1)}),a.refreshInfos=function(b){var c=a.everyNum?a.everyNum:a.everyInit;a.page.totals=b,a.page.totalpages=Math.ceil(a.page.totals/c),a.page.curpage=1,a.sendData()},a.goto=function(b,c){var d=!1;switch(b){case 0:a.page.curpage==c&&(d=!0),a.page.curpage=c;break;case 2:1==a.page.curpage&&(d=!0),a.page.curpage>1&&a.page.curpage--;break;case 3:(a.page.curpage==a.page.totalpages||a.page.totalpages<=1)&&(d=!0),a.page.curpage<a.page.totalpages&&a.page.curpage++;break;case 4:a.page.curpage==a.page.totalpages&&(d=!0),a.page.curpage=a.page.totalpages;break;case 5:""!=a.gonum&&angular.isNumber(a.gonum)&&a.gonum<=a.page.totalpages?(a.page.curpage==a.gonum&&(d=!0),a.page.curpage=a.gonum):a.gonum=""}d||a.sendData()},a.$watch("page.curpage",function(b){angular.isDefined(b)&&(a.gonum=b)}),a.sendData=function(){a.$emit("flipinfo",{current:a.page.curpage,pagenum:a.everyNum,listkey:a.listKey})}}}}function minChart(a,b,c,d,e,f,g){return{restrict:"E",replace:!0,templateUrl:"/template/common/chart.html?r="+tempVersion,scope:{chartTitle:"@",chartData:"=",chartType:"@",chartTp:"=",chartConfig:"=",chartLoading:"=",chartResize:"@",chartCondition:"=",chartBack:"="},link:function(e,g){var h=echarts.init($(g).find(".chartInfo").get(0));e.$watch("chartLoading",function(){e.chartLoading});var i=0;e.$watch("chartData",function(){if(angular.isUndefined(e.chartData))return!1;i=0,e.chartType=e.chartTp||e.chartType;var d=null;if("funnel"==e.chartType){var f=$(g).find(".chartInfo").width();e.chartConfig.barwidth=f}if(h.clear(),d="pie"==e.chartType?a.getPieOption(e.chartData,e.chartType,e.chartConfig||{}):"map"==e.chartType?a.getMapOption(e.chartData,e.chartType,e.chartConfig||{}):a.getOption(e.chartData,e.chartType,e.chartConfig||{}),"funnel"==e.chartType&&0==e.chartConfig.barwidth);else{h.setOption(d);var f=$(g).find(".chartInfo").width();e.chartResize&&"yes"==e.chartResize?h.resize():0==f&&c(function(){h.resize()},500)}c(function(){if("funnel"==e.chartType&&0==e.chartConfig.barwidth){var b=$(g).find(".chartInfo").width();e.chartConfig.barwidth=b,d=a.getOption(e.chartData,e.chartType,e.chartConfig||{}),h.setOption(d)}h.resize()},200),h.hideLoading(),angular.element(b).bind("resize",function(){h.resize()}),e.$on("conentresize",function(){c(function(){h.resize()},50)})},!0),e.isChart=!0,e.changeChart=function(a){e.isChart=a,a&&c(function(){h.resize()},100)},e.exportData=function(){var a=(new Date).getTime();if(i>0&&a-i<=expLimitTime)return i=a,f.showTips(expTimeTips),!1;i=a,f.showLoading(),d.postInfo("mng/export/report/"+e.chartCondition.app+"/generatefile",e.chartCondition).then(function(a){f.hideLoading(),f.showTips(exportTips)})}}}}function exportButton(a,b,c,d){return{restrict:"E",transclude:!0,replace:!0,templateUrl:"/template/common/export.html?r="+tempVersion,scope:{exportCondition:"="},link:function(b,d){b.style1={float:"right","margin-top":"11px","margin-right":"10px"};var e=0;b.$watch("exportCondition",function(){e=0}),b.exportData=function(){var d=(new Date).getTime();if(e>0&&d-e<=expLimitTime)return e=d,c.showTips(expTimeTips),!1;e=d,c.showLoading(),a.postInfo("mng/export/report/"+b.exportCondition.app+"/generatefile",b.exportCondition).then(function(a){c.hideLoading(),c.showTips(exportTips)})}}}}function ngEnter(){return function(a,b,c){b.bind("keydown keypress",function(b){13===b.which&&(a.$apply(function(){a.$eval(c.ngEnter)}),b.preventDefault())})}}function selectChannel(a,b){return{restrict:"E",replace:!0,templateUrl:"/template/common/channel.html?r="+tempVersion,scope:{channelList:"=",appOs:"=",type:"="},link:function(c,d){c.isSuper=b.isSuper,c.type?c.channType=null:c.channType="ry_coop",c.category="ADVERTISING",c.letter="",c.popchannellist=!1,angular.element(d).parent().bind("click",function(){c.$broadcast("popchannel",{}),c.$apply()}),c.$on("popchannel",function(){c.popchannellist=!0}),c.$watch("appOs",function(a){angular.isDefined(a)&&(c.appplattype=a)}),c.changeType=function(a){c.channType=a,c.category="ADVERTISING",c.letter=""},c.$watch("channType+appplattype+channelList+category",function(a){angular.isDefined(c.channelList)&&angular.isDefined(c.appplattype)&&angular.isDefined(c.category)&&(2==c.appplattype?"ry_bd"!=c.channType?c.curChannelList=c.channelList.filter(function(a){return a.type==c.channType&&a.osAndroid&&a.category==c.category}):c.curChannelList=c.channelList.filter(function(a){return a.type==c.channType&&a.osAndroid}):1==c.appplattype?c.curChannelList=c.channelList.filter(function(a){return a.type==c.channType&&a.osIos&&"ADVERTISING"==a.category}):c.curChannelList=c.channelList.filter(function(a){return a.type==c.channType&&a.osWeb}))}),c.clickChannel=function(a){c.$emit("curchannel",{info:a}),c.curchid=a.id,c.popchannellist=!1},c.goChannel=function(){a.go("collect.channel")}}}}function popTip(){return{restrict:"E",transclude:!0,replace:!0,template:'<div class="opIcon p" ng-mouseleave="showtip=false" style="height:30px;"><span ng-transclude ng-click="clickTip()"></span><div class="poptips" ng-show="showtip"><div class="poparrow"></div>{{tipinfo}}</div></div>',scope:{tipinfo:"="},link:function(a,b){a.showtip=!1,a.clickTip=function(){a.showtip=!a.showtip}}}}function isLoading(){return{restrict:"E",replace:!0,templateUrl:"/template/common/loading.html?r="+tempVersion,scope:{doLoading:"="},link:function(a,b){a.myLoading=!1,a.$watch("doLoading",function(b){angular.isDefined(b)&&(a.myLoading=b)})}}}function noData(){return{restrict:"E",replace:!0,templateUrl:"/template/common/nodata.html?r="+tempVersion,scope:{},link:function(a,b){}}}function dateRange(a){return{restrict:"E",replace:!0,templateUrl:"/template/common/daterange.html?r="+tempVersion,scope:{nodrange:"@",noToday:"@",datekey:"@",maxRange:"@"},link:function(b,c){angular.isUndefined(b.nodrange)&&(b.nodrange=!1),a.isDemoUser()&&(b.nodrange=!0),angular.isUndefined(b.noToday)?b.noToday=!0:b.noToday="false"!=b.noToday&&0!=b.noToday,angular.isUndefined(b.datekey)&&(b.datekey="curdate");var d=a.getToday(),e=a.getYesDay();b.changeDate=function(c){switch(c){case"today":b.subfix="hour",b.mydate=d;break;case"yesday":b.subfix="hour",b.mydate=e;break;case"d7":b.subfix="ds",b.mydate=a.getLastDays(-7,0);break;case"d14":b.subfix="ds",b.mydate=a.getLastDays(-14,0);break;case"d30":b.subfix="ds",b.mydate=a.getLastDays(-30,0)}b.timeflag=c},b.maxDay=0,1==b.noToday?(b.changeDate("yesday"),b.maxDay=-1):b.changeDate("today"),b.myrangeday=b.maxRange,b.$on("dateCustos",function(a,c){c.startDate==c.endDate&&c.startDate==d.startDate?(b.timeflag="today",b.subfix="hour"):c.startDate==c.endDate&&c.startDate==e.startDate?(b.timeflag="yesday",b.subfix="hour"):(b.timeflag=c.dateflag,b.subfix="ds"),b.mydate=c}),b.$watch("mydate",function(a){angular.isDefined(a)&&(b.datestr=b.mydate.startDate+"至"+b.mydate.endDate,b.$emit(b.datekey,{date:b.mydate,subfix:b.subfix,timeflag:b.timeflag}))},!0)}}}function numberTxt(){return{restrict:"A",link:function(a,b){b.bind("keydown",function(a){a=window.event||a,a.keyCode>=48&&a.keyCode<=57||a.keyCode>=96&&a.keyCode<=105||8==a.keyCode||190==a.keyCode||a.preventDefault()}).bind("input propertychange",function(){})}}}function integerTxt(){return{restrict:"A",link:function(a,b){b.bind("keydown",function(a){a=window.event||a,a.keyCode>=48&&a.keyCode<=57||a.keyCode>=96&&a.keyCode<=105||8==a.keyCode||a.preventDefault()}).bind("input propertychange",function(){var a=$(b).val().replace(/\D/g,"");$(b).val(a)})}}}function helpTip(a,b){return{restrict:"E",replace:!0,scope:{name:"@",dname:"=",dn2:"=",hidx:"@",red:"="},templateUrl:"/template/common/helptip.html?r="+tempVersion,link:function(c,d){c.showtip=!1;var e=c.hidx?c.hidx:2;c.spanStyle={"z-index":e};var f=$(d).find(".helpTipWrap"),g=Number($(d).parent().css("z-index"));f.hide(),c.showTip=function(){g=Number($(d).parent().css("z-index")),angular.isNumber(g)&&$(d).parent().css("z-index",g+1),$(".helpTipWrap").not(f).parent().parent().css("z-index",g),$(".helpTipWrap").not(f).hide().animate({opacity:0}),f.show().animate({opacity:1},100,"linear")},angular.element(document).on("click",function(){angular.isNumber(g)&&f.parent().parent().css("z-index",g),f.animate({opacity:0}).hide()}),c.$watch("name+dname+dn2",function(b){var d=c.name?c.name:c.dname;angular.isDefined(c.dn2)&&(d+=c.dn2),angular.isDefined(d)&&(c.tipname=d,c.tipcontent=a.getMenuTip(c.tipname))}),b.$watch("currentPageTips",function(){c.tipcontent=a.getMenuTip(c.tipname)})}}}function helpWinTip(a,b,c){return{restrict:"E",scope:{name:"@",dname:"=",zIndex:"=",titlev:"@",helpw:"@"},replace:!0,template:'<span ng-click="showTip()" title="{{titlev}}" stop-event></span>',link:function(b,c){angular.element(document).on("click",function(){$("#winTC").hide()}),b.showTip=function(){var d=b.name?b.name:b.dname,e=$(c).offset(),f=e.left,g=e.top;h=$(c).innerHeight(),w=$(c).innerWidth(),winWidth=$(window).width(),g=Math.ceil(g+h);var i={top:g,display:"block",opacity:1},j=$("#winTC");b.zIndex&&j.css("z-index",b.zIndex),b.helpw?j.css("width",b.helpw+"px"):j.css("width","200px"),$(c).hasClass("rightTip")?(j.addClass("rightPosition"),f=Math.ceil(f-j.innerWidth()+w)):j.removeClass("rightPosition"),winWidth-f<200&&(j.addClass("rightPosition"),f=Math.ceil(f-j.innerWidth()+w)),i.left=f,j.html(a.getMenuTip(d)).css(i)}}}}function fixHeader(a){return{restrict:"A",scope:{titleName:"=",fixFirtd:"@",fixList:"="},link:function(b,c){var d=$(c),e=d.parent(),f=0,g=null,h=1;angular.isDefined(b.fixFirtd)&&(f=Number(b.fixFirtd),h=2),b.$watch("titleName",function(){a(function(){d.find("thead th").css({position:"relative","z-index":h}),e.scroll(function(){var a=$(this).scrollTop();a>5&&a--,d.find("thead th").css({top:a+"px"})})})}),f>0&&b.$watch("fixList",function(){a(function(){g=d.find("tr td:nth-child("+f+")"),g.css({position:"relative","z-index":1}),e.scroll(function(){var a=$(this).scrollLeft();a>5&&(a-=2),g.css({left:a+"px"})})})})}}}function customEvent(a,b,c,d,e){return{restrict:"E",replace:!0,templateUrl:"/template/common/custom.html?r="+tempVersion,scope:{type:"=",eventList:"=",oldInfo:"="},link:function(f,g){var h=(new Date).getTime();f.$watch("oldInfo",function(c){if(angular.isDefined(f.oldInfo))if("eventstats"==f.type)f.changeEvent(null,f.oldInfo);else{f.eventInfo=[],evts=[],evtvals=[],f.oldInfo.filter(function(b){var c={event:b.event,param:[]};a.cloneJSON(b.params).filter(function(a){c.param.push(a.attr)}),evts.push(b.event),evtvals.push(c)}),b.showLoading();var g=d.getInfo(e.appid+"/event/find/param?names="+evts.join(",")+"¶ms="+JSON.stringify(evtvals));g.then(function(c){c.filter(function(a){for(var b=0;b<f.eventList.length;b++)if(a.eventName==f.eventList[b].eventName){f.eventList[b].profiles=a.profiles;break}}),f.oldInfo.filter(function(b){b.oldparams=a.cloneJSON(b.params),delete b.params,f.addEvent(b)}),b.hideLoading()})}}),f.$on("eventId",function(a,b){f.changeEvent(b.info)}),f.initEvent=function(){f.eventinitname="全部事件",f.eventInit=0-h,f.event={},f.propertyList=[],f.sumtypeList=[]},f.changeEvent=function(g,i){if(i){f.initEvent(),f.eventinitname=i.event,f.properinitname=i.viewField;var j=f.eventList.filter(function(a){return a.eventName==i.event});j.length>0?(g=j[0],f.eventinitname=g.eventNameAlias,f.evnullevent=!1):f.evnullevent=!0}if(f.event={id:"evt_"+h,params:[],paramsList:[],relation:"and"},!a.isNullStr(g)){f.eventId=g.eventName,f.eventstatsEvtName=g.eventNameAlias;var k=function(){f.propertyList=g.firstLevelAttr,f.sumtypeList=g.secondLevelAttr,f.event.paramsList=g.profiles};if(g.secondLevelAttr)k();else{var l=[],m={event:f.eventId,param:[]};i&&(i.params.filter(function(a){m.param.push(a.attr)}),l.push(m)),b.showLoading();d.getInfo(e.appid+"/event/find/param?names="+f.eventId+"¶ms="+JSON.stringify(l)).then(function(a){a.filter(function(a){for(var b=0;b<f.eventList.length;b++)if(a.eventName==f.eventList[b].eventName){f.eventList[b].profiles=a.profiles,f.eventList[b].firstLevelAttr=a.firstLevelAttr,f.eventList[b].secondLevelAttr=a.secondLevelAttr;break}}),k(),b.hideLoading()})}}i?(f.event.relation=i.relation,c(function(){f.propertyInit=i.viewField,f.prorefresh=++h,f.event.secondval=i.fieldOperate,""!=i.fieldOperate&&(f.event.second=!0,f.suminitname=i.fieldOperate),i.params.filter(function(a){a.attrMatch=!1,f.addEventParams(f.event,a)})})):(f.propertyInit=f.propertyList[0].attr,f.prorefresh=++h)},f.$on("propertyId",function(a,b){f.event.proId=b.info.attr,f.event.sumId="","default"!=b.info.type?(f.event.second=!0,f.event.secondval?(f.sumtypeInit=f.event.secondval,delete f.event.secondval):f.sumtypeInit=f.sumtypeList[0].attr):(f.sumtypeInit="",f.event.second=!1)}),f.$on("sumtypeId",function(a,b){f.event.sumId=b.info.attr}),f.getEventNum=function(){return f.eventInfo?f.eventInfo.filter(function(a){return 0!=a.show}).length:20},f.setEventSteps=function(){if(!f.eventInfo)return 20;var a=-1,b=f.eventInfo.length;f.eventInfo.filter(function(c,d){0!=c.show&&(a++,c.steps=["一","二","三","四","五","六","七","八","九","十"][a],c.style={"z-index":b-d})})},f.addEvent=function(a){h++;var b={id:"evt_"+h,eventid:"event_"+h,relation:"and"};if(a){for(var c in a)b[c]=a[c];b.eventinit=a.event,b.eventinitname=a.event,b.params=[];0==f.eventList.filter(function(b){return b.eventName==a.event}).length&&(b.nullevent=!0,b.oldparams&&(b.oldparams.filter(function(a){f.addEventParams(b,a)}),delete b.oldparams))}!function(a){f.$on(a.eventid,function(b,c){a.params=[],a.event=c.info.eventName,a.evtname=c.info.eventNameAlias,a.nullevent=!1;var g=function(){a.paramsList=c.info.profiles,a.oldparams&&(a.oldparams.filter(function(b){f.addEventParams(a,b)}),delete a.oldparams)};if(angular.isArray(c.info.profiles))g(c.info.profiles);else{d.getInfo(e.appid+"/event/find/param?names="+a.event).then(function(a){c.info.profiles=a[0].profiles,g()})}})}(b),f.eventInfo.push(b),f.setEventSteps()},f.removeEvent=function(a){if(f.getEventNum()<=2&&"funnel"==f.type)return b.showTips("漏斗步骤不能少于2步"),!1;for(var c=0;c<f.eventInfo.length;c++)if(f.eventInfo[c].id==a.id){f.eventInfo[c].show=!1;break}f.setEventSteps()},f.changeRel=function(a){a.relation="and"==a.relation?"or":"and"},f.getEventParamsNum=function(a){return a.params?a.params.filter(function(a){return 0!=a.show}).length:5},f.addEventParams=function(a,b){if(!a.params||f.getEventParamsNum(a)>=3)return!1;h++;var c={id:"pam_"+h,pid:a.id};if(b)for(var d in b)c[d]=b[d];a.params.push(c)},f.removeEventParams=function(a,b){for(var c=0;c<a.params.length;c++)if(a.params[c].id==b.id){a.params[c].show=!1;break}},f.$on("event",function(a,b){if("eventstats"==f.type){for(var c=f.event.params,d=0;d<c.length;d++)if(c[d].id==b.id){c[d]=b;break}}else for(var e=0;e<f.eventInfo.length;e++)if(f.eventInfo[e].id==b.pid)for(var c=f.eventInfo[e].params,d=0;d<c.length;d++)if(c[d].id==b.id){c[d]=b;break}}),f.okSave=function(){var c=!1,d=[],e=[];f.eventInfo.filter(function(b){if(0!=b.show){var g={event:b.event,relation:b.relation,params:[],eventMatch:!0};a.isNullStr(b.event)||1==b.nullevent?(b.nullevent=!0,c=!0):(b.nullevent=!1,b.params.filter(function(b){if(0!=b.show){var d={};for(var e in b)"id"!=e&&"pid"!=e&&(d[e]="value"!=e?b[e]:b[e].join(","),a.isNullStr(b[e])&&(f.$broadcast(b.id,"null"),c=!0));g.params.push(d)}})),d.push(g),e.push(b.evtname)}}),!c&&d.length>0?f.$emit("matchok",{info:d,names:e}):b.showTips("信息没填全或数据有误,请检查")},f.eventSave=function(){if(!f.event.params)return!1;var c=!1,d={event:f.eventId,relation:f.event.relation,params:[]};d.viewField=f.event.proId,f.event.second?d.fieldOperate=f.event.sumId:d.fieldOperate="",f.event.params.filter(function(b){if(0!=b.show){a.isNullStr(b.attr)&&(f.$broadcast(b.id,"error"),c=!0);var e={};for(var g in b)"id"!=g&&"pid"!=g&&(e[g]="value"!=g?b[g]:b[g].join(","),a.isNullStr(b[g])&&(f.$broadcast(b.id,"error"),c=!0));d.params.push(e)}}),c||!f.eventId?b.showTips("信息没填全或数据有误,请检查"):f.$emit("matchok",{info:d,names:[f.eventstatsEvtName]})}}}}function fileModel(a){return{restrict:"A",scope:{},link:function(b,c,d){var e=a(d.fileModel),f=e.assign;c.bind("change",function(){if(""==angular.element(c).val())return!1;b.$apply(function(){var a=c[0].files;d.multiple?f(b,c[0].files):(f(b,c[0].files[0]),a=c[0].files[0]),b.$emit("myFile",a),angular.element(c).val("")})})}}}function searchGroup(){return{restrict:"E",replace:!0,scope:{filterfn:"&",initTxt:"=",initf5:"=",list:"="},templateUrl:"/template/common/searchGroup.html?r="+tempVersion,link:function(a,b,c){a.query=function(){if(a.preTxt==a.srhTxt)return!1;a.filterfn({txt:a.srhTxt}),a.preTxt=a.srhTxt},a.$watch("initTxt+initf5+list",function(){a.srhTxt=a.preTxt=a.initTxt||""}),a.doNull=function(){a.srhTxt="",a.query()}}}}function bigTable(a,b){return{restrict:"A",replace:!0,scope:{fixedCol:"@",fixChange:"=",infoList:"=",initf5:"=",noScroll:"@",noAllScroll:"@",noEmpty:"="},link:function(c,d){ +var e=$(d).find(".tableSpline"),f=$(d).find(".tableHeader"),g=$(d).find(".tableInfo"),h=$(d).find(".copyColWrap"),i=h.find("table"),j=0,k=0,l=!1,m=0,n=0,o=0,p=$(".helpTipWrap");0==e.length&&($(d).append("<div class='tableSpline'></div>"),e=$(d).find(".tableSpline")),0==h.length&&($(d).prepend("<div class='copyColWrap'><table></table></div>"),h=$(d).find(".copyColWrap"),i=h.find("table"),c.noAllScroll&&h.css({"max-height":"233px",top:"35px"}));var q=function(){j=1,f.scrollLeft(0),g.scrollLeft(0),g.scrollTop(0),k=g.find("table").height();for(var a=0;a<c.fixedCol;a++)j+=f.find("#title_"+a).parent().width();e.css({left:j}),$(d).find(".tableHeader th:lt("+c.fixedCol+")").css("left","0px"),o=0},r=function(){var a=g.find("table"),b=f.find("table");l=!c.noEmpty&&(c.infoList&&0==c.infoList.length);var h=b.css("width"),i=b.css("height"),j=a.find("tbody").height(),m=b.height(),n=g.find("table tr:last");if(l)0==n.length&&a.append("<tr></tr>"),a.width(h),a.height(0==k?i:k),e.height(i);else{g.find("table").width(""),g.find("table").height("");var p=m+j,q=$(d).height();e.height(p>q?q:p),n.html()||n.remove()}g.perfectScrollbar("update"),g.scrollLeft(o),g.scrollTop(0)},s=function(){i.html(""),l||g.find("tr").each(function(a){i.append("<tr></tr>");for(var d=i.find("tr:last-child"),e=0;e<c.fixedCol;e++)if(d.append($(this).children("td:eq("+e+")").clone(!0)),0==e){var f=d.find("td");f.each(function(){var a=$(this).find("div").html();$(this).html(b($(this).clone(!0))(c.$parent)),$(this).find("div").html(a)})}})};c.$watch("initf5",function(b){if(angular.isDefined(b)){e.hide(),i.html("");var c=a(function(){q()},50);c.then(function(){a.cancel(c)})}}),c.$watch("fixChange",function(b){if(angular.isDefined(b)&&c.infoList){i.html("");var d=a(function(){r(),s()},100);d.then(function(){a.cancel(d)})}}),c.$on("conentresize",function(){g.perfectScrollbar("update"),g.scrollLeft(0),g.scrollTop(0),e.hide()});var m=0;g.scroll(function(a){p.hide();var b=a.target,i=b.scrollLeft;o=i,f.scrollLeft(i);var j={position:"relative",left:i,"-webkit-overflow-scroll":"touch"};$(d).find(".tableHeader th:lt("+c.fixedCol+")").each(function(a){$(this).css(j)}),i>0?e.show():e.hide().css("-webkit-overflow-scroll","auto"),n=$(this).scrollTop(),h.scrollTop(n),c.noAllScroll||(m>n?n<200&&!c.noScroll&&$(".rightWrap").scrollTop(n):c.noScroll?$(".rightWrap").scrollTop($(".rightWrap").scrollTop()+this.scrollHeight):n>=g.find("table").height()-g.height()&&this.scrollTop>0&&$(".rightWrap").scrollTop(this.scrollHeight),m=n)}),$(".rightWrap").scroll(function(){p.hide()}),g.perfectScrollbar()}}}function dragOrder(a){return{restrict:"A",scope:{dragId:"=",dragflag:"@"},link:function(a,b,c){b.attr("draggable",!0),angular.element(b).on("dragstart",function(b){sourceId=a.dragId}),angular.element(b).on("dragover",function(a){a.preventDefault()}),angular.element(b).on("drop",function(b){var c=$(this),d=JSON.parse(c.attr("drag-info"));b.preventDefault(),sourceId!=d.id&&a.$emit("dragorder",{id:sourceId,index:d.orderindex,flag:a.dragflag})})}}}var tempVersion=(new Date).getTime();angular.module("app").directive("flipInfo",flipInfo).directive("flipInfoDy",flipInfoDy).directive("selectList",["ToolService",selectList]).directive("selectTList",selectTList).directive("selectMoreList",selectMoreList).directive("selectParams",["ToolService",selectParams]).directive("delTip",delTip).directive("wincrmTip",wincrmTip).directive("okcrmTip",["ToolService",okcrmTip]).directive("stopEvent",stopEvent).directive("minChart",["OptionService","$window","$timeout","HttpService","UtilService","ToolService","$rootScope",minChart]).directive("exportButton",["HttpService","UtilService","ToolService","$rootScope",exportButton]).directive("ngEnter",ngEnter).directive("popTip",popTip).directive("isLoading",isLoading).directive("dateRange",["ToolService",dateRange]).directive("selectChannel",["$state","$rootScope",selectChannel]).directive("numberTxt",numberTxt).directive("integerTxt",integerTxt).directive("fixHeader",["$timeout",fixHeader]).directive("helpTip",["ToolService","$rootScope",helpTip]).directive("helpWinTip",["ToolService","$rootScope","$filter",helpWinTip]).directive("noData",[noData]).directive("customEvent",["UtilService","ToolService","$timeout","HttpService","$rootScope",customEvent]).directive("fileModel",["$parse",fileModel]).directive("searchGroup",[searchGroup]).directive("bigTable",["$timeout","$compile",bigTable]).directive("dragOrder",[dragOrder]);var exportTips="导出成功,请到数据导出-下载报表处进行下载",expTimeTips="请1分钟后再点",expLimitTime=6e4,sourceId=0}(),function(){function a(a,c,d,e){return{restrict:"E",templateUrl:"/template/common/profileItem.html?r="+b,scope:{infoList:"=",itemId:"=",itemInfo:"=",itemType:"@",itemEvent:"=",common:"@"},link:function(b,f){b.stringList=a.getStringTypes(),b.numberList=a.getNumberTypes(),b.initdate=a.getToday();var g={};if(angular.isDefined(b.itemInfo)&&(g=c.cloneJSON(b.itemInfo)),b.itemData={id:b.itemInfo.id,pid:b.itemInfo.pid},b.sdate=b.initdate.startDate,b.edate=b.initdate.endDate,b.$on("sdate",function(a,c){b.sdate=c,b.setDateValue()}),b.$on("edate",function(a,c){b.edate=c,b.setDateValue()}),b.setDateValue=function(){b.itemData.value[0]=b.sdate,2==b.valflag&&(b.itemData.value[1]=b.edate),b.sendData()},b.valueSelList=[],b.keyValList=[],b.keyValSelList=[],b.attrnull=!1,b.valnull=!1,b.initValue=function(){if("string"==b.showtype)if(b.valTxt="",b.keyValSelList.length>0){b.keyValList=c.cloneJSON(b.itemData.value);var a=angular.isNumber(b.keyValSelList[0]);b.keyValList.filter(function(c){a&&(isNaN(Number(c))||(c=Number(c)));var d=b.keyValSelList.indexOf(c);-1==d?(b.valueSelList.unshift(c),b.valueList.push(c)):b.valueList.push(b.valueSelList[d])})}else b.valueList=c.cloneJSON(b.itemData.value),b.valueList.filter(function(a){-1==b.valueSelList.indexOf(a)&&b.valueSelList.unshift(a)});else"date"==b.showtype?(b.itemData.value.length>0?(b.sdate=b.itemData.value[0],2==b.valflag&&(b.edate=b.itemData.value[1])):(b.sdate=b.initdate.startDate,b.edate=b.initdate.endDate),b.itemData.value=[b.sdate,b.edate]):"number"==b.showtype&&(b.itemData.value.length>0?(b.valTxt1=b.itemData.value[0],2==b.valflag&&(b.valTxt2=b.itemData.value[1])):(b.valTxt1="",b.valTxt2=""));b.valueList.length>0&&(b.valStyle={width:"50px"})},g.operator||(b.operationList=b.stringList,b.operationinit=b.operationList[0].id),angular.isDefined(b.itemInfo.attrMatch))if(b.profileinitname=b.itemInfo.attr,b.showtype=b.itemInfo.type,"string"==b.itemInfo.type?b.operationList=b.stringList:b.operationList=b.numberList,b.operationinit=b.itemInfo.operator,b.itemData.value=b.itemInfo.value.split(","),b.initValue(),b.infoList&&0!=b.infoList.length){var h=b.infoList.filter(function(a){return a.attr==b.itemInfo.attr});0==h.length&&(b.attrnull=!0)}else b.attrnull=!0;else"profile"==b.itemType?b.profileinitname="请选择用户属性":"event"==b.itemType?b.profileinitname="请选择事件属性":b.profileinitname="请选择";g.attr&&(b.profileinit=g.attr),b.changeval=!1,b.$on("profileid",function(a,d){b.proId=d.info.attr,b.itemData.attr=d.info.attr,b.itemData.type=d.info.dataType,b.showtype=d.info.webType||d.info.dataType,b.itemData.value=[],b.valueList=[],d.info.value?(b.valueSelList=c.cloneJSON(d.info.value),b.changeval=!1):(b.valueSelList=[],b.changeval=!0),d.info.key?b.keyValSelList=c.cloneJSON(d.info.key):b.keyValSelList=[],b.attrnull=!1,"string"==b.showtype?b.operationList=b.stringList:b.operationList=b.numberList,g.operator?(b.operationinit=g.operator,delete g.operator):b.operationinit=b.operationList[0].id,b.sendData()}),b.$on("operationId",function(a,c){c.info.more?b.valflag=3:c.info.both?b.valflag=2:b.valflag=1,b.itemData.operator=c.info.id,g.value?(b.itemData.value=g.value.split(","),b.txtTip="",delete g.value):(b.itemData.value=[],b.valueList=[],b.keyValList=[]),b.valnull=!1,b.initValue(),b.sendData()}),b.valueList=[],b.txtTip="请输入一个属性过滤条件",b.getValueList=function(){if(b.changeval&&b.proId&&"event"==b.itemType){var a=b.common?"/event/find/value/attr":"/event/find/value/one",c=b.common?{attrName:b.proId}:{eventname:b.itemEvent,attrname:b.proId};d.getInfo(e.appid+a,c).then(function(a){a.key&&null!=a.key?b.keyValSelList=a.key:b.keyValSelList=[],a.value&&null!=a.value?b.valueSelList=a.value:b.valueSelList=[],b.changeval=!1})}},b.setValue=function(a){if(b.valnull=!1,!a||""==a)return!1;if(b.valueList.indexOf(a)>-1);else{if(3==b.valflag?b.valueList.push(a):b.valueList=[a],b.keyValSelList.length>0){var d=b.valueSelList.indexOf(a),e=b.keyValSelList[d];e||(e=a),3==b.valflag?b.keyValList.push(e):b.keyValList=[e],-1==d&&(b.keyValSelList.push(e),b.valueSelList.push(a)),b.writeValue(e),b.itemData.value=c.cloneJSON(b.keyValList)}else{b.itemData.value=c.cloneJSON(b.valueList);var d=b.valueSelList.indexOf(a);-1==d&&b.valueSelList.push(a)}b.sendData()}b.showsel=!1,b.valTxt="",b.txtTip="",$(f).find("#valTxt").focus()},b.removeValue=function(a){b.valueList.splice(a,1),b.keyValList.length>0?(b.keyValList.splice(a,1),b.itemData.value=b.keyValList):b.itemData.value=b.valueList,0==b.valueList.length&&(b.txtTip="请输入一个属性过滤条件",b.valStyle={}),b.sendData()},b.writeValue=function(a){if(b.showsel=!0,0==b.valueList.length)return b.txtTip="请输入一个属性过滤条件",void(b.valStyle={});var c=8*(a+"").length;c=c<50?50:c,c=c>120?120:c,b.valStyle={width:c+"px"}},b.setNumberVal=function(){b.itemData.value[0]=b.valTxt1,2==b.valflag&&(b.itemData.value[1]=b.valTxt2),b.sendData()},b.addNumber=function(a,c){b.valnull=!1,1==a&&(b.valTxt1&&""!=b.valTxt1||(b.valTxt1=0),b.valTxt1=Number(b.valTxt1),b.valTxt1+=c,b.valTxt1=b.valTxt1<0?0:b.valTxt1,b.itemData.value[0]=b.valTxt1),2==a&&(b.valTxt2=Number(b.valTxt2),b.valTxt2&&""!=b.valTxt2||(b.valTxt2=0),b.valTxt2+=c,b.valTxt2=b.valTxt2<0?0:b.valTxt2,b.itemData.value[1]=b.valTxt2),b.sendData()},b.sendData=function(){b.$emit(b.itemType,b.itemData)},b.$on(b.itemData.id,function(){c.isNullStr(b.itemData.attr)&&(b.attrnull=!0),c.isNullStr(b.itemData.value)||0==b.itemData.value.length?b.valnull=!0:2!=b.valflag||""!=b.valTxt1&&""!=b.valTxt2||(b.valnull=!0)})}}}var b=(new Date).getTime();angular.module("app").directive("profileItem",["ToolService","UtilService","HttpService","$rootScope",a])}(),function(){function a(a,b,c){var d=Date.today(),f={abbrWeeks:["日","一","二","三","四","五","六"],format:"YYYY-MM-DD",min:null,max:d,start:d,end:d,current:d,months:2,chooseCls:"is-choose",todayCls:"is-today"};return{restrict:"EA",transclude:!0,replace:!0,templateUrl:"/template/common/datepicker.html?r="+e,scope:{dateName:"@",noMax:"@",rangeDays:"@",rangeDays2:"=",initDay:"=",maxDay:"@",maxDay2:"=",operationSel:"=",min:"="},link:function(e,g,h){e.maxDay=e.maxDay||e.maxDay2;var i=-1;c.isNullStr(e.maxDay)&&(i=0);var j={yesday:b.getYesDay(),d7:b.getLastDays(-7,i),d14:b.getLastDays(-14,i),d30:b.getLastDays(-30,i),"-w1":b.getWeekRangeDate(-1,i),w0:b.getWeekRangeDate(0,i),"-m1":b.getMonthRangeDate(-1,i),m0:b.getMonthRangeDate(0,i)};e.$watch("operationSel",function(a){angular.isUndefined(e.operationSel)?e.operSel=!0:e.operSel=a}),e.getRelativeFlag=function(a,b){var c="";for(var d in j){var f=j[d];if(a==f.startDate&&b==f.endDate){c=d;break}}e.selDayflag=c},e.$watch("initDay",function(a){angular.isDefined(a)&&a.startDate&&(e.options.start.isSameDay(new Date(a.startDate))&&e.options.end.isSameDay(new Date(a.endDate))||(e.getRelativeFlag(a.startDate,a.endDate),e.options.start=e.completeStrat=new Date(a.startDate),e.options.end=e.completeEnd=new Date(a.endDate)))}),e.selme=!1,e.$watch("rangeDays+rangeDays2",function(a){var b=e.rangeDays||e.rangeDays2;angular.isDefined(b)?e.rgDays=Number(b):e.rgDays=31});var k=d,l=e.dateName||"dateCustos";if(e.maxDay&&-1==e.maxDay&&(k=Date.yesterday()),e.noMax&&"true"==e.noMax){var m=Date.today();m.setFullYear(d.getFullYear()+100),k=m}var n="";e.$watch("min",function(a){angular.isDefined(a)&&(n=new Date(a).addDays(-1))});var o=c.cloneJSON(f);!function(){o.start=k,o.end=k,o.max=k,o.current=d,e.options=angular.extend(o,e.options||{}),e.options.start.clearTime(),e.options.end.clearTime(),e.completeStrat=e.options.start,e.completeEnd=e.options.end,e.customStrat=e.options.start.toFormat(e.options.format),e.customEnd=e.options.end.toFormat(e.options.format),e.panelEndDate=Date.getFirstDay(e.options.end)}();var p=function(a){for(var b=[],c=e.options.months,a=(a||e.panelEndDate).clone(),f=0;f<c;f++){for(var h=[],i=a.clone().addMonths(-(c-1-f)),j=Date.getFirstDay(i),k=j.getDay(),l=Date.getDaysInMonth(i.getFullYear(),i.getMonth()),m=Math.ceil((k+l)/7),n=j.clone().addDays(-k),o=0;o<m;o++){for(var p=[],q=0;q<7;q++){var r=n.clone();p.push({day:r,choose:r.between(e.options.start,e.options.end),other:r.getMonth()!=i.getMonth(),today:Date.isSameDay(r,d)}),n=n.addDays(1)}h.push(p)}b.push({date:i,weeks:h})}$(g).parent().prevAll().show(),e.panels=b,e.wstyle={width:274*c+80+"px"}};e.cellClass=function(a){return a.other?"other-month":a.day.isSameDay(e.options.start)||a.day.isSameDay(e.options.end)?"start_end":a.day.between(e.options.start,e.options.end)?"choose":a.day.isSameDay(e.options.current)&&a.day.isSameDay(k)?"is-today":a.day.isAfter(k)||""!=n&&a.day.isBefore(n)?"disabled":""},e.changeMonth=function(a,b,c){e.dateMonth=e.panelEndDate.addMonths(c),p(e.dateMonth)},e.showDateTable=function(){if(!e.operSel)return!1;var a=$(g).find(".dateTabRange");$(".dateTabRange").each(function(){$(this)!==a&&$(this).addClass("ng-hide")}),a.hasClass("ng-hide")?(e.showFlag=!0,a.removeClass("ng-hide")):(e.showFlag=!1,a.addClass("ng-hide"))};var q=0;e.chooseDate=function(a){a.day.isAfter(k)||""!=n&&a.day.isBefore(n)||(q>=2&&(q=0),q++,1===q?e.options.end=e.options.start=a.day:2===q&&(a.day.isAfter(e.options.start)?e.options.end=a.day:e.options.start=a.day))},e.setRelDate=function(b){var c=j[b];if(-1!=e.rgDays){if(diffDate(c.startDate,c.endDate)>e.rgDays)return a.showTips("日期范围不能大于"+e.rgDays+"天"),!1}return e.selDayflag=b,""!=n&&new Date(c.startDate).isBefore(n)?void a.showTips("超出最小可选日期限制了"):(e.options.start=new Date(c.startDate),""!=n&&new Date(c.endDate).isBefore(n)?void a.showTips("超出最小可选日期限制了"):(e.options.end=new Date(c.endDate),void e.complete(1)))},e.complete=function(b){if(angular.isUndefined(b)&&-1!=e.rgDays){if(diffDate(e.options.start,e.options.end)>e.rgDays)return a.showTips("日期范围不能大于"+e.rgDays+"天"),!1}e.completeStrat=e.options.start,e.completeEnd=e.options.end;var c=e.completeStrat.toFormat(e.options.format),d=e.completeEnd.toFormat(e.options.format);angular.isUndefined(b)&&e.getRelativeFlag(c,d),e.$emit(l,{startDate:c,endDate:d,dateflag:e.selDayflag}),e.showFlag=!1},e.cancel=function(){e.options.start==e.completeStrat&&e.options.end==e.completeEnd||(e.options.start=e.completeStrat,e.options.end=e.completeEnd,e.getRelativeFlag(e.completeStrat.toFormat(e.options.format),e.completeEnd.toFormat(e.options.format))),e.showFlag=!1},e.$watch("options.start+options.end",function(){e.customStrat=e.options.start.toFormat(e.options.format),e.customEnd=e.options.end.toFormat(e.options.format)}),p(),$(document).on("click",function(){e.cancel(),e.$apply()})}}}function b(){var a=Date.today(),b={abbrWeeks:["日","一","二","三","四","五","六"],format:"YYYY-MM-DD",min:null,max:a,start:a,end:a,current:a,months:1,chooseCls:"is-choose",todayCls:"is-today"};return{restrict:"EA",transclude:!0,replace:!0,templateUrl:"/template/common/datepicker.html?r="+e,scope:{dateName:"@",campareDays:"=",operationSel:"="},link:function(c,d,e){c.$watch("operationSel",function(a){angular.isUndefined(c.operationSel)?c.operSel=!0:c.operSel=a});var f=a,g=c.dateName;!function(){b.start=f,b.end=f,b.max=f,b.current=f,c.options=angular.extend(b,c.options||{}),c.options.start.clearTime(),c.options.end.clearTime(),c.completeStrat=c.options.start,c.completeEnd=c.options.end,c.customStrat=c.options.start.toFormat(c.options.format),c.customEnd=c.options.end.toFormat(c.options.format),c.panelEndDate=Date.getFirstDay(c.options.end)}();var h=function(b){var e=[],g=c.options.months,b=(b||c.panelEndDate).clone();g=1;for(var h=0;h<g;h++){for(var i=[],j=b.clone().addMonths(-(g-1-h)),k=Date.getFirstDay(j),l=k.getDay(),m=Date.getDaysInMonth(j.getFullYear(),j.getMonth()),n=Math.ceil((l+m)/7),o=k.clone().addDays(-l),p=0;p<n;p++){for(var q=[],r=0;r<7;r++){var s=o.clone();q.push({day:s,choose:s.between(c.options.start,c.options.end),other:s.getMonth()!=j.getMonth(),today:Date.isSameDay(s,a)}),o=o.addDays(1)}i.push(q)}e.push({date:j,weeks:i})}f!==a?(c.complete(),$(d).parent().prevAll().hide()):$(d).parent().prevAll().show(),c.panels=e,c.wstyle={width:274*g+"px"}};c.cellClass=function(a){return a.other?"other-month":a.day.between(c.options.start,c.options.end)?"choose":a.day.isSameDay(f)?"is-today":a.day.isAfter(f)?"disabled":""},c.changeMonth=function(a,b,d){c.dateMonth=c.panelEndDate.addMonths(d),h(c.dateMonth)},c.showDateTable=function(){if(!c.operSel)return!1;void 0===c.showFlag?c.showFlag=!0:1==c.showFlag?c.showFlag=!1:0==c.showFlag&&(c.showFlag=!0)};var i=0;c.chooseDate=function(b){b.day.isAfter(a)||b.day.isAfter(f)||(i>=2&&(i=0),i++,angular.isDefined(c.campareDays)&&c.campareDays>0?(c.options.end=b.day,c.options.start=new Date(addDate(b.day,-c.campareDays))):c.options.end=c.options.start=b.day,c.complete())},c.complete=function(){c.completeStrat=c.options.start,c.completeEnd=c.options.end,angular.isDefined(c.campareDays)&&c.campareDays>0?c.$emit(g,c.completeStrat.toFormat(c.options.format)+" - "+c.completeEnd.toFormat(c.options.format)):c.$emit(g,c.completeStrat.toFormat(c.options.format)),c.showFlag=!1},c.cancel=function(){c.options.start=c.completeStrat,c.options.end=c.completeEnd,c.showFlag=!1},c.$watch("options.start+options.end",function(){c.customStrat=c.options.start.toFormat(c.options.format),c.customEnd=c.options.end.toFormat(c.options.format)}),h(),$(document).on("click",function(){c.cancel(),c.$apply()})}}}function c(a){var b=Date.yesterday();return{restrict:"EA",transclude:!0,replace:!0,templateUrl:"/template/common/dateweek.html?r="+e,scope:{dateName:"@",weeks:"@"},link:function(c,d,e){c.options={},c.weeks?c.options.weeks=c.weeks:c.options.weeks=1,c.showDateTable=function(){void 0===c.showFlag?c.showFlag=!0:1==c.showFlag?c.showFlag=!1:0==c.showFlag&&(c.showFlag=!0)};var f=(c.nowyear=b.getFullYear(),b.clone()),g=(new Date).getDay();g=0==g?7:g,c.options.start=c.options.end={week:getNowWeek(),date:(new Date).clone().addDays(7-g),year:c.nowyear},c.setWeeklist=function(){c.weeklist=[];var a=7,b=new Date(c.nowyear,0,1),d=b.getDay(),e=new Date(c.nowyear,11,31),f=[];d=0==d?7:d;var g=b.clone().addDays(7-d),h=0;for(d>0&&d<5&&(h=1,f.push({week:h,date:g,year:c.nowyear}));g<e&&!e.isSameDay(g);)h++,g=g.clone().addDays(7),f.push({week:h,date:g,year:c.nowyear}),h%a==0&&(c.weeklist.push(f),f=[]);var i=new Date(c.nowyear,11,31),j=i.getDay();j>0&&j<4&&(0==f.length?c.weeklist[c.weeklist.length-1].pop():f.pop()),f.length>0&&c.weeklist.push(f)},c.changeYear=function(a){c.nowyear+=a,c.setWeeklist()},c.setWeeklist();var h=0;c.chooseDate=function(a){if(a.date.clone().addDays(-6).isAfter(b))return!1;if(1==c.options.weeks)f=a.date,c.options.start=c.options.end=a,c.$emit(c.dateName,a.year+""+getStr(a.week)),c.cancel();else if(h>=2&&(h=0),1==++h)c.options.start=c.options.end=a;else{var d=c.options.start;d.date>a.date?c.options.start=a:c.options.end=a}},c.complete=function(){var b=c.options.start.year+""+a.getStr(c.options.start.week),d=c.options.end.year+""+a.getStr(c.options.end.week);c.$emit(c.dateName,{start:b,end:d}),c.cancel()},c.cellClass=function(a){return a.date.between(c.options.start.date,c.options.end.date)?"choose":a.year==c.options.start.year&&a.week==c.options.start.week||a.year==c.options.end.year&&a.week==c.options.end.week?"start_end":b.between(a.date.clone().addDays(-6),a.date)?"is-now":a.date.isAfter(b)?"disabled":""},c.cancel=function(){c.showFlag=!1},$(document).on("click",function(){c.cancel(),c.$apply()})}}}function d(a){var b=Date.yesterday();return{restrict:"EA",transclude:!0,replace:!0,templateUrl:"/template/common/datemonth.html?r="+e,scope:{dateName:"@",months:"@"},link:function(c,d,e){var f=c.nowyear=b.getFullYear(),g=c.nowMonth=b.getMonth()+1;c.options={},c.months?c.options.months=c.months:c.options.months=1,c.showDateTable=function(){void 0===c.showFlag?c.showFlag=!0:1==c.showFlag?c.showFlag=!1:0==c.showFlag&&(c.showFlag=!0)},c.changeYear=function(a){c.nowyear+=a,c.setmonthList()},c.setmonthList=function(){c.monthList=[];for(var a=4,b=[],d=1;d<=12;d++)b.push({month:d,year:c.nowyear,date:new Date(c.nowyear,d-1,1)}),angular.isUndefined(c.options.start)&&d==g&&c.nowyear==f&&(c.options.start=c.options.end=b.slice(-1)[0]),d%a==0&&(c.monthList.push(b),b=[])},c.setmonthList();var h=0;c.chooseDate=function(b){if(b.year>f||b.month>c.nowMonth&&b.year==f)return!1;if(1==c.options.months)g=b.month,c.options.start=c.options.end=b,c.$emit(c.dateName,b.year+""+a.getStr(b.month)),c.cancel();else if(h>=2&&(h=0),1==++h)c.options.start=c.options.end=b;else{var d=c.options.start;d.year>b.year||d.year==b.year&&d.month>b.month?c.options.start=b:c.options.end=b}},c.complete=function(){var b=c.options.start.year+""+a.getStr(c.options.start.month),d=c.options.end.year+""+a.getStr(c.options.end.month);c.$emit(c.dateName,{start:b,end:d}),c.cancel()},c.cellClass=function(a){return a.date.between(c.options.start.date,c.options.end.date)?"choose":a.month==c.nowMonth&&a.year==f?"is-today":a.year>f||a.month>c.nowMonth&&a.year==f?"disabled":""},c.cancel=function(){c.showFlag=!1},$(document).on("click",function(){c.cancel(),c.$apply()})}}}angular.module("app").directive("myDatepicker",["ToolService","DateService","UtilService",a]).directive("singleDatepicker",b).directive("myDateweek",["UtilService",c]).directive("myDatemonth",["UtilService",d]);var e=(new Date).getTime()}(),function(){function a(){return function(a,b){if(""==b)return a;var c=[];return angular.forEach(a,function(a,d){b.indexOf(a.firstchar)>-1&&c.push(a)}),c}}function b(){return function(a,b,c){if(b&&""!=b){var d=c.split(",");return a.filter(function(a){for(var c=!1,e=d.length-1;e>=0;e--)if(a[d[e]]&&angular.uppercase(String(a[d[e]])).indexOf(angular.uppercase(b))>-1){c=!0;break}return c})}return a}}function c(){return function(a){return a<1e4?a:(a/1e4).toFixed(1)+"w"}}function d(a){return function(b){return null==b?"":a.trustAsHtml(b)}}function e(a){return function(b,c){return null==b||"null"==b?0:(c=c||2,isNaN(Number(b))?b:a.decimal2(Number(b),c))}}function f(a){return function(b,c,d,e){if(null==b||"null"==b||!c||!d)return b;if(isNaN(Number(b)))return 0==b.indexOf("_")&&(b=b.substring(1)),b;e&&(c=e);var f=d[c];return f||(f="float"),"percent"==f?a.decimal2(100*Number(b),2)+"%":"float"==f?a.decimal2(Number(b),2):"int"==f?Math.round(Number(b)):b}}(new Date).getTime();angular.module("app").filter("charfilter",a).filter("filterList",b).filter("filterPay",c).filter("numFixed",["UtilService",e]).filter("filterHtml",["$sce",d]).filter("formatRate",["UtilService",f])}(); \ No newline at end of file diff --git a/src/main/webapp/scripts/ui.js b/src/main/webapp/scripts/ui.js index d713416..099fac6 100644 --- a/src/main/webapp/scripts/ui.js +++ b/src/main/webapp/scripts/ui.js @@ -1,4 +1,4 @@ -!function(){angular.module("app.collect",[])}(),function(){var a=(new Date).getTime();angular.module("app.collect").config(["$stateProvider","$urlRouterProvider",function(b,c){var d="collect",e=["retention","funnel","export","intelligentpath","eventstats","custommenu","logtool","report"],f=[];b.state(d,{url:"",templateUrl:"/template/menu/"+d+".html?r="+a,controller:"collectCtrl"}),e.forEach(function(c){if(b.state(d+"."+c,{url:"/"+d+"/"+c,params:{stateinfo:null,pageid:null},views:{"content@":{templateUrl:"/template/"+d+"/"+c+".html?r="+a,controller:c+"Ctrl"}}}),f.indexOf(c)>-1){var e=c+"Detail";b.state("collect."+e,{url:"/"+d+"/"+e,params:{aid:null},views:{"content@":{templateUrl:"/template/"+d+"/"+e+".html?r="+a,controller:e+"Ctrl"}}})}}),b.state(d+".custommenuDetail",{url:"/"+d+"/custommenu/:pageid",views:{"content@":{templateUrl:"/template/"+d+"/custommenu.html?r="+a,controller:"custommenuCtrl"}}})}])}(),function(){function a(a,b,c,d,e){var f={analysis:["campaigninfo","channeleffect","attribute","effectevaluate","roi","keyword","packageinfo"],decisionsupport:["paymentinsight","potentialusergroup","device"],campaignmanager:["campaign","campgroup","datacb","onelink","sublink","subpackage"],export:["logexport","logdump","logtool","report","subcampaign"],eventmanage:["event","profile"]};b.getSubMenu=function(e){if("custommenu"==e&&a.isSuper&&0==b.ctmMenuList.length)return d.showAlp(),a.tipCustom=!0,!1;b.subflag==e&&c.current&&c.current.name!=e?b.subflag="":b.subflag=e,a.custID=""},b.closeTip=function(){a.tipCustom=!1,d.hideAlp()},b.okCust=function(){b.goPage("collect.custommenu"),b.closeTip()},a.$watch("pagePath",function(a){if(angular.isDefined(a)){b.subflag="";a.indexOf("Detail")>-1&&(a=a.substring(0,a));for(var c in f){if(f[c].indexOf(a)>-1){b.subflag=c;break}}"custommenu"==a&&(b.subflag=a)}})}angular.module("app.collect").controller("collectCtrl",["$rootScope","$scope","$state","ToolService","$timeout",a])}(),function(){function a(a,b,c,d,e,f,g,h){var i=(new Date).getTime(),j=h.pageid;b.queryInfoByApp=function(a,d){if(angular.isUndefined(a)||5==a){c.getInfo(b.appid+"/event/find").then(function(a){b.eventListAll=a,b.eventList=b.eventListAll.filter(function(a){return"install"!=a.eventName})});var f=c.getInfo(b.appid+"/event/find/allAttr");b.dimenId="-all",f.then(function(a){a.unshift({dimensionType:"whole",id:"-all",name:"总体",type:"string"});for(var c=0;c<a.length;c++)"population"!=a[c].dimensionType&&"source"!=a[c].dimensionType||(a[c].dimensionType="eventlist");b.dimensionList=a})}c.getInfo("mng/retention/find/"+b.appid).then(function(c){if(b.seatxt="",b.defineList=c,b.isEditInfo=1,2==a){for(var f=0;f<b.defineList.length;f++)if(b.defineList[f].id==d){b.define=b.defineList[f];break}b.defineFlag=++i}if(c.length>0)if(e.isNullStr(j))(1==a||3==a&&b.define&&b.define.id==d)&&b.clickDefine(b.defineList[0]);else{for(var f=0;f<b.defineList.length;f++)if(b.defineList[f].id==j){b.define=b.defineList[f];break}b.clickDefine(b.define),j=null}else b.clickType(b.typeList[1]);5==a&&(b.dimenRmd=++i)})},b.deviceId=!1,b.dimensionname="维度对比",b.usergroupid=-1,b.$on("dimensionId",function(a,c){b.dimenId=c.info.id,b.dimenObj=c.info,b.dimenEventType=c.info.eventType,"usergroup"==b.dimenId&&-1==b.usergroupid?(b.lengedNames=["整体"],b.dimenugkeys=e.cloneJSON(c.info.key),b.dimenugkeys.unshift("all"),c.info.value.filter(function(a){b.lengedNames.push(a)}),b.usergroupid=c.info.key[0],b.userIndex=1):b.usergroupid=-1}),b.showDemistion=function(){return b.define&&b.define.id>0||b.isShowCache},b.definename="请选择模板",b.clickDefine=function(c){b.define=c,b.typesign="define",b.typesname=c.name,b.ename=c.name,b.defineFlag=++i,b.showEventWin=!1,b.helpname="自定义留存",a.thirdtab=c.name},b.deleteDefine=function(a){b.delDefine=a,d.showAlp(),d.showLoading(),c.getInfo("custommenu/delete/valid/"+a.id+"?type=retention").then(function(a){d.hideLoading(),b.wantDelete=!0,b.custommenus=!!(angular.isArray(a)&&a.length>0)&&a})},b.doDelete=function(){b.closeWin(),d.showLoading(),c.deleteInfo("mng/retention/delete/"+b.delDefine.id).then(function(){d.showTips("删除成功"),b.queryInfoByApp(3,b.delDefine.id),d.hideLoading()})},b.date=d.getLastDays(-7),b.disTimeFlag=[],b.rangday=-1,b.changeTimeFlag=function(a){if(b.disTimeFlag.indexOf(a)>-1)return!1;b.timeFlag=a},b.changeTimeFlag("day"),b.$on("dateCustos",function(a,c){var d=diffDate(c.startDate,c.endDate);d>=15||d>=60?(b.disTimeFlag=["day"],"day"==b.timeFlag&&(b.timeFlag=d>=60?"month":"week")):c.startDate==c.endDate?(b.disTimeFlag=["week","month"],b.timeFlag="day"):b.disTimeFlag=[],b.date=c}),b.$watch("date",function(){angular.isDefined(b.date)&&(b.datestr=b.date.startDate+"至"+b.date.endDate)}),b.typeList=[{id:"define",name:"新建自定义留存"},{id:"install",name:"新增留存"},{id:"dau",name:"活跃留存"}],b.hasEditPower()||(b.typeList=b.typeList.slice(1)),b.clickType=function(c){b.typesign=c.id,b.typesname=c.name,b.helpname=c.name,b.define={id:0},"define"==c.id?(b.addModel(0),b.helpname="自定义留存"):(b.defineFlag=++i,b.showEventWin=!1,b.isShowCache=!1,a.thirdtab=c.name)},b.eventInfo=[],b.dimenInit=b.dimenId="-all",b.$watch("appid",function(a){angular.isDefined(a)&&(b.dimenId="-all",b.lengedNames=[],b.queryInfoByApp(5),b.clickType(b.typeList[1]))}),b.initEventInfo=function(a,f){if(b.eventInfo.filter(function(a){a.show=!1}),1==a||f){b.isShowCache=0==a||"新建自定义留存"==b.typesname,d.showLoading();var g=b.isShowCache?JSON.parse(JSON.parse(f)):JSON.parse(b.define.eventInfo),h=[],i=[];g.filter(function(a){var b={event:a.event,param:[]};e.cloneJSON(a.params).filter(function(a){b.param.push(a.attr)}),h.push(a.event),i.push(b)});c.getInfo(b.appid+"/event/find/param?names="+h.join(",")+"¶ms="+JSON.stringify(i)).then(function(a){a.filter(function(a){for(var c=0;c<b.eventList.length;c++)if(a.eventName==b.eventList[c].eventName){b.eventList[c].profiles=a.profiles;break}}),g.filter(function(a){a.oldparams=e.cloneJSON(a.params),delete a.params,b.addEvent(a)}),d.hideLoading()})}else b.addEvent(),b.addEvent()},b.changeRel=function(a){a.relation="and"==a.relation?"or":"and"},b.changeSeeFlag=function(a){b.seeFlag=a};var i=(new Date).getTime();b.eventinitname="请选择事件",b.addEvent=function(a){i++;var d={id:"evt_"+i,eventid:"event_"+i,relation:"and",show:!0};if(a){for(var e in a)d[e]=a[e];d.eventinit=a.event}!function(a){b.$on(a.eventid,function(d,e){a.params=[],a.event=e.info.eventName,a.nullevent=!1;var f=function(){a.paramsList=e.info.profiles,a.oldparams&&(a.oldparams.filter(function(c){b.addEventParams(a,c)}),delete a.oldparams)};if(angular.isArray(e.info.profiles))f(e.info.profiles);else{c.getInfo(b.appid+"/event/find/param?names="+a.event).then(function(a){e.info.profiles=a[0].profiles,f()})}})}(d),b.eventInfo.length%2==0?(d.title="初始行为",d.zidx=2):(d.zidx=1,d.title="回访行为"),b.eventInfo.push(d)},b.closeAddWin=function(a){b.showEventWin=!1,1==a&&2==b.isEditInfo&&b.clickType(b.typeList[1]),b.isEditInfo=1},b.getEventParamsNum=function(a){return a&&a.params?a.params.filter(function(a){return 0!=a.show}).length:5},b.addEventParams=function(a,c){if(!a.params||b.getEventParamsNum(a)>=3)return!1;i++;var d={id:"pam_"+i,pid:a.id};if(c)for(var e in c)d[e]=c[e];a.params.push(d)},b.removeEventParams=function(a,b){for(var c=0;c<a.params.length;c++)if(a.params[c].id==b.id){a.params[c].show=!1;break}},b.initCondition=function(){if(!b.canSave())return!1;b.initEventInfo()},b.$on("event",function(a,c){for(var d=0;d<b.eventInfo.length;d++)if(b.eventInfo[d].id==c.pid)for(var e=b.eventInfo[d].params,f=0;f<e.length;f++)if(e[f].id==c.id){e[f]=c;break}}),b.canSave=function(){if(!b.eventInfo||0==b.eventInfo.length)return!1;for(var a=!1,c=0;c<b.eventInfo.length;c++){var d=b.eventInfo[c];if(1==d.show&&d.event){a=!0;break}}return a},b.nowiptEvents="",b.getEventCrm=function(a){var c=!1,f=[],g=[],h=!1;if(b.nowiptEvents="",b.eventInfo.filter(function(a){if(0!=a.show){var d={event:a.event,relation:a.relation,params:[]};e.isNullStr(a.event)?(a.nullevent=!0,c=!0):(a.nullevent=!1,angular.isUndefined(a.params)?h=!0:a.params.filter(function(a){if(0!=a.show){var f={};for(var g in a)"id"!=g&&"pid"!=g&&(f[g]="value"!=g?a[g]:a[g].join(","),e.isNullStr(a[g])&&(b.$broadcast(a.id,"null"),c=!0));d.params.push(f)}})),f.push(d),g.push(a.event)}}),h)return!1;c?a&&d.showTips(b.formTipMsg):b.nowiptEvents=JSON.stringify(f)},b.isEditInfo=1,b.addModel=function(a){var c=e.getItem("retention_"+b.appid);if(a){if("install"==b.typesign||"dau"==b.typesign||b.define&&0==b.define.id&&!c)return!1;b.isEditInfo=3}else b.isEditInfo=2;b.initEventInfo(a,c),b.showEventWin=!0},b.nameWin=function(a){if(b.getEventCrm(),""==b.nowiptEvents)return d.hideLoading(),d.showTips(b.formTipMsg),!1;d.showAlp(),b.wantSave=!0,b.currentDefine={},b.ename="",angular.isDefined(a)&&(b.currentDefine=b.define,b.define={id:0})},b.lookReport=function(){if(!b.canSave())return!1;b.getEventCrm(!0),""!=b.nowiptEvents&&(b.showEventWin=!1,b.query(!0))},b.closeWin=function(a){b.wantSave=!1,b.wantDelete=!1,a&&(1==a&&(b.showEventWin=!1),2==a&&3==b.isEditInfo&&(b.define=b.currentDefine)),b.isEditInfo=1,d.hideAlp()},b.save=function(){if(b.getEventCrm(),""==b.nowiptEvents)return!1;var a=function(){var a={app:b.appid,eventInfo:b.nowiptEvents,name:b.ename},e=null,f="添加成功",g=1;b.define.id>0?(a.id=b.define.id,e=c.putInfo("mng/retention/update",a),f="修改成功",g=2):e=c.postInfo("mng/retention/create",a),d.showLoading(),e.then(function(c){b.closeWin(1),d.hideLoading(),d.showTips(f),b.queryInfoByApp(g,a.id),b.isShowCache&&(localStorage.removeItem("retention_"+b.appid),b.isShowCache=!1)})};if(0==b.define.id){var f={name:{key:"spcname",val:b.ename}};if(b.tip=formJudge(f),e.isNullStr(b.ename)||1!=b.tip.succ)return d.showTips("请输入20个汉字以内名称,允许字符为中英文数字_-"),!1;d.showLoading();c.getInfo("mng/retention/valid/"+b.appid,{name:b.ename}).then(function(b){1==b?(d.hideLoading(),d.showTips("名称已存在")):a()})}else a()};var k=function(){var a={reportview:b.timeFlag,retentiontype:b.typesign,appid:b.appid};if(b.isTempLook||b.isShowCache){if(b.getEventCrm(),""==b.nowiptEvents)return-1;a.eventinfo=b.nowiptEvents,e.setItem("retention_"+b.appid,JSON.stringify(b.nowiptEvents)),b.isShowCache=!0}else if(b.define&&b.define.id>0)a.eventinfo=b.define.eventInfo;else if("define"==b.typesign)return-2;return a.startdate=b.date.startDate,a.enddate=b.date.endDate,a.datatype="list",a.eventType=b.dimenEventType,a};b.retetionConfig={color:d.getTenColors(),ispercent:!0,legend:!1};var l=0,m=0;b.query=function(a){b.isTempLook=!!a;var f=k();if(-1==f)return!1;if(-2==f)return b.clickType(b.typeList[1]),!1;if(f.datatype="list",f.dimention=b.dimenId,"usergroup"==f.dimention){if(-1==b.usergroupid)return!1;f.usergroupid=b.usergroupid}f.isdevice="device"==b.seeFlag,f.eventType=b.dimenEventType;var g=null,h="",j="",m="",n=(b.define.name||b.typesname)+"的留存趋势详情";b.define&&b.define.id>0&&(m=b.define.id);"day"!=b.timeFlag&&b.timeFlag;var o="retention/report/"+b.appid;h=o,j="customretention","define"!=b.typesign&&"dau"!=b.typesign?f.eventinfo="payment,loggedin,reged":"dau"==b.typesign&&(f.retentiontype="active"),g=c.getInfo(o,f),b.retetionLoading=!0,b.showDetail=!1,b.infolistLoading=!0,g.then(function(a){b.infolist=a,f.dimention&&(b.infolist.name[0]=b.dimenObj.name);var c=a.val;b.infolistLoading=!1;var g={name:[],key:[],val:[],rmd:++i};if(c.length>0){g.key=a.key.slice(1);var k=a.columnkey;c.filter(function(a){g.name.push(a[k[0]]);for(var b=[],c=2;c<k.length;c++)b.push(a["rate_"+k[c]]);g.val.push(b)})}else"usergroup"==b.dimenId&&b.lengedNames&&b.lengedNames.length>1&&(g.name=["整体",b.lengedNames[b.userIndex]]);b.eventChartData=g,"usergroup"!=f.dimention&&(b.lengedNames=g.name);var o=5;g.name.length>o?b.myChartData={name:g.name.slice(0,o),key:g.key,val:g.val.slice(0,o),rmd:++i}:b.myChartData=e.cloneJSON(g),l=0;var p=a.columnkey[2];a.val.filter(function(a){a[p]>l&&(l=a["rate_"+p])}),b.retetionLoading=!1,b.myChartDataCondition=d.getChartConditions(n,h,f,j,m)},function(a){b.myChartData=d.noDataChart(),b.infolist={},b.retetionLoading=!1,b.infolistLoading=!1})};var n=10;b.changeChartData=function(a){if(!b.myChartData)return!1;if("usergroup"==b.dimenId){var c=b.lengedNames.indexOf(a);if(c>0&&b.dimenugkeys.indexOf(b.usergroupid)!=c)return b.usergroupid=b.dimenugkeys[c],b.userIndex=c,!1;if(0==c)return d.showTips("整体不可取消"),!1}var f=b.myChartData.name.length,c=b.myChartData.name.indexOf(a);if(c>-1){var g=e.cloneJSON(b.myChartData);g.name.splice(c,1),g.val.splice(c,1),g.rmd=++i,b.myChartData=g}if(f<n&&-1==c){var h=b.eventChartData.name.indexOf(a),g=e.cloneJSON(b.myChartData);g.name.push(a),g.val.push(b.eventChartData.val[h]),g.rmd=++i,b.myChartData=g}},b.lengedBgStyle=function(a){var c=b.myChartData.name.indexOf(a);return c>-1?{"background-color":b.retetionConfig.color[c],"border-color":"transparent"}:{}},b.lengedClass=function(a){if(!b.myChartData)return"";var c=b.myChartData.name.length,d=b.myChartData.name.indexOf(a);return c>=n&&-1==d?"disable":""},b.getBgColor=function(a,b,c){return b<1?{}:(a=1==c&&l>0?.8*Number((a/l).toFixed(2)):2==c&&m>0?.8*Number((a/m).toFixed(2)):0,{"background-color":"rgba(109,199,190,"+a+")"})},b.subDetail=function(a,e){if(e>0)return!1;var f=b.infolist.columnkey[0];b.detailInfoTitle=a[f],b.detailInfoLoading=!0,b.showDetail=!0;var g=k(),h=null;b.detailInfo=[],g.isdevice="device"==b.seeFlag;var i="",j="",l="";if(j="detailcustomretention","define"!=b.typesign&&"dau"!=b.typesign){"day"!=b.timeFlag&&b.timeFlag,g.isdetail=!0,i="reportdetail/"+b.appid}else"dau"==b.typesign?g.retentiontype="active":b.define&&b.define.id>0&&(l=b.define.id);if("整体"!=b.detailInfoTitle&&b.dimenId&&"-all"!=b.dimenId)if("usergroup"==b.dimenId)g.usergroupid=b.usergroupid;else{var n={};n[b.dimenId]=a[b.dimenId+"_key"],n.type=b.dimenObj.type,g.dimention=JSON.stringify(n)}var o="";"define"!=b.typesign&&"dau"!=b.typesign?(o=i,g.eventinfo="payment,loggedin,reged",h=c.getInfo("retention/"+i,g)):"dau"==b.typesign?(o="retention/reportdetail/"+b.appid,g.eventinfo="payment,loggedin,reged",h=c.getInfo(o,g)):(o="retention/reportdetail/"+b.appid,h=c.getInfo(o,g)),g.eventType=b.dimenEventType,h.then(function(a){b.detailInfo=a,b.detailInfoLoading=!1,m=0;var c=a.columnkey[2];a.val.filter(function(a){a[c]>m&&(m=a["rate_"+c])}),b.detailInfoCondition=d.getChartConditions((b.define.name||b.typesname)+"的留存明细",o,g,j,l)},function(a){b.detailInfoLoading=!1})},b.$watch("appid+date.startDate+date.endDate+seeFlag+timeFlag+dimenId+defineFlag+usergroupid",function(){angular.isDefined(b.appid)&&angular.isDefined(b.date)&&angular.isDefined(b.typesign)&&b.query()})}angular.module("app.collect").controller("retentionCtrl",["$rootScope","$scope","HttpService","ToolService","UtilService","$timeout","$q","$stateParams",a])}(),function(){function a(a,b,c,d,e,f,g,h){var i=f.pageid;a.addFirst=!1,a.addFirstFunnel=function(){a.addFirst=!0,a.showEventWin=!0,a.currentFunnel={},a.isEditInfo=2,a.initFunnel()};var j=(new Date).getTime(),k=null;a.queryInfoByApp=function(b,d){if(angular.isUndefined(b)||5==b){k=c.getInfo(a.appid+"/event/find"),k.then(function(b){a.eventListAll=b,a.eventList=a.eventListAll.filter(function(a){return"install"!=a.eventName})});c.getInfo(a.appid+"/event/find/allAttr").then(function(b){b.unshift({dimensionType:"whole",id:"-all",name:"总体",type:"string"});for(var c=0;c<b.length;c++)"population"!=b[c].dimensionType&&"source"!=b[c].dimensionType||(b[c].dimensionType="eventlist");a.dimensionList=b})}c.getInfo("funnel/find/"+a.appid).then(function(c){if(a.funnelList=c,a.isEditInfo=1,c.length>0)if(g.isNullStr(i)||(d=i),g.isNullStr(d))a.clickFunnel(c[0]);else{for(var e=!1,f=0;f<a.funnelList.length;f++)if(a.funnelList[f].id==d){a.funnelInfo=a.funnelList[f],e=!0;break}e?g.isNullStr(i)?a.defineFlag=++j:(a.clickFunnel(a.funnelInfo),i=null):e||a.funnelInfo.id!=d||a.clickFunnel(c[0])}else a.addFirst=!1,a.funnelInfo={};5==b&&(a.dimenRmd=++j)})},a.deviceId=!1,a.dimensionname="维度对比",a.usergroupid=-1,a.$on("dimensionId",function(b,c){a.dimenId=c.info.id,a.dimenObj=c.info,a.dimenEventType=c.info.eventType,"usergroup"==a.dimenId&&-1==a.usergroupid?(a.lengedNames=["整体"],a.dimenugkeys=g.cloneJSON(c.info.key),a.dimenugkeys.unshift("all"),c.info.value.filter(function(b){a.lengedNames.push(b)}),a.usergroupid=c.info.key[0]):a.usergroupid=-1}),a.date=d.getLastDays(-7,0),a.$on("dateCustos",function(b,c){a.date=c}),a.$watch("date",function(){angular.isDefined(a.date)&&(a.datestr=a.date.startDate+"至"+a.date.endDate)}),a.definename="请选择漏斗",a.clickFunnel=function(c){a.funnelInfo=c,a.ename=c.name,a.defineFlag=++j,a.showEventWin=!1,a.isEditInfo=1,b.thirdtab=c.name},a.deleteFunnel=function(b){a.delDefine=b,d.showAlp(),d.showLoading(),c.getInfo("custommenu/delete/valid/"+b.id+"?type=funnel").then(function(b){d.hideLoading(),a.wantDelete=!0,a.custommenus=!!(angular.isArray(b)&&b.length>0)&&b})},a.doDelete=function(){a.closeWin(),d.showLoading(),c.deleteInfo("mng/funnel/delete/"+a.delDefine.id).then(function(){d.showTips("删除成功"),a.queryInfoByApp(3,a.delDefine.id),d.hideLoading()})},a.closeAddWin=function(){a.showEventWin=!1,a.isEditInfo=1,a.addFirst=!1},a.eventinitname="请选择事件",a.getEventNum=function(){return a.eventInfo?a.eventInfo.filter(function(a){return 0!=a.show}).length:20},a.setEventSteps=function(){if(!a.eventInfo)return 20;var b=-1,c=a.eventInfo.length;a.eventInfo.filter(function(a,d){0!=a.show&&(b++,a.steps=["一","二","三","四","五","六","七","八","九","十"][b],a.style={"z-index":c-d})})},a.maxStep=7,a.addEvent=function(b){if(a.getEventNum()>=a.maxStep)return!1;j++;var d={id:"evt_"+j,eventid:"event_"+j,relation:"and"};if(b){for(var e in b)d[e]=b[e];d.eventinit=b.event}!function(b){a.$on(b.eventid,function(d,e){b.params=[],b.event=e.info.eventName,b.nullevent=!1;var f=function(){b.paramsList=e.info.profiles,b.oldparams&&(b.oldparams.filter(function(c){a.addEventParams(b,c)}),delete b.oldparams)};if(angular.isArray(e.info.profiles))f(e.info.profiles);else{c.getInfo(a.appid+"/event/find/param?names="+b.event).then(function(a){e.info.profiles=a[0].profiles,f()})}})}(d),a.eventInfo.push(d),a.setEventSteps()},a.removeEvent=function(b){if(a.getEventNum()<=2)return d.showTips("漏斗步骤不能少于2步"),!1;for(var c=0;c<a.eventInfo.length;c++)if(a.eventInfo[c].id==b.id){a.eventInfo[c].show=!1;break}a.setEventSteps()},a.changeRel=function(a){a.relation="and"==a.relation?"or":"and"},a.getEventParamsNum=function(a){return a.params?a.params.filter(function(a){return 0!=a.show}).length:5},a.addEventParams=function(b,c){if(!b.params||a.getEventParamsNum(b)>=3)return!1;j++;var d={id:"pam_"+j,pid:b.id};if(c)for(var e in c)d[e]=c[e];b.params.push(d)},a.removeEventParams=function(a,b){for(var c=0;c<a.params.length;c++)if(a.params[c].id==b.id){a.params[c].show=!1;break}},a.$on("event",function(b,c){for(var d=0;d<a.eventInfo.length;d++)if(a.eventInfo[d].id==c.pid)for(var e=a.eventInfo[d].params,f=0;f<e.length;f++)if(e[f].id==c.id){e[f]=c;break}}),a.dayList=[{id:1,name:"1天"},{id:2,name:"2天"},{id:3,name:"3天"},{id:4,name:"4天"},{id:5,name:"5天"},{id:6,name:"6天"},{id:7,name:"7天"}],a.windowsinit=a.dayList[0].id,a.$on("windows",function(b,c){a.windows=c.info.id}),a.eventInfo=[],a.initFunnel=function(b){a.eventInfo.filter(function(a){a.show=!1}),b?(a.ename=a.funnelInfo.name,a.windowsinit=a.funnelInfo.window,d.showLoading(),h.all([k]).then(function(b){var e=JSON.parse(a.funnelInfo.eventInfo),f=[],h=[];e.filter(function(a){var b={event:a.event,param:[]};g.cloneJSON(a.params).filter(function(a){b.param.push(a.attr)}),f.push(a.event),h.push(b)}),c.getInfo(a.appid+"/event/find/param?names="+f.join(",")+"¶ms="+JSON.stringify(h)).then(function(b){b.filter(function(b){for(var c=0;c<a.eventList.length;c++)if(b.eventName==a.eventList[c].eventName){a.eventList[c].profiles=b.profiles;break}}),e.filter(function(b){JSON.stringify(a.eventList).indexOf(b.event)>-1&&(b.oldparams=g.cloneJSON(b.params)),delete b.params,a.addEvent(b)}),d.hideLoading()})})):(a.addEvent(),a.addEvent())},a.isEditInfo=1,a.addFunnel=function(b){if(b){if(!a.funnelInfo||!a.funnelInfo.id||2==a.isEditInfo)return!1;a.isEditInfo=3,a.currentFunnel=a.funnelInfo}else a.isEditInfo=2,a.currentFunnel={};a.initFunnel(b),a.showEventWin=!0},a.initCondition=function(){a.canSave()&&a.initFunnel()},a.getFunnelEventInfo=function(){var b=!1,c=[],d=[];return a.eventInfo.filter(function(e){if(0!=e.show&&JSON.stringify(a.eventList).indexOf(e.event)<0&&(e.nullevent=!0,b=!0),0!=e.show&&JSON.stringify(a.eventList).indexOf(e.event)>-1){var f={event:e.event,relation:e.relation,params:[]};g.isNullStr(e.event)?(e.nullevent=!0,b=!0):(e.nullevent=!1,e.params.filter(function(c){if(0!=c.show){var d={};for(var e in c)"id"!=e&&"pid"!=e&&(d[e]="value"!=e?c[e]:c[e].join(","),g.isNullStr(c[e])&&(a.$broadcast(c.id,"null"),b=!0));f.params.push(d)}})),c.push(f),d.push(e.event)}}),!b&&c.length>0?{eventInfo:JSON.stringify(c),events:d.join(",")}:{}},a.nameWin=function(b){if(!a.getFunnelEventInfo().events)return d.showTips(a.formTipMsg),!1;d.showAlp(),a.wantSave=!0,a.ename="",b&&(a.currentFunnel={id:0})},a.closeWin=function(b){a.wantSave=!1,a.wantDelete=!1,b&&(2==b&&3==a.isEditInfo?a.currentFunnel=a.funnelInfo:a.showEventWin=!1),d.hideAlp()},a.canSave=function(){if(!a.eventInfo||0==a.eventInfo.length)return!1;for(var b=!1,c=0;c<a.eventInfo.length;c++){var d=a.eventInfo[c];if(0!=d.show&&d.event){b=!0;break}}return b},a.save=function(){var b=function(){var b={name:a.ename,app:a.appid,window:a.windows},e=a.getFunnelEventInfo();if(!e.events)return d.showTips(a.formTipMsg),!1;b.eventInfo=e.eventInfo,b.events=e.events;var f=null,g="添加成功";a.currentFunnel.id?(b.id=a.currentFunnel.id,f=c.putInfo("mng/funnel/update",b),g="修改成功"):f=c.postInfo("mng/funnel/create",b),d.showLoading(),f.then(function(b){a.closeWin(1),d.hideLoading(),d.showTips(g),a.queryInfoByApp(1,a.currentFunnel.id)})};if(a.currentFunnel.id&&0!=a.currentFunnel.id)b();else{var e={name:{key:"spcname",val:a.ename}};if(a.tip=formJudge(e),g.isNullStr(a.ename)||1!=a.tip.succ)return d.showTips("请输入20个汉字以内名称,允许字符为中英文数字_-"),!1;d.showLoading();c.getInfo("mng/funnel/valid/"+a.appid,{name:a.ename}).then(function(a){1==a?(d.hideLoading(),d.showTips("名称已存在")):b()})}},a.dimenInit=a.dimenId="-all",a.$watch("appid",function(b){angular.isDefined(b)&&(a.dimenId="-all",a.lengedNames=[],a.funnelInfo={},a.queryInfoByApp(5))}),a.chartKey=[],a.chartConfig={color:["#5fb5f1","#e6e6e6"],legend:!1,ispercent:!0},a.queryList=function(){var b={startdate:a.date.startDate,enddate:a.date.endDate,appid:a.appid};if(b.datatype="list",b.eventType=a.dimenEventType,a.dimenId&&"-all"!=a.dimenId&&(b.dimention=a.dimenId,"usergroup"==b.dimention)){if(-1==a.usergroupid)return!1;b.usergroupid=a.usergroupid}b.isdevice="device"==a.seeFlag,a.chartConfig.isdevice=b.isdevice;var e="funnel/report/"+a.funnelInfo.id,f=c.getInfo(e,b);a.listInfoLoading=!0,a.chartLoading=!0,a.currentChartName="",f.then(function(c){if(a.listInfoData=c,a.listInfoLoading=!1,a.chartListInfo=c.val,b.dimention&&(a.listInfoData.name[0]=a.dimenObj.name,"usergroup"!=b.dimention)){a.lengedNames=[];var f=c.columnkey[0];a.chartListInfo.filter(function(b){a.lengedNames.push(b[f])})}a.chartKey=a.listInfoData.key,a.chartKeyName=a.listInfoData.eventname,"usergroup"==b.dimention?a.setFunnelData(1):a.setFunnelData(0),a.listInfoDataCondition=d.getChartConditions("漏斗转化-"+a.funnelInfo.name,e,b,"funnel",a.funnelInfo.id)},function(b){a.chartData=d.noDataChart(),a.listInfoData={},a.listInfoLoading=!1,a.chartLoading=!1})},a.currentChartName="",a.setFunnelData=function(b,c){c&&1==c&&(b=a.lengedNames.indexOf(b));var e=a.chartListInfo[b];if("usergroup"==a.dimenId&&c&&1==c){if(b>0&&a.dimenugkeys.indexOf(a.usergroupid)!=b)return a.usergroupid=a.dimenugkeys[b],!1;b>0&&(e=a.chartListInfo[1])}if(a.lengedNames&&a.lengedNames.length>0){if(a.currentChartName==a.lengedNames[b])return!1;a.currentChartName=a.lengedNames[b]}else a.currentChartName="整体";a.chartLoading=!1,a.chartData=d.getFunnelData(e,a.chartKey,a.chartKeyName)},a.getChartStyle=function(b){var c=a.lengedNames.indexOf(b);return"usergroup"!=a.dimenId&&a.currentChartName==a.lengedNames[c]||"usergroup"==a.dimenId&&("整体"!=a.currentChartName&&a.dimenugkeys.indexOf(a.usergroupid)==c||"整体"==a.currentChartName&&0==c)?{"background-color":a.chartConfig.color[0],"border-color":"transparent"}:{}},a.$watch("date.startDate+date.endDate+defineFlag+seeFlag+dimenId+usergroupid",function(b){if(angular.isUndefined(a.appid)||angular.isUndefined(a.date)||angular.isUndefined(a.funnelInfo)||!a.funnelInfo.id)return!1;a.queryList()})}angular.module("app.collect").controller("funnelCtrl",["$scope","$rootScope","HttpService","ToolService","$state","$stateParams","UtilService","$q",a])}(),function(){function eventstatsCtrl($scope,$rootScope,HttpService,ToolService,UtilService,$filter,$timeout,$stateParams,$q){$scope.formatList=[{format:"percent",name:"百分比"},{format:"float",name:"两位小数"},{format:"int",name:"整数"}],$scope.formatinitname="整数",$scope.groupbys=[],$scope.dimensionname="请选择分组",$scope.dimenInit="-all",angular.element(document).on("click",function(){$scope.$apply(function(){$scope.showProList=!1,$scope.nowEvent=""})}),$scope.getwidth=function(a){return 6*ToolService.getByteLen(a)};var getLastIndex=function(a,b){if(a){var c=a.length,d=0;return c>0&&(d=a.split("").reverse().join("").search(b||regexp))>-1&&(d=c-d-1),d}},ischrome=UtilService.getBrowser().indexOf("Chrome")>-1;$scope.changeExpression=function(ex,index,event){$scope.expressionObj=index>=0?document.getElementById("expression_"+index):$scope.expressionObj;var focusIndex=sectionTool.getCursortPosition($scope.expressionObj),value=ex.expressionName?ex.expressionName:"";value=value.substring(0,focusIndex);var s1=value.substring(getLastIndex(value),focusIndex),filterTxt="";$scope.currentIndex=index,getLastIndex(s1)==s1.length-1&&(s1=s1.substring(1));var showList=function(){$scope.showProList=!0;var a=document.getElementById("evtBox").getBoundingClientRect(),b=$scope.expressionObj.value.substring(0,focusIndex),c=b.visualLength()-$scope.expressionObj.scrollLeft,d=$scope.expressionObj.getBoundingClientRect(),e=d.top+d.height-a.top,f=filterTxt.visualLength(),g=d.left-a.left+c-f+13;ischrome||(g-=16,$scope.expressionObj.scrollLeft>36&&(focusIndex==$scope.expressionObj.value.length?g-=36:g-=10)),document.getElementById("optionList").style.left=g+"px",document.getElementById("optionList").style.top=e+"px"};if($scope.eventIndex=-1,$(".optionList ul").scrollTop(0),$scope.nowEvent="",-1==s1.indexOf(".")){$scope.epropertyList=$scope.eventList,filterTxt=s1;var filterIndex=filterTxt.search(regexp);filterIndex>-1&&(filterTxt=filterTxt.slice(filterIndex+1)),$scope.typeName=eval(["自然事件","虚拟事件"]),$scope.typeKey=eval(["nature","virtual"])}else{$scope.typeName=[],$scope.typeKey=[];var count=s1.match(/\./g).length;if(filterTxt=s1.substring(s1.lastIndexOf(".")+1),1==count){var findex=s1.split("").join("").search(regexp),start=0;0==findex&&(start=1);var tn=s1.substring(start,s1.indexOf("."));$scope.getEventName(tn),$scope.getAttrByEvent($scope.selectEvent,showList)}else if(2==count){var findex=s1.split("").join("").search(regexp),start=0,fd=s1.indexOf(".");0==findex&&(start=1);var en=s1.substring(start,fd),pn=s1.substring(fd+1,s1.lastIndexOf("."));$scope.getEventName(en),$scope.getAttrByEvent($scope.selectEvent,function(a){for(var b=0;b<a.length;b++)if(a[b].name==pn){$scope.selectAttr=a[b];break}if(a.length>0&&$scope.selectAttr&&!$scope.selectAttr.isleaf){var c=$scope.kpiList.filter(function(a){return a.viewType==$scope.selectAttr.type||"all"==a.viewType});$scope.showProList=!0,$scope.epropertyList=c}else $scope.epropertyList=[]},1)}else $scope.epropertyList=[]}$scope.epropertyList.length>0&&(event&&!event.isleaf||!event)?showList():$scope.showProList=!1,$scope.filterSearch=filterTxt,$scope.currentExpression=ex},$scope.getEventName=function(a){for(var b=0;b<$scope.eventList.length;b++)if($scope.eventList[b].name==a){$scope.selectEvent=$scope.eventList[b];break}},$scope.$watch("filterSearch",function(a){if(angular.isUndefined(a)||!a)return!1;$scope.virtual="",$scope.nature="",$scope.epropertyList.filter(function(b){angular.uppercase(b.name).indexOf(angular.uppercase(a))>-1&&"virtual"==b.type&&($scope.virtual=b.type),angular.uppercase(b.name).indexOf(angular.uppercase(a))>-1&&"nature"==b.type&&($scope.nature=b.type)})}),$scope.expresstionTransform=function(a){var b={expression:a.expressionName,appkey:$scope.appid},c=HttpService.postInfo("expression/transform",b),d=a;c.then(function(a){d.error=!1,11e3==a.code?d.error=!0:(d.error=!1,d.expression=a)},function(){d.error=!0})},$scope.showFlow=!0,$scope.changeFlow=function(a){$scope.showFlow=1!=a},$scope.$watch("currentExpression",function(a,b){if(angular.isUndefined(a)||!a)return!1;if(!a.expressionName)return void $scope.changeExpression(a,$scope.currentIndex);if(!(!b||a==b||a&&b&&a.expressionName==b.expressionName)){$scope.expresstionTransform(a);var c=a.expressionName;getLastIndex(c)!=c.length-1&&"."!=c.slice(-1)||$scope.changeExpression(a,$scope.currentIndex)}},!0);var regexp=/[\+\-\*\/\(\)]/g;$scope.getProperty=function(a){var b=$scope.expressionObj.selectionStart,c=$scope.currentExpression.expressionName?$scope.currentExpression.expressionName:"",d=c.substring(0,b),e=c.substring(b),f="",g="",h=/[\+\-\*\/\(\)\.]/g;d=d.slice(0,getLastIndex(d,h)+1);for(var i=0;i<$scope.epropertyList.length;i++){var j=e.search(regexp);if((e.indexOf(".")<j?e.slice(0,e.indexOf(".")):e.indexOf(".")>j?e.slice(0,j):e.slice(0))==$scope.epropertyList[i].name){f=$scope.epropertyList[i].type,g=$scope.epropertyList[i].isleaf;break}}if(0!=e.indexOf(".")&&!a.viewType){var j=e.search(regexp);e=-1==j&&e.indexOf(".")>-1||e.indexOf(".")>-1&&j>-1&&e.indexOf(".")<j?e.substring(e.indexOf(".")):"."+e}if(f&&a.type!=f&&!a.isleaf||a.isleaf||g){var j=e.search(regexp);e=a.isleaf||g?(a.isleaf?"":".")+(j>-1?e.substring(j):""):"."+e.substring(j)}$scope.currentExpression.expressionName=d+a.name+e,$scope.expressionObj.value=$scope.currentExpression.expressionName;var k=d+a.name,l="."==k[k.length-1]||a.viewType||a.isleaf?k.length:k.length+1;sectionTool.setCaretPosition($scope.expressionObj,l),$scope.selectEvent=a.type||a.isleaf?$scope.selectEvent:a,$scope.selectAttr=a.type&&!a.isleaf?a:$scope.selectAttr,$timeout(function(){$scope.changeExpression($scope.currentExpression,-1,a)},100)},$scope.watchKey=function(a,b){if(37==b.keyCode||39==b.keyCode){var c=$timeout(function(){$scope.changeExpression(a,$scope.currentIndex)},100);c.then(function(){$timeout.cancel(c)})}40==b.keyCode&&(b.preventDefault(),$scope.eventIndex++,$scope.eventIndex=$scope.eventIndex<$scope.epropertyList.length?$scope.eventIndex:0,$(".optionList ul").scrollTop(34*(0==$scope.eventIndex?1:$scope.eventIndex)),$scope.nowEvent=$scope.epropertyList[$scope.eventIndex]),38==b.keyCode&&(b.preventDefault(),$scope.eventIndex--,$scope.eventIndex=$scope.eventIndex<0?$scope.epropertyList.length-1:$scope.eventIndex,$(".optionList ul").scrollTop(34*(0==$scope.eventIndex?1:$scope.eventIndex)),$scope.nowEvent=$scope.epropertyList[$scope.eventIndex])},$(document).keydown(function(a){13==a.keyCode&&$scope.nowEvent&&$scope.getProperty($scope.nowEvent)});var fid=$stateParams.pageid,rmd=(new Date).getTime(),commonEventPros=[],eventPM=null;$scope.queryInfoByApp=function(a,b){if(angular.isUndefined(a)||5==a){eventPM=HttpService.getInfo($scope.appid+"/event/find/virtual"),eventPM.then(function(a){$scope.eventList=[],angular.forEach(a,function(a){var b={};b.id=a.eventName,b.name=a.eventNameAlias,b.type=a.virtual?"virtual":"nature",$scope.eventList.push(b)})}),$scope.haslist=function(a){if(!$scope.eventList)return!1;for(var b=!1,c=0;c<$scope.eventList.length;c++)if($scope.eventList[c].type==a){b=!0;break}return b};HttpService.getInfo("expression/viewList").then(function(a){$scope.kpiList=[],$scope.fixedAttrList=a.eventViewList,commonEventPros=[],angular.forEach($scope.fixedAttrList,function(a,b){var c={};c.id=a.viewAttr,c.name=a.viewAttrName,c.isleaf=!0,b==$scope.fixedAttrList.length-1&&(c.border=!0),commonEventPros.push(c)}),angular.forEach(a.attrViewList,function(a){var b={};b.id=a.viewAttr,b.name=a.viewAttrName,b.viewType=a.viewType,b.isleaf=!0, -$scope.kpiList.push(b)})});var c=HttpService.getInfo($scope.appid+"/event/find/group/properties");c.then(function(a){$scope.dimensionList=a});var c=HttpService.getInfo($scope.appid+"/event/find/common/properties");c.then(function(a){$scope.commonAttrList=a})}var d=HttpService.getInfo("mng/eventstats/complicated/findAll/"+$scope.appid);$scope.define={},d.then(function(a){if($scope.defineList=a,a.length>0)if($scope.addFirst=!1,UtilService.isNullStr(fid)||(b=fid),b){for(var c=0;c<$scope.defineList.length;c++)if($scope.defineList[c].id==b){$scope.define=$scope.defineList[c];break}UtilService.isNullStr(fid)?$scope.defineFlag=++rmd:($scope.clickDefine($scope.define),fid=null)}else $scope.clickDefine(a[0]);else{var d=HttpService.getInfo("mng/eventstats/complicated/show/import");ToolService.showLoading(),d.then(function(a){ToolService.hideLoading(),void 0!==a.content?$scope.isold=a.content:$scope.isold=a})}})},$scope.importOld=function(){var a=HttpService.putInfo("mng/eventstats/complicated/import/old/data");ToolService.showLoading(),a.then(function(a){ToolService.hideLoading(),$scope.queryInfoByApp(1)})};var doDevice=["_count_user","_count_avg"];$scope.$watch("define",function(a){a&&a.id&&($scope.isEditInfo=!0)}),$scope.addTitName="新建事件统计细分",$scope.getTrendTitle=function(){return $scope.showTempLook?$scope.addTitName+"的趋势":$scope.define&&$scope.define.id?$scope.define.name+"的趋势":"事件趋势"},$scope.definename="请选择事件",$scope.clickDefine=function(a){$scope.define=a,$scope.defineFlag=++rmd,$scope.isEditInfo=!0,$scope.isShowCache=!1,$rootScope.thirdtab=a.name},$scope.deleteDefine=function(a){$scope.delDefine=a,ToolService.showAlp(),ToolService.showLoading(),HttpService.getInfo("custommenu/delete/valid/"+a.id+"?type=eventstats").then(function(a){ToolService.hideLoading(),$scope.wantDelete=!0,$scope.custommenus=!!(angular.isArray(a)&&a.length>0)&&a})},$scope.doDelete=function(){$scope.closeWin(),ToolService.showLoading(),HttpService.deleteInfo("mng/eventstats/complicated/delete/"+$scope.delDefine.id).then(function(){ToolService.showTips("删除成功"),$scope.queryInfoByApp(1),ToolService.hideLoading()})},$scope.date=ToolService.getLastDays(-7,0),$scope.timeFlag="day",$scope.disTimeFlag=["hour"],$scope.changeTimeFlag=function(a){if($scope.disTimeFlag.indexOf(a)>-1)return!1;$scope.timeFlag=a},$scope.$on("dateCustos",function(a,b){b.startDate==b.endDate?$scope.disTimeFlag=["week","month"]:$scope.disTimeFlag=["hour"],$scope.disTimeFlag.indexOf($scope.timeFlag)>-1&&($scope.timeFlag="day"),$scope.date=b}),$scope.$watch("date",function(){angular.isDefined($scope.date)&&($scope.datestr=$scope.date.startDate+"至"+$scope.date.endDate)});var proertyCollection={},lastid=-1;$scope.getAttrByEvent=function(a,b,c){if(!a||a.isleaf)return $scope.epropertyList=[],b&&b([]),!1;var d=function(a){var d=UtilService.cloneJSON(commonEventPros);angular.forEach(a,function(a){var b={};b.id=a.attr,b.name=a.attrAlias,b.type=a.webType||a.dataType,d.push(b)}),c?b&&b(d):($scope.epropertyList=d,b&&b(d))};if($scope.epropertyList=[],proertyCollection[a.id])d(proertyCollection[a.id]),$scope.attrShow=!0;else{if(lastid==a.id&&2!=c)return!1;lastid=a.id;HttpService.getInfo("expression/properties/"+a.id+"/"+$scope.appid).then(function(b){var c=orderBy(b,"sortId");d(c),proertyCollection[a.id]=c})}},$scope.changeEvent=function(a,b){b&&($scope.eventRel=b.relation),function(){$scope.event={id:"evt_"+rmd,params:[],paramsList:$scope.commonAttrList},b&&$timeout(function(){$scope.propertyInit=b.viewField,$scope.prorefresh=++rmd,$scope.event.secondval=b.fieldOperate,b.params.filter(function(a){$scope.addEventParams($scope.event,a)})})}()},$scope.eventinitname="请选择事件",$scope.eventRel="and",$scope.changeRel=function(){$scope.eventRel="and"==$scope.eventRel?"or":"and"},$scope.initCondition=function(){$scope.event.id&&$scope.initComplexEvent()},$scope.changeForm=function(a){if($scope.nowEvent="",a.expression=!a.expression,a.expression){if(a.operator){var b=[],c=[],d=[],e="",f="";a.event&&(b=$scope.eventList.filter(function(b){return a.event==b.id}));var g=a.property||a.operator;g&&(c=a.epropertyList.filter(function(a){return g==a.id}),e="."+c[0].name),a.operator&&a.property&&(d=a.targetList.filter(function(b){return a.operator==b.id}),f="."+d[0].name),a.expressionName=b[0].name+e+f}else a.expressionName=$scope.eventList[0].name+".总次数/"+$scope.eventList[0].name+".用户数";$scope.expresstionTransform(a)}else a.extip=""},$scope.showEventWin=!1,$scope.currentEvent=[],$scope.addComplexEvent=function(a,b){var c=UtilService.getItem($scope.appid);if(1==a||c){if(!$scope.define.id&&!$scope.isShowCache)return!1;$scope.isShowCache=0==a||b,$scope.isShowCache?$scope.currentDefine={}:($scope.currentDefine=$scope.define,$scope.ename=$scope.define.name);var d=$scope.isShowCache?JSON.parse(c):JSON.parse($scope.currentDefine.eventCondition);$scope.isEditInfo=!0}else $scope.currentDefine={},$scope.isEditInfo=!1,$scope.isShowCache=!1;$scope.initComplexEvent(a,d),$scope.showEventWin=!0},$scope.initComplexEvent=function(a,b){if($scope.currentEvent.filter(function(a){a.show=!1}),$scope.groupbys.filter(function(a){a.show=!1}),b){ToolService.showLoading(),$q.all([eventPM]).then(function(a){var c=b;c.expressions.filter(function(a){$scope.addEvents(a)}),c.group.filter(function(a){$scope.addGroupby(a)}),ToolService.hideLoading()});var c=[];if(b.params.filter(function(a){c.push(a.attr)}),c.length>0){HttpService.getInfo($scope.appid+"/event/find/value/attrs?attrNames="+c.join(",")).then(function(a){var c=a;$scope.commonAttrList.filter(function(a){var b=c[a.attr];b&&b.key&&(a.key=b.key),b&&b.value&&(a.value=b.value)}),$scope.changeEvent(null,b)})}}else $scope.addEvents();$scope.event={id:"evt_"+rmd,params:[],relation:$scope.eventRel,paramsList:$scope.commonAttrList}},$scope.addFirst=!1,$scope.addFirstEvent=function(){$scope.addFirst=!0,$scope.showEventWin=!0,$scope.currentDefine={},$scope.initComplexEvent()},$scope.closeAddWin=function(){$scope.showEventWin=!1,$scope.addFirst=!1,$scope.isEditInfo=!0},$scope.maxparams=10,$scope.maxevents=10,$scope.maxgroupbys=3,$scope.addGroupby=function(a){if(!($scope.getGroupByNum()>=$scope.maxgroupbys)){++rmd;var b={id:"gby_"+rmd,dimensionId:"groupby_"+rmd,show:!0};if(a){for(var c in a)b[c]=a[c];b.dimenInit=a.name}!function(a){$scope.$on(a.dimensionId,function(b,c){a.dimenId=c.info.param,a.type=c.info.type})}(b),$scope.groupbys.push(b)}},$scope.addEvents=function(a){if(!($scope.getEventNum()>=$scope.maxevents)){++rmd;var b={id:"evt_"+rmd,relation:"and",format_id:"for_"+rmd,show:!0,eventId:"event_"+rmd,propertyId:"pro_"+rmd,targetId:"tar_"+rmd};if(a){for(var c in a)b[c]=a[c];b.formatInit=a.format,b.eventInit=a.event,b.event=a.event,b.propertyinit=a.attr?a.attr:a.operator,b.targetinit=a.operator}!function(b){var c="",d="",e="";$scope.$on(b.format_id,function(a,c){b.formatId=c.info.format}),$scope.$on(b.eventId,function(d,e){b.event&&e.info.id!=b.event&&(b.prorefresh=++rmd,b.propertyinit=-1,b.tarrefresh=++rmd,b.targetinit=-1,b.operator="",b.property="",a||(b.name="")),b.event=e.info.id,$scope.getAttrByEvent(e.info,function(a){b.epropertyList=a},2),b.propertyShow=!0,b.targetShow=!1,b.propertyinitname="请选择事件属性",c=e.info.name}),$scope.$on(b.propertyId,function(f,g){var h={id:b.event};g.info.isleaf?(b.operator=g.info.id,b.targetShow=!1,b.targetinit="",b.property="",a||(b.name=c+g.info.name,e="")):(b.targetinitname="请选择属性指标",b.operator="",b.property&&g.info.id!=b.property&&(b.tarrefresh=++rmd,b.targetinit=-1,a||(b.name="",e="")),$scope.getAttrByEvent(h,function(a){var c=a.filter(function(a){return g.info.id==a.id}),d=$scope.kpiList.filter(function(a){return a.viewType==c[0].type||"all"==a.viewType});b.targetList=d,b.targetShow=!0},1),b.property=g.info.id,d=g.info.name,a||(b.name=e?c+d+e:""))}),$scope.$on(b.targetId,function(f,g){b.operator=g.info.id,b.targetShow=!0,e=g.info.name,a||(b.name=c+d+g.info.name)})}(b),$scope.currentEvent.push(b)}},$scope.getEventParamsNum=function(a){return a&&a.params?a.params.filter(function(a){return 0!=a.show}).length:$scope.maxparams},$scope.getEventNum=function(a){return $scope.currentEvent.filter(function(a){return 0!=a.show}).length},$scope.getGroupByNum=function(a){return $scope.groupbys.filter(function(a){return 0!=a.show}).length},$scope.addEventParams=function(a,b){if(!a||!a.params||$scope.getEventParamsNum(a)>=$scope.maxparams)return!1;rmd++;var c={id:"pam_"+rmd,pid:"param_"+rmd};if(b)for(var d in b)c[d]=b[d];$scope.event.params.push(c)},$scope.removeEvent=function(a){for(var b=0;b<$scope.currentEvent.length;b++)if($scope.currentEvent[b].id==a.id){$scope.currentEvent[b].show=!1;break}$scope.eventLen=$scope.groupbys.length-1},$scope.removeGroupby=function(a){for(var b=0;b<$scope.groupbys.length;b++)if($scope.groupbys[b].id==a.id){$scope.groupbys[b].show=!1;break}},$scope.removeEventParams=function(a,b){for(var c=0;c<a.params.length;c++)if(a.params[c].id==b.id){a.params[c].show=!1;break}},$scope.$on("event",function(a,b){for(var c=$scope.event.params,d=0;d<c.length;d++)if(c[d].id==b.id){c[d]=b;break}}),$scope.nameWin=function(a){if($scope.getReportEventInfo().hasNull)return ToolService.hideLoading(),ToolService.showTips($scope.formTipMsg),!1;ToolService.showAlp(),$scope.wantSave=!0,$scope.currentDefine={},$scope.ename="",$scope.isotherSave=!1,angular.isDefined(a)&&($scope.currentDefine={id:0},$scope.isotherSave=!0)},$scope.lookReport=function(){var a=$scope.getReportEventInfo(),b="";if(a.hasNull)return ToolService.showTips($scope.formTipMsg),!1;b=JSON.stringify(a),UtilService.setItem($scope.appid,b),$scope.isShowCache=!0,$scope.query(b)},$scope.closeWin=function(a){$scope.wantSave=!1,$scope.wantDelete=!1,a&&2==a&&$scope.isotherSave&&($scope.currentDefine=$scope.define),ToolService.hideAlp()},$scope.getReportEventInfo=function(){var a=!1,b=[],c=[],d={relation:$scope.eventRel,params:[]};return $scope.currentEvent.filter(function(c){if(c.show){var d={};if(c.expression){d.expressionName=c.expressionName,d.format=c.formatId?c.formatId:"int",d.expression=c.expression;var e=c.expressionName.match(/[\+\-\*\/]/g);c.extip=e&&e.length>5?"表达式最多可输入5个运算符(运算符包括+-*/)":"",c.expressionName&&$scope.expresstionTransform(c),c.error=!(!c.error&&c.expressionName&&!c.extip)}else{var f=$scope.eventList.filter(function(a){return a.id==c.event});d.attr=c.property,d.event=c.event,d.operator=c.operator,c.proerror=!(!c.property&&c.operator||c.property),c.eventerror=!(f.length>0&&c.event),c.tarerror=!c.operator}d.name=c.name;var g={name:{key:"spcname",val:c.name}};c.tip=formJudge(g),c.nameerror=!c.name||!c.tip.succ;var h=$scope.currentEvent.filter(function(a){return a.name==c.name&&a.id!=c.id&&a.show});h&&h.length>0&&(c.nameerror=!0),(c.nameerror||c.error||c.proerror||c.eventerror||c.tarerror)&&(a=!0),b.push(d)}}),$scope.groupbys.filter(function(b){if(b.show){var d={};d.name=b.dimenId,d.type=b.type,b.groerror=!b.dimenId;var e=$scope.groupbys.filter(function(a){return a.dimenId==b.dimenId&&a.id!=b.id&&a.show&&b.type==a.type});e&&e.length>0&&(b.groerror=!0),b.groerror&&(a=!0),c.push(d)}}),d.expressions=b,d.group=c,$scope.event.params.filter(function(b){if(0!=b.show){UtilService.isNullStr(b.attr)&&($scope.$broadcast(b.id,"error"),a=!0);var c={};for(var e in b)"id"!=e&&"pid"!=e&&(c[e]="value"!=e?b[e]:b[e].join(","),UtilService.isNullStr(b[e])&&($scope.$broadcast(b.id,"error"),a=!0));d.params.push(c)}}),(a||!$scope.ename&&$scope.currentDefine.id)&&(d.hasNull=!0),$scope.enameerror=!($scope.ename||!$scope.currentDefine.id),d},$scope.save=function(a){var b=function(){var b={name:$scope.ename,app:$scope.appid},c=$scope.getReportEventInfo();if(c.hasNull)return ToolService.showTips($scope.formTipMsg),!1;b.eventName=c.event,b.eventCondition=JSON.stringify(c);var d=null,e="添加成功";$scope.currentDefine.id&&2!=a?(b.id=$scope.currentDefine.id,d=HttpService.putInfo("mng/eventstats/complicated/update",b),e="修改成功"):d=HttpService.postInfo("mng/eventstats/complicated/create",b),ToolService.showLoading(),d.then(function(b){$scope.closeWin(1),ToolService.hideLoading(),ToolService.showTips(e),$scope.currentDefine.id&&2!=a?($scope.queryInfoByApp(2,$scope.currentDefine.id),$scope.currentDefine={}):($scope.queryInfoByApp(1),$scope.isShowCache&&localStorage.removeItem($scope.appid))})},c={name:{key:"spcname",val:$scope.ename}};if($scope.tip=formJudge(c),UtilService.isNullStr($scope.ename)||1!=$scope.tip.succ)return ToolService.showTips("事件分析名称请输入20个汉字以内名称,允许字符为中英文数字_-"),!1;ToolService.showLoading(),HttpService.getInfo("mng/eventstats/checkName/"+$scope.appid,{eventStatsName:$scope.ename}).then(function(c){1==c||$scope.currentDefine.id&&$scope.define.name==$scope.ename&&2!=a?b():(ToolService.hideLoading(),ToolService.showTips("事件分析名称已存在"))})},$scope.eventChartConfig={color:ToolService.getTenColors(),namesub:[]},$scope.lsChange=rmd,$scope.$on("flipinfo",function(a,b){$scope.flipPage=b,$scope.lsChange++}),$scope.showTempLook=!1,$scope.rateList=[],$scope.rateListed=[],$scope.group_List=[],$scope.grouped_List=[],$scope.istranfer=!1,$scope.ispercent=!1,$scope.isshowTotal=!1,$scope.percentPre="rate_";var queryParams={};$scope.chartList=[{id:"line",name:"折线图",platform:"line"},{id:"columnstack",name:"柱状图",platform:"columnstack"},{id:"pie",name:"饼状图",platform:"pie"}],$scope.chartTypeInit="line";var numIndexs=["一","二","三","四","五","六","七","八","九","十"];$scope.query=function(a){$scope.showEventWin=!1,$scope.rateFlag=1;var b=ToolService.getParams($scope);b.datatype="list",b.viewflag=$scope.timeFlag;var c=null,d="事件分析";if(a)b.eventCondition=a,$scope.showTempLook=!0,d+=$scope.getTrendTitle();else{var e=UtilService.getItem($scope.appid);b.eventCondition=$scope.isShowCache?e:$scope.define.eventCondition,$scope.showTempLook=!!$scope.isShowCache,c=$scope.define.id,d+="-"+$scope.define.name}b.eventCondition=encodeURIComponent(b.eventCondition),queryParams=b,$scope.totalList=[],$scope.eventChartLoading=!0,$scope.chartListLoading=!0;var f="eventstats/complicated/query/"+$scope.appid;HttpService.getInfo(f,b).then(function(a){var e=a.format,g={};e.filter(function(a){g[a.field]=a.format}),a.format=g,$scope.trendList=a,$scope.totalList=a.totalval,$scope.infoList=a.val,$scope.eventChartLoading=!1,$scope.rateList=a.selectfield,$scope.totalVal={},$scope.rateList.filter(function(a){$scope.totalList.filter(function(b){$scope.totalVal[a]||($scope.totalVal[a]=0),$scope.totalVal[a]+=b[a]})}),$scope.group_List=$scope.getGroupNames(a.groupfield),$scope.grouplen=a.groupfield.length,$scope.infoList.length>0?($scope.limit(),0==$scope.group_List.length&&($scope.ispercent=!1),$scope.changeChartData($scope.chartType)):$scope.myChartData=ToolService.noDataChart(),$scope.sortCol="",$scope.sortCol1="",$scope.chartListLoading=!1,$scope.istranfer?$scope.transformList():($scope.pageAllList=$scope.infoList,$timeout(function(){$scope.listkey&&($scope.reverse1=!0,$scope.order($scope.listkey[0],!0,0))},300));var h=JSON.parse(decodeURIComponent(b.eventCondition)).expressions,i=[];++rmd,h.filter(function(a,b){a.id=a.orderindex=rmd+b,a.indexname=numIndexs[b],i.push(a)}),$scope.condList=i,$scope.myChartDataCondition=ToolService.getChartConditions(d,f,b,"complicatedevents",c)},function(a){$scope.myChartData=ToolService.noDataChart(),$scope.infoList=[],$scope.totalList=[],$scope.eventChartLoading=!1,$scope.chartListLoading=!1})},$scope.$on("chartTypeId",function(a,b){$scope.trendList&&($scope.chartType=b.info.id,$scope.chartTypeInit=$scope.chartType,$scope.changeChartData())}),$scope.limit=function(){$scope.chartType=0==$scope.group_List.length&&"pie"==$scope.chartType?"line":$scope.chartType,$scope.chartTypeInit=$scope.chartType,"line"==$scope.chartType?($scope.rateListed=$scope.rateList.slice(0,1),$scope.grouped_List=$scope.group_List.slice(0,5),$scope.grouped_List.length<2&&($scope.rateListed=$scope.rateList.slice(0,5))):"columnstack"==$scope.chartType?($scope.rateListed=$scope.rateList.slice(0,2),$scope.grouped_List=$scope.group_List.slice(0,3)):($scope.rateListed=$scope.rateList.slice(0,2),$scope.grouped_List=$scope.group_List.slice(0))},$scope.chartType="line",$scope.getGroupNames=function(a){var b=[],c=[];if(0==a.length){var d=$scope.trendList.groupfield.length>0;$scope.trendList.val.filter(function(a,b){var e={};d||(e=a),a.firstDateRow&&(e.ds=a.ds,e.groupnames=a.ds,d?e.children=$scope.trendList.val.slice(b,b+a.rowNum):(e.rsnum=1,e.isrs=!0),c.push(e))})}else $scope.trendList.val.filter(function(d,e){var f=[],g={};a.filter(function(a){f.push(d[a])});var h=f.join(","),i=b.indexOf(h);d.groupnames=h,-1==i&&b.push(h),d.firstDateRow&&(g.ds=d.ds,g.groupnames=h,g.children=$scope.trendList.val.slice(e,e+d.rowNum),c.push(g))});return $scope.detailAllList=c,$scope.istranfer?$scope.transformList():$scope.lsChange++,b},$scope.$watch("lsChange",function(){if($scope.flipPage&&$scope.detailAllList){var a=$scope.flipPage.start+1,b=$scope.flipPage.end-1,c=$scope.flipPage.pagen,d=[],e=0,f=null,g=[];if($scope.istranfer?(g=$scope.transfromAllList,$scope.listname=$scope.transformTitle.name,$scope.listkey=$scope.transformTitle.key):(g=$scope.detailAllList,$scope.listname=$scope.trendList.name,$scope.listkey=$scope.trendList.columnkey),$scope.trendList.groupfield.length>0){for(var h=0;h<g.length;h++)for(var i=g[h].children,j=0,k=0;k<i.length&&(e>$scope.flipPage.start&&e<$scope.flipPage.end&&(0==j?(f=i[k],f.rsnum=0,f.isrs=!0):i[k].isrs=!1,j++,f.rsnum++,d.push(i[k])),e++,c!=d.length);k++);$scope.currentDetailList=d}else $scope.currentDetailList=g.slice(a,b)}else $scope.currentDetailList=[]});var refreshList=function(){$scope.flipPage.start>5?$scope.listf5=++rmd:$scope.lsChange++};$scope.changeFlag=function(a){1==a?($scope.istranfer=!$scope.istranfer,0==$scope.group_List.length&&($scope.ispercent=!1),$scope.istranfer?$scope.transformList():($scope.pageAllList=$scope.infoList,refreshList())):$scope.ispercent=!$scope.ispercent},$scope.transformList=function(){var a=[],b=$scope.trendList.name.slice(1,$scope.trendList.groupfield.length+1),c=$scope.trendList.groupfield.slice(0);b.push("指标"),c.push("_myzb"),b.push("合计"),c.push("_total");var d={},e=[];$scope.trendList.key.filter(function(a,e){b.push(a),c.push("_ds"+(e+1)),d["_ds"+(e+1)]=0}),$scope.totalList.filter(function(b){var c=[],f={children:[]};$scope.trendList.groupfield.filter(function(a){c.push(b[a]),f[a]=b[a]}),f.groupnames=c.join(","),f.rsnum=$scope.trendList.selectfield.length,$scope.trendList.selectfield.filter(function(g){var h=UtilService.cloneJSON(f);h._myzb=g,h._total=b[g];for(var i in d)h[i]=d[i];if(c.length>0){var j=0;$scope.detailAllList.filter(function(a){a.children.filter(function(b){if(f.groupnames==b.groupnames){var c=$scope.trendList.key.indexOf(a.ds),d=b[g],e=0;h["_ds"+(c+1)]=d,0!=j&&(e=(d-j)/j*100),j=d,h["rate__ds"+(c+1)]=e}})}),f.children.push(h),e.push(h)}else{var j=0;$scope.detailAllList.filter(function(a){var b=$scope.trendList.key.indexOf(a.ds),c=a[g],d=0;h["_ds"+(b+1)]=c,0!=j&&(d=(c-j)/j*100),j=c,h["_ds"+(b+1)]=a[g],h["rate__ds"+(b+1)]=d}),a.push(h),e.push(h)}}),c.length>0&&a.push(f)}),$scope.transformTitle={key:c,name:b},$scope.transfromAllList=a,$scope.pageAllList=e,refreshList()},$scope.checkAll=function(){$scope.ischeckall=!$scope.ischeckall,$scope.grouped_List=$scope.ischeckall?UtilService.cloneJSON($scope.group_List):[],$scope.changeChartData()},$scope.changeRate=function(a){if(!$scope.canAdd(1,a))return!1;var b=$scope.rateListed.indexOf(a);b>-1?$scope.rateListed.splice(b,1):$scope.rateListed.push(a),$scope.changeChartData()},$scope.changeGroup=function(a){if(!$scope.canAdd(2,a))return!1;var b=$scope.grouped_List.indexOf(a);b>-1?$scope.grouped_List.splice(b,1):$scope.grouped_List.push(a),$scope.changeChartData()};var lengedMax=10;$scope.canAdd=function(a,b){var c=[];if(c=1==a?$scope.rateListed:$scope.grouped_List,-1==c.indexOf(b)){var d=$scope.rateListed.length,e=$scope.grouped_List.length;return"line"==$scope.chartType?1==a?(d+1)*e<=lengedMax:d*(e+1)<=lengedMax:1==a?d+1<=("columnstack"==$scope.chartType?3:2):e+1<=("columnstack"==$scope.chartType?5:$scope.group_List.length)}return!0},$scope.changeChartData=function(){$scope.eventChartConfig.namesub=[];var a=$scope.trendList.key,b={key:a,val:[],name:[],rmd:++rmd},c=[];if(a.filter(function(a,b){c.push(0)}),"pie"==$scope.chartType){$scope.ischeckall=$scope.group_List.length==$scope.grouped_List.length,$scope.eventChartConfig.flag=!1,$scope.rateListed.length>2&&($scope.rateListed=$scope.rateListed.slice(0,2));var d={},e=UtilService.cloneJSON($scope.grouped_List);$scope.rateListed.filter(function(a){var b=[],c=0;$scope.grouped_List.filter(function(d){$scope.totalList.filter(function(e){var f="";$scope.trendList.groupfield.filter(function(a){f+=e[a]+","}),d==f.slice(0,-1)&&(b.push(e[a]),c+=e[a])})}),e.indexOf("其他")>-1&&e.splice(e.indexOf("其他"),1),$scope.totalVal[a]-c>0&&$scope.group_List.length>0&&(b.push($scope.totalVal[a]-c),e.push("其他")),d[a]=b}),$scope.myChartData.key=$scope.rateListed,$scope.myChartData.name=e,angular.equals({},d)?$scope.myChartData.val=[]:$scope.myChartData.val=[d]}else{if("columnstack"==$scope.chartType)$scope.eventChartConfig.flag=!0,$scope.grouped_List.length>5&&($scope.grouped_List=$scope.grouped_List.slice(0,5));else{$scope.eventChartConfig.flag=!1;var f=1==$scope.rateListed.length?10:$scope.rateListed.length>2?3:5;$scope.grouped_List=$scope.grouped_List.slice(0,f)}$scope.eventChartConfig.namesub=[],$scope.trendList.val.filter(function(d){var e=d.ds,f=d.groupnames;if($scope.grouped_List.indexOf(f)>-1||0==$scope.grouped_List.length){var g=a.indexOf(e);$scope.rateListed.filter(function(a){var e=$scope.trendList.format[a],h=f+a;0==$scope.grouped_List.length&&(h=a.substring(1));var i=b.name.indexOf(h),j=[];-1==i?(b.name.push(h),$scope.eventChartConfig.namesub.push("percent"==e?"%":""),j=UtilService.cloneJSON(c),b.val.push(j)):j=b.val[i];var k=Number(d[a]);k="percent"==e?UtilService.decimal2(100*k,2):"int"==e?Math.round(k):UtilService.decimal2(k,2),j[g]=k})}}),$scope.myChartData=b}},$scope.substrName=function(a){return a.substring(1)};var orderBy=$filter("orderBy");$scope.sortCol="",$scope.sortCol1="",$scope.order=function(a,b,c){var d=!1;d=!!($scope.istranfer&&c<$scope.trendList.groupfield.length)||0==c;var e=[];e=$scope.istranfer?$scope.transfromAllList:$scope.detailAllList,d||0!=$scope.trendList.groupfield.length?d?($scope.sortCol1=a,$scope.mysort(e,a,b)):($scope.sortCol=a,$scope.mysort($scope.totalList,a,b),e.filter(function(c){$scope.mysort(c.children,a,b)})):($scope.sortCol=a,$scope.mysort(e,a,b)),refreshList()},$scope.mysort=function(a,b,c){1==c?a.sort(function(a,c){return a[b]==c[b]?0:a[b]>c[b]?-1:1}):a.sort(function(a,c){return a[b]==c[b]?0:a[b]>c[b]?1:-1})},$scope.$watch("appid+defineFlag+timeFlag+date.startDate+date.endDate",function(a){angular.isDefined($scope.appid)&&(angular.isDefined($scope.defineFlag)||$scope.isShowCache)&&$scope.query()}),$scope.$watch("appid",function(a){angular.isDefined(a)&&($scope.lengedNames=[],$scope.defineFlag=void 0,$scope.queryInfoByApp(5))});var haschangeOrder=!1;$scope.showOrderList=function(){$scope.showOrderWin=!0,haschangeOrder=!1,ToolService.showAlp()},$scope.closeOrder=function(){$scope.showOrderWin=!1,ToolService.hideAlp()},$scope.okOrderWin=function(){if($scope.closeOrder(),!haschangeOrder)return!1;ToolService.showLoading();var a=JSON.parse(decodeURIComponent($scope.define.eventCondition));$scope.condList.filter(function(a){delete a.id,delete a.orderindex,delete a.indexname}),a.expressions=$scope.condList;var b={name:$scope.define.name,app:$scope.appid,id:$scope.define.id,eventCondition:JSON.stringify(a)};HttpService.putInfo("mng/eventstats/complicated/update",b).then(function(a){ToolService.hideLoading(),$scope.queryInfoByApp(2,$scope.define.id)})},$scope.$on("dragorder",function(a,b){var c=b.id,d=b.index,e=0,f=0;$scope.condList.filter(function(a,b){a.id===c&&(e=b),a.id===d&&(f=b)});var g=UtilService.cloneJSON($scope.condList);if(e>0||f>0){var h=UtilService.cloneJSON(g[f]);g.splice(f,1,g[e]),g.splice(e,1,h)}++rmd,g.filter(function(a,b){a.id=a.orderindex=rmd+b,a.indexname=numIndexs[b]}),$scope.$apply(function(){$scope.condList=g}),haschangeOrder=!0})}angular.module("app.collect").controller("eventstatsCtrl",["$scope","$rootScope","HttpService","ToolService","UtilService","$filter","$timeout","$stateParams","$q",eventstatsCtrl]),String.prototype.visualLength=function(){var a=$("#ruler");return a.text(this),a.width()};var sectionTool={getCursortPosition:function(a){var b=0;if(document.selection){a.focus();var c=document.selection.createRange();c.moveStart("character",-a.value.length),b=c.text.length}else(a.selectionStart||"0"==a.selectionStart)&&(b=a.selectionStart);return b},setCaretPosition:function(a,b){if(a.setSelectionRange)a.focus(),a.setSelectionRange(b,b);else if(a.createTextRange){var c=a.createTextRange();c.collapse(!0),c.moveEnd("character",b),c.moveStart("character",b),c.select()}},insertAfterText:function(a,b){var c;if(document.selection)a.focus(),c=document.selection.createRange(),c.text=b,a.focus();else if(a.selectionStart||"0"==a.selectionStart){var d=a.selectionStart,e=a.selectionEnd,f=a.scrollTop;a.value=a.value.substring(0,d)+b+a.value.substring(e,a.value.length),a.focus(),a.selectionStart=d+b.length,a.selectionEnd=d+b.length,a.scrollTop=f}else a.value+=b,a.focus()}}}(),function(){function a(a,b,c,d,e,f,g,h,i,j){b.pageId=g.pageid,b.viewFlag=1,null!=b.pageId&&(b.viewFlag=0),b.menuInit=b.pageId;var k=!0;b.pageId&&(k=!1);var l=(new Date).getTime();b.$on("industryId",function(a,c){"all"==c.info.id?(b.industryInitName="",b.industryInit="all"):(b.industryInitName=c.info.name,b.industryInit=c.info.id)}),b.$on("menuId",function(a,c){b.menuDetail(c.info)}),b.timeFlag="day",b.disTimeFlag=["hour"],b.changeTimeFlag=function(a){if(b.disTimeFlag.indexOf(a)>-1)return!1;b.timeFlag=a},b.changeViewFlag=function(c){if(b.viewFlag==c)return!1;a.thirdtab=["","我的看单","我的收藏","行业看单模板"][c],b.viewFlag=c,b.lookMyMenu()},b.pageFlag=0,b.addReyunMenu=function(){var a=c.postInfo("custommenu/addReyun/"+b.appid);d.showLoading(),a.then(function(a){d.hideLoading(),a.length>0?(b.pageFlag=2,b.reyunList=a,b.$emit("f5CtmMenus",{})):-6002==a.code?d.showTips("请集成sdk并上报数据"):d.showTips("操作失败")})},b.date=d.getLastDays(-7,0),b.$on("dateCustos",function(a,c){c.startDate==c.endDate?b.disTimeFlag=["week","month"]:b.disTimeFlag=["hour"],b.disTimeFlag.indexOf(b.timeFlag)>-1&&(b.timeFlag="day"),b.date=c}),b.$watch("date",function(){angular.isDefined(b.date)&&(b.datestr=b.date.startDate+"至"+b.date.endDate)});var m=null;b.lookMyMenu=function(a){a&&2==a&&(b.viewFlag=1),b.closeWin(),d.showLoading();var e="";if(b.searchTxt="",b.orderFlag=0,b.industryList=[],0==b.industryList.length){c.getInfo("custommenu/industry").then(function(a){a.filter(function(a){var c={};c.id=a.category,c.name=a.categoryName,b.industryList.push(c)}),b.industryList.unshift({id:"all",name:"全部行业"}),b.industryInit=43==b.appInstance.appGenre||64==b.appInstance.appGenre?b.appInstance.appGenre:"all",b.industryInitName=43==b.appInstance.appGenreName||64==b.appInstance.appGenreName?b.appInstance.appGenreName:"全部行业"})}switch(b.viewFlag){case 2:e="custommenu/findFavo/"+b.appid;break;case 3:e="custommenu/findShare/"+b.appid;break;case 1:default:e="custommenu/findMy/"+b.appid}b.menuInfoList=[],c.getInfo(e).then(function(c){if(b.menuInfoList=c,null!=b.pageId){var e=b.menuInfoList.filter(function(a){return a.id==b.pageId});e.length>0&&b.menuDetail(e[0]),b.viewFlag=1}a&&1==a&&b.menuDetail(c.slice(-1)[0]),d.hideLoading()}),null==m&&b.queryInfoByApp(),b.pageFlag=3},b.menuDetail=function(c){b.pageFlag=4,b.currentMenu=c,b.changeMatchFlag(0),1==b.viewFlag&&(a.thirdtab=c.name),b.menuInit==c.id?b.query():b.menuInit=c.id},b.orderFlag=0,b.menuOrder=function(a){switch(b.orderFlag=a,a){case 2:b.menuInfoList.sort(function(a,b){return a.matchPercent==b.matchPercent?0:a.matchPercent>b.matchPercent?-1:1});break;case 3:b.menuInfoList.sort(function(a,b){return a.useNumber==b.useNumber?0:a.useNumber>b.useNumber?-1:1});break;case 4:b.menuInfoList.sort(function(a,b){return a.favoriteNumber==b.favoriteNumber?0:a.favoriteNumber>b.favoriteNumber?-1:1});break;case 1:default:b.menuInfoList.sort(function(a,b){return a.id==b.id?0:a.id>b.id?-1:1})}},b.backToMenu=function(){if(2==b.viewFlag&&!b.currentMenu.hasFavorite)for(var a=0;a<b.menuInfoList.length;a++){var c=b.menuInfoList[a];if(c.id==b.currentMenu.id){b.menuInfoList.splice(a,1);break}}1==b.viewFlag&&j.path("/collect/custommenu"),b.pageFlag=3},b.typeInitname="请选择",b.$on("typeId",function(a,c){b.customTypeId=c.info.id}),b.customTypeFlag=0,b.changeCustomFlag=function(a){if(b.customTypeFlag==a)return!1;switch(b.customTypeFlag=a,a){case 2:b.typeList=b.retentionList;break;case 3:b.typeList=b.funnelList;break;case 1:default:b.typeList=b.eventstatsList}if(b.typeList.length>0){var c=b.typeList[0].id;b.typeinit==c?b.typef5=++l:b.typeinit=c}else b.customTypeId=b.typeinit=-1},b.showDetail=function(a){d.showAlp(),b.detailInfo=JSON.parse(a.info.descb),b.custitle=a.info.name+("funnel"==a.info.menuType?"漏斗":"retention"==a.info.menuType?"留存":""),b.isdetail=!0,angular.element(document).on("click",function(){b.$apply(function(){b.hideDetail()})})},b.hideDetail=function(){d.hideAlp(),b.isdetail=!1},b.maxMenu=10,b.maxReport=16,b.winFlag=0;var n="";b.showWin=function(a,c){if(1==a&&b.menuInfoList&&b.menuInfoList.length>=b.maxMenu)return!1;if(6==a&&b.currentMenu&&b.currentMenu.templates&&b.currentMenu.templates.length>=b.maxReport)return d.showTips("每个看单最多支持"+b.maxReport+"个图表"),!1;var e=!0;switch(a){case 1:b.ename=n="";break;case 2:b.ename=n=c.name,b.winId=c.id;break;case 4:b.shareMenu=c,(!c.templates||c.templates.length<1)&&(d.showTips("请添加报表后再分享"),e=!1),b.mname=c.name,b.winId=c.id;break;case 3:case 7:b.delname=c.name,b.winId=c.id;break;case 6:c&&(b.currentMenu=c,b.changeMatchFlag(0)),b.changeCustomFlag(1)}e&&(d.showAlp(),b.winFlag=a)},b.closeWin=function(a){d.hideAlp(),b.winFlag=0,1==a&&(b.matchFlag=0)},b.getMaxTips=function(){return b.chartDatas&&b.chartDatas.length>=b.maxReport?"每个看单最多支持"+b.maxReport+"个图表":""},b.doFavorite=function(){var a=null,f=0,g=b.currentMenu.id;e.isNullStr(b.currentMenu.shareId)||(g=b.currentMenu.shareId),0==b.currentMenu.hasFavorite?(a=c.postInfo("custommenu/addFavorite/"+b.appid+"/"+g),f=1):(a=c.deleteInfo("custommenu/delFavorite/"+b.appid+"/"+g),f=-1),d.showLoading(),a.then(function(a){d.hideLoading(),1==a?(b.currentMenu.favoriteNumber+=f,b.currentMenu.hasFavorite=f>0,d.showTips("操作成功")):d.showTips("操作失败")})},b.doFavoriteByMenu=function(a){var e=c.deleteInfo("custommenu/delFavorite/"+b.appid+"/"+a.shareId);d.showLoading(),e.then(function(c){d.hideLoading(),1==c?(b.menuInfoList.filter(function(c,d){c.id==a.id&&b.menuInfoList.splice(d,1)}),d.showTips("操作成功")):d.showTips("操作失败")})},b.doShare=function(a){if(angular.isUndefined(a)){d.showLoading();var e=c.postInfo("custommenu/share/"+b.appid+"/"+b.winId);e.then(function(a){b.closeWin(),d.hideLoading(),1==a?(d.showTips("分享成功"),b.shareMenu.hasShare=!0):d.showTips("分享失败")})}else{var e=c.deleteInfo("custommenu/cancelShare/"+b.appid+"/"+a.id);d.showLoading(),e.then(function(b){d.hideLoading(),1==b?(d.showTips("取消成功"),a.hasShare=!1):d.showTips("取消失败")})}},b.saveMenu=function(){var a={name:{min:1,max:24,key:"spcname",val:b.ename}};if(b.tip=formJudge(a),e.isNullStr(b.ename)||1!=b.tip.succ)return d.showTips("请输入12个汉字以内名称,允许字符为中英文数字_-"),!1;var f=null,g="添加成功",h=1;if(2==b.winFlag){if(angular.lowercase(n)==angular.lowercase(b.ename))return b.closeWin(),!1;f=c.putInfo("custommenu/updateName/"+b.appid+"/"+b.winId+"?name="+b.ename,{}),g="修改成功",h=0}else f=c.postInfo("custommenu/saveMenu/"+b.appid+"?name="+b.ename,{});d.showLoading(),f.then(function(a){d.hideLoading(),-6001==a.code?d.showTips("名称已存在"):-300==a.code?d.showTips("最多支持"+b.maxMenu+"个看单"):(b.closeWin(),d.showTips(g),b.lookMyMenu(h),b.$emit("f5CtmMenus",{}))},function(a){d.hideLoading(),-6001==a.code?d.showTips("名称已存在"):d.showTips(a.message)})},b.addReport=function(){if(!b.customTypeId||b.customTypeId<1)return d.showTips("请选择模板"),!1;var a={menuType:["eventstats","retention","funnel"][b.customTypeFlag-1], -originalReportId:b.customTypeId},e=c.postInfo("custommenu/addTemp/"+b.appid+"/"+b.currentMenu.id,a);d.showLoading(),e.then(function(a){d.hideLoading(),-6e3==a.code?d.showTips("本看单中已存在该图表,请重新选择。"):-300==a.code?d.showTips("每个看单最多支持"+b.maxReport+"个图表"):(1==b.viewFlag&&(b.pageFlag=4,b.goToCustom(b.currentMenu.id)),b.closeWin(),d.showTips("添加成功"),b.query(a),b.currentMenu.templates.push(a))})},b.getEventTypeCount=function(a){var b=0,c=0,d=0;return a.filter(function(a){"eventstats"==a.menuType?b++:"retention"==a.menuType?c++:"funnel"==a.menuType&&d++}),b+"个事件细分,"+c+"个留存,"+d+"个漏斗"},b.getShareName=function(a){return a.accountId==b.currentAccountId?"来自我的分享":"来自“"+a.accountName+"”的分享"},b.reportDetail=function(a){h.go("collect."+a.menuType,{pageid:a.originalReportId})},b.getTipWidth=function(a){return 1==a.tooltipChart.length?{width:3==b.showCount?"300px":"400px"}:2==a.tooltipChart.length?{width:3==b.showCount?"120px":"200px"}:{width:3==b.showCount?"70px":"90px"}},b.doDelete=function(a){b.closeWin(),d.showLoading();var e=null;3==a?e=c.deleteInfo("custommenu/delMenu/"+b.appid+"/"+b.winId):7==a&&(e=c.deleteInfo("custommenu/delTemp/"+b.winId)),null!=e&&e.then(function(){d.showTips("删除成功"),d.hideLoading(),7==a?b.currentMenu.templates.filter(function(a,c){a.id==b.winId&&(b.currentMenu.templates.splice(c,1),b.chartDatas.splice(c,1))}):(b.lookMyMenu(),b.$emit("f5CtmMenus",{}))})},b.matchFlag=0,b.changeMatchFlag=function(a){return b.showEditEvent?(b.showEditEvent=!1,!1):0==a?(b.matchFlag=0,!1):(b.matchFlag=a,void b.currentMenu.templates.filter(function(a){var c=JSON.parse(a.queryCondition);if("eventstats"==a.menuType)a.isMatch=c.eventMatch,a.eventname=b.getEventName(c.event);else{a.isMatch=!0;var d=[];c.filter(function(c){c.eventMatch||(a.isMatch=!1);var e=b.getEventName(c.event);""!=e&&d.push(e)}),d.length>2&&!a.isMatch||0==d.length?a.eventname="事件不匹配":d.length>2&&a.isMatch?a.eventname="事件全匹配":a.eventname=d.join(",")}a.jsonCondition=c}))},b.editTemplateEvent=function(a,c){b.currentTemplate=a,b.tempIndex=c,b.showEditEvent=!0},b.canJoin=function(){if(!b.currentMenu)return!1;var a=!0;return b.currentMenu.templates.filter(function(a){return 0==a.isMatch}).length>0&&(a=!1),a},b.getEventName=function(a){if(!b.eventList)return"";for(var c=a,d=0;d<b.eventList.length;d++)if(a==b.eventList[d].eventName){c=b.eventList[d].eventNameAlias;break}return c},b.addShareMenu=function(){if(!b.canJoin())return!1;var a={name:b.currentMenu.name,templates:[],id:b.currentMenu.id};2==b.viewFlag&&(a.id=b.currentMenu.shareId),b.currentMenu.templates.filter(function(b){var c=b.queryCondition,d=[];if("funnel"==b.menuType){JSON.parse(c).filter(function(a){d.push(a.event)})}a.templates.push({id:b.id,menuType:b.menuType,queryCondition:c,name:b.name,events:d.join(",")})});var e=c.postInfo("custommenu/addMenu/"+b.appid,a);d.showLoading(),e.then(function(a){d.hideLoading(),a.length>0?(b.$emit("f5CtmMenus",{}),b.changeMatchFlag(0),b.showWin(5)):a.code&&-300==a.code?d.showTips("您的账号仅支持创建"+b.maxMenu+"个看单,如需增加,请联系商务"):d.showTips("加入失败")})},b.$on("matchok",function(a,c){b.currentMenu.templates[b.tempIndex].queryCondition=JSON.stringify(c.info),b.currentMenu.templates[b.tempIndex].isMatch=!0,c.names.length>2?b.currentMenu.templates[b.tempIndex].eventname="事件全匹配":b.currentMenu.templates[b.tempIndex].eventname=c.names.join(","),b.showEditEvent=!1}),b.queryInfoByApp=function(){b.pageFlag=3,m=c.getInfo(b.appid+"/event/find"),m.then(function(a){b.eventList=a}),f(function(){if(b.showMenu("eventstats")){c.getInfo("mng/eventstats/complicated/findAll/"+b.appid).then(function(a){b.eventstatsList=a})}else b.eventstatsList=[];if(b.showMenu("retention")){c.getInfo("mng/retention/find/"+b.appid).then(function(a){b.retentionList=a})}else b.retentionList=[];if(b.showMenu("funnel")){c.getInfo("funnel/find/"+b.appid).then(function(a){b.funnelList=a})}else b.funnelList=[]},300)},b.changeChartData=function(a){a.tooltipChart=[];var c=a.trendList.key,f={key:c,val:[],name:[],rmd:++l},g=[];if(c.filter(function(a,b){g.push(0)}),"pie"==a.charts.chartType){a.ischeckall=a.group_List.length==a.grouped_List.length,a.charts.chartConfig.flag=!1,a.rateListed.length>2&&(a.rateListed=a.rateListed.slice(0,2));var h={},i=e.cloneJSON(a.grouped_List);a.rateListed.filter(function(b){var c=[],d=0;a.grouped_List.filter(function(e){a.totalList.filter(function(f){var g="";a.trendList.groupfield.filter(function(a){g+=f[a]+","}),e==g.slice(0,-1)&&(c.push(f[b]),d+=f[b])})}),i.indexOf("其他")>-1&&i.splice(i.indexOf("其他"),1),a.totalVal[b]-d>0&&a.group_List.length>0&&(c.push(a.totalVal[b]-d),i.push("其他")),h[b]=c}),a.charts.chartData.key=a.rateListed,a.charts.chartData.name=i,angular.equals({},h)?a.charts.chartData.val=[]:a.charts.chartData.val=[h]}else if("table"==a.charts.chartType){a.grouplen>0&&(a.trendList.name=a.trendList.name.slice(a.grouplen+1),a.trendList.columnkey=a.trendList.columnkey.slice(a.grouplen+1),a.trendList.columnkey.unshift("groupnames"),a.trendList.name.unshift("分组"),b.mysort(a.infoList,a.trendList.columnkey[1],!0));var j=[],k=[];a.rateListed.filter(function(a){j.push(b.substrName(a))}),j.length>0&&(j.unshift(a.trendList.name[0]),k=e.cloneJSON(a.rateListed),k.unshift(a.trendList.columnkey[0]),a.trendList.name=j,a.trendList.columnkey=k),a.colsStyle=d.getTableColsWidth(a.trendList.name,b.timeFlag,b.showCount),a.fixrefresh=++l}else{if("columnstack"==a.charts.chartType)a.charts.chartConfig.flag=a.group_List.length>0?"hasGro":"nohasGro",a.grouped_List.length>5&&(a.grouped_List=a.grouped_List.slice(0,5)),a.rateListed.length>2&&(a.rateListed=a.rateListed.slice(0,2));else{a.charts.chartConfig.flag=!1,a.rateListed.length>4&&(a.rateListed=a.rateListed.slice(0,4));var m=1==a.rateListed.length?4:2;a.grouped_List=a.grouped_List.slice(0,m)}a.charts.chartConfig.namesub=[],a.trendList.val.filter(function(b){var d=b.ds,h=b.groupnames;if(a.grouped_List.indexOf(h)>-1||0==a.grouped_List.length){var i=c.indexOf(d);a.rateListed.filter(function(c){var d=a.trendList.format[c],j=h+c;0==a.grouped_List.length&&(j=c.substring(1));var k=f.name.indexOf(j),l=[];-1==k?(f.name.push(j),a.charts.chartConfig.namesub.push("percent"==d?"%":""),l=e.cloneJSON(g),f.val.push(l)):l=f.val[k];var m=Number(b[c]);m="percent"==d?e.decimal2(100*m,2):"int"==d?Math.round(m):e.decimal2(m,2),l[i]=m})}}),a.charts.chartData=f;var n=a.charts.chartData.key.length-1;if(a.group_List.length>0&&"columnstack"==a.charts.chartType){var o=0;a.charts.chartData.val.filter(function(a){o+=a[a.length-1]});var p={seriesName:b.substrName(a.rateListed[0]),value:o,name:a.charts.chartData.key[n]};a.tooltipChart.push(p)}else a.charts.chartData.name.filter(function(b,c){var d=a.charts.chartData.val[c].length-1,e={seriesName:b,value:a.charts.chartData.val[c][d],name:a.charts.chartData.key[n],color:a.charts.chartConfig.color[c]};a.tooltipChart.push(e)})}a.group_List.length>0&&"table"!=a.charts.chartType&&(a.selectName=a.grouped_List.length+"个分组"),0!=a.group_List.length&&"table"!=a.charts.chartType||(a.selectName=a.rateListed.length+"个指标")},b.$on("conentresize",function(){b.chartDatas&&b.chartDatas.length>0&&b.chartDatas.filter(function(a){a.trendList&&(a.colsStyle=d.getTableColsWidth(a.trendList.name,b.timeFlag,b.showCount),a.fixrefresh=++l)})}),b.orderCol=function(a,c,d){a.sortCol=c,b.mysort(a.infoList,c,d),a.fixrefresh=++l},b.mysort=function(a,b,c){1==c?a.sort(function(a,c){return a[b]==c[b]?0:a[b]>c[b]?-1:1}):a.sort(function(a,c){return a[b]==c[b]?0:a[b]>c[b]?1:-1})},b.changeRate=function(a,c){if(!b.canAdd(a,1,c))return!1;var d=a.rateListed.indexOf(c);d>-1?a.rateListed.splice(d,1):a.rateListed.push(c),b.changeChartData(a)},b.changeGroup=function(a,c){if(!b.canAdd(a,2,c))return!1;var d=a.grouped_List.indexOf(c);d>-1?a.grouped_List.splice(d,1):a.grouped_List.push(c),b.changeChartData(a)};var o=4;b.canAdd=function(a,c,d){var e=[];if(o=3==b.showCount?3:4,e=1==c?a.rateListed:a.grouped_List,-1==e.indexOf(d)){var f=a.rateListed.length,g=a.grouped_List.length;return"line"==a.charts.chartType?1==c?(f+1)*(0==g?g+1:g)<=o:f*(g+1)<=o:1==c?f+1<=("columnstack"==a.charts.chartType?2:"pie"==a.charts.chartType?1:a.rateList.length):g+1<=("columnstack"==a.charts.chartType?5:a.group_List.length)}return!0},b.substrName=function(a){return a.substring(1)};var p=function(a){b.changeChartData(a),function(a){b.$on(a.charts.chartTypeId,function(e,f){if(f.info.id!=a.charts.chartType&&1==b.viewFlag){var g=c.putInfo("custommenu/updateType/"+a.info.id+"?type="+f.info.id,{});d.showLoading(),g.then(function(a){d.hideLoading()},function(a){d.hideLoading(),d.showTips(a.message)})}a.charts.chartType=f.info.id,b.changeChartData(a)})}(a)};b.gotoDetail=function(a){1==b.viewFlag&&h.go("collect."+a.menuType,{pageid:a.originalReportId})},b.percentPre="rate_",b.query=function(a){if(!k)return k=!k,!1;var e=[];a?(angular.isUndefined(b.chartDatas)&&(b.chartDatas=[]),e=[a]):(b.chartDatas=[],e=b.currentMenu.templates);var g=[],h=function(a,c,e){if(a.val&&a.val.length>0){var f=a.val[0];if("funnel"==e)c.charts.chartData=d.getFunnelData(f,a.key,a.eventname);else if("retention"==e){c.charts.chartData.key=a.key.slice(1);var g=a.columnkey,h=[];c.charts.chartData.name.push(f[g[0]]);for(var i=2;i<g.length;i++)h.push(f["rate_"+g[i]]);c.charts.chartData.val.push(h)}else if("eventstats"==e){var j=a.format,k={};j&&j.filter(function(a){k[a.field]=a.format}),a.format=k,c.trendList=a,c.totalList=a.totalval,c.infoList=a.val,c.eventChartLoading=!1,c.rateList=a.selectfield,c.totalVal={},c.rateList.filter(function(a){c.totalList.filter(function(b){c.totalVal[a]||(c.totalVal[a]=0),c.totalVal[a]+=b[a]})}),c.group_List=b.getGroupNames(c,a.groupfield),c.grouplen=a.groupfield.length,b.getChartTypeList(c),c.infoList.length>0&&(b.limit(c),0==c.group_List.length&&(c.ispercent=!1),p(c),c.group_List.length>0&&(c.dsList=[],c.trendList.key.filter(function(a,b){var d={id:b,name:a,dsflag:"ds"};c.dsList.unshift(d)}),c.dsInit=c.dsList[0].id,function(a){b.$on(a.dsId,function(b,c){a.ds=c.info.name,a.fixrefresh=++l})}(c)),c.fixrefresh=++l,c.initrefresh=++l)}}c.charts.chartLoading=!1};e.filter(function(e,i){if(0!=e.toShow){var j={info:e};j.charts={chartConfig:{color:d.getTenColors(),legend:!1,issmart:!0,namesub:[],id:"eventstats"==e.menuType?++l:""},chartLoading:!0,chartData:d.noDataChart(),rmd:++l,chartTypeId:b.timeFlag+"_"+ ++l,dsId:"ds_"+ ++l},a?b.chartDatas.push(j):g.push(j),function(a,d,e){f(function(){var d=a.menuType;if(e.charts.chartType="funnel"==d?"funnel":"line",angular.isDefined(a.queryData))h(JSON.parse(a.queryData),e,d);else{c.getInfo("custommenu/report/"+b.appid+"/"+a.originalReportId,{startDate:b.date.startDate,endDate:b.date.endDate,menuType:d,viewFlag:b.timeFlag}).then(function(a){h(a,e,d)},function(a){e.charts.chartLoading=!1})}},200*d*(Math.ceil(d+1)/4))}(e,i,j)}}),a||(b.chartDatas=g)},a.$on("tooltipObj",function(a,c){f(function(){b.chartDatas&&b.chartDatas.length>0&&b.chartDatas.filter(function(a){if(c.id==a.charts.chartConfig.id&&"eventstats"==a.info.menuType)if(a.tooltipChart=[],a.group_List.length>0&&"columnstack"==a.charts.chartType){var d=0;c.objs.filter(function(a){d+=a.value});var e={seriesName:b.substrName(a.rateListed[0]),value:d,name:c.objs[0].name};a.tooltipChart.push(e)}else a.tooltipChart=c.objs})},100)}),b.getFormatNumber=function(a){return a>=1e8?e.decimal2(a/1e8)+"亿":a>=1e7?e.decimal2(a/1e7)+"千万":a>=1e6?e.decimal2(a/1e6)+"百万":a>=1e4?e.decimal2(a/1e4)+"万":a},b.changeCount=function(){b.showCount&&2!=b.showCount?b.showCount=2:(b.showCount=3,b.chartDatas.filter(function(a){if("eventstats"==a.info.menuType&&a.rateListed){var c=0==a.rateListed.length?1:a.rateListed.length,d=0==a.grouped_List.length?1:a.grouped_List.length;"line"==a.charts.chartType&&c*d>3&&(a.rateListed=a.rateList.slice(0,1),a.grouped_List=a.group_List.slice(0,3),a.grouped_List.length<2&&(a.rateListed=a.rateList.slice(0,3)),b.changeChartData(a))}})),b.$broadcast("conentresize",!0),b.chartDatas.filter(function(a){a.fixrefresh=++l})},b.checkAll=function(a){a.ischeckall=!a.ischeckall,a.grouped_List=a.ischeckall?e.cloneJSON(a.group_List):[],b.changeChartData(a)},b.chartAllList=[{id:"line",name:"折线图",platform:"line"},{id:"columnstack",name:"柱状图",platform:"columnstack"},{id:"table",name:"表格",platform:"table"},{id:"pie",name:"饼状图",platform:"pie"}],b.getChartTypeList=function(a){a.rateList.length>=1&&0==a.grouplen?(a.chartList=b.chartAllList.slice(0,3),a.charts.chartType="line",a.charts.chartTypeInit="line"):1==a.rateList.length&&a.grouplen>0?a.chartList=b.chartAllList.slice(0):a.rateList.length>1&&a.grouplen>0&&(a.chartList=b.chartAllList.slice(2,-1),a.charts.chartType="table",a.charts.chartTypeInit="table"),a.charts.chartType=a.info.type?a.info.type:a.charts.chartType,a.charts.chartTypeInit=a.charts.chartType},b.limit=function(a){"line"==a.charts.chartType?(a.rateListed=a.rateList.slice(0,1),a.grouped_List=a.group_List.slice(0,3),a.grouped_List.length<2&&(a.rateListed=a.rateList.slice(0,3))):"columnstack"==a.charts.chartType?(a.rateListed=a.rateList.slice(0,2),a.grouped_List=a.group_List.slice(0,3)):"pie"==a.charts.chartType?(a.rateListed=a.rateList.slice(0,1),a.grouped_List=a.group_List.slice(0)):(a.rateListed=a.rateList.slice(0),a.grouped_List=a.group_List.slice(0))},b.getGroupNames=function(a,c){var d=[],e=[];if(0==c.length){var f=a.trendList.groupfield.length>0;a.trendList.val.filter(function(a,c){var d={};f||(d=a),a.firstDateRow&&(d.ds=a.ds,d.groupnames=a.ds,f?d.children=b.trendList.val.slice(c,c+a.rowNum):(d.rsnum=1,d.isrs=!0),e.push(d))})}else a.trendList.val.filter(function(b,f){var g=[],h={};c.filter(function(a){g.push(b[a])});var i=g.join(","),j=d.indexOf(i);b.groupnames=i,-1==j&&d.push(i),b.firstDateRow&&(h.ds=b.ds,h.groupnames=i,h.children=a.trendList.val.slice(f,f+b.rowNum),e.push(h))});return b.detailAllList=e,b.istranfer?b.transformList():b.lsChange++,d},b.$on("dragorder",function(a,e){d.showLoading();var f="";f="menu"==e.flag?"custommenu/updateIndex/"+b.appid+"/"+e.id+"?index="+e.index:"custommenu/updateIndex/"+e.id+"?index="+e.index,c.putInfo(f,{}).then(function(){"menu"==e.flag?b.lookMyMenu():b.query()},function(){d.hideLoading()})}),b.$watch("appid",function(a){if(angular.isDefined(b.appid)){m=null;var e=c.getInfo("custommenu/find/"+b.appid);d.showLoading(),e.then(function(a){d.hideLoading(),1==a?b.lookMyMenu():b.pageFlag=1})}}),b.$watch("date.startDate+date.endDate+timeFlag",function(){angular.isDefined(b.date)&&4==b.pageFlag&&b.query()})}angular.module("app.collect").controller("custommenuCtrl",["$rootScope","$scope","HttpService","ToolService","UtilService","$timeout","$stateParams","$state","$filter","$location",a])}(),function(){function a(a,b,c,d,e){b.query=function(){d.showLoading(),c.getInfo("logtool/"+b.appid).then(function(a){b.logdata=a,d.hideLoading()})},b.$watch("appid",function(a){angular.isDefined(a)&&b.query()})}angular.module("app.collect").controller("logtoolCtrl",["$rootScope","$scope","HttpService","ToolService","UtilService",a])}(),function(){function a(a,b,c,d,e){b.UserId=$.cookie("ryioUid"),b.query=function(){d.showLoading(),c.getInfo("mng/export/report/"+b.appid+"/findall").then(function(a){b.donwlistData=a,d.hideLoading()})},b.$on("flipinfo",function(a,c){b.flipPage2=c}),b.doRemove=function(a){b.delstatus=!0,b.delId=a},b.removeInfo=function(){var a="mng/export/report/"+b.appid+"/delete/"+b.delId,e=c.deleteInfo(a);d.showLoading(),b.delstatus=!1,e.then(function(a){d.hideLoading(),d.showTips("删除成功"),b.query()})},b.downlistRefresh=function(a,e){e&&1==e&&(a=b.winID),d.showLoading(),b.closeWin(),c.putInfo("mng/export/report/"+b.appid+"/refresh/"+a,{}).then(function(a){b.query()})},b.closeWin=function(){d.hideAlp(),b.wantRefresh=!1},b.downlistEvt=function(a){if("complete"!=a.status)return!1;var e=a.id,f=c.downFile("mng/export/report/"+b.appid+"/download/"+e);d.showLoading(),f.then(function(c){d.hideLoading(),-1==c.code&&(b.wantRefresh=!0,b.winID=a.id,d.showAlp())})},b.$watch("appid",function(a){angular.isDefined(a)&&b.query()})}angular.module("app.collect").controller("reportCtrl",["$rootScope","$scope","HttpService","ToolService","UtilService",a])}(),function(){function a(a,b,c,d,e,f,g,h){var i=h.pageid,j=(new Date).getTime();a.querySelectInfos=function(){c.getInfo("mng/usergroup/find/"+a.appid).then(function(b){b.unshift({id:0,name:"请选择用户分组"}),a.groupsList=b,a.groupinitname="请选择用户分组",a.groupInit=0}),a.timeUnitList=[{id:1,name:"秒"},{id:60,name:"分钟"},{id:3600,name:"小时"}],a.timeinitname="分钟",a.timeUnitInit=60,a.eventTypeList=[{id:!0,name:"起始事件"},{id:!1,name:"结束事件"}],a.typeinitname="起始事件",a.eventTypeInit=!0},a.queryInfoByApp=function(b,d){if(angular.isUndefined(b)||5==b){c.getInfo(a.appid+"/event/find").then(function(b){a.eventListAll=b,a.eventList=a.eventListAll.filter(function(a){return"install"!=a.eventName})})}var f=c.getInfo("mng/intelligentpath/"+a.appid+"/list");a.define={},f.then(function(c){if(a.defineList=c,c.length>0)if(a.addFirst=!1,e.isNullStr(i)||(d=i),d){for(var f=0;f<a.defineList.length;f++)if(a.defineList[f].id==d){a.define=a.defineList[f];break}e.isNullStr(i)?a.defineFlag=++j:(a.clickDefine(a.define),i=null)}else a.clickDefine(c[0]);5==b&&(a.dimenRmd=++j)})},a.clickDefine=function(c){a.define=c,a.defineFlag=++j,a.isEditInfo=!0,a.isShowCache=!1,b.thirdtab=c.name},a.deleteDefine=function(b){a.delDefine=b,a.wantDelete=!0,d.showAlp()},a.doDelete=function(){a.closeWin(),d.showLoading(),c.deleteInfo("mng/intelligentpath/"+a.delDefine.id+"/delete").then(function(){d.showTips("删除成功"),a.queryInfoByApp(1),d.hideLoading()})},a.date=d.getLastDays(-3,0),a.timeFlag="day",a.disTimeFlag=["hour"],a.changeTimeFlag=function(b){if(a.disTimeFlag.indexOf(b)>-1)return!1;a.timeFlag=b},a.$on("dateCustos",function(b,c){c.startDate==c.endDate?a.disTimeFlag=["week","month"]:a.disTimeFlag=["hour"],a.disTimeFlag.indexOf(a.timeFlag)>-1&&(a.timeFlag="day"),a.date=c}),a.$watch("date",function(){angular.isDefined(a.date)&&(a.datestr=a.date.startDate+"至"+a.date.endDate)});var k=function(a){return a=a.split(","),a.sort(function(a,b){return a.localeCompare(b)}),a.join(",")};a.$on("groupId",function(b,c){a.groupId=c.info.id}),a.$on("eventTypeId",function(b,c){a.eventTypeId=c.info.id}),a.$on("timeUnitId",function(b,c){a.timeUnitId=c.info.id}),a.$on("eventIds",function(b,c){if(k(a.eventIds)!=k(c.info)){if(a.eventIds=c.info,!a.eventIds)return a.eventinitname="请先选取关注事件",a.eventId="",void(a.enull=++j);if(a.filterEvents!=a.eventIds.split(",")){var d=a.eventIds.split(",");a.filterEvents=a.eventList.filter(function(a){return d.indexOf(a.eventName)>-1}),a.filterEvents.length>1&&(a.eventTip="",a.params&&(a.params.eventsnull=!1)),a.eventIds.indexOf(a.eventId)>-1&&(a.eventInit=a.eventId),(a.filterEvents&&a.filterEvents.length>0&&!a.eventInit||d.indexOf(a.eventInit)<0)&&(a.eventinitname="请选取目标事件",a.eventInit="",a.eventId="",a.eventRel="and",a.event={},a.enull=++j)}}}),a.$on("eventId",function(b,c){a.eventId!=c.info.eventName&&(a.changeEvent(c.info),a.eventId=c.info.eventName)}),a.$watch("time",function(b){a.time&&$("#timeId").removeClass("iptnull")}),a.changeEvent=function(b,e){if(e){a.initParmas();var f=a.eventList.filter(function(a){return a.eventName==e.event});b=f[0],a.eventinitname=b.eventNameAlias,a.eventRel=e.relation}a.eventId=b.eventName;var h=function(){a.event={id:"evt_"+j,params:[],paramsList:b.profiles},a.propertyList=b.firstLevelAttr,a.sumtypeList=b.secondLevelAttr,e?g(function(){a.propertyInit=e.viewField,a.prorefresh=++j,a.event.secondval=e.fieldOperate,e.params.filter(function(b){a.addEventParams(a.event,b)})}):(a.propertyList&&a.propertyList.length>0?a.propertyInit=a.propertyList[0].attr:a.propertyInit="",a.prorefresh=++j)};if(b.firstLevelAttr)h();else{var i=[],k={event:b.eventName,param:[]};e&&(e.params.filter(function(a){k.param.push(a.attr)}),i.push(k)),d.showLoading();c.getInfo(a.appid+"/event/find/param?names="+b.eventName+"¶ms="+JSON.stringify(i)).then(function(b){b.filter(function(b){for(var c=0;c<a.filterEvents.length;c++)if(b.eventName==a.filterEvents[c].eventName){a.filterEvents[c].profiles=b.profiles,a.filterEvents[c].firstLevelAttr=b.firstLevelAttr,a.filterEvents[c].secondLevelAttr=b.secondLevelAttr;break}}),h(),d.hideLoading()})}},a.canSave=function(){var b=!1;return a.eventIds||a.time||a.eventId||a.groupId||!a.eventTypeId||60!=a.timeUnitId||(b=!0),b},a.initParmas=function(){a.eventinitname="请先选取关注事件",a.eventinitnames="请选取关注事件",a.typeinitname="起始事件",a.groupinitname="请选择用户分组",a.timeinitname="分钟",a.time=20,a.eventinitIds=++j,a.eventTypeInit=!0,a.groupInit=++j,a.eventInit=++j,a.eventIds="",a.eventTypeId=!0,a.timeUnitInit=60,a.timeUnitId=60,a.groupId=0,a.groupInit=0,a.eventId="",a.eventRel="and",a.filterEvents=[],a.event={},a.evtrefresh=++j},a.changeRel=function(){a.eventRel="and"==a.eventRel?"or":"and"},a.initCondition=function(){a.initParmas()},a.showEventWin=!1,a.addPath=function(b,c){var d=e.getItem("path_"+a.appid);if(1==b||d){if(a.isShowCache=0==b||c,!a.define.id&&!a.isShowCache||!d&&a.isShowCache)return!1;a.eventTip="",a.currentDefine=a.isShowCache?JSON.parse(d):a.define,a.ename=a.isShowCache?"新增智能路径":a.define.name;var f=JSON.parse(a.currentDefine.eventCondition);a.changeEvent(null,f),a.isEditInfo=!0,a.time=a.currentDefine.session;var g=a.currentDefine.events.split(",");a.eventIds=a.currentDefine.events,a.filterEvents=a.eventList.filter(function(a){return g.indexOf(a.eventName)>-1}),a.groupInit=a.currentDefine.userGroup,a.eventId=a.currentDefine.targetEvent,a.eventTypeInit=a.currentDefine.startOrEnd,a.timeUnitInit=a.currentDefine.sessionUnit,a.eventInit=a.currentDefine.targetEvent,a.eventTypeId=a.currentDefine.startOrEnd,a.eventinitIds=a.currentDefine.events}else a.currentDefine={},a.isEditInfo=!1,a.initParmas(),a.params={},a.eventTip="",a.isShowCache=!1;a.showEventWin=!0},a.addFirst=!1,a.addFirstPath=function(){a.addFirst=!0,a.showEventWin=!0,a.currentDefine={},a.initParmas()},a.closeAddWin=function(){a.showEventWin=!1,a.addFirst=!1,a.isEditInfo=!0},a.maxparams=10,a.getEventParamsNum=function(b){return b&&b.params?b.params.filter(function(a){return 0!=a.show}).length:a.maxparams},a.addEventParams=function(b,c){if(!b||!b.params||a.getEventParamsNum(b)>=3)return!1;j++;var d={id:"pam_"+j,pid:b.id};if(c)for(var e in c)d[e]=c[e];b.params.push(d)},a.removeEventParams=function(a,b){for(var c=0;c<a.params.length;c++)if(a.params[c].id==b.id){a.params[c].show=!1;break}},a.$on("event",function(b,c){for(var d=a.event.params,e=0;e<d.length;e++)if(d[e].id==c.id){d[e]=c;break}}),a.nameWin=function(b){var c=a.getReportEventInfo();if(a.getPathParms(c),a.eventIds.split(",").length<2&&(a.eventTip="请至少选择2个关注事件",a.params.eventsnull=!0),c.hasNull||a.params.isnull||a.eventTip)return d.hideLoading(),d.showTips(a.formTipMsg),!1;d.showAlp(),a.wantSave=!0,a.currentDefine={},a.ename="",a.isotherSave=!1,angular.isDefined(b)&&(a.currentDefine={id:0},a.isotherSave=!0)},a.lookReport=function(){var b=a.getReportEventInfo(),c="";if(a.getPathParms(b),a.eventIds.split(",").length<2&&(a.eventTip="请至少选择2个关注事件",a.params.eventsnull=!0),b.hasNull||a.params.isnull||a.eventTip)return d.showTips(a.formTipMsg),!1;c=JSON.stringify(b),a.isShowCache=!0,a.query(c)},a.closeWin=function(b){a.wantSave=!1,a.wantDelete=!1,a.nodeDetail=!1,b&&(2==b&&a.isotherSave?a.currentDefine=a.define:a.showEventWin=!1,a.showEventWin=!0),d.hideAlp()},a.getPathParms=function(b){a.params={},a.time||(a.params.timenull=!0,a.params.isnull=!0),b.event||(a.params.eventnull=!0,a.params.isnull=!0)},a.getReportEventInfo=function(){if(!a.event.params)return!1;var b=!1,c={event:a.eventId,relation:a.eventRel,params:[]};return c.viewField=a.event.proId,a.event.second?c.fieldOperate=a.event.sumId:c.fieldOperate="",a.event.params.filter(function(d){if(0!=d.show){e.isNullStr(d.attr)&&(a.$broadcast(d.id,"error"),b=!0);var f={};for(var g in d)"id"!=g&&"pid"!=g&&(f[g]="value"!=g?d[g]:d[g].join(","),e.isNullStr(d[g])&&(a.$broadcast(d.id,"error"),b=!0));c.params.push(f)}}),b&&(c.hasNull=!0),c},a.save=function(){var b=function(){var b={name:a.ename,app:a.appid,events:a.eventIds,userGroup:a.groupId,startOrEnd:a.eventTypeId,session:parseInt(a.time),sessionUnit:a.timeUnitId?a.timeUnitId:60},e=a.getReportEventInfo();if(a.getPathParms(e),a.eventIds.split(",").length<2&&(a.eventTip="请至少选择2个关注事件",a.params.eventsnull=!0),e.hasNull||a.params.isnull||a.eventTip)return d.showTips(a.formTipMsg),!1;b.targetEvent=e.event,b.eventCondition=JSON.stringify(e);var f=null,g="添加成功";a.currentDefine.id?(b.id=a.currentDefine.id,f=c.putInfo("mng/intelligentpath/update",b),g="修改成功"):f=c.postInfo("mng/intelligentpath/create",b),d.showLoading(),f.then(function(b){if(-6001==b.code)return void d.showTips(b.message);a.closeWin(1),d.hideLoading(),d.showTips(g),a.currentDefine.id?(a.queryInfoByApp(2,a.currentDefine.id),a.currentDefine={}):(a.queryInfoByApp(1),a.isShowCache&&localStorage.removeItem("path_"+a.appid))})};if(a.currentDefine.id)b();else{var f={name:{key:"spcname",val:a.ename}};if(a.tip=formJudge(f),e.isNullStr(a.ename)||1!=a.tip.succ)return d.showTips("请输入20个汉字以内名称,允许字符为中英文数字_-"),!1;b()}},a.eventChartConfig={color:d.getTenColors(),legend:!1},a.$on("flipinfo",function(b,c){a.flipPage=c}),a.showTempLook=!1,a.query=function(b){a.showEventWin=!1,$("#mychart div").hide(),$("#tip_shape").hide();var g=d.getParams(a);if(b){g.eventCondition=b;JSON.parse(b);a.showTempLook=!0,a.groupId&&(g.userGroup=a.groupId),g.session=a.time,g.startOrEnd=a.eventTypeId,g.targetEvent=a.eventId,g.events=a.eventIds,g.sessionUnit=a.timeUnitId,e.setItem("path_"+a.appid,JSON.stringify(g))}else{var h=e.getItem("path_"+a.appid);a.define=a.isShowCache?JSON.parse(h):a.define,g.eventCondition=a.define.eventCondition,a.showTempLook=!!a.isShowCache,a.define.userGroup&&(g.userGroup=a.define.userGroup),g.session=a.define.session,g.startOrEnd=a.define.startOrEnd,g.targetEvent=a.define.targetEvent,g.events=a.define.events,g.sessionUnit=a.define.sessionUnit}a.pathIsLoading=!0;var i="intelligentpath/"+a.appid+"/query";c.getInfo(i,g).then(function(b){a.pathList=b,a.pathIsLoading=!1,a.pathList&&0==a.pathList.value.length||(require.config({paths:{zrender:"./js/common/zrender","zrender/Group":"./js/common/zrender","zrender/shape/Rectangle":"./js/common/zrender","zrender/shape/Polyline":"./js/common/zrender","zrender/shape/Line":"./js/common/zrender","zrender/shape/Text":"./js/common/zrender","zrender/shape/Animal":"./js/common/zrender","zrender/shape/Image":"./js/common/zrender"}}),require(["zrender","zrender/Group","zrender/shape/Rectangle","zrender/shape/Polyline","zrender/shape/Line","zrender/shape/Text","zrender/shape/Image"],function(b,c,e,g,h,i,j){function k(b){var c,d,g=u,j=v,A=w,B=$("#tip_shape")[0];if(0==b)c=null,d=a.pathList.value.filter(function(a){return 1==a.level});else if(c=a.pathList.value.filter(function(c){return c.id==b&&a.clickNode==c||!a.clickNode&&c.id==b})[0],d=a.pathList.value.filter(function(a){return a.parent==b&&"0.00"!=(100*a.percent).toFixed(2)}),d.length>0){d=f("orderBy")(d,["percent"],"desc");for(var C=0;C<d.length;C++)if("其他"==d[C].name){var D=d[C];d.splice(C,1),d.push(D);break}}if(a._nodes=d,0==d.length)return!1;var E=10,F=0;null==c?(E=Math.ceil(n/2)-Math.ceil(t/2)-20,F=20,A=j):F=r*(d[0].level-1),d.forEach(function(d,f){var n=E*(f+1)+f*(q+t)+20,r=c&&1==c.level?F+20:F,u=new e({id:o(),data:d,style:{x:n,y:r,color:0==b?j:"#ffffff",width:t,height:s,radius:3,brushType:"both",strokeColor:A,lineWidth:1,text:z(d.name,16,"..."),textFont:"normal 14px Arial",textColor:0==b?"#ffffff":g,textPosition:"inside"},highlightStyle:{strokeColor:j,lineWidth:1},clickable:!0,onclick:function(b){if(1==d.level||d.shape.style.strokeColor==j)return y(d),!1;a.clickNode=d,x(d),d.activeNode=!0,l(d.level),"0.00"!=(100*d.percent).toFixed(2)&&k(d.id),0==a._nodes.length&&y(d);var c=b.target.data;c.shape.style.strokeColor=j,c.line.style.strokeColor=j,d.y+290>550&&($(".panel").height()>1500?$(".panel").height(1500):$(".panel").height(d.y+340)),m.render()},onmouseover:function(a){B.innerHTML=a.target.data.name,B.style.display="block",B.style.position="absolute",B.style.left=a.target.style.x+"px",B.style.top=a.target.style.y-60+"px"},onmouseout:function(){B.style.display="none"}});if(null!=c){var v=c.x,w=c.y,C=v+Math.ceil(t/2),D=w+s+1,G=n+Math.ceil(t/2),H=r-1,I=new h({id:o(),style:{xStart:C,yStart:1==c.level?D+40:D,xEnd:G,yEnd:H-20,strokeColor:A,lineWidth:1}});d.line=I,p.addChild(I);var J=new i({zlevel:2,style:{text:(100*d.percent).toFixed(2)+"%",x:G,y:H-10,textFont:"14px Arial",color:g,textPosition:"inside",textAlign:"center",strokeColor:"#fff"},hoverable:!1});d.text=J,p.addChild(J)}d.shape=u,d.x=n,d.y=r,d.hidx=f,p.addChild(u)})}function l(b){a.pathList.value.filter(function(a){a.level>b&&a.shape&&(p.removeChild(a.shape),p.removeChild(a.line),p.removeChild(a.text),a.shape=void 0),a.level==b&&a.shape&&(a.shape.style.strokeColor=w,a.line.style.strokeColor=w,a.text.style.color=u)})}a.clickNode=!1,b.dispose();var m=b.init($("#mychart")[0]),n=Math.ceil(m.getWidth()),o=(Math.ceil(m.getHeight()),require("zrender/tool/guid")),p=new c,q=10,r=150,s=45,t=130;a._nodes=[];var u="#656565",v="#00a9e8",w="#ccc",x=function(b){angular.forEach(a.pathList.value,function(a){a.level>=b.level&&(a.activeNode=!1)})},y=function(b){a.routeList=[],angular.forEach(a.pathList.value,function(b){(b.activeNode||1==b.level)&&a.routeList.push(b)}),B(b),a.routeList=f("orderBy")(a.routeList,["level"]),a._nodes.length>0&&a.routeList.push({name:"?"}),a.pathList.type||a.routeList.reverse(),d.showAlp(),a.nodeDetail=b},z=function(a,b,c){for(var d=0,e=0;e<a.length;e++){if((d=a.charCodeAt(e)>255?d+=2:d+=1)==b)return a.slice(0,e+1)+c;if(d>b)return a.slice(0,e)+c}return a},A=function(){for(var b=0,c=0;c<a.pathList.value.length;c++)if(2==a.pathList.value[c].level){b=a.pathList.value[c].parent;break}return b},B=function(b){a.nodeName=b.name;var c=0==b.totalNumber?1:b.totalNumber;tpercent=b.totalNumber/c*100,apercent=b.number/c*100,lnumber=b.totalNumber-b.number,lpercent=lnumber/c*100,a.lpercent=lpercent.toFixed(2)+"%",a.nodeDetails=[{title:"总会话数",count:b.totalNumber,percent:tpercent.toFixed(2)+"%"},{title:"活跃会话",count:b.number,percent:apercent.toFixed(2)+"%"},{title:"流失会话",count:lnumber,percent:lpercent.toFixed(2)+"%"}]};k(0),k(A());var C=new j({style:{image:0==a.pathList.type?"/images/top.png":"/images/bottom.png",x:n/2+8-20,y:75}});m.addShape(C),m.addGroup(p)}))},function(b){a.myChartData=d.noDataChart(),a.infoList=[],a.eventChartLoading=!1,a.chartListLoading=!1})},a.$watch("appid+defineFlag+dimenId+timeFlag+date.startDate+date.endDate+seeFlag+usergroupid",function(b){angular.isDefined(a.appid)&&(angular.isDefined(a.defineFlag)||a.isShowCache)&&a.query()}),a.dimenInit=a.dimenId="-all",a.$watch("appid",function(b){angular.isDefined(b)&&(a.dimenId="-all",a.lengedNames=[],a.defineFlag=void 0,a.queryInfoByApp(5),a.querySelectInfos())})}angular.module("app.collect").controller("intelligentpathCtrl",["$scope","$rootScope","HttpService","ToolService","UtilService","$filter","$timeout","$stateParams",a])}(),function(){function a(a,b,c,d,e,f){}angular.module("app.collect").controller("expirationCtrl",["$rootScope","$scope","HttpService","ToolService","$filter","UtilService",a])}(),function(){angular.module("app.manage",[])}(),function(){var a=(new Date).getTime();angular.module("app.manage").config(["$stateProvider","$urlRouterProvider",function(b,c){var d="manage",e=["app","auth","event","activityevent","profile","userinfo","usergroup","nopower"],f=["systemparam","event","profile","downloadurl"];b.state(d,{url:"",templateUrl:"/template/menu/collect.html?r="+a,controller:"collectCtrl"}),e.forEach(function(c){if(b.state("collect."+c,{url:"/"+d+"/"+c,params:{aid:null},views:{"content@":{templateUrl:"/template/"+d+"/"+c+".html?r="+a,controller:c+"Ctrl"}}}),-1==f.indexOf(c)){var e=c+"Detail";b.state("collect."+e,{url:"/"+d+"/"+e,params:{aid:null},views:{"content@":{templateUrl:"/template/"+d+"/"+e+".html?r="+a,controller:e+"Ctrl"}}})}})}])}(),function(){function a(a,b,d,e,f,g,h){b.isDemo=e.isDemoUser(),b.$on("flipinfo",function(a,c){b.flipPage=c}), -b.specialsAppkey=["e31caee07ebedf8c172267e73204802f","f4c6764d10bec9a3c4bd4f79a442a947","022da4f8bd53ac212141bd7fdfa9532d","5eb29a7e239537f4bedef93f8289d1c6","e0b3000ebd3f54b791a405f68d3e520c"],b.doRemove=function(a){b.delstatus=!0,b.delId=a},b.removeInfo=function(){var a=d.deleteInfo("mng/app/delete/"+b.delId);e.showLoading(),a.then(function(a){e.hideLoading(),b.delstatus=!1,e.showTips("删除成功"),b.$emit("f5Applist",!0)})},h(function(){var a=new Clipboard(".copyBtn");a.on("success",function(a){b.$apply(function(){e.showTips("复制成功")})}),a.on("error",function(a){b.$apply(function(){e.showTips("复制失败")})})},200),b.onOff=function(a,c){var f="mng/app/enable/"+a,g="启用成功";c&&1==c&&(f="mng/app/forbidden/"+a,g="停用成功");var h=d.putInfo(f,{});e.showLoading(),h.then(function(a){e.hideLoading(),e.showTips(g),b.$emit("f5Applist",!0)})},b.gopage=function(a,b){c=!!b,angular.isDefined(a)?g.go("collect.appDetail",{aid:a}):g.go("collect.appDetail")},b.goReport=function(c){a.isweb="H5"==c.platform,b.$emit("mngappTo",c.id);var d=a.firstMeau.substring(1).replace("/",".");g.go(d)}}function b(a,b,d,e,f,g,h,i,j,k){var l=a.infoId=a.id=i.aid;a.isLog=c;var m="",n="",o=38;if(!a.isLog){var p=d.getInfo("mng/app/find/getcategorys");p.then(function(b){var c=[],d=[];b.filter(function(a){a.name=a.categoryname,1==a.isgame?d.push(a):c.push(a)}),a.typeList=c,a.gameList=d,a.appGenreInit=a.typeList[0].categoryid,a.gameGenreInit=a.gameList[0].categoryid})}a.downloadsdk=function(){},a.$on("appGenre",function(b,c){a.showGame=c.info.categoryid==o,a.appGenre=c.info.categoryid,a.appGenreName=c.info.categoryname}),a.$on("gameGenre",function(b,c){a.gameGenre=c.info.categoryid,a.gameGenreName=c.info.categoryname}),a.ckSync=function(){a.sync=!a.sync,1==a.sync&&e.showTips("所有推广活动的下载地址将同步更新。",2e3)},function(){if(null!=l){a.isLog?a.stepflag=3:a.stepflag=1;var b=d.getInfo("mng/app/find/"+l);e.showLoading(),b.then(function(b){a.platform=b.platform,a.name=n=b.name,a.url=b.url,a.appkey=b.appkey,a.sync=!1,a.bundleid=m=b.bundleid,3==a.stepflag&&(e.hideLoading(),a.queryLogInfo())}),1==a.stepflag&&g.all([p,b]).then(function(b){e.hideLoading();var c=b[1];a.appGenreInit=c.appGenre,a.gameGenreInit=c.gameGenre})}else a.stepflag=1,a.platform="iOS",a.sync=!1}(),a.nameHas=!1,a.exixtName=function(){a.tip||(a.tip={}),a.judgeNameChange(n,a.name)?(e.showLoading(),d.getInfo("mng/app/validname",{name:a.name}).then(function(b){e.hideLoading(),1==b?(a.tip.name={status:!0,txt:"名称已存在"},a.nameHas=!0):(a.tip.name={status:!1},a.nameHas=!1)})):(a.tip.name={status:!1},a.nameHas=!1)},a.bundleHas=!1,a.existBundleid=function(b){a.tip||(a.tip={}),a.judgeNameChange(m,a.bundleid)?(e.showLoading(),d.getInfo("mng/app/valid",{name:a.bundleid}).then(function(b){e.hideLoading(),1==b?(a.tip.bundleid={status:!0,txt:"bundleid已存在"},a.bundleHas=!0):(a.tip.bundleid={status:!1},a.bundleHas=!1)})):(a.tip.bundleid={status:!1},a.bundleHas=!1)},a.save=function(){if(a.nameHas||a.bundleHas)return!1;var b={platform:a.platform,name:a.name,appGenre:a.appGenre,sync:a.sync,url:a.url};a.appGenre==o?b.gameGenre=a.gameGenre:b.gameGenre=-1;var c={name:{key:"nameFormat",val:a.name},url:{key:"url",val:a.url,txt:"以http://或https://开头的合法url"}};if("iOS"==a.platform&&(b.bundleid=a.bundleid,c.bundleid={key:"num",min:9,max:10,val:a.bundleid,txt:"请输入9-10位数字"}),a.tip=formJudge(c),1!=a.tip.succ)return e.showTips(a.formTipMsg),!1;var f=null,g="添加成功";null!=l?(b.id=l,f=d.putInfo("mng/app/update",b),g="修改成功"):f=d.postInfo("mng/app/create",b),e.showLoading(),f.then(function(b){null!=l?(e.hideLoading(),e.showTips(g),a.cancel()):(a.$emit("f5Applist",1),a.id=b.id,a.name=b.name,a.appkey=b.appkey,e.hideLoading(),a.stepflag=2)})},a.cancel=function(){a.$emit("f5Applist",!0),h.go("collect.app")},a.changeStep=function(){3==a.stepflag&&(a.stepflag=2)},a.deviceList=[{id:1,name:"全部设备"}],a.deviceInit=a.deviceList[0].id,a.$on("deviceId",function(b,c){1==c.info.id?a.deviceTxt="":a.deviceTxt=c.info.id});var q=function(a){return f.isNullStr(a)?"":a};a.queryLogInfo=function(){a.logFlag=0,e.showLoading();var b=d.getInfo("mng/app/debug/event/list/"+a.id),c=d.getInfo("mng/app/debug/log/list/"+a.id),f=d.getInfo("mng/app/debug/device/list/"+a.id);a.hasZeroEvt=0,g.all([b,c,f]).then(function(b){a.testInfos=b[0],a.testInfos.filter(function(b){"H5"==a.platform?["pageview"].indexOf(b.eventName)>-1&&0==b.eventNumber&&a.hasZeroEvt++:["startup","install"].indexOf(b.eventName)>-1&&0==b.eventNumber&&a.hasZeroEvt++});var c=b[1];c.map(function(a){a.xcontext=JSON.parse(a.xcontext),a.xcontext.osname=q(a.xcontext._ryos||a.xcontext._os)+""+q(a.xcontext._ryosversion),a.xcontext.channel=a.xcontext._campaignid||a.xcontext.channelid,a.deviceId=a.xcontext._deviceid,a._network_type=a.xcontext._network_type||a.xcontext._network,a._model=a.xcontext._model||a.xcontext._devicetype}),a.logInfos=c,a.totalInfos=b[2];var d=[{id:1,name:"全部设备"}];a.totalInfos.filter(function(a){d.push({id:a.deviceId,name:a.deviceId})}),a.deviceList=d,e.hideLoading()})},a.getPlatClass=function(a){var a=j("lowercase")(a);return{ios:"apple",android:"android",h5:"web"}[a]},a.nextStep=function(){a.cancel()},a.lookEvents=function(b){a.eventDetails=[{name:"时间",key:"xwhen"},{name:"设备ID",key:"_deviceid",second:!0},{name:"APPKEY",key:"",value:a.appkey},{name:"应用名称",key:"",value:a.name},{name:"分包渠道",key:"channel",second:!0},{name:"系统",key:"osname",second:!0},{name:"机型",key:"_model"},{name:"分辨率",key:"_resolution",second:!0},{name:"网络",key:"_network_type"},{name:"SDK版本",key:"_lib_version",second:!0},{name:"事件ID",key:"xwhat",isevent:!0},{name:"事件名称",key:"eventName"}],a.curEvtLogInfo=b,a.logFlag=1,e.showAlp(),angular.element(document).on("click",function(){a.$apply(function(){a.hideDetails()})})},a.commonParams=null,a.lookParams=function(b){var c=function(){var b=a.curEvtLogInfo.xcontext,c=[];for(var d in b){var e={name:d,value:b[d],sortId:100};if(0==d.indexOf("_")){var g=a.commonParams[d];g&&(e.name=g.alias,e.sortId=g.sortId),c.push(e)}else c.push(e)}f.sortArray(c),a.paramsList=c,a.logFlag=2};if(null!=a.commonParams)c();else{e.showLoading();d.getInfo("mng/app/debug/find/common").then(function(b){e.hideLoading();var d={};b.filter(function(a){d[a.param]=a}),a.commonParams=d,c()})}},a.hideDetails=function(){e.hideAlp(),a.logFlag=0},a.finisStep=function(){e.showLoading(),d.putInfo("mng/app/debug/complete/"+a.id).then(function(b){a.cancel()})},k(function(){var b=new Clipboard(".sdkAppid");b.on("success",function(b){a.$apply(function(){e.showTips("复制成功")})}),b.on("error",function(b){a.$apply(function(){e.showTips("复制失败")})})},200)}angular.module("app.manage").controller("appCtrl",["$rootScope","$scope","HttpService","ToolService","UtilService","$state","$timeout",a]).controller("appDetailCtrl",["$scope","$rootScope","HttpService","ToolService","UtilService","$q","$state","$stateParams","$filter","$timeout",b]);var c=!1}(),function(){function a(a,b,c,d,e,f){b.demoUSuper="demoadmin@reyun.com"==e.getCookie("ryioUname"),b.deviceList=[{id:1,name:"已启用"},{id:2,name:"已停用"}],b.deviceInit=b.deviceList[0].id,b.$on("deviceId",function(a,c){b.seeFlag=c.info.id,1==b.seeFlag?b.findName="enable":b.findName="disable",b.query()}),a.accountFlag||(a.accountFlag="account"),b.query=function(e){if(e&&(a.accountFlag=e,a.thirdtab="子账号管理"),angular.isUndefined(b.findName))return!1;b.authList=[];var f=c.getInfo("mng/auth"+b.getSuburl()+"/list/"+b.findName);d.showLoading(),f.then(function(a){d.hideLoading(),b.authList=a})},b.query(),b.$on("flipinfo",function(a,c){b.flipPage=c}),b.onUser=function(a){d.showLoading(),c.putInfo("mng/auth"+b.getSuburl()+"/"+a+"/enable").then(function(a){d.hideLoading(),d.showTips("启用成功"),b.query()})},b.offUser=function(a){var e=c.putInfo("mng/auth"+b.getSuburl()+"/"+a+"/disable");d.showLoading(),e.then(function(a){d.hideLoading(),d.showTips("停用成功"),b.query()})},b.deleteAuth=function(a){b.delInfo=a,b.wantDelete=!0,d.showAlp()},b.doDelete=function(){b.closeWin(),d.showLoading(),c.deleteInfo("mng/auth/"+b.delInfo.id+"/delete").then(function(){d.showTips("删除成功"),d.hideLoading(),b.query()})},b.sendEmailAgain=function(a){var b=c.postInfo("mng/auth/mail/"+a.id+"/resend");d.showLoading(),b.then(function(b){d.hideLoading(),a.send=1,d.showTips("发送成功")})},b.closeWin=function(a){b.wantDelete=!1,d.hideAlp()},b.gopage=function(a){if(angular.isDefined(a)){if(!a.valid)return!1;f.go("collect.authDetail",{aid:a.id})}else f.go("collect.authDetail")},b.getSuburl=function(){var b="";return"channel"==a.accountFlag&&(b="/channel"),b},b.isdetail=!1,b.showDetails=function(a){b.detailInfo=a,d.showAlp(),b.isdetail=!0,angular.element(document).on("click",function(){b.$apply(function(){b.hideDetails()})})},b.hideDetails=function(){d.hideAlp(),b.isdetail=!1}}function b(a,b,d,e,f,g,h,i){var j=b.id=i.aid;b.$watch("applistInfo",function(a){if(angular.isDefined(a))if(b.authapplist=c(a),b.isAppManage&&!f.isNullStr(j)){var e=d.getInfo("app/find/"+j+"/AuthApp");e.then(function(a){b.init(a)})}else b.init()}),b.init=function(a){if(!f.isNullStr(j)){e.showLoading();d.getInfo("mng/auth/"+j+"/find").then(function(d){if(e.hideLoading(),b.accountInfo=d,b.email=b.oldEmail=d.email,b.name=d.name,b.remark=d.remark,b.parentRole=d.parentRole,f.isNullStr(d.name)?b.nameNofix=!1:b.nameNofix=!0,b.roleCategory=d.roleCategory,2==b.roleCategory?b.authapplist=c(b.appAlllistInfo):b.authapplist=c(b.applistInfo),b.isAppManage){var g=[];b.authapplist.filter(function(a){g.push(a.id)}),a.filter(function(a){-1==g.indexOf(a.id)&&(a.nopower=!0,b.authapplist.push(a))})}d.authList.filter(function(a){for(var c=0;c<b.authapplist.length;c++)if(b.authapplist[c].id==a.app){b.authapplist[c].ischeck=!0;break}}),b.steps=1,1==b.roleCategory?(b.steps=0,b.maxstep=0):2==b.roleCategory&&(b.maxstep=1)})}},b.steps=0,b.maxstep=0,b.changeRole=function(a){switch(a){case 1:b.steps=0,b.maxstep=0;break;case 2:b.steps=1,b.maxstep=1}b.authapplist=c(2==a?b.appAlllistInfo:b.applistInfo),b.roleCategory=a},b.getTips=function(a){return a.nopower?"该应用权限由管理员添加,您无此应用权限":""},b.doCheck=function(a){var c=b.isAllCheck=!b.isAllCheck;"app"==a&&b.authapplist.filter(function(a){a.nopower||(a.ischeck=c)})},b.isAllCheck=!1,b.selectApp=function(a){a.ischeck=!0;for(var c=!0,d=0;d<b.authapplist.length;d++){var e=b.authapplist[d];if(!e.nopower&&!e.ischeck){c=!1;break}}b.isAllCheck=c},b.removeApp=function(a){if(a.nopower)return!1;a.ischeck=!1,b.isAllCheck=!1},b.nameNofix=!1,b.save=function(){var a={email:b.email,name:b.name,roleCategory:b.roleCategory,remark:b.remark},c={email:{key:"email",val:a.email,nullTxt:"请填写邮箱"},name:{key:"numLetter",val:a.name,nullTxt:"请填写姓名",max:20,txt:"请输入20位以内的中英文或数字"}};if(f.isNullStr(a.remark)||(c.remark={key:"nameLen",val:a.remark,max:200,txt:"最多可输入100字"}),b.tip=formJudge(c),1!=b.tip.succ)return e.showTips(b.formTipMsg),!1;if(!b.roleCategory)return e.showTips("请选择角色"),!1;if(2==b.roleCategory){var g=[];if(b.authapplist.filter(function(a){a.ischeck&&g.push({app:a.id})}),0==g.length)return e.showTips("请选择应用"),!1;a.authList=g}var h=null,i="已为该账号发送激活邮件,请在72小时内联系相关人员激活并设置密码";null!=j?(a.id=j,h=d.putInfo("mng/auth"+b.getSuburl()+"/"+j+"/update",a),i="修改成功"):h=d.postInfo("mng/auth"+b.getSuburl()+"/create",a),e.showLoading(),h.then(function(a){-6001==a.code?(e.hideLoading(),e.showTips("该邮箱已创建")):-300==a.code?(e.hideLoading(),e.showTips("最多可添加3个管理员")):(e.hideLoading(),e.showTips(i),b.cancel())},function(a){-6001==a.code?(e.hideLoading(),e.showTips("该邮箱已创建")):-300==a.code&&(e.hideLoading(),e.showTips("最多可添加3个管理员"))})},b.getSuburl=function(){var a="";return"channel"==b.accountFlag&&(a="/channel"),a},b.cancel=function(){h.go("collect.auth")}}angular.module("app.manage").controller("authCtrl",["$rootScope","$scope","HttpService","ToolService","UtilService","$state",a]).controller("authDetailCtrl",["$rootScope","$scope","HttpService","ToolService","UtilService","$q","$state","$stateParams",b]);var c=function(a){return $.extend(!0,[],a)}}(),function(){function a(a,b,c){a.isevent=!0,a.query=function(){a.isevent=!0;var d=b.getInfo("mng/event/find/"+a.appid);c.showLoading(),d.then(function(b){c.hideLoading(),a.eventList=b;var d=b.slice(0);d.unshift({eventName:"-all",eventNameAlias:"全部属性"}),a.eventSelList=d,a.eventEditId=-1})},a.$watch("appid",function(b){angular.isDefined(b)&&a.query()}),a.$on("flipinfo",function(b,c){"paramTab"==c.listkey?a.pflipPage=c:a.flipPage=c});var d=null,e=1;a.clickEvent=function(b){a.eventpidInit==b.eventName?(a.isevent=!1,a.eventpidF5=++e):a.eventpidInit=b.eventName},a.$on("eventpid",function(b,c){d=c.info,a.getParamsList()}),a.getParamsList=function(){var e={};null!=d&&d.eventName&&"-all"!=d.eventName&&(e={name:d.eventName});var f=b.getInfo("mng/event/find/one/"+a.appid,e);c.showLoading(),f.then(function(b){a.isevent=!1,c.hideLoading(),a.paramsList=b,a.eventParamsId=-1})},a.doEdit=function(b,c){1==c&&(a.eventEditId=b.eventName,b.editname=b.eventNameAlias),2==c&&(a.eventParamsId=b.attr,b.editname=b.attrAlias)},a.onOff=function(d,e){var f="mng/event/enable/"+a.appid,g="启用成功";e&&1==e&&(f="mng/event/forbidden/"+a.appid,g="停用成功");var h=b.putInfo(f,{eventId:d});c.showLoading(),h.then(function(b){c.hideLoading(),c.showTips(g),a.query()})},a.updateEvent=function(d){var e={eventId:d.eventName,alias:d.editname};if(""==d.editname)return c.showTips("事件名称不能为空"),!1;if(a.eventList.filter(function(a){return a.eventNameAlias==d.editname&&a.eventName!=d.eventName}).length>0)return c.showTips("事件名称不能重复"),!1;if(1!=formJudge({name:{key:"spcname2",val:e.alias}}).succ)return c.showTips("仅支持包含下划线的40位以内字符"),!1;var f=b.putInfo("mng/event/update/"+a.appid,e);c.showLoading(),f.then(function(b){c.hideLoading(),c.showTips("修改成功"),a.query()})},a.pramesOnOff=function(d,e){var f="mng/event/enable/attr/"+a.appid,g="启用成功";e&&1==e&&(f="mng/event/forbidden/attr/"+a.appid,g="停用成功");var h=b.putInfo(f,{attribute:d});c.showLoading(),h.then(function(b){c.hideLoading(),c.showTips(g),a.getParamsList()})},a.updateParams=function(d){var e={attribute:d.attr,alias:d.editname};if(""==d.editname)return c.showTips("属性名称不能为空"),!1;if(a.paramsList.filter(function(a){return a.attrAlias==d.editname&&a.attr!=d.attr}).length>0)return c.showTips("事件属性名称不能重复"),!1;if(1!=formJudge({name:{key:"spcname2",val:e.alias}}).succ)return c.showTips("仅支持包含下划线的40位以内字符"),!1;var f=b.putInfo("mng/event/update/"+a.appid+"/one",e);c.showLoading(),f.then(function(b){c.hideLoading(),c.showTips("修改成功"),a.getParamsList()})},a.changeStatus=function(d,e){var f="";switch(d){case 1:f="addStats";break;case 2:f="delStats";break;case 3:f="addCondition";break;case 4:f="delCondition"}if(""!=f){b.putInfo("mng/event/"+f+"/"+a.appid,{attribute:e}).then(function(b){localStorage.getItem("joinFiltrate")||3!=d?c.showTips("操作成功"):(c.showTips("操作成功,可以按属性名称在事件、漏斗或留存功能中查看或筛选",4e3),localStorage.setItem("joinFiltrate","joinFiltrate")),a.getParamsList()})}}}angular.module("app.manage").controller("eventCtrl",["$scope","HttpService","ToolService",a])}(),function(){function a(a,b,c,d,e,f,g,h){b.query=function(){var a=c.getInfo("mng/virtual/find/"+b.appid);d.showLoading(),a.then(function(a){d.hideLoading(),b.eventList=a})},b.$watch("appid",function(a){angular.isDefined(a)&&b.query()}),b.$on("flipinfo",function(a,c){b.flipPage=c}),b.onUser=function(a){d.showLoading(),c.putInfo("mng/virtual/find/"+a+"/enable").then(function(a){d.hideLoading(),d.showTips("启用成功"),b.query()})},b.offUser=function(a){var e=c.putInfo("mng/virtual/find/"+a+"/disable");d.showLoading(),e.then(function(a){d.hideLoading(),d.showTips("停用成功"),b.query()})},b.gopage=function(a){angular.isDefined(a)?f.go("collect.activityeventDetail",{aid:a}):f.go("collect.activityeventDetail")}}function b(a,b,c,d,e,f,g,h,i){var j=h.aid;a.title=j?"编辑虚拟事件":"新建虚拟事件",a.inputdis=!1,null==j?(j={eventList:[],type:"userdefine"},a.specialEvents=[],a.name=""):(a.name=j.ch_name,"userdefine"==j.type?a.specialEvents=[]:(a.inputdis=!0,a.isweb?a.specialEvents=["pageview"]:a.specialEvents=["loggedin","reged","payment"]));var k=j.id,l=j.eventList;a.$watch("appid",function(b){angular.isDefined(b)&&a.query()}),a.query=function(){var b="";b=null!=j&&"userdefine"!=j.type?"mng/virtual/unselect/"+a.appid:"mng/event/find/"+a.appid;var e=c.getInfo(b);d.showLoading(),e.then(function(b){d.hideLoading(),a.eventList=b.filter(function(b){return 1==b.status&&(l.indexOf(b.eventName)>-1||a.specialEvents.indexOf(b.eventName)>-1?b.ischeck=!0:b.ischeck=!1),1==b.status})})};var m=0,n=5;a.chooseItem=function(b){m=0;for(var c=0;c<a.eventList.length;c++)1==a.eventList[c].ischeck&&(m+=1);m<n?b.ischeck=!0:d.showTips("最多可以选择"+n+"个")},a.cancelItem=function(b){a.specialEvents.indexOf(b.eventName)>-1?b.ischeck=!0:b.ischeck=!1},a.selectAllEvent=function(){a.eventList.length>n?d.showTips("最多可以选择"+n+"个"):(a.selAll=!a.selAll,a.eventList.filter(function(b){a.specialEvents.indexOf(b.eventName)>-1?b.ischeck=!0:b.ischeck=a.selAll}))},a.save=function(){for(var b=[],e=0;e<a.eventList.length;e++)1==a.eventList[e].ischeck&&b.push(a.eventList[e].eventName);var f={ch_name:a.name,eventList:b.join(",")};a.tip={},error=!1;var g={name:{key:"spcname2",val:f.ch_name,txt:"含非法字符或过长(支持输入汉字、大小写字母、数字、下划线,长度限制40字符以内)"}};if(a.tip=formJudge(g),1!=a.tip.succ&&(error=!0),b.length<2)return a.tip.moreparams={status:!0,txt:"请至少选择2个事件"},!1;if(error)return!1;var h=null,i="保存成功";k?(f.id=k,f.type=j.type,h=c.putInfo("mng/virtual/update/"+a.appid,f)):(i="新建成功",h=c.postInfo("mng/virtual/userdefined/"+a.appid,f)),d.showLoading(),h.then(function(b){d.hideLoading(),-6001==b.code?(a.tip.name={status:!0,txt:"名称重复"},d.showTips("名称重复")):(a.cancel(),d.showTips(i))},function(b){d.hideLoading(),-6001==b.code&&(a.tip.name={status:!0,txt:"名称重复"},d.showTips("名称重复"))})},a.cancel=function(){g.go("collect.activityevent")}}angular.module("app.manage").controller("activityeventCtrl",["$rootScope","$scope","HttpService","ToolService","UtilService","$state","$timeout","$stateParams",a]).controller("activityeventDetailCtrl",["$scope","$rootScope","HttpService","ToolService","UtilService","$q","$state","$stateParams","$timeout",b])}(),function(){function a(a,b,c){a.query=function(){var d=b.getInfo("mng/profile/"+a.appid+"/find");c.showLoading(),d.then(function(b){c.hideLoading(),a.infoEditId=-1,a.profileList=b})},a.$watch("appid",function(b){angular.isDefined(b)&&a.query()}),a.doEdit=function(b,c){a.infoEditId=c,b.id=c,b.editname=b.attrAlias},a.$on("flipinfo",function(b,c){a.flipPage=c}),a.updateProfile=function(d){var e={appkey:a.appkey,attr:d.attr,attrAlias:d.editname};if(a.profileList.filter(function(a){return a.attrAlias==d.editname&&a.id!=d.id}).length>0)return c.showTips("用户属性名称不能重复"),!1;if(1!=formJudge({name:{key:"spcname2",val:e.attrAlias}}).succ)return c.showTips("仅支持包含下划线的40位以内字符"),!1;var f=b.putInfo("mng/profile/update",e);c.showLoading(),f.then(function(b){c.hideLoading(),c.showTips("修改成功"),a.query()})},a.onOff=function(d,e){var f="mng/profile/enable/"+a.appkey+"/"+d.attr,g="启用成功";e&&1==e&&(f="mng/profile/forbidden/"+a.appkey+"/"+d.attr,g="停用成功");var h=b.putInfo(f);c.showLoading(),h.then(function(b){c.hideLoading(),c.showTips(g),a.query()})},a.changeStatus=function(d,e){var f="";switch(d){case 1:f="addCondition";break;case 2:f="delCondition"}if(""!=f){b.putInfo("mng/profile/"+f+"/"+a.appid+"/"+e).then(function(b){localStorage.getItem("joinFiltrate")||1!=d?c.showTips("操作成功"):(c.showTips("操作成功,可以按属性名称在事件、漏斗或留存功能中查看或筛选",4e3),localStorage.setItem("joinFiltrate","joinFiltrate")),a.query()})}}}angular.module("app.manage").controller("profileCtrl",["$scope","HttpService","ToolService",a])}(),function(){function a(a,b,c,d,e,f){b.isDemo=d.isDemoUser(),b.queryInfo=function(){c.getInfo("account/detail",{}).then(function(a){b.myid=a.id,b.email=a.email,b.name=a.name,b.company=a.company,b.phone=a.phone,b.qq=a.qq,b.createTime=a.createTime,b.wechat=a.wechat,b.logList=null!=a.userLogList?a.userLogList:[]})},b.queryInfo(),b.save=function(){var a={name:b.name,company:b.company,phone:b.phone,wechat:b.wechat,qq:b.qq},e={name:{key:"username",max:32,val:a.name},company:{key:"companyname",max:96,val:a.company},phone:{key:"cellphone",val:a.phone},wechat:{key:"wechat",val:a.wechat},qq:{key:"qq",val:a.qq}};if(b.tip=formJudge(e),1!=b.tip.succ)return d.showTips(b.formTipMsg),!1;var f=c.putInfo("account/updateBase",a);d.showLoading(),f.then(function(a){d.hideLoading(),1==a?(d.showTips("修改成功"),b.toedit=!1):d.showTips("修改失败")})},b.savepwd=function(){var a={pwd:b.pwd,newpwd:b.newpwd},e={pwd:{key:"isNull",val:a.pwd},newpwd:{key:"pwd",val:a.newpwd},crmpwd:{key:"pwd",val:b.crmpwd}};if(b.tip=formJudge(e),void 0!=b.pwd&&b.pwd==b.newpwd&&(1==b.tip.succ&&(b.tip.succ=!1),b.tip.newpwd={status:!0,txt:"新旧密码一致,请重新修改密码"}),void 0!=b.newpwd&&void 0!=b.crmpwd&&b.newpwd!=b.crmpwd&&(1==b.tip.succ&&(b.tip.succ=!1),b.tip.crmpwd={status:!0,txt:"两次密码不一致,请重新输入"}),1!=b.tip.succ)return d.showTips(b.formTipMsg),!1;var f=c.putInfo("account/updatePwd?oldPassword="+a.pwd+"&newPassword="+a.newpwd,{});d.showLoading(),f.then(function(a){d.hideLoading(),1==a?(d.showTips("修改成功"),window.location.href="/login.html"):d.showTips("修改失败")},function(a){d.hideLoading(),-1001==a.code?b.tip={pwd:{status:!0,txt:"原密码输入错误,请重新输入"}}:d.showTips("修改失败")})}}angular.module("app.manage").controller("userinfoCtrl",["$rootScope","$scope","HttpService","ToolService","UtilService","$state",a])}(),function(){function a(a,b,c,d,e,f){a.query=function(){var b=c.getInfo("mng/usergroup/find/"+a.appid);d.showLoading(),b.then(function(b){d.hideLoading(),a.usergroupList=b})},a.$watch("appid",function(b){angular.isDefined(b)&&a.query()}),a.$on("flipinfo",function(b,c){a.flipPage=c}),a.doRemove=function(b){a.delstatus=!0,a.delId=b},a.removeInfo=function(){var b=c.deleteInfo("mng/usergroup/delete/"+a.delId);d.showLoading(),b.then(function(b){d.hideLoading(),a.delstatus=!1,d.showTips("删除成功"),a.query()})},a.gopage=function(a){angular.isDefined(a)?f.go("collect.usergroupDetail",{aid:a}):f.go("collect.usergroupDetail")},a.refreshExport=function(b){var e=b.dataUpdateTime;if(angular.isDefined(e)&&Date.isSameDay(new Date,new Date(e)))return d.showTips("已经是最新数据"),!1;var f=c.putInfo("mng/usergroup/refresh/"+b.id);d.showLoading(),f.then(function(b){d.hideLoading(),a.query()})}}function b(a,b,c,d,e,f,g,h){var i=h.aid,j=null;null!=i&&(j=a.id=i.id),a.mydate=d.getLastDays(-7,0),a.userType=0,a.$on("dateCustos",function(b,c){a.mydate=c}),a.$watch("mydate",function(b){angular.isDefined(b)&&(a.datestr=a.mydate.startDate+"至"+a.mydate.endDate)});var k=null,l=null;a.queryEventProfile=function(){k=c.getInfo(a.appid+"/profile/find"),k.then(function(b){a.profileList=b}),l=c.getInfo(a.appid+"/event/find"),l.then(function(b){a.eventList=b}),null!=j&&(d.showLoading(),f.all([k,l]).then(function(b){var f=i,g=f.profileInfo,h=f.eventInfo;if(!e.isNullStr(g)){var j=JSON.parse(g);a.profileRel=j.relation,profiles=j.profiles,j.profiles.filter(function(b){a.addProfile(b)})}if(!e.isNullStr(h)){var k=JSON.parse(h),l=[],m=[];a.eventRel=k.relation,k.events.filter(function(a){var b={event:a.event,param:[]};e.cloneJSON(a.params).filter(function(a){b.param.push(a.attr)}),l.push(a.event),m.push(b)});c.getInfo(a.appid+"/event/find/param?names="+l.join(",")+"¶ms="+JSON.stringify(m)).then(function(b){b.filter(function(b){for(var c=0;c<a.eventList.length;c++)if(b.eventName==a.eventList[c].eventName){a.eventList[c].profiles=b.profiles;break}}),k.events.filter(function(b){b.oldparams=e.cloneJSON(b.params),delete b.params,a.addEvent(b)})})}d.hideLoading()}))},a.$watch("appid",function(b){angular.isDefined(b)&&(null!=k?a.cancel():a.queryEventProfile())}),a.changeRel=function(b,c){switch(b){case 1:a.profileRel="and"==a.profileRel?"or":"and";break;case 2:a.eventRel="and"==a.eventRel?"or":"and";break;case 3:c.relation="and"==c.relation?"or":"and"}};var m=(new Date).getTime();a.getProfileNum=function(){return a.profileInfo?a.profileInfo.filter(function(a){return 0!=a.show}).length:0},a.addProfile=function(b){if(a.getProfileNum()>=5)return!1;m++;var c={id:"pro_"+m};if(b)for(var d in b)c[d]=b[d];a.profileInfo.push(c)},a.removeProfile=function(b){for(var c=0;c<a.profileInfo.length;c++)if(a.profileInfo[c].id==b.id){a.profileInfo[c].show=!1;break}},a.$on("profile",function(b,c){for(var d=0;d<a.profileInfo.length;d++)if(a.profileInfo[d].id==c.id){a.profileInfo[d]=c;break}}),a.eventinitname="请选择事件",a.getEventNum=function(){return a.eventInfo.filter(function(a){return 0!=a.show}).length},a.setEventStyle=function(){var b=-1,c=a.eventInfo.length;a.eventInfo.filter(function(a,d){0!=a.show&&(b++,a.style={"z-index":c-d})})},a.addEvent=function(b){if(a.getEventNum()>=5)return!1;m++;var d={id:"evt_"+m,eventid:"event_"+m,relation:"and"};if(b){for(var e in b)d[e]=b[e];d.eventinit=b.event}!function(b){a.$on(b.eventid,function(d,e){b.params=[],b.event=e.info.eventName,b.nullevent=!1;var f=function(){b.paramsList=e.info.profiles,b.oldparams&&(b.oldparams.filter(function(c){a.addEventParams(b,c)}),delete b.oldparams)};if(angular.isArray(e.info.profiles))f(e.info.profiles);else{c.getInfo(a.appid+"/event/find/param?names="+b.event).then(function(a){e.info.profiles=a[0].profiles,f()})}})}(d),a.eventInfo.push(d),a.setEventStyle()},a.removeEvent=function(b){for(var c=0;c<a.eventInfo.length;c++)if(a.eventInfo[c].id==b.id){a.eventInfo[c].show=!1;break}a.setEventStyle()},a.getEventParamsNum=function(a){return a.params?a.params.filter(function(a){return 0!=a.show}).length:5},a.addEventParams=function(b,c){if(!b.params||a.getEventParamsNum(b)>=3)return!1;m++;var d={id:"pam_"+m,pid:b.id};if(c)for(var e in c)d[e]=c[e];b.params.push(d)},a.removeEventParams=function(a,b){for(var c=0;c<a.params.length;c++)if(a.params[c].id==b.id){a.params[c].show=!1;break}},a.$on("event",function(b,c){for(var d=0;d<a.eventInfo.length;d++)if(a.eventInfo[d].id==c.pid)for(var e=a.eventInfo[d].params,f=0;f<e.length;f++)if(e[f].id==c.id){e[f]=c;break}});var n="";a.init=function(){a.profileInfo=[],a.eventInfo=[],a.profileRel="and",a.eventRel="and",null!=j&&(a.name=n=i.name,a.mark=i.mark,a.userType=i.userType,a.mydate={startDate:i.startDate,endDate:i.endDate})},a.init(),a.exixtName=function(b){if(angular.isDefined(b)&&1==b&&d.showLoading(),a.judgeNameChange(n,a.name)){c.getInfo("mng/usergroup/valid/"+a.appid,{name:a.name}).then(function(c){a.tip={},1==c?(a.tip={name:{status:!0,txt:"名称已存在"}},d.hideLoading()):angular.isDefined(b)&&1==b&&a.save()})}else angular.isDefined(b)&&1==b&&a.save()},a.save=function(){var b={name:a.name,mark:a.mark,userType:a.userType,startDate:a.mydate.startDate,endDate:a.mydate.endDate,app:a.appid},f="",g={relation:a.profileRel,profiles:[]},h=!1;a.profileInfo.filter(function(b){if(0!=b.show){e.isNullStr(b.attr)&&(a.$broadcast(b.id,"error"),h=!0);var c={};for(var d in b)"id"!=d&&(c[d]="value"!=d?b[d]:b[d].join(","),e.isNullStr(c[d])&&"pid"!=d&&(a.$broadcast(b.id,"error"),h=!0));g.profiles.push(c)}}),g.profiles.length>0&&(b.profileInfo=JSON.stringify(g),f="profile");var i={relation:a.eventRel,events:[]};a.eventInfo.filter(function(b){if(0!=b.show){var c={event:b.event,relation:b.relation,params:[]};e.isNullStr(b.event)?(b.nullevent=!0,h=!0):(b.nullevent=!1,b.params.filter(function(b){if(0!=b.show){e.isNullStr(b.attr)&&(a.$broadcast(b.id,"error"),h=!0);var d={};for(var f in b)"id"!=f&&"pid"!=f&&(d[f]="value"!=f?b[f]:b[f].join(","),e.isNullStr(b[f])&&(a.$broadcast(b.id,"error"),h=!0));c.params.push(d)}})),i.events.push(c)}}),i.events.length>0&&(b.eventInfo=JSON.stringify(i),f="event");var k={name:{key:"spcname",val:b.name}};if(a.tip=formJudge(k),""==f&&(a.tip.params={status:!0,txt:"至少选择用户属性或者触发事件其中一项"},a.tip.succ=!1),1!=a.tip.succ||h)return d.hideLoading(),d.showTips(a.formTipMsg),!1;var l=null,m="添加成功";null!=j?(b.id=j,l=c.putInfo("mng/usergroup/update",b),m="修改成功"):l=c.postInfo("mng/usergroup/create",b),d.showLoading(),l.then(function(b){d.hideLoading(),d.showTips(m),a.cancel()})},a.cancel=function(){g.go("collect.usergroup")}}angular.module("app.manage").controller("usergroupCtrl",["$scope","$rootScope","HttpService","ToolService","UtilService","$state",a]).controller("usergroupDetailCtrl",["$scope","$rootScope","HttpService","ToolService","UtilService","$q","$state","$stateParams",b])}(),function(){function a(a,b,c,d,e,f){}angular.module("app.manage").controller("nopowerCtrl",["$rootScope","$scope","HttpService","ToolService","$filter","UtilService",a])}(),function(){angular.module("app.active",[])}(),function(){var a=(new Date).getTime();angular.module("app.active").config(["$stateProvider","$urlRouterProvider",function(b,c){var d="active",e=["product"];b.state(d,{url:"",templateUrl:"/template/menu/collect.html?r="+a,controller:"collectCtrl"}),e.forEach(function(c){b.state("collect."+c,{url:"/"+d+"/"+c,views:{"content@":{templateUrl:"/template/"+d+"/"+c+".html?r="+a,controller:c+"Ctrl"}}})})}])}(),function(){function a(a,b,c,d,e,f,g){a.Prostatus=d.getCookie("ryioStatus"),a.UserId=d.getCookie("ryioUid"),a.UserEmail=$.cookie("ryioUname"),a.findStatus=function(){var e=b.getInfo("reged/findbyemail?email="+a.UserEmail);c.showLoading(),e.then(function(b){c.hideLoading(),1==b.status?0==b.appSize&&1==b.isChannelPerson?(c.showTips("没有控制权限"),a.time=2e3,$one_minute=g(function(){a.time-=1e3,0==a.time&&(window.location.href="login.html")},1e3)):(d.setCookie("ryioStatus",b.status,7),d.setCookie("ryioPastDate",b.pastDate,7),a.initpage(),window.location.href="index.html"):(d.setCookie("ryioStatus",b.status,7),d.setCookie("ryioPastDate",b.pastDate,7))})},a.findStatus(),a.postApply=function(){var e=b.getInfo("reged/verify/"+a.UserId);c.showLoading(),e.then(function(b){c.hideLoading(),-1==b.status&&(a.Prostatus=-1,d.setCookie("ryioStatus",b.status,7))})},a.useTrackingIO=function(){a.initpage(),f.isSuper||f.isManage?a.goPage("collect.app"):f.isAppManage&&a.goPage("collect.custommenu")}}angular.module("app.active").controller("productCtrl",["$scope","HttpService","ToolService","UtilService","$state","$rootScope","$interval",a])}(); \ No newline at end of file +!function(){angular.module("app.collect",[])}(),function(){var a=(new Date).getTime();angular.module("app.collect").config(["$stateProvider","$urlRouterProvider",function(b,c){var d="collect",e=["retention","funnel","export","intelligentpath","eventstats","custommenu","logtool","report","expiration"],f=[];b.state(d,{url:"",templateUrl:"/template/menu/"+d+".html?r="+a,controller:"collectCtrl"}),e.forEach(function(c){if(b.state(d+"."+c,{url:"/"+d+"/"+c,params:{stateinfo:null,pageid:null},views:{"content@":{templateUrl:"/template/"+d+"/"+c+".html?r="+a,controller:c+"Ctrl"}}}),f.indexOf(c)>-1){var e=c+"Detail";b.state("collect."+e,{url:"/"+d+"/"+e,params:{aid:null},views:{"content@":{templateUrl:"/template/"+d+"/"+e+".html?r="+a,controller:e+"Ctrl"}}})}}),b.state(d+".custommenuDetail",{url:"/"+d+"/custommenu/:pageid",views:{"content@":{templateUrl:"/template/"+d+"/custommenu.html?r="+a,controller:"custommenuCtrl"}}})}])}(),function(){function a(a,b,c,d,e){var f={analysis:["campaigninfo","channeleffect","attribute","effectevaluate","roi","keyword","packageinfo"],decisionsupport:["paymentinsight","potentialusergroup","device"],campaignmanager:["campaign","campgroup","datacb","onelink","sublink","subpackage"],export:["logexport","logdump","logtool","report","subcampaign"],eventmanage:["event","profile"]};b.getSubMenu=function(e){if("custommenu"==e&&a.isSuper&&0==b.ctmMenuList.length)return d.showAlp(),a.tipCustom=!0,!1;b.subflag==e&&c.current&&c.current.name!=e?b.subflag="":b.subflag=e,a.custID=""},b.closeTip=function(){a.tipCustom=!1,d.hideAlp()},b.okCust=function(){b.goPage("collect.custommenu"),b.closeTip()},a.$watch("pagePath",function(a){if(angular.isDefined(a)){b.subflag="";a.indexOf("Detail")>-1&&(a=a.substring(0,a));for(var c in f){if(f[c].indexOf(a)>-1){b.subflag=c;break}}"custommenu"==a&&(b.subflag=a)}})}angular.module("app.collect").controller("collectCtrl",["$rootScope","$scope","$state","ToolService","$timeout",a])}(),function(){function a(a,b,c,d,e,f,g,h){var i=(new Date).getTime(),j=h.pageid;b.queryInfoByApp=function(a,d){if(angular.isUndefined(a)||5==a){c.getInfo(b.appid+"/event/find").then(function(a){b.eventListAll=a,b.eventList=b.eventListAll.filter(function(a){return"install"!=a.eventName})});var f=c.getInfo(b.appid+"/event/find/allAttr");b.dimenId="-all",f.then(function(a){a.unshift({dimensionType:"whole",id:"-all",name:"总体",type:"string"});for(var c=0;c<a.length;c++)"population"!=a[c].dimensionType&&"source"!=a[c].dimensionType||(a[c].dimensionType="eventlist");b.dimensionList=a})}c.getInfo("mng/retention/find/"+b.appid).then(function(c){if(b.seatxt="",b.defineList=c,b.isEditInfo=1,2==a){for(var f=0;f<b.defineList.length;f++)if(b.defineList[f].id==d){b.define=b.defineList[f];break}b.defineFlag=++i}if(c.length>0)if(e.isNullStr(j))(1==a||3==a&&b.define&&b.define.id==d)&&b.clickDefine(b.defineList[0]);else{for(var f=0;f<b.defineList.length;f++)if(b.defineList[f].id==j){b.define=b.defineList[f];break}b.clickDefine(b.define),j=null}else b.clickType(b.typeList[1]);5==a&&(b.dimenRmd=++i)})},b.deviceId=!1,b.dimensionname="维度对比",b.usergroupid=-1,b.$on("dimensionId",function(a,c){b.dimenId=c.info.id,b.dimenObj=c.info,b.dimenEventType=c.info.eventType,"usergroup"==b.dimenId&&-1==b.usergroupid?(b.lengedNames=["整体"],b.dimenugkeys=e.cloneJSON(c.info.key),b.dimenugkeys.unshift("all"),c.info.value.filter(function(a){b.lengedNames.push(a)}),b.usergroupid=c.info.key[0],b.userIndex=1):b.usergroupid=-1}),b.showDemistion=function(){return b.define&&b.define.id>0||b.isShowCache},b.definename="请选择模板",b.clickDefine=function(c){b.define=c,b.typesign="define",b.typesname=c.name,b.ename=c.name,b.defineFlag=++i,b.showEventWin=!1,b.helpname="自定义留存",a.thirdtab=c.name},b.deleteDefine=function(a){b.delDefine=a,d.showAlp(),d.showLoading(),c.getInfo("custommenu/delete/valid/"+a.id+"?type=retention").then(function(a){d.hideLoading(),b.wantDelete=!0,b.custommenus=!!(angular.isArray(a)&&a.length>0)&&a})},b.doDelete=function(){b.closeWin(),d.showLoading(),c.deleteInfo("mng/retention/delete/"+b.delDefine.id).then(function(){d.showTips("删除成功"),b.queryInfoByApp(3,b.delDefine.id),d.hideLoading()})},b.date=d.getLastDays(-7),b.disTimeFlag=[],b.rangday=-1,b.changeTimeFlag=function(a){if(b.disTimeFlag.indexOf(a)>-1)return!1;b.timeFlag=a},b.changeTimeFlag("day"),b.$on("dateCustos",function(a,c){var d=diffDate(c.startDate,c.endDate);d>=15||d>=60?(b.disTimeFlag=["day"],"day"==b.timeFlag&&(b.timeFlag=d>=60?"month":"week")):c.startDate==c.endDate?(b.disTimeFlag=["week","month"],b.timeFlag="day"):b.disTimeFlag=[],b.date=c}),b.$watch("date",function(){angular.isDefined(b.date)&&(b.datestr=b.date.startDate+"至"+b.date.endDate)}),b.typeList=[{id:"define",name:"新建自定义留存"},{id:"install",name:"新增留存"},{id:"dau",name:"活跃留存"}],b.hasEditPower()||(b.typeList=b.typeList.slice(1)),b.clickType=function(c){b.typesign=c.id,b.typesname=c.name,b.helpname=c.name,b.define={id:0},"define"==c.id?(b.addModel(0),b.helpname="自定义留存"):(b.defineFlag=++i,b.showEventWin=!1,b.isShowCache=!1,a.thirdtab=c.name)},b.eventInfo=[],b.dimenInit=b.dimenId="-all",b.$watch("appid",function(a){angular.isDefined(a)&&(b.dimenId="-all",b.lengedNames=[],b.queryInfoByApp(5),b.clickType(b.typeList[1]))}),b.initEventInfo=function(a,f){if(b.eventInfo.filter(function(a){a.show=!1}),1==a||f){b.isShowCache=0==a||"新建自定义留存"==b.typesname,d.showLoading();var g=b.isShowCache?JSON.parse(JSON.parse(f)):JSON.parse(b.define.eventInfo),h=[],i=[];g.filter(function(a){var b={event:a.event,param:[]};e.cloneJSON(a.params).filter(function(a){b.param.push(a.attr)}),h.push(a.event),i.push(b)});c.getInfo(b.appid+"/event/find/param?names="+h.join(",")+"¶ms="+JSON.stringify(i)).then(function(a){a.filter(function(a){for(var c=0;c<b.eventList.length;c++)if(a.eventName==b.eventList[c].eventName){b.eventList[c].profiles=a.profiles;break}}),g.filter(function(a){a.oldparams=e.cloneJSON(a.params),delete a.params,b.addEvent(a)}),d.hideLoading()})}else b.addEvent(),b.addEvent()},b.changeRel=function(a){a.relation="and"==a.relation?"or":"and"},b.changeSeeFlag=function(a){b.seeFlag=a};var i=(new Date).getTime();b.eventinitname="请选择事件",b.addEvent=function(a){i++;var d={id:"evt_"+i,eventid:"event_"+i,relation:"and",show:!0};if(a){for(var e in a)d[e]=a[e];d.eventinit=a.event}!function(a){b.$on(a.eventid,function(d,e){a.params=[],a.event=e.info.eventName,a.nullevent=!1;var f=function(){a.paramsList=e.info.profiles,a.oldparams&&(a.oldparams.filter(function(c){b.addEventParams(a,c)}),delete a.oldparams)};if(angular.isArray(e.info.profiles))f(e.info.profiles);else{c.getInfo(b.appid+"/event/find/param?names="+a.event).then(function(a){e.info.profiles=a[0].profiles,f()})}})}(d),b.eventInfo.length%2==0?(d.title="初始行为",d.zidx=2):(d.zidx=1,d.title="回访行为"),b.eventInfo.push(d)},b.closeAddWin=function(a){b.showEventWin=!1,1==a&&2==b.isEditInfo&&b.clickType(b.typeList[1]),b.isEditInfo=1},b.getEventParamsNum=function(a){return a&&a.params?a.params.filter(function(a){return 0!=a.show}).length:5},b.addEventParams=function(a,c){if(!a.params||b.getEventParamsNum(a)>=3)return!1;i++;var d={id:"pam_"+i,pid:a.id};if(c)for(var e in c)d[e]=c[e];a.params.push(d)},b.removeEventParams=function(a,b){for(var c=0;c<a.params.length;c++)if(a.params[c].id==b.id){a.params[c].show=!1;break}},b.initCondition=function(){if(!b.canSave())return!1;b.initEventInfo()},b.$on("event",function(a,c){for(var d=0;d<b.eventInfo.length;d++)if(b.eventInfo[d].id==c.pid)for(var e=b.eventInfo[d].params,f=0;f<e.length;f++)if(e[f].id==c.id){e[f]=c;break}}),b.canSave=function(){if(!b.eventInfo||0==b.eventInfo.length)return!1;for(var a=!1,c=0;c<b.eventInfo.length;c++){var d=b.eventInfo[c];if(1==d.show&&d.event){a=!0;break}}return a},b.nowiptEvents="",b.getEventCrm=function(a){var c=!1,f=[],g=[],h=!1;if(b.nowiptEvents="",b.eventInfo.filter(function(a){if(0!=a.show){var d={event:a.event,relation:a.relation,params:[]};e.isNullStr(a.event)?(a.nullevent=!0,c=!0):(a.nullevent=!1,angular.isUndefined(a.params)?h=!0:a.params.filter(function(a){if(0!=a.show){var f={};for(var g in a)"id"!=g&&"pid"!=g&&(f[g]="value"!=g?a[g]:a[g].join(","),e.isNullStr(a[g])&&(b.$broadcast(a.id,"null"),c=!0));d.params.push(f)}})),f.push(d),g.push(a.event)}}),h)return!1;c?a&&d.showTips(b.formTipMsg):b.nowiptEvents=JSON.stringify(f)},b.isEditInfo=1,b.addModel=function(a){var c=e.getItem("retention_"+b.appid);if(a){if("install"==b.typesign||"dau"==b.typesign||b.define&&0==b.define.id&&!c)return!1;b.isEditInfo=3}else b.isEditInfo=2;b.initEventInfo(a,c),b.showEventWin=!0},b.nameWin=function(a){if(b.getEventCrm(),""==b.nowiptEvents)return d.hideLoading(),d.showTips(b.formTipMsg),!1;d.showAlp(),b.wantSave=!0,b.currentDefine={},b.ename="",angular.isDefined(a)&&(b.currentDefine=b.define,b.define={id:0})},b.lookReport=function(){if(!b.canSave())return!1;b.getEventCrm(!0),""!=b.nowiptEvents&&(b.showEventWin=!1,b.query(!0))},b.closeWin=function(a){b.wantSave=!1,b.wantDelete=!1,a&&(1==a&&(b.showEventWin=!1),2==a&&3==b.isEditInfo&&(b.define=b.currentDefine)),b.isEditInfo=1,d.hideAlp()},b.save=function(){if(b.getEventCrm(),""==b.nowiptEvents)return!1;var a=function(){var a={app:b.appid,eventInfo:b.nowiptEvents,name:b.ename},e=null,f="添加成功",g=1;b.define.id>0?(a.id=b.define.id,e=c.putInfo("mng/retention/update",a),f="修改成功",g=2):e=c.postInfo("mng/retention/create",a),d.showLoading(),e.then(function(c){b.closeWin(1),d.hideLoading(),d.showTips(f),b.queryInfoByApp(g,a.id),b.isShowCache&&(localStorage.removeItem("retention_"+b.appid),b.isShowCache=!1)})};if(0==b.define.id){var f={name:{key:"spcname",val:b.ename}};if(b.tip=formJudge(f),e.isNullStr(b.ename)||1!=b.tip.succ)return d.showTips("请输入20个汉字以内名称,允许字符为中英文数字_-"),!1;d.showLoading();c.getInfo("mng/retention/valid/"+b.appid,{name:b.ename}).then(function(b){1==b?(d.hideLoading(),d.showTips("名称已存在")):a()})}else a()};var k=function(){var a={reportview:b.timeFlag,retentiontype:b.typesign,appid:b.appid};if(b.isTempLook||b.isShowCache){if(b.getEventCrm(),""==b.nowiptEvents)return-1;a.eventinfo=b.nowiptEvents,e.setItem("retention_"+b.appid,JSON.stringify(b.nowiptEvents)),b.isShowCache=!0}else if(b.define&&b.define.id>0)a.eventinfo=b.define.eventInfo;else if("define"==b.typesign)return-2;return a.startdate=b.date.startDate,a.enddate=b.date.endDate,a.datatype="list",a.eventType=b.dimenEventType,a};b.retetionConfig={color:d.getTenColors(),ispercent:!0,legend:!1};var l=0,m=0;b.query=function(a){b.isTempLook=!!a;var f=k();if(-1==f)return!1;if(-2==f)return b.clickType(b.typeList[1]),!1;if(f.datatype="list",f.dimention=b.dimenId,"usergroup"==f.dimention){if(-1==b.usergroupid)return!1;f.usergroupid=b.usergroupid}f.isdevice="device"==b.seeFlag,f.eventType=b.dimenEventType;var g=null,h="",j="",m="",n=(b.define.name||b.typesname)+"的留存趋势详情";b.define&&b.define.id>0&&(m=b.define.id);"day"!=b.timeFlag&&b.timeFlag;var o="retention/report/"+b.appid;h=o,j="customretention","define"!=b.typesign&&"dau"!=b.typesign?f.eventinfo="payment,loggedin,reged":"dau"==b.typesign&&(f.retentiontype="active"),g=c.getInfo(o,f),b.retetionLoading=!0,b.showDetail=!1,b.infolistLoading=!0,g.then(function(a){b.infolist=a,f.dimention&&(b.infolist.name[0]=b.dimenObj.name);var c=a.val;b.infolistLoading=!1;var g={name:[],key:[],val:[],rmd:++i};if(c.length>0){g.key=a.key.slice(1);var k=a.columnkey;c.filter(function(a){g.name.push(a[k[0]]);for(var b=[],c=2;c<k.length;c++)b.push(a["rate_"+k[c]]);g.val.push(b)})}else"usergroup"==b.dimenId&&b.lengedNames&&b.lengedNames.length>1&&(g.name=["整体",b.lengedNames[b.userIndex]]);b.eventChartData=g,"usergroup"!=f.dimention&&(b.lengedNames=g.name);var o=5;g.name.length>o?b.myChartData={name:g.name.slice(0,o),key:g.key,val:g.val.slice(0,o),rmd:++i}:b.myChartData=e.cloneJSON(g),l=0;var p=a.columnkey[2];a.val.filter(function(a){a[p]>l&&(l=a["rate_"+p])}),b.retetionLoading=!1,b.myChartDataCondition=d.getChartConditions(n,h,f,j,m)},function(a){b.myChartData=d.noDataChart(),b.infolist={},b.retetionLoading=!1,b.infolistLoading=!1})};var n=10;b.changeChartData=function(a){if(!b.myChartData)return!1;if("usergroup"==b.dimenId){var c=b.lengedNames.indexOf(a);if(c>0&&b.dimenugkeys.indexOf(b.usergroupid)!=c)return b.usergroupid=b.dimenugkeys[c],b.userIndex=c,!1;if(0==c)return d.showTips("整体不可取消"),!1}var f=b.myChartData.name.length,c=b.myChartData.name.indexOf(a);if(c>-1){var g=e.cloneJSON(b.myChartData);g.name.splice(c,1),g.val.splice(c,1),g.rmd=++i,b.myChartData=g}if(f<n&&-1==c){var h=b.eventChartData.name.indexOf(a),g=e.cloneJSON(b.myChartData);g.name.push(a),g.val.push(b.eventChartData.val[h]),g.rmd=++i,b.myChartData=g}},b.lengedBgStyle=function(a){var c=b.myChartData.name.indexOf(a);return c>-1?{"background-color":b.retetionConfig.color[c],"border-color":"transparent"}:{}},b.lengedClass=function(a){if(!b.myChartData)return"";var c=b.myChartData.name.length,d=b.myChartData.name.indexOf(a);return c>=n&&-1==d?"disable":""},b.getBgColor=function(a,b,c){return b<1?{}:(a=1==c&&l>0?.8*Number((a/l).toFixed(2)):2==c&&m>0?.8*Number((a/m).toFixed(2)):0,{"background-color":"rgba(109,199,190,"+a+")"})},b.subDetail=function(a,e){if(e>0)return!1;var f=b.infolist.columnkey[0];b.detailInfoTitle=a[f],b.detailInfoLoading=!0,b.showDetail=!0;var g=k(),h=null;b.detailInfo=[],g.isdevice="device"==b.seeFlag;var i="",j="",l="";if(j="detailcustomretention","define"!=b.typesign&&"dau"!=b.typesign){"day"!=b.timeFlag&&b.timeFlag,g.isdetail=!0,i="reportdetail/"+b.appid}else"dau"==b.typesign?g.retentiontype="active":b.define&&b.define.id>0&&(l=b.define.id);if("整体"!=b.detailInfoTitle&&b.dimenId&&"-all"!=b.dimenId)if("usergroup"==b.dimenId)g.usergroupid=b.usergroupid;else{var n={};n[b.dimenId]=a[b.dimenId+"_key"],n.type=b.dimenObj.type,g.dimention=JSON.stringify(n)}var o="";"define"!=b.typesign&&"dau"!=b.typesign?(o=i,g.eventinfo="payment,loggedin,reged",h=c.getInfo("retention/"+i,g)):"dau"==b.typesign?(o="retention/reportdetail/"+b.appid,g.eventinfo="payment,loggedin,reged",h=c.getInfo(o,g)):(o="retention/reportdetail/"+b.appid,h=c.getInfo(o,g)),g.eventType=b.dimenEventType,h.then(function(a){b.detailInfo=a,b.detailInfoLoading=!1,m=0;var c=a.columnkey[2];a.val.filter(function(a){a[c]>m&&(m=a["rate_"+c])}),b.detailInfoCondition=d.getChartConditions((b.define.name||b.typesname)+"的留存明细",o,g,j,l)},function(a){b.detailInfoLoading=!1})},b.$watch("appid+date.startDate+date.endDate+seeFlag+timeFlag+dimenId+defineFlag+usergroupid",function(){angular.isDefined(b.appid)&&angular.isDefined(b.date)&&angular.isDefined(b.typesign)&&b.query()})}angular.module("app.collect").controller("retentionCtrl",["$rootScope","$scope","HttpService","ToolService","UtilService","$timeout","$q","$stateParams",a])}(),function(){function a(a,b,c,d,e,f,g,h){var i=f.pageid;a.addFirst=!1,a.addFirstFunnel=function(){a.addFirst=!0,a.showEventWin=!0,a.currentFunnel={},a.isEditInfo=2,a.initFunnel()};var j=(new Date).getTime(),k=null;a.queryInfoByApp=function(b,d){if(angular.isUndefined(b)||5==b){k=c.getInfo(a.appid+"/event/find"),k.then(function(b){a.eventListAll=b,a.eventList=a.eventListAll.filter(function(a){return"install"!=a.eventName})});c.getInfo(a.appid+"/event/find/allAttr").then(function(b){b.unshift({dimensionType:"whole",id:"-all",name:"总体",type:"string"});for(var c=0;c<b.length;c++)"population"!=b[c].dimensionType&&"source"!=b[c].dimensionType||(b[c].dimensionType="eventlist");a.dimensionList=b})}c.getInfo("funnel/find/"+a.appid).then(function(c){if(a.funnelList=c,a.isEditInfo=1,c.length>0)if(g.isNullStr(i)||(d=i),g.isNullStr(d))a.clickFunnel(c[0]);else{for(var e=!1,f=0;f<a.funnelList.length;f++)if(a.funnelList[f].id==d){a.funnelInfo=a.funnelList[f],e=!0;break}e?g.isNullStr(i)?a.defineFlag=++j:(a.clickFunnel(a.funnelInfo),i=null):e||a.funnelInfo.id!=d||a.clickFunnel(c[0])}else a.addFirst=!1,a.funnelInfo={};5==b&&(a.dimenRmd=++j)})},a.deviceId=!1,a.dimensionname="维度对比",a.usergroupid=-1,a.$on("dimensionId",function(b,c){a.dimenId=c.info.id,a.dimenObj=c.info,a.dimenEventType=c.info.eventType,"usergroup"==a.dimenId&&-1==a.usergroupid?(a.lengedNames=["整体"],a.dimenugkeys=g.cloneJSON(c.info.key),a.dimenugkeys.unshift("all"),c.info.value.filter(function(b){a.lengedNames.push(b)}),a.usergroupid=c.info.key[0]):a.usergroupid=-1}),a.date=d.getLastDays(-7,0),a.$on("dateCustos",function(b,c){a.date=c}),a.$watch("date",function(){angular.isDefined(a.date)&&(a.datestr=a.date.startDate+"至"+a.date.endDate)}),a.definename="请选择漏斗",a.clickFunnel=function(c){a.funnelInfo=c,a.ename=c.name,a.defineFlag=++j,a.showEventWin=!1,a.isEditInfo=1,b.thirdtab=c.name},a.deleteFunnel=function(b){a.delDefine=b,d.showAlp(),d.showLoading(),c.getInfo("custommenu/delete/valid/"+b.id+"?type=funnel").then(function(b){d.hideLoading(),a.wantDelete=!0,a.custommenus=!!(angular.isArray(b)&&b.length>0)&&b})},a.doDelete=function(){a.closeWin(),d.showLoading(),c.deleteInfo("mng/funnel/delete/"+a.delDefine.id).then(function(){d.showTips("删除成功"),a.queryInfoByApp(3,a.delDefine.id),d.hideLoading(),b.operSubmitData("删除")})},a.closeAddWin=function(){a.showEventWin=!1,a.isEditInfo=1,a.addFirst=!1},a.eventinitname="请选择事件",a.getEventNum=function(){return a.eventInfo?a.eventInfo.filter(function(a){return 0!=a.show}).length:20},a.setEventSteps=function(){if(!a.eventInfo)return 20;var b=-1,c=a.eventInfo.length;a.eventInfo.filter(function(a,d){0!=a.show&&(b++,a.steps=["一","二","三","四","五","六","七","八","九","十"][b],a.style={"z-index":c-d})})},a.maxStep=7,a.addEvent=function(b){if(a.getEventNum()>=a.maxStep)return!1;j++;var d={id:"evt_"+j,eventid:"event_"+j,relation:"and"};if(b){for(var e in b)d[e]=b[e];d.eventinit=b.event}!function(b){a.$on(b.eventid,function(d,e){b.params=[],b.event=e.info.eventName,b.nullevent=!1;var f=function(){b.paramsList=e.info.profiles,b.oldparams&&(b.oldparams.filter(function(c){a.addEventParams(b,c)}),delete b.oldparams)};if(angular.isArray(e.info.profiles))f(e.info.profiles);else{c.getInfo(a.appid+"/event/find/param?names="+b.event).then(function(a){e.info.profiles=a[0].profiles,f()})}})}(d),a.eventInfo.push(d),a.setEventSteps()},a.removeEvent=function(b){if(a.getEventNum()<=2)return d.showTips("漏斗步骤不能少于2步"),!1;for(var c=0;c<a.eventInfo.length;c++)if(a.eventInfo[c].id==b.id){a.eventInfo[c].show=!1;break}a.setEventSteps()},a.changeRel=function(a){a.relation="and"==a.relation?"or":"and"},a.getEventParamsNum=function(a){return a.params?a.params.filter(function(a){return 0!=a.show}).length:5},a.addEventParams=function(b,c){if(!b.params||a.getEventParamsNum(b)>=3)return!1;j++;var d={id:"pam_"+j,pid:b.id};if(c)for(var e in c)d[e]=c[e];b.params.push(d)},a.removeEventParams=function(a,b){for(var c=0;c<a.params.length;c++)if(a.params[c].id==b.id){a.params[c].show=!1;break}},a.$on("event",function(b,c){for(var d=0;d<a.eventInfo.length;d++)if(a.eventInfo[d].id==c.pid)for(var e=a.eventInfo[d].params,f=0;f<e.length;f++)if(e[f].id==c.id){e[f]=c;break}}),a.dayList=[{id:1,name:"1天"},{id:2,name:"2天"},{id:3,name:"3天"},{id:4,name:"4天"},{id:5,name:"5天"},{id:6,name:"6天"},{id:7,name:"7天"}],a.windowsinit=a.dayList[0].id,a.$on("windows",function(b,c){a.windows=c.info.id}),a.eventInfo=[],a.initFunnel=function(b){a.eventInfo.filter(function(a){a.show=!1}),b?(a.ename=a.funnelInfo.name,a.windowsinit=a.funnelInfo.window,d.showLoading(),h.all([k]).then(function(b){var e=JSON.parse(a.funnelInfo.eventInfo),f=[],h=[];e.filter(function(a){var b={event:a.event,param:[]};g.cloneJSON(a.params).filter(function(a){b.param.push(a.attr)}),f.push(a.event),h.push(b)}),c.getInfo(a.appid+"/event/find/param?names="+f.join(",")+"¶ms="+JSON.stringify(h)).then(function(b){b.filter(function(b){for(var c=0;c<a.eventList.length;c++)if(b.eventName==a.eventList[c].eventName){a.eventList[c].profiles=b.profiles;break}}),e.filter(function(b){JSON.stringify(a.eventList).indexOf(b.event)>-1&&(b.oldparams=g.cloneJSON(b.params)),delete b.params,a.addEvent(b)}),d.hideLoading()})})):(a.addEvent(),a.addEvent())},a.isEditInfo=1,a.addFunnel=function(b){if(b){if(!a.funnelInfo||!a.funnelInfo.id||2==a.isEditInfo)return!1;a.isEditInfo=3,a.currentFunnel=a.funnelInfo}else a.isEditInfo=2,a.currentFunnel={};a.initFunnel(b),a.showEventWin=!0},a.initCondition=function(){a.canSave()&&a.initFunnel()},a.getFunnelEventInfo=function(){var b=!1,c=[],d=[];return a.eventInfo.filter(function(e){if(0!=e.show&&JSON.stringify(a.eventList).indexOf(e.event)<0&&(e.nullevent=!0,b=!0),0!=e.show&&JSON.stringify(a.eventList).indexOf(e.event)>-1){var f={event:e.event,relation:e.relation,params:[]};g.isNullStr(e.event)?(e.nullevent=!0,b=!0):(e.nullevent=!1,e.params.filter(function(c){if(0!=c.show){var d={};for(var e in c)"id"!=e&&"pid"!=e&&(d[e]="value"!=e?c[e]:c[e].join(","),g.isNullStr(c[e])&&(a.$broadcast(c.id,"null"),b=!0));f.params.push(d)}})),c.push(f),d.push(e.event)}}),!b&&c.length>0?{eventInfo:JSON.stringify(c),events:d.join(",")}:{}},a.nameWin=function(b){if(!a.getFunnelEventInfo().events)return d.showTips(a.formTipMsg),!1;d.showAlp(),a.wantSave=!0,a.ename="",b&&(a.currentFunnel={id:0})},a.closeWin=function(b){a.wantSave=!1,a.wantDelete=!1,b&&(2==b&&3==a.isEditInfo?a.currentFunnel=a.funnelInfo:a.showEventWin=!1),d.hideAlp()},a.canSave=function(){if(!a.eventInfo||0==a.eventInfo.length)return!1;for(var b=!1,c=0;c<a.eventInfo.length;c++){var d=a.eventInfo[c];if(0!=d.show&&d.event){b=!0;break}}return b},a.save=function(){var e=function(){var e={name:a.ename,app:a.appid,window:a.windows},f=a.getFunnelEventInfo();if(!f.events)return d.showTips(a.formTipMsg),!1;e.eventInfo=f.eventInfo,e.events=f.events;var g=null,h="添加成功";a.currentFunnel.id?(e.id=a.currentFunnel.id,g=c.putInfo("mng/funnel/update",e),h="修改成功"):g=c.postInfo("mng/funnel/create",e),d.showLoading(),g.then(function(c){a.closeWin(1),d.hideLoading(),d.showTips(h),a.queryInfoByApp(1,a.currentFunnel.id),a.currentFunnel.id||b.operSubmitData("新建")})};if(a.currentFunnel.id&&0!=a.currentFunnel.id)e();else{var f={name:{key:"spcname",val:a.ename}};if(a.tip=formJudge(f),g.isNullStr(a.ename)||1!=a.tip.succ)return d.showTips("请输入20个汉字以内名称,允许字符为中英文数字_-"),!1;d.showLoading();c.getInfo("mng/funnel/valid/"+a.appid,{name:a.ename}).then(function(a){1==a?(d.hideLoading(),d.showTips("名称已存在")):e()})}},a.dimenInit=a.dimenId="-all",a.$watch("appid",function(b){angular.isDefined(b)&&(a.dimenId="-all",a.lengedNames=[],a.funnelInfo={},a.queryInfoByApp(5))}),a.chartKey=[],a.chartConfig={color:["#5fb5f1","#e6e6e6"],legend:!1,ispercent:!0},a.queryList=function(){var b={startdate:a.date.startDate,enddate:a.date.endDate,appid:a.appid};if(b.datatype="list",b.eventType=a.dimenEventType,a.dimenId&&"-all"!=a.dimenId&&(b.dimention=a.dimenId,"usergroup"==b.dimention)){if(-1==a.usergroupid)return!1;b.usergroupid=a.usergroupid}b.isdevice="device"==a.seeFlag,a.chartConfig.isdevice=b.isdevice;var e="funnel/report/"+a.funnelInfo.id,f=c.getInfo(e,b);a.listInfoLoading=!0,a.chartLoading=!0,a.currentChartName="",f.then(function(c){if(a.listInfoData=c,a.listInfoLoading=!1,a.chartListInfo=c.val,b.dimention&&(a.listInfoData.name[0]=a.dimenObj.name,"usergroup"!=b.dimention)){a.lengedNames=[];var f=c.columnkey[0];a.chartListInfo.filter(function(b){a.lengedNames.push(b[f])})}a.chartKey=a.listInfoData.key,a.chartKeyName=a.listInfoData.eventname,"usergroup"==b.dimention?a.setFunnelData(1):a.setFunnelData(0),a.listInfoDataCondition=d.getChartConditions("漏斗转化-"+a.funnelInfo.name,e,b,"funnel",a.funnelInfo.id)},function(b){a.chartData=d.noDataChart(),a.listInfoData={},a.listInfoLoading=!1,a.chartLoading=!1})},a.currentChartName="",a.setFunnelData=function(b,c){c&&1==c&&(b=a.lengedNames.indexOf(b));var e=a.chartListInfo[b];if("usergroup"==a.dimenId&&c&&1==c){if(b>0&&a.dimenugkeys.indexOf(a.usergroupid)!=b)return a.usergroupid=a.dimenugkeys[b],!1;b>0&&(e=a.chartListInfo[1])}if(a.lengedNames&&a.lengedNames.length>0){if(a.currentChartName==a.lengedNames[b])return!1;a.currentChartName=a.lengedNames[b]}else a.currentChartName="整体";a.chartLoading=!1,a.chartData=d.getFunnelData(e,a.chartKey,a.chartKeyName)},a.getChartStyle=function(b){var c=a.lengedNames.indexOf(b);return"usergroup"!=a.dimenId&&a.currentChartName==a.lengedNames[c]||"usergroup"==a.dimenId&&("整体"!=a.currentChartName&&a.dimenugkeys.indexOf(a.usergroupid)==c||"整体"==a.currentChartName&&0==c)?{"background-color":a.chartConfig.color[0],"border-color":"transparent"}:{}},a.$watch("date.startDate+date.endDate+defineFlag+seeFlag+dimenId+usergroupid",function(b){if(angular.isUndefined(a.appid)||angular.isUndefined(a.date)||angular.isUndefined(a.funnelInfo)||!a.funnelInfo.id)return!1;a.queryList()})}angular.module("app.collect").controller("funnelCtrl",["$scope","$rootScope","HttpService","ToolService","$state","$stateParams","UtilService","$q",a])}(),function(){function eventstatsCtrl($scope,$rootScope,HttpService,ToolService,UtilService,$filter,$timeout,$stateParams,$q){$scope.formatList=[{format:"percent",name:"百分比"},{format:"float",name:"两位小数"},{format:"int",name:"整数"}],$scope.formatinitname="整数",$scope.groupbys=[],$scope.dimensionname="请选择分组",$scope.dimenInit="-all",angular.element(document).on("click",function(){$scope.$apply(function(){$scope.showProList=!1,$scope.nowEvent=""})}),$scope.getwidth=function(a){return 6*ToolService.getByteLen(a)};var getLastIndex=function(a,b){if(a){var c=a.length,d=0;return c>0&&(d=a.split("").reverse().join("").search(b||regexp))>-1&&(d=c-d-1),d}},ischrome=UtilService.getBrowser().indexOf("Chrome")>-1;$scope.changeExpression=function(ex,index,event){$scope.expressionObj=index>=0?document.getElementById("expression_"+index):$scope.expressionObj;var focusIndex=sectionTool.getCursortPosition($scope.expressionObj),value=ex.expressionName?ex.expressionName:"";value=value.substring(0,focusIndex);var s1=value.substring(getLastIndex(value),focusIndex),filterTxt="";$scope.currentIndex=index,getLastIndex(s1)==s1.length-1&&(s1=s1.substring(1));var showList=function(){$scope.showProList=!0;var a=document.getElementById("evtBox").getBoundingClientRect(),b=$scope.expressionObj.value.substring(0,focusIndex),c=b.visualLength()-$scope.expressionObj.scrollLeft,d=$scope.expressionObj.getBoundingClientRect(),e=d.top+d.height-a.top,f=filterTxt.visualLength(),g=d.left-a.left+c-f+13;ischrome||(g-=16,$scope.expressionObj.scrollLeft>36&&(focusIndex==$scope.expressionObj.value.length?g-=36:g-=10)),document.getElementById("optionList").style.left=g+"px",document.getElementById("optionList").style.top=e+"px"};if($scope.eventIndex=-1,$(".optionList ul").scrollTop(0),$scope.nowEvent="",-1==s1.indexOf(".")){$scope.epropertyList=$scope.eventList,filterTxt=s1;var filterIndex=filterTxt.search(regexp);filterIndex>-1&&(filterTxt=filterTxt.slice(filterIndex+1)),$scope.typeName=eval(["自然事件","虚拟事件"]),$scope.typeKey=eval(["nature","virtual"])}else{$scope.typeName=[],$scope.typeKey=[];var count=s1.match(/\./g).length;if(filterTxt=s1.substring(s1.lastIndexOf(".")+1),1==count){var findex=s1.split("").join("").search(regexp),start=0;0==findex&&(start=1);var tn=s1.substring(start,s1.indexOf("."));$scope.getEventName(tn),$scope.getAttrByEvent($scope.selectEvent,showList)}else if(2==count){var findex=s1.split("").join("").search(regexp),start=0,fd=s1.indexOf(".");0==findex&&(start=1);var en=s1.substring(start,fd),pn=s1.substring(fd+1,s1.lastIndexOf("."));$scope.getEventName(en),$scope.getAttrByEvent($scope.selectEvent,function(a){for(var b=0;b<a.length;b++)if(a[b].name==pn){$scope.selectAttr=a[b];break}if(a.length>0&&$scope.selectAttr&&!$scope.selectAttr.isleaf){var c=$scope.kpiList.filter(function(a){return a.viewType==$scope.selectAttr.type||"all"==a.viewType});$scope.showProList=!0,$scope.epropertyList=c}else $scope.epropertyList=[]},1)}else $scope.epropertyList=[]}$scope.epropertyList.length>0&&(event&&!event.isleaf||!event)?showList():$scope.showProList=!1,$scope.filterSearch=filterTxt,$scope.currentExpression=ex},$scope.getEventName=function(a){for(var b=0;b<$scope.eventList.length;b++)if($scope.eventList[b].name==a){$scope.selectEvent=$scope.eventList[b];break}},$scope.$watch("filterSearch",function(a){if(angular.isUndefined(a)||!a)return!1;$scope.virtual="",$scope.nature="",$scope.epropertyList.filter(function(b){angular.uppercase(b.name).indexOf(angular.uppercase(a))>-1&&"virtual"==b.type&&($scope.virtual=b.type),angular.uppercase(b.name).indexOf(angular.uppercase(a))>-1&&"nature"==b.type&&($scope.nature=b.type)})}),$scope.expresstionTransform=function(a){var b={expression:a.expressionName,appkey:$scope.appid},c=HttpService.postInfo("expression/transform",b),d=a;c.then(function(a){d.error=!1,11e3==a.code?d.error=!0:(d.error=!1,d.expression=a)},function(){d.error=!0})},$scope.showFlow=!0,$scope.changeFlow=function(a){$scope.showFlow=1!=a},$scope.$watch("currentExpression",function(a,b){if(angular.isUndefined(a)||!a)return!1;if(!a.expressionName)return void $scope.changeExpression(a,$scope.currentIndex);if(!(!b||a==b||a&&b&&a.expressionName==b.expressionName)){$scope.expresstionTransform(a);var c=a.expressionName;getLastIndex(c)!=c.length-1&&"."!=c.slice(-1)||$scope.changeExpression(a,$scope.currentIndex)}},!0);var regexp=/[\+\-\*\/\(\)]/g;$scope.getProperty=function(a){var b=$scope.expressionObj.selectionStart,c=$scope.currentExpression.expressionName?$scope.currentExpression.expressionName:"",d=c.substring(0,b),e=c.substring(b),f="",g="",h=/[\+\-\*\/\(\)\.]/g;d=d.slice(0,getLastIndex(d,h)+1);for(var i=0;i<$scope.epropertyList.length;i++){var j=e.search(regexp);if((e.indexOf(".")<j?e.slice(0,e.indexOf(".")):e.indexOf(".")>j?e.slice(0,j):e.slice(0))==$scope.epropertyList[i].name){f=$scope.epropertyList[i].type,g=$scope.epropertyList[i].isleaf;break}}if(0!=e.indexOf(".")&&!a.viewType){var j=e.search(regexp);e=-1==j&&e.indexOf(".")>-1||e.indexOf(".")>-1&&j>-1&&e.indexOf(".")<j?e.substring(e.indexOf(".")):"."+e}if(f&&a.type!=f&&!a.isleaf||a.isleaf||g){var j=e.search(regexp);e=a.isleaf||g?(a.isleaf?"":".")+(j>-1?e.substring(j):""):"."+e.substring(j)}$scope.currentExpression.expressionName=d+a.name+e,$scope.expressionObj.value=$scope.currentExpression.expressionName;var k=d+a.name,l="."==k[k.length-1]||a.viewType||a.isleaf?k.length:k.length+1;sectionTool.setCaretPosition($scope.expressionObj,l),$scope.selectEvent=a.type||a.isleaf?$scope.selectEvent:a,$scope.selectAttr=a.type&&!a.isleaf?a:$scope.selectAttr,$timeout(function(){$scope.changeExpression($scope.currentExpression,-1,a)},100)},$scope.watchKey=function(a,b){if(37==b.keyCode||39==b.keyCode){var c=$timeout(function(){$scope.changeExpression(a,$scope.currentIndex)},100);c.then(function(){$timeout.cancel(c)})}40==b.keyCode&&(b.preventDefault(),$scope.eventIndex++,$scope.eventIndex=$scope.eventIndex<$scope.epropertyList.length?$scope.eventIndex:0,$(".optionList ul").scrollTop(34*(0==$scope.eventIndex?1:$scope.eventIndex)),$scope.nowEvent=$scope.epropertyList[$scope.eventIndex]),38==b.keyCode&&(b.preventDefault(),$scope.eventIndex--,$scope.eventIndex=$scope.eventIndex<0?$scope.epropertyList.length-1:$scope.eventIndex,$(".optionList ul").scrollTop(34*(0==$scope.eventIndex?1:$scope.eventIndex)),$scope.nowEvent=$scope.epropertyList[$scope.eventIndex])},$(document).keydown(function(a){13==a.keyCode&&$scope.nowEvent&&$scope.getProperty($scope.nowEvent)});var fid=$stateParams.pageid,rmd=(new Date).getTime(),commonEventPros=[],eventPM=null;$scope.queryInfoByApp=function(a,b){if(angular.isUndefined(a)||5==a){eventPM=HttpService.getInfo($scope.appid+"/event/find/virtual"),eventPM.then(function(a){$scope.eventList=[],angular.forEach(a,function(a){var b={};b.id=a.eventName,b.name=a.eventNameAlias,b.type=a.virtual?"virtual":"nature",$scope.eventList.push(b)})}),$scope.haslist=function(a){if(!$scope.eventList)return!1;for(var b=!1,c=0;c<$scope.eventList.length;c++)if($scope.eventList[c].type==a){b=!0;break}return b};HttpService.getInfo("expression/viewList").then(function(a){$scope.kpiList=[],$scope.fixedAttrList=a.eventViewList,commonEventPros=[],angular.forEach($scope.fixedAttrList,function(a,b){var c={};c.id=a.viewAttr,c.name=a.viewAttrName,c.isleaf=!0,b==$scope.fixedAttrList.length-1&&(c.border=!0),commonEventPros.push(c)}),angular.forEach(a.attrViewList,function(a){var b={} +;b.id=a.viewAttr,b.name=a.viewAttrName,b.viewType=a.viewType,b.isleaf=!0,$scope.kpiList.push(b)})});var c=HttpService.getInfo($scope.appid+"/event/find/group/properties");c.then(function(a){$scope.dimensionList=a});var c=HttpService.getInfo($scope.appid+"/event/find/common/properties");c.then(function(a){$scope.commonAttrList=a})}var d=HttpService.getInfo("mng/eventstats/complicated/findAll/"+$scope.appid);$scope.define={},d.then(function(a){if($scope.defineList=a,a.length>0)if($scope.addFirst=!1,UtilService.isNullStr(fid)||(b=fid),b){for(var c=0;c<$scope.defineList.length;c++)if($scope.defineList[c].id==b){$scope.define=$scope.defineList[c];break}UtilService.isNullStr(fid)?$scope.defineFlag=++rmd:($scope.clickDefine($scope.define),fid=null)}else $scope.clickDefine(a[0]);else{var d=HttpService.getInfo("mng/eventstats/complicated/show/import");ToolService.showLoading(),d.then(function(a){ToolService.hideLoading(),void 0!==a.content?$scope.isold=a.content:$scope.isold=a})}})},$scope.importOld=function(){var a=HttpService.putInfo("mng/eventstats/complicated/import/old/data");ToolService.showLoading(),a.then(function(a){ToolService.hideLoading(),$scope.queryInfoByApp(1)})};var doDevice=["_count_user","_count_avg"];$scope.$watch("define",function(a){a&&a.id&&($scope.isEditInfo=!0)}),$scope.addTitName="新建事件统计细分",$scope.getTrendTitle=function(){return $scope.showTempLook?$scope.addTitName+"的趋势":$scope.define&&$scope.define.id?$scope.define.name+"的趋势":"事件趋势"},$scope.definename="请选择事件",$scope.clickDefine=function(a){$scope.define=a,$scope.defineFlag=++rmd,$scope.isEditInfo=!0,$scope.isShowCache=!1,$rootScope.thirdtab=a.name},$scope.deleteDefine=function(a){$scope.delDefine=a,ToolService.showAlp(),ToolService.showLoading(),HttpService.getInfo("custommenu/delete/valid/"+a.id+"?type=eventstats").then(function(a){ToolService.hideLoading(),$scope.wantDelete=!0,$scope.custommenus=!!(angular.isArray(a)&&a.length>0)&&a})},$scope.doDelete=function(){$scope.closeWin(),ToolService.showLoading(),HttpService.deleteInfo("mng/eventstats/complicated/delete/"+$scope.delDefine.id).then(function(){ToolService.showTips("删除成功"),$scope.queryInfoByApp(1),ToolService.hideLoading(),$rootScope.operSubmitData("删除")})},$scope.date=ToolService.getLastDays(-7,0),$scope.timeFlag="day",$scope.disTimeFlag=["hour"],$scope.changeTimeFlag=function(a){if($scope.disTimeFlag.indexOf(a)>-1)return!1;$scope.timeFlag=a},$scope.$on("dateCustos",function(a,b){b.startDate==b.endDate?$scope.disTimeFlag=["week","month"]:$scope.disTimeFlag=["hour"],$scope.disTimeFlag.indexOf($scope.timeFlag)>-1&&($scope.timeFlag="day"),$scope.date=b}),$scope.$watch("date",function(){angular.isDefined($scope.date)&&($scope.datestr=$scope.date.startDate+"至"+$scope.date.endDate)});var proertyCollection={},lastid=-1;$scope.getAttrByEvent=function(a,b,c){if(!a||a.isleaf)return $scope.epropertyList=[],b&&b([]),!1;var d=function(a){var d=UtilService.cloneJSON(commonEventPros);angular.forEach(a,function(a){var b={};b.id=a.attr,b.name=a.attrAlias,b.type=a.webType||a.dataType,d.push(b)}),c?b&&b(d):($scope.epropertyList=d,b&&b(d))};if($scope.epropertyList=[],proertyCollection[a.id])d(proertyCollection[a.id]),$scope.attrShow=!0;else{if(lastid==a.id&&2!=c)return!1;lastid=a.id;HttpService.getInfo("expression/properties/"+a.id+"/"+$scope.appid).then(function(b){var c=orderBy(b,"sortId");d(c),proertyCollection[a.id]=c})}},$scope.changeEvent=function(a,b){b&&($scope.eventRel=b.relation),function(){$scope.event={id:"evt_"+rmd,params:[],paramsList:$scope.commonAttrList},b&&$timeout(function(){$scope.propertyInit=b.viewField,$scope.prorefresh=++rmd,$scope.event.secondval=b.fieldOperate,b.params.filter(function(a){$scope.addEventParams($scope.event,a)})})}()},$scope.eventinitname="请选择事件",$scope.eventRel="and",$scope.changeRel=function(){$scope.eventRel="and"==$scope.eventRel?"or":"and"},$scope.initCondition=function(){$scope.event.id&&$scope.initComplexEvent()},$scope.changeForm=function(a){if($scope.nowEvent="",a.expression=!a.expression,a.expression){if(a.operator){var b=[],c=[],d=[],e="",f="";a.event&&(b=$scope.eventList.filter(function(b){return a.event==b.id}));var g=a.property||a.operator;g&&(c=a.epropertyList.filter(function(a){return g==a.id}),e="."+c[0].name),a.operator&&a.property&&(d=a.targetList.filter(function(b){return a.operator==b.id}),f="."+d[0].name),a.expressionName=b[0].name+e+f}else a.expressionName=$scope.eventList[0].name+".总次数/"+$scope.eventList[0].name+".用户数";$scope.expresstionTransform(a)}else a.extip=""},$scope.showEventWin=!1,$scope.currentEvent=[],$scope.addComplexEvent=function(a,b){var c=UtilService.getItem($scope.appid);if(1==a||c){if(!$scope.define.id&&!$scope.isShowCache)return!1;$scope.isShowCache=0==a||b,$scope.isShowCache?$scope.currentDefine={}:($scope.currentDefine=$scope.define,$scope.ename=$scope.define.name);var d=$scope.isShowCache?JSON.parse(c):JSON.parse($scope.currentDefine.eventCondition);$scope.isEditInfo=!0}else $scope.currentDefine={},$scope.isEditInfo=!1,$scope.isShowCache=!1;$scope.initComplexEvent(a,d),$scope.showEventWin=!0},$scope.initComplexEvent=function(a,b){if($scope.currentEvent.filter(function(a){a.show=!1}),$scope.groupbys.filter(function(a){a.show=!1}),b){ToolService.showLoading(),$q.all([eventPM]).then(function(a){var c=b;c.expressions.filter(function(a){$scope.addEvents(a)}),c.group.filter(function(a){$scope.addGroupby(a)}),ToolService.hideLoading()});var c=[];if(b.params.filter(function(a){c.push(a.attr)}),c.length>0){HttpService.getInfo($scope.appid+"/event/find/value/attrs?attrNames="+c.join(",")).then(function(a){var c=a;$scope.commonAttrList.filter(function(a){var b=c[a.attr];b&&b.key&&(a.key=b.key),b&&b.value&&(a.value=b.value)}),$scope.changeEvent(null,b)})}}else $scope.addEvents();$scope.event={id:"evt_"+rmd,params:[],relation:$scope.eventRel,paramsList:$scope.commonAttrList}},$scope.addFirst=!1,$scope.addFirstEvent=function(){$scope.addFirst=!0,$scope.showEventWin=!0,$scope.currentDefine={},$scope.initComplexEvent()},$scope.closeAddWin=function(){$scope.showEventWin=!1,$scope.addFirst=!1,$scope.isEditInfo=!0},$scope.maxparams=10,$scope.maxevents=10,$scope.maxgroupbys=3,$scope.addGroupby=function(a){if(!($scope.getGroupByNum()>=$scope.maxgroupbys)){++rmd;var b={id:"gby_"+rmd,dimensionId:"groupby_"+rmd,show:!0};if(a){for(var c in a)b[c]=a[c];b.dimenInit=a.name}!function(a){$scope.$on(a.dimensionId,function(b,c){a.dimenId=c.info.param,a.type=c.info.type})}(b),$scope.groupbys.push(b)}},$scope.addEvents=function(a){if(!($scope.getEventNum()>=$scope.maxevents)){++rmd;var b={id:"evt_"+rmd,relation:"and",format_id:"for_"+rmd,show:!0,eventId:"event_"+rmd,propertyId:"pro_"+rmd,targetId:"tar_"+rmd};if(a){for(var c in a)b[c]=a[c];b.formatInit=a.format,b.eventInit=a.event,b.event=a.event,b.propertyinit=a.attr?a.attr:a.operator,b.targetinit=a.operator}!function(b){var c="",d="",e="";$scope.$on(b.format_id,function(a,c){b.formatId=c.info.format}),$scope.$on(b.eventId,function(d,e){b.event&&e.info.id!=b.event&&(b.prorefresh=++rmd,b.propertyinit=-1,b.tarrefresh=++rmd,b.targetinit=-1,b.operator="",b.property="",a||(b.name="")),b.event=e.info.id,$scope.getAttrByEvent(e.info,function(a){b.epropertyList=a},2),b.propertyShow=!0,b.targetShow=!1,b.propertyinitname="请选择事件属性",c=e.info.name}),$scope.$on(b.propertyId,function(f,g){var h={id:b.event};g.info.isleaf?(b.operator=g.info.id,b.targetShow=!1,b.targetinit="",b.property="",a||(b.name=c+g.info.name,e="")):(b.targetinitname="请选择属性指标",b.operator="",b.property&&g.info.id!=b.property&&(b.tarrefresh=++rmd,b.targetinit=-1,a||(b.name="",e="")),$scope.getAttrByEvent(h,function(a){var c=a.filter(function(a){return g.info.id==a.id}),d=$scope.kpiList.filter(function(a){return a.viewType==c[0].type||"all"==a.viewType});b.targetList=d,b.targetShow=!0},1),b.property=g.info.id,d=g.info.name,a||(b.name=e?c+d+e:""))}),$scope.$on(b.targetId,function(f,g){b.operator=g.info.id,b.targetShow=!0,e=g.info.name,a||(b.name=c+d+g.info.name)})}(b),$scope.currentEvent.push(b)}},$scope.getEventParamsNum=function(a){return a&&a.params?a.params.filter(function(a){return 0!=a.show}).length:$scope.maxparams},$scope.getEventNum=function(a){return $scope.currentEvent.filter(function(a){return 0!=a.show}).length},$scope.getGroupByNum=function(a){return $scope.groupbys.filter(function(a){return 0!=a.show}).length},$scope.addEventParams=function(a,b){if(!a||!a.params||$scope.getEventParamsNum(a)>=$scope.maxparams)return!1;rmd++;var c={id:"pam_"+rmd,pid:"param_"+rmd};if(b)for(var d in b)c[d]=b[d];$scope.event.params.push(c)},$scope.removeEvent=function(a){for(var b=0;b<$scope.currentEvent.length;b++)if($scope.currentEvent[b].id==a.id){$scope.currentEvent[b].show=!1;break}$scope.eventLen=$scope.groupbys.length-1},$scope.removeGroupby=function(a){for(var b=0;b<$scope.groupbys.length;b++)if($scope.groupbys[b].id==a.id){$scope.groupbys[b].show=!1;break}},$scope.removeEventParams=function(a,b){for(var c=0;c<a.params.length;c++)if(a.params[c].id==b.id){a.params[c].show=!1;break}},$scope.$on("event",function(a,b){for(var c=$scope.event.params,d=0;d<c.length;d++)if(c[d].id==b.id){c[d]=b;break}}),$scope.nameWin=function(a){if($scope.getReportEventInfo().hasNull)return ToolService.hideLoading(),ToolService.showTips($scope.formTipMsg),!1;ToolService.showAlp(),$scope.wantSave=!0,$scope.currentDefine={},$scope.ename="",$scope.isotherSave=!1,angular.isDefined(a)&&($scope.currentDefine={id:0},$scope.isotherSave=!0)},$scope.lookReport=function(){var a=$scope.getReportEventInfo(),b="";if(a.hasNull)return ToolService.showTips($scope.formTipMsg),!1;b=JSON.stringify(a),UtilService.setItem($scope.appid,b),$scope.isShowCache=!0,$scope.query(b)},$scope.closeWin=function(a){$scope.wantSave=!1,$scope.wantDelete=!1,a&&2==a&&$scope.isotherSave&&($scope.currentDefine=$scope.define),ToolService.hideAlp()},$scope.getReportEventInfo=function(){var a=!1,b=[],c=[],d={relation:$scope.eventRel,params:[]};return $scope.currentEvent.filter(function(c){if(c.show){var d={};if(c.expression){d.expressionName=c.expressionName,d.format=c.formatId?c.formatId:"int",d.expression=c.expression;var e=c.expressionName.match(/[\+\-\*\/]/g);c.extip=e&&e.length>5?"表达式最多可输入5个运算符(运算符包括+-*/)":"",c.expressionName&&$scope.expresstionTransform(c),c.error=!(!c.error&&c.expressionName&&!c.extip)}else{var f=$scope.eventList.filter(function(a){return a.id==c.event});d.attr=c.property,d.event=c.event,d.operator=c.operator,c.proerror=!(!c.property&&c.operator||c.property),c.eventerror=!(f.length>0&&c.event),c.tarerror=!c.operator}d.name=c.name;var g={name:{key:"spcname",val:c.name}};c.tip=formJudge(g),c.nameerror=!c.name||!c.tip.succ;var h=$scope.currentEvent.filter(function(a){return a.name==c.name&&a.id!=c.id&&a.show});h&&h.length>0&&(c.nameerror=!0),(c.nameerror||c.error||c.proerror||c.eventerror||c.tarerror)&&(a=!0),b.push(d)}}),$scope.groupbys.filter(function(b){if(b.show){var d={};d.name=b.dimenId,d.type=b.type,b.groerror=!b.dimenId;var e=$scope.groupbys.filter(function(a){return a.dimenId==b.dimenId&&a.id!=b.id&&a.show&&b.type==a.type});e&&e.length>0&&(b.groerror=!0),b.groerror&&(a=!0),c.push(d)}}),d.expressions=b,d.group=c,$scope.event.params.filter(function(b){if(0!=b.show){UtilService.isNullStr(b.attr)&&($scope.$broadcast(b.id,"error"),a=!0);var c={};for(var e in b)"id"!=e&&"pid"!=e&&(c[e]="value"!=e?b[e]:b[e].join(","),UtilService.isNullStr(b[e])&&($scope.$broadcast(b.id,"error"),a=!0));d.params.push(c)}}),(a||!$scope.ename&&$scope.currentDefine.id)&&(d.hasNull=!0),$scope.enameerror=!($scope.ename||!$scope.currentDefine.id),d},$scope.save=function(a){var b=function(){var b={name:$scope.ename,app:$scope.appid},c=$scope.getReportEventInfo();if(c.hasNull)return ToolService.showTips($scope.formTipMsg),!1;b.eventName=c.event,b.eventCondition=JSON.stringify(c);var d=null,e="添加成功";$scope.currentDefine.id&&2!=a?(b.id=$scope.currentDefine.id,d=HttpService.putInfo("mng/eventstats/complicated/update",b),e="修改成功"):d=HttpService.postInfo("mng/eventstats/complicated/create",b),ToolService.showLoading(),d.then(function(b){$scope.closeWin(1),ToolService.hideLoading(),ToolService.showTips(e),$scope.currentDefine.id&&2!=a?($scope.queryInfoByApp(2,$scope.currentDefine.id),$scope.currentDefine={}):($scope.queryInfoByApp(1),$rootScope.operSubmitData("删除"),$scope.isShowCache&&localStorage.removeItem($scope.appid))})},c={name:{key:"spcname",val:$scope.ename}};if($scope.tip=formJudge(c),UtilService.isNullStr($scope.ename)||1!=$scope.tip.succ)return ToolService.showTips("事件分析名称请输入20个汉字以内名称,允许字符为中英文数字_-"),!1;ToolService.showLoading(),HttpService.getInfo("mng/eventstats/checkName/"+$scope.appid,{eventStatsName:$scope.ename}).then(function(c){1==c||$scope.currentDefine.id&&$scope.define.name==$scope.ename&&2!=a?b():(ToolService.hideLoading(),ToolService.showTips("事件分析名称已存在"))})},$scope.eventChartConfig={color:ToolService.getTenColors(),namesub:[]},$scope.lsChange=rmd,$scope.$on("flipinfo",function(a,b){$scope.flipPage=b,$scope.lsChange++}),$scope.showTempLook=!1,$scope.rateList=[],$scope.rateListed=[],$scope.group_List=[],$scope.grouped_List=[],$scope.istranfer=!1,$scope.ispercent=!1,$scope.isshowTotal=!1,$scope.percentPre="rate_";var queryParams={};$scope.chartList=[{id:"line",name:"折线图",platform:"line"},{id:"columnstack",name:"柱状图",platform:"columnstack"},{id:"pie",name:"饼状图",platform:"pie"}],$scope.chartTypeInit="line";var numIndexs=["一","二","三","四","五","六","七","八","九","十"];$scope.query=function(a){$scope.showEventWin=!1,$scope.rateFlag=1;var b=ToolService.getParams($scope);b.datatype="list",b.viewflag=$scope.timeFlag;var c=null,d="事件分析";if(a)b.eventCondition=a,$scope.showTempLook=!0,d+=$scope.getTrendTitle();else{var e=UtilService.getItem($scope.appid);b.eventCondition=$scope.isShowCache?e:$scope.define.eventCondition,$scope.showTempLook=!!$scope.isShowCache,c=$scope.define.id,d+="-"+$scope.define.name}b.eventCondition=encodeURIComponent(b.eventCondition),queryParams=b,$scope.totalList=[],$scope.eventChartLoading=!0,$scope.chartListLoading=!0;var f="eventstats/complicated/query/"+$scope.appid;HttpService.getInfo(f,b).then(function(a){var e=a.format,g={};e.filter(function(a){g[a.field]=a.format}),a.format=g,$scope.trendList=a,$scope.totalList=a.totalval,$scope.infoList=a.val,$scope.eventChartLoading=!1,$scope.rateList=a.selectfield,$scope.totalVal={},$scope.rateList.filter(function(a){$scope.totalList.filter(function(b){$scope.totalVal[a]||($scope.totalVal[a]=0),$scope.totalVal[a]+=b[a]})}),$scope.group_List=$scope.getGroupNames(a.groupfield),$scope.grouplen=a.groupfield.length,$scope.infoList.length>0?($scope.limit(),0==$scope.group_List.length&&($scope.ispercent=!1),$scope.changeChartData($scope.chartType)):$scope.myChartData=ToolService.noDataChart(),$scope.sortCol="",$scope.sortCol1="",$scope.chartListLoading=!1,$scope.istranfer?$scope.transformList():($scope.pageAllList=$scope.infoList,$timeout(function(){$scope.listkey&&($scope.reverse1=!0,$scope.order($scope.listkey[0],!0,0))},300));var h=JSON.parse(decodeURIComponent(b.eventCondition)).expressions,i=[];++rmd,h.filter(function(a,b){a.id=a.orderindex=rmd+b,a.indexname=numIndexs[b],i.push(a)}),$scope.condList=i,$scope.myChartDataCondition=ToolService.getChartConditions(d,f,b,"complicatedevents",c)},function(a){$scope.myChartData=ToolService.noDataChart(),$scope.infoList=[],$scope.totalList=[],$scope.eventChartLoading=!1,$scope.chartListLoading=!1})},$scope.$on("chartTypeId",function(a,b){$scope.trendList&&($scope.chartType=b.info.id,$scope.chartTypeInit=$scope.chartType,$scope.changeChartData())}),$scope.limit=function(){$scope.chartType=0==$scope.group_List.length&&"pie"==$scope.chartType?"line":$scope.chartType,$scope.chartTypeInit=$scope.chartType,"line"==$scope.chartType?($scope.rateListed=$scope.rateList.slice(0,1),$scope.grouped_List=$scope.group_List.slice(0,5),$scope.grouped_List.length<2&&($scope.rateListed=$scope.rateList.slice(0,5))):"columnstack"==$scope.chartType?($scope.rateListed=$scope.rateList.slice(0,2),$scope.grouped_List=$scope.group_List.slice(0,3)):($scope.rateListed=$scope.rateList.slice(0,2),$scope.grouped_List=$scope.group_List.slice(0))},$scope.chartType="line",$scope.getGroupNames=function(a){var b=[],c=[];if(0==a.length){var d=$scope.trendList.groupfield.length>0;$scope.trendList.val.filter(function(a,b){var e={};d||(e=a),a.firstDateRow&&(e.ds=a.ds,e.groupnames=a.ds,d?e.children=$scope.trendList.val.slice(b,b+a.rowNum):(e.rsnum=1,e.isrs=!0),c.push(e))})}else $scope.trendList.val.filter(function(d,e){var f=[],g={};a.filter(function(a){f.push(d[a])});var h=f.join(","),i=b.indexOf(h);d.groupnames=h,-1==i&&b.push(h),d.firstDateRow&&(g.ds=d.ds,g.groupnames=h,g.children=$scope.trendList.val.slice(e,e+d.rowNum),c.push(g))});return $scope.detailAllList=c,$scope.istranfer?$scope.transformList():$scope.lsChange++,b},$scope.$watch("lsChange",function(){if($scope.flipPage&&$scope.detailAllList){var a=$scope.flipPage.start+1,b=$scope.flipPage.end-1,c=$scope.flipPage.pagen,d=[],e=0,f=null,g=[];if($scope.istranfer?(g=$scope.transfromAllList,$scope.listname=$scope.transformTitle.name,$scope.listkey=$scope.transformTitle.key):(g=$scope.detailAllList,$scope.listname=$scope.trendList.name,$scope.listkey=$scope.trendList.columnkey),$scope.trendList.groupfield.length>0){for(var h=0;h<g.length;h++)for(var i=g[h].children,j=0,k=0;k<i.length&&(e>$scope.flipPage.start&&e<$scope.flipPage.end&&(0==j?(f=i[k],f.rsnum=0,f.isrs=!0):i[k].isrs=!1,j++,f.rsnum++,d.push(i[k])),e++,c!=d.length);k++);$scope.currentDetailList=d}else $scope.currentDetailList=g.slice(a,b)}else $scope.currentDetailList=[]});var refreshList=function(){$scope.flipPage.start>5?$scope.listf5=++rmd:$scope.lsChange++};$scope.changeFlag=function(a){1==a?($scope.istranfer=!$scope.istranfer,0==$scope.group_List.length&&($scope.ispercent=!1),$scope.istranfer?$scope.transformList():($scope.pageAllList=$scope.infoList,refreshList())):$scope.ispercent=!$scope.ispercent},$scope.transformList=function(){var a=[],b=$scope.trendList.name.slice(1,$scope.trendList.groupfield.length+1),c=$scope.trendList.groupfield.slice(0);b.push("指标"),c.push("_myzb"),b.push("合计"),c.push("_total");var d={},e=[];$scope.trendList.key.filter(function(a,e){b.push(a),c.push("_ds"+(e+1)),d["_ds"+(e+1)]=0}),$scope.totalList.filter(function(b){var c=[],f={children:[]};$scope.trendList.groupfield.filter(function(a){c.push(b[a]),f[a]=b[a]}),f.groupnames=c.join(","),f.rsnum=$scope.trendList.selectfield.length,$scope.trendList.selectfield.filter(function(g){var h=UtilService.cloneJSON(f);h._myzb=g,h._total=b[g];for(var i in d)h[i]=d[i];if(c.length>0){var j=0;$scope.detailAllList.filter(function(a){a.children.filter(function(b){if(f.groupnames==b.groupnames){var c=$scope.trendList.key.indexOf(a.ds),d=b[g],e=0;h["_ds"+(c+1)]=d,0!=j&&(e=(d-j)/j*100),j=d,h["rate__ds"+(c+1)]=e}})}),f.children.push(h),e.push(h)}else{var j=0;$scope.detailAllList.filter(function(a){var b=$scope.trendList.key.indexOf(a.ds),c=a[g],d=0;h["_ds"+(b+1)]=c,0!=j&&(d=(c-j)/j*100),j=c,h["_ds"+(b+1)]=a[g],h["rate__ds"+(b+1)]=d}),a.push(h),e.push(h)}}),c.length>0&&a.push(f)}),$scope.transformTitle={key:c,name:b},$scope.transfromAllList=a,$scope.pageAllList=e,refreshList()},$scope.checkAll=function(){$scope.ischeckall=!$scope.ischeckall,$scope.grouped_List=$scope.ischeckall?UtilService.cloneJSON($scope.group_List):[],$scope.changeChartData()},$scope.changeRate=function(a){if(!$scope.canAdd(1,a))return!1;var b=$scope.rateListed.indexOf(a);b>-1?$scope.rateListed.splice(b,1):$scope.rateListed.push(a),$scope.changeChartData()},$scope.changeGroup=function(a){if(!$scope.canAdd(2,a))return!1;var b=$scope.grouped_List.indexOf(a);b>-1?$scope.grouped_List.splice(b,1):$scope.grouped_List.push(a),$scope.changeChartData()};var lengedMax=10;$scope.canAdd=function(a,b){var c=[];if(c=1==a?$scope.rateListed:$scope.grouped_List,-1==c.indexOf(b)){var d=$scope.rateListed.length,e=$scope.grouped_List.length;return"line"==$scope.chartType?1==a?(d+1)*e<=lengedMax:d*(e+1)<=lengedMax:1==a?d+1<=("columnstack"==$scope.chartType?3:2):e+1<=("columnstack"==$scope.chartType?5:$scope.group_List.length)}return!0},$scope.changeChartData=function(){$scope.eventChartConfig.namesub=[];var a=$scope.trendList.key,b={key:a,val:[],name:[],rmd:++rmd},c=[];if(a.filter(function(a,b){c.push(0)}),"pie"==$scope.chartType){$scope.ischeckall=$scope.group_List.length==$scope.grouped_List.length,$scope.eventChartConfig.flag=!1,$scope.rateListed.length>2&&($scope.rateListed=$scope.rateListed.slice(0,2));var d={},e=UtilService.cloneJSON($scope.grouped_List);$scope.rateListed.filter(function(a){var b=[],c=0;$scope.grouped_List.filter(function(d){$scope.totalList.filter(function(e){var f="";$scope.trendList.groupfield.filter(function(a){f+=e[a]+","}),d==f.slice(0,-1)&&(b.push(e[a]),c+=e[a])})}),e.indexOf("其他")>-1&&e.splice(e.indexOf("其他"),1),$scope.totalVal[a]-c>0&&$scope.group_List.length>0&&(b.push($scope.totalVal[a]-c),e.push("其他")),d[a]=b}),$scope.myChartData.key=$scope.rateListed,$scope.myChartData.name=e,angular.equals({},d)?$scope.myChartData.val=[]:$scope.myChartData.val=[d]}else{if("columnstack"==$scope.chartType)$scope.eventChartConfig.flag=!0,$scope.grouped_List.length>5&&($scope.grouped_List=$scope.grouped_List.slice(0,5));else{$scope.eventChartConfig.flag=!1;var f=1==$scope.rateListed.length?10:$scope.rateListed.length>2?3:5;$scope.grouped_List=$scope.grouped_List.slice(0,f)}$scope.eventChartConfig.namesub=[],$scope.trendList.val.filter(function(d){var e=d.ds,f=d.groupnames;if($scope.grouped_List.indexOf(f)>-1||0==$scope.grouped_List.length){var g=a.indexOf(e);$scope.rateListed.filter(function(a){var e=$scope.trendList.format[a],h=f+a;0==$scope.grouped_List.length&&(h=a.substring(1));var i=b.name.indexOf(h),j=[];-1==i?(b.name.push(h),$scope.eventChartConfig.namesub.push("percent"==e?"%":""),j=UtilService.cloneJSON(c),b.val.push(j)):j=b.val[i];var k=Number(d[a]);k="percent"==e?UtilService.decimal2(100*k,2):"int"==e?Math.round(k):UtilService.decimal2(k,2),j[g]=k})}}),$scope.myChartData=b}},$scope.substrName=function(a){return a.substring(1)};var orderBy=$filter("orderBy");$scope.sortCol="",$scope.sortCol1="",$scope.order=function(a,b,c){var d=!1;d=!!($scope.istranfer&&c<$scope.trendList.groupfield.length)||0==c;var e=[];e=$scope.istranfer?$scope.transfromAllList:$scope.detailAllList,d||0!=$scope.trendList.groupfield.length?d?($scope.sortCol1=a,$scope.mysort(e,a,b)):($scope.sortCol=a,$scope.mysort($scope.totalList,a,b),e.filter(function(c){$scope.mysort(c.children,a,b)})):($scope.sortCol=a,$scope.mysort(e,a,b)),refreshList()},$scope.mysort=function(a,b,c){1==c?a.sort(function(a,c){return a[b]==c[b]?0:a[b]>c[b]?-1:1}):a.sort(function(a,c){return a[b]==c[b]?0:a[b]>c[b]?1:-1})},$scope.$watch("appid+defineFlag+timeFlag+date.startDate+date.endDate",function(a){angular.isDefined($scope.appid)&&(angular.isDefined($scope.defineFlag)||$scope.isShowCache)&&$scope.query()}),$scope.$watch("appid",function(a){angular.isDefined(a)&&($scope.lengedNames=[],$scope.defineFlag=void 0,$scope.queryInfoByApp(5))});var haschangeOrder=!1;$scope.showOrderList=function(){$scope.showOrderWin=!0,haschangeOrder=!1,ToolService.showAlp()},$scope.closeOrder=function(){$scope.showOrderWin=!1,ToolService.hideAlp()},$scope.okOrderWin=function(){if($scope.closeOrder(),!haschangeOrder)return!1;ToolService.showLoading();var a=JSON.parse(decodeURIComponent($scope.define.eventCondition));$scope.condList.filter(function(a){delete a.id,delete a.orderindex,delete a.indexname}),a.expressions=$scope.condList;var b={name:$scope.define.name,app:$scope.appid,id:$scope.define.id,eventCondition:JSON.stringify(a)};HttpService.putInfo("mng/eventstats/complicated/update",b).then(function(a){ToolService.hideLoading(),$scope.queryInfoByApp(2,$scope.define.id)})},$scope.$on("dragorder",function(a,b){var c=b.id,d=b.index,e=0,f=0;$scope.condList.filter(function(a,b){a.id===c&&(e=b),a.id===d&&(f=b)});var g=UtilService.cloneJSON($scope.condList);if(e>0||f>0){var h=UtilService.cloneJSON(g[f]);g.splice(f,1,g[e]),g.splice(e,1,h)}++rmd,g.filter(function(a,b){a.id=a.orderindex=rmd+b,a.indexname=numIndexs[b]}),$scope.$apply(function(){$scope.condList=g}),haschangeOrder=!0})}angular.module("app.collect").controller("eventstatsCtrl",["$scope","$rootScope","HttpService","ToolService","UtilService","$filter","$timeout","$stateParams","$q",eventstatsCtrl]),String.prototype.visualLength=function(){var a=$("#ruler");return a.text(this),a.width()};var sectionTool={getCursortPosition:function(a){var b=0;if(document.selection){a.focus();var c=document.selection.createRange();c.moveStart("character",-a.value.length),b=c.text.length}else(a.selectionStart||"0"==a.selectionStart)&&(b=a.selectionStart);return b},setCaretPosition:function(a,b){if(a.setSelectionRange)a.focus(),a.setSelectionRange(b,b);else if(a.createTextRange){var c=a.createTextRange();c.collapse(!0),c.moveEnd("character",b),c.moveStart("character",b),c.select()}},insertAfterText:function(a,b){var c;if(document.selection)a.focus(),c=document.selection.createRange(),c.text=b,a.focus();else if(a.selectionStart||"0"==a.selectionStart){var d=a.selectionStart,e=a.selectionEnd,f=a.scrollTop;a.value=a.value.substring(0,d)+b+a.value.substring(e,a.value.length),a.focus(),a.selectionStart=d+b.length,a.selectionEnd=d+b.length,a.scrollTop=f}else a.value+=b,a.focus()}}}(),function(){function a(a,b,c,d,e,f,g,h,i,j){b.pageId=g.pageid,b.viewFlag=1,null!=b.pageId&&(b.viewFlag=0),b.menuInit=b.pageId;var k=!0;b.pageId&&(k=!1);var l=(new Date).getTime();b.$on("industryId",function(a,c){"all"==c.info.id?(b.industryInitName="",b.industryInit="all"):(b.industryInitName=c.info.name,b.industryInit=c.info.id)}),b.$on("menuId",function(a,c){b.menuDetail(c.info)}),b.timeFlag="day",b.disTimeFlag=["hour"],b.changeTimeFlag=function(a){if(b.disTimeFlag.indexOf(a)>-1)return!1;b.timeFlag=a},b.changeViewFlag=function(c){if(b.viewFlag==c)return!1;a.thirdtab=["","我的看单","我的收藏","行业看单模板"][c],b.viewFlag=c,b.lookMyMenu()},b.pageFlag=0,b.addReyunMenu=function(){var a=c.postInfo("custommenu/addReyun/"+b.appid);d.showLoading(),a.then(function(a){d.hideLoading(),a.length>0?(b.pageFlag=2,b.reyunList=a,b.$emit("f5CtmMenus",{})):-6002==a.code?d.showTips("请集成sdk并上报数据"):d.showTips("操作失败")})},b.date=d.getLastDays(-7,0),b.$on("dateCustos",function(a,c){c.startDate==c.endDate?b.disTimeFlag=["week","month"]:b.disTimeFlag=["hour"],b.disTimeFlag.indexOf(b.timeFlag)>-1&&(b.timeFlag="day"),b.date=c}),b.$watch("date",function(){angular.isDefined(b.date)&&(b.datestr=b.date.startDate+"至"+b.date.endDate)});var m=null;b.lookMyMenu=function(a){a&&2==a&&(b.viewFlag=1),b.closeWin(),d.showLoading();var e="";if(b.searchTxt="",b.orderFlag=0,b.industryList=[],0==b.industryList.length){c.getInfo("custommenu/industry").then(function(a){a.filter(function(a){var c={};c.id=a.category,c.name=a.categoryName,b.industryList.push(c)}),b.industryList.unshift({id:"all",name:"全部行业"}),b.industryInit=43==b.appInstance.appGenre||64==b.appInstance.appGenre?b.appInstance.appGenre:"all",b.industryInitName=43==b.appInstance.appGenreName||64==b.appInstance.appGenreName?b.appInstance.appGenreName:"全部行业"})}switch(b.viewFlag){case 2:e="custommenu/findFavo/"+b.appid;break;case 3:e="custommenu/findShare/"+b.appid;break;case 1:default:e="custommenu/findMy/"+b.appid}b.menuInfoList=[],c.getInfo(e).then(function(c){if(b.menuInfoList=c,null!=b.pageId){var e=b.menuInfoList.filter(function(a){return a.id==b.pageId});e.length>0&&b.menuDetail(e[0]),b.viewFlag=1}a&&1==a&&b.menuDetail(c.slice(-1)[0]),d.hideLoading()}),null==m&&b.queryInfoByApp(),b.pageFlag=3},b.menuDetail=function(c){b.pageFlag=4,b.currentMenu=c,b.changeMatchFlag(0),1==b.viewFlag&&(a.thirdtab=c.name),b.menuInit==c.id?b.query():b.menuInit=c.id},b.orderFlag=0,b.menuOrder=function(a){switch(b.orderFlag=a,a){case 2:b.menuInfoList.sort(function(a,b){return a.matchPercent==b.matchPercent?0:a.matchPercent>b.matchPercent?-1:1});break;case 3:b.menuInfoList.sort(function(a,b){return a.useNumber==b.useNumber?0:a.useNumber>b.useNumber?-1:1});break;case 4:b.menuInfoList.sort(function(a,b){return a.favoriteNumber==b.favoriteNumber?0:a.favoriteNumber>b.favoriteNumber?-1:1});break;case 1:default:b.menuInfoList.sort(function(a,b){return a.id==b.id?0:a.id>b.id?-1:1})}},b.backToMenu=function(){if(2==b.viewFlag&&!b.currentMenu.hasFavorite)for(var a=0;a<b.menuInfoList.length;a++){var c=b.menuInfoList[a];if(c.id==b.currentMenu.id){b.menuInfoList.splice(a,1);break}}1==b.viewFlag&&j.path("/collect/custommenu"),b.pageFlag=3},b.typeInitname="请选择",b.$on("typeId",function(a,c){b.customTypeId=c.info.id}),b.customTypeFlag=0,b.changeCustomFlag=function(a){if(b.customTypeFlag==a)return!1;switch(b.customTypeFlag=a,a){case 2:b.typeList=b.retentionList;break;case 3:b.typeList=b.funnelList;break;case 1:default:b.typeList=b.eventstatsList}if(b.typeList.length>0){var c=b.typeList[0].id;b.typeinit==c?b.typef5=++l:b.typeinit=c}else b.customTypeId=b.typeinit=-1},b.showDetail=function(a){d.showAlp(),b.detailInfo=JSON.parse(a.info.descb),b.custitle=a.info.name+("funnel"==a.info.menuType?"漏斗":"retention"==a.info.menuType?"留存":""),b.isdetail=!0,angular.element(document).on("click",function(){b.$apply(function(){b.hideDetail()})})},b.hideDetail=function(){d.hideAlp(),b.isdetail=!1},b.maxMenu=10,b.maxReport=16,b.winFlag=0;var n="";b.showWin=function(a,c){if(1==a&&b.menuInfoList&&b.menuInfoList.length>=b.maxMenu)return!1;if(6==a&&b.currentMenu&&b.currentMenu.templates&&b.currentMenu.templates.length>=b.maxReport)return d.showTips("每个看单最多支持"+b.maxReport+"个图表"),!1;var e=!0;switch(a){case 1:b.ename=n="";break;case 2:b.ename=n=c.name,b.winId=c.id;break;case 4:b.shareMenu=c,(!c.templates||c.templates.length<1)&&(d.showTips("请添加报表后再分享"),e=!1),b.mname=c.name,b.winId=c.id;break;case 3:case 7:b.delname=c.name,b.winId=c.id;break;case 6:c&&(b.currentMenu=c,b.changeMatchFlag(0)),b.changeCustomFlag(1)}e&&(d.showAlp(),b.winFlag=a)},b.closeWin=function(a){d.hideAlp(),b.winFlag=0,1==a&&(b.matchFlag=0)},b.getMaxTips=function(){return b.chartDatas&&b.chartDatas.length>=b.maxReport?"每个看单最多支持"+b.maxReport+"个图表":""},b.doFavorite=function(){var a=null,f=0,g=b.currentMenu.id;e.isNullStr(b.currentMenu.shareId)||(g=b.currentMenu.shareId),0==b.currentMenu.hasFavorite?(a=c.postInfo("custommenu/addFavorite/"+b.appid+"/"+g),f=1):(a=c.deleteInfo("custommenu/delFavorite/"+b.appid+"/"+g),f=-1),d.showLoading(),a.then(function(a){d.hideLoading(),1==a?(b.currentMenu.favoriteNumber+=f,b.currentMenu.hasFavorite=f>0,d.showTips("操作成功")):d.showTips("操作失败")})},b.doFavoriteByMenu=function(a){var e=c.deleteInfo("custommenu/delFavorite/"+b.appid+"/"+a.shareId);d.showLoading(),e.then(function(c){d.hideLoading(),1==c?(b.menuInfoList.filter(function(c,d){c.id==a.id&&b.menuInfoList.splice(d,1)}),d.showTips("操作成功")):d.showTips("操作失败")})},b.doShare=function(a){if(angular.isUndefined(a)){d.showLoading();var e=c.postInfo("custommenu/share/"+b.appid+"/"+b.winId);e.then(function(a){b.closeWin(),d.hideLoading(),1==a?(d.showTips("分享成功"),b.shareMenu.hasShare=!0):d.showTips("分享失败")})}else{var e=c.deleteInfo("custommenu/cancelShare/"+b.appid+"/"+a.id);d.showLoading(),e.then(function(b){d.hideLoading(),1==b?(d.showTips("取消成功"),a.hasShare=!1):d.showTips("取消失败")})}},b.saveMenu=function(){var f={name:{min:1,max:24,key:"spcname",val:b.ename}};if(b.tip=formJudge(f),e.isNullStr(b.ename)||1!=b.tip.succ)return d.showTips("请输入12个汉字以内名称,允许字符为中英文数字_-"),!1;var g=null,h="添加成功",i=1;if(2==b.winFlag){if(angular.lowercase(n)==angular.lowercase(b.ename))return b.closeWin(),!1;g=c.putInfo("custommenu/updateName/"+b.appid+"/"+b.winId+"?name="+b.ename,{}),h="修改成功",i=0}else g=c.postInfo("custommenu/saveMenu/"+b.appid+"?name="+b.ename,{});d.showLoading(),g.then(function(c){d.hideLoading(),-6001==c.code?d.showTips("名称已存在"):-300==c.code?d.showTips("最多支持"+b.maxMenu+"个看单"):(b.closeWin(),d.showTips(h),b.lookMyMenu(i),b.$emit("f5CtmMenus",{}),2!=b.winFlag&&a.operSubmitData("新建"))},function(a){d.hideLoading(),-6001==a.code?d.showTips("名称已存在"):d.showTips(a.message)})}, +b.addReport=function(){if(!b.customTypeId||b.customTypeId<1)return d.showTips("请选择模板"),!1;var e={menuType:["eventstats","retention","funnel"][b.customTypeFlag-1],originalReportId:b.customTypeId},f=c.postInfo("custommenu/addTemp/"+b.appid+"/"+b.currentMenu.id,e);d.showLoading(),f.then(function(c){d.hideLoading(),-6e3==c.code?d.showTips("本看单中已存在该图表,请重新选择。"):-300==c.code?d.showTips("每个看单最多支持"+b.maxReport+"个图表"):(1==b.viewFlag&&(b.pageFlag=4,b.goToCustom(b.currentMenu.id)),b.closeWin(),d.showTips("添加成功"),b.query(c),b.currentMenu.templates.push(c),a.operSubmitData("看单里面创建表单"))})},b.getEventTypeCount=function(a){var b=0,c=0,d=0;return a.filter(function(a){"eventstats"==a.menuType?b++:"retention"==a.menuType?c++:"funnel"==a.menuType&&d++}),b+"个事件细分,"+c+"个留存,"+d+"个漏斗"},b.getShareName=function(a){return a.accountId==b.currentAccountId?"来自我的分享":"来自“"+a.accountName+"”的分享"},b.reportDetail=function(a){h.go("collect."+a.menuType,{pageid:a.originalReportId})},b.getTipWidth=function(a){return 1==a.tooltipChart.length?{width:3==b.showCount?"300px":"400px"}:2==a.tooltipChart.length?{width:3==b.showCount?"120px":"200px"}:{width:3==b.showCount?"70px":"90px"}},b.doDelete=function(e){b.closeWin(),d.showLoading();var f=null;3==e?f=c.deleteInfo("custommenu/delMenu/"+b.appid+"/"+b.winId):7==e&&(f=c.deleteInfo("custommenu/delTemp/"+b.winId)),null!=f&&f.then(function(){d.showTips("删除成功"),d.hideLoading(),7==e?b.currentMenu.templates.filter(function(a,c){a.id==b.winId&&(b.currentMenu.templates.splice(c,1),b.chartDatas.splice(c,1))}):(b.lookMyMenu(),b.$emit("f5CtmMenus",{}),a.operSubmitData("删除"))})},b.matchFlag=0,b.changeMatchFlag=function(a){return b.showEditEvent?(b.showEditEvent=!1,!1):0==a?(b.matchFlag=0,!1):(b.matchFlag=a,void b.currentMenu.templates.filter(function(a){var c=JSON.parse(a.queryCondition);if("eventstats"==a.menuType)a.isMatch=c.eventMatch,a.eventname=b.getEventName(c.event);else{a.isMatch=!0;var d=[];c.filter(function(c){c.eventMatch||(a.isMatch=!1);var e=b.getEventName(c.event);""!=e&&d.push(e)}),d.length>2&&!a.isMatch||0==d.length?a.eventname="事件不匹配":d.length>2&&a.isMatch?a.eventname="事件全匹配":a.eventname=d.join(",")}a.jsonCondition=c}))},b.editTemplateEvent=function(a,c){b.currentTemplate=a,b.tempIndex=c,b.showEditEvent=!0},b.canJoin=function(){if(!b.currentMenu)return!1;var a=!0;return b.currentMenu.templates.filter(function(a){return 0==a.isMatch}).length>0&&(a=!1),a},b.getEventName=function(a){if(!b.eventList)return"";for(var c=a,d=0;d<b.eventList.length;d++)if(a==b.eventList[d].eventName){c=b.eventList[d].eventNameAlias;break}return c},b.addShareMenu=function(){if(!b.canJoin())return!1;var a={name:b.currentMenu.name,templates:[],id:b.currentMenu.id};2==b.viewFlag&&(a.id=b.currentMenu.shareId),b.currentMenu.templates.filter(function(b){var c=b.queryCondition,d=[];if("funnel"==b.menuType){JSON.parse(c).filter(function(a){d.push(a.event)})}a.templates.push({id:b.id,menuType:b.menuType,queryCondition:c,name:b.name,events:d.join(",")})});var e=c.postInfo("custommenu/addMenu/"+b.appid,a);d.showLoading(),e.then(function(a){d.hideLoading(),a.length>0?(b.$emit("f5CtmMenus",{}),b.changeMatchFlag(0),b.showWin(5)):a.code&&-300==a.code?d.showTips("您的账号仅支持创建"+b.maxMenu+"个看单,如需增加,请联系商务"):d.showTips("加入失败")})},b.$on("matchok",function(a,c){b.currentMenu.templates[b.tempIndex].queryCondition=JSON.stringify(c.info),b.currentMenu.templates[b.tempIndex].isMatch=!0,c.names.length>2?b.currentMenu.templates[b.tempIndex].eventname="事件全匹配":b.currentMenu.templates[b.tempIndex].eventname=c.names.join(","),b.showEditEvent=!1}),b.queryInfoByApp=function(){b.pageFlag=3,m=c.getInfo(b.appid+"/event/find"),m.then(function(a){b.eventList=a}),f(function(){if(b.showMenu("eventstats")){c.getInfo("mng/eventstats/complicated/findAll/"+b.appid).then(function(a){b.eventstatsList=a})}else b.eventstatsList=[];if(b.showMenu("retention")){c.getInfo("mng/retention/find/"+b.appid).then(function(a){b.retentionList=a})}else b.retentionList=[];if(b.showMenu("funnel")){c.getInfo("funnel/find/"+b.appid).then(function(a){b.funnelList=a})}else b.funnelList=[]},300)},b.changeChartData=function(a){a.tooltipChart=[];var c=a.trendList.key,f={key:c,val:[],name:[],rmd:++l},g=[];if(c.filter(function(a,b){g.push(0)}),"pie"==a.charts.chartType){a.ischeckall=a.group_List.length==a.grouped_List.length,a.charts.chartConfig.flag=!1,a.rateListed.length>2&&(a.rateListed=a.rateListed.slice(0,2));var h={},i=e.cloneJSON(a.grouped_List);a.rateListed.filter(function(b){var c=[],d=0;a.grouped_List.filter(function(e){a.totalList.filter(function(f){var g="";a.trendList.groupfield.filter(function(a){g+=f[a]+","}),e==g.slice(0,-1)&&(c.push(f[b]),d+=f[b])})}),i.indexOf("其他")>-1&&i.splice(i.indexOf("其他"),1),a.totalVal[b]-d>0&&a.group_List.length>0&&(c.push(a.totalVal[b]-d),i.push("其他")),h[b]=c}),a.charts.chartData.key=a.rateListed,a.charts.chartData.name=i,angular.equals({},h)?a.charts.chartData.val=[]:a.charts.chartData.val=[h]}else if("table"==a.charts.chartType){a.grouplen>0&&(a.trendList.name=a.trendList.name.slice(a.grouplen+1),a.trendList.columnkey=a.trendList.columnkey.slice(a.grouplen+1),a.trendList.columnkey.unshift("groupnames"),a.trendList.name.unshift("分组"),b.mysort(a.infoList,a.trendList.columnkey[1],!0));var j=[],k=[];a.rateListed.filter(function(a){j.push(b.substrName(a))}),j.length>0&&(j.unshift(a.trendList.name[0]),k=e.cloneJSON(a.rateListed),k.unshift(a.trendList.columnkey[0]),a.trendList.name=j,a.trendList.columnkey=k),a.colsStyle=d.getTableColsWidth(a.trendList.name,b.timeFlag,b.showCount),a.fixrefresh=++l}else{if("columnstack"==a.charts.chartType)a.charts.chartConfig.flag=a.group_List.length>0?"hasGro":"nohasGro",a.grouped_List.length>5&&(a.grouped_List=a.grouped_List.slice(0,5)),a.rateListed.length>2&&(a.rateListed=a.rateListed.slice(0,2));else{a.charts.chartConfig.flag=!1,a.rateListed.length>4&&(a.rateListed=a.rateListed.slice(0,4));var m=1==a.rateListed.length?4:2;a.grouped_List=a.grouped_List.slice(0,m)}a.charts.chartConfig.namesub=[],a.trendList.val.filter(function(b){var d=b.ds,h=b.groupnames;if(a.grouped_List.indexOf(h)>-1||0==a.grouped_List.length){var i=c.indexOf(d);a.rateListed.filter(function(c){var d=a.trendList.format[c],j=h+c;0==a.grouped_List.length&&(j=c.substring(1));var k=f.name.indexOf(j),l=[];-1==k?(f.name.push(j),a.charts.chartConfig.namesub.push("percent"==d?"%":""),l=e.cloneJSON(g),f.val.push(l)):l=f.val[k];var m=Number(b[c]);m="percent"==d?e.decimal2(100*m,2):"int"==d?Math.round(m):e.decimal2(m,2),l[i]=m})}}),a.charts.chartData=f;var n=a.charts.chartData.key.length-1;if(a.group_List.length>0&&"columnstack"==a.charts.chartType){var o=0;a.charts.chartData.val.filter(function(a){o+=a[a.length-1]});var p={seriesName:b.substrName(a.rateListed[0]),value:o,name:a.charts.chartData.key[n]};a.tooltipChart.push(p)}else a.charts.chartData.name.filter(function(b,c){var d=a.charts.chartData.val[c].length-1,e={seriesName:b,value:a.charts.chartData.val[c][d],name:a.charts.chartData.key[n],color:a.charts.chartConfig.color[c]};a.tooltipChart.push(e)})}a.group_List.length>0&&"table"!=a.charts.chartType&&(a.selectName=a.grouped_List.length+"个分组"),0!=a.group_List.length&&"table"!=a.charts.chartType||(a.selectName=a.rateListed.length+"个指标")},b.$on("conentresize",function(){b.chartDatas&&b.chartDatas.length>0&&b.chartDatas.filter(function(a){a.trendList&&(a.colsStyle=d.getTableColsWidth(a.trendList.name,b.timeFlag,b.showCount),a.fixrefresh=++l)})}),b.orderCol=function(a,c,d){a.sortCol=c,b.mysort(a.infoList,c,d),a.fixrefresh=++l},b.mysort=function(a,b,c){1==c?a.sort(function(a,c){return a[b]==c[b]?0:a[b]>c[b]?-1:1}):a.sort(function(a,c){return a[b]==c[b]?0:a[b]>c[b]?1:-1})},b.changeRate=function(a,c){if(!b.canAdd(a,1,c))return!1;var d=a.rateListed.indexOf(c);d>-1?a.rateListed.splice(d,1):a.rateListed.push(c),b.changeChartData(a)},b.changeGroup=function(a,c){if(!b.canAdd(a,2,c))return!1;var d=a.grouped_List.indexOf(c);d>-1?a.grouped_List.splice(d,1):a.grouped_List.push(c),b.changeChartData(a)};var o=4;b.canAdd=function(a,c,d){var e=[];if(o=3==b.showCount?3:4,e=1==c?a.rateListed:a.grouped_List,-1==e.indexOf(d)){var f=a.rateListed.length,g=a.grouped_List.length;return"line"==a.charts.chartType?1==c?(f+1)*(0==g?g+1:g)<=o:f*(g+1)<=o:1==c?f+1<=("columnstack"==a.charts.chartType?2:"pie"==a.charts.chartType?1:a.rateList.length):g+1<=("columnstack"==a.charts.chartType?5:a.group_List.length)}return!0},b.substrName=function(a){return a.substring(1)};var p=function(a){b.changeChartData(a),function(a){b.$on(a.charts.chartTypeId,function(e,f){if(f.info.id!=a.charts.chartType&&1==b.viewFlag){var g=c.putInfo("custommenu/updateType/"+a.info.id+"?type="+f.info.id,{});d.showLoading(),g.then(function(a){d.hideLoading()},function(a){d.hideLoading(),d.showTips(a.message)})}a.charts.chartType=f.info.id,b.changeChartData(a)})}(a)};b.gotoDetail=function(a){1==b.viewFlag&&h.go("collect."+a.menuType,{pageid:a.originalReportId})},b.percentPre="rate_",b.query=function(a){if(!k)return k=!k,!1;var e=[];a?(angular.isUndefined(b.chartDatas)&&(b.chartDatas=[]),e=[a]):(b.chartDatas=[],e=b.currentMenu.templates);var g=[],h=function(a,c,e){if(a.val&&a.val.length>0){var f=a.val[0];if("funnel"==e)c.charts.chartData=d.getFunnelData(f,a.key,a.eventname);else if("retention"==e){c.charts.chartData.key=a.key.slice(1);var g=a.columnkey,h=[];c.charts.chartData.name.push(f[g[0]]);for(var i=2;i<g.length;i++)h.push(f["rate_"+g[i]]);c.charts.chartData.val.push(h)}else if("eventstats"==e){var j=a.format,k={};j&&j.filter(function(a){k[a.field]=a.format}),a.format=k,c.trendList=a,c.totalList=a.totalval,c.infoList=a.val,c.eventChartLoading=!1,c.rateList=a.selectfield,c.totalVal={},c.rateList.filter(function(a){c.totalList.filter(function(b){c.totalVal[a]||(c.totalVal[a]=0),c.totalVal[a]+=b[a]})}),c.group_List=b.getGroupNames(c,a.groupfield),c.grouplen=a.groupfield.length,b.getChartTypeList(c),c.infoList.length>0&&(b.limit(c),0==c.group_List.length&&(c.ispercent=!1),p(c),c.group_List.length>0&&(c.dsList=[],c.trendList.key.filter(function(a,b){var d={id:b,name:a,dsflag:"ds"};c.dsList.unshift(d)}),c.dsInit=c.dsList[0].id,function(a){b.$on(a.dsId,function(b,c){a.ds=c.info.name,a.fixrefresh=++l})}(c)),c.fixrefresh=++l,c.initrefresh=++l)}}c.charts.chartLoading=!1};e.filter(function(e,i){if(0!=e.toShow){var j={info:e};j.charts={chartConfig:{color:d.getTenColors(),legend:!1,issmart:!0,namesub:[],id:"eventstats"==e.menuType?++l:""},chartLoading:!0,chartData:d.noDataChart(),rmd:++l,chartTypeId:b.timeFlag+"_"+ ++l,dsId:"ds_"+ ++l},a?b.chartDatas.push(j):g.push(j),function(a,d,e){f(function(){var d=a.menuType;if(e.charts.chartType="funnel"==d?"funnel":"line",angular.isDefined(a.queryData))h(JSON.parse(a.queryData),e,d);else{c.getInfo("custommenu/report/"+b.appid+"/"+a.originalReportId,{startDate:b.date.startDate,endDate:b.date.endDate,menuType:d,viewFlag:b.timeFlag}).then(function(a){h(a,e,d)},function(a){e.charts.chartLoading=!1})}},200*d*(Math.ceil(d+1)/4))}(e,i,j)}}),a||(b.chartDatas=g)},a.$on("tooltipObj",function(a,c){f(function(){b.chartDatas&&b.chartDatas.length>0&&b.chartDatas.filter(function(a){if(c.id==a.charts.chartConfig.id&&"eventstats"==a.info.menuType)if(a.tooltipChart=[],a.group_List.length>0&&"columnstack"==a.charts.chartType){var d=0;c.objs.filter(function(a){d+=a.value});var e={seriesName:b.substrName(a.rateListed[0]),value:d,name:c.objs[0].name};a.tooltipChart.push(e)}else a.tooltipChart=c.objs})},100)}),b.getFormatNumber=function(a){return a>=1e8?e.decimal2(a/1e8)+"亿":a>=1e7?e.decimal2(a/1e7)+"千万":a>=1e6?e.decimal2(a/1e6)+"百万":a>=1e4?e.decimal2(a/1e4)+"万":a},b.changeCount=function(){b.showCount&&2!=b.showCount?b.showCount=2:(b.showCount=3,b.chartDatas.filter(function(a){if("eventstats"==a.info.menuType&&a.rateListed){var c=0==a.rateListed.length?1:a.rateListed.length,d=0==a.grouped_List.length?1:a.grouped_List.length;"line"==a.charts.chartType&&c*d>3&&(a.rateListed=a.rateList.slice(0,1),a.grouped_List=a.group_List.slice(0,3),a.grouped_List.length<2&&(a.rateListed=a.rateList.slice(0,3)),b.changeChartData(a))}})),b.$broadcast("conentresize",!0),b.chartDatas.filter(function(a){a.fixrefresh=++l})},b.checkAll=function(a){a.ischeckall=!a.ischeckall,a.grouped_List=a.ischeckall?e.cloneJSON(a.group_List):[],b.changeChartData(a)},b.chartAllList=[{id:"line",name:"折线图",platform:"line"},{id:"columnstack",name:"柱状图",platform:"columnstack"},{id:"table",name:"表格",platform:"table"},{id:"pie",name:"饼状图",platform:"pie"}],b.getChartTypeList=function(a){a.rateList.length>=1&&0==a.grouplen?(a.chartList=b.chartAllList.slice(0,3),a.charts.chartType="line",a.charts.chartTypeInit="line"):1==a.rateList.length&&a.grouplen>0?a.chartList=b.chartAllList.slice(0):a.rateList.length>1&&a.grouplen>0&&(a.chartList=b.chartAllList.slice(2,-1),a.charts.chartType="table",a.charts.chartTypeInit="table"),a.charts.chartType=a.info.type?a.info.type:a.charts.chartType,a.charts.chartTypeInit=a.charts.chartType},b.limit=function(a){"line"==a.charts.chartType?(a.rateListed=a.rateList.slice(0,1),a.grouped_List=a.group_List.slice(0,3),a.grouped_List.length<2&&(a.rateListed=a.rateList.slice(0,3))):"columnstack"==a.charts.chartType?(a.rateListed=a.rateList.slice(0,2),a.grouped_List=a.group_List.slice(0,3)):"pie"==a.charts.chartType?(a.rateListed=a.rateList.slice(0,1),a.grouped_List=a.group_List.slice(0)):(a.rateListed=a.rateList.slice(0),a.grouped_List=a.group_List.slice(0))},b.getGroupNames=function(a,c){var d=[],e=[];if(0==c.length){var f=a.trendList.groupfield.length>0;a.trendList.val.filter(function(a,c){var d={};f||(d=a),a.firstDateRow&&(d.ds=a.ds,d.groupnames=a.ds,f?d.children=b.trendList.val.slice(c,c+a.rowNum):(d.rsnum=1,d.isrs=!0),e.push(d))})}else a.trendList.val.filter(function(b,f){var g=[],h={};c.filter(function(a){g.push(b[a])});var i=g.join(","),j=d.indexOf(i);b.groupnames=i,-1==j&&d.push(i),b.firstDateRow&&(h.ds=b.ds,h.groupnames=i,h.children=a.trendList.val.slice(f,f+b.rowNum),e.push(h))});return b.detailAllList=e,b.istranfer?b.transformList():b.lsChange++,d},b.$on("dragorder",function(a,e){d.showLoading();var f="";f="menu"==e.flag?"custommenu/updateIndex/"+b.appid+"/"+e.id+"?index="+e.index:"custommenu/updateIndex/"+e.id+"?index="+e.index,c.putInfo(f,{}).then(function(){"menu"==e.flag?b.lookMyMenu():b.query()},function(){d.hideLoading()})}),b.$watch("appid",function(a){if(angular.isDefined(b.appid)){m=null;var e=c.getInfo("custommenu/find/"+b.appid);d.showLoading(),e.then(function(a){d.hideLoading(),1==a?b.lookMyMenu():b.pageFlag=1})}}),b.$watch("date.startDate+date.endDate+timeFlag",function(){angular.isDefined(b.date)&&4==b.pageFlag&&b.query()})}angular.module("app.collect").controller("custommenuCtrl",["$rootScope","$scope","HttpService","ToolService","UtilService","$timeout","$stateParams","$state","$filter","$location",a])}(),function(){function a(a,b,c,d,e){b.query=function(){d.showLoading(),c.getInfo("logtool/"+b.appid).then(function(a){b.logdata=a,d.hideLoading()})},b.$watch("appid",function(a){angular.isDefined(a)&&b.query()})}angular.module("app.collect").controller("logtoolCtrl",["$rootScope","$scope","HttpService","ToolService","UtilService",a])}(),function(){function a(a,b,c,d,e){b.UserId=$.cookie("ryioUid"),b.query=function(){d.showLoading(),c.getInfo("mng/export/report/"+b.appid+"/findall").then(function(a){b.donwlistData=a,d.hideLoading()})},b.$on("flipinfo",function(a,c){b.flipPage2=c}),b.doRemove=function(a){b.delstatus=!0,b.delId=a},b.removeInfo=function(){var a="mng/export/report/"+b.appid+"/delete/"+b.delId,e=c.deleteInfo(a);d.showLoading(),b.delstatus=!1,e.then(function(a){d.hideLoading(),d.showTips("删除成功"),b.query()})},b.downlistRefresh=function(a,e){e&&1==e&&(a=b.winID),d.showLoading(),b.closeWin(),c.putInfo("mng/export/report/"+b.appid+"/refresh/"+a,{}).then(function(a){b.query()})},b.closeWin=function(){d.hideAlp(),b.wantRefresh=!1},b.downlistEvt=function(e){if("complete"!=e.status)return!1;var f=e.id,g=c.downFile("mng/export/report/"+b.appid+"/download/"+f);d.showLoading(),g.then(function(c){d.hideLoading(),-1==c.code?(b.wantRefresh=!0,b.winID=e.id,d.showAlp()):a.operSubmitData("下载")})},b.$watch("appid",function(a){angular.isDefined(a)&&b.query()})}angular.module("app.collect").controller("reportCtrl",["$rootScope","$scope","HttpService","ToolService","UtilService",a])}(),function(){function a(a,b,c,d,e,f,g,h){var i=h.pageid,j=(new Date).getTime();a.querySelectInfos=function(){c.getInfo("mng/usergroup/find/"+a.appid).then(function(b){b.unshift({id:0,name:"请选择用户分组"}),a.groupsList=b,a.groupinitname="请选择用户分组",a.groupInit=0}),a.timeUnitList=[{id:1,name:"秒"},{id:60,name:"分钟"},{id:3600,name:"小时"}],a.timeinitname="分钟",a.timeUnitInit=60,a.eventTypeList=[{id:!0,name:"起始事件"},{id:!1,name:"结束事件"}],a.typeinitname="起始事件",a.eventTypeInit=!0},a.queryInfoByApp=function(b,d){if(angular.isUndefined(b)||5==b){c.getInfo(a.appid+"/event/find").then(function(b){a.eventListAll=b,a.eventList=a.eventListAll.filter(function(a){return"install"!=a.eventName})})}var f=c.getInfo("mng/intelligentpath/"+a.appid+"/list");a.define={},f.then(function(c){if(a.defineList=c,c.length>0)if(a.addFirst=!1,e.isNullStr(i)||(d=i),d){for(var f=0;f<a.defineList.length;f++)if(a.defineList[f].id==d){a.define=a.defineList[f];break}e.isNullStr(i)?a.defineFlag=++j:(a.clickDefine(a.define),i=null)}else a.clickDefine(c[0]);5==b&&(a.dimenRmd=++j)})},a.clickDefine=function(c){a.define=c,a.defineFlag=++j,a.isEditInfo=!0,a.isShowCache=!1,b.thirdtab=c.name},a.deleteDefine=function(b){a.delDefine=b,a.wantDelete=!0,d.showAlp()},a.doDelete=function(){a.closeWin(),d.showLoading(),c.deleteInfo("mng/intelligentpath/"+a.delDefine.id+"/delete").then(function(){d.showTips("删除成功"),a.queryInfoByApp(1),d.hideLoading(),b.operSubmitData("删除")})},a.date=d.getLastDays(-3,0),a.timeFlag="day",a.disTimeFlag=["hour"],a.changeTimeFlag=function(b){if(a.disTimeFlag.indexOf(b)>-1)return!1;a.timeFlag=b},a.$on("dateCustos",function(b,c){c.startDate==c.endDate?a.disTimeFlag=["week","month"]:a.disTimeFlag=["hour"],a.disTimeFlag.indexOf(a.timeFlag)>-1&&(a.timeFlag="day"),a.date=c}),a.$watch("date",function(){angular.isDefined(a.date)&&(a.datestr=a.date.startDate+"至"+a.date.endDate)});var k=function(a){return a=a.split(","),a.sort(function(a,b){return a.localeCompare(b)}),a.join(",")};a.$on("groupId",function(b,c){a.groupId=c.info.id}),a.$on("eventTypeId",function(b,c){a.eventTypeId=c.info.id}),a.$on("timeUnitId",function(b,c){a.timeUnitId=c.info.id}),a.$on("eventIds",function(b,c){if(k(a.eventIds)!=k(c.info)){if(a.eventIds=c.info,!a.eventIds)return a.eventinitname="请先选取关注事件",a.eventId="",void(a.enull=++j);if(a.filterEvents!=a.eventIds.split(",")){var d=a.eventIds.split(",");a.filterEvents=a.eventList.filter(function(a){return d.indexOf(a.eventName)>-1}),a.filterEvents.length>1&&(a.eventTip="",a.params&&(a.params.eventsnull=!1)),a.eventIds.indexOf(a.eventId)>-1&&(a.eventInit=a.eventId),(a.filterEvents&&a.filterEvents.length>0&&!a.eventInit||d.indexOf(a.eventInit)<0)&&(a.eventinitname="请选取目标事件",a.eventInit="",a.eventId="",a.eventRel="and",a.event={},a.enull=++j)}}}),a.$on("eventId",function(b,c){a.eventId!=c.info.eventName&&(a.changeEvent(c.info),a.eventId=c.info.eventName)}),a.$watch("time",function(b){a.time&&$("#timeId").removeClass("iptnull")}),a.changeEvent=function(b,e){if(e){a.initParmas();var f=a.eventList.filter(function(a){return a.eventName==e.event});b=f[0],a.eventinitname=b.eventNameAlias,a.eventRel=e.relation}a.eventId=b.eventName;var h=function(){a.event={id:"evt_"+j,params:[],paramsList:b.profiles},a.propertyList=b.firstLevelAttr,a.sumtypeList=b.secondLevelAttr,e?g(function(){a.propertyInit=e.viewField,a.prorefresh=++j,a.event.secondval=e.fieldOperate,e.params.filter(function(b){a.addEventParams(a.event,b)})}):(a.propertyList&&a.propertyList.length>0?a.propertyInit=a.propertyList[0].attr:a.propertyInit="",a.prorefresh=++j)};if(b.firstLevelAttr)h();else{var i=[],k={event:b.eventName,param:[]};e&&(e.params.filter(function(a){k.param.push(a.attr)}),i.push(k)),d.showLoading();c.getInfo(a.appid+"/event/find/param?names="+b.eventName+"¶ms="+JSON.stringify(i)).then(function(b){b.filter(function(b){for(var c=0;c<a.filterEvents.length;c++)if(b.eventName==a.filterEvents[c].eventName){a.filterEvents[c].profiles=b.profiles,a.filterEvents[c].firstLevelAttr=b.firstLevelAttr,a.filterEvents[c].secondLevelAttr=b.secondLevelAttr;break}}),h(),d.hideLoading()})}},a.canSave=function(){var b=!1;return a.eventIds||a.time||a.eventId||a.groupId||!a.eventTypeId||60!=a.timeUnitId||(b=!0),b},a.initParmas=function(){a.eventinitname="请先选取关注事件",a.eventinitnames="请选取关注事件",a.typeinitname="起始事件",a.groupinitname="请选择用户分组",a.timeinitname="分钟",a.time=20,a.eventinitIds=++j,a.eventTypeInit=!0,a.groupInit=++j,a.eventInit=++j,a.eventIds="",a.eventTypeId=!0,a.timeUnitInit=60,a.timeUnitId=60,a.groupId=0,a.groupInit=0,a.eventId="",a.eventRel="and",a.filterEvents=[],a.event={},a.evtrefresh=++j},a.changeRel=function(){a.eventRel="and"==a.eventRel?"or":"and"},a.initCondition=function(){a.initParmas()},a.showEventWin=!1,a.addPath=function(b,c){var d=e.getItem("path_"+a.appid);if(1==b||d){if(a.isShowCache=0==b||c,!a.define.id&&!a.isShowCache||!d&&a.isShowCache)return!1;a.eventTip="",a.currentDefine=a.isShowCache?JSON.parse(d):a.define,a.ename=a.isShowCache?"新增智能路径":a.define.name;var f=JSON.parse(a.currentDefine.eventCondition);a.changeEvent(null,f),a.isEditInfo=!0,a.time=a.currentDefine.session;var g=a.currentDefine.events.split(",");a.eventIds=a.currentDefine.events,a.filterEvents=a.eventList.filter(function(a){return g.indexOf(a.eventName)>-1}),a.groupInit=a.currentDefine.userGroup,a.eventId=a.currentDefine.targetEvent,a.eventTypeInit=a.currentDefine.startOrEnd,a.timeUnitInit=a.currentDefine.sessionUnit,a.eventInit=a.currentDefine.targetEvent,a.eventTypeId=a.currentDefine.startOrEnd,a.eventinitIds=a.currentDefine.events}else a.currentDefine={},a.isEditInfo=!1,a.initParmas(),a.params={},a.eventTip="",a.isShowCache=!1;a.showEventWin=!0},a.addFirst=!1,a.addFirstPath=function(){a.addFirst=!0,a.showEventWin=!0,a.currentDefine={},a.initParmas()},a.closeAddWin=function(){a.showEventWin=!1,a.addFirst=!1,a.isEditInfo=!0},a.maxparams=10,a.getEventParamsNum=function(b){return b&&b.params?b.params.filter(function(a){return 0!=a.show}).length:a.maxparams},a.addEventParams=function(b,c){if(!b||!b.params||a.getEventParamsNum(b)>=3)return!1;j++;var d={id:"pam_"+j,pid:b.id};if(c)for(var e in c)d[e]=c[e];b.params.push(d)},a.removeEventParams=function(a,b){for(var c=0;c<a.params.length;c++)if(a.params[c].id==b.id){a.params[c].show=!1;break}},a.$on("event",function(b,c){for(var d=a.event.params,e=0;e<d.length;e++)if(d[e].id==c.id){d[e]=c;break}}),a.nameWin=function(b){var c=a.getReportEventInfo();if(a.getPathParms(c),a.eventIds.split(",").length<2&&(a.eventTip="请至少选择2个关注事件",a.params.eventsnull=!0),c.hasNull||a.params.isnull||a.eventTip)return d.hideLoading(),d.showTips(a.formTipMsg),!1;d.showAlp(),a.wantSave=!0,a.currentDefine={},a.ename="",a.isotherSave=!1,angular.isDefined(b)&&(a.currentDefine={id:0},a.isotherSave=!0)},a.lookReport=function(){var b=a.getReportEventInfo(),c="";if(a.getPathParms(b),a.eventIds.split(",").length<2&&(a.eventTip="请至少选择2个关注事件",a.params.eventsnull=!0),b.hasNull||a.params.isnull||a.eventTip)return d.showTips(a.formTipMsg),!1;c=JSON.stringify(b),a.isShowCache=!0,a.query(c)},a.closeWin=function(b){a.wantSave=!1,a.wantDelete=!1,a.nodeDetail=!1,b&&(2==b&&a.isotherSave?a.currentDefine=a.define:a.showEventWin=!1,a.showEventWin=!0),d.hideAlp()},a.getPathParms=function(b){a.params={},a.time||(a.params.timenull=!0,a.params.isnull=!0),b.event||(a.params.eventnull=!0,a.params.isnull=!0)},a.getReportEventInfo=function(){if(!a.event.params)return!1;var b=!1,c={event:a.eventId,relation:a.eventRel,params:[]};return c.viewField=a.event.proId,a.event.second?c.fieldOperate=a.event.sumId:c.fieldOperate="",a.event.params.filter(function(d){if(0!=d.show){e.isNullStr(d.attr)&&(a.$broadcast(d.id,"error"),b=!0);var f={};for(var g in d)"id"!=g&&"pid"!=g&&(f[g]="value"!=g?d[g]:d[g].join(","),e.isNullStr(d[g])&&(a.$broadcast(d.id,"error"),b=!0));c.params.push(f)}}),b&&(c.hasNull=!0),c},a.save=function(){var f=function(){var e={name:a.ename,app:a.appid,events:a.eventIds,userGroup:a.groupId,startOrEnd:a.eventTypeId,session:parseInt(a.time),sessionUnit:a.timeUnitId?a.timeUnitId:60},f=a.getReportEventInfo();if(a.getPathParms(f),a.eventIds.split(",").length<2&&(a.eventTip="请至少选择2个关注事件",a.params.eventsnull=!0),f.hasNull||a.params.isnull||a.eventTip)return d.showTips(a.formTipMsg),!1;e.targetEvent=f.event,e.eventCondition=JSON.stringify(f);var g=null,h="添加成功";a.currentDefine.id?(e.id=a.currentDefine.id,g=c.putInfo("mng/intelligentpath/update",e),h="修改成功"):g=c.postInfo("mng/intelligentpath/create",e),d.showLoading(),g.then(function(c){if(-6001==c.code)return void d.showTips(c.message);a.closeWin(1),d.hideLoading(),d.showTips(h),a.currentDefine.id?(a.queryInfoByApp(2,a.currentDefine.id),a.currentDefine={}):(a.queryInfoByApp(1),b.operSubmitData("新建"),a.isShowCache&&localStorage.removeItem("path_"+a.appid))})};if(a.currentDefine.id)f();else{var g={name:{key:"spcname",val:a.ename}};if(a.tip=formJudge(g),e.isNullStr(a.ename)||1!=a.tip.succ)return d.showTips("请输入20个汉字以内名称,允许字符为中英文数字_-"),!1;f()}},a.eventChartConfig={color:d.getTenColors(),legend:!1},a.$on("flipinfo",function(b,c){a.flipPage=c}),a.showTempLook=!1,a.query=function(b){a.showEventWin=!1,$("#mychart div").hide(),$("#tip_shape").hide();var g=d.getParams(a);if(b){g.eventCondition=b;JSON.parse(b);a.showTempLook=!0,a.groupId&&(g.userGroup=a.groupId),g.session=a.time,g.startOrEnd=a.eventTypeId,g.targetEvent=a.eventId,g.events=a.eventIds,g.sessionUnit=a.timeUnitId,e.setItem("path_"+a.appid,JSON.stringify(g))}else{var h=e.getItem("path_"+a.appid);a.define=a.isShowCache?JSON.parse(h):a.define,g.eventCondition=a.define.eventCondition,a.showTempLook=!!a.isShowCache,a.define.userGroup&&(g.userGroup=a.define.userGroup),g.session=a.define.session,g.startOrEnd=a.define.startOrEnd,g.targetEvent=a.define.targetEvent,g.events=a.define.events,g.sessionUnit=a.define.sessionUnit}a.pathIsLoading=!0;var i="intelligentpath/"+a.appid+"/query";c.getInfo(i,g).then(function(b){a.pathList=b,a.pathIsLoading=!1,a.pathList&&0==a.pathList.value.length||(require.config({paths:{zrender:"./js/common/zrender","zrender/Group":"./js/common/zrender","zrender/shape/Rectangle":"./js/common/zrender","zrender/shape/Polyline":"./js/common/zrender","zrender/shape/Line":"./js/common/zrender","zrender/shape/Text":"./js/common/zrender","zrender/shape/Animal":"./js/common/zrender","zrender/shape/Image":"./js/common/zrender"}}),require(["zrender","zrender/Group","zrender/shape/Rectangle","zrender/shape/Polyline","zrender/shape/Line","zrender/shape/Text","zrender/shape/Image"],function(b,c,e,g,h,i,j){function k(b){var c,d,g=u,j=v,A=w,B=$("#tip_shape")[0];if(0==b)c=null,d=a.pathList.value.filter(function(a){return 1==a.level});else if(c=a.pathList.value.filter(function(c){return c.id==b&&a.clickNode==c||!a.clickNode&&c.id==b})[0],d=a.pathList.value.filter(function(a){return a.parent==b&&"0.00"!=(100*a.percent).toFixed(2)}),d.length>0){d=f("orderBy")(d,["percent"],"desc");for(var C=0;C<d.length;C++)if("其他"==d[C].name){var D=d[C];d.splice(C,1),d.push(D);break}}if(a._nodes=d,0==d.length)return!1;var E=10,F=0;null==c?(E=Math.ceil(n/2)-Math.ceil(t/2)-20,F=20,A=j):F=r*(d[0].level-1),d.forEach(function(d,f){var n=E*(f+1)+f*(q+t)+20,r=c&&1==c.level?F+20:F,u=new e({id:o(),data:d,style:{x:n,y:r,color:0==b?j:"#ffffff",width:t,height:s,radius:3,brushType:"both",strokeColor:A,lineWidth:1,text:z(d.name,16,"..."),textFont:"normal 14px Arial",textColor:0==b?"#ffffff":g,textPosition:"inside"},highlightStyle:{strokeColor:j,lineWidth:1},clickable:!0,onclick:function(b){if(1==d.level||d.shape.style.strokeColor==j)return y(d),!1;a.clickNode=d,x(d),d.activeNode=!0,l(d.level),"0.00"!=(100*d.percent).toFixed(2)&&k(d.id),0==a._nodes.length&&y(d);var c=b.target.data;c.shape.style.strokeColor=j,c.line.style.strokeColor=j,d.y+290>550&&($(".panel").height()>1500?$(".panel").height(1500):$(".panel").height(d.y+340)),m.render()},onmouseover:function(a){B.innerHTML=a.target.data.name,B.style.display="block",B.style.position="absolute",B.style.left=a.target.style.x+"px",B.style.top=a.target.style.y-60+"px"},onmouseout:function(){B.style.display="none"}});if(null!=c){var v=c.x,w=c.y,C=v+Math.ceil(t/2),D=w+s+1,G=n+Math.ceil(t/2),H=r-1,I=new h({id:o(),style:{xStart:C,yStart:1==c.level?D+40:D,xEnd:G,yEnd:H-20,strokeColor:A,lineWidth:1}});d.line=I,p.addChild(I);var J=new i({zlevel:2,style:{text:(100*d.percent).toFixed(2)+"%",x:G,y:H-10,textFont:"14px Arial",color:g,textPosition:"inside",textAlign:"center",strokeColor:"#fff"},hoverable:!1});d.text=J,p.addChild(J)}d.shape=u,d.x=n,d.y=r,d.hidx=f,p.addChild(u)})}function l(b){a.pathList.value.filter(function(a){a.level>b&&a.shape&&(p.removeChild(a.shape),p.removeChild(a.line),p.removeChild(a.text),a.shape=void 0),a.level==b&&a.shape&&(a.shape.style.strokeColor=w,a.line.style.strokeColor=w,a.text.style.color=u)})}a.clickNode=!1,b.dispose();var m=b.init($("#mychart")[0]),n=Math.ceil(m.getWidth()),o=(Math.ceil(m.getHeight()),require("zrender/tool/guid")),p=new c,q=10,r=150,s=45,t=130;a._nodes=[];var u="#656565",v="#00a9e8",w="#ccc",x=function(b){angular.forEach(a.pathList.value,function(a){a.level>=b.level&&(a.activeNode=!1)})},y=function(b){a.routeList=[],angular.forEach(a.pathList.value,function(b){(b.activeNode||1==b.level)&&a.routeList.push(b)}),B(b),a.routeList=f("orderBy")(a.routeList,["level"]),a._nodes.length>0&&a.routeList.push({name:"?"}),a.pathList.type||a.routeList.reverse(),d.showAlp(),a.nodeDetail=b},z=function(a,b,c){for(var d=0,e=0;e<a.length;e++){if((d=a.charCodeAt(e)>255?d+=2:d+=1)==b)return a.slice(0,e+1)+c;if(d>b)return a.slice(0,e)+c}return a},A=function(){for(var b=0,c=0;c<a.pathList.value.length;c++)if(2==a.pathList.value[c].level){b=a.pathList.value[c].parent;break}return b},B=function(b){a.nodeName=b.name;var c=0==b.totalNumber?1:b.totalNumber;tpercent=b.totalNumber/c*100,apercent=b.number/c*100,lnumber=b.totalNumber-b.number,lpercent=lnumber/c*100,a.lpercent=lpercent.toFixed(2)+"%",a.nodeDetails=[{title:"总会话数",count:b.totalNumber,percent:tpercent.toFixed(2)+"%"},{title:"活跃会话",count:b.number,percent:apercent.toFixed(2)+"%"},{title:"流失会话",count:lnumber,percent:lpercent.toFixed(2)+"%"}]};k(0),k(A());var C=new j({style:{image:0==a.pathList.type?"/images/top.png":"/images/bottom.png",x:n/2+8-20,y:75}});m.addShape(C),m.addGroup(p)}))},function(b){a.myChartData=d.noDataChart(),a.infoList=[],a.eventChartLoading=!1,a.chartListLoading=!1})},a.$watch("appid+defineFlag+dimenId+timeFlag+date.startDate+date.endDate+seeFlag+usergroupid",function(b){angular.isDefined(a.appid)&&(angular.isDefined(a.defineFlag)||a.isShowCache)&&a.query()}),a.dimenInit=a.dimenId="-all",a.$watch("appid",function(b){angular.isDefined(b)&&(a.dimenId="-all",a.lengedNames=[],a.defineFlag=void 0,a.queryInfoByApp(5),a.querySelectInfos())})}angular.module("app.collect").controller("intelligentpathCtrl",["$scope","$rootScope","HttpService","ToolService","UtilService","$filter","$timeout","$stateParams",a])}(),function(){function a(){}angular.module("app.collect").controller("expirationCtrl",[a])}(),function(){angular.module("app.manage",[])}(),function(){var a=(new Date).getTime();angular.module("app.manage").config(["$stateProvider","$urlRouterProvider",function(b,c){var d="manage",e=["app","auth","event","activityevent","profile","userinfo","usergroup","nopower"],f=["systemparam","event","profile","downloadurl"];b.state(d,{url:"",templateUrl:"/template/menu/collect.html?r="+a,controller:"collectCtrl"}),e.forEach(function(c){if(b.state("collect."+c,{url:"/"+d+"/"+c,params:{aid:null},views:{"content@":{templateUrl:"/template/"+d+"/"+c+".html?r="+a,controller:c+"Ctrl"}}}),-1==f.indexOf(c)){var e=c+"Detail";b.state("collect."+e,{url:"/"+d+"/"+e,params:{aid:null},views:{"content@":{templateUrl:"/template/"+d+"/"+e+".html?r="+a,controller:e+"Ctrl" +}}})}})}])}(),function(){function a(a,b,d,e,f,g,h){b.isDemo=e.isDemoUser(),b.$on("flipinfo",function(a,c){b.flipPage=c}),b.specialsAppkey=["e31caee07ebedf8c172267e73204802f","f4c6764d10bec9a3c4bd4f79a442a947","022da4f8bd53ac212141bd7fdfa9532d","5eb29a7e239537f4bedef93f8289d1c6","e0b3000ebd3f54b791a405f68d3e520c"],b.doRemove=function(a){b.delstatus=!0,b.delId=a},b.removeInfo=function(){var c=d.deleteInfo("mng/app/delete/"+b.delId);e.showLoading(),c.then(function(c){e.hideLoading(),b.delstatus=!1,e.showTips("删除成功"),b.$emit("f5Applist",!0),a.operSubmitData("删除")})},h(function(){var a=new Clipboard(".copyBtn");a.on("success",function(a){b.$apply(function(){e.showTips("复制成功")})}),a.on("error",function(a){b.$apply(function(){e.showTips("复制失败")})})},200),b.onOff=function(c,f){var g="mng/app/enable/"+c,h="启用成功";f&&1==f&&(g="mng/app/forbidden/"+c,h="停用成功");var i=d.putInfo(g,{});e.showLoading(),i.then(function(c){e.hideLoading(),e.showTips(h),b.$emit("f5Applist",!0),a.operSubmitData(h.slice(0,2))})},b.gopage=function(a,b){c=!!b,angular.isDefined(a)?g.go("collect.appDetail",{aid:a}):g.go("collect.appDetail")},b.goReport=function(c){a.isweb="H5"==c.platform,b.$emit("mngappTo",c.id);var d=a.firstMeau.substring(1).replace("/",".");g.go(d)}}function b(a,b,d,e,f,g,h,i,j,k){var l=a.infoId=a.id=i.aid;a.isLog=c;var m="",n="",o=38;if(!a.isLog){var p=d.getInfo("mng/app/find/getcategorys");p.then(function(b){var c=[],d=[];b.filter(function(a){a.name=a.categoryname,1==a.isgame?d.push(a):c.push(a)}),a.typeList=c,a.gameList=d,a.appGenreInit=a.typeList[0].categoryid,a.gameGenreInit=a.gameList[0].categoryid})}a.downloadsdk=function(){b.operSubmitData("查看并下载SDK")},a.$on("appGenre",function(b,c){a.showGame=c.info.categoryid==o,a.appGenre=c.info.categoryid,a.appGenreName=c.info.categoryname}),a.$on("gameGenre",function(b,c){a.gameGenre=c.info.categoryid,a.gameGenreName=c.info.categoryname}),a.ckSync=function(){a.sync=!a.sync,1==a.sync&&e.showTips("所有推广活动的下载地址将同步更新。",2e3)},function(){if(null!=l){a.isLog?a.stepflag=3:a.stepflag=1;var b=d.getInfo("mng/app/find/"+l);e.showLoading(),b.then(function(b){a.platform=b.platform,a.name=n=b.name,a.url=b.url,a.appkey=b.appkey,a.sync=!1,a.bundleid=m=b.bundleid,3==a.stepflag&&(e.hideLoading(),a.queryLogInfo())}),1==a.stepflag&&g.all([p,b]).then(function(b){e.hideLoading();var c=b[1];a.appGenreInit=c.appGenre,a.gameGenreInit=c.gameGenre})}else a.stepflag=1,a.platform="iOS",a.sync=!1}(),a.nameHas=!1,a.exixtName=function(){a.tip||(a.tip={}),a.judgeNameChange(n,a.name)?(e.showLoading(),d.getInfo("mng/app/validname",{name:a.name}).then(function(b){e.hideLoading(),1==b?(a.tip.name={status:!0,txt:"名称已存在"},a.nameHas=!0):(a.tip.name={status:!1},a.nameHas=!1)})):(a.tip.name={status:!1},a.nameHas=!1)},a.bundleHas=!1,a.existBundleid=function(b){a.tip||(a.tip={}),a.judgeNameChange(m,a.bundleid)?(e.showLoading(),d.getInfo("mng/app/valid",{name:a.bundleid}).then(function(b){e.hideLoading(),1==b?(a.tip.bundleid={status:!0,txt:"bundleid已存在"},a.bundleHas=!0):(a.tip.bundleid={status:!1},a.bundleHas=!1)})):(a.tip.bundleid={status:!1},a.bundleHas=!1)},a.save=function(){if(a.nameHas||a.bundleHas)return!1;var c={platform:a.platform,name:a.name,appGenre:a.appGenre,sync:a.sync,url:a.url};a.appGenre==o?c.gameGenre=a.gameGenre:c.gameGenre=-1;var f={name:{key:"nameFormat",val:a.name},url:{key:"url",val:a.url,txt:"以http://或https://开头的合法url"}};if("iOS"==a.platform&&(c.bundleid=a.bundleid,f.bundleid={key:"num",min:9,max:10,val:a.bundleid,txt:"请输入9-10位数字"}),a.tip=formJudge(f),1!=a.tip.succ)return e.showTips(a.formTipMsg),!1;var g=null,h="添加成功";null!=l?(c.id=l,g=d.putInfo("mng/app/update",c),h="修改成功"):g=d.postInfo("mng/app/create",c),e.showLoading(),g.then(function(c){null!=l?(e.hideLoading(),e.showTips(h),a.cancel()):(a.$emit("f5Applist",1),a.id=c.id,a.name=c.name,a.appkey=c.appkey,e.hideLoading(),a.stepflag=2,b.operSubmitData("新建"))})},a.cancel=function(){a.$emit("f5Applist",!0),h.go("collect.app")},a.changeStep=function(){3==a.stepflag&&(a.stepflag=2)},a.deviceList=[{id:1,name:"全部设备"}],a.deviceInit=a.deviceList[0].id,a.$on("deviceId",function(b,c){1==c.info.id?a.deviceTxt="":a.deviceTxt=c.info.id});var q=function(a){return f.isNullStr(a)?"":a};a.queryLogInfo=function(){a.logFlag=0,e.showLoading();var c=d.getInfo("mng/app/debug/event/list/"+a.id),f=d.getInfo("mng/app/debug/log/list/"+a.id),h=d.getInfo("mng/app/debug/device/list/"+a.id);a.hasZeroEvt=0,g.all([c,f,h]).then(function(c){a.testInfos=c[0],a.testInfos.filter(function(b){"H5"==a.platform?["pageview"].indexOf(b.eventName)>-1&&0==b.eventNumber&&a.hasZeroEvt++:["startup","install"].indexOf(b.eventName)>-1&&0==b.eventNumber&&a.hasZeroEvt++});var d=c[1];d.map(function(a){a.xcontext=JSON.parse(a.xcontext),a.xcontext.osname=q(a.xcontext._ryos||a.xcontext._os)+""+q(a.xcontext._ryosversion),a.xcontext.channel=a.xcontext._campaignid||a.xcontext.channelid,a.deviceId=a.xcontext._deviceid,a._network_type=a.xcontext._network_type||a.xcontext._network,a._model=a.xcontext._model||a.xcontext._devicetype}),a.logInfos=d,a.totalInfos=c[2];var f=[{id:1,name:"全部设备"}];a.totalInfos.filter(function(a){f.push({id:a.deviceId,name:a.deviceId})}),a.deviceList=f,b.operSubmitData("下一步"),e.hideLoading()})},a.getPlatClass=function(a){var a=j("lowercase")(a);return{ios:"apple",android:"android",h5:"web"}[a]},a.nextStep=function(){a.cancel()},a.lookEvents=function(b){a.eventDetails=[{name:"时间",key:"xwhen"},{name:"设备ID",key:"_deviceid",second:!0},{name:"APPKEY",key:"",value:a.appkey},{name:"应用名称",key:"",value:a.name},{name:"分包渠道",key:"channel",second:!0},{name:"系统",key:"osname",second:!0},{name:"机型",key:"_model"},{name:"分辨率",key:"_resolution",second:!0},{name:"网络",key:"_network_type"},{name:"SDK版本",key:"_lib_version",second:!0},{name:"事件ID",key:"xwhat",isevent:!0},{name:"事件名称",key:"eventName"}],a.curEvtLogInfo=b,a.logFlag=1,e.showAlp(),angular.element(document).on("click",function(){a.$apply(function(){a.hideDetails()})})},a.commonParams=null,a.lookParams=function(b){var c=function(){var b=a.curEvtLogInfo.xcontext,c=[];for(var d in b){var e={name:d,value:b[d],sortId:100};if(0==d.indexOf("_")){var g=a.commonParams[d];g&&(e.name=g.alias,e.sortId=g.sortId),c.push(e)}else c.push(e)}f.sortArray(c),a.paramsList=c,a.logFlag=2};if(null!=a.commonParams)c();else{e.showLoading();d.getInfo("mng/app/debug/find/common").then(function(b){e.hideLoading();var d={};b.filter(function(a){d[a.param]=a}),a.commonParams=d,c()})}},a.hideDetails=function(){e.hideAlp(),a.logFlag=0},a.finisStep=function(){e.showLoading(),d.putInfo("mng/app/debug/complete/"+a.id).then(function(c){a.cancel(),b.operSubmitData("调试完成")})},k(function(){var b=new Clipboard(".sdkAppid");b.on("success",function(b){a.$apply(function(){e.showTips("复制成功")})}),b.on("error",function(b){a.$apply(function(){e.showTips("复制失败")})})},200)}angular.module("app.manage").controller("appCtrl",["$rootScope","$scope","HttpService","ToolService","UtilService","$state","$timeout",a]).controller("appDetailCtrl",["$scope","$rootScope","HttpService","ToolService","UtilService","$q","$state","$stateParams","$filter","$timeout",b]);var c=!1}(),function(){function a(a,b,c,d,e,f){b.demoUSuper="demoadmin@reyun.com"==e.getCookie("ryioUname"),b.deviceList=[{id:1,name:"已启用"},{id:2,name:"已停用"}],b.deviceInit=b.deviceList[0].id,b.$on("deviceId",function(a,c){b.seeFlag=c.info.id,1==b.seeFlag?b.findName="enable":b.findName="disable",b.query()}),a.accountFlag||(a.accountFlag="account"),b.query=function(e){if(e&&(a.accountFlag=e,a.thirdtab="子账号管理"),angular.isUndefined(b.findName))return!1;b.authList=[];var f=c.getInfo("mng/auth"+b.getSuburl()+"/list/"+b.findName);d.showLoading(),f.then(function(a){d.hideLoading(),b.authList=a})},b.query(),b.$on("flipinfo",function(a,c){b.flipPage=c}),b.onUser=function(e){d.showLoading(),c.putInfo("mng/auth"+b.getSuburl()+"/"+e+"/enable").then(function(c){d.hideLoading(),d.showTips("启用成功"),a.operSubmitData("启用"),b.query()})},b.offUser=function(e){var f=c.putInfo("mng/auth"+b.getSuburl()+"/"+e+"/disable");d.showLoading(),f.then(function(c){d.hideLoading(),d.showTips("停用成功"),a.operSubmitData("停用"),b.query()})},b.deleteAuth=function(a){b.delInfo=a,b.wantDelete=!0,d.showAlp()},b.doDelete=function(){b.closeWin(),d.showLoading(),c.deleteInfo("mng/auth/"+b.delInfo.id+"/delete").then(function(){d.showTips("删除成功"),d.hideLoading(),b.query()})},b.sendEmailAgain=function(a){var b=c.postInfo("mng/auth/mail/"+a.id+"/resend");d.showLoading(),b.then(function(b){d.hideLoading(),a.send=1,d.showTips("发送成功")})},b.closeWin=function(a){b.wantDelete=!1,d.hideAlp()},b.gopage=function(a){if(angular.isDefined(a)){if(!a.valid)return!1;f.go("collect.authDetail",{aid:a.id})}else f.go("collect.authDetail")},b.getSuburl=function(){var b="";return"channel"==a.accountFlag&&(b="/channel"),b},b.isdetail=!1,b.showDetails=function(a){b.detailInfo=a,d.showAlp(),b.isdetail=!0,angular.element(document).on("click",function(){b.$apply(function(){b.hideDetails()})})},b.hideDetails=function(){d.hideAlp(),b.isdetail=!1}}function b(a,b,d,e,f,g,h,i){var j=b.id=i.aid;b.$watch("applistInfo",function(a){if(angular.isDefined(a))if(b.authapplist=c(a),b.isAppManage&&!f.isNullStr(j)){var e=d.getInfo("app/find/"+j+"/AuthApp");e.then(function(a){b.init(a)})}else b.init()}),b.init=function(a){if(!f.isNullStr(j)){e.showLoading();d.getInfo("mng/auth/"+j+"/find").then(function(d){if(e.hideLoading(),b.accountInfo=d,b.email=b.oldEmail=d.email,b.name=d.name,b.remark=d.remark,b.parentRole=d.parentRole,f.isNullStr(d.name)?b.nameNofix=!1:b.nameNofix=!0,b.roleCategory=d.roleCategory,2==b.roleCategory?b.authapplist=c(b.appAlllistInfo):b.authapplist=c(b.applistInfo),b.isAppManage){var g=[];b.authapplist.filter(function(a){g.push(a.id)}),a.filter(function(a){-1==g.indexOf(a.id)&&(a.nopower=!0,b.authapplist.push(a))})}d.authList.filter(function(a){for(var c=0;c<b.authapplist.length;c++)if(b.authapplist[c].id==a.app){b.authapplist[c].ischeck=!0;break}}),b.steps=1,1==b.roleCategory?(b.steps=0,b.maxstep=0):2==b.roleCategory&&(b.maxstep=1)})}},b.steps=0,b.maxstep=0,b.changeRole=function(a){switch(a){case 1:b.steps=0,b.maxstep=0;break;case 2:b.steps=1,b.maxstep=1}b.authapplist=c(2==a?b.appAlllistInfo:b.applistInfo),b.roleCategory=a},b.getTips=function(a){return a.nopower?"该应用权限由管理员添加,您无此应用权限":""},b.doCheck=function(a){var c=b.isAllCheck=!b.isAllCheck;"app"==a&&b.authapplist.filter(function(a){a.nopower||(a.ischeck=c)})},b.isAllCheck=!1,b.selectApp=function(a){a.ischeck=!0;for(var c=!0,d=0;d<b.authapplist.length;d++){var e=b.authapplist[d];if(!e.nopower&&!e.ischeck){c=!1;break}}b.isAllCheck=c},b.removeApp=function(a){if(a.nopower)return!1;a.ischeck=!1,b.isAllCheck=!1},b.nameNofix=!1,b.save=function(){var c={email:b.email,name:b.name,roleCategory:b.roleCategory,remark:b.remark},g={email:{key:"email",val:c.email,nullTxt:"请填写邮箱"},name:{key:"numLetter",val:c.name,nullTxt:"请填写姓名",max:20,txt:"请输入20位以内的中英文或数字"}};if(f.isNullStr(c.remark)||(g.remark={key:"nameLen",val:c.remark,max:200,txt:"最多可输入100字"}),b.tip=formJudge(g),1!=b.tip.succ)return e.showTips(b.formTipMsg),!1;if(!b.roleCategory)return e.showTips("请选择角色"),!1;if(2==b.roleCategory){var h=[];if(b.authapplist.filter(function(a){a.ischeck&&h.push({app:a.id})}),0==h.length)return e.showTips("请选择应用"),!1;c.authList=h}var i=null,k="已为该账号发送激活邮件,请在72小时内联系相关人员激活并设置密码";null!=j?(c.id=j,i=d.putInfo("mng/auth"+b.getSuburl()+"/"+j+"/update",c),k="修改成功"):i=d.postInfo("mng/auth"+b.getSuburl()+"/create",c),e.showLoading(),i.then(function(c){-6001==c.code?(e.hideLoading(),e.showTips("该邮箱已创建")):-300==c.code?(e.hideLoading(),e.showTips("最多可添加3个管理员")):(e.hideLoading(),e.showTips(k),b.cancel(),j||a.operSubmitData("新建"))},function(a){-6001==a.code?(e.hideLoading(),e.showTips("该邮箱已创建")):-300==a.code&&(e.hideLoading(),e.showTips("最多可添加3个管理员"))})},b.getSuburl=function(){var a="";return"channel"==b.accountFlag&&(a="/channel"),a},b.cancel=function(){h.go("collect.auth")}}angular.module("app.manage").controller("authCtrl",["$rootScope","$scope","HttpService","ToolService","UtilService","$state",a]).controller("authDetailCtrl",["$rootScope","$scope","HttpService","ToolService","UtilService","$q","$state","$stateParams",b]);var c=function(a){return $.extend(!0,[],a)}}(),function(){function a(a,b,c){a.isevent=!0,a.query=function(){a.isevent=!0;var d=b.getInfo("mng/event/find/"+a.appid);c.showLoading(),d.then(function(b){c.hideLoading(),a.eventList=b;var d=b.slice(0);d.unshift({eventName:"-all",eventNameAlias:"全部属性"}),a.eventSelList=d,a.eventEditId=-1})},a.$watch("appid",function(b){angular.isDefined(b)&&a.query()}),a.$on("flipinfo",function(b,c){"paramTab"==c.listkey?a.pflipPage=c:a.flipPage=c});var d=null,e=1;a.clickEvent=function(b){a.eventpidInit==b.eventName?(a.isevent=!1,a.eventpidF5=++e):a.eventpidInit=b.eventName},a.$on("eventpid",function(b,c){d=c.info,a.getParamsList()}),a.getParamsList=function(){var e={};null!=d&&d.eventName&&"-all"!=d.eventName&&(e={name:d.eventName});var f=b.getInfo("mng/event/find/one/"+a.appid,e);c.showLoading(),f.then(function(b){a.isevent=!1,c.hideLoading(),a.paramsList=b,a.eventParamsId=-1})},a.doEdit=function(b,c){1==c&&(a.eventEditId=b.eventName,b.editname=b.eventNameAlias),2==c&&(a.eventParamsId=b.attr,b.editname=b.attrAlias)},a.onOff=function(d,e){var f="mng/event/enable/"+a.appid,g="启用成功";e&&1==e&&(f="mng/event/forbidden/"+a.appid,g="停用成功");var h=b.putInfo(f,{eventId:d});c.showLoading(),h.then(function(b){c.hideLoading(),c.showTips(g),a.query()})},a.updateEvent=function(d){var e={eventId:d.eventName,alias:d.editname};if(""==d.editname)return c.showTips("事件名称不能为空"),!1;if(a.eventList.filter(function(a){return a.eventNameAlias==d.editname&&a.eventName!=d.eventName}).length>0)return c.showTips("事件名称不能重复"),!1;if(1!=formJudge({name:{key:"spcname2",val:e.alias}}).succ)return c.showTips("仅支持包含下划线的40位以内字符"),!1;var f=b.putInfo("mng/event/update/"+a.appid,e);c.showLoading(),f.then(function(b){c.hideLoading(),c.showTips("修改成功"),a.query()})},a.pramesOnOff=function(d,e){var f="mng/event/enable/attr/"+a.appid,g="启用成功";e&&1==e&&(f="mng/event/forbidden/attr/"+a.appid,g="停用成功");var h=b.putInfo(f,{attribute:d});c.showLoading(),h.then(function(b){c.hideLoading(),c.showTips(g),a.getParamsList()})},a.updateParams=function(d){var e={attribute:d.attr,alias:d.editname};if(""==d.editname)return c.showTips("属性名称不能为空"),!1;if(a.paramsList.filter(function(a){return a.attrAlias==d.editname&&a.attr!=d.attr}).length>0)return c.showTips("事件属性名称不能重复"),!1;if(1!=formJudge({name:{key:"spcname2",val:e.alias}}).succ)return c.showTips("仅支持包含下划线的40位以内字符"),!1;var f=b.putInfo("mng/event/update/"+a.appid+"/one",e);c.showLoading(),f.then(function(b){c.hideLoading(),c.showTips("修改成功"),a.getParamsList()})},a.changeStatus=function(d,e){var f="";switch(d){case 1:f="addStats";break;case 2:f="delStats";break;case 3:f="addCondition";break;case 4:f="delCondition"}if(""!=f){b.putInfo("mng/event/"+f+"/"+a.appid,{attribute:e}).then(function(b){localStorage.getItem("joinFiltrate")||3!=d?c.showTips("操作成功"):(c.showTips("操作成功,可以按属性名称在事件、漏斗或留存功能中查看或筛选",4e3),localStorage.setItem("joinFiltrate","joinFiltrate")),a.getParamsList()})}}}angular.module("app.manage").controller("eventCtrl",["$scope","HttpService","ToolService",a])}(),function(){function a(a,b,c,d,e,f,g,h){b.query=function(){var a=c.getInfo("mng/virtual/find/"+b.appid);d.showLoading(),a.then(function(a){d.hideLoading(),b.eventList=a})},b.$watch("appid",function(a){angular.isDefined(a)&&b.query()}),b.$on("flipinfo",function(a,c){b.flipPage=c}),b.onUser=function(a){d.showLoading(),c.putInfo("mng/virtual/find/"+a+"/enable").then(function(a){d.hideLoading(),d.showTips("启用成功"),b.query()})},b.offUser=function(a){var e=c.putInfo("mng/virtual/find/"+a+"/disable");d.showLoading(),e.then(function(a){d.hideLoading(),d.showTips("停用成功"),b.query()})},b.gopage=function(a){angular.isDefined(a)?f.go("collect.activityeventDetail",{aid:a}):f.go("collect.activityeventDetail")}}function b(a,b,c,d,e,f,g,h,i){var j=h.aid;a.title=j?"编辑虚拟事件":"新建虚拟事件",a.inputdis=!1,null==j?(j={eventList:[],type:"userdefine"},a.specialEvents=[],a.name=""):(a.name=j.ch_name,"userdefine"==j.type?a.specialEvents=[]:(a.inputdis=!0,a.isweb?a.specialEvents=["pageview"]:a.specialEvents=["loggedin","reged","payment"]));var k=j.id,l=j.eventList;a.$watch("appid",function(b){angular.isDefined(b)&&a.query()}),a.query=function(){var b="";b=null!=j&&"userdefine"!=j.type?"mng/virtual/unselect/"+a.appid:"mng/event/find/"+a.appid;var e=c.getInfo(b);d.showLoading(),e.then(function(b){d.hideLoading(),a.eventList=b.filter(function(b){return 1==b.status&&(l.indexOf(b.eventName)>-1||a.specialEvents.indexOf(b.eventName)>-1?b.ischeck=!0:b.ischeck=!1),1==b.status})})};var m=0,n=5;a.chooseItem=function(b){m=0;for(var c=0;c<a.eventList.length;c++)1==a.eventList[c].ischeck&&(m+=1);m<n?b.ischeck=!0:d.showTips("最多可以选择"+n+"个")},a.cancelItem=function(b){a.specialEvents.indexOf(b.eventName)>-1?b.ischeck=!0:b.ischeck=!1},a.selectAllEvent=function(){a.eventList.length>n?d.showTips("最多可以选择"+n+"个"):(a.selAll=!a.selAll,a.eventList.filter(function(b){a.specialEvents.indexOf(b.eventName)>-1?b.ischeck=!0:b.ischeck=a.selAll}))},a.save=function(){for(var b=[],e=0;e<a.eventList.length;e++)1==a.eventList[e].ischeck&&b.push(a.eventList[e].eventName);var f={ch_name:a.name,eventList:b.join(",")};a.tip={},error=!1;var g={name:{key:"spcname2",val:f.ch_name,txt:"含非法字符或过长(支持输入汉字、大小写字母、数字、下划线,长度限制40字符以内)"}};if(a.tip=formJudge(g),1!=a.tip.succ&&(error=!0),b.length<2)return a.tip.moreparams={status:!0,txt:"请至少选择2个事件"},!1;if(error)return!1;var h=null,i="保存成功";k?(f.id=k,f.type=j.type,h=c.putInfo("mng/virtual/update/"+a.appid,f)):(i="新建成功",h=c.postInfo("mng/virtual/userdefined/"+a.appid,f)),d.showLoading(),h.then(function(b){d.hideLoading(),-6001==b.code?(a.tip.name={status:!0,txt:"名称重复"},d.showTips("名称重复")):(a.cancel(),d.showTips(i))},function(b){d.hideLoading(),-6001==b.code&&(a.tip.name={status:!0,txt:"名称重复"},d.showTips("名称重复"))})},a.cancel=function(){g.go("collect.activityevent")}}angular.module("app.manage").controller("activityeventCtrl",["$rootScope","$scope","HttpService","ToolService","UtilService","$state","$timeout","$stateParams",a]).controller("activityeventDetailCtrl",["$scope","$rootScope","HttpService","ToolService","UtilService","$q","$state","$stateParams","$timeout",b])}(),function(){function a(a,b,c){a.query=function(){var d=b.getInfo("mng/profile/"+a.appid+"/find");c.showLoading(),d.then(function(b){c.hideLoading(),a.infoEditId=-1,a.profileList=b})},a.$watch("appid",function(b){angular.isDefined(b)&&a.query()}),a.doEdit=function(b,c){a.infoEditId=c,b.id=c,b.editname=b.attrAlias},a.$on("flipinfo",function(b,c){a.flipPage=c}),a.updateProfile=function(d){var e={appkey:a.appkey,attr:d.attr,attrAlias:d.editname};if(a.profileList.filter(function(a){return a.attrAlias==d.editname&&a.id!=d.id}).length>0)return c.showTips("用户属性名称不能重复"),!1;if(1!=formJudge({name:{key:"spcname2",val:e.attrAlias}}).succ)return c.showTips("仅支持包含下划线的40位以内字符"),!1;var f=b.putInfo("mng/profile/update",e);c.showLoading(),f.then(function(b){c.hideLoading(),c.showTips("修改成功"),a.query()})},a.onOff=function(d,e){var f="mng/profile/enable/"+a.appkey+"/"+d.attr,g="启用成功";e&&1==e&&(f="mng/profile/forbidden/"+a.appkey+"/"+d.attr,g="停用成功");var h=b.putInfo(f);c.showLoading(),h.then(function(b){c.hideLoading(),c.showTips(g),a.query()})},a.changeStatus=function(d,e){var f="";switch(d){case 1:f="addCondition";break;case 2:f="delCondition"}if(""!=f){b.putInfo("mng/profile/"+f+"/"+a.appid+"/"+e).then(function(b){localStorage.getItem("joinFiltrate")||1!=d?c.showTips("操作成功"):(c.showTips("操作成功,可以按属性名称在事件、漏斗或留存功能中查看或筛选",4e3),localStorage.setItem("joinFiltrate","joinFiltrate")),a.query()})}}}angular.module("app.manage").controller("profileCtrl",["$scope","HttpService","ToolService",a])}(),function(){function a(a,b,c,d,e,f){b.isDemo=d.isDemoUser(),b.queryInfo=function(){c.getInfo("account/detail",{}).then(function(a){b.myid=a.id,b.email=a.email,b.name=a.name,b.company=a.company,b.phone=a.phone,b.qq=a.qq,b.createTime=a.createTime,b.wechat=a.wechat,b.logList=null!=a.userLogList?a.userLogList:[]})},b.queryInfo(),b.save=function(){var a={name:b.name,company:b.company,phone:b.phone,wechat:b.wechat,qq:b.qq},e={name:{key:"username",max:32,val:a.name},company:{key:"companyname",max:96,val:a.company},phone:{key:"cellphone",val:a.phone},wechat:{key:"wechat",val:a.wechat},qq:{key:"qq",val:a.qq}};if(b.tip=formJudge(e),1!=b.tip.succ)return d.showTips(b.formTipMsg),!1;var f=c.putInfo("account/updateBase",a);d.showLoading(),f.then(function(a){d.hideLoading(),1==a?(d.showTips("修改成功"),b.toedit=!1):d.showTips("修改失败")})},b.savepwd=function(){var a={pwd:b.pwd,newpwd:b.newpwd},e={pwd:{key:"isNull",val:a.pwd},newpwd:{key:"pwd",val:a.newpwd},crmpwd:{key:"pwd",val:b.crmpwd}};if(b.tip=formJudge(e),void 0!=b.pwd&&b.pwd==b.newpwd&&(1==b.tip.succ&&(b.tip.succ=!1),b.tip.newpwd={status:!0,txt:"新旧密码一致,请重新修改密码"}),void 0!=b.newpwd&&void 0!=b.crmpwd&&b.newpwd!=b.crmpwd&&(1==b.tip.succ&&(b.tip.succ=!1),b.tip.crmpwd={status:!0,txt:"两次密码不一致,请重新输入"}),1!=b.tip.succ)return d.showTips(b.formTipMsg),!1;var f=c.putInfo("account/updatePwd?oldPassword="+a.pwd+"&newPassword="+a.newpwd,{});d.showLoading(),f.then(function(a){d.hideLoading(),1==a?(d.showTips("修改成功"),window.location.href="/login.html"):d.showTips("修改失败")},function(a){d.hideLoading(),-1001==a.code?b.tip={pwd:{status:!0,txt:"原密码输入错误,请重新输入"}}:d.showTips("修改失败")})}}angular.module("app.manage").controller("userinfoCtrl",["$rootScope","$scope","HttpService","ToolService","UtilService","$state",a])}(),function(){function a(a,b,c,d,e,f){a.query=function(){var b=c.getInfo("mng/usergroup/find/"+a.appid);d.showLoading(),b.then(function(b){d.hideLoading(),a.usergroupList=b})},a.$watch("appid",function(b){angular.isDefined(b)&&a.query()}),a.$on("flipinfo",function(b,c){a.flipPage=c}),a.doRemove=function(b){a.delstatus=!0,a.delId=b},a.removeInfo=function(){var e=c.deleteInfo("mng/usergroup/delete/"+a.delId);d.showLoading(),e.then(function(c){d.hideLoading(),a.delstatus=!1,d.showTips("删除成功"),a.query(),b.operSubmitData("删除")})},a.gopage=function(a){angular.isDefined(a)?f.go("collect.usergroupDetail",{aid:a}):f.go("collect.usergroupDetail")},a.refreshExport=function(b){var e=b.dataUpdateTime;if(angular.isDefined(e)&&Date.isSameDay(new Date,new Date(e)))return d.showTips("已经是最新数据"),!1;var f=c.putInfo("mng/usergroup/refresh/"+b.id);d.showLoading(),f.then(function(b){d.hideLoading(),a.query()})}}function b(a,b,c,d,e,f,g,h){var i=h.aid,j=null;null!=i&&(j=a.id=i.id),a.mydate=d.getLastDays(-7,0),a.userType=0,a.$on("dateCustos",function(b,c){a.mydate=c}),a.$watch("mydate",function(b){angular.isDefined(b)&&(a.datestr=a.mydate.startDate+"至"+a.mydate.endDate)});var k=null,l=null;a.queryEventProfile=function(){k=c.getInfo(a.appid+"/profile/find"),k.then(function(b){a.profileList=b}),l=c.getInfo(a.appid+"/event/find"),l.then(function(b){a.eventList=b}),null!=j&&(d.showLoading(),f.all([k,l]).then(function(b){var f=i,g=f.profileInfo,h=f.eventInfo;if(!e.isNullStr(g)){var j=JSON.parse(g);a.profileRel=j.relation,profiles=j.profiles,j.profiles.filter(function(b){a.addProfile(b)})}if(!e.isNullStr(h)){var k=JSON.parse(h),l=[],m=[];a.eventRel=k.relation,k.events.filter(function(a){var b={event:a.event,param:[]};e.cloneJSON(a.params).filter(function(a){b.param.push(a.attr)}),l.push(a.event),m.push(b)});c.getInfo(a.appid+"/event/find/param?names="+l.join(",")+"¶ms="+JSON.stringify(m)).then(function(b){b.filter(function(b){for(var c=0;c<a.eventList.length;c++)if(b.eventName==a.eventList[c].eventName){a.eventList[c].profiles=b.profiles;break}}),k.events.filter(function(b){b.oldparams=e.cloneJSON(b.params),delete b.params,a.addEvent(b)})})}d.hideLoading()}))},a.$watch("appid",function(b){angular.isDefined(b)&&(null!=k?a.cancel():a.queryEventProfile())}),a.changeRel=function(b,c){switch(b){case 1:a.profileRel="and"==a.profileRel?"or":"and";break;case 2:a.eventRel="and"==a.eventRel?"or":"and";break;case 3:c.relation="and"==c.relation?"or":"and"}};var m=(new Date).getTime();a.getProfileNum=function(){return a.profileInfo?a.profileInfo.filter(function(a){return 0!=a.show}).length:0},a.addProfile=function(b){if(a.getProfileNum()>=5)return!1;m++;var c={id:"pro_"+m};if(b)for(var d in b)c[d]=b[d];a.profileInfo.push(c)},a.removeProfile=function(b){for(var c=0;c<a.profileInfo.length;c++)if(a.profileInfo[c].id==b.id){a.profileInfo[c].show=!1;break}},a.$on("profile",function(b,c){for(var d=0;d<a.profileInfo.length;d++)if(a.profileInfo[d].id==c.id){a.profileInfo[d]=c;break}}),a.eventinitname="请选择事件",a.getEventNum=function(){return a.eventInfo.filter(function(a){return 0!=a.show}).length},a.setEventStyle=function(){var b=-1,c=a.eventInfo.length;a.eventInfo.filter(function(a,d){0!=a.show&&(b++,a.style={"z-index":c-d})})},a.addEvent=function(b){if(a.getEventNum()>=5)return!1;m++;var d={id:"evt_"+m,eventid:"event_"+m,relation:"and"};if(b){for(var e in b)d[e]=b[e];d.eventinit=b.event}!function(b){a.$on(b.eventid,function(d,e){b.params=[],b.event=e.info.eventName,b.nullevent=!1;var f=function(){b.paramsList=e.info.profiles,b.oldparams&&(b.oldparams.filter(function(c){a.addEventParams(b,c)}),delete b.oldparams)};if(angular.isArray(e.info.profiles))f(e.info.profiles);else{c.getInfo(a.appid+"/event/find/param?names="+b.event).then(function(a){e.info.profiles=a[0].profiles,f()})}})}(d),a.eventInfo.push(d),a.setEventStyle()},a.removeEvent=function(b){for(var c=0;c<a.eventInfo.length;c++)if(a.eventInfo[c].id==b.id){a.eventInfo[c].show=!1;break}a.setEventStyle()},a.getEventParamsNum=function(a){return a.params?a.params.filter(function(a){return 0!=a.show}).length:5},a.addEventParams=function(b,c){if(!b.params||a.getEventParamsNum(b)>=3)return!1;m++;var d={id:"pam_"+m,pid:b.id};if(c)for(var e in c)d[e]=c[e];b.params.push(d)},a.removeEventParams=function(a,b){for(var c=0;c<a.params.length;c++)if(a.params[c].id==b.id){a.params[c].show=!1;break}},a.$on("event",function(b,c){for(var d=0;d<a.eventInfo.length;d++)if(a.eventInfo[d].id==c.pid)for(var e=a.eventInfo[d].params,f=0;f<e.length;f++)if(e[f].id==c.id){e[f]=c;break}});var n="";a.init=function(){a.profileInfo=[],a.eventInfo=[],a.profileRel="and",a.eventRel="and",null!=j&&(a.name=n=i.name,a.mark=i.mark,a.userType=i.userType,a.mydate={startDate:i.startDate,endDate:i.endDate})},a.init(),a.exixtName=function(b){if(angular.isDefined(b)&&1==b&&d.showLoading(),a.judgeNameChange(n,a.name)){c.getInfo("mng/usergroup/valid/"+a.appid,{name:a.name}).then(function(c){a.tip={},1==c?(a.tip={name:{status:!0,txt:"名称已存在"}},d.hideLoading()):angular.isDefined(b)&&1==b&&a.save()})}else angular.isDefined(b)&&1==b&&a.save()},a.save=function(){var f={name:a.name,mark:a.mark,userType:a.userType,startDate:a.mydate.startDate,endDate:a.mydate.endDate,app:a.appid},g="",h={relation:a.profileRel,profiles:[]},i=!1;a.profileInfo.filter(function(b){if(0!=b.show){e.isNullStr(b.attr)&&(a.$broadcast(b.id,"error"),i=!0);var c={};for(var d in b)"id"!=d&&(c[d]="value"!=d?b[d]:b[d].join(","),e.isNullStr(c[d])&&"pid"!=d&&(a.$broadcast(b.id,"error"),i=!0));h.profiles.push(c)}}),h.profiles.length>0&&(f.profileInfo=JSON.stringify(h),g="profile");var k={relation:a.eventRel,events:[]};a.eventInfo.filter(function(b){if(0!=b.show){var c={event:b.event,relation:b.relation,params:[]};e.isNullStr(b.event)?(b.nullevent=!0,i=!0):(b.nullevent=!1,b.params.filter(function(b){if(0!=b.show){e.isNullStr(b.attr)&&(a.$broadcast(b.id,"error"),i=!0);var d={};for(var f in b)"id"!=f&&"pid"!=f&&(d[f]="value"!=f?b[f]:b[f].join(","),e.isNullStr(b[f])&&(a.$broadcast(b.id,"error"),i=!0));c.params.push(d)}})),k.events.push(c)}}),k.events.length>0&&(f.eventInfo=JSON.stringify(k),g="event");var l={name:{key:"spcname",val:f.name}};if(a.tip=formJudge(l),""==g&&(a.tip.params={status:!0,txt:"至少选择用户属性或者触发事件其中一项"},a.tip.succ=!1),1!=a.tip.succ||i)return d.hideLoading(),d.showTips(a.formTipMsg),!1;var m=null,n="添加成功";null!=j?(f.id=j,m=c.putInfo("mng/usergroup/update",f),n="修改成功"):m=c.postInfo("mng/usergroup/create",f),d.showLoading(),m.then(function(c){d.hideLoading(),d.showTips(n),a.cancel(),j||b.operSubmitData("新建")})},a.cancel=function(){g.go("collect.usergroup")}}angular.module("app.manage").controller("usergroupCtrl",["$scope","$rootScope","HttpService","ToolService","UtilService","$state",a]).controller("usergroupDetailCtrl",["$scope","$rootScope","HttpService","ToolService","UtilService","$q","$state","$stateParams",b])}(),function(){function a(a,b,c,d,e,f){}angular.module("app.manage").controller("nopowerCtrl",["$rootScope","$scope","HttpService","ToolService","$filter","UtilService",a])}(),function(){angular.module("app.active",[])}(),function(){var a=(new Date).getTime();angular.module("app.active").config(["$stateProvider","$urlRouterProvider",function(b,c){var d="active",e=["product"];b.state(d,{url:"",templateUrl:"/template/menu/collect.html?r="+a,controller:"collectCtrl"}),e.forEach(function(c){b.state("collect."+c,{url:"/"+d+"/"+c,views:{"content@":{templateUrl:"/template/"+d+"/"+c+".html?r="+a,controller:c+"Ctrl"}}})})}])}(),function(){function a(a,b,c,d,e,f,g){a.Prostatus=d.getCookie("ryioStatus"),a.UserId=d.getCookie("ryioUid"),a.UserEmail=$.cookie("ryioUname"),a.findStatus=function(){var e=b.getInfo("reged/findbyemail?email="+a.UserEmail);c.showLoading(),e.then(function(b){c.hideLoading(),1==b.status?0==b.appSize&&1==b.isChannelPerson?(c.showTips("没有控制权限"),a.time=2e3,$one_minute=g(function(){a.time-=1e3,0==a.time&&(window.location.href="login.html")},1e3)):(d.setCookie("ryioStatus",b.status,7),d.setCookie("ryioPastDate",b.pastDate,7),a.initpage(),window.location.href="index.html"):(d.setCookie("ryioStatus",b.status,7),d.setCookie("ryioPastDate",b.pastDate,7))})},a.findStatus(),a.postApply=function(){var e=b.getInfo("reged/verify/"+a.UserId);c.showLoading(),e.then(function(b){c.hideLoading(),-1==b.status&&(a.Prostatus=-1,d.setCookie("ryioStatus",b.status,7))})},a.useTrackingIO=function(){a.initpage(),f.isSuper||f.isManage?a.goPage("collect.app"):f.isAppManage&&a.goPage("collect.custommenu")}}angular.module("app.active").controller("productCtrl",["$scope","HttpService","ToolService","UtilService","$state","$rootScope","$interval",a])}(); \ No newline at end of file diff --git a/src/main/webapp/success.html b/src/main/webapp/success.html index 36cda4b..e9c95cf 100644 --- a/src/main/webapp/success.html +++ b/src/main/webapp/success.html @@ -7,10 +7,10 @@ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=0" name="viewport"> <link rel="shortcut icon" href="favicon.ico" type="image/x-icon"> - <link rel="stylesheet" href="styles/login.css?r=0.033736487152054906"> - <script src="scripts/change.js?r=0.2593456201720983"></script> - <script src="scripts/regcom8.js?r=0.6496113596949726"></script> - <script src="scripts/success.js?r=0.6613843908999115"></script> + <link rel="stylesheet" href="styles/login.css?r=0.055841729044914246"> + <script src="scripts/change.js?r=0.5346511888783425"></script> + <script src="scripts/regcom8.js?r=0.2486923444084823"></script> + <script src="scripts/success.js?r=0.444347481476143"></script> </head> <body ng-app="app" ng-controller="successCtrl"> diff --git a/src/main/webapp/template/common/export.html b/src/main/webapp/template/common/export.html index c21fa26..f789fe7 100644 --- a/src/main/webapp/template/common/export.html +++ b/src/main/webapp/template/common/export.html @@ -1,3 +1,3 @@ -<div class="eptWrap" ng-click="exportData()" ng-style="style1" ng-hide="iscanExport"> +<div class="eptWrap" ng-click="exportData()" ng-style="style1"> <span class="eptOut"></span> </div> diff --git a/src/main/webapp/template/menu/collect.html b/src/main/webapp/template/menu/collect.html index 0f8a89d..34182dc 100644 --- a/src/main/webapp/template/menu/collect.html +++ b/src/main/webapp/template/menu/collect.html @@ -39,10 +39,10 @@ </div> </ul> <ul class="sidebarNav" ng-if="mainMenu=='export'"> - <!-- <li ng-class="{'active':pagePath=='logtool'}" ng-click="goPage('collect.logtool')" ng-if="showMenu('logtool')"> + <li ng-class="{'active':pagePath=='logtool'}" ng-click="goPage('collect.logtool')" ng-if="showMenu('logtool')"> <i class="iconfont icon-logtool"></i> <a>日志流</a> - </li> --> + </li> <li ng-class="{'active':pagePath=='report'}" ng-click="goPage('collect.report')" ng-if="showMenu('report')"> <i class="iconfont icon-report"></i> <a>下载报表</a> @@ -135,7 +135,7 @@ </li> </ul> <ul class="sidebarNav" ng-if="mainMenu=='export'"> - <!-- <li ng-class="{'active':pagePath=='logtool'}" ng-click="goPage('collect.logtool')" ng-if="showMenu('logtool')" ng-mouseenter="hoverMenu='日志流'" ng-mouseleave="hoverMenu=''" > + <li ng-class="{'active':pagePath=='logtool'}" ng-click="goPage('collect.logtool')" ng-if="showMenu('logtool')" ng-mouseenter="hoverMenu='日志流'" ng-mouseleave="hoverMenu=''" > <i class="iconfont icon-logtool"></i> <div class="outDiv" ng-if="hoverMenu=='日志流'"> <span class="arrIcon"></span> @@ -143,7 +143,7 @@ <li ng-class="{'active':pagePath=='logtool'}"><a>日志流</a></li> </ul> </div> - </li> --> + </li> <li ng-class="{'active':pagePath=='report'}" ng-click="goPage('collect.report')" ng-if="showMenu('report')" ng-mouseenter="hoverMenu='下载报表'" ng-mouseleave="hoverMenu=''" > <i class="iconfont icon-report"></i> <div class="outDiv" ng-if="hoverMenu=='下载报表'">