1 |
- {"remainingRequest":"E:\\boman-framwork\\ruoyi-ui\\node_modules\\babel-loader\\lib\\index.js!E:\\boman-framwork\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!E:\\boman-framwork\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!E:\\boman-framwork\\ruoyi-ui\\src\\views\\system\\role\\fz-index.vue?vue&type=script&lang=js&","dependencies":[{"path":"E:\\boman-framwork\\ruoyi-ui\\src\\views\\system\\role\\fz-index.vue","mtime":1620609644505},{"path":"E:\\boman-framwork\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"E:\\boman-framwork\\ruoyi-ui\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"E:\\boman-framwork\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"E:\\boman-framwork\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:InVzZSBzdHJpY3QiOwoKdmFyIF9pbnRlcm9wUmVxdWlyZURlZmF1bHQgPSByZXF1aXJlKCJFOi9ib21hbi1mcmFtd29yay9ydW95aS11aS9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9pbnRlcm9wUmVxdWlyZURlZmF1bHQiKS5kZWZhdWx0OwoKT2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsICJfX2VzTW9kdWxlIiwgewogIHZhbHVlOiB0cnVlCn0pOwpleHBvcnRzLmRlZmF1bHQgPSB2b2lkIDA7CgpyZXF1aXJlKCJjb3JlLWpzL21vZHVsZXMvZXMuZnVuY3Rpb24ubmFtZS5qcyIpOwoKcmVxdWlyZSgiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5Lm1hcC5qcyIpOwoKdmFyIF9vYmplY3RTcHJlYWQyID0gX2ludGVyb3BSZXF1aXJlRGVmYXVsdChyZXF1aXJlKCJFOi9ib21hbi1mcmFtd29yay9ydW95aS11aS9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9vYmplY3RTcHJlYWQyIikpOwoKdmFyIF9jcmVhdGVGb3JPZkl0ZXJhdG9ySGVscGVyMiA9IF9pbnRlcm9wUmVxdWlyZURlZmF1bHQocmVxdWlyZSgiRTovYm9tYW4tZnJhbXdvcmsvcnVveWktdWkvbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvY3JlYXRlRm9yT2ZJdGVyYXRvckhlbHBlciIpKTsKCnZhciBfcm9sZSA9IHJlcXVpcmUoIkAvYXBpL3N5c3RlbS9yb2xlIik7Cgp2YXIgX21lbnUgPSByZXF1aXJlKCJAL2FwaS9zeXN0ZW0vbWVudSIpOwoKdmFyIF9kZXB0ID0gcmVxdWlyZSgiQC9hcGkvc3lzdGVtL2RlcHQiKTsKCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCnZhciBfZGVmYXVsdCA9IHsKICBuYW1lOiAiUm9sZSIsCiAgaW5qZWN0OiBbJ3JlbG9hZCddLAogIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7CiAgICByZXR1cm4gewogICAgICBtb2RpZnlTdGF0dXM6IGZhbHNlLAogICAgICBmdWxsc2NyZWVuTG9hZGluZzogZmFsc2UsCiAgICAgIHNlYXJJbmRleDogJycsCiAgICAgIGRhdGE6IFtdLAogICAgICBkZWZhdWx0UHJvcHM6IHsKICAgICAgICBjaGlsZHJlbjogJ2NoaWxkcmVuJywKICAgICAgICBsYWJlbDogJ21lbnVOYW1lJwogICAgICB9LAogICAgICBpbmRleHM6IDMsCiAgICAgIG1lbnVzTGlzdDogJycsCiAgICAgIC8vIOmBrue9qeWxggogICAgICBsb2FkaW5nOiB0cnVlLAogICAgICAvLyDpgInkuK3mlbDnu4QKICAgICAgaWRzOiBbXSwKICAgICAgLy8g6Z2e5Y2V5Liq56aB55SoCiAgICAgIHNpbmdsZTogdHJ1ZSwKICAgICAgLy8g6Z2e5aSa5Liq56aB55SoCiAgICAgIG11bHRpcGxlOiB0cnVlLAogICAgICAvLyDmmL7npLrmkJzntKLmnaHku7YKICAgICAgc2hvd1NlYXJjaDogdHJ1ZSwKICAgICAgLy8g5oC75p2h5pWwCiAgICAgIHRvdGFsOiAwLAogICAgICAvLyDop5LoibLooajmoLzmlbDmja4KICAgICAgcm9sZUxpc3Q6IFtdLAogICAgICAvLyDlvLnlh7rlsYLmoIfpopgKICAgICAgdGl0bGU6ICIiLAogICAgICAvLyDmmK/lkKbmmL7npLrlvLnlh7rlsYIKICAgICAgb3BlbjogZmFsc2UsCiAgICAgIC8vIOaYr+WQpuaYvuekuuW8ueWHuuWxgu+8iOaVsOaNruadg+mZkO+8iQogICAgICBvcGVuRGF0YVNjb3BlOiBmYWxzZSwKICAgICAgbWVudUV4cGFuZDogZmFsc2UsCiAgICAgIG1lbnVOb2RlQWxsOiBmYWxzZSwKICAgICAgZGVwdEV4cGFuZDogdHJ1ZSwKICAgICAgZGVwdE5vZGVBbGw6IGZhbHNlLAogICAgICAvLyDml6XmnJ/ojIPlm7QKICAgICAgZGF0ZVJhbmdlOiBbXSwKICAgICAgLy8g54q25oCB5pWw5o2u5a2X5YW4CiAgICAgIHN0YXR1c09wdGlvbnM6IFtdLAogICAgICAvLyDmlbDmja7ojIPlm7TpgInpobkKICAgICAgZGF0YVNjb3BlT3B0aW9uczogW3sKICAgICAgICB2YWx1ZTogIjEiLAogICAgICAgIGxhYmVsOiAi5YWo6YOo5pWw5o2u5p2D6ZmQIgogICAgICB9LCB7CiAgICAgICAgdmFsdWU6ICIyIiwKICAgICAgICBsYWJlbDogIuiHquWumuaVsOaNruadg+mZkCIKICAgICAgfSwgewogICAgICAgIHZhbHVlOiAiMyIsCiAgICAgICAgbGFiZWw6ICLmnKzpg6jpl6jmlbDmja7mnYPpmZAiCiAgICAgIH0sIHsKICAgICAgICB2YWx1ZTogIjQiLAogICAgICAgIGxhYmVsOiAi5pys6YOo6Zeo5Y+K5Lul5LiL5pWw5o2u5p2D6ZmQIgogICAgICB9LCB7CiAgICAgICAgdmFsdWU6ICI1IiwKICAgICAgICBsYWJlbDogIuS7heacrOS6uuaVsOaNruadg+mZkCIKICAgICAgfV0sCiAgICAgIC8vIOiPnOWNleWIl+ihqAogICAgICBtZW51T3B0aW9uczogW10sCiAgICAgIC8vIOmDqOmXqOWIl+ihqAogICAgICBkZXB0T3B0aW9uczogW10sCiAgICAgIC8vIOafpeivouWPguaVsAogICAgICBxdWVyeVBhcmFtczogewogICAgICAgIHBhZ2VOdW06IDEsCiAgICAgICAgcGFnZVNpemU6IDEwLAogICAgICAgIHJvbGVOYW1lOiB1bmRlZmluZWQsCiAgICAgICAgcm9sZUtleTogdW5kZWZpbmVkLAogICAgICAgIHN0YXR1czogdW5kZWZpbmVkCiAgICAgIH0sCiAgICAgIHJvbGVJZDogJycsCiAgICAgIC8vIOihqOWNleWPguaVsAogICAgICBmb3JtOiB7fSwKICAgICAgLy8g6KGo5Y2V5qCh6aqMCiAgICAgIHJ1bGVzOiB7CiAgICAgICAgcm9sZU5hbWU6IFt7CiAgICAgICAgICByZXF1aXJlZDogdHJ1ZSwKICAgICAgICAgIG1lc3NhZ2U6ICLop5LoibLlkI3np7DkuI3og73kuLrnqboiLAogICAgICAgICAgdHJpZ2dlcjogImJsdXIiCiAgICAgICAgfV0sCiAgICAgICAgcm9sZUtleTogW3sKICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLAogICAgICAgICAgbWVzc2FnZTogIuadg+mZkOWtl+espuS4jeiDveS4uuepuiIsCiAgICAgICAgICB0cmlnZ2VyOiAiYmx1ciIKICAgICAgICB9XSwKICAgICAgICByb2xlU29ydDogW3sKICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLAogICAgICAgICAgbWVzc2FnZTogIuinkuiJsumhuuW6j+S4jeiDveS4uuepuiIsCiAgICAgICAgICB0cmlnZ2VyOiAiYmx1ciIKICAgICAgICB9XQogICAgICB9CiAgICB9OwogIH0sCiAgY3JlYXRlZDogZnVuY3Rpb24gY3JlYXRlZCgpIHsKICAgIHZhciBfdGhpczIgPSB0aGlzOwoKICAgIHRoaXMuZ2V0TGlzdCgpOwogICAgdGhpcy5nZXREaWN0cygic3lzX25vcm1hbF9kaXNhYmxlIikudGhlbihmdW5jdGlvbiAocmVzcG9uc2UpIHsKICAgICAgX3RoaXMyLnN0YXR1c09wdGlvbnMgPSByZXNwb25zZS5kYXRhOwogICAgfSk7CiAgfSwKICBtZXRob2RzOiB7CiAgICBjaGVja0NoYW5nZTogZnVuY3Rpb24gY2hlY2tDaGFuZ2UoKSB7CiAgICAgIHRoaXMubW9kaWZ5U3RhdHVzID0gdHJ1ZTsKICAgIH0sCiAgICBoYW5kbGVNZW51OiBmdW5jdGlvbiBoYW5kbGVNZW51KCkgewogICAgICB2YXIgX3RoaXMzID0gdGhpczsKCiAgICAgIGlmICghdGhpcy5tb2RpZnlTdGF0dXMpIHsKICAgICAgICB0aGlzLm1zZ0luZm8oJ+ayoeacieS/ruaUueeahOWGheWuue+8gScpOwogICAgICAgIHJldHVybjsKICAgICAgfQoKICAgICAgdmFyIGRhdGEgPSBbXTsKCiAgICAgIHZhciBfaXRlcmF0b3IgPSAoMCwgX2NyZWF0ZUZvck9mSXRlcmF0b3JIZWxwZXIyLmRlZmF1bHQpKHRoaXMubWVudXNMaXN0LnN5c01lbnVzKSwKICAgICAgICAgIF9zdGVwOwoKICAgICAgdHJ5IHsKICAgICAgICBmb3IgKF9pdGVyYXRvci5zKCk7ICEoX3N0ZXAgPSBfaXRlcmF0b3IubigpKS5kb25lOykgewogICAgICAgICAgdmFyIGl0ZW0gPSBfc3RlcC52YWx1ZTsKICAgICAgICAgIHZhciBvYmogPSB7fTsKICAgICAgICAgIG9iai5yb2xlSWQgPSB0aGlzLnJvbGVJZDsKICAgICAgICAgIG9iai5tZW51SWQgPSBpdGVtLmlkOwogICAgICAgICAgb2JqLmhlYWQgPSBbXTsKCiAgICAgICAgICB2YXIgX2l0ZXJhdG9yMiA9ICgwLCBfY3JlYXRlRm9yT2ZJdGVyYXRvckhlbHBlcjIuZGVmYXVsdCkoaXRlbS5jb250YWluc0hlYWQpLAogICAgICAgICAgICAgIF9zdGVwMjsKCiAgICAgICAgICB0cnkgewogICAgICAgICAgICBmb3IgKF9pdGVyYXRvcjIucygpOyAhKF9zdGVwMiA9IF9pdGVyYXRvcjIubigpKS5kb25lOykgewogICAgICAgICAgICAgIHZhciBpdGVtQ2hpbGQgPSBfc3RlcDIudmFsdWU7CgogICAgICAgICAgICAgIGlmIChpdGVtQ2hpbGQudHlwZSA9PT0gdHJ1ZSkgewogICAgICAgICAgICAgICAgb2JqLmhlYWQucHVzaChpdGVtQ2hpbGQubmFtZSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgX2l0ZXJhdG9yMi5lKGVycik7CiAgICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICBfaXRlcmF0b3IyLmYoKTsKICAgICAgICAgIH0KCiAgICAgICAgICBkYXRhLnB1c2gob2JqKTsKICAgICAgICB9CiAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgIF9pdGVyYXRvci5lKGVycik7CiAgICAgIH0gZmluYWxseSB7CiAgICAgICAgX2l0ZXJhdG9yLmYoKTsKICAgICAgfQoKICAgICAgKDAsIF9yb2xlLnNldE1lbnUpKEpTT04uc3RyaW5naWZ5KGRhdGEpKS50aGVuKGZ1bmN0aW9uIChyZXMpIHsKICAgICAgICBfdGhpczMubXNnU3VjY2Vzcygn5L+d5a2Y5oiQ5YqfJyk7CgogICAgICAgIF90aGlzMy5tb2RpZnlTdGF0dXMgPSBmYWxzZTsKICAgICAgfSk7CiAgICB9LAogICAgcXhMaXN0OiBmdW5jdGlvbiBxeExpc3QoZSkgewogICAgICB2YXIgX3RoaXM0ID0gdGhpczsKCiAgICAgIHZhciBfdGhpcyA9IHRoaXM7CgogICAgICBpZiAodGhpcy5tb2RpZnlTdGF0dXMpIHsKICAgICAgICB0aGlzLiRjb25maXJtKCflvZPliY3pobXpnaLlrZjlnKjmnKrkv53lrZjlhoXlrrnvvIzmmK/lkKbkv53lrZjlkI7liIfmjaI/JywgIuaPkOmGkiIsIHsKICAgICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiAi55WZ5LiLIiwKICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQ6ICLlj5bmtogiLAogICAgICAgICAgdHlwZTogIndhcm5pbmciCiAgICAgICAgfSkudGhlbihmdW5jdGlvbiAoKSB7fSkuY2F0Y2goZnVuY3Rpb24gKCkgewogICAgICAgICAgX3RoaXMubW9kaWZ5U3RhdHVzID0gZmFsc2U7CgogICAgICAgICAgX3RoaXMucXhMaXN0KGUpOwogICAgICAgIH0pOwogICAgICAgIHJldHVybjsKICAgICAgfQoKICAgICAgKDAsIF9tZW51Lmxpc3RNZW51cykoZS5pZCwgdGhpcy5yb2xlSWQpLnRoZW4oZnVuY3Rpb24gKHJlcykgewogICAgICAgIHZhciBkYXRhID0gcmVzLmRhdGE7CiAgICAgICAgX3RoaXM0Lm1lbnVzTGlzdCA9IGRhdGE7CiAgICAgIH0pOwogICAgfSwKICAgIHJlZnJlc2hGbjogZnVuY3Rpb24gcmVmcmVzaEZuKCkgewogICAgICAvLyB0aGlzLmdldExpc3QoKQogICAgICB0aGlzLnJlbG9hZCgpOyAvLyB0aGlzLmRlcHRPcHRpb25zID0gW10KICAgIH0sCiAgICBzZWFyQnRuRm46IGZ1bmN0aW9uIHNlYXJCdG5GbihpdGVtKSB7CiAgICAgIHRoaXMucm9sZUlkID0gaXRlbS5pZDsKICAgICAgdGhpcy5oYW5kbGVVcGRhdGUoKTsKICAgIH0sCiAgICBoYW5kbGVOb2RlQ2xpY2s6IGZ1bmN0aW9uIGhhbmRsZU5vZGVDbGljaygpIHsKICAgICAgY29uc29sZS5sb2coMjIxKTsKICAgIH0sCgogICAgLyoqIOafpeivouinkuiJsuWIl+ihqCAqLwogICAgZ2V0TGlzdDogZnVuY3Rpb24gZ2V0TGlzdCgpIHsKICAgICAgdmFyIF90aGlzNSA9IHRoaXM7CgogICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlOwogICAgICAoMCwgX3JvbGUubGlzdFJvbGUpKHRoaXMuYWRkRGF0ZVJhbmdlKHRoaXMucXVlcnlQYXJhbXMsIHRoaXMuZGF0ZVJhbmdlKSkudGhlbihmdW5jdGlvbiAocmVzcG9uc2UpIHsKICAgICAgICBfdGhpczUucm9sZUxpc3QgPSByZXNwb25zZS5yb3dzOwogICAgICAgIF90aGlzNS50b3RhbCA9IHJlc3BvbnNlLnRvdGFsOwogICAgICAgIF90aGlzNS5sb2FkaW5nID0gZmFsc2U7CiAgICAgIH0pOwogICAgfSwKCiAgICAvKiog5p+l6K+i6I+c5Y2V5qCR57uT5p6EICovCiAgICBnZXRNZW51VHJlZXNlbGVjdDogZnVuY3Rpb24gZ2V0TWVudVRyZWVzZWxlY3QoKSB7CiAgICAgIHZhciBfdGhpczYgPSB0aGlzOwoKICAgICAgKDAsIF9tZW51LnRyZWVzZWxlY3QpKCkudGhlbihmdW5jdGlvbiAocmVzcG9uc2UpIHsKICAgICAgICBfdGhpczYubWVudU9wdGlvbnMgPSByZXNwb25zZS5kYXRhOwogICAgICB9KTsKICAgIH0sCgogICAgLyoqIOafpeivoumDqOmXqOagkee7k+aehCAqLwogICAgZ2V0RGVwdFRyZWVzZWxlY3Q6IGZ1bmN0aW9uIGdldERlcHRUcmVlc2VsZWN0KCkgewogICAgICB2YXIgX3RoaXM3ID0gdGhpczsKCiAgICAgICgwLCBfZGVwdC50cmVlc2VsZWN0KSgpLnRoZW4oZnVuY3Rpb24gKHJlc3BvbnNlKSB7CiAgICAgICAgX3RoaXM3LmRlcHRPcHRpb25zID0gcmVzcG9uc2UuZGF0YTsKICAgICAgfSk7CiAgICB9LAogICAgLy8g5omA5pyJ6I+c5Y2V6IqC54K55pWw5o2uCiAgICBnZXRNZW51QWxsQ2hlY2tlZEtleXM6IGZ1bmN0aW9uIGdldE1lbnVBbGxDaGVja2VkS2V5cygpIHsKICAgICAgLy8g55uu5YmN6KKr6YCJ5Lit55qE6I+c5Y2V6IqC54K5CiAgICAgIHZhciBjaGVja2VkS2V5cyA9IHRoaXMuJHJlZnMubWVudS5nZXRDaGVja2VkS2V5cygpOyAvLyDljYrpgInkuK3nmoToj5zljZXoioLngrkKCiAgICAgIHZhciBoYWxmQ2hlY2tlZEtleXMgPSB0aGlzLiRyZWZzLm1lbnUuZ2V0SGFsZkNoZWNrZWRLZXlzKCk7CiAgICAgIGNoZWNrZWRLZXlzLnVuc2hpZnQuYXBwbHkoY2hlY2tlZEtleXMsIGhhbGZDaGVja2VkS2V5cyk7CiAgICAgIHJldHVybiBjaGVja2VkS2V5czsKICAgIH0sCiAgICAvLyDmiYDmnInpg6jpl6joioLngrnmlbDmja4KICAgIGdldERlcHRBbGxDaGVja2VkS2V5czogZnVuY3Rpb24gZ2V0RGVwdEFsbENoZWNrZWRLZXlzKCkgewogICAgICAvLyDnm67liY3ooqvpgInkuK3nmoTpg6jpl6joioLngrkKICAgICAgdmFyIGNoZWNrZWRLZXlzID0gdGhpcy4kcmVmcy5kZXB0LmdldENoZWNrZWRLZXlzKCk7IC8vIOWNiumAieS4reeahOmDqOmXqOiKgueCuQoKICAgICAgdmFyIGhhbGZDaGVja2VkS2V5cyA9IHRoaXMuJHJlZnMuZGVwdC5nZXRIYWxmQ2hlY2tlZEtleXMoKTsKICAgICAgY2hlY2tlZEtleXMudW5zaGlmdC5hcHBseShjaGVja2VkS2V5cywgaGFsZkNoZWNrZWRLZXlzKTsKICAgICAgcmV0dXJuIGNoZWNrZWRLZXlzOwogICAgfSwKCiAgICAvKiog5qC55o2u6KeS6ImySUTmn6Xor6Loj5zljZXmoJHnu5PmnoQgKi8KICAgIGdldFJvbGVNZW51VHJlZXNlbGVjdDogZnVuY3Rpb24gZ2V0Um9sZU1lbnVUcmVlc2VsZWN0KGlkKSB7CiAgICAgIHZhciBfdGhpczggPSB0aGlzOwoKICAgICAgcmV0dXJuICgwLCBfbWVudS50cmVlTWVudU5vdEFkZExlYWZOb2RlKShpZCkudGhlbihmdW5jdGlvbiAocmVzcG9uc2UpIHsKICAgICAgICBfdGhpczgubWVudU9wdGlvbnMgPSByZXNwb25zZS5kYXRhOwogICAgICAgIHJldHVybiByZXNwb25zZTsKICAgICAgfSk7CiAgICB9LAoKICAgIC8qKiDmoLnmja7op5LoibJJROafpeivoumDqOmXqOagkee7k+aehCAqLwogICAgZ2V0Um9sZURlcHRUcmVlc2VsZWN0OiBmdW5jdGlvbiBnZXRSb2xlRGVwdFRyZWVzZWxlY3QoaWQpIHsKICAgICAgdmFyIF90aGlzOSA9IHRoaXM7CgogICAgICByZXR1cm4gKDAsIF9kZXB0LnJvbGVEZXB0VHJlZXNlbGVjdCkoaWQpLnRoZW4oZnVuY3Rpb24gKHJlc3BvbnNlKSB7CiAgICAgICAgX3RoaXM5LmRlcHRPcHRpb25zID0gcmVzcG9uc2UuZGVwdHM7CiAgICAgICAgcmV0dXJuIHJlc3BvbnNlOwogICAgICB9KTsKICAgIH0sCiAgICAvLyDop5LoibLnirbmgIHkv67mlLkKICAgIGhhbmRsZVN0YXR1c0NoYW5nZTogZnVuY3Rpb24gaGFuZGxlU3RhdHVzQ2hhbmdlKHJvdykgewogICAgICB2YXIgX3RoaXMxMCA9IHRoaXM7CgogICAgICB2YXIgdGV4dCA9IHJvdy5zdGF0dXMgPT09ICIwIiA/ICLlkK/nlKgiIDogIuWBnOeUqCI7CiAgICAgIHRoaXMuJGNvbmZpcm0oJ+ehruiupOimgSInICsgdGV4dCArICciIicgKyByb3cucm9sZU5hbWUgKyAnIuinkuiJsuWQlz8nLCAi6K2m5ZGKIiwgewogICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiAi56Gu5a6aIiwKICAgICAgICBjYW5jZWxCdXR0b25UZXh0OiAi5Y+W5raIIiwKICAgICAgICB0eXBlOiAid2FybmluZyIKICAgICAgfSkudGhlbihmdW5jdGlvbiAoKSB7CiAgICAgICAgcmV0dXJuICgwLCBfcm9sZS5jaGFuZ2VSb2xlU3RhdHVzKShyb3cuaWQsIHJvdy5zdGF0dXMpOwogICAgICB9KS50aGVuKGZ1bmN0aW9uICgpIHsKICAgICAgICBfdGhpczEwLm1zZ1N1Y2Nlc3ModGV4dCArICLmiJDlip8iKTsKICAgICAgfSkuY2F0Y2goZnVuY3Rpb24gKCkgewogICAgICAgIHJvdy5zdGF0dXMgPSByb3cuc3RhdHVzID09PSAiMCIgPyAiMSIgOiAiMCI7CiAgICAgIH0pOwogICAgfSwKICAgIC8vIOWPlua2iOaMiemSrgogICAgY2FuY2VsOiBmdW5jdGlvbiBjYW5jZWwoKSB7CiAgICAgIHRoaXMub3BlbiA9IGZhbHNlOwogICAgICB0aGlzLnJlc2V0KCk7CiAgICB9LAogICAgLy8g5Y+W5raI5oyJ6ZKu77yI5pWw5o2u5p2D6ZmQ77yJCiAgICBjYW5jZWxEYXRhU2NvcGU6IGZ1bmN0aW9uIGNhbmNlbERhdGFTY29wZSgpIHsKICAgICAgdGhpcy5vcGVuRGF0YVNjb3BlID0gZmFsc2U7CiAgICAgIHRoaXMucmVzZXQoKTsKICAgIH0sCiAgICAvLyDooajljZXph43nva4KICAgIHJlc2V0OiBmdW5jdGlvbiByZXNldCgpIHsKICAgICAgaWYgKHRoaXMuJHJlZnMubWVudSAhPSB1bmRlZmluZWQpIHsKICAgICAgICB0aGlzLiRyZWZzLm1lbnUuc2V0Q2hlY2tlZEtleXMoW10pOwogICAgICB9CgogICAgICB0aGlzLm1lbnVFeHBhbmQgPSBmYWxzZSwgdGhpcy5tZW51Tm9kZUFsbCA9IGZhbHNlLCB0aGlzLmRlcHRFeHBhbmQgPSB0cnVlLCB0aGlzLmRlcHROb2RlQWxsID0gZmFsc2UsIHRoaXMuZm9ybSA9IHsKICAgICAgICBpZDogdW5kZWZpbmVkLAogICAgICAgIHJvbGVOYW1lOiB1bmRlZmluZWQsCiAgICAgICAgcm9sZUtleTogdW5kZWZpbmVkLAogICAgICAgIHJvbGVTb3J0OiAwLAogICAgICAgIHN0YXR1czogIjAiLAogICAgICAgIG1lbnVJZHM6IFtdLAogICAgICAgIGRlcHRJZHM6IFtdLAogICAgICAgIG1lbnVDaGVja1N0cmljdGx5OiB0cnVlLAogICAgICAgIGRlcHRDaGVja1N0cmljdGx5OiB0cnVlLAogICAgICAgIHJlbWFyazogdW5kZWZpbmVkCiAgICAgIH07CiAgICAgIHRoaXMucmVzZXRGb3JtKCJmb3JtIik7CiAgICB9LAoKICAgIC8qKiDmkJzntKLmjInpkq7mk43kvZwgKi8KICAgIGhhbmRsZVF1ZXJ5OiBmdW5jdGlvbiBoYW5kbGVRdWVyeSgpIHsKICAgICAgdGhpcy5xdWVyeVBhcmFtcy5wYWdlTnVtID0gMTsKICAgICAgdGhpcy5nZXRMaXN0KCk7CiAgICB9LAoKICAgIC8qKiDph43nva7mjInpkq7mk43kvZwgKi8KICAgIHJlc2V0UXVlcnk6IGZ1bmN0aW9uIHJlc2V0UXVlcnkoKSB7CiAgICAgIHRoaXMuZGF0ZVJhbmdlID0gW107CiAgICAgIHRoaXMucmVzZXRGb3JtKCJxdWVyeUZvcm0iKTsKICAgICAgdGhpcy5oYW5kbGVRdWVyeSgpOwogICAgfSwKICAgIC8vIOWkmumAieahhumAieS4reaVsOaNrgogICAgaGFuZGxlU2VsZWN0aW9uQ2hhbmdlOiBmdW5jdGlvbiBoYW5kbGVTZWxlY3Rpb25DaGFuZ2Uoc2VsZWN0aW9uKSB7CiAgICAgIHRoaXMuaWRzID0gc2VsZWN0aW9uLm1hcChmdW5jdGlvbiAoaXRlbSkgewogICAgICAgIHJldHVybiBpdGVtLmlkOwogICAgICB9KTsKICAgICAgdGhpcy5zaW5nbGUgPSBzZWxlY3Rpb24ubGVuZ3RoICE9IDE7CiAgICAgIHRoaXMubXVsdGlwbGUgPSAhc2VsZWN0aW9uLmxlbmd0aDsKICAgIH0sCiAgICAvLyDmoJHmnYPpmZDvvIjlsZXlvIAv5oqY5Y+g77yJCiAgICBoYW5kbGVDaGVja2VkVHJlZUV4cGFuZDogZnVuY3Rpb24gaGFuZGxlQ2hlY2tlZFRyZWVFeHBhbmQodmFsdWUsIHR5cGUpIHsKICAgICAgaWYgKHR5cGUgPT0gJ21lbnUnKSB7CiAgICAgICAgdmFyIHRyZWVMaXN0ID0gdGhpcy5tZW51T3B0aW9uczsKCiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0cmVlTGlzdC5sZW5ndGg7IGkrKykgewogICAgICAgICAgdGhpcy4kcmVmcy5tZW51LnN0b3JlLm5vZGVzTWFwW3RyZWVMaXN0W2ldLmlkXS5leHBhbmRlZCA9IHZhbHVlOwogICAgICAgIH0KICAgICAgfSBlbHNlIGlmICh0eXBlID09ICdkZXB0JykgewogICAgICAgIHZhciBfdHJlZUxpc3QgPSB0aGlzLmRlcHRPcHRpb25zOwoKICAgICAgICBmb3IgKHZhciBfaSA9IDA7IF9pIDwgX3RyZWVMaXN0Lmxlbmd0aDsgX2krKykgewogICAgICAgICAgdGhpcy4kcmVmcy5kZXB0LnN0b3JlLm5vZGVzTWFwW190cmVlTGlzdFtfaV0uaWRdLmV4cGFuZGVkID0gdmFsdWU7CiAgICAgICAgfQogICAgICB9CiAgICB9LAogICAgLy8g5qCR5p2D6ZmQ77yI5YWo6YCJL+WFqOS4jemAie+8iQogICAgaGFuZGxlQ2hlY2tlZFRyZWVOb2RlQWxsOiBmdW5jdGlvbiBoYW5kbGVDaGVja2VkVHJlZU5vZGVBbGwodmFsdWUsIHR5cGUpIHsKICAgICAgaWYgKHR5cGUgPT0gJ21lbnUnKSB7CiAgICAgICAgdGhpcy4kcmVmcy5tZW51LnNldENoZWNrZWROb2Rlcyh2YWx1ZSA/IHRoaXMubWVudU9wdGlvbnMgOiBbXSk7CiAgICAgIH0gZWxzZSBpZiAodHlwZSA9PSAnZGVwdCcpIHsKICAgICAgICB0aGlzLiRyZWZzLmRlcHQuc2V0Q2hlY2tlZE5vZGVzKHZhbHVlID8gdGhpcy5kZXB0T3B0aW9ucyA6IFtdKTsKICAgICAgfQogICAgfSwKICAgIC8vIOagkeadg+mZkO+8iOeItuWtkOiBlOWKqO+8iQogICAgaGFuZGxlQ2hlY2tlZFRyZWVDb25uZWN0OiBmdW5jdGlvbiBoYW5kbGVDaGVja2VkVHJlZUNvbm5lY3QodmFsdWUsIHR5cGUpIHsKICAgICAgaWYgKHR5cGUgPT0gJ21lbnUnKSB7CiAgICAgICAgdGhpcy5mb3JtLm1lbnVDaGVja1N0cmljdGx5ID0gdmFsdWUgPyB0cnVlIDogZmFsc2U7CiAgICAgIH0gZWxzZSBpZiAodHlwZSA9PSAnZGVwdCcpIHsKICAgICAgICB0aGlzLmZvcm0uZGVwdENoZWNrU3RyaWN0bHkgPSB2YWx1ZSA/IHRydWUgOiBmYWxzZTsKICAgICAgfQogICAgfSwKCiAgICAvKiog5paw5aKe5oyJ6ZKu5pON5L2cICovCiAgICBoYW5kbGVBZGQ6IGZ1bmN0aW9uIGhhbmRsZUFkZCgpIHsKICAgICAgdGhpcy5yZXNldCgpOwogICAgICB0aGlzLmdldE1lbnVUcmVlc2VsZWN0KCk7CiAgICAgIHRoaXMub3BlbiA9IHRydWU7CiAgICAgIHRoaXMudGl0bGUgPSAi5re75Yqg6KeS6ImyIjsKICAgIH0sCgogICAgLyoqIOS/ruaUueaMiemSruaTjeS9nCAqLwogICAgaGFuZGxlVXBkYXRlOiBmdW5jdGlvbiBoYW5kbGVVcGRhdGUoKSB7CiAgICAgIHZhciBfdGhpczExID0gdGhpczsKCiAgICAgIHRoaXMucmVzZXQoKTsKICAgICAgdGhpcy5mdWxsc2NyZWVuTG9hZGluZyA9IHRydWU7CiAgICAgIHZhciByb2xlTWVudSA9IHRoaXMuZ2V0Um9sZU1lbnVUcmVlc2VsZWN0KHRoaXMucm9sZUlkKTsKICAgICAgcm9sZU1lbnUudGhlbihmdW5jdGlvbiAocmVzKSB7CiAgICAgICAgLy8gbGV0IGNoZWNrZWRLZXlzID0gcmVzLmNoZWNrZWRLZXlzCiAgICAgICAgX3RoaXMxMS5kZXB0T3B0aW9ucyA9IHJlcy5kYXRhOwogICAgICAgIF90aGlzMTEuZnVsbHNjcmVlbkxvYWRpbmcgPSBmYWxzZTsKICAgICAgfSk7CiAgICB9LAoKICAgIC8qKiDpgInmi6nop5LoibLmnYPpmZDojIPlm7Top6blj5EgKi8KICAgIGRhdGFTY29wZVNlbGVjdENoYW5nZTogZnVuY3Rpb24gZGF0YVNjb3BlU2VsZWN0Q2hhbmdlKHZhbHVlKSB7CiAgICAgIGlmICh2YWx1ZSAhPT0gJzInKSB7CiAgICAgICAgdGhpcy4kcmVmcy5kZXB0LnNldENoZWNrZWRLZXlzKFtdKTsKICAgICAgfQogICAgfSwKCiAgICAvKiog5YiG6YWN5pWw5o2u5p2D6ZmQ5pON5L2cICovCiAgICBoYW5kbGVEYXRhU2NvcGU6IGZ1bmN0aW9uIGhhbmRsZURhdGFTY29wZShyb3cpIHsKICAgICAgdmFyIF90aGlzMTIgPSB0aGlzOwoKICAgICAgdGhpcy5yZXNldCgpOwogICAgICB2YXIgcm9sZURlcHRUcmVlc2VsZWN0ID0gdGhpcy5nZXRSb2xlRGVwdFRyZWVzZWxlY3Qocm93LmlkKTsKICAgICAgKDAsIF9yb2xlLmdldFJvbGUpKHJvdy5pZCkudGhlbihmdW5jdGlvbiAocmVzcG9uc2UpIHsKICAgICAgICBfdGhpczEyLmZvcm0gPSByZXNwb25zZS5kYXRhOwogICAgICAgIF90aGlzMTIub3BlbkRhdGFTY29wZSA9IHRydWU7CgogICAgICAgIF90aGlzMTIuJG5leHRUaWNrKGZ1bmN0aW9uICgpIHsKICAgICAgICAgIHJvbGVEZXB0VHJlZXNlbGVjdC50aGVuKGZ1bmN0aW9uIChyZXMpIHsKICAgICAgICAgICAgX3RoaXMxMi4kcmVmcy5kZXB0LnNldENoZWNrZWRLZXlzKHJlcy5jaGVja2VkS2V5cyk7CiAgICAgICAgICB9KTsKICAgICAgICB9KTsKCiAgICAgICAgX3RoaXMxMi50aXRsZSA9ICLliIbphY3mlbDmja7mnYPpmZAiOwogICAgICB9KTsKICAgIH0sCgogICAgLyoqIOaPkOS6pOaMiemSriAqLwogICAgc3VibWl0Rm9ybTogZnVuY3Rpb24gc3VibWl0Rm9ybSgpIHsKICAgICAgdmFyIF90aGlzMTMgPSB0aGlzOwoKICAgICAgdGhpcy4kcmVmc1siZm9ybSJdLnZhbGlkYXRlKGZ1bmN0aW9uICh2YWxpZCkgewogICAgICAgIGlmICh2YWxpZCkgewogICAgICAgICAgaWYgKF90aGlzMTMuZm9ybS5pZCAhPSB1bmRlZmluZWQpIHsKICAgICAgICAgICAgLy8gdGhpcy5mb3JtLm1lbnVJZHMgPSB0aGlzLmdldE1lbnVBbGxDaGVja2VkS2V5cygpOwogICAgICAgICAgICAoMCwgX3JvbGUudXBkYXRlUm9sZSkoX3RoaXMxMy5mb3JtKS50aGVuKGZ1bmN0aW9uIChyZXNwb25zZSkgewogICAgICAgICAgICAgIF90aGlzMTMubXNnU3VjY2Vzcygi5L+u5pS55oiQ5YqfIik7CgogICAgICAgICAgICAgIF90aGlzMTMub3BlbiA9IGZhbHNlOwoKICAgICAgICAgICAgICBfdGhpczEzLmdldExpc3QoKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAvLyB0aGlzLmZvcm0ubWVudUlkcyA9IHRoaXMuZ2V0TWVudUFsbENoZWNrZWRLZXlzKCk7CiAgICAgICAgICAgICgwLCBfcm9sZS5hZGRSb2xlKShfdGhpczEzLmZvcm0pLnRoZW4oZnVuY3Rpb24gKHJlc3BvbnNlKSB7CiAgICAgICAgICAgICAgX3RoaXMxMy5tc2dTdWNjZXNzKCLmlrDlop7miJDlip8iKTsKCiAgICAgICAgICAgICAgX3RoaXMxMy5vcGVuID0gZmFsc2U7CgogICAgICAgICAgICAgIF90aGlzMTMuZ2V0TGlzdCgpOwogICAgICAgICAgICB9KTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0pOwogICAgfSwKCiAgICAvKiog5o+Q5Lqk5oyJ6ZKu77yI5pWw5o2u5p2D6ZmQ77yJICovCiAgICBzdWJtaXREYXRhU2NvcGU6IGZ1bmN0aW9uIHN1Ym1pdERhdGFTY29wZSgpIHsKICAgICAgdmFyIF90aGlzMTQgPSB0aGlzOwoKICAgICAgaWYgKHRoaXMuZm9ybS5pZCAhPSB1bmRlZmluZWQpIHsKICAgICAgICB0aGlzLmZvcm0uZGVwdElkcyA9IHRoaXMuZ2V0RGVwdEFsbENoZWNrZWRLZXlzKCk7CiAgICAgICAgKDAsIF9yb2xlLmRhdGFTY29wZSkodGhpcy5mb3JtKS50aGVuKGZ1bmN0aW9uIChyZXNwb25zZSkgewogICAgICAgICAgX3RoaXMxNC5tc2dTdWNjZXNzKCLkv67mlLnmiJDlip8iKTsKCiAgICAgICAgICBfdGhpczE0Lm9wZW5EYXRhU2NvcGUgPSBmYWxzZTsKCiAgICAgICAgICBfdGhpczE0LmdldExpc3QoKTsKICAgICAgICB9KTsKICAgICAgfQogICAgfSwKCiAgICAvKiog5Yig6Zmk5oyJ6ZKu5pON5L2cICovCiAgICBoYW5kbGVEZWxldGU6IGZ1bmN0aW9uIGhhbmRsZURlbGV0ZShyb3cpIHsKICAgICAgdmFyIF90aGlzMTUgPSB0aGlzOwoKICAgICAgdmFyIGlkcyA9IHJvdy5pZCB8fCB0aGlzLmlkczsKICAgICAgdGhpcy4kY29uZmlybSgn5piv5ZCm56Gu6K6k5Yig6Zmk6KeS6Imy57yW5Y+35Li6IicgKyBpZHMgKyAnIueahOaVsOaNrumhuT8nLCAi6K2m5ZGKIiwgewogICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiAi56Gu5a6aIiwKICAgICAgICBjYW5jZWxCdXR0b25UZXh0OiAi5Y+W5raIIiwKICAgICAgICB0eXBlOiAid2FybmluZyIKICAgICAgfSkudGhlbihmdW5jdGlvbiAoKSB7CiAgICAgICAgcmV0dXJuICgwLCBfcm9sZS5kZWxSb2xlKShpZHMpOwogICAgICB9KS50aGVuKGZ1bmN0aW9uICgpIHsKICAgICAgICBfdGhpczE1LmdldExpc3QoKTsKCiAgICAgICAgX3RoaXMxNS5kZXB0T3B0aW9ucyA9IFtdOwoKICAgICAgICBfdGhpczE1Lm1zZ1N1Y2Nlc3MoIuWIoOmZpOaIkOWKnyIpOwogICAgICB9KTsKICAgIH0sCgogICAgLyoqIOWvvOWHuuaMiemSruaTjeS9nCAqLwogICAgaGFuZGxlRXhwb3J0OiBmdW5jdGlvbiBoYW5kbGVFeHBvcnQoKSB7CiAgICAgIHRoaXMuZG93bmxvYWQoJ3N5c3RlbS9yb2xlL2V4cG9ydCcsICgwLCBfb2JqZWN0U3ByZWFkMi5kZWZhdWx0KSh7fSwgdGhpcy5xdWVyeVBhcmFtcyksICJyb2xlXyIuY29uY2F0KG5ldyBEYXRlKCkuZ2V0VGltZSgpLCAiLnhsc3giKSk7CiAgICB9CiAgfQp9OwpleHBvcnRzLmRlZmF1bHQgPSBfZGVmYXVsdDs="},{"version":3,"sources":["fz-index.vue"],"names":[],"mappings":"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","sourcesContent":["<template>\r\n <div class=\"app-container\">\r\n <el-row class=\"roleBox\">\r\n <el-col :span=\"24\" class=\"roleCol\">\r\n <div class=\"roleH\"></div>\r\n <span>功能权限</span>\r\n </el-col>\r\n <el-col :span=\"24\" class=\"roleBot\">\r\n <el-row :gutter=\"10\" class=\"mb8\">\r\n <el-col :span=\"1.5\">\r\n <el-button type=\"primary\" style=\"background-color: #2AC1CA;color: #fff;border: none;\" plain icon=\"el-icon-plus\"\r\n @click=\"handleAdd\" v-hasPermi=\"['system:role:add']\">新增</el-button>\r\n </el-col>\r\n <el-col :span=\"1.5\">\r\n <el-button type=\"primary\" style=\"background-color: #FF9639;color: #fff;border: none;\" plain icon=\"el-icon-refresh\"\r\n @click=\"refreshFn\" v-hasPermi=\"['system:role:list']\">刷新</el-button>\r\n </el-col>\r\n <el-col :span=\"1.5\">\r\n <el-button type=\"primary\" style=\"background-color: #3C8DBC;color: #fff;border: none;\" plain icon=\"el-icon-my-export\"\r\n @click=\"handleMenu\" v-hasPermi=\"['system:role:edit']\">保存</el-button>\r\n </el-col>\r\n </el-row>\r\n </el-col>\r\n </el-row>\r\n <el-row class=\"roleCont\" style=\"margin-top: 18px;\">\r\n <el-col :span=\"5\" class=\"searBoxs\">\r\n <div class=\"searBox\">\r\n <div class=\"searInput\">\r\n <input type=\"text\" v-model=\"queryParams.roleName\" placeholder=\"请输入角色\">\r\n </div>\r\n <div class=\"searBtn\">\r\n <img src=\"@/assets/images/icon_sr_ss@2x.png\" @click=\"handleQuery\" alt=\"\" class=\"icon\">\r\n </div>\r\n </div>\r\n <div class=\"searList\">\r\n <div class=\"searItem searItemLeft\" element-loading-text=\"拼命加载中\" v-loading.fullscreen.lock=\"fullscreenLoading\"\r\n element-loading-spinner=\"el-icon-loading\" element-loading-background=\"rgba(0, 0, 0, 0.4)\" v-for=\"item in roleList\"\r\n @click=\"searBtnFn(item)\" :class=\"{'active': item.id == roleId}\" :key=\"item.id\">\r\n <span>\r\n {{item.roleName}}\r\n </span>\r\n <i class=\"el-icon-delete\" @click.stop=\"handleDelete(item)\" v-if=\"item.id == roleId\"></i>\r\n </div>\r\n </div>\r\n <pagination sty v-show=\"total>0\" :total=\"total\" layout=\"prev, pager, next\" :page.sync=\"queryParams.pageNum\"\r\n :limit.sync=\"queryParams.pageSize\" />\r\n </el-col>\r\n <el-col :span=\"19\" class=\"roleContr\">\r\n <div class=\"roleContrBox\">\r\n <el-col :span=\"7\">\r\n <div class=\"searContLeft\">\r\n <el-tree class=\"tree-border\" @node-click=\"qxList\" :data=\"deptOptions\"\r\n default-expand-all ref=\"dept\" node-key=\"id\" :props=\"defaultProps\"></el-tree>\r\n </div>\r\n </el-col>\r\n <el-col :span=\"17\">\r\n <div class=\"searContRight\">\r\n <div class=\"searTitle\">\r\n <div class=\"searName\">\r\n 功能\r\n </div>\r\n <div class=\"searItem\" v-for=\"item in menusList.heads\">\r\n {{item.name}}\r\n </div>\r\n </div>\r\n <div class=\"searCont\" v-if=\"menusList.sysMenus.length\" v-for=\"items in menusList.sysMenus\" @click=\"searIndex = items.id\"\r\n :class=\"{'active': searIndex == items.id}\" :key=\"items.id\">\r\n <div class=\"searName\">\r\n {{items.menuName}}\r\n </div>\r\n <div class=\"searItem\" v-for=\"(itemChild,indexChild) in items.containsHead\" :key=\"indexChild\">\r\n <el-checkbox @change=\"checkChange\" :disabled=\"itemChild.type==='0'\" v-model=\"itemChild.type\"></el-checkbox>\r\n </div>\r\n </div>\r\n </div>\r\n </el-col>\r\n </div>\r\n </el-col>\r\n </el-row>\r\n\r\n\r\n <!-- 添加或修改角色配置对话框 -->\r\n <el-dialog :title=\"title\" :visible.sync=\"open\" width=\"500px\" append-to-body>\r\n <el-form ref=\"form\" :model=\"form\" :rules=\"rules\" label-width=\"80px\">\r\n <el-form-item label=\"角色名称\" prop=\"roleName\">\r\n <el-input v-model=\"form.roleName\" placeholder=\"请输入角色名称\" />\r\n </el-form-item>\r\n <el-form-item label=\"权限字符\" prop=\"roleKey\">\r\n <el-input v-model=\"form.roleKey\" placeholder=\"请输入权限字符\" />\r\n </el-form-item>\r\n <el-form-item label=\"角色顺序\" prop=\"roleSort\">\r\n <el-input-number v-model=\"form.roleSort\" controls-position=\"right\" :min=\"0\" />\r\n </el-form-item>\r\n <el-form-item label=\"备注\">\r\n <el-input v-model=\"form.remark\" type=\"textarea\" placeholder=\"请输入内容\"></el-input>\r\n </el-form-item>\r\n </el-form>\r\n <div slot=\"footer\" class=\"dialog-footer\">\r\n <el-button type=\"primary\" @click=\"submitForm\">确 定</el-button>\r\n <el-button @click=\"cancel\">取 消</el-button>\r\n </div>\r\n </el-dialog>\r\n </div>\r\n</template>\r\n\r\n<script>\r\n import {\r\n listRole,\r\n getRole,\r\n delRole,\r\n addRole,\r\n updateRole,\r\n exportRole,\r\n dataScope,\r\n setMenu,\r\n changeRoleStatus\r\n } from \"@/api/system/role\";\r\n import {\r\n treeselect as menuTreeselect,\r\n listMenus,\r\n treeMenuNotAddLeafNode\r\n } from \"@/api/system/menu\";\r\n import {\r\n treeselect as deptTreeselect,\r\n roleDeptTreeselect\r\n } from \"@/api/system/dept\";\r\n\r\n export default {\r\n name: \"Role\",\r\n inject: ['reload'],\r\n data() {\r\n return {\r\n modifyStatus: false,\r\n fullscreenLoading: false,\r\n searIndex: '',\r\n data: [],\r\n defaultProps: {\r\n children: 'children',\r\n label: 'menuName'\r\n },\r\n indexs: 3,\r\n menusList: '',\r\n // 遮罩层\r\n loading: true,\r\n // 选中数组\r\n ids: [],\r\n // 非单个禁用\r\n single: true,\r\n // 非多个禁用\r\n multiple: true,\r\n // 显示搜索条件\r\n showSearch: true,\r\n // 总条数\r\n total: 0,\r\n // 角色表格数据\r\n roleList: [],\r\n // 弹出层标题\r\n title: \"\",\r\n // 是否显示弹出层\r\n open: false,\r\n // 是否显示弹出层(数据权限)\r\n openDataScope: false,\r\n menuExpand: false,\r\n menuNodeAll: false,\r\n deptExpand: true,\r\n deptNodeAll: false,\r\n // 日期范围\r\n dateRange: [],\r\n // 状态数据字典\r\n statusOptions: [],\r\n // 数据范围选项\r\n dataScopeOptions: [{\r\n value: \"1\",\r\n label: \"全部数据权限\"\r\n },\r\n {\r\n value: \"2\",\r\n label: \"自定数据权限\"\r\n },\r\n {\r\n value: \"3\",\r\n label: \"本部门数据权限\"\r\n },\r\n {\r\n value: \"4\",\r\n label: \"本部门及以下数据权限\"\r\n },\r\n {\r\n value: \"5\",\r\n label: \"仅本人数据权限\"\r\n }\r\n ],\r\n // 菜单列表\r\n menuOptions: [],\r\n // 部门列表\r\n deptOptions: [],\r\n // 查询参数\r\n queryParams: {\r\n pageNum: 1,\r\n pageSize: 10,\r\n roleName: undefined,\r\n roleKey: undefined,\r\n status: undefined\r\n },\r\n roleId: '',\r\n // 表单参数\r\n form: {},\r\n // 表单校验\r\n rules: {\r\n roleName: [{\r\n required: true,\r\n message: \"角色名称不能为空\",\r\n trigger: \"blur\"\r\n }],\r\n roleKey: [{\r\n required: true,\r\n message: \"权限字符不能为空\",\r\n trigger: \"blur\"\r\n }],\r\n roleSort: [{\r\n required: true,\r\n message: \"角色顺序不能为空\",\r\n trigger: \"blur\"\r\n }]\r\n }\r\n };\r\n },\r\n created() {\r\n this.getList();\r\n this.getDicts(\"sys_normal_disable\").then(response => {\r\n this.statusOptions = response.data;\r\n });\r\n },\r\n methods: {\r\n checkChange() {\r\n this.modifyStatus = true\r\n },\r\n handleMenu() {\r\n if (!this.modifyStatus) {\r\n this.msgInfo('没有修改的内容!')\r\n return\r\n }\r\n let data = []\r\n for (let item of this.menusList.sysMenus) {\r\n let obj = {}\r\n obj.roleId = this.roleId\r\n obj.menuId = item.id\r\n obj.head = []\r\n for (let itemChild of item.containsHead) {\r\n if (itemChild.type === true) {\r\n obj.head.push(itemChild.name)\r\n }\r\n }\r\n data.push(obj)\r\n }\r\n setMenu(JSON.stringify(data)).then(res => {\r\n this.msgSuccess('保存成功')\r\n this.modifyStatus = false\r\n })\r\n },\r\n qxList(e) {\r\n const _this = this\r\n if (this.modifyStatus) {\r\n this.$confirm('当前页面存在未保存内容,是否保存后切换?', \"提醒\", {\r\n confirmButtonText: \"留下\",\r\n cancelButtonText: \"取消\",\r\n type: \"warning\"\r\n }).then(function() {\r\n\r\n }).catch(function() {\r\n _this.modifyStatus = false\r\n _this.qxList(e)\r\n });\r\n return\r\n }\r\n listMenus(e.id,this.roleId).then(res => {\r\n let data = res.data\r\n this.menusList = data\r\n })\r\n },\r\n refreshFn() {\r\n // this.getList()\r\n this.reload()\r\n // this.deptOptions = []\r\n },\r\n searBtnFn(item) {\r\n this.roleId = item.id\r\n this.handleUpdate()\r\n },\r\n handleNodeClick() {\r\n console.log(221)\r\n },\r\n /** 查询角色列表 */\r\n getList() {\r\n this.loading = true;\r\n listRole(this.addDateRange(this.queryParams, this.dateRange)).then(\r\n response => {\r\n this.roleList = response.rows;\r\n this.total = response.total;\r\n this.loading = false;\r\n }\r\n );\r\n },\r\n /** 查询菜单树结构 */\r\n getMenuTreeselect() {\r\n menuTreeselect().then(response => {\r\n this.menuOptions = response.data;\n });\r\n },\r\n /** 查询部门树结构 */\r\n getDeptTreeselect() {\r\n deptTreeselect().then(response => {\r\n this.deptOptions = response.data;\n });\r\n },\r\n // 所有菜单节点数据\r\n getMenuAllCheckedKeys() {\r\n // 目前被选中的菜单节点\r\n let checkedKeys = this.$refs.menu.getCheckedKeys();\r\n // 半选中的菜单节点\r\n let halfCheckedKeys = this.$refs.menu.getHalfCheckedKeys();\r\n checkedKeys.unshift.apply(checkedKeys, halfCheckedKeys);\r\n return checkedKeys;\r\n },\r\n // 所有部门节点数据\r\n getDeptAllCheckedKeys() {\r\n // 目前被选中的部门节点\r\n let checkedKeys = this.$refs.dept.getCheckedKeys();\r\n // 半选中的部门节点\r\n let halfCheckedKeys = this.$refs.dept.getHalfCheckedKeys();\r\n checkedKeys.unshift.apply(checkedKeys, halfCheckedKeys);\r\n return checkedKeys;\r\n },\r\n /** 根据角色ID查询菜单树结构 */\r\n getRoleMenuTreeselect(id) {\r\n return treeMenuNotAddLeafNode(id).then(response => {\r\n this.menuOptions = response.data;\r\n return response;\r\n });\r\n },\r\n /** 根据角色ID查询部门树结构 */\r\n getRoleDeptTreeselect(id) {\r\n return roleDeptTreeselect(id).then(response => {\r\n this.deptOptions = response.depts;\r\n return response;\r\n });\r\n },\r\n // 角色状态修改\r\n handleStatusChange(row) {\r\n let text = row.status === \"0\" ? \"启用\" : \"停用\";\r\n this.$confirm('确认要\"' + text + '\"\"' + row.roleName + '\"角色吗?', \"警告\", {\r\n confirmButtonText: \"确定\",\r\n cancelButtonText: \"取消\",\r\n type: \"warning\"\r\n }).then(function() {\r\n return changeRoleStatus(row.id, row.status);\r\n }).then(() => {\r\n this.msgSuccess(text + \"成功\");\r\n }).catch(function() {\r\n row.status = row.status === \"0\" ? \"1\" : \"0\";\r\n });\r\n },\r\n // 取消按钮\r\n cancel() {\r\n this.open = false;\r\n this.reset();\r\n },\r\n // 取消按钮(数据权限)\r\n cancelDataScope() {\r\n this.openDataScope = false;\r\n this.reset();\r\n },\r\n // 表单重置\r\n reset() {\r\n if (this.$refs.menu != undefined) {\r\n this.$refs.menu.setCheckedKeys([]);\r\n }\r\n this.menuExpand = false,\r\n this.menuNodeAll = false,\r\n this.deptExpand = true,\r\n this.deptNodeAll = false,\r\n this.form = {\r\n id: undefined,\r\n roleName: undefined,\r\n roleKey: undefined,\r\n roleSort: 0,\r\n status: \"0\",\r\n menuIds: [],\r\n deptIds: [],\r\n menuCheckStrictly: true,\r\n deptCheckStrictly: true,\r\n remark: undefined\r\n };\r\n this.resetForm(\"form\");\r\n },\r\n /** 搜索按钮操作 */\r\n handleQuery() {\r\n this.queryParams.pageNum = 1;\r\n this.getList();\r\n },\r\n /** 重置按钮操作 */\r\n resetQuery() {\r\n this.dateRange = [];\r\n this.resetForm(\"queryForm\");\r\n this.handleQuery();\r\n },\r\n // 多选框选中数据\r\n handleSelectionChange(selection) {\r\n this.ids = selection.map(item => item.id)\r\n this.single = selection.length != 1\r\n this.multiple = !selection.length\r\n },\r\n // 树权限(展开/折叠)\r\n handleCheckedTreeExpand(value, type) {\r\n if (type == 'menu') {\r\n let treeList = this.menuOptions;\r\n for (let i = 0; i < treeList.length; i++) {\r\n this.$refs.menu.store.nodesMap[treeList[i].id].expanded = value;\r\n }\r\n } else if (type == 'dept') {\r\n let treeList = this.deptOptions;\r\n for (let i = 0; i < treeList.length; i++) {\r\n this.$refs.dept.store.nodesMap[treeList[i].id].expanded = value;\r\n }\r\n }\r\n },\r\n // 树权限(全选/全不选)\r\n handleCheckedTreeNodeAll(value, type) {\r\n if (type == 'menu') {\r\n this.$refs.menu.setCheckedNodes(value ? this.menuOptions : []);\r\n } else if (type == 'dept') {\r\n this.$refs.dept.setCheckedNodes(value ? this.deptOptions : []);\r\n }\r\n },\r\n // 树权限(父子联动)\r\n handleCheckedTreeConnect(value, type) {\r\n if (type == 'menu') {\r\n this.form.menuCheckStrictly = value ? true : false;\r\n } else if (type == 'dept') {\r\n this.form.deptCheckStrictly = value ? true : false;\r\n }\r\n },\r\n /** 新增按钮操作 */\r\n handleAdd() {\r\n this.reset();\r\n this.getMenuTreeselect();\r\n this.open = true;\r\n this.title = \"添加角色\";\r\n },\r\n /** 修改按钮操作 */\r\n handleUpdate() {\r\n this.reset();\r\n this.fullscreenLoading = true\r\n const roleMenu = this.getRoleMenuTreeselect(this.roleId);\r\n roleMenu.then(res => {\r\n // let checkedKeys = res.checkedKeys\r\n this.deptOptions = res.data\r\n this.fullscreenLoading = false\r\n });\r\n },\r\n /** 选择角色权限范围触发 */\r\n dataScopeSelectChange(value) {\r\n if (value !== '2') {\r\n this.$refs.dept.setCheckedKeys([]);\r\n }\r\n },\r\n /** 分配数据权限操作 */\r\n handleDataScope(row) {\r\n this.reset();\r\n const roleDeptTreeselect = this.getRoleDeptTreeselect(row.id);\r\n getRole(row.id).then(response => {\r\n this.form = response.data;\r\n this.openDataScope = true;\r\n this.$nextTick(() => {\r\n roleDeptTreeselect.then(res => {\r\n this.$refs.dept.setCheckedKeys(res.checkedKeys);\r\n });\r\n });\r\n this.title = \"分配数据权限\";\r\n });\r\n },\r\n /** 提交按钮 */\r\n submitForm: function() {\r\n this.$refs[\"form\"].validate(valid => {\r\n if (valid) {\r\n if (this.form.id != undefined) {\r\n // this.form.menuIds = this.getMenuAllCheckedKeys();\r\n updateRole(this.form).then(response => {\r\n this.msgSuccess(\"修改成功\");\r\n this.open = false;\r\n this.getList();\r\n });\r\n } else {\r\n // this.form.menuIds = this.getMenuAllCheckedKeys();\r\n addRole(this.form).then(response => {\r\n this.msgSuccess(\"新增成功\");\r\n this.open = false;\r\n this.getList();\r\n });\r\n }\r\n }\r\n });\r\n },\r\n /** 提交按钮(数据权限) */\r\n submitDataScope: function() {\r\n if (this.form.id != undefined) {\r\n this.form.deptIds = this.getDeptAllCheckedKeys();\r\n dataScope(this.form).then(response => {\r\n this.msgSuccess(\"修改成功\");\r\n this.openDataScope = false;\r\n this.getList();\r\n });\r\n }\r\n },\r\n /** 删除按钮操作 */\r\n handleDelete(row) {\r\n const ids = row.id || this.ids;\r\n this.$confirm('是否确认删除角色编号为\"' + ids + '\"的数据项?', \"警告\", {\r\n confirmButtonText: \"确定\",\r\n cancelButtonText: \"取消\",\r\n type: \"warning\",\r\n\r\n }).then(function() {\r\n return delRole(ids);\r\n }).then(() => {\r\n this.getList();\r\n this.deptOptions = []\r\n this.msgSuccess(\"删除成功\");\r\n })\r\n },\r\n /** 导出按钮操作 */\r\n handleExport() {\r\n this.download('system/role/export', {\r\n ...this.queryParams\r\n }, `role_${new Date().getTime()}.xlsx`)\r\n }\r\n }\r\n };\r\n</script>\r\n<style lang=\"scss\" scoped>\r\n .searItemLeft {\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n }\r\n\r\n .roleContrBox {\r\n background-color: #fff;\r\n border-radius: 6px;\r\n overflow: hidden;\r\n padding: 23px 0;\r\n height: calc(100% - 183px);\r\n }\r\n\r\n .roleContr {\r\n padding-left: 17px;\r\n\r\n .searContLeft {\r\n max-height: calc(100vh - 353px);\r\n overflow-y: auto;\r\n box-sizing: border-box;\r\n padding: 23px 17px 23px 23px;\r\n border-right: 2px solid #E5E5E5;\r\n\r\n &::-webkit-scrollbar {\r\n display: none;\r\n }\r\n }\r\n\r\n .searContRight {\r\n padding-left: 18px;\r\n\r\n .searTitle {\r\n display: flex;\r\n padding-left: 11px;\r\n margin-bottom: 26px;\r\n\r\n .searName {\r\n color: #343434;\r\n font-size: 12px;\r\n width: 116px;\r\n }\r\n\r\n .searItem {\r\n flex: 1;\r\n font-size: 12px;\r\n text-align: center;\r\n }\r\n }\r\n\r\n .searCont {\r\n display: flex;\r\n height: 23px;\r\n padding-left: 11px;\r\n align-items: center;\r\n margin-bottom: 4px;\r\n cursor: pointer;\r\n\r\n .searName {\r\n color: #343434;\r\n font-size: 12px;\r\n width: 116px;\r\n }\r\n\r\n .searItem {\r\n flex: 1;\r\n font-size: 12px;\r\n text-align: center;\r\n }\r\n\r\n &:hover {\r\n background-color: rgba(0, 0, 0, .1);\r\n }\r\n }\r\n\r\n .active {\r\n background-color: #CADBE4;\r\n\r\n .searName {\r\n color: #fff;\r\n }\r\n }\r\n }\r\n }\r\n\r\n .searBoxs {\r\n background-color: #fff;\r\n border-radius: 6px;\r\n box-sizing: border-box;\r\n padding: 23px;\r\n\r\n .searBox {\r\n display: flex;\r\n\r\n .searInput {\r\n flex: 1;\r\n height: 32px;\r\n margin-right: 8px;\r\n box-sizing: border-box;\r\n }\r\n\r\n input {\r\n width: 100%;\r\n height: 100%;\r\n background-color: #F7F6F6;\r\n border: none;\r\n padding: 0 7px;\r\n outline: none;\r\n\r\n &::placeholder {\r\n color: #AAAAAA;\r\n font-size: 12px;\r\n }\r\n }\r\n\r\n .searBtn {\r\n width: 30px;\r\n height: 32px;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n background-color: #3C8DBC;\r\n cursor: pointer;\r\n\r\n .icon {\r\n width: 18px;\r\n height: 17px;\r\n }\r\n }\r\n }\r\n\r\n .searList {\r\n padding: 10px 0;\r\n\r\n .searItem {\r\n padding: 0 8px;\r\n line-height: 30px;\r\n font-size: 12px;\r\n color: #343434;\r\n cursor: pointer;\r\n text-align: center;\r\n }\r\n\r\n .active {\r\n background-color: #CADBE4;\r\n color: #3C8DBC;\r\n }\r\n }\r\n }\r\n\r\n .app-container {\r\n background-color: #EFF0FF;\r\n height: calc(100vh - 84px);\r\n box-sizing: border-box;\r\n }\r\n\r\n .roleBox {\r\n padding: 0 23px;\r\n background: #fff;\r\n border-radius: 6px;\r\n\r\n .roleCol {\r\n padding: 20px 0;\r\n border-bottom: 1px solid #E5E5E5;\r\n\r\n .roleH {\r\n width: 18px;\r\n height: 8px;\r\n border-radius: 4px;\r\n background-color: #3C8DBC;\r\n margin-bottom: 8px;\r\n }\r\n\r\n span {\r\n font-size: 15px;\r\n color: #3C8DBC;\r\n }\r\n }\r\n\r\n .roleBot {\r\n padding: 22px 0;\r\n\r\n .roleBtn {\r\n height: 32px;\r\n display: flex;\r\n border-radius: 3px;\r\n justify-content: center;\r\n align-items: center;\r\n width: 83px;\r\n margin-right: 18px;\r\n\r\n .icon {\r\n width: 14px;\r\n height: 14px;\r\n margin-right: 7px;\r\n }\r\n\r\n span {\r\n color: #fff;\r\n font-size: 12px;\r\n }\r\n }\r\n }\r\n }\r\n</style>\r\n<style>\r\n .el-icon-my-export {\r\n background: url('~@/assets/images/icon_btn_bc@2x.png') center no-repeat;\r\n background-size: 13px 13px;\r\n /* background-size: cover;*/\r\n }\r\n\r\n .el-icon-my-export:before {\r\n content: \"替\";\r\n font-size: 16px;\r\n visibility: hidden;\r\n }\r\n\r\n\r\n .el-icon-my-export {\r\n font-size: 16px;\r\n }\r\n\r\n .el-icon-my-export:before {\r\n content: \"\\e611\";\r\n }\r\n</style>\n"],"sourceRoot":"src/views/system/role"}]}
|