0f9cddbd2f2ba6238b06460c517b9225.json 28 KB

1
  1. {"remainingRequest":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/vue-loader/lib/index.js??vue-loader-options!/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/src/views/system/department-dict/index.vue?vue&type=script&lang=js","dependencies":[{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/src/views/system/department-dict/index.vue","mtime":1708395041889},{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/cache-loader/dist/cjs.js","mtime":1708395146433},{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/babel-loader/lib/index.js","mtime":1708395147257},{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/cache-loader/dist/cjs.js","mtime":1708395146433},{"path":"/Users/caoge/Desktop/地质现场/VehicleMonitor-WEB/node_modules/vue-loader/lib/index.js","mtime":1708395147382}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KDQppbXBvcnQgeyBnZXRMaW5lRGF0YUxpc3QsIGdldEFkZERlcGFydCwgZ2V0RXhwb3J0RGVwYXJ0LCBnZXREZWxldGVEZXBhcnQsIGdldFVwZGF0ZURlcGFydCB9IGZyb20gJ0AvYXBpL2RlcGFydE1lbnREaWN0Jw0KaW1wb3J0IHsgbWFwR2V0dGVycyB9IGZyb20gJ3Z1ZXgnDQoNCmV4cG9ydCBkZWZhdWx0IHsNCiAgbmFtZTogJycsDQogIGNvbXB1dGVkOiB7DQogICAgLi4ubWFwR2V0dGVycyhbDQogICAgICAnbmFtZScNCiAgICBdKQ0KICB9LA0KICBkYXRhKCkgew0KICAgIHJldHVybiB7DQogICAgICBydWxlczogew0KICAgICAgICBkaWN0TmFtZTogWw0KICAgICAgICAgIHsgcmVxdWlyZWQ6IHRydWUsIG1lc3NhZ2U6ICfor7fovpPlhaXlrZflhbjlkI3np7AnLCB0cmlnZ2VyOiAnYmx1cicgfQ0KICAgICAgICBdLA0KICAgICAgICBkaWN0VHlwZTogWw0KICAgICAgICAgIHsgcmVxdWlyZWQ6IHRydWUsIG1lc3NhZ2U6ICfor7fovpPlhaXlrZflhbjnsbvlnosnLCB0cmlnZ2VyOiAnYmx1cicgfQ0KICAgICAgICBdLA0KICAgICAgICBzdGF0dXM6IFsNCiAgICAgICAgICB7IHJlcXVpcmVkOiB0cnVlLCBtZXNzYWdlOiAn6K+36YCJ5oup54q25oCBJywgdHJpZ2dlcjogJ2JsdXInIH0NCiAgICAgICAgXQ0KICAgICAgfSwNCiAgICAgIGRlcGFydE1lbnREYXRhOiBbXSwNCiAgICAgIHF1ZXJ5UGFyYW1zOiB7DQogICAgICAgIC8vIGRhdGFUeXBlOiAnMScsDQogICAgICAgIHBhZ2VTaXplOiAnMTAnLA0KICAgICAgICBwYWdlTnVtOiAnMScsDQogICAgICAgIGRpY3ROYW1lOiAnJywNCiAgICAgICAgc3RhdHVzOiAnJw0KICAgICAgfSwNCiAgICAgIGZvcm06IHsNCiAgICAgICAgZGljdE5hbWU6ICcnLA0KICAgICAgICBkaWN0VHlwZTogJycsDQogICAgICAgIHN0YXR1czogJycsDQogICAgICAgIHJlbWFyazogJycsDQogICAgICAgIGRhdGFUeXBlOiAnMScNCiAgICAgIH0sDQogICAgICBzdGF0dXNPcHRpb25zOiBbDQogICAgICAgIHsNCiAgICAgICAgICBsYWJlbDogJ+WQr+eUqCcsDQogICAgICAgICAgdmFsdWU6ICcxJw0KICAgICAgICB9LA0KICAgICAgICB7DQogICAgICAgICAgbGFiZWw6ICflgZznlKgnLA0KICAgICAgICAgIHZhbHVlOiAnMicNCiAgICAgICAgfQ0KICAgICAgXSwNCiAgICAgIHNlYXJjaERhdGE6IHt9LA0KICAgICAgdGFibGVEYXRhOiBbXSwNCiAgICAgIGlkczogW10sDQogICAgICB0b3RhbDogMCwNCiAgICAgIHRpdGxlOiAnJywNCiAgICAgIGRpYWxvZ0Zvcm1WaXNpYmxlOiBmYWxzZSwNCiAgICAgIGRvVHlwZTogJycNCiAgICB9DQogIH0sDQogIGNyZWF0ZWQoKSB7DQogICAgdGhpcy5nZXRMaXN0KCkNCiAgfSwNCiAgbWV0aG9kczogew0KICAgIHRvVHlwZURldGFpbChzY29wZSkgeyAgICAgIA0KICAgICAgdGhpcy4kcm91dGVyLnB1c2goeyBuYW1lOiAndHlwZScsIHF1ZXJ5OiB7IHRlc3RRdWVyeTogc2NvcGUucm93LmRpY3RUeXBlIH0gfSkNCiAgICB9LA0KICAgIHVwZGF0ZURlcGFydChzY29wZSkgew0KICAgICAgdGhpcy5kb1R5cGUgPSAyDQogICAgICB0aGlzLmRpYWxvZ0Zvcm1WaXNpYmxlID0gdHJ1ZQ0KICAgICAgdGhpcy50aXRsZSA9ICfkv67mlLnpg6jpl6jlrZflhbgnDQogICAgICB0aGlzLmZvcm0gPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHNjb3BlKSkNCiAgICB9LA0KICAgIGhhbmRsZVNlbGVjdGlvbkNoYW5nZSh2YWwpIHsNCiAgICAgIHRoaXMuaWRzID0gdmFsLm1hcCgoaXRlbSkgPT4gaXRlbS5kaWN0SWQpICAgICAgDQogICAgfSwNCiAgICBoYW5kbGVEZWxldGUoKSB7DQogICAgICBpZiAodGhpcy5pZHMubGVuZ3RoID09IDApIHsNCiAgICAgICAgdGhpcy4kbWVzc2FnZSh7DQogICAgICAgICAgdHlwZTogJ2Vycm9yJywNCiAgICAgICAgICBtZXNzYWdlOiAn6K+36YCJ5oup6KaB5Yig6Zmk55qE5a2X5YW45pWw5o2uIScNCiAgICAgICAgfSkNCiAgICAgIH0gZWxzZSB7DQogICAgICAgIHRoaXMuJGNvbmZpcm0oJ+ehruWumuimgeWIoOmZpOWQlz8nLCAn5L+h5oGv5o+Q56S6Jywgew0KICAgICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiAn56Gu5a6aJywNCiAgICAgICAgICBjYW5jZWxCdXR0b25UZXh0OiAn5Y+W5raIJywNCiAgICAgICAgICB0eXBlOiAnd2FybmluZycNCiAgICAgICAgfSkudGhlbigoKSA9PiB7DQogICAgICAgICAgZ2V0RGVsZXRlRGVwYXJ0KHRoaXMuaWRzKS50aGVuKHJlcyA9PiB7DQogICAgICAgICAgICBpZiAocmVzLmNvZGUgPT0gMjAwKSB7DQogICAgICAgICAgICAgIHRoaXMuZ2V0TGlzdCh0aGlzLmRhdGEpDQogICAgICAgICAgICAgIHRoaXMuJG1lc3NhZ2Uoew0KICAgICAgICAgICAgICAgIHR5cGU6ICdzdWNjZXNzJywNCiAgICAgICAgICAgICAgICBtZXNzYWdlOiAn5Yig6Zmk5oiQ5YqfIScNCiAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgIHRoaXMuJG1lc3NhZ2Uoew0KICAgICAgICAgICAgICAgIHR5cGU6ICdlcnJvcicsDQogICAgICAgICAgICAgICAgbWVzc2FnZTogcmVzLm1zZw0KICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgIH0pDQogICAgICAgIH0pLmNhdGNoKCgpID0+IHsNCiAgICAgICAgICB0aGlzLiRtZXNzYWdlKHsNCiAgICAgICAgICAgIHR5cGU6ICdpbmZvJywNCiAgICAgICAgICAgIG1lc3NhZ2U6ICflt7Llj5bmtojliKDpmaQnDQogICAgICAgICAgfSkNCiAgICAgICAgfSkNCiAgICAgIH0NCiAgICB9LA0KICAgIGRlbGV0ZURlcGFydFR5cGUoc2NvcGUpIHsNCiAgICAgIHRoaXMuJGNvbmZpcm0oJ+ehruWumuimgeWIoOmZpOWQlz8nLCAn5L+h5oGv5o+Q56S6Jywgew0KICAgICAgICBjb25maXJtQnV0dG9uVGV4dDogJ+ehruWumicsDQogICAgICAgIGNhbmNlbEJ1dHRvblRleHQ6ICflj5bmtognLA0KICAgICAgICB0eXBlOiAnd2FybmluZycNCiAgICAgIH0pLnRoZW4oKCkgPT4gew0KICAgICAgICBnZXREZWxldGVEZXBhcnQoc2NvcGUuZGljdElkKS50aGVuKHJlcyA9PiB7DQogICAgICAgICAgaWYgKHJlcy5jb2RlID09IDIwMCkgew0KICAgICAgICAgICAgdGhpcy5nZXRMaXN0KHRoaXMuZGF0YSkNCiAgICAgICAgICAgIHRoaXMuJG1lc3NhZ2Uoew0KICAgICAgICAgICAgICB0eXBlOiAnc3VjY2VzcycsDQogICAgICAgICAgICAgIG1lc3NhZ2U6ICfliKDpmaTmiJDlip8hJw0KICAgICAgICAgICAgfSkNCiAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgdGhpcy4kbWVzc2FnZSh7DQogICAgICAgICAgICAgIHR5cGU6ICdlcnJvcicsDQogICAgICAgICAgICAgIG1lc3NhZ2U6IHJlcy5tc2cNCiAgICAgICAgICAgIH0pDQogICAgICAgICAgfQ0KICAgICAgICB9KQ0KICAgICAgfSkuY2F0Y2goKCkgPT4gew0KICAgICAgICB0aGlzLiRtZXNzYWdlKHsNCiAgICAgICAgICB0eXBlOiAnaW5mbycsDQogICAgICAgICAgbWVzc2FnZTogJ+W3suWPlua2iOWIoOmZpCcNCiAgICAgICAgfSkNCiAgICAgIH0pDQogICAgfSwNCiAgICBoYW5kbGVDdXJyZW50Q2hhbmdlKHZhbCkgew0KICAgICAgdGhpcy5xdWVyeVBhcmFtcy5wYWdlTnVtID0gdmFsDQogICAgICB0aGlzLmdldExpc3QoKQ0KICAgIH0sDQogICAgaGFuZGxlU2l6ZUNoYW5nZSh2YWwpIHsNCiAgICAgIHRoaXMucXVlcnlQYXJhbXMucGFnZVNpemUgPSB2YWwNCiAgICAgIHRoaXMuZ2V0TGlzdCgpDQogICAgfSwNCiAgICBleHBvcnRPdXQoKSB7DQogICAgICBnZXRFeHBvcnREZXBhcnQoe2lkczp0aGlzLmlkc30pLnRoZW4ocmVzID0+IHsNCiAgICAgICAgLy8gdGhpcy5leHBvcnRGaWxlKHJlcywgJ+ezu+e7n+Wtl+WFuOaVsOaNruS/oeaBrycpDQoNCg0KICAgICAgICBpZiAocmVzLnR5cGUgPT0gImFwcGxpY2F0aW9uL2pzb24iKSB7DQogICAgICAgICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTsgDQogICAgICAgICAgcmVhZGVyLnJlYWRBc1RleHQocmVzLCAndXRmLTgnKTsgDQogICAgICAgICAgcmVhZGVyLm9ubG9hZCA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgIGNvbnN0IG1zZyA9IEpTT04ucGFyc2UocmVhZGVyLnJlc3VsdCk7DQogICAgICAgICAgICBpZihtc2cuY29kZSA9PSAyMDApew0KICAgICAgICAgICAgICB0aGlzLmV4cG9ydEZpbGUocmVzLCAn57O757uf5a2X5YW45pWw5o2u5L+h5oGvJykNCiAgICAgICAgICAgIH0gZWxzZXsNCiAgICAgICAgICAgICAgTWVzc2FnZSh7DQogICAgICAgICAgICAgICAgdHlwZTogJ2Vycm9yJywNCiAgICAgICAgICAgICAgICBtZXNzYWdlOiBtc2cubXNnDQogICAgICAgICAgICAgIH0pOw0KICAgICAgICAgICAgfSAgICAgIA0KICAgICAgICAgIH0NCiAgICAgICAgfWVsc2V7DQogICAgICAgICAgdGhpcy5leHBvcnRGaWxlKHJlcywgJ+ezu+e7n+Wtl+WFuOaVsOaNruS/oeaBrycpDQogICAgICAgIH0NCg0KICAgICAgfSkNCiAgICB9LA0KICAgIGV4cG9ydEZpbGU6IGZ1bmN0aW9uIChvYmosIG5hbWUgPSBEYXRlLm5vdygpLCBzdWZmaXggPSAneGxzeCcpIHsNCiAgICAgIGNvbnN0IHVybCA9IHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKA0KICAgICAgICBuZXcgQmxvYihbb2JqXSwgeyB0eXBlOiAnYXBwbGljYXRpb24vdm5kLm1zLWV4Y2VsJyB9KQ0KICAgICAgKQ0KICAgICAgY29uc3QgYURPTSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKQ0KICAgICAgYURPTS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnDQogICAgICBhRE9NLmhyZWYgPSB1cmwNCiAgICAgIGNvbnN0IGZpbGVOYW1lID0gbmFtZSArICcuJyArIHN1ZmZpeA0KICAgICAgYURPTS5zZXRBdHRyaWJ1dGUoJ2Rvd25sb2FkJywgZmlsZU5hbWUpDQogICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGFET00pDQogICAgICBhRE9NLmNsaWNrKCkNCiAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoYURPTSkNCiAgICB9LA0KICAgIHJlc2V0KCkgew0KICAgICAgdGhpcy5xdWVyeVBhcmFtcy5zdGF0dXMgPSAnJw0KICAgICAgdGhpcy5xdWVyeVBhcmFtcy5kaWN0TmFtZSA9ICcnDQogICAgICB0aGlzLmdldExpc3QoKQ0KICAgIH0sDQogICAgaGFuZGxlU2VhcmNoKCkgew0KICAgICAgdGhpcy5xdWVyeVBhcmFtcy5wYWdlTnVtID0gMQ0KICAgICAgdGhpcy5nZXRMaXN0KCkNCiAgICB9LA0KICAgIGdldExpc3QoKSB7DQogICAgICBnZXRMaW5lRGF0YUxpc3QodGhpcy5xdWVyeVBhcmFtcykudGhlbigocmVzKSA9PiB7DQogICAgICAgIHRoaXMuZGVwYXJ0TWVudERhdGEgPSByZXMuZGF0YS5yZWNvcmRzDQogICAgICAgIHRoaXMudG90YWwgPSByZXMuZGF0YS50b3RhbA0KICAgICAgfSkNCiAgICB9LA0KICAgIHN1Ym1pdEZvcm0oKSB7DQogICAgICB0aGlzLiRyZWZzLmZvcm0udmFsaWRhdGUoKHZhbGlkKSA9PiB7DQogICAgICAgIGlmICh2YWxpZCkgew0KICAgICAgICAgIGlmICh0aGlzLmRvVHlwZSA9PSAxKSB7DQogICAgICAgICAgICBnZXRBZGREZXBhcnQodGhpcy5mb3JtKS50aGVuKHJlcyA9PiB7DQogICAgICAgICAgICAgIGlmIChyZXMuY29kZSA9PSAyMDApIHsNCiAgICAgICAgICAgICAgICB0aGlzLmRpYWxvZ0Zvcm1WaXNpYmxlID0gZmFsc2UNCiAgICAgICAgICAgICAgICB0aGlzLiRtZXNzYWdlKHsNCiAgICAgICAgICAgICAgICAgIG1lc3NhZ2U6ICfmlrDlop7miJDlip8nLA0KICAgICAgICAgICAgICAgICAgdHlwZTogJ3N1Y2Nlc3MnDQogICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICB0aGlzLmdldExpc3QoKQ0KICAgICAgICAgICAgICAgIHRoaXMuJHJlZnMuZm9ybS5yZXNldEZpZWxkcygpDQogICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgdGhpcy4kbWVzc2FnZSh7DQogICAgICAgICAgICAgICAgICBtZXNzYWdlOiByZXMubXNnLA0KICAgICAgICAgICAgICAgICAgdHlwZTogJ2Vycm9yJw0KICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0pDQogICAgICAgICAgfSBlbHNlIGlmICh0aGlzLmRvVHlwZSA9PSAyKSB7DQogICAgICAgICAgICBnZXRVcGRhdGVEZXBhcnQodGhpcy5mb3JtKS50aGVuKHJlcyA9PiB7DQogICAgICAgICAgICAgIGlmIChyZXMuY29kZSA9PSAyMDApIHsNCiAgICAgICAgICAgICAgICB0aGlzLmRpYWxvZ0Zvcm1WaXNpYmxlID0gZmFsc2UNCiAgICAgICAgICAgICAgICB0aGlzLiRtZXNzYWdlKHsNCiAgICAgICAgICAgICAgICAgIG1lc3NhZ2U6ICfkv67mlLnmiJDlip8nLA0KICAgICAgICAgICAgICAgICAgdHlwZTogJ3N1Y2Nlc3MnDQogICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICB0aGlzLmdldExpc3QoKQ0KICAgICAgICAgICAgICAgIHRoaXMuJHJlZnMuZm9ybS5yZXNldEZpZWxkcygpDQogICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgdGhpcy4kbWVzc2FnZSh7DQogICAgICAgICAgICAgICAgICBtZXNzYWdlOiByZXMubXNnLA0KICAgICAgICAgICAgICAgICAgdHlwZTogJ2Vycm9yJw0KICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0pDQogICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICB9KQ0KICAgIH0sDQogICAgYWRkRGVwYXJ0TWVuRGljdCgpIHsNCiAgICAgIHRoaXMuZGlhbG9nRm9ybVZpc2libGUgPSB0cnVlDQogICAgICB0aGlzLnRpdGxlID0gJ+aWsOWinumDqOmXqOWtl+WFuCcNCiAgICAgIHRoaXMuZG9UeXBlID0gMQ0KICAgICAgdGhpcy4kcmVmcy5mb3JtLnJlc2V0RmllbGRzKCkNCiAgICB9LA0KICAgIGNsb3NlRGlhKCkgew0KICAgICAgdGhpcy5kaWFsb2dGb3JtVmlzaWJsZSA9IGZhbHNlDQogICAgICB0aGlzLiRyZWZzLmZvcm0ucmVzZXRGaWVsZHMoKQ0KICAgIH0NCiAgfQ0KfQ0K"},{"version":3,"sources":["index.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmGA;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;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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","file":"index.vue","sourceRoot":"src/views/system/department-dict","sourcesContent":["<template>\r\n <div class=\"dashboard-container\">\r\n <div class=\"search-content\">\r\n <el-input v-model=\"queryParams.dictName\" style=\"width: 220px;\" placeholder=\"请输入字典名称\" />\r\n <el-select v-model=\"queryParams.status\" clearable placeholder=\"请选择状态\">\r\n <el-option v-for=\"item in statusOptions\" :key=\"item.value\" :label=\"item.label\" :value=\"item.value\" />\r\n </el-select>\r\n <div class=\"search-btn\">\r\n <div class=\"search\" @click=\"handleSearch\">查询</div>\r\n <div class=\"reset\" @click=\"reset\">重置</div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"table-content\">\r\n <div style=\"width: 100%;height: 30px;\">\r\n <div class=\"btn\" @click=\"addDepartMenDict\">\r\n <span class=\"icon font_family\">&#xe604;</span>\r\n 新增\r\n </div>\r\n <div class=\"btn\" @click=\"handleDelete\">\r\n <span class=\"icon font_family\">&#xe607;</span>\r\n 批量删除\r\n </div>\r\n <div class=\"btn\" @click=\"exportOut\">\r\n <span class=\"icon font_family\">&#xe605;</span>\r\n 导出\r\n </div>\r\n </div>\r\n <el-table ref=\"multipleTable\" :data=\"departMentData\" tooltip-effect=\"dark\" style=\"width: 100%\"\r\n @selection-change=\"handleSelectionChange\">\r\n <el-table-column type=\"selection\" width=\"55\" />\r\n <el-table-column prop=\"dictId\" label=\"字典编号\" align=\"center\" width=\"160\" />\r\n <el-table-column prop=\"dictName\" label=\"字典名称\" align=\"center\" width=\"200\" />\r\n <el-table-column prop=\"dictType\" label=\"字典类型\" align=\"center\" width=\"190\">\r\n <template slot-scope=\"scope\">\r\n <span style=\"color:blue;cursor: pointer;\" @click=\"toTypeDetail(scope)\">{{ scope.row.dictType }}</span>\r\n <!-- <router-link :to=\"'/system/department-dict/type/index/' + scope.row.dictId\" class=\"link-type\"> -->\r\n <!-- <span>{{ scope.row.dictType }}</span> -->\r\n <!-- </router-link> -->\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"status\" label=\"状态\" align=\"center\" width=\"160\">\r\n <template slot-scope=\"scope\">\r\n <div class=\"startUsing\" v-if=\"scope.row.status == 1\">启用</div>\r\n <div class=\"Deactivate\" v-else>停用</div>\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"remark\" label=\"备注\" align=\"center\" />\r\n <el-table-column prop=\"createTime\" label=\"创建时间\" align=\"center\" width=\"170\" />\r\n <el-table-column label=\"操作\" align=\"center\" width=\"200\">\r\n <template slot-scope=\"scope\">\r\n <div class=\"operateBtn\" style=\"display:flex\">\r\n <div style=\"width:100px;margin-left:50px;font-size:16px;color: #2766DD;cursor: pointer;\"\r\n @click=\"updateDepart(scope.row)\">修改</div>\r\n <div style=\"width:100px;margin-right:50px;font-size:16px;color: #2766DD;cursor: pointer;\"\r\n @click=\"deleteDepartType(scope.row)\">删除</div>\r\n </div>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n <el-row type=\"flex\" justify=\"end\" style=\"margin-top: 10px\">\r\n\r\n <div class=\"pagination\">\r\n <el-pagination :page-sizes=\"[10, 15, 20]\" :page-size=\"searchData.pageSize\"\r\n layout=\"total, sizes, prev, pager, next, jumper\" :total=\"total\" @size-change=\"handleSizeChange\"\r\n @current-change=\"handleCurrentChange\" />\r\n </div>\r\n </el-row>\r\n </div>\r\n\r\n <el-dialog center width=\"636px\" :title=\"title\" :visible.sync=\"dialogFormVisible\">\r\n <el-form ref=\"form\" :model=\"form\" :rules=\"rules\">\r\n <el-form-item label=\"字典名称\" label-width=\"80px\" prop=\"dictName\">\r\n <el-input v-model=\"form.dictName\" autocomplete=\"off\" placeholder=\"请输入字典名称\" />\r\n </el-form-item>\r\n <el-form-item label=\"字典类型\" label-width=\"80px\" prop=\"dictType\">\r\n <el-input v-model=\"form.dictType\" autocomplete=\"off\" placeholder=\"请输入字典类型\" />\r\n </el-form-item>\r\n <el-form-item label=\"状态\" label-width=\"80px\" prop=\"status\">\r\n <el-radio-group v-model=\"form.status\">\r\n <el-radio :label=\"1\">启用</el-radio>\r\n <el-radio :label=\"2\">停用</el-radio>\r\n </el-radio-group>\r\n </el-form-item>\r\n <el-form-item label=\"备注\" label-width=\"80px\" prop=\"remark\">\r\n <el-input v-model=\"form.remark\" autocomplete=\"off\" placeholder=\"请输入备注\" />\r\n </el-form-item>\r\n </el-form>\r\n <div slot=\"footer\" class=\"dialog-footer\">\r\n <!-- <el-button class=\"reset\" @click=\"closeDia\">取 消</el-button>\r\n <el-button class=\"search\" @click=\"submitForm\">保存</el-button> -->\r\n <div class=\"search\" @click=\"submitForm\">保 存</div>\r\n <div class=\"reset\" @click=\"closeDia\">取 消</div>\r\n </div>\r\n </el-dialog>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport { getLineDataList, getAddDepart, getExportDepart, getDeleteDepart, getUpdateDepart } from '@/api/departMentDict'\r\nimport { mapGetters } from 'vuex'\r\n\r\nexport default {\r\n name: '',\r\n computed: {\r\n ...mapGetters([\r\n 'name'\r\n ])\r\n },\r\n data() {\r\n return {\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 status: [\r\n { required: true, message: '请选择状态', trigger: 'blur' }\r\n ]\r\n },\r\n departMentData: [],\r\n queryParams: {\r\n // dataType: '1',\r\n pageSize: '10',\r\n pageNum: '1',\r\n dictName: '',\r\n status: ''\r\n },\r\n form: {\r\n dictName: '',\r\n dictType: '',\r\n status: '',\r\n remark: '',\r\n dataType: '1'\r\n },\r\n statusOptions: [\r\n {\r\n label: '启用',\r\n value: '1'\r\n },\r\n {\r\n label: '停用',\r\n value: '2'\r\n }\r\n ],\r\n searchData: {},\r\n tableData: [],\r\n ids: [],\r\n total: 0,\r\n title: '',\r\n dialogFormVisible: false,\r\n doType: ''\r\n }\r\n },\r\n created() {\r\n this.getList()\r\n },\r\n methods: {\r\n toTypeDetail(scope) { \r\n this.$router.push({ name: 'type', query: { testQuery: scope.row.dictType } })\r\n },\r\n updateDepart(scope) {\r\n this.doType = 2\r\n this.dialogFormVisible = true\r\n this.title = '修改部门字典'\r\n this.form = JSON.parse(JSON.stringify(scope))\r\n },\r\n handleSelectionChange(val) {\r\n this.ids = val.map((item) => item.dictId) \r\n },\r\n handleDelete() {\r\n if (this.ids.length == 0) {\r\n this.$message({\r\n type: 'error',\r\n message: '请选择要删除的字典数据!'\r\n })\r\n } else {\r\n this.$confirm('确定要删除吗?', '信息提示', {\r\n confirmButtonText: '确定',\r\n cancelButtonText: '取消',\r\n type: 'warning'\r\n }).then(() => {\r\n getDeleteDepart(this.ids).then(res => {\r\n if (res.code == 200) {\r\n this.getList(this.data)\r\n this.$message({\r\n type: 'success',\r\n message: '删除成功!'\r\n })\r\n } else {\r\n this.$message({\r\n type: 'error',\r\n message: res.msg\r\n })\r\n }\r\n })\r\n }).catch(() => {\r\n this.$message({\r\n type: 'info',\r\n message: '已取消删除'\r\n })\r\n })\r\n }\r\n },\r\n deleteDepartType(scope) {\r\n this.$confirm('确定要删除吗?', '信息提示', {\r\n confirmButtonText: '确定',\r\n cancelButtonText: '取消',\r\n type: 'warning'\r\n }).then(() => {\r\n getDeleteDepart(scope.dictId).then(res => {\r\n if (res.code == 200) {\r\n this.getList(this.data)\r\n this.$message({\r\n type: 'success',\r\n message: '删除成功!'\r\n })\r\n } else {\r\n this.$message({\r\n type: 'error',\r\n message: res.msg\r\n })\r\n }\r\n })\r\n }).catch(() => {\r\n this.$message({\r\n type: 'info',\r\n message: '已取消删除'\r\n })\r\n })\r\n },\r\n handleCurrentChange(val) {\r\n this.queryParams.pageNum = val\r\n this.getList()\r\n },\r\n handleSizeChange(val) {\r\n this.queryParams.pageSize = val\r\n this.getList()\r\n },\r\n exportOut() {\r\n getExportDepart({ids:this.ids}).then(res => {\r\n // this.exportFile(res, '系统字典数据信息')\r\n\r\n\r\n if (res.type == \"application/json\") {\r\n const reader = new FileReader(); \r\n reader.readAsText(res, 'utf-8'); \r\n reader.onload = function () {\r\n const msg = JSON.parse(reader.result);\r\n if(msg.code == 200){\r\n this.exportFile(res, '系统字典数据信息')\r\n } else{\r\n Message({\r\n type: 'error',\r\n message: msg.msg\r\n });\r\n } \r\n }\r\n }else{\r\n this.exportFile(res, '系统字典数据信息')\r\n }\r\n\r\n })\r\n },\r\n exportFile: function (obj, name = Date.now(), suffix = 'xlsx') {\r\n const url = window.URL.createObjectURL(\r\n new Blob([obj], { type: 'application/vnd.ms-excel' })\r\n )\r\n const aDOM = document.createElement('a')\r\n aDOM.style.display = 'none'\r\n aDOM.href = url\r\n const fileName = name + '.' + suffix\r\n aDOM.setAttribute('download', fileName)\r\n document.body.appendChild(aDOM)\r\n aDOM.click()\r\n document.body.removeChild(aDOM)\r\n },\r\n reset() {\r\n this.queryParams.status = ''\r\n this.queryParams.dictName = ''\r\n this.getList()\r\n },\r\n handleSearch() {\r\n this.queryParams.pageNum = 1\r\n this.getList()\r\n },\r\n getList() {\r\n getLineDataList(this.queryParams).then((res) => {\r\n this.departMentData = res.data.records\r\n this.total = res.data.total\r\n })\r\n },\r\n submitForm() {\r\n this.$refs.form.validate((valid) => {\r\n if (valid) {\r\n if (this.doType == 1) {\r\n getAddDepart(this.form).then(res => {\r\n if (res.code == 200) {\r\n this.dialogFormVisible = false\r\n this.$message({\r\n message: '新增成功',\r\n type: 'success'\r\n })\r\n this.getList()\r\n this.$refs.form.resetFields()\r\n } else {\r\n this.$message({\r\n message: res.msg,\r\n type: 'error'\r\n })\r\n }\r\n })\r\n } else if (this.doType == 2) {\r\n getUpdateDepart(this.form).then(res => {\r\n if (res.code == 200) {\r\n this.dialogFormVisible = false\r\n this.$message({\r\n message: '修改成功',\r\n type: 'success'\r\n })\r\n this.getList()\r\n this.$refs.form.resetFields()\r\n } else {\r\n this.$message({\r\n message: res.msg,\r\n type: 'error'\r\n })\r\n }\r\n })\r\n }\r\n }\r\n })\r\n },\r\n addDepartMenDict() {\r\n this.dialogFormVisible = true\r\n this.title = '新增部门字典'\r\n this.doType = 1\r\n this.$refs.form.resetFields()\r\n },\r\n closeDia() {\r\n this.dialogFormVisible = false\r\n this.$refs.form.resetFields()\r\n }\r\n }\r\n}\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.dashboard {\r\n &-container {\r\n margin: 45px 30px 30px;\r\n }\r\n\r\n &-text {\r\n font-size: 30px;\r\n line-height: 46px;\r\n }\r\n}\r\n\r\n.dashboard-container {\r\n\r\n .search-content {\r\n width: 100%;\r\n height: 74px;\r\n background-color: #fff;\r\n display: flex;\r\n align-items: center;\r\n padding-left: 10px;\r\n\r\n .el-input {\r\n margin: 0 10px;\r\n }\r\n\r\n .el-select {\r\n margin: 0 10px;\r\n }\r\n\r\n .search-btn {\r\n display: flex;\r\n align-items: center;\r\n height: 100%;\r\n margin-left: 10px;\r\n\r\n div {\r\n // margin: 0 6px;\r\n display: inline-block;\r\n width: 80px;\r\n height: 40px;\r\n border-radius: 2px;\r\n font-size: 14px;\r\n line-height: 40px;\r\n text-align: center;\r\n }\r\n\r\n div:hover {\r\n cursor: pointer;\r\n }\r\n\r\n .search {\r\n margin-right: 10px;\r\n background-color: #2766DD;\r\n color: #F7F8FB;\r\n }\r\n\r\n .search:hover {\r\n background-color: #4D85F4;\r\n }\r\n\r\n .reset {\r\n color: #333334;\r\n border: 1px solid #D7D7D7;\r\n }\r\n\r\n .reset:hover {\r\n color: #1F9FFF;\r\n border: 1px solid #1F9FFF;\r\n }\r\n }\r\n }\r\n\r\n .table-content {\r\n margin-top: 15px;\r\n width: 100%;\r\n background-color: #fff;\r\n padding: 0 20px 20px;\r\n\r\n .btn {\r\n margin: 15px 20px 15px 0;\r\n cursor: pointer;\r\n float: left;\r\n text-align: center;\r\n width: 98px;\r\n height: 34px;\r\n border-radius: 2px;\r\n border: 1px solid #ABC7FD;\r\n line-height: 34px;\r\n font-weight: 400;\r\n font-size: 14px;\r\n color: #2250C8;\r\n background-color: #E7EEFF;\r\n }\r\n\r\n .btn:hover {\r\n color: #FFFFFF;\r\n background-color: #2250C8;\r\n border: 1px solid #2250C8;\r\n }\r\n\r\n .btn:active {\r\n color: #FFFFFF;\r\n background-color: #194DA4;\r\n border: 1px solid #194DA4;\r\n }\r\n\r\n .startUsing {\r\n width: 54px;\r\n height: 24px;\r\n margin: 14.5px auto 0;\r\n line-height: 24px;\r\n text-align: center;\r\n font-size: 12px;\r\n color: #00974D;\r\n border-radius: 4px;\r\n background-color: #E7FAF0;\r\n border: 1px solid #BEFDDD;\r\n }\r\n\r\n .Deactivate {\r\n width: 54px;\r\n height: 24px;\r\n margin: 14.5px auto 0;\r\n line-height: 24px;\r\n text-align: center;\r\n font-size: 12px;\r\n color: #FF9933;\r\n border-radius: 4px;\r\n background-color: #FFF3E8;\r\n border: 1px solid #FDE6CF;\r\n }\r\n\r\n .operateBtn {\r\n display: flex;\r\n justify-content: center;\r\n color: #2866DD;\r\n\r\n div {\r\n font-size: 14px;\r\n margin: 0 5px;\r\n cursor: pointer;\r\n }\r\n }\r\n\r\n .pagination {\r\n margin: 10px 0;\r\n width: 100%;\r\n height: 20px;\r\n\r\n .el-pagination {\r\n float: right;\r\n margin: 10px 0;\r\n }\r\n }\r\n }\r\n}\r\n\r\n.search {\r\n background-color: #2766DD;\r\n color: #F7F8FB;\r\n}\r\n\r\n.search:hover {\r\n background-color: #4D85F4;\r\n}\r\n\r\n.reset {\r\n color: #333334;\r\n border: 1px solid #D7D7D7;\r\n}\r\n\r\n.reset:hover {\r\n color: #1F9FFF;\r\n border: 1px solid #1F9FFF;\r\n background: none;\r\n}\r\n\r\n.startUsing {\r\n width: 54px;\r\n height: 24px;\r\n margin: 14.5px auto 0;\r\n line-height: 24px;\r\n text-align: center;\r\n font-size: 12px;\r\n color: #00974D;\r\n border-radius: 4px;\r\n background-color: #E7FAF0;\r\n border: 1px solid #BEFDDD;\r\n}\r\n\r\n.Deactivate {\r\n width: 54px;\r\n height: 24px;\r\n margin: 14.5px auto 0;\r\n line-height: 24px;\r\n text-align: center;\r\n font-size: 12px;\r\n color: #FF9933;\r\n border-radius: 4px;\r\n background-color: #FFF3E8;\r\n border: 1px solid #FDE6CF;\r\n}\r\n\r\n::v-deep .el-dialog__body {\r\n padding: 20px 95px !important;\r\n}\r\n</style>\r\n"]}]}