project
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

1 lines
134 KiB

{"remainingRequest":"F:\\workspace\\gcy\\RK-html\\RK-project\\ruoyi-ui\\node_modules\\babel-loader\\lib\\index.js!F:\\workspace\\gcy\\RK-html\\RK-project\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!F:\\workspace\\gcy\\RK-html\\RK-project\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!F:\\workspace\\gcy\\RK-html\\RK-project\\ruoyi-ui\\src\\views\\index.vue?vue&type=script&lang=js&","dependencies":[{"path":"F:\\workspace\\gcy\\RK-html\\RK-project\\ruoyi-ui\\src\\views\\index.vue","mtime":1638958179919},{"path":"F:\\workspace\\gcy\\RK-html\\RK-project\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"F:\\workspace\\gcy\\RK-html\\RK-project\\ruoyi-ui\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"F:\\workspace\\gcy\\RK-html\\RK-project\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"F:\\workspace\\gcy\\RK-html\\RK-project\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:InVzZSBzdHJpY3QiOwoKdmFyIF9pbnRlcm9wUmVxdWlyZURlZmF1bHQgPSByZXF1aXJlKCJGOi93b3Jrc3BhY2UvZ2N5L1JLLWh0bWwvUkstcHJvamVjdC9ydW95aS11aS9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9pbnRlcm9wUmVxdWlyZURlZmF1bHQiKS5kZWZhdWx0OwoKT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsICJfX2VzTW9kdWxlIiwgewogIHZhbHVlOiB0cnVlCn0pOwpleHBvcnRzLmRlZmF1bHQgPSB2b2lkIDA7CgpyZXF1aXJlKCJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkubWFwLmpzIik7CgpyZXF1aXJlKCJjb3JlLWpzL21vZHVsZXMvZXMuZnVuY3Rpb24ubmFtZS5qcyIpOwoKcmVxdWlyZSgicmVnZW5lcmF0b3ItcnVudGltZS9ydW50aW1lLmpzIik7Cgp2YXIgX2FzeW5jVG9HZW5lcmF0b3IyID0gX2ludGVyb3BSZXF1aXJlRGVmYXVsdChyZXF1aXJlKCJGOi93b3Jrc3BhY2UvZ2N5L1JLLWh0bWwvUkstcHJvamVjdC9ydW95aS11aS9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9hc3luY1RvR2VuZXJhdG9yIikpOwoKdmFyIF9pbmZvID0gcmVxdWlyZSgiQC9hcGkvcHJvamVjdC9pbmZvMiIpOwoKdmFyIF9hdXRoID0gcmVxdWlyZSgiQC91dGlscy9hdXRoIik7Cgp2YXIgX0JMWWlUdW9DaGFydCA9IF9pbnRlcm9wUmVxdWlyZURlZmF1bHQocmVxdWlyZSgiLi9kYXNoYm9hcmQvQkxZaVR1b0NoYXJ0IikpOwoKdmFyIF9CYXJDaGFydCA9IF9pbnRlcm9wUmVxdWlyZURlZmF1bHQocmVxdWlyZSgiLi9kYXNoYm9hcmQvQmFyQ2hhcnQzIikpOwoKdmFyIF9CYXJMaW5lQ2hhcnQgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KHJlcXVpcmUoIi4vZGFzaGJvYXJkL0JhckxpbmVDaGFydCIpKTsKCnZhciBfaW5mbzIgPSByZXF1aXJlKCJAL2FwaS9wcm9qZWN0L2luZm8zIik7CgovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwp2YXIgX2RlZmF1bHQgPSB7CiAgbmFtZTogIkluZm8iLAogIGNvbXBvbmVudHM6IHsKICAgIEJMWWlUdW9DaGFydDogX0JMWWlUdW9DaGFydC5kZWZhdWx0LAogICAgQmFyQ2hhcnQzOiBfQmFyQ2hhcnQuZGVmYXVsdCwKICAgIEJhckxpbmVDaGFydDogX0JhckxpbmVDaGFydC5kZWZhdWx0CiAgfSwKICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkgewogICAgcmV0dXJuIHsKICAgICAgempmOiAwLAogICAgICAvLyDkuIrkvKDlj4LmlbAKICAgICAgdXBsb2FkUHJvamVjdDogewogICAgICAgIC8vIOaYr+WQpuaYvuekuuW8ueWHuuWxgu+8iOeUqOaIt+WvvOWFpe+8iQogICAgICAgIG9wZW46IGZhbHNlLAogICAgICAgIC8vIOW8ueWHuuWxguagh+mimO+8iOeUqOaIt+WvvOWFpe+8iQogICAgICAgIHRpdGxlOiAiIiwKICAgICAgICAvLyDmmK/lkKbnpoHnlKjkuIrkvKAKICAgICAgICBpc1VwbG9hZGluZzogZmFsc2UsCiAgICAgICAgLy8g5piv5ZCm5pu05paw5bey57uP5a2Y5Zyo55qE55So5oi35pWw5o2uCiAgICAgICAgdXBkYXRlU3VwcG9ydDogMCwKICAgICAgICAvLyDorr7nva7kuIrkvKDnmoTor7fmsYLlpLTpg6gKICAgICAgICBoZWFkZXJzOiB7CiAgICAgICAgICBBdXRob3JpemF0aW9uOiAiQmVhcmVyICIgKyAoMCwgX2F1dGguZ2V0VG9rZW4pKCkKICAgICAgICB9LAogICAgICAgIC8vIOS4iuS8oOeahOWcsOWdgAogICAgICAgIHVybDogcHJvY2Vzcy5lbnYuVlVFX0FQUF9CQVNFX0FQSSArICIvc3lzdGVtL2luZm8vaW1wb3J0RGF0YSIKICAgICAgfSwKICAgICAgLy8g5LiK5Lyg5Y+C5pWwCiAgICAgIHVwbG9hZDogewogICAgICAgIHRpdGxlOiAiIiwKICAgICAgICBvcGVuOiBmYWxzZSwKICAgICAgICAvLyDmmK/lkKbnpoHnlKjkuIrkvKAKICAgICAgICBpc1VwbG9hZGluZzogZmFsc2UsCiAgICAgICAgLy8g6K6+572u5LiK5Lyg55qE6K+35rGC5aS06YOoCiAgICAgICAgaGVhZGVyczogewogICAgICAgICAgQXV0aG9yaXphdGlvbjogIkJlYXJlciAiICsgKDAsIF9hdXRoLmdldFRva2VuKSgpCiAgICAgICAgfSwKICAgICAgICAvLyDkuIrkvKDnmoTlnLDlnYAKICAgICAgICB1cmw6IHByb2Nlc3MuZW52LlZVRV9BUFBfQkFTRV9BUEkgKyAiL3Byb2plY3QvaW5mby9jb21tb24vdXBsb2FkIiwKICAgICAgICAvLyDkuIrkvKDnmoTmlofku7bliJfooagKICAgICAgICBmaWxlTGlzdDogW10KICAgICAgfSwKICAgICAgLy8g6YGu572p5bGCCiAgICAgIGxvYWRpbmc6IHRydWUsCiAgICAgIC8vIOmAieS4reaVsOe7hAogICAgICBpZHM6IFtdLAogICAgICAvLyDpnZ7ljZXkuKrnpoHnlKgKICAgICAgc2luZ2xlOiB0cnVlLAogICAgICAvLyDpnZ7lpJrkuKrnpoHnlKgKICAgICAgbXVsdGlwbGU6IHRydWUsCiAgICAgIC8vIOaYvuekuuaQnOe0ouadoeS7tgogICAgICBzaG93U2VhcmNoOiB0cnVlLAogICAgICAvLyDmgLvmnaHmlbAKICAgICAgdG90YWw6IDAsCiAgICAgIC8vIOOAkOivt+Whq+WGmeWKn+iDveWQjeensOOAkeihqOagvOaVsOaNrgogICAgICBpbmZvTGlzdDogW10sCiAgICAgIC8vIOW8ueWHuuWxguagh+mimAogICAgICB0aXRsZTogIiIsCiAgICAgIC8vIOaYr+WQpuaYvuekuuW8ueWHuuWxggogICAgICBvcGVuOiBmYWxzZSwKICAgICAgbmFtZVR1T3BlbjogZmFsc2UsCiAgICAgIHVzZXJOYW1lVHVPcGVuOiBmYWxzZSwKICAgICAgdG90YWxCdWdldDogbnVsbCwKICAgICAgZGlhbG9nRm9ybVZpc2libGU6IGZhbHNlLAogICAgICBzdGF0dXNPcHRpb25zOiBbXSwKICAgICAgdHlwZU9wdGlvbnM6IFtdLAogICAgICBzZWNyZXRPcHRpb25zOiBbXSwKICAgICAgc291cmNlT3B0aW9uczogW10sCiAgICAgIGNhdGVnb3J5T3B0aW9uczogW10sCiAgICAgIHllc05vT3B0aW9uczogW10sCiAgICAgIHllYXJPcHRpb25zOiBbXSwKICAgICAgeEF4aXNDZW50ZXI4OiBbXSwKICAgICAgc2VyaWVzQ2VudGVyODogW10sCiAgICAgIHhBeGlzQ2VudGVyNzogW10sCiAgICAgIHNlcmllc0NlbnRlcjc6IFtdLAogICAgICBibFg6IFtdLAogICAgICBibExnOiBbXSwKICAgICAgYmxTZXI6IFtdLAogICAgICBvdFRpdGxlOiAiIiwKICAgICAgLy8g5p+l6K+i5Y+C5pWwCiAgICAgIHF1ZXJ5UGFyYW1zOiB7CiAgICAgICAgcGFnZU51bTogMSwKICAgICAgICBwYWdlU2l6ZTogMTAsCiAgICAgICAgY2F0ZWdvcnk6IG51bGwsCiAgICAgICAgY29kZTogbnVsbCwKICAgICAgICBuYW1lOiBudWxsLAogICAgICAgIHVzZXJOYW1lOiBudWxsLAogICAgICAgIHR5cGU6IG51bGwsCiAgICAgICAgZGVwYXJ0bWVudElkOiBudWxsLAogICAgICAgIHVzZXJJZDogbnVsbCwKICAgICAgICBkZWFkbGluZTogbnVsbCwKICAgICAgICB0b3RhbE91dGxheTogbnVsbCwKICAgICAgICBmaXJzdE91dGxheTogbnVsbCwKICAgICAgICBzZWNvbmRPdXRsYXk6IG51bGwsCiAgICAgICAgc3RhdHVzOiBudWxsLAogICAgICAgIGJlZ2luRGF0ZTogbnVsbCwKICAgICAgICBjb21wbGV0ZURhdGU6IG51bGwsCiAgICAgICAgYmVnaW5EYXRlTFg6IG51bGwsCiAgICAgICAgY29tcGxldGVEYXRlTFg6IG51bGwsCiAgICAgICAgZW5kRGF0ZTogbnVsbCwKICAgICAgICBhcHByb3ZhbERhdGU6IG51bGwsCiAgICAgICAgaXNTZWNyZWN5OiBudWxsLAogICAgICAgIHNlY3JlY3lMZXZlbDogbnVsbCwKICAgICAgICBzZWNyZWN5VGVybTogbnVsbCwKICAgICAgICBpc1RvcGljOiBudWxsLAogICAgICAgIHRhc2tUYXJnZXQ6IG51bGwsCiAgICAgICAgcmVzdWx0VGFyZ2V0OiBudWxsLAogICAgICAgIG1ldGhvZFJvdXRlOiBudWxsLAogICAgICAgIHBsYW46IG51bGwsCiAgICAgICAgc3BlbmRFeHBsYWluOiBudWxsLAogICAgICAgIHJlbHlJZDogbnVsbCwKICAgICAgICBsYXN0RGF0ZTogbnVsbCwKICAgICAgICByZXZpZXdTdGF0dXNYYjogbnVsbCwKICAgICAgICByZXZpZXdTdGF0dXNDdzogbnVsbCwKICAgICAgICB0b3RhbEJ1ZGdldDogbnVsbCwKICAgICAgICBmaXJzdEJ1ZGdldDogbnVsbCwKICAgICAgICBzZWNvbmRCdWRnZXQ6IG51bGwsCiAgICAgICAgYXBwbHlJZDogbnVsbCwKICAgICAgICBwcm9qZWN0U291cmNlOiBudWxsLAogICAgICAgIHByb2plY3RTb3VyY2VDb21wYW55OiBudWxsLAogICAgICAgIHJldmlld1N0YXR1c1p3aDogbnVsbCwKICAgICAgICBpc0FncmVlbWVudDogbnVsbCwKICAgICAgICByZWx5VW5pdEhlYWQ6IG51bGwsCiAgICAgICAgcmVseVVuaXRIZWFkdG9jdzogbnVsbCwKICAgICAgICB0YXNrUGVyaW9kOiBudWxsLAogICAgICAgIG90aGVycGxhbjogbnVsbCwKICAgICAgICBwb2ludDogbnVsbCwKICAgICAgICByZXN1bHQ6IG51bGwsCiAgICAgICAgaW50cm9kdWN0aW9uOiBudWxsLAogICAgICAgIHByb3Byb3Rpb246IG51bGwsCiAgICAgICAgdGVybTogbnVsbCwKICAgICAgICBwaXNoaVN0YXR1czogbnVsbCwKICAgICAgICB5ZWFyUmFkaW8yOiBudWxsLAogICAgICAgIHByb1Blb3BOYW1lOiBudWxsLAogICAgICAgIHlpdHVvQXJlYTogbnVsbCwKICAgICAgICBpc1Jlc3VsdDogbnVsbCwKICAgICAgICBpbXBvcnRhbnRLZXk6IG51bGwsCiAgICAgICAgc2VhcmNoVmFsdWU6IG51bGwKICAgICAgfSwKICAgICAgLy8g6KGo5Y2V5Y+C5pWwCiAgICAgIGZvcm06IHt9LAogICAgICAvLyDooajljZXmoKHpqowKICAgICAgcnVsZXM6IHt9LAogICAgICBmb3JtQ291bnRlbjogewogICAgICAgIG5hbWU6ICcnLAogICAgICAgIHJlZ2lvbjogJycsCiAgICAgICAgZGF0ZTE6ICcnLAogICAgICAgIGRhdGUyOiAnJywKICAgICAgICBkZWxpdmVyeTogZmFsc2UsCiAgICAgICAgdHlwZTogW10sCiAgICAgICAgcmVzb3VyY2U6ICcnLAogICAgICAgIGRlc2M6ICcnCiAgICAgIH0sCiAgICAgIGZvcm1MYWJlbFdpZHRoOiAnMTIwcHgnCiAgICB9OwogIH0sCiAgY3JlYXRlZDogZnVuY3Rpb24gY3JlYXRlZCgpIHsKICAgIHZhciBfdGhpcyA9IHRoaXM7CgogICAgaWYgKHRoaXMuJHJvdXRlLnF1ZXJ5LnllYXJSYWRpbzIpIHsKICAgICAgdGhpcy5xdWVyeVBhcmFtcy55ZWFyUmFkaW8yID0gdGhpcy4kcm91dGUucXVlcnkueWVhclJhZGlvMjsKICAgIH0gZWxzZSB7CiAgICAgIHRoaXMucXVlcnlQYXJhbXMueWVhclJhZGlvMiA9ICIwIjsKICAgIH0KCiAgICBpZiAodGhpcy4kcm91dGUucXVlcnkuc2VjcmVjeUxldmVsKSB7CiAgICAgIHRoaXMucXVlcnlQYXJhbXMuc2VjcmVjeUxldmVsID0gdGhpcy4kcm91dGUucXVlcnkuc2VjcmVjeUxldmVsOwogICAgfSBlbHNlIHsKICAgICAgdGhpcy5xdWVyeVBhcmFtcy5zZWNyZWN5TGV2ZWwgPSAiMCI7CiAgICB9CgogICAgaWYgKHRoaXMuJHJvdXRlLnF1ZXJ5LnR5cGUpIHsKICAgICAgdGhpcy5xdWVyeVBhcmFtcy50eXBlID0gdGhpcy4kcm91dGUucXVlcnkudHlwZTsKICAgIH0gZWxzZSB7CiAgICAgIHRoaXMucXVlcnlQYXJhbXMudHlwZSA9ICIwIjsKICAgIH0KCiAgICBpZiAodGhpcy4kcm91dGUucXVlcnkuZGVwYXJ0bWVudElkKSB7CiAgICAgIHRoaXMucXVlcnlQYXJhbXMuZGVwYXJ0bWVudElkID0gdGhpcy4kcm91dGUucXVlcnkuZGVwYXJ0bWVudElkOwogICAgfSBlbHNlIHsKICAgICAgdGhpcy5xdWVyeVBhcmFtcy5kZXBhcnRtZW50SWQgPSAiMCI7CiAgICB9CgogICAgdGhpcy5xdWVyeVBhcmFtcy55aXR1b1VuaXQgPSB0aGlzLiRyb3V0ZS5xdWVyeS55aXR1b1VuaXQ7CiAgICB0aGlzLnF1ZXJ5UGFyYW1zLnVzZXJOYW1lID0gdGhpcy4kcm91dGUucXVlcnkudXNlck5hbWU7CiAgICB0aGlzLnF1ZXJ5UGFyYW1zLmltcG9ydGFudEtleSA9IHRoaXMuJHJvdXRlLnF1ZXJ5LmltcG9ydGFudEtleTsKICAgIHRoaXMucXVlcnlQYXJhbXMueWl0dW9BcmVhID0gdGhpcy4kcm91dGUucXVlcnkueWl0dW9BcmVhOyAvLyB0aGlzLnF1ZXJ5UGFyYW1zLnllYXJSYWRpbyA9IHRoaXMuJHJvdXRlLnF1ZXJ5LnllYXJSYWRpbzsKICAgIC8vCiAgICAvLyB0aGlzLnF1ZXJ5UGFyYW1zLmlzUmVzdWx0ID0gdGhpcy4kcm91dGUucXVlcnkuaXNSZXN1bHQ7CiAgICAvLyB0aGlzLnF1ZXJ5UGFyYW1zLnN0YXR1cyA9IHRoaXMuJHJvdXRlLnF1ZXJ5LnN0YXR1czsKICAgIC8vCiAgICAvLwoKICAgIHZhciBkYXRlID0gbmV3IERhdGUoKTsKICAgIHZhciB5ZWFyID0gZGF0ZS5nZXRGdWxsWWVhcigpOwogICAgY29uc29sZS5sb2coeWVhciwgeWVhciAtIDEsIHllYXIgLSAyKTsKICAgIHRoaXMueWVhck9wdGlvbnNbMF0gPSB5ZWFyOwogICAgdGhpcy55ZWFyT3B0aW9uc1sxXSA9IHllYXIgLSAxOwogICAgdGhpcy55ZWFyT3B0aW9uc1syXSA9IHllYXIgLSAyOwogICAgdGhpcy55ZWFyT3B0aW9uc1szXSA9IHllYXIgLSAzOwogICAgdGhpcy55ZWFyT3B0aW9uc1s0XSA9IHllYXIgLSA0OwogICAgdGhpcy55ZWFyT3B0aW9uc1s1XSA9IHllYXIgLSA1OwogICAgdGhpcy5nZXRMaXN0KCk7CiAgICB0aGlzLmdldERpY3RzKCJwcm9fdHlwZSIpLnRoZW4oZnVuY3Rpb24gKHJlc3BvbnNlKSB7CiAgICAgIF90aGlzLnR5cGVPcHRpb25zID0gcmVzcG9uc2UuZGF0YTsKICAgIH0pOwogICAgdGhpcy5nZXREaWN0cygicHJvX3NlY3JldF9sZXZlbCIpLnRoZW4oZnVuY3Rpb24gKHJlc3BvbnNlKSB7CiAgICAgIF90aGlzLnNlY3JldE9wdGlvbnMgPSByZXNwb25zZS5kYXRhOwogICAgfSk7CiAgICB0aGlzLmdldERpY3RzKCJwcm9fc291cmNlIikudGhlbihmdW5jdGlvbiAocmVzcG9uc2UpIHsKICAgICAgX3RoaXMuc291cmNlT3B0aW9ucyA9IHJlc3BvbnNlLmRhdGE7CiAgICB9KTsKICAgIHRoaXMuZ2V0RGljdHMoInByb19jYXRlZ29yeSIpLnRoZW4oZnVuY3Rpb24gKHJlc3BvbnNlKSB7CiAgICAgIF90aGlzLmNhdGVnb3J5T3B0aW9ucyA9IHJlc3BvbnNlLmRhdGE7CiAgICB9KTsKICAgIHRoaXMuZ2V0RGljdHMoInByb19zdGF0dXMiKS50aGVuKGZ1bmN0aW9uIChyZXNwb25zZSkgewogICAgICBfdGhpcy5zdGF0dXNPcHRpb25zID0gcmVzcG9uc2UuZGF0YTsKICAgIH0pOwogICAgdGhpcy5nZXREaWN0cygic3lzX3llc19ubyIpLnRoZW4oZnVuY3Rpb24gKHJlc3BvbnNlKSB7CiAgICAgIF90aGlzLnllc05vT3B0aW9ucyA9IHJlc3BvbnNlLmRhdGE7CiAgICB9KTsKICB9LAogIG1ldGhvZHM6IHsKICAgIHNvcnRDaGFuZ2U6IGZ1bmN0aW9uIHNvcnRDaGFuZ2UoY29sdW1uLCBwcm9wLCBvcmRlcikgewogICAgICAvLyBjb25zb2xlLmxvZyhjb2x1bW4ucHJvcCk7IC8vcHJvcOagh+etviA9PiBuaWNrbmFtZQogICAgICAvLyBjb25zb2xlLmxvZyhjb2x1bW4ub3JkZXIpOy8vZGVzY2VuZGluZ+mZjeW6j+OAgWFzY2VuZGluZ+WNh+W6jwogICAgICBpZiAoY29sdW1uLnByb3AgPT0gImNhdGVnb3J5IikgewogICAgICAgIHRoaXMucXVlcnlQYXJhbXMuY2F0ZWdvcnlPcmRlciA9ICIxIjsKICAgICAgICB0aGlzLnF1ZXJ5UGFyYW1zLmNvZGVPcmRlciA9ICIiOwogICAgICAgIHRoaXMucXVlcnlQYXJhbXMubmFtZU9yZGVyID0gIiI7CiAgICAgICAgdGhpcy5xdWVyeVBhcmFtcy50eXBlT3JkZXIgPSAiIjsKICAgICAgICB0aGlzLnF1ZXJ5UGFyYW1zLmRlYWRsaW5lT3JkZXIgPSAiIjsKICAgICAgICB0aGlzLnF1ZXJ5UGFyYW1zLnRvdGFsT3V0bGF5T3JkZXIgPSAiIjsKICAgICAgICB0aGlzLnF1ZXJ5UGFyYW1zLnByb2plY3RTb3VyY2VPcmRlciA9ICIiOwogICAgICB9IGVsc2UgaWYgKGNvbHVtbi5wcm9wID09ICJjb2RlIikgewogICAgICAgIHRoaXMucXVlcnlQYXJhbXMuY2F0ZWdvcnlPcmRlciA9ICIiOwogICAgICAgIHRoaXMucXVlcnlQYXJhbXMuY29kZU9yZGVyID0gIjEiOwogICAgICAgIHRoaXMucXVlcnlQYXJhbXMubmFtZU9yZGVyID0gIiI7CiAgICAgICAgdGhpcy5xdWVyeVBhcmFtcy50eXBlT3JkZXIgPSAiIjsKICAgICAgICB0aGlzLnF1ZXJ5UGFyYW1zLmRlYWRsaW5lT3JkZXIgPSAiIjsKICAgICAgICB0aGlzLnF1ZXJ5UGFyYW1zLnRvdGFsT3V0bGF5T3JkZXIgPSAiIjsKICAgICAgICB0aGlzLnF1ZXJ5UGFyYW1zLnByb2plY3RTb3VyY2VPcmRlciA9ICIiOwogICAgICB9IGVsc2UgaWYgKGNvbHVtbi5wcm9wID09ICJuYW1lIikgewogICAgICAgIHRoaXMucXVlcnlQYXJhbXMuY2F0ZWdvcnlPcmRlciA9ICIiOwogICAgICAgIHRoaXMucXVlcnlQYXJhbXMuY29kZU9yZGVyID0gIiI7CiAgICAgICAgdGhpcy5xdWVyeVBhcmFtcy5uYW1lT3JkZXIgPSAiMSI7CiAgICAgICAgdGhpcy5xdWVyeVBhcmFtcy50eXBlT3JkZXIgPSAiIjsKICAgICAgICB0aGlzLnF1ZXJ5UGFyYW1zLmRlYWRsaW5lT3JkZXIgPSAiIjsKICAgICAgICB0aGlzLnF1ZXJ5UGFyYW1zLnRvdGFsT3V0bGF5T3JkZXIgPSAiIjsKICAgICAgICB0aGlzLnF1ZXJ5UGFyYW1zLnByb2plY3RTb3VyY2VPcmRlciA9ICIiOwogICAgICB9IGVsc2UgaWYgKGNvbHVtbi5wcm9wID09ICJ0eXBlIikgewogICAgICAgIHRoaXMucXVlcnlQYXJhbXMuY2F0ZWdvcnlPcmRlciA9ICIiOwogICAgICAgIHRoaXMucXVlcnlQYXJhbXMuY29kZU9yZGVyID0gIiI7CiAgICAgICAgdGhpcy5xdWVyeVBhcmFtcy5uYW1lT3JkZXIgPSAiIjsKICAgICAgICB0aGlzLnF1ZXJ5UGFyYW1zLnR5cGVPcmRlciA9ICIxIjsKICAgICAgICB0aGlzLnF1ZXJ5UGFyYW1zLmRlYWRsaW5lT3JkZXIgPSAiIjsKICAgICAgICB0aGlzLnF1ZXJ5UGFyYW1zLnRvdGFsT3V0bGF5T3JkZXIgPSAiIjsKICAgICAgICB0aGlzLnF1ZXJ5UGFyYW1zLnByb2plY3RTb3VyY2VPcmRlciA9ICIiOwogICAgICB9IGVsc2UgaWYgKGNvbHVtbi5wcm9wID09ICJkZWFkbGluZSIpIHsKICAgICAgICB0aGlzLnF1ZXJ5UGFyYW1zLmNhdGVnb3J5T3JkZXIgPSAiIjsKICAgICAgICB0aGlzLnF1ZXJ5UGFyYW1zLmNvZGVPcmRlciA9ICIiOwogICAgICAgIHRoaXMucXVlcnlQYXJhbXMubmFtZU9yZGVyID0gIiI7CiAgICAgICAgdGhpcy5xdWVyeVBhcmFtcy50eXBlT3JkZXIgPSAiIjsKICAgICAgICB0aGlzLnF1ZXJ5UGFyYW1zLmRlYWRsaW5lT3JkZXIgPSAiMSI7CiAgICAgICAgdGhpcy5xdWVyeVBhcmFtcy50b3RhbE91dGxheU9yZGVyID0gIiI7CiAgICAgICAgdGhpcy5xdWVyeVBhcmFtcy5wcm9qZWN0U291cmNlT3JkZXIgPSAiIjsKICAgICAgfSBlbHNlIGlmIChjb2x1bW4ucHJvcCA9PSAidG90YWxPdXRsYXkiKSB7CiAgICAgICAgdGhpcy5xdWVyeVBhcmFtcy5jYXRlZ29yeU9yZGVyID0gIiI7CiAgICAgICAgdGhpcy5xdWVyeVBhcmFtcy5jb2RlT3JkZXIgPSAiIjsKICAgICAgICB0aGlzLnF1ZXJ5UGFyYW1zLm5hbWVPcmRlciA9ICIiOwogICAgICAgIHRoaXMucXVlcnlQYXJhbXMudHlwZU9yZGVyID0gIiI7CiAgICAgICAgdGhpcy5xdWVyeVBhcmFtcy5kZWFkbGluZU9yZGVyID0gIiI7CiAgICAgICAgdGhpcy5xdWVyeVBhcmFtcy50b3RhbE91dGxheU9yZGVyID0gIjEiOwogICAgICAgIHRoaXMucXVlcnlQYXJhbXMucHJvamVjdFNvdXJjZU9yZGVyID0gIiI7CiAgICAgIH0gZWxzZSBpZiAoY29sdW1uLnByb3AgPT0gInByb2plY3RTb3VyY2UiKSB7CiAgICAgICAgdGhpcy5xdWVyeVBhcmFtcy5jYXRlZ29yeU9yZGVyID0gIiI7CiAgICAgICAgdGhpcy5xdWVyeVBhcmFtcy5jb2RlT3JkZXIgPSAiIjsKICAgICAgICB0aGlzLnF1ZXJ5UGFyYW1zLm5hbWVPcmRlciA9ICIiOwogICAgICAgIHRoaXMucXVlcnlQYXJhbXMudHlwZU9yZGVyID0gIiI7CiAgICAgICAgdGhpcy5xdWVyeVBhcmFtcy5kZWFkbGluZU9yZGVyID0gIiI7CiAgICAgICAgdGhpcy5xdWVyeVBhcmFtcy50b3RhbE91dGxheU9yZGVyID0gIiI7CiAgICAgICAgdGhpcy5xdWVyeVBhcmFtcy5wcm9qZWN0U291cmNlT3JkZXIgPSAiMSI7CiAgICAgIH0KCiAgICAgIGlmIChjb2x1bW4ub3JkZXIgPT0gImFzY2VuZGluZyIpIHsKICAgICAgICB0aGlzLnF1ZXJ5UGFyYW1zLm9yZGVyU29ydCA9ICJhc2MiOwogICAgICB9IGVsc2UgaWYgKGNvbHVtbi5vcmRlciA9PSAiZGVzY2VuZGluZyIpIHsKICAgICAgICB0aGlzLnF1ZXJ5UGFyYW1zLm9yZGVyU29ydCA9ICJkZXNjIjsKICAgICAgfQoKICAgICAgdGhpcy5nZXRMaXN0KCk7CiAgICB9LAogICAgaXNUb3BpY0Zvcm1hdDogZnVuY3Rpb24gaXNUb3BpY0Zvcm1hdChyb3csIGNvbHVtbikgewogICAgICByZXR1cm4gdGhpcy5zZWxlY3REaWN0TGFiZWwodGhpcy55ZXNOb09wdGlvbnMsIHJvdy5pc1RvcGljKTsKICAgIH0sCiAgICBpc1NlY3JlY3lGb3JtYXQ6IGZ1bmN0aW9uIGlzU2VjcmVjeUZvcm1hdChyb3csIGNvbHVtbikgewogICAgICByZXR1cm4gdGhpcy5zZWxlY3REaWN0TGFiZWwodGhpcy55ZXNOb09wdGlvbnMsIHJvdy5pc1NlY3JlY3kpOwogICAgfSwKICAgIHR5cGVGb3JtYXQ6IGZ1bmN0aW9uIHR5cGVGb3JtYXQocm93LCBjb2x1bW4pIHsKICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0RGljdExhYmVsKHRoaXMudHlwZU9wdGlvbnMsIHJvdy50eXBlKTsKICAgIH0sCiAgICBzZWNyZXRGb3JtYXQ6IGZ1bmN0aW9uIHNlY3JldEZvcm1hdChyb3csIGNvbHVtbikgewogICAgICByZXR1cm4gdGhpcy5zZWxlY3REaWN0TGFiZWwodGhpcy5zZWNyZXRPcHRpb25zLCByb3cuc2VjcmVjeUxldmVsKTsKICAgIH0sCiAgICBjYXRlZ29yeUZvcm1hdDogZnVuY3Rpb24gY2F0ZWdvcnlGb3JtYXQocm93LCBjb2x1bW4pIHsKICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0RGljdExhYmVsKHRoaXMuY2F0ZWdvcnlPcHRpb25zLCByb3cuY2F0ZWdvcnkpOwogICAgfSwKICAgIHN0YXR1c0Zvcm1hdDogZnVuY3Rpb24gc3RhdHVzRm9ybWF0KHJvdywgY29sdW1uKSB7CiAgICAgIHJldHVybiB0aGlzLnNlbGVjdERpY3RMYWJlbCh0aGlzLnN0YXR1c09wdGlvbnMsIHJvdy5zdGF0dXMpOwogICAgfSwKICAgIHNvdXJjZUZvcm1hdDogZnVuY3Rpb24gc291cmNlRm9ybWF0KHJvdywgY29sdW1uKSB7CiAgICAgIHJldHVybiB0aGlzLnNlbGVjdERpY3RMYWJlbCh0aGlzLnNvdXJjZU9wdGlvbnMsIHJvdy5wcm9qZWN0U291cmNlKTsKICAgIH0sCiAgICBnZXRTdGF0aXN0aWNzOiBmdW5jdGlvbiBnZXRTdGF0aXN0aWNzKHF1ZXJ5UGFyYW1zKSB7CiAgICAgIHZhciBfdGhpczIgPSB0aGlzOwoKICAgICAgKDAsIF9pbmZvMi5zdGF0aXN0aWNzKShxdWVyeVBhcmFtcykudGhlbihmdW5jdGlvbiAocmVzcCkgewogICAgICAgIF90aGlzMi56amYgPSByZXNwLmRhdGEuempmOwogICAgICAgIGNvbnNvbGUubG9nKHJlc3ApOwogICAgICAgIGNvbnNvbGUubG9nKF90aGlzMi56amYpOwogICAgICB9KTsKICAgIH0sCgogICAgLyoqIOWvvOWFpeaMiemSruaTjeS9nCAqLwogICAgaGFuZGxlSW1wb3J0OiBmdW5jdGlvbiBoYW5kbGVJbXBvcnQoKSB7CiAgICAgIHRoaXMudXBsb2FkUHJvamVjdC50aXRsZSA9ICLpobnnm67lr7zlhaUiOwogICAgICB0aGlzLnVwbG9hZFByb2plY3Qub3BlbiA9IHRydWU7CiAgICB9LAoKICAgIC8qKiDmn6Xor6LjgJDor7floavlhpnlip/og73lkI3np7DjgJHliJfooaggKi8KICAgIGdldExpc3Q6IGZ1bmN0aW9uIGdldExpc3QoKSB7CiAgICAgIHZhciBfdGhpczMgPSB0aGlzOwoKICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTsKICAgICAgY29uc29sZS5sb2codGhpcy5xdWVyeVBhcmFtcy5zZWNyZWN5TGV2ZWwsICItLS0tLS0tLS0tLS0tLS0tLS0tLS0iKTsKICAgICAgKDAsIF9pbmZvLmxpc3RJbmZvKSh0aGlzLnF1ZXJ5UGFyYW1zKS50aGVuKGZ1bmN0aW9uIChyZXNwb25zZSkgewogICAgICAgIF90aGlzMy5pbmZvTGlzdCA9IHJlc3BvbnNlLnJvd3M7CiAgICAgICAgX3RoaXMzLnRvdGFsID0gcmVzcG9uc2UudG90YWw7CiAgICAgICAgX3RoaXMzLmxvYWRpbmcgPSBmYWxzZTsKICAgICAgfSk7CiAgICAgIHRoaXMuZ2V0U3RhdGlzdGljcyh0aGlzLnF1ZXJ5UGFyYW1zKTsKICAgIH0sCiAgICAvLyDlj5bmtojmjInpkq4KICAgIGNhbmNlbDogZnVuY3Rpb24gY2FuY2VsKCkgewogICAgICB0aGlzLm9wZW4gPSBmYWxzZTsKICAgICAgdGhpcy5yZXNldCgpOwogICAgfSwKICAgIC8vIOihqOWNlemHjee9rgogICAgcmVzZXQ6IGZ1bmN0aW9uIHJlc2V0KCkgewogICAgICB0aGlzLmZvcm0gPSB7CiAgICAgICAgaWQ6IG51bGwsCiAgICAgICAgY2F0ZWdvcnk6IG51bGwsCiAgICAgICAgY29kZTogbnVsbCwKICAgICAgICBuYW1lOiBudWxsLAogICAgICAgIHR5cGU6IG51bGwsCiAgICAgICAgZGVwYXJ0bWVudElkOiBudWxsLAogICAgICAgIHVzZXJJZDogbnVsbCwKICAgICAgICBkZWFkbGluZTogbnVsbCwKICAgICAgICB0b3RhbE91dGxheTogbnVsbCwKICAgICAgICBmaXJzdE91dGxheTogbnVsbCwKICAgICAgICBzZWNvbmRPdXRsYXk6IG51bGwsCiAgICAgICAgc3RhdHVzOiAwLAogICAgICAgIGJlZ2luRGF0ZTogbnVsbCwKICAgICAgICBjb21wbGV0ZURhdGU6IG51bGwsCiAgICAgICAgZW5kRGF0ZTogbnVsbCwKICAgICAgICBhcHByb3ZhbERhdGU6IG51bGwsCiAgICAgICAgaXNTZWNyZWN5OiBudWxsLAogICAgICAgIHNlY3JlY3lMZXZlbDogbnVsbCwKICAgICAgICBzZWNyZWN5VGVybTogbnVsbCwKICAgICAgICBpc1RvcGljOiBudWxsLAogICAgICAgIHRhc2tUYXJnZXQ6IG51bGwsCiAgICAgICAgcmVzdWx0VGFyZ2V0OiBudWxsLAogICAgICAgIG1ldGhvZFJvdXRlOiBudWxsLAogICAgICAgIHBsYW46IG51bGwsCiAgICAgICAgc3BlbmRFeHBsYWluOiBudWxsLAogICAgICAgIHJlbHlJZDogbnVsbCwKICAgICAgICBsYXN0RGF0ZTogbnVsbCwKICAgICAgICByZXZpZXdTdGF0dXNYYjogbnVsbCwKICAgICAgICByZXZpZXdTdGF0dXNDdzogbnVsbCwKICAgICAgICB0b3RhbEJ1ZGdldDogbnVsbCwKICAgICAgICBmaXJzdEJ1ZGdldDogbnVsbCwKICAgICAgICBzZWNvbmRCdWRnZXQ6IG51bGwsCiAgICAgICAgYXBwbHlJZDogbnVsbCwKICAgICAgICBwcm9qZWN0U291cmNlOiBudWxsLAogICAgICAgIHByb2plY3RTb3VyY2VDb21wYW55OiBudWxsLAogICAgICAgIHJldmlld1N0YXR1c1p3aDogbnVsbCwKICAgICAgICBpc0FncmVlbWVudDogbnVsbCwKICAgICAgICByZWx5VW5pdEhlYWQ6IG51bGwsCiAgICAgICAgcmVseVVuaXRIZWFkdG9jdzogbnVsbCwKICAgICAgICB0YXNrUGVyaW9kOiBudWxsLAogICAgICAgIG90aGVycGxhbjogbnVsbCwKICAgICAgICBwb2ludDogbnVsbCwKICAgICAgICByZXN1bHQ6IG51bGwsCiAgICAgICAgaW50cm9kdWN0aW9uOiBudWxsLAogICAgICAgIHByb3Byb3Rpb246IG51bGwsCiAgICAgICAgdGVybTogbnVsbCwKICAgICAgICBjcmVhdGVCeTogbnVsbCwKICAgICAgICBjcmVhdGVUaW1lOiBudWxsLAogICAgICAgIHVwZGF0ZUJ5OiBudWxsLAogICAgICAgIHVwZGF0ZVRpbWU6IG51bGwsCiAgICAgICAgZGVsRmxhZzogbnVsbAogICAgICB9OwogICAgICB0aGlzLnJlc2V0Rm9ybSgiZm9ybSIpOwogICAgfSwKICAgIGxvZ291dDogZnVuY3Rpb24gbG9nb3V0KCkgewogICAgICB2YXIgX3RoaXM0ID0gdGhpczsKCiAgICAgIHJldHVybiAoMCwgX2FzeW5jVG9HZW5lcmF0b3IyLmRlZmF1bHQpKCAvKiNfX1BVUkVfXyovcmVnZW5lcmF0b3JSdW50aW1lLm1hcmsoZnVuY3Rpb24gX2NhbGxlZSgpIHsKICAgICAgICByZXR1cm4gcmVnZW5lcmF0b3JSdW50aW1lLndyYXAoZnVuY3Rpb24gX2NhbGxlZSQoX2NvbnRleHQpIHsKICAgICAgICAgIHdoaWxlICgxKSB7CiAgICAgICAgICAgIHN3aXRjaCAoX2NvbnRleHQucHJldiA9IF9jb250ZXh0Lm5leHQpIHsKICAgICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgICBfdGhpczQuJGNvbmZpcm0oJ+ehruWumuazqOmUgOW5tumAgOWHuuezu+e7n+WQl++8nycsICfmj5DnpLonLCB7CiAgICAgICAgICAgICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiAn56Gu5a6aJywKICAgICAgICAgICAgICAgICAgY2FuY2VsQnV0dG9uVGV4dDogJ+WPlua2iCcsCiAgICAgICAgICAgICAgICAgIHR5cGU6ICd3YXJuaW5nJwogICAgICAgICAgICAgICAgfSkudGhlbihmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgICAgICAgIF90aGlzNC4kc3RvcmUuZGlzcGF0Y2goJ0xvZ091dCcpLnRoZW4oZnVuY3Rpb24gKCkgewogICAgICAgICAgICAgICAgICAgIGxvY2F0aW9uLmhyZWYgPSAnL2luZGV4JzsKICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICB9KTsKCiAgICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIGNhc2UgImVuZCI6CiAgICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQuc3RvcCgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfSwgX2NhbGxlZSk7CiAgICAgIH0pKSgpOwogICAgfSwKCiAgICAvKiog5pCc57Si5oyJ6ZKu5pON5L2cICovCiAgICBoYW5kbGVRdWVyeTogZnVuY3Rpb24gaGFuZGxlUXVlcnkoKSB7CiAgICAgIHRoaXMucXVlcnlQYXJhbXMucGFnZU51bSA9IDE7CiAgICAgIHRoaXMuZ2V0TGlzdCgpOwogICAgICB0aGlzLmdldExlZnQ3KHRoaXMucXVlcnlQYXJhbXMpOwogICAgICB0aGlzLmdldENlbnRlcjgodGhpcy5xdWVyeVBhcmFtcyk7CiAgICAgIHRoaXMuZ2V0TGVmdDEodGhpcy5xdWVyeVBhcmFtcyk7CiAgICB9LAogICAgaGFuZGxlTmFtZVF1ZXJ5OiBmdW5jdGlvbiBoYW5kbGVOYW1lUXVlcnkoKSB7CiAgICAgIHRoaXMubmFtZVR1T3BlbiA9IHRydWU7CiAgICAgIHRoaXMucXVlcnlQYXJhbXMucGFnZU51bSA9IDE7CiAgICAgIHRoaXMuZ2V0TGlzdCgpOwogICAgICB0aGlzLmdldExlZnQ3KHRoaXMucXVlcnlQYXJhbXMpOwogICAgICB0aGlzLmdldENlbnRlcjgodGhpcy5xdWVyeVBhcmFtcyk7CiAgICB9LAogICAgaGFuZGxlVXNlck5hbWVRdWVyeTogZnVuY3Rpb24gaGFuZGxlVXNlck5hbWVRdWVyeSgpIHsKICAgICAgdGhpcy51c2VyTmFtZVR1T3BlbiA9IHRydWU7CiAgICAgIHRoaXMucXVlcnlQYXJhbXMucGFnZU51bSA9IDE7CiAgICAgIHRoaXMuZ2V0TGlzdCgpOwogICAgICB0aGlzLmdldFRvdGFsQnVnZXQodGhpcy5xdWVyeVBhcmFtcyk7CiAgICAgIHRoaXMuZ2V0TGVmdDEodGhpcy5xdWVyeVBhcmFtcyk7CiAgICB9LAogICAgZ2V0VG90YWxCdWdldDogZnVuY3Rpb24gZ2V0VG90YWxCdWdldChxdWVyeVBhcmFtcykgewogICAgICB2YXIgX3RoaXM1ID0gdGhpczsKCiAgICAgICgwLCBfaW5mbzIudG90YWxCdWdldERhdGEpKHF1ZXJ5UGFyYW1zKS50aGVuKGZ1bmN0aW9uIChyZXNwKSB7CiAgICAgICAgLy8gY29uc29sZS5sb2cocmVzcC5kYXRhLnRvdGFsQnVkZ2V0KQogICAgICAgIF90aGlzNS50b3RhbEJ1Z2V0ID0gcmVzcC5kYXRhLnRvdGFsQnVkZ2V0OwogICAgICB9KTsKICAgIH0sCiAgICBnZXRMZWZ0MTogZnVuY3Rpb24gZ2V0TGVmdDEocXVlcnlQYXJhbXMpIHsKICAgICAgdmFyIF90aGlzNiA9IHRoaXM7CgogICAgICAoMCwgX2luZm8yLmxlZnQxRGF0YSkocXVlcnlQYXJhbXMpLnRoZW4oZnVuY3Rpb24gKHJlc3ApIHsKICAgICAgICBpZiAocXVlcnlQYXJhbXMueWVhclJhZGlvMiA9PSAnMCcpIHsKICAgICAgICAgIF90aGlzNi5vdFRpdGxlID0gJzIwMTYt5LuKJzsKICAgICAgICB9IGVsc2UgaWYgKHF1ZXJ5UGFyYW1zLnllYXJSYWRpbzIgPT0gJzIwMTUnKSB7CiAgICAgICAgICBfdGhpczYub3RUaXRsZSA9ICIyMDE25bm05Lul5YmNIjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgX3RoaXM2Lm90VGl0bGUgPSAiMjAxNi3ku4oiOwogICAgICAgIH0KCiAgICAgICAgX3RoaXM2LmJsTGcgPSBbJ+mhueebruaVsCcsICfnu4/otLnmlbAnXTsKICAgICAgICBfdGhpczYuYmxYID0gcmVzcC5kYXRhLnllYXJBcnJheTsKICAgICAgICB2YXIgdGVtcCA9IFtdOwogICAgICAgIHZhciBpdGVtID0ge307CiAgICAgICAgaXRlbS5uYW1lID0gJ+mhueebruaVsCc7CiAgICAgICAgaXRlbS50eXBlID0gJ2Jhcic7CiAgICAgICAgaXRlbS5kYXRhID0gcmVzcC5kYXRhLm51bUFycmF5OwogICAgICAgIHRlbXAucHVzaChpdGVtKTsKICAgICAgICB2YXIgaXRlbTEgPSB7fTsKICAgICAgICBpdGVtMS5uYW1lID0gJ+e7j+i0ueaVsCc7CiAgICAgICAgaXRlbTEudHlwZSA9ICdsaW5lJzsKICAgICAgICBpdGVtMS55QXhpc0luZGV4ID0gMTsKICAgICAgICBpdGVtMS5kYXRhID0gcmVzcC5kYXRhLmJ1Z2V0QXJyYXk7CiAgICAgICAgdGVtcC5wdXNoKGl0ZW0xKTsKICAgICAgICBfdGhpczYuYmxTZXIgPSB0ZW1wOyAvLyBjb25zb2xlLmxvZyh0aGlzLnNlcmllc0NlbnRlcjUpCiAgICAgIH0pOwogICAgfSwKICAgIGdldExlZnQ3OiBmdW5jdGlvbiBnZXRMZWZ0NyhxdWVyeVBhcmFtcykgewogICAgICB2YXIgX3RoaXM3ID0gdGhpczsKCiAgICAgICgwLCBfaW5mbzIubGVmdDdEYXRhKShxdWVyeVBhcmFtcykudGhlbihmdW5jdGlvbiAocmVzcCkgewogICAgICAgIGlmIChxdWVyeVBhcmFtcy55ZWFyUmFkaW8yID09ICcwJykgewogICAgICAgICAgX3RoaXM3Lm90VGl0bGUgPSAi6Iez5LuKIjsKICAgICAgICB9IGVsc2UgaWYgKHF1ZXJ5UGFyYW1zLnllYXJSYWRpbzIgPT0gJzIwMTUnKSB7CiAgICAgICAgICBfdGhpczcub3RUaXRsZSA9ICIyMDE25bm05Lul5YmNIjsKICAgICAgICB9IGVsc2UgaWYgKHF1ZXJ5UGFyYW1zLnllYXJSYWRpbzIgPT0gJzk5OScpIHsKICAgICAgICAgIF90aGlzNy5vdFRpdGxlID0gIjIwMTYt5LuKIjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgX3RoaXM3Lm90VGl0bGUgPSBxdWVyeVBhcmFtcy55ZWFyUmFkaW8yICsgIuW5tCI7CiAgICAgICAgfQoKICAgICAgICB2YXIgdGVtcCA9IFtdOwogICAgICAgIHZhciBpdGVtID0ge307CiAgICAgICAgaXRlbS5uYW1lID0gJ+e7j+i0ueaVsCc7CiAgICAgICAgaXRlbS50eXBlID0gJ2Jhcic7CiAgICAgICAgaXRlbS5iYXJHYXAgPSAiLTEwMCUiOwogICAgICAgIGl0ZW0uZGF0YSA9IHJlc3AuZGF0YS55amZBcnJheTsKICAgICAgICB0ZW1wLnB1c2goaXRlbSk7CiAgICAgICAgdmFyIGl0ZW0xID0ge307CiAgICAgICAgaXRlbTEubmFtZSA9ICflrp7pmYXnu4/otLknOwogICAgICAgIGl0ZW0xLnR5cGUgPSAnYmFyJzsKICAgICAgICBpdGVtMS55QXhpc0luZGV4ID0gMTsKICAgICAgICBpdGVtMS5iYXJHYXAgPSAiLTEwMCUiOwogICAgICAgIGl0ZW0xLmRhdGEgPSByZXNwLmRhdGEueVNqamZBcnJheTsKICAgICAgICB0ZW1wLnB1c2goaXRlbTEpOwogICAgICAgIHZhciBpdGVtMiA9IHt9OwogICAgICAgIGl0ZW0yLm5hbWUgPSAn6aG555uu5pWwJzsKICAgICAgICBpdGVtMi50eXBlID0gJ2xpbmUnOwogICAgICAgIGl0ZW0yLnlBeGlzSW5kZXggPSAyOwogICAgICAgIGl0ZW0yLmRhdGEgPSByZXNwLmRhdGEueU51bUFycmF5OwogICAgICAgIHRlbXAucHVzaChpdGVtMik7CiAgICAgICAgX3RoaXM3LnNlcmllc0NlbnRlcjcgPSB0ZW1wOwogICAgICAgIF90aGlzNy54QXhpc0NlbnRlcjcgPSByZXNwLmRhdGEueEF4aXNBcnJheTsKICAgICAgfSk7CiAgICB9LAogICAgZ2V0Q2VudGVyODogZnVuY3Rpb24gZ2V0Q2VudGVyOChxdWVyeVBhcmFtcykgewogICAgICB2YXIgX3RoaXM4ID0gdGhpczsKCiAgICAgICgwLCBfaW5mbzIuY2VudGVyOERhdGEpKHF1ZXJ5UGFyYW1zKS50aGVuKGZ1bmN0aW9uIChyZXNwKSB7CiAgICAgICAgaWYgKHF1ZXJ5UGFyYW1zLnllYXJSYWRpbzIgPT0gJzAnKSB7CiAgICAgICAgICBfdGhpczgub3RUaXRsZSA9ICLoh7Pku4oiOwogICAgICAgIH0gZWxzZSBpZiAocXVlcnlQYXJhbXMueWVhclJhZGlvMiA9PSAnMjAxNScpIHsKICAgICAgICAgIF90aGlzOC5vdFRpdGxlID0gIjIwMTblubTku6XliY0iOwogICAgICAgIH0gZWxzZSBpZiAocXVlcnlQYXJhbXMueWVhclJhZGlvMiA9PSAnOTk5JykgewogICAgICAgICAgX3RoaXM4Lm90VGl0bGUgPSAiMjAxNi3ku4oiOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBfdGhpczgub3RUaXRsZSA9IHF1ZXJ5UGFyYW1zLnllYXJSYWRpbzIgKyAi5bm0IjsKICAgICAgICB9CgogICAgICAgIF90aGlzOC5zZXJpZXNDZW50ZXI4ID0gcmVzcC5kYXRhLnhBeGlzQXJyYXk7CiAgICAgICAgX3RoaXM4LnhBeGlzQ2VudGVyOCA9IHJlc3AuZGF0YS55QXhpc0FycmF5OwogICAgICB9KTsKICAgIH0sCiAgICB0b1llYXJQYWdlOiBmdW5jdGlvbiB0b1llYXJQYWdlKHllYXIpIHsvLyB0aGlzLiRyb3V0ZXIucHVzaCh7cGF0aDoiL3Byb2plY3QvaW5mb1Nob3cvcXVlcnkiLHF1ZXJ5Ont5ZWFyUmFkaW8yOnllYXJ9fSApOwogICAgfSwKICAgIHRveWl0dW9Vbml0UGFnZTogZnVuY3Rpb24gdG95aXR1b1VuaXRQYWdlKHVuaXQpIHsvLyBsZXQgeWVhclJhZGlvID0gdGhpcy55ZWFyUmFkaW8yOwogICAgICAvLyB0aGlzLiRyb3V0ZXIucHVzaCh7cGF0aDoiL3Byb2plY3QvaW5mb1Nob3cvcXVlcnkiLHF1ZXJ5Ont5aXR1b1VuaXQ6dW5pdCx5ZWFyUmFkaW8yOnllYXJSYWRpb319ICk7CiAgICB9LAogICAgdG9Vc2VyTmFtZVBhZ2U6IGZ1bmN0aW9uIHRvVXNlck5hbWVQYWdlKHVzZXJOYW1lKSB7Ly8gbGV0IHllYXJSYWRpbyA9IHRoaXMueWVhclJhZGlvMjsKICAgICAgLy8gdGhpcy4kcm91dGVyLnB1c2goe3BhdGg6Ii9wcm9qZWN0L2luZm9TaG93L3F1ZXJ5IixxdWVyeTp7dXNlck5hbWU6dXNlck5hbWUseWVhclJhZGlvMjp5ZWFyUmFkaW99fSApOwogICAgfSwKCiAgICAvKiog6YeN572u5oyJ6ZKu5pON5L2cICovCiAgICByZXNldFF1ZXJ5OiBmdW5jdGlvbiByZXNldFF1ZXJ5KCkgewogICAgICB0aGlzLnJlc2V0Rm9ybSgicXVlcnlGb3JtIik7CiAgICAgIHRoaXMucXVlcnlQYXJhbXMueWVhclJhZGlvMiA9ICIwIjsKICAgICAgdGhpcy5xdWVyeVBhcmFtcy5zZWNyZWN5TGV2ZWwgPSAiMCI7CiAgICAgIHRoaXMucXVlcnlQYXJhbXMudHlwZSA9ICIwIjsKICAgICAgdGhpcy5xdWVyeVBhcmFtcy5kZXBhcnRtZW50SWQgPSAiMCI7CiAgICAgIHRoaXMucXVlcnlQYXJhbXMuc2VhcmNoVmFsdWUgPSBudWxsOwogICAgICB0aGlzLmhhbmRsZVF1ZXJ5KCk7CiAgICB9LAogICAgLy8g5aSa6YCJ5qGG6YCJ5Lit5pWw5o2uCiAgICBoYW5kbGVTZWxlY3Rpb25DaGFuZ2U6IGZ1bmN0aW9uIGhhbmRsZVNlbGVjdGlvbkNoYW5nZShzZWxlY3Rpb24pIHsKICAgICAgdGhpcy5pZHMgPSBzZWxlY3Rpb24ubWFwKGZ1bmN0aW9uIChpdGVtKSB7CiAgICAgICAgcmV0dXJuIGl0ZW0uaWQ7CiAgICAgIH0pOwogICAgICB0aGlzLnNpbmdsZSA9IHNlbGVjdGlvbi5sZW5ndGggIT09IDE7CiAgICAgIHRoaXMubXVsdGlwbGUgPSAhc2VsZWN0aW9uLmxlbmd0aDsKICAgIH0sCgogICAgLyoqIOaWsOWinuaMiemSruaTjeS9nCAqLwogICAgaGFuZGxlQWRkOiBmdW5jdGlvbiBoYW5kbGVBZGQoKSB7CiAgICAgIHRoaXMucmVzZXQoKTsKICAgICAgdGhpcy5vcGVuID0gdHJ1ZTsKICAgICAgdGhpcy50aXRsZSA9ICLmt7vliqDjgJDor7floavlhpnlip/og73lkI3np7DjgJEiOwogICAgfSwKCiAgICAvKiog5L+u5pS55oyJ6ZKu5pON5L2cICovCiAgICBoYW5kbGVVcGRhdGU6IGZ1bmN0aW9uIGhhbmRsZVVwZGF0ZShyb3cpIHsKICAgICAgdmFyIF90aGlzOSA9IHRoaXM7CgogICAgICB0aGlzLnJlc2V0KCk7CiAgICAgIHZhciBpZCA9IHJvdy5pZCB8fCB0aGlzLmlkczsKICAgICAgKDAsIF9pbmZvLmdldEluZm8pKGlkKS50aGVuKGZ1bmN0aW9uIChyZXNwb25zZSkgewogICAgICAgIF90aGlzOS5mb3JtID0gcmVzcG9uc2UuZGF0YTsKICAgICAgICBfdGhpczkub3BlbiA9IHRydWU7CiAgICAgICAgX3RoaXM5LnRpdGxlID0gIuS/ruaUueOAkOivt+Whq+WGmeWKn+iDveWQjeensOOAkSI7CiAgICAgIH0pOwogICAgfSwKCiAgICAvKiog5o+Q5Lqk5oyJ6ZKuICovCiAgICBzdWJtaXRGb3JtOiBmdW5jdGlvbiBzdWJtaXRGb3JtKCkgewogICAgICB2YXIgX3RoaXMxMCA9IHRoaXM7CgogICAgICB0aGlzLiRyZWZzWyJmb3JtIl0udmFsaWRhdGUoZnVuY3Rpb24gKHZhbGlkKSB7CiAgICAgICAgaWYgKHZhbGlkKSB7CiAgICAgICAgICBpZiAoX3RoaXMxMC5mb3JtLmlkICE9IG51bGwpIHsKICAgICAgICAgICAgKDAsIF9pbmZvLnVwZGF0ZUluZm8pKF90aGlzMTAuZm9ybSkudGhlbihmdW5jdGlvbiAocmVzcG9uc2UpIHsKICAgICAgICAgICAgICBpZiAocmVzcG9uc2UuY29kZSA9PT0gMjAwKSB7CiAgICAgICAgICAgICAgICBfdGhpczEwLm1zZ1N1Y2Nlc3MoIuS/ruaUueaIkOWKnyIpOwoKICAgICAgICAgICAgICAgIF90aGlzMTAub3BlbiA9IGZhbHNlOwoKICAgICAgICAgICAgICAgIF90aGlzMTAuZ2V0TGlzdCgpOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAoMCwgX2luZm8uYWRkSW5mbykoX3RoaXMxMC5mb3JtKS50aGVuKGZ1bmN0aW9uIChyZXNwb25zZSkgewogICAgICAgICAgICAgIGlmIChyZXNwb25zZS5jb2RlID09PSAyMDApIHsKICAgICAgICAgICAgICAgIF90aGlzMTAubXNnU3VjY2Vzcygi5paw5aKe5oiQ5YqfIik7CgogICAgICAgICAgICAgICAgX3RoaXMxMC5vcGVuID0gZmFsc2U7CgogICAgICAgICAgICAgICAgX3RoaXMxMC5nZXRMaXN0KCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0pOwogICAgfSwKCiAgICAvKiog5Yig6Zmk5oyJ6ZKu5pON5L2cICovCiAgICBoYW5kbGVEZWxldGU6IGZ1bmN0aW9uIGhhbmRsZURlbGV0ZShyb3cpIHsKICAgICAgdmFyIF90aGlzMTEgPSB0aGlzOwoKICAgICAgdmFyIGlkcyA9IHJvdy5pZDsKICAgICAgdGhpcy4kY29uZmlybSgn5piv5ZCm56Gu6K6k5Yig6Zmk6aG555uu57yW5Y+35Li6IicgKyByb3cuY29kZSArICci55qE5pWw5o2u6aG5PycsICLorablkYoiLCB7CiAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6ICLnoa7lrpoiLAogICAgICAgIGNhbmNlbEJ1dHRvblRleHQ6ICLlj5bmtogiLAogICAgICAgIHR5cGU6ICJ3YXJuaW5nIgogICAgICB9KS50aGVuKGZ1bmN0aW9uICgpIHsKICAgICAgICByZXR1cm4gKDAsIF9pbmZvLmRlbEluZm8pKGlkcyk7CiAgICAgIH0pLnRoZW4oZnVuY3Rpb24gKCkgewogICAgICAgIF90aGlzMTEuZ2V0TGlzdCgpOwoKICAgICAgICBfdGhpczExLm1zZ1N1Y2Nlc3MoIuWIoOmZpOaIkOWKnyIpOwogICAgICB9KS5jYXRjaChmdW5jdGlvbiAoKSB7fSk7CiAgICB9LAoKICAgIC8qKiDlr7zlh7rmjInpkq7mk43kvZwgKi8KICAgIGhhbmRsZUV4cG9ydDogZnVuY3Rpb24gaGFuZGxlRXhwb3J0KCkgewogICAgICB2YXIgX3RoaXMxMiA9IHRoaXM7CgogICAgICB2YXIgcXVlcnlQYXJhbXMgPSB0aGlzLnF1ZXJ5UGFyYW1zOwogICAgICB0aGlzLiRjb25maXJtKCLmmK/lkKbnoa7orqTlr7zlh7rmiYDmnInjgJDor7floavlhpnlip/og73lkI3np7DjgJHmlbDmja7pobk/IiwgIuitpuWRiiIsIHsKICAgICAgICBjb25maXJtQnV0dG9uVGV4dDogIuehruWumiIsCiAgICAgICAgY2FuY2VsQnV0dG9uVGV4dDogIuWPlua2iCIsCiAgICAgICAgdHlwZTogIndhcm5pbmciCiAgICAgIH0pLnRoZW4oZnVuY3Rpb24gKCkgewogICAgICAgIHJldHVybiAoMCwgX2luZm8uZXhwb3J0SW5mbykocXVlcnlQYXJhbXMpOwogICAgICB9KS50aGVuKGZ1bmN0aW9uIChyZXNwb25zZSkgewogICAgICAgIF90aGlzMTIuZG93bmxvYWQocmVzcG9uc2UubXNnKTsKICAgICAgfSkuY2F0Y2goZnVuY3Rpb24gKCkge30pOwogICAgfSwKICAgIC8vIOaWh+S7tuS4iuS8oOS4reWkhOeQhgogICAgaGFuZGxlUHJvamVjdEZpbGVVcGxvYWRQcm9ncmVzczogZnVuY3Rpb24gaGFuZGxlUHJvamVjdEZpbGVVcGxvYWRQcm9ncmVzcyhldmVudCwgZmlsZSwgZmlsZUxpc3QpIHsKICAgICAgdGhpcy51cGxvYWRQcm9qZWN0LmlzVXBsb2FkaW5nID0gdHJ1ZTsKICAgIH0sCiAgICBiZWZvcmVQcm9qZWN0RmlsZVVwbG9hZDogZnVuY3Rpb24gYmVmb3JlUHJvamVjdEZpbGVVcGxvYWQoZmlsZSkgewogICAgICB2YXIgaXNMdDIwME0gPSBmaWxlLnNpemUgLyAxMDI0IC8gMTAyNCA8IDMwMDsKCiAgICAgIGlmICghaXNMdDIwME0pIHsKICAgICAgICB0aGlzLiRtZXNzYWdlLmVycm9yKCLkuIrkvKDlpKflsI/kuI3og73otoXov4cgMjAwTUIhIik7CiAgICAgIH0KCiAgICAgIHJldHVybiBpc0x0MjAwTTsKICAgIH0sCiAgICAvLyDmlofku7bkuIrkvKDmiJDlip/lpITnkIYKICAgIGhhbmRsZVByb2plY3RGaWxlU3VjY2VzczogZnVuY3Rpb24gaGFuZGxlUHJvamVjdEZpbGVTdWNjZXNzKHJlc3BvbnNlLCBmaWxlLCBmaWxlTGlzdCkgewogICAgICB0aGlzLnVwbG9hZFByb2plY3Qub3BlbiA9IGZhbHNlOwogICAgICB0aGlzLnVwbG9hZFByb2plY3QuaXNVcGxvYWRpbmcgPSBmYWxzZTsKICAgICAgdGhpcy4kcmVmcy51cGxvYWRQcm9qZWN0LmNsZWFyRmlsZXMoKTsKICAgICAgdGhpcy4kYWxlcnQocmVzcG9uc2UubXNnLCAi5a+85YWl57uT5p6cIiwgewogICAgICAgIGRhbmdlcm91c2x5VXNlSFRNTFN0cmluZzogdHJ1ZQogICAgICB9KTsKICAgICAgdGhpcy5nZXRMaXN0KCk7CiAgICB9LAogICAgLy8g5o+Q5Lqk5LiK5Lyg5paH5Lu2CiAgICBzdWJtaXRGaWxlRm9ybTogZnVuY3Rpb24gc3VibWl0RmlsZUZvcm0oKSB7CiAgICAgIHRoaXMuJHJlZnMudXBsb2FkUHJvamVjdC5zdWJtaXQoKTsKICAgIH0sCiAgICBpbXBvcnRUZW1wbGF0ZTogZnVuY3Rpb24gaW1wb3J0VGVtcGxhdGUoKSB7CiAgICAgIHZhciBfdGhpczEzID0gdGhpczsKCiAgICAgICgwLCBfaW5mby5pbXBvcnRUZW1wbGF0ZSkoKS50aGVuKGZ1bmN0aW9uIChyZXNwb25zZSkgewogICAgICAgIF90aGlzMTMuZG93bmxvYWQocmVzcG9uc2UubXNnKTsKICAgICAgfSk7CiAgICB9LAogICAgdmlld0FubmV4Qm9va0ZpbGU6IGZ1bmN0aW9uIHZpZXdBbm5leEJvb2tGaWxlKHJvdykgewogICAgICB0aGlzLnVwbG9hZC5maWxlTGlzdCA9IFtdOwogICAgICB0aGlzLmZvcm1hdFVwbG9hZEFubmV4KHJvdy5yZXN1bHRGaWxlLCByb3cucmVzdWx0RmlsZVBhdGgpOwogICAgICB0aGlzLnVwbG9hZC5vcGVuID0gdHJ1ZTsKICAgIH0sCiAgICAvL+agvOW8j+WMluS4iuS8oOmZhOS7tgogICAgZm9ybWF0VXBsb2FkQW5uZXg6IGZ1bmN0aW9uIGZvcm1hdFVwbG9hZEFubmV4KGFubmV4TmFtZSwgYW5uZXhQYXRoKSB7CiAgICAgIHRoaXMudXBsb2FkLmZpbGVMaXN0ID0gW107CgogICAgICBpZiAoYW5uZXhQYXRoICE9IG51bGwgJiYgYW5uZXhQYXRoICE9PSAnJykgewogICAgICAgIHZhciBhID0gW10sCiAgICAgICAgICAgIGIgPSBbXTsKCiAgICAgICAgdHJ5IHsKICAgICAgICAgIGEgPSBKU09OLnBhcnNlKGFubmV4TmFtZSk7CiAgICAgICAgICBiID0gSlNPTi5wYXJzZShhbm5leFBhdGgpOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgIGEgPSBbXTsKICAgICAgICAgIGIgPSBbXTsKICAgICAgICB9CgogICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYS5sZW5ndGg7IGkrKykgewogICAgICAgICAgdGhpcy51cGxvYWQuZmlsZUxpc3QucHVzaCh7CiAgICAgICAgICAgICduYW1lJzogYVtpXSwKICAgICAgICAgICAgJ3VybCc6IHByb2Nlc3MuZW52LlZVRV9BUFBfQkFTRV9BUEkgKyBiW2ldCiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhpcy51cGxvYWQuZmlsZUxpc3QgPSBbXTsKICAgICAgfQogICAgfSwKICAgIGhhbmRsZVByZXZpZXc6IGZ1bmN0aW9uIGhhbmRsZVByZXZpZXcoZmlsZSkgewogICAgICB2YXIgYSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKTsKICAgICAgdmFyIGV2ZW50ID0gbmV3IE1vdXNlRXZlbnQoJ2NsaWNrJyk7CiAgICAgIGEuZG93bmxvYWQgPSBmaWxlLm5hbWU7CiAgICAgIGEudGFyZ2V0ID0gJ19ibGFuayc7CiAgICAgIGEuaHJlZiA9IGZpbGUudXJsOwogICAgICBhLmRpc3BhdGNoRXZlbnQoZXZlbnQpOwogICAgICBjb25zb2xlLmxvZyhmaWxlLm5hbWUpOwogICAgfQogIH0KfTsKZXhwb3J0cy5kZWZhdWx0ID0gX2RlZmF1bHQ7"},{"version":3,"sources":["index.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAswCA;;AASA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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","sourcesContent":["<!--<template>-->\n<!-- <div class=\"flex dashboard-editor-container\">-->\n<!-- <div class=\"left\">-->\n<!-- <div-->\n<!-- class=\"menu flex\"-->\n<!-- v-for=\"item in leftMenu\"-->\n<!-- :key=\"item.type\"-->\n<!-- @click=\"active = item.type\"-->\n<!-- :class=\"{ active: item.type == active }\"-->\n<!-- >-->\n<!-- <span class=\"img\"> <div class=\"imgbgc\" :class=\"item.type\"></div></span> {{ item.name }}-->\n<!-- </div>-->\n<!-- </div>-->\n<!-- <div class=\"right flex1\">-->\n<!-- <el-button-->\n<!-- v-for=\"item in yearArr\"-->\n<!-- :key=\"item.value\"-->\n<!-- :type=\"year == item.value ? 'primary' : ''\"-->\n<!-- @click=\"search(item)\"-->\n<!-- v-if=\"item.name!='2016年以前'\"-->\n<!-- >{{ item.name }}</el-button>-->\n\n<!-- <div class=\"content\">-->\n<!-- <div v-if=\"active == 'ztgk'\">-->\n<!-- <p>-->\n<!-- {{this.year2}},我院累计立项<el-link target=\"_blank\" @click=\"toYearPage(year)\" class=\"font\">{{apprpval}}</el-link>个,-->\n<!-- 经费投入共计<el-link target=\"_blank\" @click=\"toYearPage(year)\" class=\"font\">{{zjf}}</el-link>万元。收集咨询报告累计-->\n<!-- <el-link target=\"_blank\" @click=\"toYearPage(year)\" class=\"font\">{{report}}</el-link>份,-->\n<!-- 上报院士建议-->\n<!-- <el-link target=\"_blank\" @click=\"toStatusPage(year)\" class=\"font\">{{proposal}}</el-link>份, 其中-->\n<!-- <el-link target=\"_blank\" @click=\"toStatusPage(year)\" class=\"font\">{{instructions}}</el-link>份得到相关领导、部门的批示。-->\n<!-- </p>-->\n<!-- <el-row :gutter=\"32\">-->\n\n<!-- <el-col :lg=\"12\">-->\n<!-- <div class=\"chart-wrapper\" >-->\n<!-- &lt;!&ndash; <raddar-chart /> &ndash;&gt;-->\n<!-- <BarLineChart height=\"500px\" :blXData=\"blX\" :blLgData=\"blLg\" :blSerData=\"blSer\" :blTitle=\"blTitle\" @yearToPage=\"toYearPage\"/>-->\n<!-- </div>-->\n<!-- </el-col>-->\n\n<!-- <el-col :xs=\"12\" :sm=\"12\" :lg=\"8\">-->\n<!-- <div class=\"chart-wrapper\" >-->\n<!-- &lt;!&ndash; <raddar-chart /> &ndash;&gt;-->\n<!-- <DuidieChart height=\"500px\" :ddXData=\"ddX\" :ddLgData=\"ddLg\" :ddSerData=\"ddSer\" />-->\n<!-- </div>-->\n<!-- </el-col>-->\n\n<!-- </el-row>-->\n\n<!-- </div>-->\n<!-- <div v-if=\"active == 'xmfl'\">-->\n<!-- <p>-->\n<!-- {{this.year2}},-->\n<!-- 共承担<span v-for=\"(item,index) in countProject\">-->\n<!-- <span v-if=\"index<countProject.length-1\">-->\n<!-- <el-link target=\"_blank\" @click=\"toSecPage(item.secLevel)\" class=\"font\">{{item.name}}</el-link>-->\n<!-- 项目-->\n<!-- <el-link target=\"_blank\" @click=\"toSecPage(item.secLevel)\" class=\"font\">{{item.value}}</el-link>个、</span>-->\n<!-- <span v-else>-->\n<!-- <el-link target=\"_blank\" @click=\"toSecPage(item.secLevel)\" class=\"font\">{{item.name}}</el-link>项目-->\n<!-- <el-link target=\"_blank\" @click=\"toSecPage(item.secLevel)\" class=\"font\"> {{item.value}}</el-link>个。-->\n<!-- </span>-->\n<!-- </span><span v-for=\"(item,index) in typeData\">-->\n<!-- <span v-if=\"index<typeData.length-1\">-->\n<!-- <el-link target=\"_blank\" @click=\"toTypePage(item.typeId)\" class=\"font\"> {{item.name}}</el-link>项目-->\n<!-- <el-link target=\"_blank\" @click=\"toTypePage(item.typeId)\" class=\"font\"> {{item.value}}</el-link>个、</span>-->\n<!-- <span v-else>-->\n<!-- <el-link target=\"_blank\" @click=\"toTypePage(item.typeId)\" class=\"font\"> {{item.name}}</el-link>项目-->\n<!-- <el-link target=\"_blank\" @click=\"toTypePage(item.typeId)\" class=\"font\"> {{item.value}}</el-link>个。</span>-->\n<!-- </span>-->\n\n<!-- </p>-->\n<!-- <el-row >-->\n<!-- <el-col :xs=\"12\" :sm=\"12\" :lg=\"12\">-->\n<!-- <div class=\"chart-wrapper\" >-->\n<!-- <SecretPieChart height=\"500px\" :secretData=\"secretData\" :otTitle=\"otTitle\" @secToPage=\"toSecPage\"/>-->\n<!-- </div>-->\n<!-- </el-col>-->\n\n\n<!-- <el-col :xs=\"12\" :sm=\"12\" :lg=\"12\">-->\n<!-- <div class=\"chart-wrapper\" >-->\n<!-- <TypePieChart height=\"500px\" :typelg=\"typelg\" :typeData=\"typeData\" :otTitle=\"otTitle\" @typeToPage=\"toTypePage\"/>-->\n<!-- </div>-->\n<!-- </el-col>-->\n<!-- </el-row>-->\n\n<!-- </div>-->\n<!-- <div v-if=\"active == 'cddw'\">-->\n<!-- <p>-->\n<!-- {{this.year2}},<span v-for=\"(item,index) in axisCenter7Top4\" >-->\n<!-- <span v-if=\"index<axisCenter7Top4.length-1\">-->\n<!-- <el-link target=\"_blank\" @click=\"toyituoUnitPage(item)\" class=\"font\">{{item}}</el-link>、</span>-->\n<!-- <span v-else>-->\n<!-- <el-link target=\"_blank\" @click=\"toyituoUnitPage(item)\" class=\"font\">{{item}}</el-link>靠前。</span>-->\n<!-- </span>-->\n<!-- 我院各部门项目承担状况分布如下表所示,-->\n<!-- <span v-for=\"(item,index) in projectCount\">-->\n<!-- <span v-if=\"index<projectCount.length-1\">-->\n<!-- <el-link target=\"_blank\" @click=\"toDeptPage(item.departmentId)\" class=\"font\"> {{item.name}}</el-link>承担了-->\n<!-- <el-link target=\"_blank\" @click=\"toDeptPage(item.departmentId)\" class=\"font\">{{item.value}}</el-link>个项目,</span>-->\n<!-- <span v-else>-->\n<!-- <el-link target=\"_blank\" @click=\"toDeptPage(item.departmentId)\" class=\"font\">{{item.name}}</el-link>承担了-->\n<!-- <el-link target=\"_blank\" @click=\"toDeptPage(item.departmentId)\" class=\"font\">{{item.value}}</el-link>个项目。</span>-->\n<!-- </span>-->\n<!-- </p>-->\n<!-- <el-row >-->\n<!-- <el-col :xs=\"12\" :sm=\"12\" :lg=\"12\">-->\n<!-- <div class=\"chart-wrapper\">-->\n<!-- <BLYiTuoChart height=\"500px\" :xAxisDataLeft7=\"xAxisCenter7\" :seriesData1=\"seriesCenter7\" :otTitle=\"otTitle\" @yituoUnitPage=\"toyituoUnitPage\"/>-->\n<!-- </div>-->\n<!-- </el-col>-->\n\n<!-- <el-col :xs=\"12\" :sm=\"12\" :lg=\"12\">-->\n<!-- <div class=\"chart-wrapper\">-->\n<!-- <pie-chart height=\"500px\" :pieLegend=\"pieLgData\" :pieData=\"pieData\" :otTitle=\"otTitle\" @deptToPage=\"toDeptPage\"/>-->\n<!-- </div>-->\n<!-- </el-col>-->\n<!-- </el-row>-->\n\n<!-- </div>-->\n<!-- <div v-if=\"active == 'qtys'\">-->\n<!-- <p>-->\n<!-- {{this.year2}},作为项目负责人:-->\n<!-- <span v-for=\"(item,index) in academicianCount\">-->\n<!-- <span v-if=\"index<academicianCount.length-1\">-->\n<!-- <el-link target=\"_blank\" @click=\"toUserNamePage(item.name)\" class=\"font\">{{item.name}}</el-link>累计-->\n<!-- <el-link target=\"_blank\" @click=\"toDeptPage(item.name)\" class=\"font\">{{item.value}}</el-link>次,经费合计-->\n<!-- <el-link target=\"_blank\" @click=\"toDeptPage(item.name)\" class=\"font\">{{item.money}}</el-link>万元;</span>-->\n<!-- <span v-else>-->\n<!-- <el-link target=\"_blank\" @click=\"toDeptPage(item.name)\" class=\"font\">{{item.name}}</el-link>累计-->\n<!-- <el-link target=\"_blank\" @click=\"toDeptPage(item.name)\" class=\"font\">{{item.value}}</el-link>次,经费合计-->\n<!-- <el-link target=\"_blank\" @click=\"toDeptPage(item.name)\" class=\"font\">{{item.money}}</el-link>万元。</span>-->\n<!-- </span>-->\n<!-- <span v-if=\"seriesCenter9.length>3\"> 参与院士建议上报的院士:-->\n<!-- <span v-for=\"(item,index) in jyArray\" >-->\n<!-- <span v-if=\"index<jyArray.length-1\">-->\n<!-- <el-link target=\"_blank\" @click=\"toUserPage(item.name)\" class=\"font\">{{item.name}}{{item.value}}</el-link>次,</span>-->\n<!-- <span v-else>-->\n<!-- <el-link target=\"_blank\" @click=\"toUserPage(item.name)\" class=\"font\">{{item.name}}{{item.value}}</el-link>次。</span>-->\n<!-- </span>-->\n\n<!-- </span>-->\n\n\n<!-- </p>-->\n<!-- <el-row >-->\n<!-- <el-col :xs=\"12\" :sm=\"12\" :lg=\"12\">-->\n<!-- <div class=\"chart-wrapper\">-->\n<!-- <bar-chart3 height=\"500px\" :xAxisDataLeft8=\"xAxisCenter8\" :seriesDataLeft8=\"seriesCenter8\" :otTitle=\"otTitle\" @userNamePage=\"toUserNamePage\"/>-->\n<!-- </div>-->\n<!-- </el-col>-->\n<!-- <el-col :xs=\"12\" :sm=\"12\" :lg=\"12\">-->\n<!-- <div class=\"chart-wrapper\">-->\n<!-- <AdviseNameChart height=\"500px\" :xAxisDataLeft8=\"xAxisCenter9\" :otTitle=\"otTitle\" :seriesDataLeft8=\"seriesCenter9\"/>-->\n<!-- </div>-->\n<!-- </el-col>-->\n\n<!-- </el-row>-->\n<!-- </div>-->\n<!-- <div v-if=\"active == 'yjrd'\">-->\n<!-- <p>{{this.year2}},咨询项目研究热点领域包括:-->\n<!-- <span v-for=\"(item,index) in imKeyData2\">-->\n<!-- <span v-if=\"index<imKeyData2.length-1\">-->\n<!-- <el-link target=\"_blank\" @click=\"toCirclePage(item.name)\" class=\"font\">{{item.name}}</el-link>、</span>-->\n<!-- <span v-else>-->\n<!-- <el-link target=\"_blank\" @click=\"toCirclePage(item.name)\" class=\"font\">{{item.name}}</el-link>等。</span>-->\n<!-- </span></p>-->\n<!-- <el-row >-->\n<!-- <el-col :xs=\"12\" :sm=\"12\" :lg=\"24\">-->\n<!-- <div class=\"chart-wrapper\">-->\n<!-- <circle-chart2 height=\"500px\" :chartData=\"imKeyData\" :otTitle=\"otTitle\" @circlePage=\"toCirclePage\"/>-->\n<!-- </div>-->\n<!-- </el-col>-->\n<!-- </el-row>-->\n<!-- </div>-->\n<!-- </div>-->\n\n<!-- <div class=\"textR\">-->\n<!-- <el-button type=\"primary\" v-if=\"active != 'ztgk'\" @click=\"back()\"-->\n<!-- >上一页</el-button-->\n<!-- >-->\n<!-- <el-button type=\"primary\" v-if=\"active != 'yjrd'\" @click=\"next()\"-->\n<!-- >下一页</el-button-->\n<!-- >-->\n<!-- </div>-->\n<!-- </div>-->\n<!-- </div>-->\n<!--</template>-->\n<!--<script>-->\n<!-- import BarLineChart from \"./dashboard/BarLineChart\";-->\n<!-- import DuidieChart from \"./dashboard/DuidieChart\";-->\n<!-- import SecretPieChart from \"./dashboard/SecretPieChart\";-->\n<!-- import TypePieChart from \"./dashboard/TypePieChart\";-->\n<!-- import BLYiTuoChart from \"./dashboard/BLYiTuoChart\";-->\n<!-- import PieChart from \"./dashboard/PieChart\";-->\n<!-- import BarChart3 from \"./dashboard/BarChart3\";-->\n<!-- import AdviseNameChart from \"./dashboard/AdviseNameChart\";-->\n<!-- import CircleChart2 from \"./dashboard/CircleChart2\";-->\n<!-- import { left1Data,center5Data,center2Data,right3Data,left4Data,-->\n<!-- right6Data,left7Data,center8Data,statistics,countProject,left1Data2} from \"@/api/project/info3\";-->\n<!-- import { shituData2 ,shituData8} from \"@/api/project/instruction\";-->\n\n<!-- export default {-->\n<!-- name: \"index\",-->\n<!-- components: {-->\n<!-- BarLineChart,-->\n<!-- DuidieChart,-->\n<!-- SecretPieChart,-->\n<!-- TypePieChart,-->\n<!-- BLYiTuoChart,-->\n<!-- PieChart,-->\n<!-- BarChart3,-->\n<!-- AdviseNameChart,-->\n<!-- CircleChart2-->\n<!-- },-->\n<!-- props: {},-->\n<!-- data() {-->\n<!-- return {-->\n<!-- active: \"ztgk\",-->\n<!-- year: \"999\",-->\n<!-- year2:'2016年至今',-->\n<!-- yearRadio2:\"999\",-->\n<!-- apprpval:'',-->\n<!-- instructions:'',-->\n<!-- proposal:'',-->\n<!-- report:'',-->\n<!-- zjf:'',-->\n<!-- blTitle:\"\",-->\n<!-- blX:[],-->\n<!-- blLg:[],-->\n<!-- blSer:[],-->\n<!-- ddX:[],-->\n<!-- ddLg:[],-->\n<!-- ddSer:[],-->\n<!-- secretData:[],-->\n<!-- otTitle:\"\",-->\n<!-- typelg:[],-->\n<!-- typeData:[],-->\n<!-- xAxisCenter7:[],-->\n<!-- axisCenter7Top4:[],-->\n<!-- projectCount:[],-->\n<!-- seriesCenter7:[],-->\n<!-- pieData:[],-->\n<!-- pieLgData:[],-->\n<!-- xAxisCenter8:[],-->\n<!-- seriesCenter8:[],-->\n<!-- xAxisCenter9:[],-->\n<!-- seriesCenter9:[],-->\n<!-- imKeyData:[],-->\n<!-- imKeyData2:[],-->\n<!-- jyArray:[],-->\n<!-- leftMenu: [-->\n<!-- {-->\n<!-- type: \"ztgk\",-->\n<!-- name: \"总体概况\",-->\n<!-- },-->\n<!-- {-->\n<!-- type: \"xmfl\",-->\n<!-- name: \"项目分类\",-->\n<!-- },-->\n<!-- {-->\n<!-- type: \"cddw\",-->\n<!-- name: \"承担单位\",-->\n<!-- },-->\n<!-- {-->\n<!-- type: \"qtys\",-->\n<!-- name: \"牵头院士\",-->\n<!-- },-->\n<!-- {-->\n<!-- type: \"yjrd\",-->\n<!-- name: \"研究热点\",-->\n<!-- },-->\n<!-- ],-->\n<!-- yearArr: [],-->\n<!-- countProject:{},-->\n<!-- academicianCount:[],-->\n<!-- };-->\n<!-- },-->\n<!-- created() {-->\n<!-- this.yearArr = [];-->\n<!-- this.yearArr.push({ name: \"2016年-今\", value: \"999\" });-->\n<!-- const year = new Date().getFullYear();-->\n<!-- for (let i = 0; i < 6; i++) {-->\n<!-- this.yearArr.push({ name: year - i, value: year - i });-->\n<!-- }-->\n<!-- let param = {-->\n<!-- yearRadio2:999-->\n<!-- };-->\n<!-- this.yearArr.push({ name: \"2016年以前\", value: \"2015\" });-->\n<!-- this.getLeft1(param);-->\n<!-- this.getRight1();-->\n<!-- this.getLeft2(param);-->\n<!-- this.getRight2(param);-->\n<!-- this.getLeft3(param);-->\n<!-- this.getRight3(param);-->\n<!-- this.getLeft4(param);-->\n<!-- this.getRight4(param);-->\n<!-- this.getLeft5(param);-->\n<!-- this.getStatistics(param);-->\n<!-- // this.getProjectCount()-->\n<!-- this.getLeft7()-->\n<!-- },-->\n<!-- mounted() {},-->\n<!-- methods: {-->\n<!-- search(y) {-->\n<!-- this.year2=y.name-->\n<!-- this.year= y.value;-->\n<!-- this.yearRadio2 = y.value;-->\n<!-- let param = {-->\n<!-- yearRadio2:y.value-->\n<!-- };-->\n<!-- this.getLeft1(param);-->\n<!-- this.getRight1();-->\n<!-- this.getLeft2(param);-->\n<!-- this.getRight2(param);-->\n<!-- this.getLeft3(param);-->\n<!-- this.getRight3(param);-->\n<!-- this.getLeft4(param);-->\n<!-- this.getRight4(param);-->\n<!-- this.getLeft5(param);-->\n<!-- this.getStatistics(param);-->\n<!-- this.getLeft7(param);-->\n<!-- },-->\n<!-- getStatistics(queryParams){-->\n\n<!-- statistics(queryParams).then(resp=>{-->\n<!-- this.apprpval=resp.data.apprpval;-->\n<!-- this.zjf=resp.data.zjf;-->\n<!-- this.report=resp.data.report;-->\n<!-- this.proposal=resp.data.proposal;-->\n<!-- this.instructions=resp.data.instructions;-->\n<!-- });-->\n<!-- },-->\n<!-- getLeft1(queryParams){-->\n<!-- left7Data(queryParams).then(-->\n<!-- resp => {-->\n<!-- if(this.yearRadio2 =='2015'){-->\n<!-- this.otTitle=\"2016年以前\"-->\n<!-- }else if(this.yearRadio2 =='999'){-->\n<!-- this.otTitle=\"2016-今\"-->\n<!-- }else{-->\n<!-- this.otTitle=this.yearRadio2 +\"年\"-->\n<!-- }-->\n\n<!-- let temp = [];-->\n<!-- let item = {};-->\n<!-- item.name = '经费数';-->\n<!-- item.type='bar';-->\n<!-- item.barGap=\"-100%\";-->\n<!-- item.data=resp.data.yjfArray;-->\n<!-- temp.push(item);-->\n<!-- let item1 = {};-->\n<!-- item1.name = '实际经费';-->\n<!-- item1.type='bar';-->\n<!-- item1.yAxisIndex= 1;-->\n<!-- item1.barGap=\"-100%\";-->\n<!-- item1.data=resp.data.ySjjfArray;-->\n<!-- temp.push(item1);-->\n<!-- let item2 = {};-->\n<!-- item2.name = '项目数';-->\n<!-- item2.type='line';-->\n<!-- item2.yAxisIndex= 2;-->\n<!-- item2.data=resp.data.yNumArray;-->\n<!-- temp.push(item2);-->\n<!-- this.seriesCenter7 = temp;-->\n<!-- this.xAxisCenter7 = resp.data.xAxisArray;-->\n\n<!-- this.axisCenter7Top4=this.xAxisCenter7.length>4?this.xAxisCenter7.slice(0,4):this.xAxisCenter7-->\n\n\n<!-- }-->\n<!-- );-->\n<!-- },-->\n<!-- getRight1(param){-->\n<!-- shituData2(param).then(rsp => {-->\n<!-- this.ddX = rsp.data.yearArray;-->\n<!-- this.ddLg = ['有批示', '无批示'];-->\n<!-- let temp = [];-->\n<!-- let item = {};-->\n<!-- item.name = '有批示';-->\n<!-- item.type = 'bar';-->\n<!-- item.stack= 'one';-->\n<!-- item.barWidth= \"50%\";-->\n<!-- item.data = rsp.data.youArray;-->\n<!-- temp.push(item);-->\n<!-- let item2 = {};-->\n<!-- item2.name = '无批示';-->\n<!-- item2.type = 'bar';-->\n<!-- item2.stack= 'one';-->\n<!-- item2.barWidth= \"50%\";-->\n<!-- item2.data = rsp.data.wuArray;-->\n<!-- temp.push(item2);-->\n<!-- this.ddSer = temp-->\n<!-- });-->\n<!-- },-->\n<!-- getLeft2(queryParams){-->\n<!-- center2Data(queryParams).then(-->\n<!-- resp=>{-->\n<!-- if(this.yearRadio2 =='2015'){-->\n<!-- this.otTitle=\"2016年以前\"-->\n<!-- }else if(this.yearRadio2 =='999'){-->\n<!-- this.otTitle=\"2016-今\"-->\n<!-- }else{-->\n<!-- this.otTitle=this.yearRadio2 +\"年\"-->\n<!-- }-->\n<!-- this.secretData = resp.data.secretData;-->\n<!-- this.secretData.forEach(item=>{-->\n<!-- if (item.name=='机密'){-->\n<!-- item.itemStyle= {-->\n<!-- color: \"rgba(235, 55, 86, 1)\"-->\n<!-- };-->\n<!-- }-->\n<!-- })-->\n<!-- this.countProject=this.secretData;-->\n<!-- if (this.countProject.length>0){-->\n<!-- this.countProject.forEach(item =>{-->\n<!-- const secName = item.name;-->\n<!-- let secLevel = \"\";-->\n<!-- if(secName){-->\n<!-- switch (secName) {-->\n<!-- case \"机密\":-->\n<!-- secLevel = \"1\";-->\n<!-- break;-->\n<!-- case \"秘密\":-->\n<!-- secLevel = \"2\";-->\n<!-- break;-->\n<!-- case \"内部\":-->\n<!-- secLevel = \"4\";-->\n<!-- break;-->\n<!-- case \"非密\":-->\n<!-- secLevel = \"3\";-->\n<!-- break;-->\n<!-- }-->\n<!-- }-->\n<!-- item.secLevel=secLevel;-->\n<!-- })-->\n<!-- }-->\n<!-- }-->\n<!-- );-->\n<!-- },-->\n<!-- getRight2(queryParams){-->\n<!-- right3Data(queryParams).then(-->\n<!-- resp=>{-->\n<!-- if(this.yearRadio2 =='2015'){-->\n<!-- this.otTitle=\"2016年以前\"-->\n<!-- }else if(this.yearRadio2 =='999'){-->\n<!-- this.otTitle=\"2016-今\"-->\n<!-- }else{-->\n<!-- this.otTitle=this.yearRadio2 +\"年\"-->\n<!-- }-->\n<!-- this.typelg = resp.data.legendData;-->\n<!-- this.typeData=resp.data.pieData;-->\n<!-- if (this.typeData.length>0){-->\n<!-- this.typeData.forEach(item=>{-->\n<!-- const typeName = item.name;-->\n<!-- let typeId = \"\";-->\n<!-- if(typeName){-->\n<!-- switch (typeName) {-->\n<!-- case \"重大\":-->\n<!-- typeId = \"1\";-->\n<!-- break;-->\n<!-- case \"重点\":-->\n<!-- typeId = \"2\";-->\n<!-- break;-->\n<!-- case \"学部重大\":-->\n<!-- typeId = \"17\";-->\n<!-- break;-->\n<!-- case \"学部重点\":-->\n<!-- typeId = \"19\";-->\n<!-- break;-->\n<!-- case \"高端智库\":-->\n<!-- typeId = \"6\";-->\n<!-- break;-->\n<!-- case \"行业院重点\":-->\n<!-- typeId = \"16\";-->\n<!-- break;-->\n<!-- case \"行业院重大\":-->\n<!-- typeId = \"18\";-->\n<!-- break;-->\n<!-- case \"其他\":-->\n<!-- typeId = \"999\";-->\n<!-- break;-->\n<!-- }-->\n<!-- }-->\n<!-- item.typeId=typeId;-->\n\n<!-- })-->\n\n<!-- }-->\n\n\n\n<!-- }-->\n<!-- );-->\n<!-- },-->\n<!-- getLeft3(queryParams){-->\n<!-- left7Data(queryParams).then(-->\n<!-- resp => {-->\n<!-- if(this.yearRadio2 =='2015'){-->\n<!-- this.otTitle=\"2016年以前\"-->\n<!-- }else if(this.yearRadio2 =='999'){-->\n<!-- this.otTitle=\"2016-今\"-->\n<!-- }else{-->\n<!-- this.otTitle=this.yearRadio2 +\"年\"-->\n<!-- }-->\n\n<!-- let temp = [];-->\n<!-- let item = {};-->\n<!-- item.name = '经费数';-->\n<!-- item.type='bar';-->\n<!-- item.barGap=\"-100%\";-->\n<!-- item.data=resp.data.yjfArray;-->\n<!-- temp.push(item);-->\n<!-- let item1 = {};-->\n<!-- item1.name = '实际经费';-->\n<!-- item1.type='bar';-->\n<!-- item1.yAxisIndex= 1;-->\n<!-- item1.barGap=\"-100%\";-->\n<!-- item1.data=resp.data.ySjjfArray;-->\n<!-- temp.push(item1);-->\n<!-- let item2 = {};-->\n<!-- item2.name = '项目数';-->\n<!-- item2.type='line';-->\n<!-- item2.yAxisIndex= 2;-->\n<!-- item2.data=resp.data.yNumArray;-->\n<!-- temp.push(item2);-->\n<!-- this.seriesCenter7 = temp;-->\n<!-- this.xAxisCenter7 = resp.data.xAxisArray;-->\n\n<!-- }-->\n<!-- );-->\n<!-- },-->\n<!-- getRight3(queryParams){-->\n<!-- left4Data(queryParams).then(-->\n<!-- resp=>{-->\n<!-- this.projectCount=[];-->\n<!-- if(this.yearRadio2 =='2015'){-->\n<!-- this.otTitle=\"2016年以前\"-->\n<!-- }else if(this.yearRadio2 =='999'){-->\n<!-- this.otTitle=\"2016-今\"-->\n<!-- }else{-->\n<!-- this.otTitle=this.yearRadio2 +\"年\"-->\n<!-- }-->\n<!-- this.pieLgData = resp.data.legendData;-->\n<!-- this.pieData=resp.data.pieData;-->\n\n<!-- // this.pieData.forEach(item=>{-->\n<!-- //-->\n<!-- // let obj=item.name;-->\n<!-- // let item2={}-->\n<!-- // item2.name=obj.value;-->\n<!-- // item2.value=item.value;-->\n<!-- // this.projectCount.push(item2)-->\n<!-- // })-->\n\n\n<!-- this.projectCount=this.pieData.length>2?this.pieData.slice(0,2):this.pieData;-->\n\n<!-- if (this.projectCount.length>0){-->\n<!-- this.projectCount.forEach(item=>{-->\n<!-- const deptName = item.name;-->\n<!-- let departmentId = \"\";-->\n<!-- if(deptName){-->\n<!-- switch (deptName) {-->\n<!-- case \"机械与运载工程学部\":-->\n<!-- departmentId = \"25\";-->\n<!-- break;-->\n<!-- case \"信息与电子工程学部\":-->\n<!-- departmentId = \"26\";-->\n<!-- break;-->\n<!-- case \"化工、冶金与材料工程学部\":-->\n<!-- departmentId = \"27\";-->\n<!-- break;-->\n<!-- case \"能源与矿业工程学部\":-->\n<!-- departmentId = \"28\";-->\n<!-- break;-->\n<!-- case \"土木、水利与建筑工程学部\":-->\n<!-- departmentId = \"29\";-->\n<!-- break;-->\n<!-- case \"环境与轻纺工程学部\":-->\n<!-- departmentId = \"30\";-->\n<!-- break;-->\n<!-- case \"农业学部\":-->\n<!-- departmentId = \"31\";-->\n<!-- break;-->\n<!-- case \"医药卫生学部\":-->\n<!-- departmentId = \"32\";-->\n<!-- break;-->\n<!-- case \"工程管理学部\":-->\n<!-- departmentId = \"33\";-->\n<!-- break;-->\n<!-- }-->\n<!-- }-->\n\n<!-- item.departmentId=departmentId;-->\n<!-- })-->\n<!-- }-->\n\n<!-- }-->\n<!-- );-->\n<!-- },-->\n<!-- getLeft4(queryParams){-->\n<!-- center8Data(queryParams).then(-->\n<!-- resp => {-->\n<!-- if(this.yearRadio2 =='2015'){-->\n<!-- this.otTitle=\"2016年以前\"-->\n<!-- }else if(this.yearRadio2 =='999'){-->\n<!-- this.otTitle=\"2016-今\"-->\n<!-- }else{-->\n<!-- this.otTitle=this.yearRadio2 +\"年\"-->\n<!-- }-->\n<!-- this.seriesCenter8 = resp.data.xAxisArray;-->\n<!-- this.xAxisCenter8 = resp.data.yAxisArray;-->\n<!-- let jjfeiArray=resp.data.jinfeiArray;-->\n<!-- this.academicianCount=[];-->\n<!-- for (let i = this.xAxisCenter8.length-1; i >=0 ; i&#45;&#45;) {-->\n<!-- if (i>=this.xAxisCenter8.length-3){-->\n<!-- let obj={}-->\n<!-- obj.name=this.xAxisCenter8[i];-->\n<!-- obj.value=this.seriesCenter8[i];-->\n<!-- obj.money=jjfeiArray[i];-->\n<!-- this.academicianCount.push(obj)-->\n<!-- }-->\n<!-- }-->\n<!-- }-->\n<!-- );-->\n<!-- },-->\n<!-- getRight4(queryParams){-->\n<!-- shituData8(queryParams).then(-->\n<!-- resp => {-->\n<!-- if(this.yearRadio2 =='2015'){-->\n<!-- this.otTitle=\"2016年以前\"-->\n<!-- }else if(this.yearRadio2 =='999'){-->\n<!-- this.otTitle=\"2016-今\"-->\n<!-- }else{-->\n<!-- this.otTitle=this.yearRadio2 +\"年\"-->\n<!-- }-->\n<!-- this.seriesCenter9 = resp.data.xAxisArray;-->\n<!-- this.xAxisCenter9 = resp.data.yAxisArray;-->\n\n\n<!-- this.jyArray=[{-->\n<!-- name:this.xAxisCenter9[this.xAxisCenter9.length-1],-->\n<!-- value:this.seriesCenter9[this.seriesCenter9.length-1]-->\n<!-- },-->\n<!-- {-->\n<!-- name:this.xAxisCenter9[this.xAxisCenter9.length-2],-->\n<!-- value:this.seriesCenter9[this.seriesCenter9.length-2]-->\n<!-- },-->\n\n<!-- {-->\n<!-- name:this.xAxisCenter9[this.xAxisCenter9.length-3],-->\n<!-- value:this.seriesCenter9[this.seriesCenter9.length-3]-->\n<!-- }-->\n<!-- ]-->\n\n<!-- }-->\n<!-- );-->\n<!-- },-->\n<!-- getLeft5(queryParams){-->\n<!-- var colorList = [[-->\n<!-- '#ff7f50', '#87cefa', '#da70d6', '#32cd32', '#6495ed',-->\n<!-- '#ff69b4', '#ba55d3', '#cd5c5c', '#ffa500', '#40e0d0',-->\n<!-- '#1e90ff', '#ff6347', '#7b68ee', '#d0648a', '#ffd700',-->\n<!-- '#6b8e23', '#4ea397', '#3cb371', '#b8860b', '#7bd9a5'-->\n<!-- ],-->\n<!-- [-->\n<!-- '#ff7f50', '#87cefa', '#da70d6', '#32cd32', '#6495ed',-->\n<!-- '#ff69b4', '#ba55d3', '#cd5c5c', '#ffa500', '#40e0d0',-->\n<!-- '#1e90ff', '#ff6347', '#7b68ee', '#00fa9a', '#ffd700',-->\n<!-- '#6b8e23', '#ff00ff', '#3cb371', '#b8860b', '#30e0e0'-->\n<!-- ],-->\n<!-- [-->\n<!-- '#929fff', '#9de0ff', '#ffa897', '#af87fe', '#7dc3fe',-->\n<!-- '#bb60b2', '#433e7c', '#f47a75', '#009db2', '#024b51',-->\n<!-- '#0780cf', '#765005', '#e75840', '#26ccd8', '#3685fe',-->\n<!-- '#9977ef', '#f5616f', '#f7b13f', '#f9e264', '#50c48f'-->\n<!-- ]][2];-->\n<!-- right6Data(queryParams).then(-->\n<!-- resp=>{-->\n<!-- if(this.yearRadio2 =='2015'){-->\n<!-- this.otTitle=\"2016年以前\"-->\n<!-- }else if(this.yearRadio2 =='999'){-->\n<!-- this.otTitle=\"2016-今\"-->\n<!-- }else{-->\n<!-- this.otTitle=this.yearRadio2 +\"年\"-->\n<!-- }-->\n<!-- const serData = resp.data.serData;-->\n<!-- let data = [];-->\n<!-- serData.forEach(s=>{-->\n<!-- let obj = {-->\n<!-- name:s[2],-->\n<!-- value:s[1],-->\n<!-- symbolSize:(s[1]+60),-->\n<!-- draggable:true,-->\n<!-- itemStyle: {-->\n<!-- normal: {-->\n<!-- shadowBlur: 100,-->\n<!-- shadowColor: colorList[s[0]],-->\n<!-- color: colorList[s[0]]-->\n<!-- }-->\n<!-- }-->\n<!-- };-->\n<!-- data.push(obj)-->\n<!-- });-->\n<!-- this.imKeyData=data-->\n\n\n<!-- this.imKeyData2=this.imKeyData.length>3?this.imKeyData.slice(0,3):this.imKeyData;-->\n<!-- }-->\n<!-- );-->\n<!-- },-->\n<!-- getLeft7(queryParams){-->\n<!-- left1Data(queryParams).then(-->\n<!-- resp=>{-->\n<!-- if(this.yearRadio2 =='2015'){-->\n<!-- this.blTitle=\"2016年以前\"-->\n<!-- }else{-->\n<!-- this.blTitle=\"2016-今\"-->\n<!-- }-->\n\n<!-- this.blLg = ['项目数', '经费数'];-->\n<!-- this.blX =resp.data.yearArray;-->\n<!-- let temp = [];-->\n<!-- let item = {};-->\n<!-- item.name = '项目数';-->\n<!-- item.type='bar';-->\n<!-- item.data=resp.data.numArray;-->\n<!-- temp.push(item);-->\n<!-- let item1 = {};-->\n<!-- item1.name = '经费数';-->\n<!-- item1.type='line';-->\n<!-- item1.yAxisIndex= 1;-->\n<!-- item1.data=resp.data.bugetArray;-->\n<!-- temp.push(item1);-->\n<!-- this.blSer=temp;-->\n<!-- // console.log(this.seriesCenter5)-->\n<!-- }-->\n<!-- );-->\n<!-- },-->\n<!-- next() {-->\n<!-- const temp = this.active;-->\n<!-- const index = this.leftMenu.findIndex((v) => {-->\n<!-- return v.type == temp;-->\n<!-- });-->\n<!-- this.active = this.leftMenu[index + 1].type;-->\n<!-- },-->\n<!-- back() {-->\n<!-- const temp = this.active;-->\n<!-- const index = this.leftMenu.findIndex((v) => {-->\n<!-- return v.type == temp;-->\n<!-- });-->\n<!-- this.active = this.leftMenu[index - 1].type;-->\n<!-- },-->\n<!-- getProjectCount(queryParams){-->\n<!-- countProject(queryParams).then(rsp=>{-->\n<!-- this.countProject=rsp.data-->\n\n<!-- })-->\n<!-- },-->\n<!-- searchToPage(){-->\n<!-- let yearRadio = this.yearRadio2;-->\n<!-- this.$router.push({path:\"/project/infoShow/query\",query:{yearRadio2:yearRadio}} );-->\n<!-- },-->\n<!-- toYearPage(year){-->\n<!-- this.$router.push({path:\"/project/infoShow/query\",query:{yearRadio2:year}} );-->\n<!-- },-->\n<!-- toSecPage(secLevel){-->\n<!-- let yearRadio = this.year;-->\n<!-- this.$router.push({path:\"/project/infoShow/query\",query:{secrecyLevel:secLevel,yearRadio2:yearRadio}} );-->\n<!-- },-->\n<!-- toTypePage(type){-->\n<!-- let yearRadio = this.year;-->\n<!-- this.$router.push({path:\"/project/infoShow/query\",query:{type:type,yearRadio2:yearRadio}} );-->\n<!-- },-->\n<!-- toDeptPage(departmentId){-->\n<!-- let yearRadio = this.yearRadio2;-->\n<!-- this.$router.push({path:\"/project/infoShow/query\",query:{departmentId:departmentId,yearRadio2:yearRadio}} );-->\n<!-- },-->\n<!-- toyituoUnitPage(unit){-->\n<!-- let yearRadio = this.year;-->\n<!-- this.$router.push({path:\"/project/infoShow/query\",query:{yituoUnit:unit,yearRadio2:yearRadio}} );-->\n\n<!-- },-->\n<!-- toUserNamePage(userName){-->\n<!-- let yearRadio = this.year;-->\n<!-- this.$router.push({path:\"/project/infoShow/query\",query:{userName:userName,yearRadio2:yearRadio}} );-->\n\n<!-- },-->\n<!-- toCirclePage(importKey){-->\n<!-- let yearRadio = this.yearRadio2;-->\n<!-- this.$router.push({path:\"/project/infoShow/query\",query:{importantKey:importKey,yearRadio2:yearRadio}} );-->\n\n<!-- },-->\n<!-- toMapPage(area){-->\n<!-- let yearRadio = this.year;-->\n<!-- this.$router.push({path:\"/project/infoShow/query\",query:{yituoArea:area,yearRadio2:yearRadio}} );-->\n\n<!-- },-->\n<!-- toStatusPage(year){-->\n<!-- let yearRadio = this.year;-->\n<!-- this.$router.push({path:\"/project/infoShow/adviseList\",query:{yearRadio2:year}} );-->\n\n<!-- },-->\n<!-- toUserPage(name){-->\n<!-- let yearRadio = this.year;-->\n<!-- this.$router.push({path:\"/project/infoShow/adviseList\",query:{userName:name}} );-->\n\n<!-- },-->\n<!-- },-->\n<!-- computed: {},-->\n<!-- watch: {},-->\n<!-- };-->\n<!--</script>-->\n<!--<style scoped lang=\"scss\">-->\n<!-- .flex /deep/ {-->\n<!-- display: flex;-->\n<!-- align-items: center;-->\n<!-- justify-content: center;-->\n<!-- .el-button {-->\n<!-- font-size: 18px;-->\n<!-- }-->\n<!-- }-->\n<!-- .flex1 {-->\n<!-- flex: 1;-->\n<!-- }-->\n<!-- .textR {-->\n<!-- text-align: right;-->\n<!-- }-->\n<!-- .left {-->\n<!-- width: 300px;-->\n<!-- font-size: 20px;-->\n<!-- font-weight: 700;-->\n<!-- .menu {-->\n<!-- line-height: 70px;-->\n<!-- .img {-->\n<!-- margin-right: 10px;-->\n<!-- border-radius: 50%;-->\n<!-- width: 50px;-->\n<!-- height: 50px;-->\n<!-- padding: 14px;-->\n<!-- background-color: rgb(124, 115, 115);-->\n<!-- line-height: 37px;-->\n<!-- box-sizing: border-box;-->\n<!-- .imgbgc {-->\n<!-- width: 100%;-->\n<!-- height: 100%;-->\n<!-- }-->\n<!-- .ztgk{-->\n<!-- background-image: url('../assets/image/ztgk.png') ;-->\n<!-- background-size: cover;-->\n<!-- margin: auto;-->\n<!-- }-->\n<!-- .xmfl{-->\n<!-- background-image: url('../assets/image/xmfl.png') ;-->\n<!-- background-size: cover;-->\n<!-- margin: auto;-->\n<!-- }-->\n<!-- .cddw{-->\n<!-- background-image: url('../assets/image/cddw.png') ;-->\n<!-- background-size: cover;-->\n<!-- margin: auto;-->\n<!-- }-->\n<!-- .qtys{-->\n<!-- background-image: url('../assets/image/qtys.png') ;-->\n<!-- background-size: cover;-->\n<!-- margin: auto;-->\n<!-- }-->\n<!-- .yjrd{-->\n<!-- background-image: url('../assets/image/yjrd.png') ;-->\n<!-- background-size: cover;-->\n<!-- margin: auto;-->\n<!-- }-->\n<!-- }-->\n<!-- }-->\n<!-- .active {-->\n<!-- background-color: rgba(24, 97, 233, 0.781);-->\n<!-- }-->\n<!-- }-->\n<!-- .right {-->\n<!-- height: calc(100vh - 100px);-->\n<!-- padding: 20px 60px;-->\n<!-- box-sizing: border-box;-->\n<!-- overflow-y: auto;-->\n<!-- .content {-->\n<!-- height: calc(100vh - 220px);-->\n<!-- overflow-y: auto;-->\n<!-- p {-->\n<!-- font-size: 34px;-->\n<!-- font-weight: 700;-->\n<!-- }-->\n<!-- }-->\n\n<!-- .font{-->\n\n<!-- font-size: 34px;-->\n<!-- font-weight: 700;-->\n<!-- }-->\n<!-- }-->\n<!--</style>-->\n<template>\n <div class=\"app-container circleButton\">\n <el-form\n :model=\"queryParams\"\n ref=\"queryForm\"\n v-show=\"showSearch\"\n label-width=\"100px\">\n <el-row>\n <el-col :span=\"8\">\n <el-form-item label-width=\"100\" prop=\"name\">\n\n <div style=\"float: left\">\n <span slot=\"label\" class=\"font\">咨询项目</span>\n </div>\n <el-input style=\"width:260px;margin-left:10px;margin-right: 10px\"\n v-model=\"queryParams.searchValue\"\n placeholder=\"请输入项目名称/项目编号\"\n clearable\n size=\"small\"\n @keyup.enter.native=\"handleQuery\"\n @blur=\"handleQuery\"\n />\n <el-button\n type=\"cyan\"\n icon=\"el-icon-search\"\n size=\"mini\"\n @click=\"handleNameQuery\">图表</el-button>\n </el-form-item>\n </el-col>\n <el-col :span=\"9\">\n <el-form-item label-width=\"100\" prop=\"userName\">\n <div style=\"float:left;\">\n <span slot=\"label\" class=\"font\">项目负责人</span>\n </div>\n <el-input style=\"width:260px;margin-left:10px;margin-right: 10px\"\n v-model=\"queryParams.userName\"\n placeholder=\"请输入负责人名称\"\n clearable\n size=\"small\"\n @keyup.enter.native=\"handleQuery\"\n @blur=\"handleQuery\"/>\n <el-button type=\"cyan\" icon=\"el-icon-search\" size=\"mini\" @click=\"handleUserNameQuery\">图表</el-button>\n <el-button icon=\"el-icon-refresh\" size=\"mini\" @click=\"resetQuery\">重置</el-button>\n </el-form-item>\n </el-col>\n\n </el-row>\n\n\n <el-form-item label-width=\"100\" prop=\"yearRadio2\">\n <div class=\"lab\">\n <span slot=\"label\" class=\"font\">项目年份</span>\n </div>\n <el-radio-group v-model=\"queryParams.yearRadio2\" @change=\"handleQuery\">\n <el-radio-button label=\"0\" border><span class=\"fontT\">全部</span></el-radio-button>\n <el-radio-button label=\"999\" border ><span class=\"fontT\">2016年至今</span></el-radio-button>\n\n <el-radio-button\n v-for=\"dict in yearOptions\"\n :key=\"dict\"\n :label=\"dict\"\n border\n ><span class=\"fontT\">{{ dict }}</span></el-radio-button\n >\n <el-radio-button label=\"2015\" border><span class=\"fontT\">2016年以前</span></el-radio-button>\n\n </el-radio-group>\n </el-form-item>\n <el-form-item label-width=\"100\" prop=\"secrecyLevel\" >\n <div class=\"lab\">\n <span slot=\"label\" class=\"font\">秘密级别</span>\n </div>\n <el-radio-group v-model=\"queryParams.secrecyLevel\" size=\"small\" @change=\"handleQuery\">\n <el-radio-button label=\"0\" border><span class=\"fontT\">全部</span></el-radio-button>\n <el-radio-button label=\"1\" border><span class=\"fontT\">机密</span></el-radio-button>\n <el-radio-button label=\"2\" border><span class=\"fontT\">秘密</span></el-radio-button>\n <el-radio-button label=\"4\" border><span class=\"fontT\">内部</span></el-radio-button>\n <el-radio-button label=\"3\" border><span class=\"fontT\">非密</span></el-radio-button>\n </el-radio-group>\n </el-form-item>\n <el-form-item label-width=\"100\" prop=\"departmentId\">\n <div class=\"lab\">\n <span slot=\"label\" class=\"font\">联系部门</span>\n </div>\n <el-radio-group v-model=\"queryParams.departmentId\" size=\"small\" @change=\"handleQuery\">\n <el-radio-button label=\"0\" border\n ><span class=\"fontT\">全部</span></el-radio-button>\n <el-radio-button label=\"25\" border\n ><span class=\"fontT\">机械学部</span></el-radio-button\n >\n <el-radio-button label=\"26\" border\n ><span class=\"fontT\">信息学部</span></el-radio-button\n >\n <el-radio-button label=\"27\" border\n ><span class=\"fontT\">化工学部</span></el-radio-button\n >\n <el-radio-button label=\"28\" border\n ><span class=\"fontT\">能源学部</span></el-radio-button\n >\n <el-radio-button label=\"29\" border\n ><span class=\"fontT\">土木学部</span></el-radio-button\n >\n <el-radio-button label=\"30\" border\n ><span class=\"fontT\">环境学部</span></el-radio-button\n >\n <el-radio-button label=\"31\" border><span class=\"fontT\">农业学部</span></el-radio-button>\n <el-radio-button label=\"32\" border><span class=\"fontT\">医药学部</span></el-radio-button>\n <el-radio-button label=\"33\" border><span class=\"fontT\">工管学部</span></el-radio-button>\n <el-radio-button label=\"149\" border><span class=\"fontT\">战略咨询中心</span></el-radio-button>\n <el-radio-button label=\"998\" border><span class=\"fontT\">行业研究院</span></el-radio-button>\n <el-radio-button label=\"999\" border><span class=\"fontT\">其他</span></el-radio-button>\n </el-radio-group>\n </el-form-item>\n <el-form-item label-width=\"100\" prop=\"type\">\n\n <div class=\"lab\">\n <span slot=\"label\" class=\"font\">项目类型</span>\n </div>\n <el-radio-group v-model=\"queryParams.type\" @change=\"handleQuery\">\n <el-radio-button label=\"0\" border ><span class=\"fontT\">全部</span></el-radio-button>\n <el-radio-button label=\"2\" border ><span class=\"fontT\">重点</span></el-radio-button>\n <el-radio-button label=\"1\" border><span class=\"fontT\">重大</span></el-radio-button>\n <el-radio-button label=\"17\" border><span class=\"fontT\">学部重大</span></el-radio-button>\n <el-radio-button label=\"19\" border><span class=\"fontT\">学部重点</span></el-radio-button>\n <el-radio-button label=\"18\" border><span class=\"fontT\">行业院重点</span></el-radio-button>\n <el-radio-button label=\"16\" border><span class=\"fontT\">行业院重大</span></el-radio-button>\n <el-radio-button label=\"6\" border><span class=\"fontT\">高端智库</span></el-radio-button>\n <el-radio-button label=\"999\" border><span class=\"fontT\">其他</span></el-radio-button>\n </el-radio-group>\n </el-form-item>\n\n\n </el-form>\n <h2 style=\"margin-left: 10%\">\n <span>项目数&nbsp;&nbsp;:&nbsp;&nbsp;<span style=\"color: red\">{{total}}</span></span>\n <span style=\"margin-left: 20px\">项目经费(万元):&nbsp;&nbsp;<span style=\"color: red\">{{zjf}}</span></span>\n </h2>\n <el-table\n v-loading=\"loading\"\n border\n :data=\"infoList\"\n @selection-change=\"handleSelectionChange\"\n @sort-change=\"sortChange\"\n >\n <el-table-column label=\"序号\" align=\"center\" type=\"index\" width=\"70\">\n\n <template slot-scope=\"scope\">\n {{scope.$index+1}}\n </template>\n </el-table-column>\n <el-table-column\n label=\"项目编号\"\n align=\"center\"\n width=\"180\"\n sortable=\"custom\"\n >\n <template slot-scope=\"scope\">\n <span >{{scope.row.code}}</span>\n <!-- <span @click=\"dialogFormVisible = true\">{{scope.row.code}}</span>-->\n </template>\n </el-table-column>\n <el-table-column\n label=\"项目名称\"\n align=\"center\"\n prop=\"name\"\n width=\"380\"\n sortable=\"custom\"\n />\n <el-table-column label=\"类型\" align=\"center\" prop=\"type\" width=\"110\" :formatter=\"typeFormat\" />\n <el-table-column\n label=\"密级\"\n align=\"center\"\n width=\"80\"\n prop=\"secrecyLevel\"\n :formatter=\"secretFormat\"\n />\n <el-table-column label=\"联系部门\" align=\"center\" prop=\"departmentName\" />\n <!-- <el-table-column label=\"项目联系部门\" align=\"center\" prop=\"departmentId\" />-->\n <el-table-column label=\"负责人\" align=\"center\" prop=\"userName\" width=\"110\" />\n\n <el-table-column\n label=\"经费\"\n align=\"center\"\n width=\"80\"\n prop=\"totalBudget\"\n />\n <el-table-column label=\"依托单位\" align=\"center\" prop=\"yituoUnit\" />\n <el-table-column\n label=\"状态\"\n align=\"center\"\n prop=\"status\"\n width=\"110\"\n :formatter=\"statusFormat\"\n />\n\n <el-table-column label=\"成果\" align=\"center\" :show-overflow-tooltip=\"true\" width=\"110\" >\n <!-- <template slot-scope=\"scope\" v-if=\"scope.row.annexName != null\">-->\n <template slot-scope=\"scope\" v-if=\"scope.row.resultFile != null &&scope.row.resultFile != '[]'\">\n <el-button\n size=\"mini\"\n type=\"text\"\n icon=\"el-icon-edit\"\n @click=\"viewAnnexBookFile(scope.row)\"\n >成果附件</el-button>\n </template>\n </el-table-column>\n </el-table>\n\n <pagination\n class=\"el-pagination__total\"\n\n v-show=\"total > 0\"\n :total=\"total\"\n :page.sync=\"queryParams.pageNum\"\n :limit.sync=\"queryParams.pageSize\"\n @pagination=\"getList\"\n />\n\n <!-- 用户导入对话框 -->\n <el-dialog\n :title=\"uploadProject.title\"\n :visible.sync=\"uploadProject.open\"\n width=\"400px\"\n append-to-body>\n <el-upload\n ref=\"uploadProject\"\n :limit=\"1\"\n accept=\".xls,.xlsx\"\n :headers=\"uploadProject.headers\"\n :action=\"\n uploadProject.url + '?updateSupport=' + uploadProject.updateSupport\n \"\n :disabled=\"uploadProject.isUploading\"\n :on-progress=\"handleProjectFileUploadProgress\"\n :on-success=\"handleProjectFileSuccess\"\n :before-upload=\"beforeProjectFileUpload\"\n :auto-upload=\"false\"\n drag>\n <i class=\"el-icon-upload\"></i>\n <div class=\"el-upload__text\">\n 将文件拖到此处,或\n <em>点击上传</em>\n </div>\n <div class=\"el-upload__tip\" slot=\"tip\">\n <!--<el-checkbox v-model=\"uploadProject.updateSupport\" />是否更新已经存在的用户数据-->\n <!--<el-link type=\"info\" style=\"font-size:12px\" @click=\"importTemplate\">下载模板</el-link>-->\n </div>\n <div class=\"el-upload__tip\" style=\"color: red\" slot=\"tip\">\n 提示:仅允许导入excel文件!\n </div>\n </el-upload>\n <div slot=\"footer\" class=\"dialog-footer\">\n <el-button type=\"primary\" @click=\"submitFileForm\">确 定</el-button>\n <el-button @click=\"uploadProject.open = false\">取 消</el-button>\n </div>\n </el-dialog>\n\n <el-dialog title=\"附件\" :visible.sync=\"upload.open\" width=\"400px\" append-to-body>\n <el-upload\n ref=\"upload\"\n disabled\n :action=\"upload.url\"\n :headers=\"upload.headers\"\n :file-list=\"upload.fileList\"\n :on-preview=\"handlePreview\"\n >\n </el-upload>\n <div slot=\"footer\" class=\"dialog-footer\">\n <el-button type=\"primary\" @click=\"upload.open = false\">关 闭</el-button>\n </div>\n </el-dialog>\n\n <el-dialog :modal=\"false\" title=\"项目查询\" :show-close=\"false\" :close-on-click-modal=\"false\" :visible=\"nameTuOpen\" width=\"600px\" class=\"rightDialog\" >\n <el-row>\n <el-col >\n <div class=\"chart-wrapper\" >\n <BarChart3 :xAxisDataLeft8=\"xAxisCenter8\" :otTitle=\"otTitle\" :seriesDataLeft8=\"seriesCenter8\" @userNamePage=\"toUserNamePage\"/>\n </div>\n </el-col>\n </el-row>\n <br/><br/>\n <el-row>\n <el-col >\n <div class=\"chart-wrapper\" >\n <BLYiTuoChart :xAxisDataLeft7=\"xAxisCenter7\" :otTitle=\"otTitle\" :seriesData1=\"seriesCenter7\" @yituoUnitPage=\"toyituoUnitPage\"/>\n </div>\n </el-col>\n </el-row>\n <div slot=\"footer\" class=\"dialog-footer\">\n <el-button type=\"primary\" @click=\"nameTuOpen = false\">关 闭</el-button>\n </div>\n </el-dialog>\n\n <el-dialog :modal=\"false\" title=\"项目负责人查询\" :show-close=\"false\" :close-on-click-modal=\"false\" :visible=\"userNameTuOpen\" width=\"600px\" class=\"rightDialog\" append-to-body>\n <el-row>\n <el-col>\n <h2 style=\"padding-left: 100px\">经费合计:</h2>\n <h1 style=\"text-align:center\">{{this.totalBuget}}万元</h1>\n </el-col>\n </el-row>\n <el-row>\n <el-col>\n <div class=\"chart-wrapper\" v-if=\"blSer.length\">\n <BarLineChart :blXData=\"blX\" :blLgData=\"blLg\" :otTitle=\"otTitle\" :blSerData=\"blSer\" @yearToPage=\"toYearPage\"/>\n </div>\n </el-col>\n </el-row>\n\n <div slot=\"footer\" class=\"dialog-footer\">\n <el-button type=\"primary\" @click=\"userNameTuOpen = false\">关 闭</el-button>\n </div>\n </el-dialog>\n\n <!-- Form -->\n\n\n <el-dialog title=\"项目详情\" :visible.sync=\"dialogFormVisible\">\n <el-form ref=\"form\" :model=\"formCounten\" :label-width=\"formLabelWidth\">\n <el-form-item label=\"项目名称\">\n <el-col :span=\"20\">\n <el-input v-model=\"formCounten.name\"></el-input>\n </el-col>\n </el-form-item>\n\n <el-col :span=\"9\">\n <el-form-item label=\"项目编号\" style=\"margin-top: 10px\">\n <el-input v-model=\"formCounten.name\"></el-input>\n </el-form-item>\n </el-col>\n <el-form-item label=\"类型\" style=\"margin-top: 10px;\">\n <el-col :span=\"9\" style=\"margin-left: 20px\">\n <el-input v-model=\"formCounten.name\"></el-input>\n </el-col>\n </el-form-item>\n\n <el-col :span=\"9\">\n <el-form-item label=\"联系部门\" style=\"margin-top: 10px\">\n <el-input v-model=\"formCounten.name\"></el-input>\n </el-form-item>\n </el-col>\n <el-form-item label=\"依托单位\" style=\"margin-top: 10px\">\n <el-col :span=\"9\" style=\"margin-left: 20px\">\n <el-input v-model=\"formCounten.name\"></el-input>\n </el-col>\n </el-form-item>\n\n <el-col :span=\"7\">\n <el-form-item label=\"负责人\" style=\"margin-top: 10px\">\n <el-input v-model=\"formCounten.name\"></el-input>\n </el-form-item>\n </el-col>\n\n <el-col :span=\"6\">\n <el-form-item label=\"项目经费\" style=\"margin-top: 10px\">\n <el-input v-model=\"formCounten.name\"></el-input>\n </el-form-item>\n </el-col>\n <el-form-item label=\"状态\" style=\"margin-top: 10px\">\n <el-col :span=\"5\">\n\n <el-input v-model=\"formCounten.name\"></el-input>\n\n </el-col>\n </el-form-item>\n\n <el-form-item label=\"密级\" style=\"margin-top: 10px\">\n <el-radio-group v-model=\"formCounten.resource\" style=\"font-size: 50px\">\n <el-radio label=\"1\" size=\"medium\"><span class=\"font\">秘密</span></el-radio>\n <el-radio label=\"2\" size=\"medium \"><span class=\"font\">机密</span></el-radio>\n <el-radio label=\"3\"><h2 class=\"font\">非密</h2 ></el-radio>\n <el-radio label=\"4\"><span class=\"font\">内部</span></el-radio>\n </el-radio-group>\n </el-form-item>\n\n </el-form>\n <div slot=\"footer\" class=\"dialog-footer\">\n <el-button @click=\"dialogFormVisible = false\">取 消</el-button>\n <el-button type=\"primary\" @click=\"dialogFormVisible = false\">确 定</el-button>\n </div>\n </el-dialog>\n </div>\n</template>\n\n<script>\n import {\n listInfo,\n getInfo,\n delInfo,\n addInfo,\n updateInfo,\n exportInfo,\n importTemplate,\n } from \"@/api/project/info2\";\n import { getToken } from \"@/utils/auth\";\n import BLYiTuoChart from \"./dashboard/BLYiTuoChart\";\n import BarChart3 from \"./dashboard/BarChart3\";\n import BarLineChart from \"./dashboard/BarLineChart\";\n import {totalBugetData,left1Data, left7Data,center8Data,left7Data2,statistics} from \"@/api/project/info3\";\n\n export default {\n name: \"Info\",\n components: {\n BLYiTuoChart,\n BarChart3,\n BarLineChart\n },\n data() {\n return {\n zjf:0,\n // 上传参数\n uploadProject: {\n // 是否显示弹出层(用户导入)\n open: false,\n // 弹出层标题(用户导入)\n title: \"\",\n // 是否禁用上传\n isUploading: false,\n // 是否更新已经存在的用户数据\n updateSupport: 0,\n // 设置上传的请求头部\n headers: { Authorization: \"Bearer \" + getToken() },\n // 上传的地址\n url: process.env.VUE_APP_BASE_API + \"/system/info/importData\",\n },\n // 上传参数\n upload: {\n title: \"\",\n open: false,\n // 是否禁用上传\n isUploading: false,\n // 设置上传的请求头部\n headers: { Authorization: \"Bearer \" + getToken() },\n // 上传的地址\n url: process.env.VUE_APP_BASE_API + \"/project/info/common/upload\",\n // 上传的文件列表\n fileList: [],\n },\n // 遮罩层\n loading: true,\n // 选中数组\n ids: [],\n // 非单个禁用\n single: true,\n // 非多个禁用\n multiple: true,\n // 显示搜索条件\n showSearch: true,\n // 总条数\n total: 0,\n // 【请填写功能名称】表格数据\n infoList: [],\n // 弹出层标题\n title: \"\",\n // 是否显示弹出层\n open: false,\n nameTuOpen:false,\n userNameTuOpen:false,\n totalBuget:null,\n dialogFormVisible:false,\n statusOptions: [],\n typeOptions: [],\n secretOptions: [],\n sourceOptions: [],\n categoryOptions: [],\n yesNoOptions: [],\n yearOptions: [],\n xAxisCenter8:[],\n seriesCenter8:[],\n xAxisCenter7:[],\n seriesCenter7:[],\n blX:[],\n blLg:[],\n blSer:[],\n otTitle:\"\",\n // 查询参数\n queryParams: {\n pageNum: 1,\n pageSize: 10,\n category: null,\n code: null,\n name: null,\n userName:null,\n type: null,\n departmentId: null,\n userId: null,\n deadline: null,\n totalOutlay: null,\n firstOutlay: null,\n secondOutlay: null,\n status: null,\n beginDate: null,\n completeDate: null,\n beginDateLX: null,\n completeDateLX: null,\n endDate: null,\n approvalDate: null,\n isSecrecy: null,\n secrecyLevel: null,\n secrecyTerm: null,\n isTopic: null,\n taskTarget: null,\n resultTarget: null,\n methodRoute: null,\n plan: null,\n spendExplain: null,\n relyId: null,\n lastDate: null,\n reviewStatusXb: null,\n reviewStatusCw: null,\n totalBudget: null,\n firstBudget: null,\n secondBudget: null,\n applyId: null,\n projectSource: null,\n projectSourceCompany: null,\n reviewStatusZwh: null,\n isAgreement: null,\n relyUnitHead: null,\n relyUnitHeadtocw: null,\n taskPeriod: null,\n otherplan: null,\n point: null,\n result: null,\n introduction: null,\n proprotion: null,\n term: null,\n pishiStatus: null,\n yearRadio2: null,\n proPeopName:null,\n yituoArea:null,\n isResult:null,\n importantKey:null,\n searchValue:null\n\n },\n // 表单参数\n form: {},\n // 表单校验\n rules: {},\n formCounten: {\n name: '',\n region: '',\n date1: '',\n date2: '',\n delivery: false,\n type: [],\n resource: '',\n desc: ''\n },\n formLabelWidth: '120px'\n\n };\n },\n created() {\n if(this.$route.query.yearRadio2 ){\n this.queryParams.yearRadio2 = this.$route.query.yearRadio2 ;\n }else{\n this.queryParams.yearRadio2 = \"0\" ;\n }\n\n if(this.$route.query.secrecyLevel){\n this.queryParams.secrecyLevel = this.$route.query.secrecyLevel;\n }else{\n this.queryParams.secrecyLevel = \"0\" ;\n }\n if(this.$route.query.type){\n this.queryParams.type = this.$route.query.type;\n }else{\n this.queryParams.type = \"0\" ;\n }\n if(this.$route.query.departmentId){\n this.queryParams.departmentId = this.$route.query.departmentId;\n }else{\n this.queryParams.departmentId = \"0\" ;\n }\n this.queryParams.yituoUnit = this.$route.query.yituoUnit;\n this.queryParams.userName = this.$route.query.userName;\n this.queryParams.importantKey = this.$route.query.importantKey;\n this.queryParams.yituoArea = this.$route.query.yituoArea;\n // this.queryParams.yearRadio = this.$route.query.yearRadio;\n //\n // this.queryParams.isResult = this.$route.query.isResult;\n // this.queryParams.status = this.$route.query.status;\n\n //\n\n //\n\n var date = new Date();\n var year = date.getFullYear();\n console.log(year, year - 1, year - 2);\n this.yearOptions[0] = year;\n this.yearOptions[1] = year - 1;\n this.yearOptions[2] = year - 2;\n this.yearOptions[3] = year - 3;\n this.yearOptions[4] = year - 4;\n this.yearOptions[5] = year - 5;\n this.getList();\n\n this.getDicts(\"pro_type\").then((response) => {\n this.typeOptions = response.data;\n });\n this.getDicts(\"pro_secret_level\").then((response) => {\n this.secretOptions = response.data;\n });\n this.getDicts(\"pro_source\").then((response) => {\n this.sourceOptions = response.data;\n });\n this.getDicts(\"pro_category\").then((response) => {\n this.categoryOptions = response.data;\n });\n this.getDicts(\"pro_status\").then((response) => {\n this.statusOptions = response.data;\n });\n this.getDicts(\"sys_yes_no\").then((response) => {\n this.yesNoOptions = response.data;\n });\n\n },\n methods: {\n sortChange(column, prop, order) {\n // console.log(column.prop); //prop标签 => nickname\n // console.log(column.order);//descending降序、ascending升序\n if (column.prop == \"category\") {\n this.queryParams.categoryOrder = \"1\";\n this.queryParams.codeOrder = \"\";\n this.queryParams.nameOrder = \"\";\n this.queryParams.typeOrder = \"\";\n this.queryParams.deadlineOrder = \"\";\n this.queryParams.totalOutlayOrder = \"\";\n this.queryParams.projectSourceOrder = \"\";\n } else if (column.prop == \"code\") {\n this.queryParams.categoryOrder = \"\";\n this.queryParams.codeOrder = \"1\";\n this.queryParams.nameOrder = \"\";\n this.queryParams.typeOrder = \"\";\n this.queryParams.deadlineOrder = \"\";\n this.queryParams.totalOutlayOrder = \"\";\n this.queryParams.projectSourceOrder = \"\";\n } else if (column.prop == \"name\") {\n this.queryParams.categoryOrder = \"\";\n this.queryParams.codeOrder = \"\";\n this.queryParams.nameOrder = \"1\";\n this.queryParams.typeOrder = \"\";\n this.queryParams.deadlineOrder = \"\";\n this.queryParams.totalOutlayOrder = \"\";\n this.queryParams.projectSourceOrder = \"\";\n } else if (column.prop == \"type\") {\n this.queryParams.categoryOrder = \"\";\n this.queryParams.codeOrder = \"\";\n this.queryParams.nameOrder = \"\";\n this.queryParams.typeOrder = \"1\";\n this.queryParams.deadlineOrder = \"\";\n this.queryParams.totalOutlayOrder = \"\";\n this.queryParams.projectSourceOrder = \"\";\n } else if (column.prop == \"deadline\") {\n this.queryParams.categoryOrder = \"\";\n this.queryParams.codeOrder = \"\";\n this.queryParams.nameOrder = \"\";\n this.queryParams.typeOrder = \"\";\n this.queryParams.deadlineOrder = \"1\";\n this.queryParams.totalOutlayOrder = \"\";\n this.queryParams.projectSourceOrder = \"\";\n } else if (column.prop == \"totalOutlay\") {\n this.queryParams.categoryOrder = \"\";\n this.queryParams.codeOrder = \"\";\n this.queryParams.nameOrder = \"\";\n this.queryParams.typeOrder = \"\";\n this.queryParams.deadlineOrder = \"\";\n this.queryParams.totalOutlayOrder = \"1\";\n this.queryParams.projectSourceOrder = \"\";\n } else if (column.prop == \"projectSource\") {\n this.queryParams.categoryOrder = \"\";\n this.queryParams.codeOrder = \"\";\n this.queryParams.nameOrder = \"\";\n this.queryParams.typeOrder = \"\";\n this.queryParams.deadlineOrder = \"\";\n this.queryParams.totalOutlayOrder = \"\";\n this.queryParams.projectSourceOrder = \"1\";\n }\n\n if (column.order == \"ascending\") {\n this.queryParams.orderSort = \"asc\";\n } else if (column.order == \"descending\") {\n this.queryParams.orderSort = \"desc\";\n }\n this.getList();\n },\n isTopicFormat(row, column) {\n return this.selectDictLabel(this.yesNoOptions, row.isTopic);\n },\n isSecrecyFormat(row, column) {\n return this.selectDictLabel(this.yesNoOptions, row.isSecrecy);\n },\n typeFormat(row, column) {\n return this.selectDictLabel(this.typeOptions, row.type);\n },\n secretFormat(row, column) {\n return this.selectDictLabel(this.secretOptions, row.secrecyLevel);\n },\n categoryFormat(row, column) {\n return this.selectDictLabel(this.categoryOptions, row.category);\n },\n statusFormat(row, column) {\n return this.selectDictLabel(this.statusOptions, row.status);\n },\n sourceFormat(row, column) {\n return this.selectDictLabel(this.sourceOptions, row.projectSource);\n },\n getStatistics(queryParams){\n\n statistics(queryParams).then(resp=>{\n this.zjf=resp.data.zjf;\n console.log(resp)\n console.log(this.zjf)\n });\n },\n /** 导入按钮操作 */\n handleImport() {\n this.uploadProject.title = \"项目导入\";\n this.uploadProject.open = true;\n },\n /** 查询【请填写功能名称】列表 */\n getList() {\n this.loading = true;\n console.log(this.queryParams.secrecyLevel ,\"---------------------\");\n listInfo(this.queryParams).then((response) => {\n this.infoList = response.rows;\n this.total = response.total;\n this.loading = false;\n });\n this.getStatistics(this.queryParams)\n },\n // 取消按钮\n cancel() {\n this.open = false;\n this.reset();\n },\n // 表单重置\n reset() {\n this.form = {\n id: null,\n category: null,\n code: null,\n name: null,\n type: null,\n departmentId: null,\n userId: null,\n deadline: null,\n totalOutlay: null,\n firstOutlay: null,\n secondOutlay: null,\n status: 0,\n beginDate: null,\n completeDate: null,\n endDate: null,\n approvalDate: null,\n isSecrecy: null,\n secrecyLevel: null,\n secrecyTerm: null,\n isTopic: null,\n taskTarget: null,\n resultTarget: null,\n methodRoute: null,\n plan: null,\n spendExplain: null,\n relyId: null,\n lastDate: null,\n reviewStatusXb: null,\n reviewStatusCw: null,\n totalBudget: null,\n firstBudget: null,\n secondBudget: null,\n applyId: null,\n projectSource: null,\n projectSourceCompany: null,\n reviewStatusZwh: null,\n isAgreement: null,\n relyUnitHead: null,\n relyUnitHeadtocw: null,\n taskPeriod: null,\n otherplan: null,\n point: null,\n result: null,\n introduction: null,\n proprotion: null,\n term: null,\n createBy: null,\n createTime: null,\n updateBy: null,\n updateTime: null,\n delFlag: null,\n };\n this.resetForm(\"form\");\n },\n async logout() {\n this.$confirm('确定注销并退出系统吗?', '提示', {\n confirmButtonText: '确定',\n cancelButtonText: '取消',\n type: 'warning'\n }).then(() => {\n this.$store.dispatch('LogOut').then(() => {\n location.href = '/index';\n })\n })\n },\n /** 搜索按钮操作 */\n handleQuery() {\n this.queryParams.pageNum = 1;\n this.getList();\n this.getLeft7(this.queryParams);\n this.getCenter8(this.queryParams);\n this.getLeft1(this.queryParams);\n },\n handleNameQuery(){\n this.nameTuOpen = true;\n this.queryParams.pageNum = 1;\n this.getList();\n this.getLeft7(this.queryParams);\n this.getCenter8(this.queryParams);\n },\n handleUserNameQuery(){\n this.userNameTuOpen = true;\n this.queryParams.pageNum = 1;\n this.getList();\n this.getTotalBuget(this.queryParams);\n this.getLeft1(this.queryParams);\n },\n getTotalBuget(queryParams){\n totalBugetData(queryParams).then(\n resp=>{\n // console.log(resp.data.totalBudget)\n this.totalBuget = resp.data.totalBudget\n }\n );\n },\n getLeft1(queryParams){\n left1Data(queryParams).then(\n resp=>{\n if(queryParams.yearRadio2 == '0'){\n this.otTitle = '2016-今'\n }\n else if(queryParams.yearRadio2 =='2015'){\n this.otTitle=\"2016年以前\"\n }else {\n this.otTitle=\"2016-今\"\n }\n this.blLg = ['项目数', '经费数'];\n this.blX =resp.data.yearArray;\n let temp = [];\n let item = {};\n item.name = '项目数';\n item.type='bar';\n item.data=resp.data.numArray;\n temp.push(item);\n let item1 = {};\n item1.name = '经费数';\n item1.type='line';\n item1.yAxisIndex= 1;\n item1.data=resp.data.bugetArray;\n temp.push(item1);\n this.blSer=temp;\n // console.log(this.seriesCenter5)\n }\n );\n },\n getLeft7(queryParams){\n left7Data(queryParams).then(\n resp => {\n\n if(queryParams.yearRadio2 == '0'){\n this.otTitle = \"至今\"\n }\n else if(queryParams.yearRadio2 =='2015'){\n this.otTitle=\"2016年以前\"\n }else if(queryParams.yearRadio2 =='999'){\n this.otTitle=\"2016-今\"\n }else{\n this.otTitle=queryParams.yearRadio2 +\"年\"\n }\n\n let temp = [];\n let item = {};\n item.name = '经费数';\n item.type='bar';\n item.barGap=\"-100%\";\n item.data=resp.data.yjfArray;\n temp.push(item);\n let item1 = {};\n item1.name = '实际经费';\n item1.type='bar';\n item1.yAxisIndex= 1;\n item1.barGap=\"-100%\";\n item1.data=resp.data.ySjjfArray;\n temp.push(item1);\n let item2 = {};\n item2.name = '项目数';\n item2.type='line';\n item2.yAxisIndex= 2;\n item2.data=resp.data.yNumArray;\n temp.push(item2);\n this.seriesCenter7 = temp;\n this.xAxisCenter7 = resp.data.xAxisArray;\n\n }\n );\n },\n getCenter8(queryParams){\n center8Data(queryParams).then(\n resp => {\n if(queryParams.yearRadio2 == '0'){\n this.otTitle = \"至今\"\n }\n else if(queryParams.yearRadio2 =='2015'){\n this.otTitle=\"2016年以前\"\n }else if(queryParams.yearRadio2 =='999'){\n this.otTitle=\"2016-今\"\n }else{\n this.otTitle=queryParams.yearRadio2 +\"年\"\n }\n this.seriesCenter8 = resp.data.xAxisArray;\n this.xAxisCenter8 = resp.data.yAxisArray;\n }\n );\n },\n toYearPage(year){\n // this.$router.push({path:\"/project/infoShow/query\",query:{yearRadio2:year}} );\n },\n toyituoUnitPage(unit){\n // let yearRadio = this.yearRadio2;\n // this.$router.push({path:\"/project/infoShow/query\",query:{yituoUnit:unit,yearRadio2:yearRadio}} );\n\n },\n\n toUserNamePage(userName){\n // let yearRadio = this.yearRadio2;\n // this.$router.push({path:\"/project/infoShow/query\",query:{userName:userName,yearRadio2:yearRadio}} );\n\n },\n /** 重置按钮操作 */\n resetQuery() {\n this.resetForm(\"queryForm\");\n this.queryParams.yearRadio2 = \"0\" ;\n this.queryParams.secrecyLevel = \"0\" ;\n this.queryParams.type = \"0\" ;\n this.queryParams.departmentId = \"0\" ;\n this.queryParams.searchValue=null;\n this.handleQuery();\n },\n // 多选框选中数据\n handleSelectionChange(selection) {\n this.ids = selection.map((item) => item.id);\n this.single = selection.length !== 1;\n this.multiple = !selection.length;\n },\n /** 新增按钮操作 */\n handleAdd() {\n this.reset();\n this.open = true;\n this.title = \"添加【请填写功能名称】\";\n },\n /** 修改按钮操作 */\n handleUpdate(row) {\n this.reset();\n const id = row.id || this.ids;\n getInfo(id).then((response) => {\n this.form = response.data;\n this.open = true;\n this.title = \"修改【请填写功能名称】\";\n });\n },\n /** 提交按钮 */\n submitForm() {\n this.$refs[\"form\"].validate((valid) => {\n if (valid) {\n if (this.form.id != null) {\n updateInfo(this.form).then((response) => {\n if (response.code === 200) {\n this.msgSuccess(\"修改成功\");\n this.open = false;\n this.getList();\n }\n });\n } else {\n addInfo(this.form).then((response) => {\n if (response.code === 200) {\n this.msgSuccess(\"新增成功\");\n this.open = false;\n this.getList();\n }\n });\n }\n }\n });\n },\n /** 删除按钮操作 */\n handleDelete(row) {\n const ids = row.id;\n this.$confirm(\n '是否确认删除项目编号为\"' + row.code + '\"的数据项?',\n \"警告\",\n {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\",\n }\n )\n .then(function () {\n return delInfo(ids);\n })\n .then(() => {\n this.getList();\n this.msgSuccess(\"删除成功\");\n })\n .catch(function () {});\n },\n /** 导出按钮操作 */\n handleExport() {\n const queryParams = this.queryParams;\n this.$confirm(\"是否确认导出所有【请填写功能名称】数据项?\", \"警告\", {\n confirmButtonText: \"确定\",\n cancelButtonText: \"取消\",\n type: \"warning\",\n })\n .then(function () {\n return exportInfo(queryParams);\n })\n .then((response) => {\n this.download(response.msg);\n })\n .catch(function () {});\n },\n // 文件上传中处理\n handleProjectFileUploadProgress(event, file, fileList) {\n this.uploadProject.isUploading = true;\n },\n beforeProjectFileUpload(file) {\n const isLt200M = file.size / 1024 / 1024 < 300;\n if (!isLt200M) {\n this.$message.error(\"上传大小不能超过 200MB!\");\n }\n return isLt200M;\n },\n // 文件上传成功处理\n handleProjectFileSuccess(response, file, fileList) {\n this.uploadProject.open = false;\n this.uploadProject.isUploading = false;\n this.$refs.uploadProject.clearFiles();\n this.$alert(response.msg, \"导入结果\", { dangerouslyUseHTMLString: true });\n this.getList();\n },\n // 提交上传文件\n submitFileForm() {\n this.$refs.uploadProject.submit();\n },\n importTemplate() {\n importTemplate().then((response) => {\n this.download(response.msg);\n });\n },\n viewAnnexBookFile(row){\n this.upload.fileList = [];\n this.formatUploadAnnex(row.resultFile,row.resultFilePath);\n this.upload.open = true;\n },\n //格式化上传附件\n formatUploadAnnex(annexName,annexPath){\n this.upload.fileList = [];\n if (annexPath != null && annexPath !== ''){\n let a = [],b = [];\n try {\n a = JSON.parse(annexName) ;\n b = JSON.parse(annexPath) ;\n }catch (e){\n a=[];\n b=[];\n }\n for (let i = 0;i<a.length;i++){\n this.upload.fileList.push({\n 'name':a[i],\n 'url':process.env.VUE_APP_BASE_API + b[i]\n })\n }\n }else {\n this.upload.fileList = [];\n }\n\n\n },\n handlePreview(file) {\n var a = document.createElement('a');\n var event = new MouseEvent('click');\n a.download = file.name;\n a.target = '_blank';\n a.href = file.url;\n a.dispatchEvent(event);\n console.log(file.name);\n },\n },\n };\n</script>\n<style lang=\"scss\" scoped>\n .circleButton {\n /deep/ .el-radio-button__inner {\n padding: 9px 10px;\n font-size: 20px;\n margin: 6px 10px;\n border: 1px;\n border-radius: 17px !important;\n /*background-color: #f2f1f5;*/\n }\n .el-form-item{\n margin-bottom: 0;\n }\n }\n .el-pagination__total{margin-right:10px;font-weight:400;font-size:20px;scolor:#606266}\n .rightDialog{\n right: 0;\n margin-right: 0;\n left:auto;\n }\n .font{\n font-size: 20px;\n font-weight: 700;\n }\n .lab{\n float: left;\n margin-top: 10px\n }\n .fontT{\n font-size: 20px;\n\n }\n</style>\n"],"sourceRoot":"src/views"}]}