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
108 KiB
1 lines
108 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\\project\\info2\\add.vue?vue&type=script&lang=js&","dependencies":[{"path":"F:\\workspace\\gcy\\RK-html\\RK-project\\ruoyi-ui\\src\\views\\project\\info2\\add.vue","mtime":1634007168282},{"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:InVzZSBzdHJpY3QiOwoKdmFyIF9pbnRlcm9wUmVxdWlyZURlZmF1bHQgPSByZXF1aXJlKCJGOi93b3Jrc3BhY2UvZ2N5L1JLLWh0bWwvUkstcHJvamVjdC9ydW95aS11aS9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9pbnRlcm9wUmVxdWlyZURlZmF1bHQiKS5kZWZhdWx0OwoKT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsICJfX2VzTW9kdWxlIiwgewogIHZhbHVlOiB0cnVlCn0pOwpleHBvcnRzLmRlZmF1bHQgPSB2b2lkIDA7CgpyZXF1aXJlKCJjb3JlLWpzL21vZHVsZXMvZXMuZnVuY3Rpb24ubmFtZS5qcyIpOwoKcmVxdWlyZSgiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LnNwbGljZS5qcyIpOwoKcmVxdWlyZSgiY29yZS1qcy9tb2R1bGVzL3dlYi5kb20tY29sbGVjdGlvbnMuZm9yLWVhY2guanMiKTsKCnJlcXVpcmUoImNvcmUtanMvbW9kdWxlcy9lcy5yZWdleHAuZXhlYy5qcyIpOwoKcmVxdWlyZSgiY29yZS1qcy9tb2R1bGVzL2VzLnN0cmluZy5yZXBsYWNlLmpzIik7Cgp2YXIgX2luZm8gPSByZXF1aXJlKCJAL2FwaS9wcm9qZWN0L2luZm8yIik7Cgp2YXIgX2luZGV4ID0gX2ludGVyb3BSZXF1aXJlRGVmYXVsdChyZXF1aXJlKCJAL3ZpZXdzL3Byb2plY3QvdG9waWMvaW5kZXgiKSk7Cgp2YXIgX2FkZCA9IF9pbnRlcm9wUmVxdWlyZURlZmF1bHQocmVxdWlyZSgiQC92aWV3cy9wcm9qZWN0L3RvcGljL2FkZCIpKTsKCnZhciBfaW5kZXgyID0gX2ludGVyb3BSZXF1aXJlRGVmYXVsdChyZXF1aXJlKCJAL3ZpZXdzL3Byb2plY3Qvc3ViamVjdC9pbmRleCIpKTsKCnZhciBfYWRkMiA9IF9pbnRlcm9wUmVxdWlyZURlZmF1bHQocmVxdWlyZSgiQC92aWV3cy9wcm9qZWN0L3N1YmplY3QvYWRkIikpOwoKdmFyIF9pbmRleDMgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KHJlcXVpcmUoIkAvdmlld3MvcHJvamVjdC9idWRnZXQvaW5kZXgiKSk7Cgp2YXIgX2FkZDMgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KHJlcXVpcmUoIkAvdmlld3MvcHJvamVjdC9idWRnZXQvYWRkIikpOwoKdmFyIF9pbmRleDQgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KHJlcXVpcmUoIkAvdmlld3MvcHJvamVjdC9wYXJ0aWNpcGFudHMvaW5kZXgiKSk7Cgp2YXIgX2FkZDQgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KHJlcXVpcmUoIkAvdmlld3MvcHJvamVjdC9wYXJ0aWNpcGFudHMvYWRkIikpOwoKdmFyIF9FZGl0b3IgPSBfaW50ZXJvcFJlcXVpcmVEZWZhdWx0KHJlcXVpcmUoIkAvY29tcG9uZW50cy9FZGl0b3IiKSk7Cgp2YXIgX2F1dGggPSByZXF1aXJlKCJAL3V0aWxzL2F1dGgiKTsKCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8v6K++6aKY5L+h5oGvCi8v6K++6aKY5paw5aKeCi8v6K++6aKY5L+h5oGvCi8v6K++6aKY5paw5aKeCi8v6K++6aKY5L+h5oGvCi8v6K++6aKY5paw5aKeCi8v5Lq65ZGY5L+h5oGvCi8v5Lq65ZGY5L+h5oGv5aKe5YqgCnZhciBfZGVmYXVsdCA9IHsKICBuYW1lOiAiSW5mbyIsCiAgY29tcG9uZW50czogewogICAgVG9waWNJbmZvOiBfaW5kZXguZGVmYXVsdCwKICAgIFRvcGljSW5mb0FkZDogX2FkZC5kZWZhdWx0LAogICAgU3ViamVjdEluZm86IF9pbmRleDIuZGVmYXVsdCwKICAgIFN1YmplY3RJbmZvSW5mb0FkZDogX2FkZDIuZGVmYXVsdCwKICAgIEJ1ZGdldEluZm86IF9pbmRleDMuZGVmYXVsdCwKICAgIEJ1ZGdldEluZm9BZGQ6IF9hZGQzLmRlZmF1bHQsCiAgICBQZW9wbGVJbmZvOiBfaW5kZXg0LmRlZmF1bHQsCiAgICBQZW9wbGVJbmZvQWRkOiBfYWRkNC5kZWZhdWx0LAogICAgRWRpdG9yOiBfRWRpdG9yLmRlZmF1bHQKICB9LAogIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7CiAgICByZXR1cm4gewogICAgICAvLyDkuIrkvKDlj4LmlbAKICAgICAgdXBsb2FkOiB7CiAgICAgICAgdGl0bGU6ICIiLAogICAgICAgIG9wZW46IGZhbHNlLAogICAgICAgIC8vIOaYr+WQpuemgeeUqOS4iuS8oAogICAgICAgIGlzVXBsb2FkaW5nOiBmYWxzZSwKICAgICAgICAvLyDorr7nva7kuIrkvKDnmoTor7fmsYLlpLTpg6gKICAgICAgICBoZWFkZXJzOiB7CiAgICAgICAgICBBdXRob3JpemF0aW9uOiAiQmVhcmVyICIgKyAoMCwgX2F1dGguZ2V0VG9rZW4pKCkKICAgICAgICB9LAogICAgICAgIC8vIOS4iuS8oOeahOWcsOWdgAogICAgICAgIHVybDogcHJvY2Vzcy5lbnYuVlVFX0FQUF9CQVNFX0FQSSArICIvc3lzdGVtL2luZm8vY29tbW9uL3VwbG9hZCIsCiAgICAgICAgLy8g5LiK5Lyg55qE5paH5Lu25YiX6KGoCiAgICAgICAgZmlsZUxpc3Q6IFtdCiAgICAgIH0sCiAgICAgIC8vIOS4iuS8oOWPguaVsAogICAgICB1cGxvYWQyOiB7CiAgICAgICAgdGl0bGU6ICIiLAogICAgICAgIG9wZW46IGZhbHNlLAogICAgICAgIC8vIOaYr+WQpuemgeeUqOS4iuS8oAogICAgICAgIGlzVXBsb2FkaW5nOiBmYWxzZSwKICAgICAgICAvLyDorr7nva7kuIrkvKDnmoTor7fmsYLlpLTpg6gKICAgICAgICBoZWFkZXJzOiB7CiAgICAgICAgICBBdXRob3JpemF0aW9uOiAiQmVhcmVyICIgKyAoMCwgX2F1dGguZ2V0VG9rZW4pKCkKICAgICAgICB9LAogICAgICAgIC8vIOS4iuS8oOeahOWcsOWdgAogICAgICAgIHVybDogcHJvY2Vzcy5lbnYuVlVFX0FQUF9CQVNFX0FQSSArICIvc3lzdGVtL2luZm8vY29tbW9uL3VwbG9hZCIsCiAgICAgICAgLy8g5LiK5Lyg55qE5paH5Lu25YiX6KGoCiAgICAgICAgZmlsZUxpc3Q6IFtdCiAgICAgIH0sCiAgICAgIC8vIOS4iuS8oOWPguaVsAogICAgICB1cGxvYWQzOiB7CiAgICAgICAgdGl0bGU6ICIiLAogICAgICAgIG9wZW46IGZhbHNlLAogICAgICAgIC8vIOaYr+WQpuemgeeUqOS4iuS8oAogICAgICAgIGlzVXBsb2FkaW5nOiBmYWxzZSwKICAgICAgICAvLyDorr7nva7kuIrkvKDnmoTor7fmsYLlpLTpg6gKICAgICAgICBoZWFkZXJzOiB7CiAgICAgICAgICBBdXRob3JpemF0aW9uOiAiQmVhcmVyICIgKyAoMCwgX2F1dGguZ2V0VG9rZW4pKCkKICAgICAgICB9LAogICAgICAgIC8vIOS4iuS8oOeahOWcsOWdgAogICAgICAgIHVybDogcHJvY2Vzcy5lbnYuVlVFX0FQUF9CQVNFX0FQSSArICIvc3lzdGVtL2luZm8vY29tbW9uL3VwbG9hZCIsCiAgICAgICAgLy8g5LiK5Lyg55qE5paH5Lu25YiX6KGoCiAgICAgICAgZmlsZUxpc3Q6IFtdCiAgICAgIH0sCiAgICAgIGFjdGl2ZU5hbWU6ICd0YWInLAogICAgICAvL+WxleW8gOmdouadvwogICAgICBhY3RpdmVOYW1lczogWycxJywgJzInLCAnMycsICc0JywgJzUnLCAnNicsICc3JywgJzgnXSwKICAgICAgdmlldzogIiIsCiAgICAgIC8vIOmBrue9qeWxggogICAgICBsb2FkaW5nOiB0cnVlLAogICAgICAvLyDpgInkuK3mlbDnu4QKICAgICAgaWRzOiBbXSwKICAgICAgLy8g6Z2e5Y2V5Liq56aB55SoCiAgICAgIHNpbmdsZTogdHJ1ZSwKICAgICAgLy8g6Z2e5aSa5Liq56aB55SoCiAgICAgIG11bHRpcGxlOiB0cnVlLAogICAgICAvLyDmmL7npLrmkJzntKLmnaHku7YKICAgICAgc2hvd1NlYXJjaDogdHJ1ZSwKICAgICAgLy8g5oC75p2h5pWwCiAgICAgIHRvdGFsOiAwLAogICAgICAvLyDjgJDor7floavlhpnlip/og73lkI3np7DjgJHooajmoLzmlbDmja4KICAgICAgaW5mb0xpc3Q6IFtdLAogICAgICAvLyDlvLnlh7rlsYLmoIfpopgKICAgICAgdGl0bGU6ICIiLAogICAgICAvLyDmmK/lkKbmmL7npLrlvLnlh7rlsYIKICAgICAgb3BlbjogZmFsc2UsCiAgICAgIC8vIGlzVG9waWM6MCwKICAgICAgaXNTdWJtaXQ6IGZhbHNlLAogICAgICB0b3BpY0Zvcm06IGZhbHNlLAogICAgICBidWRnZXRGb3JtOiBmYWxzZSwKICAgICAgcGVvcGxlRm9ybTogZmFsc2UsCiAgICAgIGVkaXRUb3BpY0lkOiAwLAogICAgICB0b3BpY1R5cGU6ICIiLAogICAgICB0b3BpY0lkOiAwLAogICAgICB0b3BpY0NvZGU6ICIiLAogICAgICBzdWJqZWN0Rm9ybTogZmFsc2UsCiAgICAgIHN1YmplY3RUeXBlOiAiIiwKICAgICAgZWRpdFN1YklkOiAwLAogICAgICBzdWJqZWN0SWQ6IDAsCiAgICAgIHN1YmplY3RDb2RlOiAiIiwKICAgICAgYnVkZ2V0VHlwZTogIiIsCiAgICAgIGVkaXRCdWRJZDogMCwKICAgICAgcGVvcGxlVHlwZTogIiIsCiAgICAgIHBlb3BsZUlkOiAwLAogICAgICAvL+mhueebruexu+WeiwogICAgICB0eXBlT3B0aW9uczogW10sCiAgICAgIHNlY3JldE9wdGlvbnM6IFtdLAogICAgICBzb3VyY2VPcHRpb25zOiBbXSwKICAgICAgY2F0ZWdvcnlPcHRpb25zOiBbXSwKICAgICAgc3RhdHVzT3B0aW9uczogW10sCiAgICAgIHllc05vT3B0aW9uczogW10sCiAgICAgIHBpc2hpU3RhdHVzT3B0aW9uczogW10sCiAgICAgIC8vIOafpeivouWPguaVsAogICAgICBxdWVyeVBhcmFtczogewogICAgICAgIHBhZ2VOdW06IDEsCiAgICAgICAgcGFnZVNpemU6IDEwLAogICAgICAgIGNhdGVnb3J5OiBudWxsLAogICAgICAgIGNvZGU6IG51bGwsCiAgICAgICAgbmFtZTogbnVsbCwKICAgICAgICB0eXBlOiBudWxsLAogICAgICAgIGRlcGFydG1lbnRJZDogbnVsbCwKICAgICAgICB1c2VySWQ6IG51bGwsCiAgICAgICAgZGVhZGxpbmU6IG51bGwsCiAgICAgICAgdG90YWxPdXRsYXk6IG51bGwsCiAgICAgICAgZmlyc3RPdXRsYXk6IG51bGwsCiAgICAgICAgc2Vjb25kT3V0bGF5OiBudWxsLAogICAgICAgIHN0YXR1czogbnVsbCwKICAgICAgICBiZWdpbkRhdGU6IG51bGwsCiAgICAgICAgY29tcGxldGVEYXRlOiBudWxsLAogICAgICAgIGVuZERhdGU6IG51bGwsCiAgICAgICAgYXBwcm92YWxEYXRlOiBudWxsLAogICAgICAgIGlzU2VjcmVjeTogbnVsbCwKICAgICAgICBzZWNyZWN5TGV2ZWw6IG51bGwsCiAgICAgICAgc2VjcmVjeVRlcm06IG51bGwsCiAgICAgICAgaXNUb3BpYzogbnVsbCwKICAgICAgICB0YXNrVGFyZ2V0OiBudWxsLAogICAgICAgIHJlc3VsdFRhcmdldDogbnVsbCwKICAgICAgICBtZXRob2RSb3V0ZTogbnVsbCwKICAgICAgICBwbGFuOiBudWxsLAogICAgICAgIHNwZW5kRXhwbGFpbjogbnVsbCwKICAgICAgICByZWx5SWQ6IG51bGwsCiAgICAgICAgbGFzdERhdGU6IG51bGwsCiAgICAgICAgcmV2aWV3U3RhdHVzWGI6IG51bGwsCiAgICAgICAgcmV2aWV3U3RhdHVzQ3c6IG51bGwsCiAgICAgICAgdG90YWxCdWRnZXQ6IG51bGwsCiAgICAgICAgZmlyc3RCdWRnZXQ6IG51bGwsCiAgICAgICAgc2Vjb25kQnVkZ2V0OiBudWxsLAogICAgICAgIGFwcGx5SWQ6IG51bGwsCiAgICAgICAgcHJvamVjdFNvdXJjZTogbnVsbCwKICAgICAgICBwcm9qZWN0U291cmNlQ29tcGFueTogbnVsbCwKICAgICAgICByZXZpZXdTdGF0dXNad2g6IG51bGwsCiAgICAgICAgaXNBZ3JlZW1lbnQ6IG51bGwsCiAgICAgICAgcmVseVVuaXRIZWFkOiBudWxsLAogICAgICAgIHJlbHlVbml0SGVhZHRvY3c6IG51bGwsCiAgICAgICAgdGFza1BlcmlvZDogbnVsbCwKICAgICAgICBvdGhlcnBsYW46IG51bGwsCiAgICAgICAgcG9pbnQ6IG51bGwsCiAgICAgICAgcmVzdWx0OiBudWxsLAogICAgICAgIGludHJvZHVjdGlvbjogbnVsbCwKICAgICAgICBwcm9wcm90aW9uOiBudWxsLAogICAgICAgIHRlcm06IG51bGwsCiAgICAgICAgYW5uZXhOYW1lOiBudWxsLAogICAgICAgIGFubmV4UGF0aDogbnVsbAogICAgICB9LAogICAgICAvLyDooajljZXlj4LmlbAKICAgICAgZm9ybToge30sCiAgICAgIC8vIOihqOWNleagoemqjAogICAgICBydWxlczogewogICAgICAgIGlzVG9waWM6IFt7CiAgICAgICAgICByZXF1aXJlZDogdHJ1ZSwKICAgICAgICAgIG1lc3NhZ2U6ICfor7fpgInmi6nkuIDpobknLAogICAgICAgICAgdHJpZ2dlcjogJ2JsdXInCiAgICAgICAgfV0KICAgICAgfQogICAgfTsKICB9LAogIHdhdGNoOiB7CiAgICAkcm91dGU6IGZ1bmN0aW9uICRyb3V0ZSgpIHsKICAgICAgLy8gY29uc29sZS5sb2codGhpcy4kcm91dGUpCiAgICAgIHRoaXMudmlldyA9IHRoaXMuJHJvdXRlLnF1ZXJ5LnZpZXc7CiAgICAgIHZhciBwcm9JZCA9IHRoaXMuJHJvdXRlLnF1ZXJ5LmlkOwoKICAgICAgaWYgKHRoaXMudmlldyAmJiB0aGlzLnZpZXcgPT0gImVkaXQiKSB7CiAgICAgICAgdGhpcy5mb3JtLmlkID0gcHJvSWQ7CiAgICAgICAgdGhpcy5pbml0KHByb0lkKTsKICAgICAgfSBlbHNlIHsKICAgICAgICB0aGlzLnJlc2V0KCk7CiAgICAgICAgdGhpcy51cGxvYWQuZmlsZUxpc3QgPSBbXTsKICAgICAgICB0aGlzLnVwbG9hZDIuZmlsZUxpc3QgPSBbXTsKICAgICAgICB0aGlzLnVwbG9hZDMuZmlsZUxpc3QgPSBbXTsKICAgICAgfQogICAgfQogIH0sCiAgY3JlYXRlZDogZnVuY3Rpb24gY3JlYXRlZCgpIHsKICAgIHZhciBfdGhpcyA9IHRoaXM7CgogICAgdGhpcy52aWV3ID0gdGhpcy4kcm91dGUucXVlcnkudmlldzsKICAgIHZhciBwcm9JZCA9IHRoaXMuJHJvdXRlLnF1ZXJ5LmlkOwoKICAgIGlmICh0aGlzLnZpZXcgJiYgdGhpcy52aWV3ID09ICJlZGl0IikgewogICAgICB0aGlzLmZvcm0uaWQgPSBwcm9JZDsKICAgICAgdGhpcy5pbml0KHByb0lkKTsKICAgIH0gZWxzZSB7CiAgICAgIHRoaXMucmVzZXQoKTsKICAgICAgdGhpcy51cGxvYWQuZmlsZUxpc3QgPSBbXTsKICAgICAgdGhpcy51cGxvYWQyLmZpbGVMaXN0ID0gW107CiAgICAgIHRoaXMudXBsb2FkMy5maWxlTGlzdCA9IFtdOwogICAgfQoKICAgIHRoaXMuZ2V0RGljdHMoInByb190eXBlIikudGhlbihmdW5jdGlvbiAocmVzcG9uc2UpIHsKICAgICAgX3RoaXMudHlwZU9wdGlvbnMgPSByZXNwb25zZS5kYXRhOwogICAgfSk7CiAgICB0aGlzLmdldERpY3RzKCJwcm9fc2VjcmV0X2xldmVsIikudGhlbihmdW5jdGlvbiAocmVzcG9uc2UpIHsKICAgICAgX3RoaXMuc2VjcmV0T3B0aW9ucyA9IHJlc3BvbnNlLmRhdGE7CiAgICB9KTsKICAgIHRoaXMuZ2V0RGljdHMoInByb19zb3VyY2UiKS50aGVuKGZ1bmN0aW9uIChyZXNwb25zZSkgewogICAgICBfdGhpcy5zb3VyY2VPcHRpb25zID0gcmVzcG9uc2UuZGF0YTsKICAgIH0pOwogICAgdGhpcy5nZXREaWN0cygicHJvX2NhdGVnb3J5IikudGhlbihmdW5jdGlvbiAocmVzcG9uc2UpIHsKICAgICAgX3RoaXMuY2F0ZWdvcnlPcHRpb25zID0gcmVzcG9uc2UuZGF0YTsKICAgIH0pOwogICAgdGhpcy5nZXREaWN0cygicHJvX3N0YXR1cyIpLnRoZW4oZnVuY3Rpb24gKHJlc3BvbnNlKSB7CiAgICAgIF90aGlzLnN0YXR1c09wdGlvbnMgPSByZXNwb25zZS5kYXRhOwogICAgfSk7CiAgICB0aGlzLmdldERpY3RzKCJzeXNfeWVzX25vIikudGhlbihmdW5jdGlvbiAocmVzcG9uc2UpIHsKICAgICAgX3RoaXMueWVzTm9PcHRpb25zID0gcmVzcG9uc2UuZGF0YTsKICAgIH0pOwogICAgdGhpcy5nZXREaWN0cygicHJvamVjdF9waXNoaSIpLnRoZW4oZnVuY3Rpb24gKHJlc3BvbnNlKSB7CiAgICAgIF90aGlzLnBpc2hpU3RhdHVzT3B0aW9ucyA9IHJlc3BvbnNlLmRhdGE7CiAgICB9KTsKICB9LAogIC8v6aG16Z2i6YCA5Ye65pe26ZSA5q+B5b2T5YmN6aG16Z2i6Ziy5q2i57yT5a2YCiAgZGVhY3RpdmF0ZWQ6IGZ1bmN0aW9uIGRlYWN0aXZhdGVkKCkgewogICAgdGhpcy4kZGVzdHJveSh0cnVlKTsKICB9LAogIG1ldGhvZHM6IHsKICAgIGluaXQ6IGZ1bmN0aW9uIGluaXQoaWQpIHsKICAgICAgdmFyIF90aGlzMiA9IHRoaXM7CgogICAgICAoMCwgX2luZm8uZ2V0SW5mbykoaWQpLnRoZW4oZnVuY3Rpb24gKHJlc3BvbnNlKSB7CiAgICAgICAgX3RoaXMyLmZvcm0gPSByZXNwb25zZS5kYXRhOwoKICAgICAgICBfdGhpczIuZm9ybWF0VXBsb2FkQW5uZXgoX3RoaXMyLmZvcm0uYW5uZXhOYW1lLCBfdGhpczIuZm9ybS5hbm5leFBhdGgpOwoKICAgICAgICBfdGhpczIuZm9ybWF0VXBsb2FkQW5uZXgyKF90aGlzMi5mb3JtLnJlc3VsdEZpbGUsIF90aGlzMi5mb3JtLnJlc3VsdEZpbGVQYXRoKTsKCiAgICAgICAgX3RoaXMyLmZvcm1hdFVwbG9hZEFubmV4MyhfdGhpczIuZm9ybS5ib29rRmlsZSwgX3RoaXMyLmZvcm0uYm9va0ZpbGVQYXRoKTsKICAgICAgfSk7CiAgICB9LAogICAgdHlwZUZvcm1hdDogZnVuY3Rpb24gdHlwZUZvcm1hdChyb3csIGNvbHVtbikgewogICAgICByZXR1cm4gdGhpcy5zZWxlY3REaWN0TGFiZWwodGhpcy50eXBlT3B0aW9ucywgcm93LnR5cGUpOwogICAgfSwKICAgIHNlY3JldEZvcm1hdDogZnVuY3Rpb24gc2VjcmV0Rm9ybWF0KHJvdywgY29sdW1uKSB7CiAgICAgIHJldHVybiB0aGlzLnNlbGVjdERpY3RMYWJlbCh0aGlzLnNlY3JldE9wdGlvbnMsIHJvdy5zZWNyZXRMZXZlbCk7CiAgICB9LAogICAgY2F0ZWdvcnlGb3JtYXQ6IGZ1bmN0aW9uIGNhdGVnb3J5Rm9ybWF0KHJvdywgY29sdW1uKSB7CiAgICAgIHJldHVybiB0aGlzLnNlbGVjdERpY3RMYWJlbCh0aGlzLmNhdGVnb3J5T3B0aW9ucywgcm93LmNhdGVnb3J5KTsKICAgIH0sCiAgICBzdGF0dXNGb3JtYXQ6IGZ1bmN0aW9uIHN0YXR1c0Zvcm1hdChyb3csIGNvbHVtbikgewogICAgICByZXR1cm4gdGhpcy5zZWxlY3REaWN0TGFiZWwodGhpcy5zdGF0dXNPcHRpb25zLCByb3cuc3RhdHVzKTsKICAgIH0sCiAgICBzb3VyY2VGb3JtYXQ6IGZ1bmN0aW9uIHNvdXJjZUZvcm1hdChyb3csIGNvbHVtbikgewogICAgICByZXR1cm4gdGhpcy5zZWxlY3REaWN0TGFiZWwodGhpcy5zb3VyY2VPcHRpb25zLCByb3cucHJvamVjdFNvdXJjZSk7CiAgICB9LAogICAgaGFuZGxlQ2xpY2s6IGZ1bmN0aW9uIGhhbmRsZUNsaWNrKHRhYiwgZXZlbnQpIHsKICAgICAgdGhpcy5hY3RpdmVOYW1lID0gdGFiLm5hbWU7CiAgICB9LAoKICAgIC8qKiDmn6Xor6LjgJDor7floavlhpnlip/og73lkI3np7DjgJHliJfooaggKi8KICAgIGdldExpc3Q6IGZ1bmN0aW9uIGdldExpc3QoKSB7CiAgICAgIHZhciBfdGhpczMgPSB0aGlzOwoKICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTsKICAgICAgKDAsIF9pbmZvLmxpc3RJbmZvKSh0aGlzLnF1ZXJ5UGFyYW1zKS50aGVuKGZ1bmN0aW9uIChyZXNwb25zZSkgewogICAgICAgIF90aGlzMy5pbmZvTGlzdCA9IHJlc3BvbnNlLnJvd3M7CiAgICAgICAgX3RoaXMzLnRvdGFsID0gcmVzcG9uc2UudG90YWw7CiAgICAgICAgX3RoaXMzLmxvYWRpbmcgPSBmYWxzZTsKICAgICAgfSk7CiAgICB9LAogICAgLy8g5Y+W5raI5oyJ6ZKuCiAgICBjYW5jZWw6IGZ1bmN0aW9uIGNhbmNlbCgpIHsKICAgICAgdGhpcy5vcGVuID0gZmFsc2U7CiAgICAgIHRoaXMucmVzZXQoKTsKICAgIH0sCiAgICAvLyDooajljZXph43nva4KICAgIHJlc2V0OiBmdW5jdGlvbiByZXNldCgpIHsKICAgICAgdGhpcy5mb3JtID0gewogICAgICAgIGlkOiBudWxsLAogICAgICAgIGNhdGVnb3J5OiBudWxsLAogICAgICAgIGNvZGU6IG51bGwsCiAgICAgICAgbmFtZTogbnVsbCwKICAgICAgICB0eXBlOiBudWxsLAogICAgICAgIGRlcGFydG1lbnRJZDogbnVsbCwKICAgICAgICB1c2VySWQ6IG51bGwsCiAgICAgICAgZGVhZGxpbmU6IG51bGwsCiAgICAgICAgdG90YWxPdXRsYXk6IG51bGwsCiAgICAgICAgZmlyc3RPdXRsYXk6IG51bGwsCiAgICAgICAgc2Vjb25kT3V0bGF5OiBudWxsLAogICAgICAgIHN0YXR1czogbnVsbCwKICAgICAgICBiZWdpbkRhdGU6IG51bGwsCiAgICAgICAgY29tcGxldGVEYXRlOiBudWxsLAogICAgICAgIGVuZERhdGU6IG51bGwsCiAgICAgICAgYXBwcm92YWxEYXRlOiBudWxsLAogICAgICAgIGlzU2VjcmVjeTogbnVsbCwKICAgICAgICBzZWNyZWN5TGV2ZWw6IG51bGwsCiAgICAgICAgc2VjcmVjeVRlcm06IG51bGwsCiAgICAgICAgaXNUb3BpYzogbnVsbCwKICAgICAgICB0YXNrVGFyZ2V0OiBudWxsLAogICAgICAgIHJlc3VsdFRhcmdldDogbnVsbCwKICAgICAgICBtZXRob2RSb3V0ZTogbnVsbCwKICAgICAgICBwbGFuOiBudWxsLAogICAgICAgIHNwZW5kRXhwbGFpbjogbnVsbCwKICAgICAgICByZWx5SWQ6IG51bGwsCiAgICAgICAgbGFzdERhdGU6IG51bGwsCiAgICAgICAgcmV2aWV3U3RhdHVzWGI6IG51bGwsCiAgICAgICAgcmV2aWV3U3RhdHVzQ3c6IG51bGwsCiAgICAgICAgdG90YWxCdWRnZXQ6IG51bGwsCiAgICAgICAgZmlyc3RCdWRnZXQ6IG51bGwsCiAgICAgICAgc2Vjb25kQnVkZ2V0OiBudWxsLAogICAgICAgIGFwcGx5SWQ6IG51bGwsCiAgICAgICAgcHJvamVjdFNvdXJjZTogbnVsbCwKICAgICAgICBwcm9qZWN0U291cmNlQ29tcGFueTogbnVsbCwKICAgICAgICByZXZpZXdTdGF0dXNad2g6IG51bGwsCiAgICAgICAgaXNBZ3JlZW1lbnQ6IG51bGwsCiAgICAgICAgcmVseVVuaXRIZWFkOiBudWxsLAogICAgICAgIHJlbHlVbml0SGVhZHRvY3c6IG51bGwsCiAgICAgICAgdGFza1BlcmlvZDogbnVsbCwKICAgICAgICBvdGhlcnBsYW46IG51bGwsCiAgICAgICAgcG9pbnQ6IG51bGwsCiAgICAgICAgcmVzdWx0OiBudWxsLAogICAgICAgIGludHJvZHVjdGlvbjogbnVsbCwKICAgICAgICBwcm9wcm90aW9uOiBudWxsLAogICAgICAgIHRlcm06IG51bGwsCiAgICAgICAgY3JlYXRlQnk6IG51bGwsCiAgICAgICAgY3JlYXRlVGltZTogbnVsbCwKICAgICAgICB1cGRhdGVCeTogbnVsbCwKICAgICAgICB1cGRhdGVUaW1lOiBudWxsLAogICAgICAgIGRlbEZsYWc6IG51bGwsCiAgICAgICAgYW5uZXhOYW1lOiBudWxsLAogICAgICAgIGFubmV4UGF0aDogbnVsbCwKICAgICAgICByZXN1bHRGaWxlOiBudWxsLAogICAgICAgIHJlc3VsdEZpbGVQYXRoOiBudWxsLAogICAgICAgIGJvb2tGaWxlOiBudWxsLAogICAgICAgIGJvb2tGaWxlUGF0aDogbnVsbAogICAgICB9OwogICAgICB0aGlzLnJlc2V0Rm9ybSgiZm9ybSIpOwogICAgfSwKCiAgICAvKiog5pCc57Si5oyJ6ZKu5pON5L2cICovCiAgICBoYW5kbGVRdWVyeTogZnVuY3Rpb24gaGFuZGxlUXVlcnkoKSB7CiAgICAgIHRoaXMucXVlcnlQYXJhbXMucGFnZU51bSA9IDE7CiAgICAgIHRoaXMuZ2V0TGlzdCgpOwogICAgfSwKCiAgICAvKiog6YeN572u5oyJ6ZKu5pON5L2cICovCiAgICByZXNldFF1ZXJ5OiBmdW5jdGlvbiByZXNldFF1ZXJ5KCkgewogICAgICB0aGlzLnJlc2V0Rm9ybSgicXVlcnlGb3JtIik7CiAgICAgIHRoaXMuaGFuZGxlUXVlcnkoKTsKICAgIH0sCgogICAgLyoqIOaWsOWinuaMiemSruaTjeS9nCAqLwogICAgaGFuZGxlQWRkOiBmdW5jdGlvbiBoYW5kbGVBZGQoKSB7CiAgICAgIHRoaXMucmVzZXQoKTsKICAgICAgdGhpcy5vcGVuID0gdHJ1ZTsKICAgICAgdGhpcy50aXRsZSA9ICLmt7vliqDjgJDor7floavlhpnlip/og73lkI3np7DjgJEiOwogICAgfSwKCiAgICAvKiog5L+u5pS55oyJ6ZKu5pON5L2cICovCiAgICBoYW5kbGVVcGRhdGU6IGZ1bmN0aW9uIGhhbmRsZVVwZGF0ZShyb3cpIHsKICAgICAgdmFyIF90aGlzNCA9IHRoaXM7CgogICAgICB0aGlzLnJlc2V0KCk7CiAgICAgIHZhciBpZCA9IHJvdy5pZCB8fCB0aGlzLmlkczsKICAgICAgKDAsIF9pbmZvLmdldEluZm8pKGlkKS50aGVuKGZ1bmN0aW9uIChyZXNwb25zZSkgewogICAgICAgIF90aGlzNC5mb3JtID0gcmVzcG9uc2UuZGF0YTsKICAgICAgICBfdGhpczQub3BlbiA9IHRydWU7CiAgICAgICAgX3RoaXM0LnRpdGxlID0gIuS/ruaUueOAkOivt+Whq+WGmeWKn+iDveWQjeensOOAkSI7CiAgICAgIH0pOwogICAgfSwKCiAgICAvKiog5o+Q5Lqk5oyJ6ZKuICovCiAgICBzdWJtaXRGb3JtOiBmdW5jdGlvbiBzdWJtaXRGb3JtKCkgewogICAgICB2YXIgX3RoaXM1ID0gdGhpczsKCiAgICAgIHRoaXMuJHJlZnNbImZvcm0iXS52YWxpZGF0ZShmdW5jdGlvbiAodmFsaWQpIHsKICAgICAgICBpZiAodmFsaWQpIHsKICAgICAgICAgIGlmIChfdGhpczUuZm9ybS5pZCAhPSBudWxsKSB7CiAgICAgICAgICAgICgwLCBfaW5mby51cGRhdGVJbmZvKShfdGhpczUuZm9ybSkudGhlbihmdW5jdGlvbiAocmVzcG9uc2UpIHsKICAgICAgICAgICAgICBpZiAocmVzcG9uc2UuY29kZSA9PT0gMjAwKSB7CiAgICAgICAgICAgICAgICBfdGhpczUubXNnU3VjY2Vzcygi5L+u5pS55oiQ5YqfIik7CgogICAgICAgICAgICAgICAgX3RoaXM1Lm9wZW4gPSBmYWxzZTsgLy8gdGhpcy5nZXRMaXN0KCk7CgogICAgICAgICAgICAgICAgX3RoaXM1LmlzU3VibWl0ID0gdHJ1ZTsKICAgICAgICAgICAgICAgIF90aGlzNS5mb3JtID0gcmVzcG9uc2UuZGF0YTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgKDAsIF9pbmZvLmFkZEluZm8pKF90aGlzNS5mb3JtKS50aGVuKGZ1bmN0aW9uIChyZXNwb25zZSkgewogICAgICAgICAgICAgIGlmIChyZXNwb25zZS5jb2RlID09PSAyMDApIHsKICAgICAgICAgICAgICAgIF90aGlzNS5tc2dTdWNjZXNzKCLmlrDlop7miJDlip8iKTsKCiAgICAgICAgICAgICAgICBfdGhpczUub3BlbiA9IGZhbHNlOyAvLyB0aGlzLmdldExpc3QoKTsKCiAgICAgICAgICAgICAgICBfdGhpczUuaXNTdWJtaXQgPSB0cnVlOwogICAgICAgICAgICAgICAgX3RoaXM1LmZvcm0gPSByZXNwb25zZS5kYXRhOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9KTsKICAgIH0sCiAgICBhZGRUb3BpYzogZnVuY3Rpb24gYWRkVG9waWMoKSB7CiAgICAgIGNvbnNvbGUubG9nKHRoaXMuZm9ybS5pZCk7CiAgICAgIHRoaXMudG9waWNGb3JtID0gdHJ1ZTsKICAgICAgdGhpcy5hY3RpdmVOYW1lID0gInRhYjIiOwogICAgICB0aGlzLnRvcGljVHlwZSA9ICdhZGQnOwogICAgICB0aGlzLmVkaXRUb3BpY0lkID0gJzAnOwogICAgfSwKICAgIGFkZEJ1ZGdldDogZnVuY3Rpb24gYWRkQnVkZ2V0KCkgewogICAgICB0aGlzLmJ1ZGdldEZvcm0gPSB0cnVlOwogICAgICB0aGlzLmFjdGl2ZU5hbWUgPSAidGFiNiI7CiAgICAgIHRoaXMuYnVkZ2V0VHlwZSA9ICdhZGQnOwogICAgICB0aGlzLmVkaXRCdWRJZCA9ICcwJzsKICAgIH0sCiAgICBhZGRQZW9wbGU6IGZ1bmN0aW9uIGFkZFBlb3BsZSgpIHsKICAgICAgdGhpcy5wZW9wbGVGb3JtID0gdHJ1ZTsKICAgICAgdGhpcy5hY3RpdmVOYW1lID0gInRhYjgiOwogICAgICB0aGlzLnBlb3BsZVR5cGUgPSAnYWRkJzsKICAgICAgdGhpcy5wZW9wbGVJZCA9IDA7CiAgICB9LAogICAgYWRkUGVvcGxlSW5mb0Zvcm06IGZ1bmN0aW9uIGFkZFBlb3BsZUluZm9Gb3JtKHR5cGUsIGlkKSB7CiAgICAgIC8vICAgICAgY29uc29sZS5sb2codHlwZSxpZCkKICAgICAgdGhpcy5wZW9wbGVUeXBlID0gdHlwZTsKICAgICAgdGhpcy5wZW9wbGVJZCA9IGlkOwogICAgICB0aGlzLnBlb3BsZUZvcm0gPSB0cnVlOwogICAgICB0aGlzLmFjdGl2ZU5hbWUgPSAidGFiOCI7CiAgICB9LAogICAgYWRkVG9waWNJbmZvOiBmdW5jdGlvbiBhZGRUb3BpY0luZm8odHlwZSwgdG9waWNJZCkgewogICAgICAvLyAgICAgIGNvbnNvbGUubG9nKCJ0YWIyIikKICAgICAgdGhpcy50b3BpY1R5cGUgPSB0eXBlOwogICAgICB0aGlzLnRvcGljRm9ybSA9IHRydWU7CiAgICAgIHRoaXMuZWRpdFRvcGljSWQgPSB0b3BpY0lkOwogICAgICB0aGlzLmFjdGl2ZU5hbWUgPSAidGFiMiI7CiAgICB9LAogICAgYWRkU3ViamVjdDogZnVuY3Rpb24gYWRkU3ViamVjdCh0YWIsIHRvcGljSWQsIHRvcGljQ29kZSkgewogICAgICBjb25zb2xlLmxvZyh0YWIgKyAiLS0iICsgdG9waWNJZCArICItLSIgKyB0b3BpY0NvZGUpOwoKICAgICAgaWYgKHRvcGljSWQpIHsKICAgICAgICB0aGlzLnRvcGljSWQgPSB0b3BpY0lkOwogICAgICAgIHRoaXMudG9waWNDb2RlID0gdG9waWNDb2RlOwogICAgICAgIHRoaXMuc3ViamVjdEZvcm0gPSB0cnVlOwogICAgICAgIHRoaXMuc3ViamVjdFR5cGUgPSAiYWRkIjsKICAgICAgfQoKICAgICAgdGhpcy5hY3RpdmVOYW1lID0gInRhYjQiOwogICAgfSwKICAgIGVkaXRTdWJqZWN0OiBmdW5jdGlvbiBlZGl0U3ViamVjdCh0YWIsIHR5cGUsIGVkaXRJZCwgdG9waWNJZCwgdG9waWNDb2RlKSB7CiAgICAgIGlmICh0eXBlID09ICdlZGl0JyAmJiBlZGl0SWQpIHsKICAgICAgICB0aGlzLnRvcGljSWQgPSB0b3BpY0lkOwogICAgICAgIHRoaXMudG9waWNDb2RlID0gdG9waWNDb2RlOwogICAgICAgIHRoaXMuc3ViamVjdEZvcm0gPSB0cnVlOwogICAgICAgIHRoaXMuc3ViamVjdFR5cGUgPSAiZWRpdCI7CiAgICAgICAgdGhpcy5lZGl0U3ViSWQgPSBlZGl0SWQ7CiAgICAgIH0KCiAgICAgIHRoaXMuYWN0aXZlTmFtZSA9ICJ0YWI0IjsKICAgIH0sCiAgICBhZGRCdWRnZXRGb3JtOiBmdW5jdGlvbiBhZGRCdWRnZXRGb3JtKHR5cGUsIGJ1ZGdldElkKSB7CiAgICAgIHRoaXMuYnVkZ2V0VHlwZSA9IHR5cGU7CiAgICAgIHRoaXMuZWRpdEJ1ZElkID0gYnVkZ2V0SWQ7CiAgICAgIHRoaXMuYnVkZ2V0Rm9ybSA9IHRydWU7CiAgICAgIHRoaXMuYWN0aXZlTmFtZSA9ICJ0YWI2IjsKICAgIH0sCiAgICBhZGRTdWJqZWN0RnJvbVRvcGljOiBmdW5jdGlvbiBhZGRTdWJqZWN0RnJvbVRvcGljKHRhYiwgdG9waWNJZCwgdG9waWNDb2RlKSB7CiAgICAgIGNvbnNvbGUubG9nKCJ0YWIxIiwgdGFiLCB0b3BpY0lkLCB0b3BpY0NvZGUpOwoKICAgICAgaWYgKHRvcGljSWQgIT0gMCkgewogICAgICAgIHRoaXMudG9waWNJZCA9IHRvcGljSWQ7CiAgICAgICAgdGhpcy50b3BpY0NvZGUgPSB0b3BpY0NvZGU7CiAgICAgICAgdGhpcy5zdWJqZWN0Rm9ybSA9IHRydWU7CiAgICAgICAgdGhpcy5hY3RpdmVOYW1lID0gdGFiOwogICAgICAgIHRoaXMuZWRpdFN1YklkID0gJzAnOwogICAgICAgIHRoaXMuc3ViamVjdFR5cGUgPSAnYWRkJzsKICAgICAgfQogICAgfSwKICAgIHRvcGljQWRkQnVkZ2V0OiBmdW5jdGlvbiB0b3BpY0FkZEJ1ZGdldCh0YWIsIHRvcGljSWQsIHRvcGljQ29kZSkgewogICAgICBjb25zb2xlLmxvZygidGFiMSIsIHRhYiwgdG9waWNJZCwgdG9waWNDb2RlKTsKCiAgICAgIGlmICh0b3BpY0lkICE9IDApIHsKICAgICAgICB0aGlzLnRvcGljSWQgPSB0b3BpY0lkOwogICAgICAgIHRoaXMudG9waWNDb2RlID0gdG9waWNDb2RlOwogICAgICB9CgogICAgICB0aGlzLmJ1ZGdldEZvcm0gPSB0cnVlOwogICAgICB0aGlzLmFjdGl2ZU5hbWUgPSB0YWI7CiAgICAgIHRoaXMuYnVkZ2V0VHlwZSA9ICdhZGQnOwogICAgICB0aGlzLmVkaXRCdWRJZCA9ICcwJzsKICAgIH0sCiAgICB0b3BpY0FkZFBlb3BsZTogZnVuY3Rpb24gdG9waWNBZGRQZW9wbGUodGFiLCB0b3BpY0lkLCB0b3BpY0NvZGUpIHsKICAgICAgaWYgKHRvcGljSWQgIT0gMCkgewogICAgICAgIHRoaXMudG9waWNJZCA9IHRvcGljSWQ7CiAgICAgICAgdGhpcy50b3BpY0NvZGUgPSB0b3BpY0NvZGU7CiAgICAgIH0KCiAgICAgIHRoaXMucGVvcGxlVHlwZSA9ICdhZGQnOwogICAgICB0aGlzLnBlb3BsZUlkID0gMDsKICAgICAgdGhpcy5wZW9wbGVGb3JtID0gdHJ1ZTsKICAgICAgdGhpcy5hY3RpdmVOYW1lID0gdGFiOwogICAgfSwKICAgIHN1YmplY3RMaXN0OiBmdW5jdGlvbiBzdWJqZWN0TGlzdCh0YWIsIHN1YmplY3RJZCwgc3ViamVjdENvZGUpIHsKICAgICAgdGhpcy5idWRnZXRUeXBlID0gJ2FkZCc7CiAgICAgIHRoaXMuZWRpdEJ1ZElkID0gJzAnOwogICAgICB0aGlzLmJ1ZGdldEZvcm0gPSB0cnVlOwogICAgICB0aGlzLnN1YmplY3RJZCA9IHN1YmplY3RJZDsKICAgICAgdGhpcy5zdWJqZWN0Q29kZSA9IHN1YmplY3RDb2RlOwogICAgICB0aGlzLmFjdGl2ZU5hbWUgPSB0YWI7CiAgICB9LAogICAgc3ViamVjdEFkZFBlb3BsZTogZnVuY3Rpb24gc3ViamVjdEFkZFBlb3BsZSh0YWIsIHN1YmplY3RJZCwgc3ViamVjdENvZGUpIHsKICAgICAgdGhpcy5wZW9wbGVUeXBlID0gJ2FkZCc7CiAgICAgIHRoaXMucGVvcGxlSWQgPSAwOwogICAgICB0aGlzLnBlb3BsZUZvcm0gPSB0cnVlOwogICAgICB0aGlzLnN1YmplY3RJZCA9IHN1YmplY3RJZDsKICAgICAgdGhpcy5zdWJqZWN0Q29kZSA9IHN1YmplY3RDb2RlOwogICAgICB0aGlzLmFjdGl2ZU5hbWUgPSB0YWI7CiAgICB9LAogICAgLy/moLzlvI/ljJbkuIrkvKDpmYTku7YKICAgIGZvcm1hdFVwbG9hZEFubmV4OiBmdW5jdGlvbiBmb3JtYXRVcGxvYWRBbm5leChhbm5leE5hbWUsIGFubmV4UGF0aCkgewogICAgICB0aGlzLnVwbG9hZC5maWxlTGlzdCA9IFtdOwoKICAgICAgaWYgKGFubmV4UGF0aCAhPSBudWxsICYmIGFubmV4UGF0aCAhPSAnJykgewogICAgICAgIHZhciBhID0gSlNPTi5wYXJzZShhbm5leE5hbWUpOwogICAgICAgIHZhciBiID0gSlNPTi5wYXJzZShhbm5leFBhdGgpOwoKICAgICAgICBpZiAoYSA9PSBudWxsKSB7CiAgICAgICAgICBhID0gW107CiAgICAgICAgICBiID0gW107CiAgICAgICAgfQoKICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGEubGVuZ3RoOyBpKyspIHsKICAgICAgICAgIHRoaXMudXBsb2FkLmZpbGVMaXN0LnB1c2goewogICAgICAgICAgICAnbmFtZSc6IGFbaV0sCiAgICAgICAgICAgICd1cmwnOiBwcm9jZXNzLmVudi5WVUVfQVBQX0JBU0VfQVBJICsgYltpXQogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIHRoaXMudXBsb2FkLmZpbGVMaXN0ID0gW107CiAgICAgIH0KICAgIH0sCiAgICBmb3JtYXRVcGxvYWRBbm5leDI6IGZ1bmN0aW9uIGZvcm1hdFVwbG9hZEFubmV4Mihhbm5leE5hbWUsIGFubmV4UGF0aCkgewogICAgICB0aGlzLnVwbG9hZDIuZmlsZUxpc3QgPSBbXTsKCiAgICAgIGlmIChhbm5leFBhdGggIT0gbnVsbCAmJiBhbm5leFBhdGggIT0gJycpIHsKICAgICAgICB2YXIgYSA9IEpTT04ucGFyc2UoYW5uZXhOYW1lKTsKICAgICAgICB2YXIgYiA9IEpTT04ucGFyc2UoYW5uZXhQYXRoKTsKCiAgICAgICAgaWYgKGEgPT0gbnVsbCkgewogICAgICAgICAgYSA9IFtdOwogICAgICAgICAgYiA9IFtdOwogICAgICAgIH0KCiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBhLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICB0aGlzLnVwbG9hZDIuZmlsZUxpc3QucHVzaCh7CiAgICAgICAgICAgICduYW1lJzogYVtpXSwKICAgICAgICAgICAgJ3VybCc6IHByb2Nlc3MuZW52LlZVRV9BUFBfQkFTRV9BUEkgKyBiW2ldCiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhpcy51cGxvYWQyLmZpbGVMaXN0ID0gW107CiAgICAgIH0KICAgIH0sCiAgICBmb3JtYXRVcGxvYWRBbm5leDM6IGZ1bmN0aW9uIGZvcm1hdFVwbG9hZEFubmV4Myhhbm5leE5hbWUsIGFubmV4UGF0aCkgewogICAgICB0aGlzLnVwbG9hZDMuZmlsZUxpc3QgPSBbXTsKCiAgICAgIGlmIChhbm5leFBhdGggIT0gbnVsbCAmJiBhbm5leFBhdGggIT0gJycpIHsKICAgICAgICB2YXIgYSA9IEpTT04ucGFyc2UoYW5uZXhOYW1lKTsKICAgICAgICB2YXIgYiA9IEpTT04ucGFyc2UoYW5uZXhQYXRoKTsKCiAgICAgICAgaWYgKGEgPT0gbnVsbCkgewogICAgICAgICAgYSA9IFtdOwogICAgICAgICAgYiA9IFtdOwogICAgICAgIH0KCiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBhLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICB0aGlzLnVwbG9hZDMuZmlsZUxpc3QucHVzaCh7CiAgICAgICAgICAgICduYW1lJzogYVtpXSwKICAgICAgICAgICAgJ3VybCc6IHByb2Nlc3MuZW52LlZVRV9BUFBfQkFTRV9BUEkgKyBiW2ldCiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhpcy51cGxvYWQzLmZpbGVMaXN0ID0gW107CiAgICAgIH0KICAgIH0sCgogICAgLyoq5p+l55yL6ZmE5Lu2KiovCiAgICB2aWV3QW5uZXg6IGZ1bmN0aW9uIHZpZXdBbm5leChyb3cpIHsKICAgICAgdGhpcy51cGxvYWQuZmlsZUxpc3QgPSBbXTsKICAgICAgdGhpcy5mb3JtYXRVcGxvYWRBbm5leChyb3cuYW5uZXhOYW1lLCByb3cuYW5uZXhQYXRoKTsKICAgICAgdGhpcy51cGxvYWQub3BlbiA9IHRydWU7IC8vIHRoaXMudXBsb2FkUHJvamVjdC50aXRsZSA9ICLpobnnm67lr7zlhaUiOwogICAgICAvLyB0aGlzLnVwbG9hZFByb2plY3Qub3BlbiA9IHRydWU7CiAgICB9LAogICAgLy/mn6XnnIvmiJDmnpwKICAgIHZpZXdBbm5leDI6IGZ1bmN0aW9uIHZpZXdBbm5leDIocm93KSB7CiAgICAgIHRoaXMudXBsb2FkMi5maWxlTGlzdCA9IFtdOwogICAgICB0aGlzLmZvcm1hdFVwbG9hZEFubmV4Mihyb3cucmVzdWx0RmlsZSwgcm93LnJlc3VsdEZpbGVQYXRoKTsKICAgICAgdGhpcy51cGxvYWQyLm9wZW4gPSB0cnVlOyAvLyB0aGlzLnVwbG9hZFByb2plY3QudGl0bGUgPSAi6aG555uu5a+85YWlIjsKICAgICAgLy8gdGhpcy51cGxvYWRQcm9qZWN0Lm9wZW4gPSB0cnVlOwogICAgfSwKICAgIC8v5p+l55yL56uL6aG5CiAgICB2aWV3QW5uZXgzOiBmdW5jdGlvbiB2aWV3QW5uZXgzKHJvdykgewogICAgICB0aGlzLnVwbG9hZDMuZmlsZUxpc3QgPSBbXTsKICAgICAgdGhpcy5mb3JtYXRVcGxvYWRBbm5leDMocm93LmJvb2tGaWxlLCByb3cuYm9va0ZpbGVQYXRoKTsKICAgICAgdGhpcy51cGxvYWQzLm9wZW4gPSB0cnVlOyAvLyB0aGlzLnVwbG9hZFByb2plY3QudGl0bGUgPSAi6aG555uu5a+85YWlIjsKICAgICAgLy8gdGhpcy51cGxvYWRQcm9qZWN0Lm9wZW4gPSB0cnVlOwogICAgfSwKICAgIGhhbmRsZVByZXZpZXc6IGZ1bmN0aW9uIGhhbmRsZVByZXZpZXcoZmlsZSkgewogICAgICB2YXIgYSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKTsKICAgICAgdmFyIGV2ZW50ID0gbmV3IE1vdXNlRXZlbnQoJ2NsaWNrJyk7CiAgICAgIGEuZG93bmxvYWQgPSBmaWxlLm5hbWU7CiAgICAgIGEudGFyZ2V0ID0gJ19ibGFuayc7CiAgICAgIGEuaHJlZiA9IGZpbGUudXJsOwogICAgICBhLmRpc3BhdGNoRXZlbnQoZXZlbnQpOwogICAgICBjb25zb2xlLmxvZyhmaWxlLm5hbWUpOwogICAgfSwKICAgIGhhbmRsZVByZXZpZXcyOiBmdW5jdGlvbiBoYW5kbGVQcmV2aWV3MihmaWxlKSB7CiAgICAgIHZhciBhID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpOwogICAgICB2YXIgZXZlbnQgPSBuZXcgTW91c2VFdmVudCgnY2xpY2snKTsKICAgICAgYS5kb3dubG9hZCA9IGZpbGUubmFtZTsKICAgICAgYS50YXJnZXQgPSAnX2JsYW5rJzsKICAgICAgYS5ocmVmID0gZmlsZS51cmw7CiAgICAgIGEuZGlzcGF0Y2hFdmVudChldmVudCk7CiAgICAgIGNvbnNvbGUubG9nKGZpbGUubmFtZSk7CiAgICB9LAogICAgaGFuZGxlUHJldmlldzM6IGZ1bmN0aW9uIGhhbmRsZVByZXZpZXczKGZpbGUpIHsKICAgICAgdmFyIGEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7CiAgICAgIHZhciBldmVudCA9IG5ldyBNb3VzZUV2ZW50KCdjbGljaycpOwogICAgICBhLmRvd25sb2FkID0gZmlsZS5uYW1lOwogICAgICBhLnRhcmdldCA9ICdfYmxhbmsnOwogICAgICBhLmhyZWYgPSBmaWxlLnVybDsKICAgICAgYS5kaXNwYXRjaEV2ZW50KGV2ZW50KTsKICAgICAgY29uc29sZS5sb2coZmlsZS5uYW1lKTsKICAgIH0sCiAgICBoYW5kbGVfcmVtb3ZlOiBmdW5jdGlvbiBoYW5kbGVfcmVtb3ZlKGZpbGUsIGZpbGVMaXN0LCB0eXBlKSB7CiAgICAgIHZhciBfdG1wID0gdGhpcy51cGxvYWQuZmlsZUxpc3Q7CgogICAgICBmb3IgKHZhciBpID0gMCwgbGVuID0gX3RtcC5sZW5ndGg7IGkgPCBsZW47IGkrKykgewogICAgICAgIGlmIChfdG1wW2ldLm5hbWUgPSBmaWxlLm5hbWUpIHsKICAgICAgICAgIF90bXAuc3BsaWNlKGksIDEpOwoKICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgfQoKICAgICAgdGhpcy51cGxvYWQuZmlsZUxpc3QgPSBfdG1wOwogICAgICB2YXIgYSA9IFtdOwogICAgICB2YXIgYiA9IFtdOwogICAgICB0aGlzLnVwbG9hZC5maWxlTGlzdC5mb3JFYWNoKGZ1bmN0aW9uIChzKSB7CiAgICAgICAgdmFyIHVybCA9IHNbJ3VybCddOwogICAgICAgIHVybCA9IHVybC5yZXBsYWNlKHByb2Nlc3MuZW52LlZVRV9BUFBfQkFTRV9BUEksICcnKTsKICAgICAgICBhLnB1c2goc1snbmFtZSddKTsKICAgICAgICBiLnB1c2godXJsKTsKICAgICAgfSk7CiAgICAgIHRoaXMuZm9ybS5hbm5leE5hbWUgPSBKU09OLnN0cmluZ2lmeShhKTsKICAgICAgdGhpcy5mb3JtLmFubmV4UGF0aCA9IEpTT04uc3RyaW5naWZ5KGIpOwogICAgfSwKICAgIGhhbmRsZV9yZW1vdmUyOiBmdW5jdGlvbiBoYW5kbGVfcmVtb3ZlMihmaWxlLCBmaWxlTGlzdCwgdHlwZSkgewogICAgICB2YXIgX3RtcCA9IHRoaXMudXBsb2FkMi5maWxlTGlzdDsKCiAgICAgIGZvciAodmFyIGkgPSAwLCBsZW4gPSBfdG1wLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7CiAgICAgICAgaWYgKF90bXBbaV0ubmFtZSA9IGZpbGUubmFtZSkgewogICAgICAgICAgX3RtcC5zcGxpY2UoaSwgMSk7CgogICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICB9CgogICAgICB0aGlzLnVwbG9hZDIuZmlsZUxpc3QgPSBfdG1wOwogICAgICB2YXIgYSA9IFtdOwogICAgICB2YXIgYiA9IFtdOwogICAgICB0aGlzLnVwbG9hZDIuZmlsZUxpc3QuZm9yRWFjaChmdW5jdGlvbiAocykgewogICAgICAgIHZhciB1cmwgPSBzWyd1cmwnXTsKICAgICAgICB1cmwgPSB1cmwucmVwbGFjZShwcm9jZXNzLmVudi5WVUVfQVBQX0JBU0VfQVBJLCAnJyk7CiAgICAgICAgYS5wdXNoKHNbJ25hbWUnXSk7CiAgICAgICAgYi5wdXNoKHVybCk7CiAgICAgIH0pOwogICAgICB0aGlzLmZvcm0ucmVzdWx0RmlsZSA9IEpTT04uc3RyaW5naWZ5KGEpOwogICAgICB0aGlzLmZvcm0ucmVzdWx0RmlsZVBhdGggPSBKU09OLnN0cmluZ2lmeShiKTsKICAgIH0sCiAgICBoYW5kbGVfcmVtb3ZlMzogZnVuY3Rpb24gaGFuZGxlX3JlbW92ZTMoZmlsZSwgZmlsZUxpc3QsIHR5cGUpIHsKICAgICAgdmFyIF90bXAgPSB0aGlzLnVwbG9hZDMuZmlsZUxpc3Q7CgogICAgICBmb3IgKHZhciBpID0gMCwgbGVuID0gX3RtcC5sZW5ndGg7IGkgPCBsZW47IGkrKykgewogICAgICAgIGlmIChfdG1wW2ldLm5hbWUgPSBmaWxlLm5hbWUpIHsKICAgICAgICAgIF90bXAuc3BsaWNlKGksIDEpOwoKICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgfQoKICAgICAgdGhpcy51cGxvYWQzLmZpbGVMaXN0ID0gX3RtcDsKICAgICAgdmFyIGEgPSBbXTsKICAgICAgdmFyIGIgPSBbXTsKICAgICAgdGhpcy51cGxvYWQzLmZpbGVMaXN0LmZvckVhY2goZnVuY3Rpb24gKHMpIHsKICAgICAgICB2YXIgdXJsID0gc1sndXJsJ107CiAgICAgICAgdXJsID0gdXJsLnJlcGxhY2UocHJvY2Vzcy5lbnYuVlVFX0FQUF9CQVNFX0FQSSwgJycpOwogICAgICAgIGEucHVzaChzWyduYW1lJ10pOwogICAgICAgIGIucHVzaCh1cmwpOwogICAgICB9KTsKICAgICAgdGhpcy5mb3JtLmJvb2tGaWxlID0gSlNPTi5zdHJpbmdpZnkoYSk7CiAgICAgIHRoaXMuZm9ybS5ib29rRmlsZVBhdGggPSBKU09OLnN0cmluZ2lmeShiKTsKICAgIH0sCiAgICAvLyDmlofku7bkuIrkvKDkuK3lpITnkIYKICAgIGhhbmRsZUZpbGVVcGxvYWRQcm9ncmVzczogZnVuY3Rpb24gaGFuZGxlRmlsZVVwbG9hZFByb2dyZXNzKGV2ZW50LCBmaWxlLCBmaWxlTGlzdCkgewogICAgICB0aGlzLnVwbG9hZC5pc1VwbG9hZGluZyA9IHRydWU7CiAgICB9LAogICAgaGFuZGxlRmlsZVVwbG9hZFByb2dyZXNzMjogZnVuY3Rpb24gaGFuZGxlRmlsZVVwbG9hZFByb2dyZXNzMihldmVudCwgZmlsZSwgZmlsZUxpc3QpIHsKICAgICAgdGhpcy51cGxvYWQyLmlzVXBsb2FkaW5nID0gdHJ1ZTsKICAgIH0sCiAgICBoYW5kbGVGaWxlVXBsb2FkUHJvZ3Jlc3MzOiBmdW5jdGlvbiBoYW5kbGVGaWxlVXBsb2FkUHJvZ3Jlc3MzKGV2ZW50LCBmaWxlLCBmaWxlTGlzdCkgewogICAgICB0aGlzLnVwbG9hZDMuaXNVcGxvYWRpbmcgPSB0cnVlOwogICAgfSwKICAgIC8vIOaWh+S7tuS4iuS8oOaIkOWKn+WkhOeQhgogICAgaGFuZGxlRmlsZVN1Y2Nlc3M6IGZ1bmN0aW9uIGhhbmRsZUZpbGVTdWNjZXNzKHJlc3BvbnNlLCBmaWxlLCBmaWxlTGlzdCkgewogICAgICB0aGlzLnVwbG9hZC5pc1VwbG9hZGluZyA9IGZhbHNlOwogICAgICB2YXIgYSA9IEpTT04ucGFyc2UodGhpcy5mb3JtLmFubmV4TmFtZSk7CiAgICAgIHZhciBiID0gSlNPTi5wYXJzZSh0aGlzLmZvcm0uYW5uZXhQYXRoKTsKCiAgICAgIGlmIChhID09IG51bGwpIHsKICAgICAgICBhID0gW107CiAgICAgICAgYiA9IFtdOwogICAgICB9CgogICAgICBhLnB1c2gocmVzcG9uc2UuZmlsZU5hbWUpOwogICAgICBiLnB1c2gocmVzcG9uc2UudXJsKTsKICAgICAgY29uc29sZS5sb2coYSwgJy0tLS0tLS0tJyk7CiAgICAgIHRoaXMuZm9ybS5hbm5leE5hbWUgPSBKU09OLnN0cmluZ2lmeShhKTsKICAgICAgdGhpcy5mb3JtLmFubmV4UGF0aCA9IEpTT04uc3RyaW5naWZ5KGIpOwogICAgICBjb25zb2xlLmxvZyhhLCAnLS0tLS0tLS0nKTsKICAgICAgY29uc29sZS5sb2codGhpcy5mb3JtLmFubmV4TmFtZSwgJy0tLS0rKysrKysrKystLS0tJyk7IC8vICB0aGlzLmZvcm0uYW5uZXhOYW1lID0gcmVzcG9uc2UuZmlsZU5hbWU7CiAgICAgIC8vICB0aGlzLmZvcm0uYW5uZXhQYXRoID0gcmVzcG9uc2UudXJsOwoKICAgICAgdGhpcy5tc2dTdWNjZXNzKHJlc3BvbnNlLm1zZyk7CiAgICB9LAogICAgaGFuZGxlRmlsZVN1Y2Nlc3MyOiBmdW5jdGlvbiBoYW5kbGVGaWxlU3VjY2VzczIocmVzcG9uc2UsIGZpbGUsIGZpbGVMaXN0KSB7CiAgICAgIHRoaXMudXBsb2FkMi5pc1VwbG9hZGluZyA9IGZhbHNlOwogICAgICB2YXIgYSA9IEpTT04ucGFyc2UodGhpcy5mb3JtLnJlc3VsdEZpbGUpOwogICAgICB2YXIgYiA9IEpTT04ucGFyc2UodGhpcy5mb3JtLnJlc3VsdEZpbGVQYXRoKTsKCiAgICAgIGlmIChhID09IG51bGwpIHsKICAgICAgICBhID0gW107CiAgICAgICAgYiA9IFtdOwogICAgICB9CgogICAgICBhLnB1c2gocmVzcG9uc2UuZmlsZU5hbWUpOwogICAgICBiLnB1c2gocmVzcG9uc2UudXJsKTsKICAgICAgY29uc29sZS5sb2coYSwgJy0tLS0tLS0tJyk7CiAgICAgIHRoaXMuZm9ybS5yZXN1bHRGaWxlID0gSlNPTi5zdHJpbmdpZnkoYSk7CiAgICAgIHRoaXMuZm9ybS5yZXN1bHRGaWxlUGF0aCA9IEpTT04uc3RyaW5naWZ5KGIpOwogICAgICBjb25zb2xlLmxvZyhhLCAnLS0tLS0tLS0nKTsKICAgICAgY29uc29sZS5sb2codGhpcy5mb3JtLnJlc3VsdEZpbGUsICctLS0tKysrKysrKysrLS0tLScpOyAvLyAgdGhpcy5mb3JtLmFubmV4TmFtZSA9IHJlc3BvbnNlLmZpbGVOYW1lOwogICAgICAvLyAgdGhpcy5mb3JtLmFubmV4UGF0aCA9IHJlc3BvbnNlLnVybDsKCiAgICAgIHRoaXMubXNnU3VjY2VzcyhyZXNwb25zZS5tc2cpOwogICAgfSwKICAgIGhhbmRsZUZpbGVTdWNjZXNzMzogZnVuY3Rpb24gaGFuZGxlRmlsZVN1Y2Nlc3MzKHJlc3BvbnNlLCBmaWxlLCBmaWxlTGlzdCkgewogICAgICB0aGlzLnVwbG9hZDMuaXNVcGxvYWRpbmcgPSBmYWxzZTsKICAgICAgdmFyIGEgPSBKU09OLnBhcnNlKHRoaXMuZm9ybS5ib29rRmlsZSk7CiAgICAgIHZhciBiID0gSlNPTi5wYXJzZSh0aGlzLmZvcm0uYm9va0ZpbGVQYXRoKTsKCiAgICAgIGlmIChhID09IG51bGwpIHsKICAgICAgICBhID0gW107CiAgICAgICAgYiA9IFtdOwogICAgICB9CgogICAgICBhLnB1c2gocmVzcG9uc2UuZmlsZU5hbWUpOwogICAgICBiLnB1c2gocmVzcG9uc2UudXJsKTsKICAgICAgY29uc29sZS5sb2coYSwgJy0tLS0tLS0tJyk7CiAgICAgIHRoaXMuZm9ybS5ib29rRmlsZSA9IEpTT04uc3RyaW5naWZ5KGEpOwogICAgICB0aGlzLmZvcm0uYm9va0ZpbGVQYXRoID0gSlNPTi5zdHJpbmdpZnkoYik7CiAgICAgIGNvbnNvbGUubG9nKGEsICctLS0tLS0tLScpOwogICAgICBjb25zb2xlLmxvZyh0aGlzLmZvcm0uYm9va0ZpbGUsICctLS0tKysrKysrKysrLS0tLScpOyAvLyAgdGhpcy5mb3JtLmFubmV4TmFtZSA9IHJlc3BvbnNlLmZpbGVOYW1lOwogICAgICAvLyAgdGhpcy5mb3JtLmFubmV4UGF0aCA9IHJlc3BvbnNlLnVybDsKCiAgICAgIHRoaXMubXNnU3VjY2VzcyhyZXNwb25zZS5tc2cpOwogICAgfQogIH0KfTsKZXhwb3J0cy5kZWZhdWx0ID0gX2RlZmF1bHQ7"},{"version":3,"sources":["add.vue"],"names":[],"mappings":"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","sourcesContent":["<template>\n <div class=\"app-container\">\n <el-tabs v-model=\"activeName\" type=\"border-card\" @tab-click=\"handleClick\">\n <el-tab-pane label=\"项目信息\" name=\"tab\">\n <el-form ref=\"form\" :model=\"form\" :rules=\"rules\" label-width=\"120px\">\n <el-row :gutter=\"5\">\n <el-col :span=\"12\">\n <el-form-item label=\"项目类别\" prop=\"category\">\n <el-select v-model=\"form.category\" placeholder=\"请输入项目类别\" clearable style=\"width: 220px\">\n <el-option\n v-for=\"dict in categoryOptions\"\n :key=\"dict.dictValue\"\n :label=\"dict.dictLabel\"\n :value=\"dict.dictValue\"\n />\n </el-select>\n </el-form-item>\n </el-col>\n <el-col :span=\"12\">\n <el-form-item label=\"项目编号\" prop=\"code\">\n <el-input v-model=\"form.code\" placeholder=\"请输入项目编号\" />\n </el-form-item>\n </el-col>\n </el-row>\n <el-row :gutter=\"5\">\n <el-col :span=\"12\">\n <el-form-item label=\"项目名称\" prop=\"name\">\n <el-input v-model=\"form.name\" placeholder=\"请输入内容\" />\n </el-form-item>\n </el-col>\n <el-col :span=\"12\">\n <el-form-item label=\"项目负责人\" prop=\"userName\">\n <el-input v-model=\"form.userName\" placeholder=\"请输入项目负责人\" />\n </el-form-item>\n </el-col>\n </el-row>\n <el-row :gutter=\"5\">\n <el-col :span=\"12\">\n <el-form-item label=\"项目类型\" prop=\"type\">\n <el-select v-model=\"form.type\" placeholder=\"请选择项目类型\" clearable style=\"width: 220px\">\n <el-option\n v-for=\"dict in typeOptions\"\n :key=\"dict.dictValue\"\n :label=\"dict.dictLabel\"\n :value=\"dict.dictValue\"\n />\n </el-select>\n </el-form-item>\n </el-col>\n <el-col :span=\"12\">\n <el-form-item label=\"项目填报状态\" prop=\"status\">\n <el-select v-model=\"form.status\" placeholder=\"请输入项目填报状态\" clearable style=\"width: 220px\">\n <el-option\n v-for=\"dict in statusOptions\"\n :key=\"dict.dictValue\"\n :label=\"dict.dictLabel\"\n :value=\"dict.dictValue\"\n />\n </el-select>\n </el-form-item>\n </el-col>\n<!-- <el-col :span=\"12\">-->\n<!-- <el-form-item label=\"项目联系部门\" prop=\"departmentId\">-->\n<!-- <el-input v-model=\"form.departmentId\" placeholder=\"请输入项目联系部门\" />-->\n<!-- </el-form-item>-->\n<!-- </el-col>-->\n<!-- <el-col :span=\"12\">-->\n<!-- <el-form-item label=\"项目负责人\" prop=\"userId\">-->\n<!-- <el-input v-model=\"form.userId\" placeholder=\"请输入项目负责人\" />-->\n<!-- </el-form-item>-->\n<!-- </el-col>-->\n </el-row>\n <el-row :gutter=\"5\">\n <el-col :span=\"12\">\n <el-form-item label=\"研究期限\" prop=\"deadline\">\n <el-input v-model=\"form.deadline\" placeholder=\"请输入研究期限\" />\n </el-form-item>\n </el-col>\n <el-col :span=\"12\">\n <el-form-item label=\"总经费控制数\" prop=\"totalOutlay\">\n <el-input v-model=\"form.totalOutlay\" placeholder=\"请输入总经费控制数\" />\n </el-form-item>\n </el-col>\n </el-row>\n <!--<el-row :gutter=\"5\">-->\n <!--<el-col :span=\"12\">-->\n <!--<el-form-item label=\"第一年经费控制数\" prop=\"firstOutlay\">-->\n <!--<el-input v-model=\"form.firstOutlay\" placeholder=\"请输入第一年经费控制数\" />-->\n <!--</el-form-item>-->\n <!--</el-col>-->\n <!--<el-col :span=\"12\">-->\n <!--<el-form-item label=\"第二年经费控制数\" prop=\"secondOutlay\">-->\n <!--<el-input v-model=\"form.secondOutlay\" placeholder=\"请输入第二年经费控制数\" />-->\n <!--</el-form-item>-->\n <!--</el-col>-->\n <!--</el-row>-->\n<!-- <el-row :gutter=\"5\">-->\n<!-- <el-col :span=\"12\">-->\n<!-- -->\n<!-- </el-col>-->\n<!-- </el-row>-->\n\n <el-row :gutter=\"5\">\n <!--<el-col :span=\"12\">-->\n <!--<el-form-item label=\"项目填报状态\">-->\n <!--<el-radio-group v-model=\"form.status\">-->\n <!--<el-radio label=\"1\">请选择字典生成</el-radio>-->\n <!--</el-radio-group>-->\n <!--</el-form-item>-->\n <!--</el-col>-->\n <el-col :span=\"12\">\n <el-form-item label=\"开始时间\" prop=\"beginDate\">\n <el-date-picker clearable size=\"small\" style=\"width: 200px\"\n v-model=\"form.beginDate\"\n type=\"date\"\n value-format=\"yyyy-MM-dd\"\n placeholder=\"选择开始时间\">\n </el-date-picker>\n </el-form-item>\n </el-col>\n <el-col :span=\"12\">\n <el-form-item label=\"完成时间\" prop=\"completeDate\">\n <el-date-picker clearable size=\"small\" style=\"width: 200px\"\n v-model=\"form.completeDate\"\n type=\"date\"\n value-format=\"yyyy-MM-dd\"\n placeholder=\"选择完成时间\">\n </el-date-picker>\n </el-form-item>\n </el-col>\n </el-row>\n <!--<el-row :gutter=\"5\">-->\n <!---->\n <!--<el-col :span=\"12\">-->\n <!--<el-form-item label=\"填报截止时间\" prop=\"endDate\">-->\n <!--<el-date-picker clearable size=\"small\" style=\"width: 200px\"-->\n <!--v-model=\"form.endDate\"-->\n <!--type=\"date\"-->\n <!--value-format=\"yyyy-MM-dd\"-->\n <!--placeholder=\"选择填报截止时间\">-->\n <!--</el-date-picker>-->\n <!--</el-form-item>-->\n <!--</el-col>-->\n <!--</el-row>-->\n <el-row :gutter=\"5\">\n <el-col :span=\"12\">\n <el-form-item label=\"立项时间\" prop=\"approvalDate\">\n <el-date-picker clearable size=\"small\" style=\"width: 200px\"\n v-model=\"form.approvalDate\"\n type=\"date\"\n value-format=\"yyyy-MM-dd\"\n placeholder=\"选择立项时间\">\n </el-date-picker>\n </el-form-item>\n </el-col>\n <el-col :span=\"12\">\n <el-form-item label=\"是否涉密\" prop=\"isSecrecy\">\n<!-- <el-input v-model=\"form.isSecrecy\" placeholder=\"是否涉密\" />-->\n <el-radio-group v-model=\"form.isSecrecy\">\n <el-radio label=\"N\" selected=\"form.isSecrecy == 'N'\">否</el-radio>\n <el-radio label=\"Y\" selected=\"form.isSecrecy == 'Y'\">是</el-radio>\n </el-radio-group>\n </el-form-item>\n </el-col>\n </el-row>\n <el-row :gutter=\"5\">\n <el-col :span=\"12\">\n <el-form-item label=\"保密级别\" prop=\"secrecyLevel\" v-if=\"form.isSecrecy == 'Y'\">\n<!-- <el-input v-model=\"form.secrecyLevel\" placeholder=\"请输入保密级别\" />-->\n <el-select v-model=\"form.secrecyLevel\" placeholder=\"请输入密级\" clearable style=\"width: 220px\">\n <el-option\n v-for=\"dict in secretOptions\"\n :key=\"dict.dictValue\"\n :label=\"dict.dictLabel\"\n :value=\"dict.dictValue\"\n />\n </el-select>\n </el-form-item>\n </el-col>\n <el-col :span=\"12\">\n <el-form-item label=\"保密期限\" prop=\"secrecyTerm\" v-if=\"form.isSecrecy == 'Y'\">\n <el-input v-model=\"form.secrecyTerm\" placeholder=\"请输入保密期限\" />\n </el-form-item>\n </el-col>\n </el-row>\n <el-row :gutter=\"5\">\n<!-- <el-col :span=\"12\">-->\n<!-- <el-form-item label=\"是否下设课题\" prop=\"isTopic\">-->\n<!-- <el-input v-model=\"form.isTopic\" placeholder=\"请输入是否下设课题\" />-->\n<!-- </el-form-item>-->\n<!-- </el-col>-->\n <el-col :span=\"24\">\n <el-form-item label=\"项目研究总体任务及目标\" prop=\"taskTarget\">\n<!-- <el-input v-model=\"form.taskTarget\" placeholder=\"请输入项目研究总体任务及目标\" />-->\n <editor v-model=\"form.taskTarget\" :min-height=\"182\"/>\n </el-form-item>\n\n </el-col>\n </el-row>\n <el-row :gutter=\"5\">\n <el-col :span=\"24\">\n <el-form-item label=\"项目预期成果及考核指标\" prop=\"resultTarget\">\n<!-- <el-input v-model=\"form.resultTarget\" placeholder=\"请输入项目预期成果及考核指标\" />-->\n <editor v-model=\"form.resultTarget\" :min-height=\"182\"/>\n </el-form-item>\n </el-col>\n </el-row>\n <el-row :gutter=\"5\">\n <el-col :span=\"24\">\n <el-form-item label=\"项目拟采取的研究方法、技术路线\" prop=\"methodRoute\">\n<!-- <el-input v-model=\"form.methodRoute\" placeholder=\"请输入项目拟采取的研究方法、技术路线\" />-->\n <editor v-model=\"form.methodRoute\" :min-height=\"182\"/>\n </el-form-item>\n </el-col>\n </el-row>\n <el-row :gutter=\"5\">\n <el-col :span=\"24\">\n <el-form-item label=\"项目研究计划\" prop=\"plan\">\n<!-- <el-input v-model=\"form.plan\" placeholder=\"请输入项目研究计划\" />-->\n <editor v-model=\"form.plan\" :min-height=\"182\"/>\n </el-form-item>\n </el-col>\n </el-row>\n <el-row :gutter=\"5\">\n <el-col :span=\"24\">\n <el-form-item label=\"预算开支说明\" prop=\"spendExplain\">\n <!--<el-input v-model=\"form.spendExplain\" placeholder=\"请输入预算开支说明\" />-->\n <editor v-model=\"form.spendExplain\" :min-height=\"182\"/>\n\n </el-form-item>\n </el-col>\n </el-row>\n <!--<el-row :gutter=\"5\">-->\n <!--<el-col :span=\"12\">-->\n <!--<el-form-item label=\"学部评审状态\" prop=\"reviewStatusXb\">-->\n <!--<el-input v-model=\"form.reviewStatusXb\" placeholder=\"请输入学部评审状态\" />-->\n <!--</el-form-item>-->\n <!--</el-col>-->\n <!--<el-col :span=\"12\">-->\n <!--<el-form-item label=\"财务评审状态\" prop=\"reviewStatusCw\">-->\n <!--<el-input v-model=\"form.reviewStatusCw\" placeholder=\"请输入财务评审状态\" />-->\n <!--</el-form-item>-->\n <!--</el-col>-->\n <!--</el-row>-->\n <el-row :gutter=\"5\">\n <el-col :span=\"12\">\n <el-form-item label=\"是否包含课题\" prop=\"isTopic\">\n <el-radio-group v-model=\"form.isTopic\">\n <el-radio label=\"N\" selected=\"form.isTopic == 'N'\">不包含</el-radio>\n <el-radio label=\"Y\" selected=\"form.isTopic == 'Y'\">包含</el-radio>\n </el-radio-group>\n </el-form-item>\n </el-col>\n <el-col :span=\"12\">\n <el-form-item label=\"实际总预算经费\" prop=\"totalBudget\">\n <el-input v-model=\"form.totalBudget\" placeholder=\"请输入实际总预算经费\" />\n </el-form-item>\n </el-col>\n <!--<el-col :span=\"12\">-->\n <!--<el-form-item label=\"实际第一年预算经费\" prop=\"firstBudget\">-->\n <!--<el-input v-model=\"form.firstBudget\" placeholder=\"请输入实际第一年预算经费\" />-->\n <!--</el-form-item>-->\n <!--</el-col>-->\n </el-row>\n <el-row :gutter=\"5\">\n <!--<el-col :span=\"12\">-->\n <!--<el-form-item label=\"实际第二年预算经费\" prop=\"secondBudget\">-->\n <!--<el-input v-model=\"form.secondBudget\" placeholder=\"请输入实际第二年预算经费\" />-->\n <!--</el-form-item>-->\n <!--</el-col>-->\n <el-col :span=\"12\">\n <el-form-item label=\"项目来源\" prop=\"projectSource\">\n <el-select v-model=\"form.projectSource\" placeholder=\"请选择项目来源\" style=\"width: 220px\" clearable >\n <el-option\n v-for=\"dict in sourceOptions\"\n :key=\"dict.dictValue\"\n :label=\"dict.dictLabel\"\n :value=\"dict.dictValue\"\n />\n </el-select>\n </el-form-item>\n </el-col>\n <el-col :span=\"12\">\n <el-form-item label=\"联系部门\" prop=\"departmentName\">\n <el-input v-model=\"form.departmentName\" placeholder=\"请输入联系部门\" />\n </el-form-item>\n </el-col>\n </el-row>\n\n <el-row :gutter=\"5\">\n <el-col :span=\"12\">\n <el-form-item label=\"依托单位\" prop=\"yituoUnit\">\n <el-input v-model=\"form.yituoUnit\" placeholder=\"请输入依托单位\" />\n </el-form-item>\n </el-col>\n <el-col :span=\"12\">\n <el-form-item label=\"依托单位省份\" prop=\"yituoArea\">\n <el-input v-model=\"form.yituoArea\" placeholder=\"请输入依托单位省份\" />\n </el-form-item>\n </el-col>\n </el-row>\n\n <el-row :gutter=\"5\">\n <el-col :span=\"24\">\n <el-form-item label=\"关键词\" prop=\"importantKey\">\n <el-input v-model=\"form.importantKey\" placeholder=\"请输入关键词\" />\n </el-form-item>\n </el-col>\n<!-- <el-col :span=\"12\">-->\n<!-- <el-form-item label=\"是否上报成果\" prop=\"isResult\">-->\n<!-- <el-select v-model=\"form.isResult\" placeholder=\"请选择是否上报成果\" clearable >-->\n<!-- <el-option-->\n<!-- v-for=\"dict in yesNoOptions\"-->\n<!-- :key=\"dict.dictValue\"-->\n<!-- :label=\"dict.dictLabel\"-->\n<!-- :value=\"dict.dictValue\"-->\n<!-- />-->\n<!-- </el-select>-->\n<!-- </el-form-item>-->\n<!-- </el-col>-->\n </el-row>\n <el-row :gutter=\"5\" >\n\n <el-col :span=\"12\">\n <el-form-item label=\"批示状态\" prop=\"pishiStatus\">\n <el-select v-model=\"form.pishiStatus\" placeholder=\"请选择批示状态\" clearable >\n <el-option\n v-for=\"dict in pishiStatusOptions\"\n :key=\"dict.dictValue\"\n :label=\"dict.dictLabel\"\n :value=\"dict.dictValue\"\n />\n </el-select>\n </el-form-item>\n </el-col>\n <el-col :span=\"12\">\n <el-form-item label=\"批示内容\" prop=\"pishiContent\">\n <el-input v-model=\"form.pishiContent\" placeholder=\"请输入批示内容\" />\n </el-form-item>\n </el-col>\n </el-row>\n\n<!-- <el-row :gutter=\"5\">-->\n<!-- <el-col :span=\"12\">-->\n<!-- <el-form-item label=\"关键词\" prop=\"importantKey\">-->\n<!-- <el-input v-model=\"form.importantKey\" placeholder=\"请输入关键词\" />-->\n<!-- </el-form-item>-->\n<!-- </el-col>-->\n<!-- <el-col :span=\"12\">-->\n<!-- <el-form-item label=\"依托单位省份\" prop=\"yituoArea\">-->\n<!-- <el-input v-model=\"form.yituoArea\" placeholder=\"请输入依托单位省份\" />-->\n<!-- </el-form-item>-->\n<!-- </el-col>-->\n<!-- </el-row>-->\n<!-- <el-row :gutter=\"5\">-->\n<!-- <el-col :span=\"12\">-->\n<!-- <el-form-item label=\"上报成果\" prop=\"resultFile\" style=\"width: 220px\">-->\n<!-- <el-upload-->\n<!-- ref=\"upload2\"-->\n<!-- multiple-->\n<!-- :action=\"upload2.url\"-->\n<!-- :headers=\"upload2.headers\"-->\n<!-- :on-remove=\"handle_remove2\"-->\n<!-- :file-list=\"upload2.fileList\"-->\n<!-- :on-preview=\"handlePreview2\"-->\n<!-- :on-progress=\"handleFileUploadProgress2\"-->\n<!-- :on-success=\"handleFileSuccess2\"-->\n<!-- :auto-upload=\"true\">-->\n<!-- <el-button slot=\"trigger\" type=\"primary\">上传文件</el-button>-->\n<!-- </el-upload>-->\n<!-- </el-form-item>-->\n<!-- </el-col>-->\n<!-- </el-row>-->\n\n <el-row :gutter=\"5\">\n <el-col :span=\"12\">\n <el-form-item label=\"上传立项书\" prop=\"bookFile\" style=\"width: 220px\">\n <el-upload\n ref=\"upload3\"\n multiple\n :action=\"upload3.url\"\n :headers=\"upload3.headers\"\n :on-remove=\"handle_remove3\"\n :file-list=\"upload3.fileList\"\n :on-preview=\"handlePreview3\"\n :on-progress=\"handleFileUploadProgress3\"\n :on-success=\"handleFileSuccess3\"\n :auto-upload=\"true\">\n <el-button slot=\"trigger\" type=\"primary\">上传文件</el-button>\n </el-upload>\n </el-form-item>\n </el-col>\n </el-row>\n\n <el-row :gutter=\"5\">\n <el-col :span=\"12\">\n <el-form-item label=\"附件名\" prop=\"annexName\" style=\"width: 220px\">\n <el-upload\n ref=\"upload\"\n multiple\n :action=\"upload.url\"\n :headers=\"upload.headers\"\n :on-remove=\"handle_remove\"\n :file-list=\"upload.fileList\"\n :on-preview=\"handlePreview\"\n :on-progress=\"handleFileUploadProgress\"\n :on-success=\"handleFileSuccess\"\n :auto-upload=\"true\">\n <el-button slot=\"trigger\" type=\"primary\">上传文件</el-button>\n </el-upload>\n </el-form-item>\n </el-col>\n </el-row>\n <!--<el-row :gutter=\"5\">-->\n\n <!--<el-col :span=\"12\">-->\n <!--<el-form-item label=\"咨询办评审状态\" prop=\"reviewStatusZwh\">-->\n <!--<el-input v-model=\"form.reviewStatusZwh\" placeholder=\"请输入咨询办评审状态\" />-->\n <!--</el-form-item>-->\n <!--</el-col>-->\n <!--</el-row>-->\n <!--<el-row :gutter=\"5\">-->\n <!--<el-col :span=\"12\">-->\n <!--<el-form-item label=\"是否同意协议\" prop=\"isAgreement\">-->\n <!--<el-input v-model=\"form.isAgreement\" placeholder=\"请输入是否同意协议\" />-->\n <!--</el-form-item>-->\n <!--</el-col>-->\n <!--<el-col :span=\"12\">-->\n <!--<el-form-item label=\"依托单位负责人\" prop=\"relyUnitHead\">-->\n <!--<el-input v-model=\"form.relyUnitHead\" placeholder=\"请输入依托单位负责人\" />-->\n <!--</el-form-item>-->\n <!--</el-col>-->\n <!--</el-row>-->\n <!--<el-row :gutter=\"5\">-->\n <!--<el-col :span=\"12\">-->\n <!--<el-form-item label=\"依托单位财务负责人\" prop=\"relyUnitHeadtocw\">-->\n <!--<el-input v-model=\"form.relyUnitHeadtocw\" placeholder=\"请输入依托单位财务负责人\" />-->\n <!--</el-form-item>-->\n <!--</el-col>-->\n <!--<el-col :span=\"12\">-->\n <!--<el-form-item label=\"项目研究周期\" prop=\"taskPeriod\">-->\n <!--<el-input v-model=\"form.taskPeriod\" placeholder=\"请输入项目研究周期\" />-->\n <!--</el-form-item>-->\n <!--</el-col>-->\n <!--</el-row>-->\n\n\n <!--<el-row :gutter=\"5\">-->\n <!--<el-col :span=\"12\">-->\n <!--<el-form-item label=\"项目其他工作计划\" prop=\"otherplan\">-->\n <!--<el-input v-model=\"form.otherplan\" placeholder=\"请输入项目其他工作计划\" />-->\n <!--</el-form-item>-->\n <!--</el-col>-->\n <!--<el-col :span=\"12\">-->\n <!--<el-form-item label=\"研究目标复选框\" prop=\"point\">-->\n <!--<el-input v-model=\"form.point\" placeholder=\"请输入研究目标复选框\" />-->\n <!--</el-form-item>-->\n <!--</el-col>-->\n <!--</el-row>-->\n <!--<el-row :gutter=\"5\">-->\n <!--<el-col :span=\"12\">-->\n <!--<el-form-item label=\"项目预期成果复选框\" prop=\"result\">-->\n <!--<el-input v-model=\"form.result\" placeholder=\"请输入项目预期成果复选框\" />-->\n <!--</el-form-item>-->\n <!--</el-col>-->\n <!--<el-col :span=\"12\">-->\n <!--<el-form-item label=\"项目预期成果复选框7的描述\" prop=\"introduction\">-->\n <!--<el-input v-model=\"form.introduction\" type=\"textarea\" placeholder=\"请输入内容\" />-->\n <!--</el-form-item>-->\n <!--</el-col>-->\n <!--</el-row>-->\n <!--<el-row :gutter=\"5\">-->\n <!--<el-col :span=\"12\">-->\n <!--<el-form-item label=\"用款计划比例\" prop=\"proprotion\">-->\n <!--<el-input v-model=\"form.proprotion\" placeholder=\"请输入用款计划比例\" />-->\n <!--</el-form-item>-->\n <!--</el-col>-->\n <!--<el-col :span=\"12\">-->\n <!--<el-form-item label=\"区分研究期限单位:年 月\" prop=\"term\">-->\n <!--<el-input v-model=\"form.term\" placeholder=\"请输入区分研究期限单位:年 月\" />-->\n <!--</el-form-item>-->\n <!--</el-col>-->\n <!--</el-row>-->\n <!--<el-row :gutter=\"5\">-->\n\n <!--</el-row>-->\n\n\n <!-- <el-form-item label=\"依托单位id\" prop=\"relyId\">-->\n <!-- <el-input v-model=\"form.relyId\" placeholder=\"请输入依托单位id\" />-->\n <!-- </el-form-item>-->\n <!-- <el-form-item label=\"最终编辑时间\" prop=\"lastDate\">-->\n <!-- <el-date-picker clearable size=\"small\" style=\"width: 200px\"-->\n <!-- v-model=\"form.lastDate\"-->\n <!-- type=\"date\"-->\n <!-- value-format=\"yyyy-MM-dd\"-->\n <!-- placeholder=\"选择最终编辑时间\">-->\n <!-- </el-date-picker>-->\n <!-- </el-form-item>-->\n\n\n\n\n\n <!-- <el-form-item label=\"申请书id\" prop=\"applyId\">-->\n <!-- <el-input v-model=\"form.applyId\" placeholder=\"请输入申请书id\" />-->\n <!-- </el-form-item>-->\n\n </el-form>\n <div class=\"dialog-footer\" >\n <el-button type=\"primary\" @click=\"submitForm\">确 定</el-button>\n <el-button @click=\"cancel\">取 消</el-button>\n <el-button @click=\"addTopic\" v-if=\"form.isTopic == 'Y' && isSubmit\">增加课题</el-button>\n <el-button @click=\"addPeople\" v-if=\"isSubmit\">增加人员</el-button>\n <el-button @click=\"addBudget\" v-if=\"isSubmit\">增加经费</el-button>\n <span style=\"color: red;font-size: small\"> 基本信息保存后,可保存其他信息</span>\n </div>\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 :on-remove=\"handle_remove\"\n :file-list=\"upload.fileList\"\n :on-preview=\"handlePreview\"\n :on-progress=\"handleFileUploadProgress\"\n :on-success=\"handleFileSuccess\"\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\n <el-dialog title=\"上报成果\" :visible.sync=\"upload2.open\" width=\"400px\" append-to-body>\n <el-upload\n ref=\"upload2\"\n disabled\n :action=\"upload2.url\"\n :headers=\"upload2.headers\"\n :on-remove=\"handle_remove2\"\n :file-list=\"upload2.fileList\"\n :on-preview=\"handlePreview2\"\n :on-progress=\"handleFileUploadProgress2\"\n :on-success=\"handleFileSuccess2\"\n >\n </el-upload>\n <div slot=\"footer\" class=\"dialog-footer\">\n <el-button type=\"primary\" @click=\"upload2.open = false\">关 闭</el-button>\n </div>\n </el-dialog>\n\n\n <el-dialog title=\"上传立项书\" :visible.sync=\"upload3.open\" width=\"400px\" append-to-body>\n <el-upload\n ref=\"upload3\"\n disabled\n :action=\"upload3.url\"\n :headers=\"upload3.headers\"\n :on-remove=\"handle_remove3\"\n :file-list=\"upload3.fileList\"\n :on-preview=\"handlePreview3\"\n :on-progress=\"handleFileUploadProgress3\"\n :on-success=\"handleFileSuccess3\"\n >\n </el-upload>\n <div slot=\"footer\" class=\"dialog-footer\">\n <el-button type=\"primary\" @click=\"upload3.open = false\">关 闭</el-button>\n </div>\n </el-dialog>\n </el-tab-pane>\n <!--v-if=\"this.form.id && topicForm\"-->\n <el-tab-pane label=\"课题信息\" name=\"tab1\" v-if=\"(this.form.id && topicForm) || (this.view=='edit' && form.isTopic)\" >\n <TopicInfo :proId=\"this.form.id\" :proCode=\"this.form.code\" @addTopicTigger=\"addTopicInfo\" />\n </el-tab-pane>\n <el-tab-pane label=\"课题信息表单\" name=\"tab2\" v-if=\"this.form.id && topicForm\" >\n <TopicInfoAdd :proId=\"this.form.id\" :proCode=\"this.form.code\" :editTopicId=\"this.editTopicId\" :type=\"this.topicType\" @topicListTigger=\"addSubjectFromTopic\" @topicAddPeople=\"topicAddPeople\" @topicAddBudget=\"topicAddBudget\"/>\n </el-tab-pane>\n <!--v-if=\"subjectForm && this.topicId\"-->\n <el-tab-pane label=\"专题信息\" name=\"tab3\" v-if=\"(subjectForm && this.topicId) || (this.view=='edit' && form.hasSubject)\">\n <SubjectInfo :proId=\"this.form.id\" :proCode=\"this.form.code\" :topicId=\"this.topicId\" :topicCode=\"this.topicCode\" @addSubjectTigger=\"addSubject\" @editSubjectTigger=\"editSubject\"/>\n </el-tab-pane>\n <el-tab-pane label=\"专题信息表单\" name=\"tab4\" v-if=\"subjectForm && this.topicId\">\n <SubjectInfoInfoAdd :proId=\"this.form.id\" :proCode=\"this.form.code\" :topicId=\"this.topicId\" :topicCode=\"this.topicCode\" :editSubId=\"this.editSubId\" :subjectType=\"this.subjectType\" @subjectListTigger=\"subjectList\" @subjectAddPeople=\"subjectAddPeople\"/>\n </el-tab-pane>\n <el-tab-pane label=\"经费信息\" name=\"tab5\" v-if=\"budgetForm || (this.view == 'edit' && form.hasBudget)\">\n <BudgetInfo :proId=\"this.form.id\" :proCode=\"this.form.code\" :topicId=\"this.topicId\" :topicCode=\"this.topicCode\" :subjectId=\"this.subjectId\" :subjectCode=\"this.subjectCode\" @addBudgetForm=\"addBudgetForm\"/>\n </el-tab-pane>\n <el-tab-pane label=\"经费信息表单\" name=\"tab6\" v-if=\"budgetForm \">\n <BudgetInfoAdd :proId=\"this.form.id\" :proCode=\"this.form.code\":topicId=\"this.topicId\" :topicCode=\"this.topicCode\" :subjectId=\"this.subjectId\" :subjectCode=\"this.subjectCode\" :editBudId=\"this.editBudId\" :budgetType=\"this.budgetType\" />\n </el-tab-pane>\n\n <el-tab-pane label=\"人员信息\" name=\"tab7\" v-if=\"peopleForm || (this.view == 'edit' && form.hasPeople)\">\n <PeopleInfo :proId=\"this.form.id\" :proCode=\"this.form.code\" :topicId=\"this.topicId\" :topicCode=\"this.topicCode\" :subjectId=\"this.subjectId\" :subjectCode=\"this.subjectCode\" @addPeopleInfo=\"addPeopleInfoForm\"/>\n </el-tab-pane>\n <el-tab-pane label=\"人员信息表单\" name=\"tab8\" v-if=\"peopleForm \">\n <PeopleInfoAdd :proId=\"this.form.id\" :proCode=\"this.form.code\":topicId=\"this.topicId\" :topicCode=\"this.topicCode\" :subjectId=\"this.subjectId\" :subjectCode=\"this.subjectCode\" :editPeopId=\"this.peopleId\" :peopleType=\"this.peopleType\"/>\n </el-tab-pane>\n </el-tabs>\n\n\n </div>\n</template>\n\n<script>\nimport { listInfo, getInfo, delInfo, addInfo, updateInfo, exportInfo } from \"@/api/project/info2\";\nimport TopicInfo from \"@/views/project/topic/index\";//课题信息\nimport TopicInfoAdd from \"@/views/project/topic/add\";//课题新增\nimport SubjectInfo from \"@/views/project/subject/index\";//课题信息\nimport SubjectInfoInfoAdd from \"@/views/project/subject/add\";//课题新增\nimport BudgetInfo from \"@/views/project/budget/index\";//课题信息\nimport BudgetInfoAdd from \"@/views/project/budget/add\";//课题新增\nimport PeopleInfo from \"@/views/project/participants/index\";//人员信息\nimport PeopleInfoAdd from \"@/views/project/participants/add\";//人员信息增加\nimport Editor from '@/components/Editor';\nimport {getToken} from \"@/utils/auth\";\nexport default {\n name: \"Info\",\n components: {TopicInfo,TopicInfoAdd,SubjectInfo,SubjectInfoInfoAdd,BudgetInfo,BudgetInfoAdd,PeopleInfo,PeopleInfoAdd,Editor},\n data() {\n return {\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 + \"/system/info/common/upload\",\n // 上传的文件列表\n fileList: [],\n },\n\n // 上传参数\n upload2: {\n title: \"\",\n open: false,\n // 是否禁用上传\n isUploading: false,\n // 设置上传的请求头部\n headers: { Authorization: \"Bearer \" + getToken() },\n // 上传的地址\n url: process.env.VUE_APP_BASE_API + \"/system/info/common/upload\",\n // 上传的文件列表\n fileList: [],\n },\n\n // 上传参数\n upload3: {\n title: \"\",\n open: false,\n // 是否禁用上传\n isUploading: false,\n // 设置上传的请求头部\n headers: { Authorization: \"Bearer \" + getToken() },\n // 上传的地址\n url: process.env.VUE_APP_BASE_API + \"/system/info/common/upload\",\n // 上传的文件列表\n fileList: [],\n },\n\n activeName: 'tab',\n //展开面板\n activeNames: ['1', '2', '3', '4', '5', '6', '7','8'],\n view:\"\",\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 // isTopic:0,\n isSubmit:false,\n topicForm:false,\n budgetForm:false,\n peopleForm:false,\n editTopicId:0,\n topicType:\"\",\n topicId:0,\n topicCode:\"\",\n subjectForm:false,\n subjectType:\"\",\n editSubId:0,\n subjectId:0,\n subjectCode:\"\",\n budgetType:\"\",\n editBudId:0,\n peopleType:\"\",\n peopleId:0,\n //项目类型\n typeOptions :[],\n secretOptions :[],\n sourceOptions :[],\n categoryOptions:[],\n statusOptions:[],\n yesNoOptions:[],\n pishiStatusOptions:[],\n // 查询参数\n queryParams: {\n pageNum: 1,\n pageSize: 10,\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: null,\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 annexName: null,\n annexPath: null,\n },\n // 表单参数\n form: {},\n // 表单校验\n rules: {\n isTopic: [\n {\n required: true,\n message: '请选择一项',\n trigger: 'blur'\n }\n ],\n }\n };\n },\n watch: {\n $route() {\n // console.log(this.$route)\n this.view = this.$route.query.view;\n let proId = this.$route.query.id;\n if (this.view && this.view == \"edit\") {\n this.form.id = proId;\n this.init(proId);\n }else {\n this.reset();\n this.upload.fileList = [];\n this.upload2.fileList = [];\n this.upload3.fileList = []\n }\n\n\n },\n },\n created() {\n this.view = this.$route.query.view;\n let proId = this.$route.query.id;\n if (this.view && this.view == \"edit\") {\n this.form.id = proId;\n this.init(proId);\n }else {\n this.reset();\n this.upload.fileList = [];\n this.upload2.fileList = [];\n this.upload3.fileList = []\n }\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 this.getDicts(\"project_pishi\").then(response => {\n this.pishiStatusOptions = response.data;\n });\n },\n //页面退出时销毁当前页面防止缓存\n deactivated () {\n this.$destroy(true)\n },\n\n methods: {\n init(id) {\n getInfo(id).then(response => {\n this.form = response.data;\n this.formatUploadAnnex(this.form.annexName,this.form.annexPath);\n this.formatUploadAnnex2(this.form.resultFile,this.form.resultFilePath);\n this.formatUploadAnnex3(this.form.bookFile,this.form.bookFilePath);\n });\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.secretLevel);\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 handleClick(tab, event) {\n this.activeName = tab.name;\n },\n /** 查询【请填写功能名称】列表 */\n getList() {\n this.loading = true;\n listInfo(this.queryParams).then(response => {\n this.infoList = response.rows;\n this.total = response.total;\n this.loading = false;\n });\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: null,\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 annexName: null,\n annexPath: null,\n resultFile:null,\n resultFilePath:null,\n bookFile:null,\n bookFilePath:null,\n };\n this.resetForm(\"form\");\n },\n /** 搜索按钮操作 */\n handleQuery() {\n this.queryParams.pageNum = 1;\n this.getList();\n },\n /** 重置按钮操作 */\n resetQuery() {\n this.resetForm(\"queryForm\");\n this.handleQuery();\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 this.isSubmit = true;\n this.form = response.data;\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 this.isSubmit = true;\n this.form = response.data;\n }\n });\n }\n }\n });\n },\n addTopic(){\n console.log(this.form.id);\n this.topicForm = true;\n this.activeName = \"tab2\";\n this.topicType = 'add';\n this.editTopicId = '0'\n },\n addBudget(){\n this.budgetForm = true;\n this.activeName = \"tab6\";\n this.budgetType='add';\n this.editBudId = '0'\n },\n addPeople(){\n this.peopleForm = true;\n this.activeName = \"tab8\";\n this.peopleType = 'add';\n this.peopleId = 0;\n },\n addPeopleInfoForm(type,id){\n// console.log(type,id)\n this.peopleType = type;\n this.peopleId = id;\n this.peopleForm = true;\n this.activeName = \"tab8\"\n },\n addTopicInfo(type,topicId){\n// console.log(\"tab2\")\n this.topicType = type;\n this.topicForm = true;\n this.editTopicId = topicId;\n this.activeName = \"tab2\"\n },\n addSubject(tab,topicId,topicCode){\n console.log(tab+\"--\"+topicId+\"--\"+topicCode);\n if(topicId){\n this.topicId = topicId;\n this.topicCode = topicCode;\n this.subjectForm = true;\n this.subjectType=\"add\"\n }\n this.activeName = \"tab4\"\n },\n editSubject(tab,type,editId,topicId,topicCode){\n if(type == 'edit'&&editId){\n this.topicId = topicId;\n this.topicCode = topicCode;\n this.subjectForm = true;\n this.subjectType=\"edit\";\n this.editSubId = editId\n }\n this.activeName = \"tab4\"\n },\n addBudgetForm(type,budgetId){\n this.budgetType=type;\n this.editBudId=budgetId;\n this.budgetForm = true;\n this.activeName = \"tab6\"\n },\n addSubjectFromTopic(tab,topicId,topicCode){\n console.log(\"tab1\",tab,topicId,topicCode);\n if(topicId!=0){\n this.topicId = topicId;\n this.topicCode = topicCode;\n this.subjectForm = true;\n this.activeName = tab;\n this.editSubId = '0';\n this.subjectType='add'\n }\n\n },\n topicAddBudget(tab,topicId,topicCode){\n console.log(\"tab1\",tab,topicId,topicCode);\n if(topicId!=0){\n this.topicId = topicId;\n this.topicCode = topicCode\n }\n this.budgetForm = true;\n this.activeName = tab;\n this.budgetType='add';\n this.editBudId = '0'\n },\n topicAddPeople(tab,topicId,topicCode){\n if(topicId!=0){\n this.topicId = topicId;\n this.topicCode = topicCode\n }\n this.peopleType = 'add';\n this.peopleId = 0;\n this.peopleForm = true;\n this.activeName = tab;\n\n },\n subjectList(tab,subjectId,subjectCode){\n this.budgetType='add';\n this.editBudId = '0';\n this.budgetForm = true;\n this.subjectId = subjectId;\n this.subjectCode = subjectCode;\n this.activeName = tab\n\n },\n subjectAddPeople(tab,subjectId,subjectCode){\n\n this.peopleType = 'add';\n this.peopleId = 0;\n this.peopleForm = true;\n this.subjectId = subjectId;\n this.subjectCode = subjectCode;\n this.activeName = tab\n\n },\n //格式化上传附件\n formatUploadAnnex(annexName,annexPath){\n this.upload.fileList = [];\n if (annexPath != null && annexPath != ''){\n let a = JSON.parse(annexName);\n let b = JSON.parse(annexPath);\n if (a == null){\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 formatUploadAnnex2(annexName,annexPath){\n this.upload2.fileList = [];\n if (annexPath != null && annexPath != ''){\n let a = JSON.parse(annexName);\n let b = JSON.parse(annexPath);\n if (a == null){\n a = [];\n b = [];\n }\n for (let i = 0;i<a.length;i++){\n this.upload2.fileList.push({\n 'name':a[i],\n 'url':process.env.VUE_APP_BASE_API + b[i]\n })\n }\n }else {\n this.upload2.fileList = [];\n }\n\n\n },\n formatUploadAnnex3(annexName,annexPath){\n this.upload3.fileList = [];\n if (annexPath != null && annexPath != ''){\n let a = JSON.parse(annexName);\n let b = JSON.parse(annexPath);\n if (a == null){\n a = [];\n b = [];\n }\n for (let i = 0;i<a.length;i++){\n this.upload3.fileList.push({\n 'name':a[i],\n 'url':process.env.VUE_APP_BASE_API + b[i]\n })\n }\n }else {\n this.upload3.fileList = [];\n }\n\n\n },\n\n\n\n\n /**查看附件**/\n viewAnnex(row){\n this.upload.fileList = [];\n this.formatUploadAnnex(row.annexName,row.annexPath);\n this.upload.open = true;\n // this.uploadProject.title = \"项目导入\";\n // this.uploadProject.open = true;\n },\n//查看成果\n viewAnnex2(row){\n this.upload2.fileList = [];\n this.formatUploadAnnex2(row.resultFile,row.resultFilePath);\n this.upload2.open = true;\n // this.uploadProject.title = \"项目导入\";\n // this.uploadProject.open = true;\n },\n//查看立项\n viewAnnex3(row){\n this.upload3.fileList = [];\n this.formatUploadAnnex3(row.bookFile,row.bookFilePath);\n this.upload3.open = true;\n // this.uploadProject.title = \"项目导入\";\n // this.uploadProject.open = true;\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 handlePreview2(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 handlePreview3(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 handle_remove(file, fileList,type) {\n var _tmp = this.upload.fileList;\n for (var i = 0, len = _tmp.length; i < len; i++) {\n if (_tmp[i].name = file.name) {\n _tmp.splice(i, 1);\n break;\n }\n }\n this.upload.fileList = _tmp;\n let a = [];\n let b = [];\n this.upload.fileList.forEach(s=>{\n let url = s['url'];\n url = url.replace(process.env.VUE_APP_BASE_API ,'');\n a.push(s['name']);\n b.push(url);\n });\n this.form.annexName = JSON.stringify(a);\n this.form.annexPath = JSON.stringify(b);\n },\n\n handle_remove2(file, fileList,type) {\n var _tmp = this.upload2.fileList;\n for (var i = 0, len = _tmp.length; i < len; i++) {\n if (_tmp[i].name = file.name) {\n _tmp.splice(i, 1);\n break;\n }\n }\n this.upload2.fileList = _tmp;\n let a = [];\n let b = [];\n this.upload2.fileList.forEach(s=>{\n let url = s['url'];\n url = url.replace(process.env.VUE_APP_BASE_API ,'');\n a.push(s['name']);\n b.push(url);\n });\n this.form.resultFile = JSON.stringify(a);\n this.form.resultFilePath = JSON.stringify(b);\n },\n\n handle_remove3(file, fileList,type) {\n var _tmp = this.upload3.fileList;\n for (var i = 0, len = _tmp.length; i < len; i++) {\n if (_tmp[i].name = file.name) {\n _tmp.splice(i, 1);\n break;\n }\n }\n this.upload3.fileList = _tmp;\n let a = [];\n let b = [];\n this.upload3.fileList.forEach(s=>{\n let url = s['url'];\n url = url.replace(process.env.VUE_APP_BASE_API ,'');\n a.push(s['name']);\n b.push(url);\n });\n this.form.bookFile = JSON.stringify(a);\n this.form.bookFilePath = JSON.stringify(b);\n },\n\n // 文件上传中处理\n handleFileUploadProgress(event, file, fileList) {\n this.upload.isUploading = true;\n },\n handleFileUploadProgress2(event, file, fileList) {\n this.upload2.isUploading = true;\n },\n handleFileUploadProgress3(event, file, fileList) {\n this.upload3.isUploading = true;\n },\n // 文件上传成功处理\n handleFileSuccess(response, file, fileList) {\n this.upload.isUploading = false;\n let a = JSON.parse(this.form.annexName) ;\n let b = JSON.parse(this.form.annexPath) ;\n if (a == null){\n a = [];\n b = [];\n }\n a.push(response.fileName);\n b.push(response.url);\n console.log(a,'--------');\n this.form.annexName = JSON.stringify(a);\n this.form.annexPath = JSON.stringify(b);\n console.log(a,'--------');\n console.log(this.form.annexName,'----+++++++++----');\n // this.form.annexName = response.fileName;\n // this.form.annexPath = response.url;\n this.msgSuccess(response.msg);\n },\n handleFileSuccess2(response, file, fileList) {\n this.upload2.isUploading = false;\n let a = JSON.parse(this.form.resultFile) ;\n let b = JSON.parse(this.form.resultFilePath) ;\n if (a == null){\n a = [];\n b = [];\n }\n a.push(response.fileName);\n b.push(response.url);\n console.log(a,'--------');\n this.form.resultFile = JSON.stringify(a);\n this.form.resultFilePath = JSON.stringify(b);\n console.log(a,'--------');\n console.log(this.form.resultFile,'----+++++++++----');\n // this.form.annexName = response.fileName;\n // this.form.annexPath = response.url;\n this.msgSuccess(response.msg);\n },\n\n handleFileSuccess3(response, file, fileList) {\n this.upload3.isUploading = false;\n let a = JSON.parse(this.form.bookFile) ;\n let b = JSON.parse(this.form.bookFilePath) ;\n if (a == null){\n a = [];\n b = [];\n }\n a.push(response.fileName);\n b.push(response.url);\n console.log(a,'--------');\n this.form.bookFile = JSON.stringify(a);\n this.form.bookFilePath = JSON.stringify(b);\n console.log(a,'--------');\n console.log(this.form.bookFile,'----+++++++++----');\n // this.form.annexName = response.fileName;\n // this.form.annexPath = response.url;\n this.msgSuccess(response.msg);\n },\n }\n};\n</script>\n"],"sourceRoot":"src/views/project/info2"}]} |