701cf2095d2e1044ca793c340a10db47.json 34 KB

1
  1. {"remainingRequest":"/usr/local/develop/php/www/waibao/project/NN2020060801/addons/admin/node_modules/babel-loader/lib/index.js!/usr/local/develop/php/www/waibao/project/NN2020060801/addons/admin/node_modules/cache-loader/dist/cjs.js??ref--0-0!/usr/local/develop/php/www/waibao/project/NN2020060801/addons/admin/node_modules/vue-loader/lib/index.js??vue-loader-options!/usr/local/develop/php/www/waibao/project/NN2020060801/addons/admin/src/views/system/user/index.vue?vue&type=script&lang=js&","dependencies":[{"path":"/usr/local/develop/php/www/waibao/project/NN2020060801/addons/admin/src/views/system/user/index.vue","mtime":1618041728000},{"path":"/usr/local/develop/php/www/waibao/project/NN2020060801/addons/admin/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/usr/local/develop/php/www/waibao/project/NN2020060801/addons/admin/node_modules/babel-loader/lib/index.js","mtime":499162500000},{"path":"/usr/local/develop/php/www/waibao/project/NN2020060801/addons/admin/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/usr/local/develop/php/www/waibao/project/NN2020060801/addons/admin/node_modules/vue-loader/lib/index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkubWFwIjsKaW1wb3J0IF9vYmplY3RTcHJlYWQgZnJvbSAiL3Vzci9sb2NhbC9kZXZlbG9wL3BocC93d3cvd2FpYmFvL3Byb2plY3QvTk4yMDIwMDYwODAxL2FkZG9ucy9hZG1pbi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vb2JqZWN0U3ByZWFkMiI7Ci8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCmltcG9ydCB1cGxvYWRJbWFnZSBmcm9tICdAL2NvbXBvbmVudHMvdXBsb2FkSW1hZ2UnOwppbXBvcnQgeyBtYXBHZXR0ZXJzIH0gZnJvbSAidnVleCI7CmV4cG9ydCBkZWZhdWx0IHsKICBuYW1lOiAiU3lzVXNlciIsCiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHsKICAgIHJldHVybiB7CiAgICAgIHRhYmxlOiB7CiAgICAgICAgdXJsOiAnL3VzZXIvaW5kZXgnLAogICAgICAgIHdoZXJlOiB7fQogICAgICB9LAogICAgICAvLyDooajmoLzphY3nva4KICAgICAgY2hvb3NlOiBbXSwKICAgICAgLy8g6KGo5qC86YCJ5Lit5pWw5o2uCiAgICAgIHNob3dFZGl0OiBmYWxzZSwKICAgICAgLy8g5piv5ZCm5pi+56S66KGo5Y2V5by556qXCiAgICAgIGVkaXRGb3JtOiB7fSwKICAgICAgLy8g6KGo5Y2V5pWw5o2uCiAgICAgIGVkaXRSdWxlczogewogICAgICAgIC8vIOihqOWNlemqjOivgeinhOWImQogICAgICAgIHVzZXJuYW1lOiBbewogICAgICAgICAgcmVxdWlyZWQ6IHRydWUsCiAgICAgICAgICBtZXNzYWdlOiAn6K+36L6T5YWl55So5oi36LSm5Y+3JywKICAgICAgICAgIHRyaWdnZXI6ICdibHVyJwogICAgICAgIH1dLAogICAgICAgIHJlYWxuYW1lOiBbewogICAgICAgICAgcmVxdWlyZWQ6IHRydWUsCiAgICAgICAgICBtZXNzYWdlOiAn6K+36L6T5YWl55So5oi35aeT5ZCNJywKICAgICAgICAgIHRyaWdnZXI6ICdibHVyJwogICAgICAgIH1dLAogICAgICAgIGdlbmRlcjogW3sKICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLAogICAgICAgICAgbWVzc2FnZTogJ+ivt+mAieaLqeaAp+WIqycsCiAgICAgICAgICB0cmlnZ2VyOiAnYmx1cicKICAgICAgICB9XSwKICAgICAgICBwYXNzd29yZDogW3sKICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLAogICAgICAgICAgbWVzc2FnZTogJ+ivt+i+k+WFpeWvhueggScsCiAgICAgICAgICB0cmlnZ2VyOiAnYmx1cicKICAgICAgICB9XQogICAgICB9LAogICAgICByb2xlTGlzdDogW10sCiAgICAgIC8vIOinkuiJsuWIl+ihqAogICAgICBsZXZlbExpc3Q6IFtdLAogICAgICAvLyDogYznuqfliJfooagKICAgICAgcG9zaXRpb25MaXN0OiBbXSAvLyDlspfkvY3liJfooagKCiAgICB9OwogIH0sCiAgY29tcHV0ZWQ6IF9vYmplY3RTcHJlYWQoe30sIG1hcEdldHRlcnMoWyJwZXJtaXNzaW9uIl0pKSwKICBjb21wb25lbnRzOiB7CiAgICB1cGxvYWRJbWFnZTogdXBsb2FkSW1hZ2UKICB9LAogIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7CiAgICB0aGlzLnF1ZXJ5Um9sZXMoKTsgLy8g5p+l6K+i6KeS6Imy5YiX6KGoCgogICAgdGhpcy5nZXRMZXZlbExpc3QoKTsgLy8g5p+l6K+i6IGM57qn5YiX6KGoCgogICAgdGhpcy5nZXRQb3NpdGlvbkxpc3QoKTsgLy8g5p+l6K+i5bKX5L2N5YiX6KGoCiAgfSwKICBtZXRob2RzOiB7CiAgICAvKiDmmL7npLrnvJbovpEgKi8KICAgIGVkaXQ6IGZ1bmN0aW9uIGVkaXQocm93KSB7CiAgICAgIHRoaXMuZWRpdEZvcm0gPSBPYmplY3QuYXNzaWduKHt9LCByb3csIHsKICAgICAgICByb2xlX2lkczogcm93LnJvbGVzLm1hcChmdW5jdGlvbiAoZCkgewogICAgICAgICAgcmV0dXJuIGQuaWQ7CiAgICAgICAgfSkKICAgICAgfSk7CiAgICAgIHRoaXMuc2hvd0VkaXQgPSB0cnVlOwogICAgfSwKCiAgICAvKiDkv53lrZjnvJbovpEgKi8KICAgIHNhdmU6IGZ1bmN0aW9uIHNhdmUoKSB7CiAgICAgIHZhciBfdGhpcyA9IHRoaXM7CgogICAgICB0aGlzLiRyZWZzWydlZGl0Rm9ybSddLnZhbGlkYXRlKGZ1bmN0aW9uICh2YWxpZCkgewogICAgICAgIGlmICh2YWxpZCkgewogICAgICAgICAgdmFyIGxvYWRpbmcgPSBfdGhpcy4kbG9hZGluZyh7CiAgICAgICAgICAgIGxvY2s6IHRydWUKICAgICAgICAgIH0pOwoKICAgICAgICAgIF90aGlzLiRodHRwLnBvc3QoJy91c2VyL2VkaXQnLCBfdGhpcy5lZGl0Rm9ybSkudGhlbihmdW5jdGlvbiAocmVzKSB7CiAgICAgICAgICAgIGxvYWRpbmcuY2xvc2UoKTsKCiAgICAgICAgICAgIGlmIChyZXMuZGF0YS5jb2RlID09PSAwKSB7CiAgICAgICAgICAgICAgX3RoaXMuc2hvd0VkaXQgPSBmYWxzZTsKCiAgICAgICAgICAgICAgX3RoaXMuJG1lc3NhZ2UoewogICAgICAgICAgICAgICAgdHlwZTogJ3N1Y2Nlc3MnLAogICAgICAgICAgICAgICAgbWVzc2FnZTogcmVzLmRhdGEubXNnCiAgICAgICAgICAgICAgfSk7CgogICAgICAgICAgICAgIF90aGlzLiRyZWZzLnRhYmxlLnJlbG9hZCgpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgIF90aGlzLiRtZXNzYWdlLmVycm9yKHJlcy5kYXRhLm1zZyk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pLmNhdGNoKGZ1bmN0aW9uIChlKSB7CiAgICAgICAgICAgIGxvYWRpbmcuY2xvc2UoKTsKCiAgICAgICAgICAgIF90aGlzLiRtZXNzYWdlLmVycm9yKGUubWVzc2FnZSk7CiAgICAgICAgICB9KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KICAgICAgfSk7CiAgICB9LAoKICAgIC8qIOWIoOmZpCAqLwogICAgcmVtb3ZlOiBmdW5jdGlvbiByZW1vdmUocm93KSB7CiAgICAgIHZhciBfdGhpczIgPSB0aGlzOwoKICAgICAgaWYgKCFyb3cpIHsKICAgICAgICAvLyDmibnph4/liKDpmaQKICAgICAgICBpZiAodGhpcy5jaG9vc2UubGVuZ3RoID09PSAwKSByZXR1cm4gdGhpcy4kbWVzc2FnZS5lcnJvcign6K+36Iez5bCR6YCJ5oup5LiA5p2h5pWw5o2uJyk7CiAgICAgICAgdmFyIGlkcyA9IHRoaXMuY2hvb3NlLm1hcChmdW5jdGlvbiAoZCkgewogICAgICAgICAgcmV0dXJuIGQuaWQ7CiAgICAgICAgfSk7CiAgICAgICAgdGhpcy4kY29uZmlybSgn56Gu5a6a6KaB5Yig6Zmk6YCJ5Lit55qE55So5oi35ZCXPycsICfmj5DnpLonLCB7CiAgICAgICAgICB0eXBlOiAnd2FybmluZycKICAgICAgICB9KS50aGVuKGZ1bmN0aW9uICgpIHsKICAgICAgICAgIHZhciBsb2FkaW5nID0gX3RoaXMyLiRsb2FkaW5nKHsKICAgICAgICAgICAgbG9jazogdHJ1ZQogICAgICAgICAgfSk7CgogICAgICAgICAgX3RoaXMyLiRodHRwLnBvc3QoJy91c2VyL2RlbGV0ZScsIHsKICAgICAgICAgICAgaWQ6IGlkcwogICAgICAgICAgfSkudGhlbihmdW5jdGlvbiAocmVzKSB7CiAgICAgICAgICAgIGxvYWRpbmcuY2xvc2UoKTsKCiAgICAgICAgICAgIGlmIChyZXMuZGF0YS5jb2RlID09PSAwKSB7CiAgICAgICAgICAgICAgX3RoaXMyLiRtZXNzYWdlKHsKICAgICAgICAgICAgICAgIHR5cGU6ICdzdWNjZXNzJywKICAgICAgICAgICAgICAgIG1lc3NhZ2U6IHJlcy5kYXRhLm1zZwogICAgICAgICAgICAgIH0pOwoKICAgICAgICAgICAgICBfdGhpczIuJHJlZnMudGFibGUucmVsb2FkKCk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgX3RoaXMyLiRtZXNzYWdlLmVycm9yKHJlcy5kYXRhLm1zZyk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pLmNhdGNoKGZ1bmN0aW9uIChlKSB7CiAgICAgICAgICAgIGxvYWRpbmcuY2xvc2UoKTsKCiAgICAgICAgICAgIF90aGlzMi4kbWVzc2FnZS5lcnJvcihlLm1lc3NhZ2UpOwogICAgICAgICAgfSk7CiAgICAgICAgfSkuY2F0Y2goZnVuY3Rpb24gKCkgewogICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgfSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgLy8g5Y2V5Liq5Yig6ZmkCiAgICAgICAgdmFyIGxvYWRpbmcgPSB0aGlzLiRsb2FkaW5nKHsKICAgICAgICAgIGxvY2s6IHRydWUKICAgICAgICB9KTsKICAgICAgICB0aGlzLiRodHRwLnBvc3QoJy91c2VyL2RlbGV0ZScsIHsKICAgICAgICAgIGlkOiByb3cuaWQKICAgICAgICB9KS50aGVuKGZ1bmN0aW9uIChyZXMpIHsKICAgICAgICAgIGxvYWRpbmcuY2xvc2UoKTsKCiAgICAgICAgICBpZiAocmVzLmRhdGEuY29kZSA9PT0gMCkgewogICAgICAgICAgICBfdGhpczIuJG1lc3NhZ2UoewogICAgICAgICAgICAgIHR5cGU6ICdzdWNjZXNzJywKICAgICAgICAgICAgICBtZXNzYWdlOiByZXMuZGF0YS5tc2cKICAgICAgICAgICAgfSk7CgogICAgICAgICAgICBfdGhpczIuJHJlZnMudGFibGUucmVsb2FkKCk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBfdGhpczIuJG1lc3NhZ2UuZXJyb3IocmVzLmRhdGEubXNnKTsKICAgICAgICAgIH0KICAgICAgICB9KS5jYXRjaChmdW5jdGlvbiAoZSkgewogICAgICAgICAgbG9hZGluZy5jbG9zZSgpOwoKICAgICAgICAgIF90aGlzMi4kbWVzc2FnZS5lcnJvcihlLm1lc3NhZ2UpOwogICAgICAgIH0pOwogICAgICB9CiAgICB9LAoKICAgIC8qKg0KICAgICAqIOmHjee9ruWvhueggQ0KICAgICAqLwogICAgcmVzZXRQd2Q6IGZ1bmN0aW9uIHJlc2V0UHdkKHJvdykgewogICAgICB2YXIgX3RoaXMzID0gdGhpczsKCiAgICAgIHZhciBsb2FkaW5nID0gdGhpcy4kbG9hZGluZyh7CiAgICAgICAgbG9jazogdHJ1ZQogICAgICB9KTsKICAgICAgdGhpcy4kaHR0cC5wb3N0KCcvdXNlci9yZXNldFB3ZCcsIHsKICAgICAgICBpZDogcm93LmlkCiAgICAgIH0pLnRoZW4oZnVuY3Rpb24gKHJlcykgewogICAgICAgIGxvYWRpbmcuY2xvc2UoKTsKCiAgICAgICAgaWYgKHJlcy5kYXRhLmNvZGUgPT09IDApIHsKICAgICAgICAgIF90aGlzMy4kbWVzc2FnZSh7CiAgICAgICAgICAgIHR5cGU6ICdzdWNjZXNzJywKICAgICAgICAgICAgbWVzc2FnZTogcmVzLmRhdGEubXNnCiAgICAgICAgICB9KTsKCiAgICAgICAgICBfdGhpczMuJHJlZnMudGFibGUucmVsb2FkKCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIF90aGlzMy4kbWVzc2FnZS5lcnJvcihyZXMuZGF0YS5tc2cpOwogICAgICAgIH0KICAgICAgfSkuY2F0Y2goZnVuY3Rpb24gKGUpIHsKICAgICAgICBsb2FkaW5nLmNsb3NlKCk7CgogICAgICAgIF90aGlzMy4kbWVzc2FnZS5lcnJvcihlLm1lc3NhZ2UpOwogICAgICB9KTsKICAgIH0sCgogICAgLyog5pu05pS554q25oCBICovCiAgICBlZGl0U3RhdHVzOiBmdW5jdGlvbiBlZGl0U3RhdHVzKHJvdykgewogICAgICB2YXIgX3RoaXM0ID0gdGhpczsKCiAgICAgIHZhciBsb2FkaW5nID0gdGhpcy4kbG9hZGluZyh7CiAgICAgICAgbG9jazogdHJ1ZQogICAgICB9KTsKICAgICAgdmFyIHBhcmFtcyA9IE9iamVjdC5hc3NpZ24oe30sIHJvdyk7CiAgICAgIHRoaXMuJGh0dHAucG9zdCgnL3VzZXIvc3RhdHVzJywgcGFyYW1zKS50aGVuKGZ1bmN0aW9uIChyZXMpIHsKICAgICAgICBsb2FkaW5nLmNsb3NlKCk7CgogICAgICAgIGlmIChyZXMuZGF0YS5jb2RlID09PSAwKSB7CiAgICAgICAgICBfdGhpczQuJG1lc3NhZ2UoewogICAgICAgICAgICB0eXBlOiAnc3VjY2VzcycsCiAgICAgICAgICAgIG1lc3NhZ2U6IHJlcy5kYXRhLm1zZwogICAgICAgICAgfSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHJvdy5zdGF0dXMgPSAhcm93LnN0YXR1cyA/IDIgOiAxOwoKICAgICAgICAgIF90aGlzNC4kbWVzc2FnZS5lcnJvcihyZXMuZGF0YS5tc2cpOwogICAgICAgIH0KICAgICAgfSkuY2F0Y2goZnVuY3Rpb24gKGUpIHsKICAgICAgICBsb2FkaW5nLmNsb3NlKCk7CgogICAgICAgIF90aGlzNC4kbWVzc2FnZS5lcnJvcihlLm1lc3NhZ2UpOwogICAgICB9KTsKICAgIH0sCgogICAgLyog5p+l6K+i6KeS6Imy5YiX6KGoICovCiAgICBxdWVyeVJvbGVzOiBmdW5jdGlvbiBxdWVyeVJvbGVzKCkgewogICAgICB2YXIgX3RoaXM1ID0gdGhpczsKCiAgICAgIHRoaXMuJGh0dHAuZ2V0KCcvcm9sZS9nZXRSb2xlTGlzdCcpLnRoZW4oZnVuY3Rpb24gKHJlcykgewogICAgICAgIGlmIChyZXMuZGF0YS5jb2RlID09PSAwKSB7CiAgICAgICAgICBfdGhpczUucm9sZUxpc3QgPSByZXMuZGF0YS5kYXRhOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBfdGhpczUuJG1lc3NhZ2UuZXJyb3IocmVzLmRhdGEubXNnKTsKICAgICAgICB9CiAgICAgIH0pLmNhdGNoKGZ1bmN0aW9uIChlKSB7CiAgICAgICAgX3RoaXM1LiRtZXNzYWdlLmVycm9yKGUubWVzc2FnZSk7CiAgICAgIH0pOwogICAgfSwKCiAgICAvKioNCiAgICAgKiDojrflj5bogYznuqfliJfooagNCiAgICAgKi8KICAgIGdldExldmVsTGlzdDogZnVuY3Rpb24gZ2V0TGV2ZWxMaXN0KCkgewogICAgICB2YXIgX3RoaXM2ID0gdGhpczsKCiAgICAgIHRoaXMuJGh0dHAuZ2V0KCcvbGV2ZWwvZ2V0TGV2ZWxMaXN0JykudGhlbihmdW5jdGlvbiAocmVzKSB7CiAgICAgICAgaWYgKHJlcy5kYXRhLmNvZGUgPT09IDApIHsKICAgICAgICAgIF90aGlzNi5sZXZlbExpc3QgPSByZXMuZGF0YS5kYXRhOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBfdGhpczYuJG1lc3NhZ2UuZXJyb3IocmVzLmRhdGEubXNnKTsKICAgICAgICB9CiAgICAgIH0pLmNhdGNoKGZ1bmN0aW9uIChlKSB7CiAgICAgICAgX3RoaXM2LiRtZXNzYWdlLmVycm9yKGUubWVzc2FnZSk7CiAgICAgIH0pOwogICAgfSwKCiAgICAvKioNCiAgICAgKiDojrflj5blspfkvY3liJfooagNCiAgICAgKi8KICAgIGdldFBvc2l0aW9uTGlzdDogZnVuY3Rpb24gZ2V0UG9zaXRpb25MaXN0KCkgewogICAgICB2YXIgX3RoaXM3ID0gdGhpczsKCiAgICAgIHRoaXMuJGh0dHAuZ2V0KCcvcG9zaXRpb24vZ2V0UG9zaXRpb25MaXN0JykudGhlbihmdW5jdGlvbiAocmVzKSB7CiAgICAgICAgaWYgKHJlcy5kYXRhLmNvZGUgPT09IDApIHsKICAgICAgICAgIF90aGlzNy5wb3NpdGlvbkxpc3QgPSByZXMuZGF0YS5kYXRhOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBfdGhpczcuJG1lc3NhZ2UuZXJyb3IocmVzLmRhdGEubXNnKTsKICAgICAgICB9CiAgICAgIH0pLmNhdGNoKGZ1bmN0aW9uIChlKSB7CiAgICAgICAgX3RoaXM3LiRtZXNzYWdlLmVycm9yKGUubWVzc2FnZSk7CiAgICAgIH0pOwogICAgfQogIH0KfTs="},{"version":3,"sources":["index.vue"],"names":[],"mappings":"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","sourcesContent":["<template>\r\n <div class=\"ele-body\">\r\n <el-card shadow=\"never\">\r\n <!-- 搜索表单 -->\r\n <el-form :model=\"table.where\" label-width=\"77px\" class=\"ele-form-search\"\r\n @keyup.enter.native=\"$refs.table.reload()\" @submit.native.prevent>\r\n <el-row :gutter=\"15\">\r\n <el-col :md=\"6\" :sm=\"12\">\r\n <el-form-item label=\"用户账号:\">\r\n <el-input v-model=\"table.where.username\" placeholder=\"请输入用户账号\" clearable/>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :md=\"6\" :sm=\"12\">\r\n <el-form-item label=\"用户姓名:\">\r\n <el-input v-model=\"table.where.realname\" placeholder=\"请输入用户姓名\" clearable/>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :md=\"6\" :sm=\"12\">\r\n <el-form-item label=\"性别:\">\r\n <el-select v-model=\"table.where.gender\" placeholder=\"请选择\" clearable class=\"ele-fluid\">\r\n <el-option label=\"男\" value=\"1\"/>\r\n <el-option label=\"女\" value=\"2\"/>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :md=\"6\" :sm=\"12\">\r\n <div class=\"ele-form-actions\">\r\n <el-button type=\"primary\" @click=\"$refs.table.reload()\" icon=\"el-icon-search\" class=\"ele-btn-icon\">查询\r\n </el-button>\r\n <el-button @click=\"(table.where={})&&$refs.table.reload()\">重置</el-button>\r\n </div>\r\n </el-col>\r\n </el-row>\r\n </el-form>\r\n <!-- 操作按钮 -->\r\n <div class=\"ele-table-tool ele-table-tool-default\">\r\n <el-button @click=\"showEdit=true\" type=\"primary\" icon=\"el-icon-plus\" class=\"ele-btn-icon\" size=\"small\" v-if=\"permission.includes('sys:user:add')\">添加\r\n </el-button>\r\n <el-button @click=\"remove()\" type=\"danger\" icon=\"el-icon-delete\" class=\"ele-btn-icon\" size=\"small\" v-if=\"permission.includes('sys:user:dall')\">批量删除\r\n </el-button>\r\n </div>\r\n <!-- 数据表格 -->\r\n <ele-data-table ref=\"table\" :config=\"table\" :choose.sync=\"choose\" height=\"calc(100vh - 315px)\" highlight-current-row>\r\n <template slot-scope=\"{index}\">\r\n <el-table-column type=\"selection\" width=\"45\" align=\"center\" fixed=\"left\"/>\r\n <el-table-column type=\"index\" :index=\"index\" label=\"编号\" width=\"60\" align=\"center\" fixed=\"left\" show-overflow-tooltip/>\r\n <el-table-column prop=\"username\" label=\"用户账号\" sortable=\"custom\" show-overflow-tooltip min-width=\"110\"/>\r\n <el-table-column prop=\"realname\" label=\"用户姓名\" sortable=\"custom\" show-overflow-tooltip min-width=\"110\"/>\r\n <el-table-column label=\"头像\" min-width=\"60\" align=\"center\">\r\n <template slot-scope=\"{row}\">\r\n <el-avatar shape=\"square\" :size=\"25\" :src=\"row.avatar\"/>\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"gender_name\" label=\"性别\" sortable=\"custom\" show-overflow-tooltip min-width=\"80\"/>\r\n <el-table-column prop=\"mobile\" label=\"手机号\" sortable=\"custom\" show-overflow-tooltip min-width=\"110\"/>\r\n <el-table-column label=\"角色\" show-overflow-tooltip min-width=\"200\">\r\n <template slot-scope=\"{row}\">\r\n <el-tag v-for=\"item in row.roles\" :key=\"item.id\" type=\"primary\" size=\"mini\">{{\r\n item.name\r\n }}\r\n </el-tag>\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"status\" label=\"状态\" width=\"75px\" sortable=\"custom\" :resizable=\"false\">\r\n <template slot-scope=\"{row}\">\r\n <el-switch v-model=\"row.status\" @change=\"editStatus(row)\" :active-value=\"1\" :inactive-value=\"2\"/>\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"level_name\" label=\"职级\" sortable=\"custom\" show-overflow-tooltip min-width=\"100\"/>\r\n <el-table-column prop=\"position_name\" label=\"岗位\" sortable=\"custom\" show-overflow-tooltip min-width=\"100\"/>\r\n <el-table-column label=\"创建时间\" sortable=\"custom\" show-overflow-tooltip min-width=\"160\">\r\n <template slot-scope=\"{row}\">{{ row.create_time | toDateString }}</template>\r\n </el-table-column>\r\n <el-table-column label=\"操作\" width=\"220px\" align=\"center\" :resizable=\"false\" fixed=\"right\">\r\n <template slot-scope=\"{row}\">\r\n <el-link @click=\"edit(row)\" icon=\"el-icon-edit\" type=\"primary\" :underline=\"false\" v-if=\"permission.includes('sys:user:edit')\">修改</el-link>\r\n <el-popconfirm title=\"确定要删除此用户吗?\" @confirm=\"remove(row)\" class=\"ele-action\">\r\n <el-link slot=\"reference\" icon=\"el-icon-delete\" type=\"danger\" :underline=\"false\" v-if=\"permission.includes('sys:user:delete')\">删除</el-link>\r\n </el-popconfirm>\r\n <el-popconfirm title=\"确定要重置密码吗?\" @confirm=\"resetPwd(row)\" class=\"ele-action\">\r\n <el-link slot=\"reference\" icon=\"el-icon-copy-document\" type=\"success\" :underline=\"false\" v-if=\"permission.includes('sys:user:resetPwd')\">重置密码</el-link>\r\n </el-popconfirm>\r\n </template>\r\n </el-table-column>\r\n </template>\r\n </ele-data-table>\r\n </el-card>\r\n <!-- 编辑弹窗 -->\r\n <el-dialog :title=\"editForm.id?'修改用户':'添加用户'\" :visible.sync=\"showEdit\" width=\"700px\"\r\n @closed=\"editForm={}\" :destroy-on-close=\"true\" custom-class=\"ele-dialog-form\" :lock-scroll=\"false\">\r\n <el-form :model=\"editForm\" ref=\"editForm\" :rules=\"editRules\" label-width=\"100px\">\r\n <el-form-item label=\"用户头像:\">\r\n <uploadImage :limit=\"1\" v-model=\"editForm.avatar\"></uploadImage>\r\n </el-form-item>\r\n <el-row :gutter=\"15\">\r\n <el-col :sm=\"12\">\r\n <el-form-item label=\"用户账号:\" prop=\"username\">\r\n <el-input v-model=\"editForm.username\" placeholder=\"请输入账号\" clearable\r\n :disabled=\"editForm.id?true:false\"/>\r\n </el-form-item>\r\n <el-form-item label=\"用户姓名:\" prop=\"realname\">\r\n <el-input v-model=\"editForm.realname\" placeholder=\"请输入用户姓名\" clearable/>\r\n </el-form-item>\r\n <el-form-item label=\"性别:\" prop=\"gender\">\r\n <el-select v-model=\"editForm.gender\" placeholder=\"请选择性别\" class=\"ele-block\" clearable>\r\n <el-option label=\"男\" :value=\"1\"/>\r\n <el-option label=\"女\" :value=\"2\"/>\r\n </el-select>\r\n </el-form-item>\r\n <el-form-item label=\"职级:\" prop=\"level_id\" :rules=\"{\r\n required: true, message: '所属职级不能为空', trigger: 'change'\r\n }\">\r\n <el-select filterable clearable v-model=\"editForm.level_id\" size=\"small\" placeholder=\"-请选择职级-\" class=\"ele-block\">\r\n <el-option v-for=\"item in levelList\" :key=\"item.id\" :label=\"item.name\" :value=\"item.id\"/>\r\n </el-select>\r\n </el-form-item>\r\n <el-form-item label=\"登录密码:\" prop=\"password\" v-if=\"!editForm.id\">\r\n <el-input v-model=\"editForm.password\" placeholder=\"请输入登录密码\" show-password/>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :sm=\"12\">\r\n <el-form-item label=\"手机号:\">\r\n <el-input v-model=\"editForm.mobile\" placeholder=\"请输入手机号\" clearable/>\r\n </el-form-item>\r\n <el-form-item label=\"邮箱:\">\r\n <el-input v-model=\"editForm.email\" placeholder=\"请输入邮箱\" clearable/>\r\n </el-form-item>\r\n <el-form-item label=\"角色:\" prop=\"role_ids\">\r\n <el-select v-model=\"editForm.role_ids\" placeholder=\"请选择角色\" class=\"ele-block\" clearable multiple>\r\n <el-option v-for=\"(item,index) in roleList\" :key=\"index\" :label=\"item.name\" :value=\"item.id\"/>\r\n </el-select>\r\n </el-form-item>\r\n <el-form-item label=\"岗位:\" prop=\"position_id\" :rules=\"{\r\n required: true, message: '所属岗位不能为空', trigger: 'change'\r\n }\">\r\n <el-select filterable clearable v-model=\"editForm.position_id\" size=\"small\" placeholder=\"-请选择岗位-\" class=\"ele-block\">\r\n <el-option v-for=\"item in positionList\" :key=\"item.id\" :label=\"item.name\" :value=\"item.id\"/>\r\n </el-select>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n <el-form-item label=\"个人简介::\">\r\n <el-input v-model=\"editForm.intro\" placeholder=\"请输个人简介:\" :rows=\"3\" type=\"textarea\"/>\r\n </el-form-item>\r\n </el-form>\r\n <div slot=\"footer\">\r\n <el-button @click=\"showEdit=false\">取消</el-button>\r\n <el-button type=\"primary\" @click=\"save\">保存</el-button>\r\n </div>\r\n </el-dialog>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport uploadImage from '@/components/uploadImage'\r\nimport { mapGetters } from \"vuex\";\r\nexport default {\r\n name: \"SysUser\",\r\n data() {\r\n return {\r\n table: {url: '/user/index', where: {}}, // 表格配置\r\n choose: [], // 表格选中数据\r\n showEdit: false, // 是否显示表单弹窗\r\n editForm: {}, // 表单数据\r\n editRules: { // 表单验证规则\r\n username: [\r\n {required: true, message: '请输入用户账号', trigger: 'blur'}\r\n ],\r\n realname: [\r\n {required: true, message: '请输入用户姓名', trigger: 'blur'}\r\n ],\r\n gender: [\r\n {required: true, message: '请选择性别', trigger: 'blur'}\r\n ],\r\n password: [\r\n {required: true, message: '请输入密码', trigger: 'blur'}\r\n ]\r\n },\r\n roleList: [], // 角色列表\r\n levelList:[], // 职级列表\r\n positionList:[], // 岗位列表\r\n\r\n }\r\n },\r\n computed: {\r\n ...mapGetters([\"permission\"]),\r\n },\r\n components: {uploadImage},\r\n mounted() {\r\n this.queryRoles(); // 查询角色列表\r\n this.getLevelList(); // 查询职级列表\r\n this.getPositionList(); // 查询岗位列表\r\n },\r\n methods: {\r\n /* 显示编辑 */\r\n edit(row) {\r\n this.editForm = Object.assign({}, row, {\r\n role_ids: row.roles.map(d => d.id)\r\n });\r\n this.showEdit = true;\r\n },\r\n /* 保存编辑 */\r\n save() {\r\n this.$refs['editForm'].validate((valid) => {\r\n if (valid) {\r\n const loading = this.$loading({lock: true});\r\n this.$http.post('/user/edit', this.editForm).then(res => {\r\n loading.close();\r\n if (res.data.code === 0) {\r\n this.showEdit = false;\r\n this.$message({type: 'success', message: res.data.msg});\r\n this.$refs.table.reload();\r\n } else {\r\n this.$message.error(res.data.msg);\r\n }\r\n }).catch(e => {\r\n loading.close();\r\n this.$message.error(e.message);\r\n });\r\n } else {\r\n return false;\r\n }\r\n });\r\n },\r\n /* 删除 */\r\n remove(row) {\r\n if (!row) { // 批量删除\r\n if (this.choose.length === 0) return this.$message.error('请至少选择一条数据');\r\n let ids = this.choose.map(d => d.id);\r\n this.$confirm('确定要删除选中的用户吗?', '提示', {type: 'warning'}).then(() => {\r\n const loading = this.$loading({lock: true});\r\n this.$http.post('/user/delete', {id: ids}).then(res => {\r\n loading.close();\r\n if (res.data.code === 0) {\r\n this.$message({type: 'success', message: res.data.msg});\r\n this.$refs.table.reload();\r\n } else {\r\n this.$message.error(res.data.msg);\r\n }\r\n }).catch(e => {\r\n loading.close();\r\n this.$message.error(e.message);\r\n });\r\n }).catch(() => 0);\r\n } else { // 单个删除\r\n const loading = this.$loading({lock: true});\r\n this.$http.post('/user/delete', {id:row.id}).then(res => {\r\n loading.close();\r\n if (res.data.code === 0) {\r\n this.$message({type: 'success', message: res.data.msg});\r\n this.$refs.table.reload();\r\n } else {\r\n this.$message.error(res.data.msg);\r\n }\r\n }).catch(e => {\r\n loading.close();\r\n this.$message.error(e.message);\r\n });\r\n }\r\n },\r\n /**\r\n * 重置密码\r\n */\r\n resetPwd(row){\r\n const loading = this.$loading({lock: true});\r\n this.$http.post('/user/resetPwd', {id:row.id}).then(res => {\r\n loading.close();\r\n if (res.data.code === 0) {\r\n this.$message({type: 'success', message: res.data.msg});\r\n this.$refs.table.reload();\r\n } else {\r\n this.$message.error(res.data.msg);\r\n }\r\n }).catch(e => {\r\n loading.close();\r\n this.$message.error(e.message);\r\n });\r\n },\r\n /* 更改状态 */\r\n editStatus(row) {\r\n const loading = this.$loading({lock: true});\r\n let params = Object.assign({}, row);\r\n this.$http.post('/user/status', params).then(res => {\r\n loading.close();\r\n if (res.data.code === 0) {\r\n this.$message({type: 'success', message: res.data.msg});\r\n } else {\r\n row.status = !row.status ? 2 : 1;\r\n this.$message.error(res.data.msg);\r\n }\r\n }).catch(e => {\r\n loading.close();\r\n this.$message.error(e.message);\r\n });\r\n },\r\n /* 查询角色列表 */\r\n queryRoles() {\r\n this.$http.get('/role/getRoleList').then(res => {\r\n if (res.data.code === 0) {\r\n this.roleList = res.data.data;\r\n } else {\r\n this.$message.error(res.data.msg);\r\n }\r\n }).catch(e => {\r\n this.$message.error(e.message);\r\n });\r\n },\r\n /**\r\n * 获取职级列表\r\n */\r\n getLevelList() {\r\n this.$http.get('/level/getLevelList').then(res => {\r\n if (res.data.code === 0) {\r\n this.levelList = res.data.data;\r\n } else {\r\n this.$message.error(res.data.msg);\r\n }\r\n }).catch(e => {\r\n this.$message.error(e.message);\r\n });\r\n },\r\n /**\r\n * 获取岗位列表\r\n */\r\n getPositionList() {\r\n this.$http.get('/position/getPositionList').then(res => {\r\n if (res.data.code === 0) {\r\n this.positionList = res.data.data;\r\n } else {\r\n this.$message.error(res.data.msg);\r\n }\r\n }).catch(e => {\r\n this.$message.error(e.message);\r\n });\r\n }\r\n }\r\n}\r\n</script>\r\n\r\n<style scoped>\r\n.ele-block >>> .el-upload, .ele-block >>> .el-upload-dragger {\r\n width: 100%;\r\n}\r\n/* 用户资料卡片 */\r\n.user-info-card {\r\n padding-top: 8px;\r\n text-align: center;\r\n}\r\n\r\n.user-info-card .user-info-avatar-group {\r\n position: relative;\r\n cursor: pointer;\r\n margin: 0 auto;\r\n width: 110px;\r\n height: 110px;\r\n border-radius: 50%;\r\n overflow: hidden;\r\n}\r\n\r\n.user-info-card .user-info-avatar {\r\n width: 110px;\r\n height: 110px;\r\n border-radius: 50%;\r\n object-fit: cover;\r\n}\r\n\r\n.user-info-card .user-info-avatar-group > i {\r\n position: absolute;\r\n top: 50%;\r\n left: 50%;\r\n transform: translate(-50%, -50%);\r\n color: #FFF;\r\n font-size: 30px;\r\n display: none;\r\n z-index: 2;\r\n}\r\n\r\n.user-info-card .user-info-avatar-group:hover > i {\r\n display: block;\r\n}\r\n\r\n.user-info-card .user-info-avatar-group:hover:after {\r\n content: \"\";\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n width: 100%;\r\n height: 100%;\r\n background-color: rgba(0, 0, 0, .3);\r\n}\r\n</style>"],"sourceRoot":"src/views/system/user"}]}