xiaofu-ruoyi-vue/node_modules/.cache/babel-loader/5dabc69a270fc99527fc2d79e03...

1 line
26 KiB
JSON

{"remainingRequest":"D:\\workspace\\ruoyi-vue-web\\node_modules\\babel-loader\\lib\\index.js!D:\\workspace\\ruoyi-vue-web\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!D:\\workspace\\ruoyi-vue-web\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\workspace\\ruoyi-vue-web\\src\\views\\system\\dept\\index.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\workspace\\ruoyi-vue-web\\src\\views\\system\\dept\\index.vue","mtime":1713777651846},{"path":"D:\\workspace\\ruoyi-vue-web\\babel.config.js","mtime":1713777651809},{"path":"D:\\workspace\\ruoyi-vue-web\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\workspace\\ruoyi-vue-web\\node_modules\\babel-loader\\lib\\index.js","mtime":456789000000},{"path":"D:\\workspace\\ruoyi-vue-web\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\workspace\\ruoyi-vue-web\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:InVzZSBzdHJpY3QiOwoKdmFyIF9pbnRlcm9wUmVxdWlyZURlZmF1bHQgPSByZXF1aXJlKCJEOi93b3Jrc3BhY2UvcnVveWktdnVlLXdlYi9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9pbnRlcm9wUmVxdWlyZURlZmF1bHQuanMiKS5kZWZhdWx0OwpPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgIl9fZXNNb2R1bGUiLCB7CiAgdmFsdWU6IHRydWUKfSk7CmV4cG9ydHMuZGVmYXVsdCA9IHZvaWQgMDsKcmVxdWlyZSgiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LnB1c2guanMiKTsKdmFyIF9kZXB0ID0gcmVxdWlyZSgiQC9hcGkvc3lzdGVtL2RlcHQiKTsKdmFyIF92dWVUcmVlc2VsZWN0ID0gX2ludGVyb3BSZXF1aXJlRGVmYXVsdChyZXF1aXJlKCJAcmlvcGhhZS92dWUtdHJlZXNlbGVjdCIpKTsKcmVxdWlyZSgiQHJpb3BoYWUvdnVlLXRyZWVzZWxlY3QvZGlzdC92dWUtdHJlZXNlbGVjdC5jc3MiKTsKLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KdmFyIF9kZWZhdWx0ID0gZXhwb3J0cy5kZWZhdWx0ID0gewogIG5hbWU6ICJEZXB0IiwKICBkaWN0czogWydzeXNfbm9ybWFsX2Rpc2FibGUnXSwKICBjb21wb25lbnRzOiB7CiAgICBUcmVlc2VsZWN0OiBfdnVlVHJlZXNlbGVjdC5kZWZhdWx0CiAgfSwKICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkgewogICAgcmV0dXJuIHsKICAgICAgLy8g6YGu572p5bGCCiAgICAgIGxvYWRpbmc6IHRydWUsCiAgICAgIC8vIOaYvuekuuaQnOe0ouadoeS7tgogICAgICBzaG93U2VhcmNoOiB0cnVlLAogICAgICAvLyDooajmoLzmoJHmlbDmja4KICAgICAgZGVwdExpc3Q6IFtdLAogICAgICAvLyDpg6jpl6jmoJHpgInpobkKICAgICAgZGVwdE9wdGlvbnM6IFtdLAogICAgICAvLyDlvLnlh7rlsYLmoIfpopgKICAgICAgdGl0bGU6ICIiLAogICAgICAvLyDmmK/lkKbmmL7npLrlvLnlh7rlsYIKICAgICAgb3BlbjogZmFsc2UsCiAgICAgIC8vIOaYr+WQpuWxleW8gO+8jOm7mOiupOWFqOmDqOWxleW8gAogICAgICBpc0V4cGFuZEFsbDogdHJ1ZSwKICAgICAgLy8g6YeN5paw5riy5p+T6KGo5qC854q25oCBCiAgICAgIHJlZnJlc2hUYWJsZTogdHJ1ZSwKICAgICAgLy8g5p+l6K+i5Y+C5pWwCiAgICAgIHF1ZXJ5UGFyYW1zOiB7CiAgICAgICAgZGVwdE5hbWU6IHVuZGVmaW5lZCwKICAgICAgICBzdGF0dXM6IHVuZGVmaW5lZAogICAgICB9LAogICAgICAvLyDooajljZXlj4LmlbAKICAgICAgZm9ybToge30sCiAgICAgIC8vIOihqOWNleagoemqjAogICAgICBydWxlczogewogICAgICAgIHBhcmVudElkOiBbewogICAgICAgICAgcmVxdWlyZWQ6IHRydWUsCiAgICAgICAgICBtZXNzYWdlOiAi5LiK57qn6YOo6Zeo5LiN6IO95Li656m6IiwKICAgICAgICAgIHRyaWdnZXI6ICJibHVyIgogICAgICAgIH1dLAogICAgICAgIGRlcHROYW1lOiBbewogICAgICAgICAgcmVxdWlyZWQ6IHRydWUsCiAgICAgICAgICBtZXNzYWdlOiAi6YOo6Zeo5ZCN56ew5LiN6IO95Li656m6IiwKICAgICAgICAgIHRyaWdnZXI6ICJibHVyIgogICAgICAgIH1dLAogICAgICAgIG9yZGVyTnVtOiBbewogICAgICAgICAgcmVxdWlyZWQ6IHRydWUsCiAgICAgICAgICBtZXNzYWdlOiAi5pi+56S65o6S5bqP5LiN6IO95Li656m6IiwKICAgICAgICAgIHRyaWdnZXI6ICJibHVyIgogICAgICAgIH1dLAogICAgICAgIGVtYWlsOiBbewogICAgICAgICAgdHlwZTogImVtYWlsIiwKICAgICAgICAgIG1lc3NhZ2U6ICLor7fovpPlhaXmraPnoa7nmoTpgq7nrrHlnLDlnYAiLAogICAgICAgICAgdHJpZ2dlcjogWyJibHVyIiwgImNoYW5nZSJdCiAgICAgICAgfV0sCiAgICAgICAgcGhvbmU6IFt7CiAgICAgICAgICBwYXR0ZXJuOiAvXjFbM3w0fDV8Nnw3fDh8OV1bMC05XVxkezh9JC8sCiAgICAgICAgICBtZXNzYWdlOiAi6K+36L6T5YWl5q2j56Gu55qE5omL5py65Y+356CBIiwKICAgICAgICAgIHRyaWdnZXI6ICJibHVyIgogICAgICAgIH1dCiAgICAgIH0KICAgIH07CiAgfSwKICBjcmVhdGVkOiBmdW5jdGlvbiBjcmVhdGVkKCkgewogICAgdGhpcy5nZXRMaXN0KCk7CiAgfSwKICBtZXRob2RzOiB7CiAgICAvKiog5p+l6K+i6YOo6Zeo5YiX6KGoICovZ2V0TGlzdDogZnVuY3Rpb24gZ2V0TGlzdCgpIHsKICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTsKICAgICAgKDAsIF9kZXB0Lmxpc3REZXB0KSh0aGlzLnF1ZXJ5UGFyYW1zKS50aGVuKGZ1bmN0aW9uIChyZXNwb25zZSkgewogICAgICAgIF90aGlzLmRlcHRMaXN0ID0gX3RoaXMuaGFuZGxlVHJlZShyZXNwb25zZS5kYXRhLCAiZGVwdElkIik7CiAgICAgICAgX3RoaXMubG9hZGluZyA9IGZhbHNlOwogICAgICB9KTsKICAgIH0sCiAgICAvKiog6L2s5o2i6YOo6Zeo5pWw5o2u57uT5p6EICovbm9ybWFsaXplcjogZnVuY3Rpb24gbm9ybWFsaXplcihub2RlKSB7CiAgICAgIGlmIChub2RlLmNoaWxkcmVuICYmICFub2RlLmNoaWxkcmVuLmxlbmd0aCkgewogICAgICAgIGRlbGV0ZSBub2RlLmNoaWxkcmVuOwogICAgICB9CiAgICAgIHJldHVybiB7CiAgICAgICAgaWQ6IG5vZGUuZGVwdElkLAogICAgICAgIGxhYmVsOiBub2RlLmRlcHROYW1lLAogICAgICAgIGNoaWxkcmVuOiBub2RlLmNoaWxkcmVuCiAgICAgIH07CiAgICB9LAogICAgLy8g5Y+W5raI5oyJ6ZKuCiAgICBjYW5jZWw6IGZ1bmN0aW9uIGNhbmNlbCgpIHsKICAgICAgdGhpcy5vcGVuID0gZmFsc2U7CiAgICAgIHRoaXMucmVzZXQoKTsKICAgIH0sCiAgICAvLyDooajljZXph43nva4KICAgIHJlc2V0OiBmdW5jdGlvbiByZXNldCgpIHsKICAgICAgdGhpcy5mb3JtID0gewogICAgICAgIGRlcHRJZDogdW5kZWZpbmVkLAogICAgICAgIHBhcmVudElkOiB1bmRlZmluZWQsCiAgICAgICAgZGVwdE5hbWU6IHVuZGVmaW5lZCwKICAgICAgICBvcmRlck51bTogdW5kZWZpbmVkLAogICAgICAgIGxlYWRlcjogdW5kZWZpbmVkLAogICAgICAgIHBob25lOiB1bmRlZmluZWQsCiAgICAgICAgZW1haWw6IHVuZGVmaW5lZCwKICAgICAgICBzdGF0dXM6ICIwIgogICAgICB9OwogICAgICB0aGlzLnJlc2V0Rm9ybSgiZm9ybSIpOwogICAgfSwKICAgIC8qKiDmkJzntKLmjInpkq7mk43kvZwgKi9oYW5kbGVRdWVyeTogZnVuY3Rpb24gaGFuZGxlUXVlcnkoKSB7CiAgICAgIHRoaXMuZ2V0TGlzdCgpOwogICAgfSwKICAgIC8qKiDph43nva7mjInpkq7mk43kvZwgKi9yZXNldFF1ZXJ5OiBmdW5jdGlvbiByZXNldFF1ZXJ5KCkgewogICAgICB0aGlzLnJlc2V0Rm9ybSgicXVlcnlGb3JtIik7CiAgICAgIHRoaXMuaGFuZGxlUXVlcnkoKTsKICAgIH0sCiAgICAvKiog5paw5aKe5oyJ6ZKu5pON5L2cICovaGFuZGxlQWRkOiBmdW5jdGlvbiBoYW5kbGVBZGQocm93KSB7CiAgICAgIHZhciBfdGhpczIgPSB0aGlzOwogICAgICB0aGlzLnJlc2V0KCk7CiAgICAgIGlmIChyb3cgIT0gdW5kZWZpbmVkKSB7CiAgICAgICAgdGhpcy5mb3JtLnBhcmVudElkID0gcm93LmRlcHRJZDsKICAgICAgfQogICAgICB0aGlzLm9wZW4gPSB0cnVlOwogICAgICB0aGlzLnRpdGxlID0gIua3u+WKoOmDqOmXqCI7CiAgICAgICgwLCBfZGVwdC5saXN0RGVwdCkoKS50aGVuKGZ1bmN0aW9uIChyZXNwb25zZSkgewogICAgICAgIF90aGlzMi5kZXB0T3B0aW9ucyA9IF90aGlzMi5oYW5kbGVUcmVlKHJlc3BvbnNlLmRhdGEsICJkZXB0SWQiKTsKICAgICAgfSk7CiAgICB9LAogICAgLyoqIOWxleW8gC/mipjlj6Dmk43kvZwgKi90b2dnbGVFeHBhbmRBbGw6IGZ1bmN0aW9uIHRvZ2dsZUV4cGFuZEFsbCgpIHsKICAgICAgdmFyIF90aGlzMyA9IHRoaXM7CiAgICAgIHRoaXMucmVmcmVzaFRhYmxlID0gZmFsc2U7CiAgICAgIHRoaXMuaXNFeHBhbmRBbGwgPSAhdGhpcy5pc0V4cGFuZEFsbDsKICAgICAgdGhpcy4kbmV4dFRpY2soZnVuY3Rpb24gKCkgewogICAgICAgIF90aGlzMy5yZWZyZXNoVGFibGUgPSB0cnVlOwogICAgICB9KTsKICAgIH0sCiAgICAvKiog5L+u5pS55oyJ6ZKu5pON5L2cICovaGFuZGxlVXBkYXRlOiBmdW5jdGlvbiBoYW5kbGVVcGRhdGUocm93KSB7CiAgICAgIHZhciBfdGhpczQgPSB0aGlzOwogICAgICB0aGlzLnJlc2V0KCk7CiAgICAgICgwLCBfZGVwdC5nZXREZXB0KShyb3cuZGVwdElkKS50aGVuKGZ1bmN0aW9uIChyZXNwb25zZSkgewogICAgICAgIF90aGlzNC5mb3JtID0gcmVzcG9uc2UuZGF0YTsKICAgICAgICBfdGhpczQub3BlbiA9IHRydWU7CiAgICAgICAgX3RoaXM0LnRpdGxlID0gIuS/ruaUuemDqOmXqCI7CiAgICAgICAgKDAsIF9kZXB0Lmxpc3REZXB0RXhjbHVkZUNoaWxkKShyb3cuZGVwdElkKS50aGVuKGZ1bmN0aW9uIChyZXNwb25zZSkgewogICAgICAgICAgX3RoaXM0LmRlcHRPcHRpb25zID0gX3RoaXM0LmhhbmRsZVRyZWUocmVzcG9uc2UuZGF0YSwgImRlcHRJZCIpOwogICAgICAgICAgaWYgKF90aGlzNC5kZXB0T3B0aW9ucy5sZW5ndGggPT0gMCkgewogICAgICAgICAgICB2YXIgbm9SZXN1bHRzT3B0aW9ucyA9IHsKICAgICAgICAgICAgICBkZXB0SWQ6IF90aGlzNC5mb3JtLnBhcmVudElkLAogICAgICAgICAgICAgIGRlcHROYW1lOiBfdGhpczQuZm9ybS5wYXJlbnROYW1lLAogICAgICAgICAgICAgIGNoaWxkcmVuOiBbXQogICAgICAgICAgICB9OwogICAgICAgICAgICBfdGhpczQuZGVwdE9wdGlvbnMucHVzaChub1Jlc3VsdHNPcHRpb25zKTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfSk7CiAgICB9LAogICAgLyoqIOaPkOS6pOaMiemSriAqLwogICAgc3VibWl0Rm9ybTogZnVuY3Rpb24gc3VibWl0Rm9ybSgpIHsKICAgICAgdmFyIF90aGlzNSA9IHRoaXM7CiAgICAgIHRoaXMuJHJlZnNbImZvcm0iXS52YWxpZGF0ZShmdW5jdGlvbiAodmFsaWQpIHsKICAgICAgICBpZiAodmFsaWQpIHsKICAgICAgICAgIGlmIChfdGhpczUuZm9ybS5kZXB0SWQgIT0gdW5kZWZpbmVkKSB7CiAgICAgICAgICAgICgwLCBfZGVwdC51cGRhdGVEZXB0KShfdGhpczUuZm9ybSkudGhlbihmdW5jdGlvbiAocmVzcG9uc2UpIHsKICAgICAgICAgICAgICBfdGhpczUuJG1vZGFsLm1zZ1N1Y2Nlc3MoIuS/ruaUueaIkOWKnyIpOwogICAgICAgICAgICAgIF90aGlzNS5vcGVuID0gZmFsc2U7CiAgICAgICAgICAgICAgX3RoaXM1LmdldExpc3QoKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAoMCwgX2RlcHQuYWRkRGVwdCkoX3RoaXM1LmZvcm0pLnRoZW4oZnVuY3Rpb24gKHJlc3BvbnNlKSB7CiAgICAgICAgICAgICAgX3RoaXM1LiRtb2RhbC5tc2dTdWNjZXNzKCLmlrDlop7miJDlip8iKTsKICAgICAgICAgICAgICBfdGhpczUub3BlbiA9IGZhbHNlOwogICAgICAgICAgICAgIF90aGlzNS5nZXRMaXN0KCk7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfSk7CiAgICB9LAogICAgLyoqIOWIoOmZpOaMiemSruaTjeS9nCAqL2hhbmRsZURlbGV0ZTogZnVuY3Rpb24gaGFuZGxlRGVsZXRlKHJvdykgewogICAgICB2YXIgX3RoaXM2ID0gdGhpczsKICAgICAgdGhpcy4kbW9kYWwuY29uZmlybSgn5piv5ZCm56Gu6K6k5Yig6Zmk5ZCN56ew5Li6IicgKyByb3cuZGVwdE5hbWUgKyAnIueahOaVsOaNrumhue+8nycpLnRoZW4oZnVuY3Rpb24gKCkgewogICAgICAgIHJldHVybiAoMCwgX2RlcHQuZGVsRGVwdCkocm93LmRlcHRJZCk7CiAgICAgIH0pLnRoZW4oZnVuY3Rpb24gKCkgewogICAgICAgIF90aGlzNi5nZXRMaXN0KCk7CiAgICAgICAgX3RoaXM2LiRtb2RhbC5tc2dTdWNjZXNzKCLliKDpmaTmiJDlip8iKTsKICAgICAgfSkuY2F0Y2goZnVuY3Rpb24gKCkge30pOwogICAgfQogIH0KfTs="},{"version":3,"names":["_dept","require","_vueTreeselect","_interopRequireDefault","name","dicts","components","Treeselect","data","loading","showSearch","deptList","deptOptions","title","open","isExpandAll","refreshTable","queryParams","deptName","undefined","status","form","rules","parentId","required","message","trigger","orderNum","email","type","phone","pattern","created","getList","methods","_this","listDept","then","response","handleTree","normalizer","node","children","length","id","deptId","label","cancel","reset","leader","resetForm","handleQuery","resetQuery","handleAdd","row","_this2","toggleExpandAll","_this3","$nextTick","handleUpdate","_this4","getDept","listDeptExcludeChild","noResultsOptions","parentName","push","submitForm","_this5","$refs","validate","valid","updateDept","$modal","msgSuccess","addDept","handleDelete","_this6","confirm","delDept","catch"],"sources":["src/views/system/dept/index.vue"],"sourcesContent":["<template>\r\n <div class=\"app-container\">\r\n <el-form v-show=\"showSearch\" ref=\"queryForm\" :inline=\"true\" :model=\"queryParams\" size=\"small\">\r\n <el-form-item label=\"部门名称\" prop=\"deptName\">\r\n <el-input\r\n v-model=\"queryParams.deptName\"\r\n clearable\r\n placeholder=\"请输入部门名称\"\r\n @keyup.enter.native=\"handleQuery\"\r\n />\r\n </el-form-item>\r\n <el-form-item label=\"状态\" prop=\"status\">\r\n <el-select v-model=\"queryParams.status\" clearable placeholder=\"部门状态\">\r\n <el-option\r\n v-for=\"dict in dict.type.sys_normal_disable\"\r\n :key=\"dict.value\"\r\n :label=\"dict.label\"\r\n :value=\"dict.value\"\r\n />\r\n </el-select>\r\n </el-form-item>\r\n <el-form-item>\r\n <el-button icon=\"el-icon-search\" size=\"mini\" type=\"primary\" @click=\"handleQuery\">搜索</el-button>\r\n <el-button icon=\"el-icon-refresh\" size=\"mini\" @click=\"resetQuery\">重置</el-button>\r\n </el-form-item>\r\n </el-form>\r\n\r\n <el-row :gutter=\"10\" class=\"mb8\">\r\n <el-col :span=\"1.5\">\r\n <el-button\r\n v-hasPermi=\"['system:dept:add']\"\r\n icon=\"el-icon-plus\"\r\n plain\r\n size=\"mini\"\r\n type=\"primary\"\r\n @click=\"handleAdd\"\r\n >新增\r\n </el-button>\r\n </el-col>\r\n <el-col :span=\"1.5\">\r\n <el-button\r\n icon=\"el-icon-sort\"\r\n plain\r\n size=\"mini\"\r\n type=\"info\"\r\n @click=\"toggleExpandAll\"\r\n >展开/折叠\r\n </el-button>\r\n </el-col>\r\n <right-toolbar :showSearch.sync=\"showSearch\" @queryTable=\"getList\"></right-toolbar>\r\n </el-row>\r\n\r\n <el-table\r\n v-if=\"refreshTable\"\r\n v-loading=\"loading\"\r\n :data=\"deptList\"\r\n :default-expand-all=\"isExpandAll\"\r\n :tree-props=\"{children: 'children', hasChildren: 'hasChildren'}\"\r\n row-key=\"deptId\"\r\n >\r\n <el-table-column label=\"部门名称\" prop=\"deptName\" width=\"260\"></el-table-column>\r\n <el-table-column label=\"排序\" prop=\"orderNum\" width=\"200\"></el-table-column>\r\n <el-table-column label=\"状态\" prop=\"status\" width=\"100\">\r\n <template slot-scope=\"scope\">\r\n <dict-tag :options=\"dict.type.sys_normal_disable\" :value=\"scope.row.status\"/>\r\n </template>\r\n </el-table-column>\r\n <el-table-column align=\"center\" label=\"创建时间\" prop=\"createTime\" width=\"200\">\r\n <template slot-scope=\"scope\">\r\n <span>{{ parseTime(scope.row.createTime) }}</span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column align=\"center\" class-name=\"small-padding fixed-width\" label=\"操作\">\r\n <template slot-scope=\"scope\">\r\n <el-button\r\n v-hasPermi=\"['system:dept:edit']\"\r\n icon=\"el-icon-edit\"\r\n size=\"mini\"\r\n type=\"text\"\r\n @click=\"handleUpdate(scope.row)\"\r\n >修改\r\n </el-button>\r\n <el-button\r\n v-hasPermi=\"['system:dept:add']\"\r\n icon=\"el-icon-plus\"\r\n size=\"mini\"\r\n type=\"text\"\r\n @click=\"handleAdd(scope.row)\"\r\n >新增\r\n </el-button>\r\n <el-button\r\n v-if=\"scope.row.parentId != 0\"\r\n v-hasPermi=\"['system:dept:remove']\"\r\n icon=\"el-icon-delete\"\r\n size=\"mini\"\r\n type=\"text\"\r\n @click=\"handleDelete(scope.row)\"\r\n >删除\r\n </el-button>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n\r\n <!-- 添加或修改部门对话框 -->\r\n <el-dialog :title=\"title\" :visible.sync=\"open\" append-to-body width=\"600px\">\r\n <el-form ref=\"form\" :model=\"form\" :rules=\"rules\" label-width=\"80px\">\r\n <el-row>\r\n <el-col v-if=\"form.parentId !== 0\" :span=\"24\">\r\n <el-form-item label=\"上级部门\" prop=\"parentId\">\r\n <treeselect v-model=\"form.parentId\" :normalizer=\"normalizer\" :options=\"deptOptions\"\r\n placeholder=\"选择上级部门\"/>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n <el-row>\r\n <el-col :span=\"12\">\r\n <el-form-item label=\"部门名称\" prop=\"deptName\">\r\n <el-input v-model=\"form.deptName\" placeholder=\"请输入部门名称\"/>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item label=\"显示排序\" prop=\"orderNum\">\r\n <el-input-number v-model=\"form.orderNum\" :min=\"0\" controls-position=\"right\"/>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n <el-row>\r\n <el-col :span=\"12\">\r\n <el-form-item label=\"负责人\" prop=\"leader\">\r\n <el-input v-model=\"form.leader\" maxlength=\"20\" placeholder=\"请输入负责人\"/>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item label=\"联系电话\" prop=\"phone\">\r\n <el-input v-model=\"form.phone\" maxlength=\"11\" placeholder=\"请输入联系电话\"/>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\r\n <el-row>\r\n <el-col :span=\"12\">\r\n <el-form-item label=\"邮箱\" prop=\"email\">\r\n <el-input v-model=\"form.email\" maxlength=\"50\" placeholder=\"请输入邮箱\"/>\r\n </el-form-item>\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-form-item label=\"部门状态\">\r\n <el-radio-group v-model=\"form.status\">\r\n <el-radio\r\n v-for=\"dict in dict.type.sys_normal_disable\"\r\n :key=\"dict.value\"\r\n :label=\"dict.value\"\r\n >{{ dict.label }}\r\n </el-radio>\r\n </el-radio-group>\r\n </el-form-item>\r\n </el-col>\r\n </el-row>\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\nimport {addDept, delDept, getDept, listDept, listDeptExcludeChild, updateDept} from \"@/api/system/dept\";\r\nimport Treeselect from \"@riophae/vue-treeselect\";\r\nimport \"@riophae/vue-treeselect/dist/vue-treeselect.css\";\r\n\r\nexport default {\r\n name: \"Dept\",\r\n dicts: ['sys_normal_disable'],\r\n components: {Treeselect},\r\n data() {\r\n return {\r\n // 遮罩层\r\n loading: true,\r\n // 显示搜索条件\r\n showSearch: true,\r\n // 表格树数据\r\n deptList: [],\r\n // 部门树选项\r\n deptOptions: [],\r\n // 弹出层标题\r\n title: \"\",\r\n // 是否显示弹出层\r\n open: false,\r\n // 是否展开,默认全部展开\r\n isExpandAll: true,\r\n // 重新渲染表格状态\r\n refreshTable: true,\r\n // 查询参数\r\n queryParams: {\r\n deptName: undefined,\r\n status: undefined\r\n },\r\n // 表单参数\r\n form: {},\r\n // 表单校验\r\n rules: {\r\n parentId: [\r\n {required: true, message: \"上级部门不能为空\", trigger: \"blur\"}\r\n ],\r\n deptName: [\r\n {required: true, message: \"部门名称不能为空\", trigger: \"blur\"}\r\n ],\r\n orderNum: [\r\n {required: true, message: \"显示排序不能为空\", trigger: \"blur\"}\r\n ],\r\n email: [\r\n {\r\n type: \"email\",\r\n message: \"请输入正确的邮箱地址\",\r\n trigger: [\"blur\", \"change\"]\r\n }\r\n ],\r\n phone: [\r\n {\r\n pattern: /^1[3|4|5|6|7|8|9][0-9]\\d{8}$/,\r\n message: \"请输入正确的手机号码\",\r\n trigger: \"blur\"\r\n }\r\n ]\r\n }\r\n };\r\n },\r\n created() {\r\n this.getList();\r\n },\r\n methods: {\r\n /** 查询部门列表 */\r\n getList() {\r\n this.loading = true;\r\n listDept(this.queryParams).then(response => {\r\n this.deptList = this.handleTree(response.data, \"deptId\");\r\n this.loading = false;\r\n });\r\n },\r\n /** 转换部门数据结构 */\r\n normalizer(node) {\r\n if (node.children && !node.children.length) {\r\n delete node.children;\r\n }\r\n return {\r\n id: node.deptId,\r\n label: node.deptName,\r\n children: node.children\r\n };\r\n },\r\n // 取消按钮\r\n cancel() {\r\n this.open = false;\r\n this.reset();\r\n },\r\n // 表单重置\r\n reset() {\r\n this.form = {\r\n deptId: undefined,\r\n parentId: undefined,\r\n deptName: undefined,\r\n orderNum: undefined,\r\n leader: undefined,\r\n phone: undefined,\r\n email: undefined,\r\n status: \"0\"\r\n };\r\n this.resetForm(\"form\");\r\n },\r\n /** 搜索按钮操作 */\r\n handleQuery() {\r\n this.getList();\r\n },\r\n /** 重置按钮操作 */\r\n resetQuery() {\r\n this.resetForm(\"queryForm\");\r\n this.handleQuery();\r\n },\r\n /** 新增按钮操作 */\r\n handleAdd(row) {\r\n this.reset();\r\n if (row != undefined) {\r\n this.form.parentId = row.deptId;\r\n }\r\n this.open = true;\r\n this.title = \"添加部门\";\r\n listDept().then(response => {\r\n this.deptOptions = this.handleTree(response.data, \"deptId\");\r\n });\r\n },\r\n /** 展开/折叠操作 */\r\n toggleExpandAll() {\r\n this.refreshTable = false;\r\n this.isExpandAll = !this.isExpandAll;\r\n this.$nextTick(() => {\r\n this.refreshTable = true;\r\n });\r\n },\r\n /** 修改按钮操作 */\r\n handleUpdate(row) {\r\n this.reset();\r\n getDept(row.deptId).then(response => {\r\n this.form = response.data;\r\n this.open = true;\r\n this.title = \"修改部门\";\r\n listDeptExcludeChild(row.deptId).then(response => {\r\n this.deptOptions = this.handleTree(response.data, \"deptId\");\r\n if (this.deptOptions.length == 0) {\r\n const noResultsOptions = {deptId: this.form.parentId, deptName: this.form.parentName, children: []};\r\n this.deptOptions.push(noResultsOptions);\r\n }\r\n });\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.deptId != undefined) {\r\n updateDept(this.form).then(response => {\r\n this.$modal.msgSuccess(\"修改成功\");\r\n this.open = false;\r\n this.getList();\r\n });\r\n } else {\r\n addDept(this.form).then(response => {\r\n this.$modal.msgSuccess(\"新增成功\");\r\n this.open = false;\r\n this.getList();\r\n });\r\n }\r\n }\r\n });\r\n },\r\n /** 删除按钮操作 */\r\n handleDelete(row) {\r\n this.$modal.confirm('是否确认删除名称为\"' + row.deptName + '\"的数据项?').then(function () {\r\n return delDept(row.deptId);\r\n }).then(() => {\r\n this.getList();\r\n this.$modal.msgSuccess(\"删除成功\");\r\n }).catch(() => {\r\n });\r\n }\r\n }\r\n};\r\n</script>\r\n"],"mappings":"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","ignoreList":[]}]}