| 1 | {"remainingRequest":"C:\\Users\\Administrator\\Desktop\\最新\\supervision-ui\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!C:\\Users\\Administrator\\Desktop\\最新\\supervision-ui\\src\\views\\system\\dict\\index.vue?vue&type=script&lang=js&","dependencies":[{"path":"C:\\Users\\Administrator\\Desktop\\最新\\supervision-ui\\src\\views\\system\\dict\\index.vue","mtime":1647228900898},{"path":"C:\\Users\\Administrator\\Desktop\\最新\\supervision-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"C:\\Users\\Administrator\\Desktop\\最新\\supervision-ui\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"C:\\Users\\Administrator\\Desktop\\最新\\supervision-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"C:\\Users\\Administrator\\Desktop\\最新\\supervision-ui\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KDQppbXBvcnQgew0KICBsaXN0VHlwZSwNCiAgZ2V0VHlwZSwNCiAgZGVsVHlwZSwNCiAgYWRkVHlwZSwNCiAgdXBkYXRlVHlwZSwNCiAgZXhwb3J0VHlwZSwNCiAgcmVmcmVzaENhY2hlLA0KfSBmcm9tICJAL2FwaS9zeXN0ZW0vZGljdC90eXBlIjsNCg0KZXhwb3J0IGRlZmF1bHQgew0KICBuYW1lOiAiRGljdCIsDQogIGRpY3RzOiBbInN5c19ub3JtYWxfZGlzYWJsZSJdLA0KICBkYXRhKCkgew0KICAgIHJldHVybiB7DQogICAgICAvLyDpga7nvanlsYINCiAgICAgIGxvYWRpbmc6IHRydWUsDQogICAgICAvLyDlr7zlh7rpga7nvanlsYINCiAgICAgIGV4cG9ydExvYWRpbmc6IGZhbHNlLA0KICAgICAgLy8g6YCJ5Lit5pWw57uEDQogICAgICBpZHM6IFtdLA0KICAgICAgLy8g6Z2e5Y2V5Liq56aB55SoDQogICAgICBzaW5nbGU6IHRydWUsDQogICAgICAvLyDpnZ7lpJrkuKrnpoHnlKgNCiAgICAgIG11bHRpcGxlOiB0cnVlLA0KICAgICAgLy8g5pi+56S65pCc57Si5p2h5Lu2DQogICAgICBzaG93U2VhcmNoOiB0cnVlLA0KICAgICAgLy8g5oC75p2h5pWwDQogICAgICB0b3RhbDogMCwNCiAgICAgIC8vIOWtl+WFuOihqOagvOaVsOaNrg0KICAgICAgdHlwZUxpc3Q6IFtdLA0KICAgICAgLy8g5by55Ye65bGC5qCH6aKYDQogICAgICB0aXRsZTogIiIsDQogICAgICAvLyDmmK/lkKbmmL7npLrlvLnlh7rlsYINCiAgICAgIG9wZW46IGZhbHNlLA0KICAgICAgLy8g5pel5pyf6IyD5Zu0DQogICAgICBkYXRlUmFuZ2U6IFtdLA0KICAgICAgLy8g5p+l6K+i5Y+C5pWwDQogICAgICBxdWVyeVBhcmFtczogew0KICAgICAgICBwYWdlTnVtOiAxLA0KICAgICAgICBwYWdlU2l6ZTogMTAsDQogICAgICAgIGRpY3ROYW1lOiB1bmRlZmluZWQsDQogICAgICAgIGRpY3RUeXBlOiB1bmRlZmluZWQsDQogICAgICAgIHN0YXR1czogdW5kZWZpbmVkLA0KICAgICAgfSwNCiAgICAgIC8vIOihqOWNleWPguaVsA0KICAgICAgZm9ybToge30sDQogICAgICAvLyDooajljZXmoKHpqowNCiAgICAgIHJ1bGVzOiB7DQogICAgICAgIGRpY3ROYW1lOiBbDQogICAgICAgICAgeyByZXF1aXJlZDogdHJ1ZSwgbWVzc2FnZTogIuWtl+WFuOWQjeensOS4jeiDveS4uuepuiIsIHRyaWdnZXI6ICJibHVyIiB9LA0KICAgICAgICBdLA0KICAgICAgICBkaWN0VHlwZTogWw0KICAgICAgICAgIHsgcmVxdWlyZWQ6IHRydWUsIG1lc3NhZ2U6ICLlrZflhbjnsbvlnovkuI3og73kuLrnqboiLCB0cmlnZ2VyOiAiYmx1ciIgfSwNCiAgICAgICAgXSwNCiAgICAgIH0sDQogICAgfTsNCiAgfSwNCiAgY3JlYXRlZCgpIHsNCiAgICB0aGlzLmdldExpc3QoKTsNCiAgfSwNCiAgbWV0aG9kczogew0KICAgIC8qKiDmn6Xor6LlrZflhbjnsbvlnovliJfooaggKi8NCiAgICBnZXRMaXN0KCkgew0KICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTsNCiAgICAgIGxpc3RUeXBlKHRoaXMuYWRkRGF0ZVJhbmdlKHRoaXMucXVlcnlQYXJhbXMsIHRoaXMuZGF0ZVJhbmdlKSkudGhlbigNCiAgICAgICAgKHJlc3BvbnNlKSA9PiB7DQogICAgICAgICAgdGhpcy50eXBlTGlzdCA9IHJlc3BvbnNlLnJvd3M7DQogICAgICAgICAgdGhpcy50b3RhbCA9IHJlc3BvbnNlLnRvdGFsOw0KICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlOw0KICAgICAgICB9DQogICAgICApOw0KICAgIH0sDQogICAgLy8g5Y+W5raI5oyJ6ZKuDQogICAgY2FuY2VsKCkgew0KICAgICAgdGhpcy5vcGVuID0gZmFsc2U7DQogICAgICB0aGlzLnJlc2V0KCk7DQogICAgfSwNCiAgICAvLyDooajljZXph43nva4NCiAgICByZXNldCgpIHsNCiAgICAgIHRoaXMuZm9ybSA9IHsNCiAgICAgICAgZGljdElkOiB1bmRlZmluZWQsDQogICAgICAgIGRpY3ROYW1lOiB1bmRlZmluZWQsDQogICAgICAgIGRpY3RUeXBlOiB1bmRlZmluZWQsDQogICAgICAgIHN0YXR1czogIjAiLA0KICAgICAgICByZW1hcms6IHVuZGVmaW5lZCwNCiAgICAgIH07DQogICAgICB0aGlzLnJlc2V0Rm9ybSgiZm9ybSIpOw0KICAgIH0sDQogICAgLyoqIOaQnOe0ouaMiemSruaTjeS9nCAqLw0KICAgIGhhbmRsZVF1ZXJ5KCkgew0KICAgICAgdGhpcy5xdWVyeVBhcmFtcy5wYWdlTnVtID0gMTsNCiAgICAgIHRoaXMuZ2V0TGlzdCgpOw0KICAgIH0sDQogICAgLyoqIOmHjee9ruaMiemSruaTjeS9nCAqLw0KICAgIHJlc2V0UXVlcnkoKSB7DQogICAgICB0aGlzLmRhdGVSYW5nZSA9IFtdOw0KICAgICAgdGhpcy5yZXNldEZvcm0oInF1ZXJ5Rm9ybSIpOw0KICAgICAgdGhpcy5oYW5kbGVRdWVyeSgpOw0KICAgIH0sDQogICAgLyoqIOaWsOWinuaMiemSruaTjeS9nCAqLw0KICAgIGhhbmRsZUFkZCgpIHsNCiAgICAgIHRoaXMucmVzZXQoKTsNCiAgICAgIHRoaXMub3BlbiA9IHRydWU7DQogICAgICB0aGlzLnRpdGxlID0gIua3u+WKoOWtl+WFuOexu+WeiyI7DQogICAgfSwNCiAgICAvLyDlpJrpgInmoYbpgInkuK3mlbDmja4NCiAgICBoYW5kbGVTZWxlY3Rpb25DaGFuZ2Uoc2VsZWN0aW9uKSB7DQogICAgICB0aGlzLmlkcyA9IHNlbGVjdGlvbi5tYXAoKGl0ZW0pID0+IGl0ZW0uZGljdElkKTsNCiAgICAgIHRoaXMuc2luZ2xlID0gc2VsZWN0aW9uLmxlbmd0aCAhPSAxOw0KICAgICAgdGhpcy5tdWx0aXBsZSA9ICFzZWxlY3Rpb24ubGVuZ3RoOw0KICAgIH0sDQogICAgLyoqIOS/ruaUueaMiemSruaTjeS9nCAqLw0KICAgIGhhbmRsZVVwZGF0ZShyb3cpIHsNCiAgICAgIHRoaXMucmVzZXQoKTsNCiAgICAgIGNvbnN0IGRpY3RJZCA9IHJvdy5kaWN0SWQgfHwgdGhpcy5pZHM7DQogICAgICBnZXRUeXBlKGRpY3RJZCkudGhlbigocmVzcG9uc2UpID0+IHsNCiAgICAgICAgdGhpcy5mb3JtID0gcmVzcG9uc2UuZGF0YTsNCiAgICAgICAgdGhpcy5vcGVuID0gdHJ1ZTsNCiAgICAgICAgdGhpcy50aXRsZSA9ICLkv67mlLnlrZflhbjnsbvlnosiOw0KICAgICAgfSk7DQogICAgfSwNCiAgICAvKiog5o+Q5Lqk5oyJ6ZKuICovDQogICAgc3VibWl0Rm9ybTogZnVuY3Rpb24gKCkgew0KICAgICAgdGhpcy4kcmVmc1siZm9ybSJdLnZhbGlkYXRlKCh2YWxpZCkgPT4gew0KICAgICAgICBpZiAodmFsaWQpIHsNCiAgICAgICAgICBpZiAodGhpcy5mb3JtLmRpY3RJZCAhPSB1bmRlZmluZWQpIHsNCiAgICAgICAgICAgIHVwZGF0ZVR5cGUodGhpcy5mb3JtKS50aGVuKChyZXNwb25zZSkgPT4gew0KICAgICAgICAgICAgICB0aGlzLiRtb2RhbC5tc2dTdWNjZXNzKCLkv67mlLnmiJDlip8iKTsNCiAgICAgICAgICAgICAgdGhpcy5vcGVuID0gZmFsc2U7DQogICAgICAgICAgICAgIHRoaXMuZ2V0TGlzdCgpOw0KICAgICAgICAgICAgfSk7DQogICAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGFkZFR5cGUodGhpcy5mb3JtKS50aGVuKChyZXNwb25zZSkgPT4gew0KICAgICAgICAgICAgICB0aGlzLiRtb2RhbC5tc2dTdWNjZXNzKCLmlrDlop7miJDlip8iKTsNCiAgICAgICAgICAgICAgdGhpcy5vcGVuID0gZmFsc2U7DQogICAgICAgICAgICAgIHRoaXMuZ2V0TGlzdCgpOw0KICAgICAgICAgICAgfSk7DQogICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICB9KTsNCiAgICB9LA0KICAgIC8qKiDliKDpmaTmjInpkq7mk43kvZwgKi8NCiAgICBoYW5kbGVEZWxldGUocm93KSB7DQogICAgICBjb25zdCBkaWN0SWRzID0gcm93LmRpY3RJZCB8fCB0aGlzLmlkczsNCiAgICAgIHRoaXMuJG1vZGFsDQogICAgICAgIC5jb25maXJtKCfmmK/lkKbnoa7orqTliKDpmaTlrZflhbjnvJblj7fkuLoiJyArIGRpY3RJZHMgKyAnIueahOaVsOaNrumhue+8nycpDQogICAgICAgIC50aGVuKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICByZXR1cm4gZGVsVHlwZShkaWN0SWRzKTsNCiAgICAgICAgfSkNCiAgICAgICAgLnRoZW4oKCkgPT4gew0KICAgICAgICAgIHRoaXMuZ2V0TGlzdCgpOw0KICAgICAgICAgIHRoaXMuJG1vZGFsLm1zZ1N1Y2Nlc3MoIuWIoOmZpOaIkOWKnyIpOw0KICAgICAgICB9KQ0KICAgICAgICAuY2F0Y2goKCkgPT4ge30pOw0KICAgIH0sDQogICAgLyoqIOWvvOWHuuaMiemSruaTjeS9nCAqLw0KICAgIGhhbmRsZUV4cG9ydCgpIHsNCiAgICAgIGNvbnN0IHF1ZXJ5UGFyYW1zID0gdGhpcy5xdWVyeVBhcmFtczsNCiAgICAgIHRoaXMuJG1vZGFsDQogICAgICAgIC5jb25maXJtKCLmmK/lkKbnoa7orqTlr7zlh7rmiYDmnInnsbvlnovmlbDmja7pobnvvJ8iKQ0KICAgICAgICAudGhlbigoKSA9PiB7DQogICAgICAgICAgdGhpcy5leHBvcnRMb2FkaW5nID0gdHJ1ZTsNCiAgICAgICAgICByZXR1cm4gZXhwb3J0VHlwZShxdWVyeVBhcmFtcyk7DQogICAgICAgIH0pDQogICAgICAgIC50aGVuKChyZXNwb25zZSkgPT4gew0KICAgICAgICAgIHRoaXMuJGRvd25sb2FkLm5hbWUocmVzcG9uc2UubXNnKTsNCiAgICAgICAgICB0aGlzLmV4cG9ydExvYWRpbmcgPSBmYWxzZTsNCiAgICAgICAgfSkNCiAgICAgICAgLmNhdGNoKCgpID0+IHt9KTsNCiAgICB9LA0KICAgIC8qKiDliLfmlrDnvJPlrZjmjInpkq7mk43kvZwgKi8NCiAgICBoYW5kbGVSZWZyZXNoQ2FjaGUoKSB7DQogICAgICByZWZyZXNoQ2FjaGUoKS50aGVuKCgpID0+IHsNCiAgICAgICAgdGhpcy4kbW9kYWwubXNnU3VjY2Vzcygi5Yi35paw5oiQ5YqfIik7DQogICAgICB9KTsNCiAgICB9LA0KICB9LA0KfTsNCg=="},{"version":3,"sources":["index.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoRA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"index.vue","sourceRoot":"src/views/system/dict","sourcesContent":["<template>\r\n  <div class=\"app-container\">\r\n    <el-form\r\n      :model=\"queryParams\"\r\n      ref=\"queryForm\"\r\n      :inline=\"true\"\r\n      v-show=\"showSearch\"\r\n      label-width=\"68px\"\r\n    >\r\n      <el-form-item label=\"字典名称\" prop=\"dictName\">\r\n        <el-input\r\n          v-model=\"queryParams.dictName\"\r\n          placeholder=\"请输入字典名称\"\r\n          clearable\r\n          size=\"small\"\r\n          style=\"width: 240px\"\r\n          @keyup.enter.native=\"handleQuery\"\r\n        />\r\n      </el-form-item>\r\n      <el-form-item label=\"字典类型\" prop=\"dictType\">\r\n        <el-input\r\n          v-model=\"queryParams.dictType\"\r\n          placeholder=\"请输入字典类型\"\r\n          clearable\r\n          size=\"small\"\r\n          style=\"width: 240px\"\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\r\n          v-model=\"queryParams.status\"\r\n          placeholder=\"字典状态\"\r\n          clearable\r\n          size=\"small\"\r\n          style=\"width: 240px\"\r\n        >\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 label=\"创建时间\">\r\n        <el-date-picker\r\n          v-model=\"dateRange\"\r\n          size=\"small\"\r\n          style=\"\r\n            width: 200px;\r\n            height: 36px;\r\n            background: #00365f;\r\n            border: 1px solid white;\r\n          \"\r\n          value-format=\"yyyy-MM-dd\"\r\n          type=\"daterange\"\r\n          range-separator=\"-\"\r\n          start-placeholder=\"开始日期\"\r\n          end-placeholder=\"结束日期\"\r\n        ></el-date-picker>\r\n      </el-form-item>\r\n      <el-form-item>\r\n        <el-button\r\n          icon=\"el-icon-search\"\r\n          size=\"btn\"\r\n          @click=\"handleQuery\"\r\n          >搜索</el-button\r\n        >\r\n        <el-button\r\n          icon=\"el-icon-refresh\"\r\n          size=\"btr\"\r\n          @click=\"resetQuery\"\r\n          >重置</el-button\r\n        >\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          type=\"primary\"\r\n          plain\r\n          icon=\"el-icon-plus\"\r\n          size=\"mini\"\r\n          @click=\"handleAdd\"\r\n          v-hasPermi=\"['system:dict:add']\"\r\n          >新增</el-button\r\n        >\r\n      </el-col>\r\n      <el-col :span=\"1.5\">\r\n        <el-button\r\n          type=\"success\"\r\n          plain\r\n          icon=\"el-icon-edit\"\r\n          size=\"mini\"\r\n          :disabled=\"single\"\r\n          @click=\"handleUpdate\"\r\n          v-hasPermi=\"['system:dict:edit']\"\r\n          >修改</el-button\r\n        >\r\n      </el-col>\r\n      <el-col :span=\"1.5\">\r\n        <el-button\r\n          type=\"danger\"\r\n          plain\r\n          icon=\"el-icon-delete\"\r\n          size=\"mini\"\r\n          :disabled=\"multiple\"\r\n          @click=\"handleDelete\"\r\n          v-hasPermi=\"['system:dict:remove']\"\r\n          >删除</el-button\r\n        >\r\n      </el-col>\r\n      <el-col :span=\"1.5\">\r\n        <el-button\r\n          type=\"warning\"\r\n          plain\r\n          icon=\"el-icon-download\"\r\n          size=\"mini\"\r\n          :loading=\"exportLoading\"\r\n          @click=\"handleExport\"\r\n          v-hasPermi=\"['system:dict:export']\"\r\n          >导出</el-button\r\n        >\r\n      </el-col>\r\n      <el-col :span=\"1.5\">\r\n        <el-button\r\n          type=\"danger\"\r\n          plain\r\n          icon=\"el-icon-refresh\"\r\n          size=\"mini\"\r\n          @click=\"handleRefreshCache\"\r\n          v-hasPermi=\"['system:dict:remove']\"\r\n          >刷新</el-button\r\n        >\r\n      </el-col>\r\n      <right-toolbar\r\n        :showSearch.sync=\"showSearch\"\r\n        @queryTable=\"getList\"\r\n      ></right-toolbar>\r\n    </el-row>\r\n\r\n    <el-table\r\n      v-loading=\"loading\"\r\n      :data=\"typeList\"\r\n      @selection-change=\"handleSelectionChange\"\r\n      :header-cell-style=\"{ background: '#003c69', color: 'white' }\"\r\n    >\r\n      <el-table-column type=\"selection\" width=\"55\" align=\"center\" />\r\n      <el-table-column label=\"字典编号\" align=\"center\" prop=\"dictId\" />\r\n      <el-table-column\r\n        label=\"字典名称\"\r\n        align=\"center\"\r\n        prop=\"dictName\"\r\n        :show-overflow-tooltip=\"true\"\r\n      />\r\n      <el-table-column\r\n        label=\"字典类型\"\r\n        align=\"center\"\r\n        :show-overflow-tooltip=\"true\"\r\n      >\r\n        <template slot-scope=\"scope\">\r\n          <router-link\r\n            :to=\"'/system/dict-data/index/' + scope.row.dictId\"\r\n            class=\"link-type\"\r\n          >\r\n            <span>{{ scope.row.dictType }}</span>\r\n          </router-link>\r\n        </template>\r\n      </el-table-column>\r\n      <el-table-column label=\"状态\" align=\"center\" prop=\"status\">\r\n        <template slot-scope=\"scope\">\r\n          <dict-tag\r\n            :options=\"dict.type.sys_normal_disable\"\r\n            :value=\"scope.row.status\"\r\n          />\r\n        </template>\r\n      </el-table-column>\r\n      <el-table-column\r\n        label=\"备注\"\r\n        align=\"center\"\r\n        prop=\"remark\"\r\n        :show-overflow-tooltip=\"true\"\r\n      />\r\n      <el-table-column\r\n        label=\"创建时间\"\r\n        align=\"center\"\r\n        prop=\"createTime\"\r\n        width=\"180\"\r\n      >\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\r\n        label=\"操作\"\r\n        align=\"center\"\r\n        class-name=\"small-padding fixed-width\"\r\n      >\r\n        <template slot-scope=\"scope\">\r\n          <el-button\r\n            size=\"btu\"\r\n            type=\"text\"\r\n            @click=\"handleUpdate(scope.row)\"\r\n            v-hasPermi=\"['system:dict:edit']\"\r\n            ><span class=\"edit\">修改</span></el-button\r\n          >\r\n          <el-button\r\n            size=\"btd\"\r\n            type=\"text\"\r\n            @click=\"handleDelete(scope.row)\"\r\n            v-hasPermi=\"['system:dict:remove']\"\r\n            ><span class=\"delete\">删除</span></el-button\r\n          >\r\n        </template>\r\n      </el-table-column>\r\n    </el-table>\r\n\r\n    <pagination\r\n      v-show=\"total > 0\"\r\n      :total=\"total\"\r\n      :page.sync=\"queryParams.pageNum\"\r\n      :limit.sync=\"queryParams.pageSize\"\r\n      @pagination=\"getList\"\r\n    />\r\n\r\n    <!-- 添加或修改参数配置对话框 -->\r\n    <el-dialog\r\n      :title=\"title\"\r\n      :visible.sync=\"open\"\r\n      width=\"700px\"\r\n      append-to-body\r\n    >\r\n    <div class=\"jiben\">基本信息</div>\r\n      <el-form\r\n        ref=\"form\"\r\n        :model=\"form\"\r\n        :rules=\"rules\"\r\n        label-width=\"80px\"\r\n        :inline=\"true\"\r\n      >\r\n        <el-form-item label=\"字典名称\" prop=\"dictName\">\r\n          <el-input v-model=\"form.dictName\" placeholder=\"请输入字典名称\" />\r\n        </el-form-item>\r\n        <el-form-item label=\"字典类型\" prop=\"dictType\">\r\n          <el-input v-model=\"form.dictType\" placeholder=\"请输入字典类型\" />\r\n        </el-form-item>\r\n        <el-form-item label=\"状态\" prop=\"status\">\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 }}</el-radio\r\n            >\r\n          </el-radio-group>\r\n        </el-form-item>\r\n        <div class=\"jiben\">备注</div>\r\n        <el-form-item label=\"\" prop=\"remark\" class=\"textareas\" style=\"width: 100%\">\r\n          <el-input\r\n            v-model=\"form.remark\"\r\n            type=\"textarea\"\r\n            placeholder=\"请输入内容\"\r\n          ></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\nimport {\r\n  listType,\r\n  getType,\r\n  delType,\r\n  addType,\r\n  updateType,\r\n  exportType,\r\n  refreshCache,\r\n} from \"@/api/system/dict/type\";\r\n\r\nexport default {\r\n  name: \"Dict\",\r\n  dicts: [\"sys_normal_disable\"],\r\n  data() {\r\n    return {\r\n      // 遮罩层\r\n      loading: true,\r\n      // 导出遮罩层\r\n      exportLoading: false,\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      typeList: [],\r\n      // 弹出层标题\r\n      title: \"\",\r\n      // 是否显示弹出层\r\n      open: false,\r\n      // 日期范围\r\n      dateRange: [],\r\n      // 查询参数\r\n      queryParams: {\r\n        pageNum: 1,\r\n        pageSize: 10,\r\n        dictName: undefined,\r\n        dictType: undefined,\r\n        status: undefined,\r\n      },\r\n      // 表单参数\r\n      form: {},\r\n      // 表单校验\r\n      rules: {\r\n        dictName: [\r\n          { required: true, message: \"字典名称不能为空\", trigger: \"blur\" },\r\n        ],\r\n        dictType: [\r\n          { required: true, message: \"字典类型不能为空\", trigger: \"blur\" },\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      listType(this.addDateRange(this.queryParams, this.dateRange)).then(\r\n        (response) => {\r\n          this.typeList = response.rows;\r\n          this.total = response.total;\r\n          this.loading = false;\r\n        }\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        dictId: undefined,\r\n        dictName: undefined,\r\n        dictType: undefined,\r\n        status: \"0\",\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    handleAdd() {\r\n      this.reset();\r\n      this.open = true;\r\n      this.title = \"添加字典类型\";\r\n    },\r\n    // 多选框选中数据\r\n    handleSelectionChange(selection) {\r\n      this.ids = selection.map((item) => item.dictId);\r\n      this.single = selection.length != 1;\r\n      this.multiple = !selection.length;\r\n    },\r\n    /** 修改按钮操作 */\r\n    handleUpdate(row) {\r\n      this.reset();\r\n      const dictId = row.dictId || this.ids;\r\n      getType(dictId).then((response) => {\r\n        this.form = response.data;\r\n        this.open = true;\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.dictId != undefined) {\r\n            updateType(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            addType(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      const dictIds = row.dictId || this.ids;\r\n      this.$modal\r\n        .confirm('是否确认删除字典编号为\"' + dictIds + '\"的数据项?')\r\n        .then(function () {\r\n          return delType(dictIds);\r\n        })\r\n        .then(() => {\r\n          this.getList();\r\n          this.$modal.msgSuccess(\"删除成功\");\r\n        })\r\n        .catch(() => {});\r\n    },\r\n    /** 导出按钮操作 */\r\n    handleExport() {\r\n      const queryParams = this.queryParams;\r\n      this.$modal\r\n        .confirm(\"是否确认导出所有类型数据项?\")\r\n        .then(() => {\r\n          this.exportLoading = true;\r\n          return exportType(queryParams);\r\n        })\r\n        .then((response) => {\r\n          this.$download.name(response.msg);\r\n          this.exportLoading = false;\r\n        })\r\n        .catch(() => {});\r\n    },\r\n    /** 刷新缓存按钮操作 */\r\n    handleRefreshCache() {\r\n      refreshCache().then(() => {\r\n        this.$modal.msgSuccess(\"刷新成功\");\r\n      });\r\n    },\r\n  },\r\n};\r\n</script>\r\n<style scoped>\r\n::v-deep .el-tree-node__content {\r\n  color: #fff;\r\n  height: 30px;\r\n  text-align: center;\r\n}\r\n::v-deep .el-tree-node__content:hover {\r\n  background-color: #004d86 !important;\r\n}\r\n/* 对话框背景颜色 */\r\n::v-deep .el-dialog {\r\n  background: #004d86 !important;\r\n}\r\n::v-deep .el-textarea__inner {\r\n  width: 930px;\r\n  height: 104px;\r\n  margin: auto !important;\r\n}\r\n::v-deep .el-dialog__header {\r\n  border-bottom: 1px solid #718a9d;\r\n}\r\n::v-deep .el-dialog__title {\r\n  color: #fff;\r\n  font: 18px;\r\n}\r\n::v-deep .el-dialog__headerbtn .el-dialog__close {\r\n  color: #fff;\r\n}\r\n::v-deep .el-form-item__label {\r\n  font: 16px;\r\n  color: #fff;\r\n  width: 100px !important;\r\n}\r\n::v-deep .el-input__inner {\r\n  /* width: 200px !important;\r\n  height: 36px; */\r\n  background: transparent;\r\n  color: #fff;\r\n}\r\n/* 单位框背景颜色 */\r\n::v-deep .vue-treeselect__control {\r\n  background: #004d86 !important;\r\n}\r\n/* 基本信息背景 */\r\n.jiben {\r\n  width: 660px;\r\n  height: 32px;\r\n  background-image: url(../../../images/小标题底.png);\r\n  margin-bottom: 25px;\r\n  color: #fff;\r\n  padding-left: 16px;\r\n  line-height: 32px;\r\n}\r\n/*调整表单间距 */\r\n::v-deep .el-form-item__content {\r\n  width: 200px;\r\n}\r\n.contents {\r\n  padding: 0px 40px !important;\r\n}\r\n/* 时间选择 */\r\n::v-deep .el-input--small .el-input__inner {\r\n  width: 200px;\r\n  height: 36px;\r\n  line-height: 36px;\r\n}\r\n.el-date-editor.el-input {\r\n  width: 200px;\r\n  height: 36px;\r\n  line-height: 36px;\r\n}\r\n::v-deep .el-date-editor.el-input .el-input__inner {\r\n  height: 36px;\r\n  line-height: 36px;\r\n}\r\n/* 单位框背景颜色 */\r\n::v-deep .vue-treeselect__control {\r\n  background: #004d86 !important;\r\n  color: #fff;\r\n}\r\n/* 备注输入框 */\r\n.textareas ::v-deep .el-form-item__content {\r\n  width: 100%;\r\n}\r\n/* 日期背景颜色 */\r\n::v-deep .el-date-editor .el-range-input {\r\n  background: #00365f;\r\n}\r\n ::v-deep .el-textarea__inner {\r\n    width: 660px;\r\n    height: 104px;\r\n    margin: auto !important;\r\n} \r\n/* 状态 */\r\n.el-radio {\r\n  color: rgb(204, 198, 198);\r\n}\r\n/* 分页按钮 */\r\n::v-deep .el-pagination.is-background .el-pager li {\r\n  background-color: #004d86;\r\n  color: #fff;\r\n}\r\n::v-deep .el-pagination.is-background .btn-next {\r\n  background-color: #004d86;\r\n  color: #fff;\r\n}\r\n::v-deep .el-pagination.is-background .btn-prev,\r\n.el-pagination.is-background .btn-next,\r\n.el-pagination.is-background .el-pager li {\r\n  background: #004d86 !important;\r\n  color: #fff !important;\r\n}\r\n</style>"]}]}
 |