| 1 | {"remainingRequest":"D:\\Desktop\\supervision-ui\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\Desktop\\supervision-ui\\src\\views\\system\\post\\index.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\Desktop\\supervision-ui\\src\\views\\system\\post\\index.vue","mtime":1647101026938},{"path":"D:\\Desktop\\supervision-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1647101096564},{"path":"D:\\Desktop\\supervision-ui\\node_modules\\babel-loader\\lib\\index.js","mtime":1647101099358},{"path":"D:\\Desktop\\supervision-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1647101096564},{"path":"D:\\Desktop\\supervision-ui\\node_modules\\vue-loader\\lib\\index.js","mtime":1647101100033}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KDQppbXBvcnQgew0KICBsaXN0UG9zdCwNCiAgZ2V0UG9zdCwNCiAgZGVsUG9zdCwNCiAgYWRkUG9zdCwNCiAgdXBkYXRlUG9zdCwNCiAgZXhwb3J0UG9zdCwNCn0gZnJvbSAiQC9hcGkvc3lzdGVtL3Bvc3QiOw0KDQpleHBvcnQgZGVmYXVsdCB7DQogIG5hbWU6ICJQb3N0IiwNCiAgZGljdHM6IFsic3lzX25vcm1hbF9kaXNhYmxlIl0sDQogIGRhdGEoKSB7DQogICAgcmV0dXJuIHsNCiAgICAgIC8vIOmBrue9qeWxgg0KICAgICAgbG9hZGluZzogdHJ1ZSwNCiAgICAgIC8vIOWvvOWHuumBrue9qeWxgg0KICAgICAgZXhwb3J0TG9hZGluZzogZmFsc2UsDQogICAgICAvLyDpgInkuK3mlbDnu4QNCiAgICAgIGlkczogW10sDQogICAgICAvLyDpnZ7ljZXkuKrnpoHnlKgNCiAgICAgIHNpbmdsZTogdHJ1ZSwNCiAgICAgIC8vIOmdnuWkmuS4quemgeeUqA0KICAgICAgbXVsdGlwbGU6IHRydWUsDQogICAgICAvLyDmmL7npLrmkJzntKLmnaHku7YNCiAgICAgIHNob3dTZWFyY2g6IHRydWUsDQogICAgICAvLyDmgLvmnaHmlbANCiAgICAgIHRvdGFsOiAwLA0KICAgICAgLy8g5bKX5L2N6KGo5qC85pWw5o2uDQogICAgICBwb3N0TGlzdDogW10sDQogICAgICAvLyDlvLnlh7rlsYLmoIfpopgNCiAgICAgIHRpdGxlOiAiIiwNCiAgICAgIC8vIOaYr+WQpuaYvuekuuW8ueWHuuWxgg0KICAgICAgb3BlbjogZmFsc2UsDQogICAgICAvLyDmn6Xor6Llj4LmlbANCiAgICAgIHF1ZXJ5UGFyYW1zOiB7DQogICAgICAgIHBhZ2VOdW06IDEsDQogICAgICAgIHBhZ2VTaXplOiAxMCwNCiAgICAgICAgcG9zdENvZGU6IHVuZGVmaW5lZCwNCiAgICAgICAgcG9zdE5hbWU6IHVuZGVmaW5lZCwNCiAgICAgICAgc3RhdHVzOiB1bmRlZmluZWQsDQogICAgICB9LA0KICAgICAgLy8g6KGo5Y2V5Y+C5pWwDQogICAgICBmb3JtOiB7fSwNCiAgICAgIC8vIOihqOWNleagoemqjA0KICAgICAgcnVsZXM6IHsNCiAgICAgICAgcG9zdE5hbWU6IFsNCiAgICAgICAgICB7IHJlcXVpcmVkOiB0cnVlLCBtZXNzYWdlOiAi5bKX5L2N5ZCN56ew5LiN6IO95Li656m6IiwgdHJpZ2dlcjogImJsdXIiIH0sDQogICAgICAgIF0sDQogICAgICAgIHBvc3RDb2RlOiBbDQogICAgICAgICAgeyByZXF1aXJlZDogdHJ1ZSwgbWVzc2FnZTogIuWyl+S9jee8lueggeS4jeiDveS4uuepuiIsIHRyaWdnZXI6ICJibHVyIiB9LA0KICAgICAgICBdLA0KICAgICAgICBwb3N0U29ydDogWw0KICAgICAgICAgIHsgcmVxdWlyZWQ6IHRydWUsIG1lc3NhZ2U6ICLlspfkvY3pobrluo/kuI3og73kuLrnqboiLCB0cmlnZ2VyOiAiYmx1ciIgfSwNCiAgICAgICAgXSwNCiAgICAgIH0sDQogICAgfTsNCiAgfSwNCiAgY3JlYXRlZCgpIHsNCiAgICB0aGlzLmdldExpc3QoKTsNCiAgfSwNCiAgbWV0aG9kczogew0KICAgIC8qKiDmn6Xor6LlspfkvY3liJfooaggKi8NCiAgICBnZXRMaXN0KCkgew0KICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTsNCiAgICAgIGxpc3RQb3N0KHRoaXMucXVlcnlQYXJhbXMpLnRoZW4oKHJlc3BvbnNlKSA9PiB7DQogICAgICAgIHRoaXMucG9zdExpc3QgPSByZXNwb25zZS5yb3dzOw0KICAgICAgICB0aGlzLnRvdGFsID0gcmVzcG9uc2UudG90YWw7DQogICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlOw0KICAgICAgfSk7DQogICAgfSwNCiAgICAvLyDlj5bmtojmjInpkq4NCiAgICBjYW5jZWwoKSB7DQogICAgICB0aGlzLm9wZW4gPSBmYWxzZTsNCiAgICAgIHRoaXMucmVzZXQoKTsNCiAgICB9LA0KICAgIC8vIOihqOWNlemHjee9rg0KICAgIHJlc2V0KCkgew0KICAgICAgdGhpcy5mb3JtID0gew0KICAgICAgICBwb3N0SWQ6IHVuZGVmaW5lZCwNCiAgICAgICAgcG9zdENvZGU6IHVuZGVmaW5lZCwNCiAgICAgICAgcG9zdE5hbWU6IHVuZGVmaW5lZCwNCiAgICAgICAgcG9zdFNvcnQ6IDAsDQogICAgICAgIHN0YXR1czogIjAiLA0KICAgICAgICByZW1hcms6IHVuZGVmaW5lZCwNCiAgICAgIH07DQogICAgICB0aGlzLnJlc2V0Rm9ybSgiZm9ybSIpOw0KICAgIH0sDQogICAgLyoqIOaQnOe0ouaMiemSruaTjeS9nCAqLw0KICAgIGhhbmRsZVF1ZXJ5KCkgew0KICAgICAgdGhpcy5xdWVyeVBhcmFtcy5wYWdlTnVtID0gMTsNCiAgICAgIHRoaXMuZ2V0TGlzdCgpOw0KICAgIH0sDQogICAgLyoqIOmHjee9ruaMiemSruaTjeS9nCAqLw0KICAgIHJlc2V0UXVlcnkoKSB7DQogICAgICB0aGlzLnJlc2V0Rm9ybSgicXVlcnlGb3JtIik7DQogICAgICB0aGlzLmhhbmRsZVF1ZXJ5KCk7DQogICAgfSwNCiAgICAvLyDlpJrpgInmoYbpgInkuK3mlbDmja4NCiAgICBoYW5kbGVTZWxlY3Rpb25DaGFuZ2Uoc2VsZWN0aW9uKSB7DQogICAgICB0aGlzLmlkcyA9IHNlbGVjdGlvbi5tYXAoKGl0ZW0pID0+IGl0ZW0ucG9zdElkKTsNCiAgICAgIHRoaXMuc2luZ2xlID0gc2VsZWN0aW9uLmxlbmd0aCAhPSAxOw0KICAgICAgdGhpcy5tdWx0aXBsZSA9ICFzZWxlY3Rpb24ubGVuZ3RoOw0KICAgIH0sDQogICAgLyoqIOaWsOWinuaMiemSruaTjeS9nCAqLw0KICAgIGhhbmRsZUFkZCgpIHsNCiAgICAgIHRoaXMucmVzZXQoKTsNCiAgICAgIHRoaXMub3BlbiA9IHRydWU7DQogICAgICB0aGlzLnRpdGxlID0gIua3u+WKoOWyl+S9jSI7DQogICAgfSwNCiAgICAvKiog5L+u5pS55oyJ6ZKu5pON5L2cICovDQogICAgaGFuZGxlVXBkYXRlKHJvdykgew0KICAgICAgdGhpcy5yZXNldCgpOw0KICAgICAgY29uc3QgcG9zdElkID0gcm93LnBvc3RJZCB8fCB0aGlzLmlkczsNCiAgICAgIGdldFBvc3QocG9zdElkKS50aGVuKChyZXNwb25zZSkgPT4gew0KICAgICAgICB0aGlzLmZvcm0gPSByZXNwb25zZS5kYXRhOw0KICAgICAgICB0aGlzLm9wZW4gPSB0cnVlOw0KICAgICAgICB0aGlzLnRpdGxlID0gIuS/ruaUueWyl+S9jSI7DQogICAgICB9KTsNCiAgICB9LA0KICAgIC8qKiDmj5DkuqTmjInpkq4gKi8NCiAgICBzdWJtaXRGb3JtOiBmdW5jdGlvbiAoKSB7DQogICAgICB0aGlzLiRyZWZzWyJmb3JtIl0udmFsaWRhdGUoKHZhbGlkKSA9PiB7DQogICAgICAgIGlmICh2YWxpZCkgew0KICAgICAgICAgIGlmICh0aGlzLmZvcm0ucG9zdElkICE9IHVuZGVmaW5lZCkgew0KICAgICAgICAgICAgdXBkYXRlUG9zdCh0aGlzLmZvcm0pLnRoZW4oKHJlc3BvbnNlKSA9PiB7DQogICAgICAgICAgICAgIHRoaXMuJG1vZGFsLm1zZ1N1Y2Nlc3MoIuS/ruaUueaIkOWKnyIpOw0KICAgICAgICAgICAgICB0aGlzLm9wZW4gPSBmYWxzZTsNCiAgICAgICAgICAgICAgdGhpcy5nZXRMaXN0KCk7DQogICAgICAgICAgICB9KTsNCiAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgYWRkUG9zdCh0aGlzLmZvcm0pLnRoZW4oKHJlc3BvbnNlKSA9PiB7DQogICAgICAgICAgICAgIHRoaXMuJG1vZGFsLm1zZ1N1Y2Nlc3MoIuaWsOWinuaIkOWKnyIpOw0KICAgICAgICAgICAgICB0aGlzLm9wZW4gPSBmYWxzZTsNCiAgICAgICAgICAgICAgdGhpcy5nZXRMaXN0KCk7DQogICAgICAgICAgICB9KTsNCiAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgIH0pOw0KICAgIH0sDQogICAgLyoqIOWIoOmZpOaMiemSruaTjeS9nCAqLw0KICAgIGhhbmRsZURlbGV0ZShyb3cpIHsNCiAgICAgIGNvbnN0IHBvc3RJZHMgPSByb3cucG9zdElkIHx8IHRoaXMuaWRzOw0KICAgICAgdGhpcy4kbW9kYWwNCiAgICAgICAgLmNvbmZpcm0oJ+aYr+WQpuehruiupOWIoOmZpOWyl+S9jee8luWPt+S4uiInICsgcG9zdElkcyArICci55qE5pWw5o2u6aG577yfJykNCiAgICAgICAgLnRoZW4oZnVuY3Rpb24gKCkgew0KICAgICAgICAgIHJldHVybiBkZWxQb3N0KHBvc3RJZHMpOw0KICAgICAgICB9KQ0KICAgICAgICAudGhlbigoKSA9PiB7DQogICAgICAgICAgdGhpcy5nZXRMaXN0KCk7DQogICAgICAgICAgdGhpcy4kbW9kYWwubXNnU3VjY2Vzcygi5Yig6Zmk5oiQ5YqfIik7DQogICAgICAgIH0pDQogICAgICAgIC5jYXRjaCgoKSA9PiB7fSk7DQogICAgfSwNCiAgICAvKiog5a+85Ye65oyJ6ZKu5pON5L2cICovDQogICAgaGFuZGxlRXhwb3J0KCkgew0KICAgICAgY29uc3QgcXVlcnlQYXJhbXMgPSB0aGlzLnF1ZXJ5UGFyYW1zOw0KICAgICAgdGhpcy4kbW9kYWwNCiAgICAgICAgLmNvbmZpcm0oIuaYr+WQpuehruiupOWvvOWHuuaJgOacieWyl+S9jeaVsOaNrumhue+8nyIpDQogICAgICAgIC50aGVuKCgpID0+IHsNCiAgICAgICAgICB0aGlzLmV4cG9ydExvYWRpbmcgPSB0cnVlOw0KICAgICAgICAgIHJldHVybiBleHBvcnRQb3N0KHF1ZXJ5UGFyYW1zKTsNCiAgICAgICAgfSkNCiAgICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiB7DQogICAgICAgICAgdGhpcy4kZG93bmxvYWQubmFtZShyZXNwb25zZS5tc2cpOw0KICAgICAgICAgIHRoaXMuZXhwb3J0TG9hZGluZyA9IGZhbHNlOw0KICAgICAgICB9KQ0KICAgICAgICAuY2F0Y2goKCkgPT4ge30pOw0KICAgIH0sDQogIH0sDQp9Ow0K"},{"version":3,"sources":["index.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0OA;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","file":"index.vue","sourceRoot":"src/views/system/post","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=\"postCode\">\r\n        <el-input\r\n          v-model=\"queryParams.postCode\"\r\n          placeholder=\"请输入岗位编码\"\r\n          clearable\r\n          size=\"small\"\r\n          @keyup.enter.native=\"handleQuery\"\r\n        />\r\n      </el-form-item>\r\n      <el-form-item label=\"岗位名称\" prop=\"postName\">\r\n        <el-input\r\n          v-model=\"queryParams.postName\"\r\n          placeholder=\"请输入岗位名称\"\r\n          clearable\r\n          size=\"small\"\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        >\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\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:post: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:post: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:post: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:post:export']\"\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=\"postList\"\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=\"postId\" />\r\n      <el-table-column label=\"岗位编码\" align=\"center\" prop=\"postCode\" />\r\n      <el-table-column label=\"岗位名称\" align=\"center\" prop=\"postName\" />\r\n      <el-table-column label=\"岗位排序\" align=\"center\" prop=\"postSort\" />\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=\"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:post:edit']\"\r\n          >\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:post: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\r\n      <el-form\r\n        ref=\"form\"\r\n        :model=\"form\"\r\n        :rules=\"rules\"\r\n        label-width=\"100px\"\r\n        :inline=\"true\"\r\n      >\r\n        <el-form-item label=\"岗位名称\" prop=\"postName\">\r\n          <el-input v-model=\"form.postName\" placeholder=\"请输入岗位名称\" />\r\n        </el-form-item>\r\n        <el-form-item label=\"岗位编码\" prop=\"postCode\">\r\n          <el-input v-model=\"form.postCode\" placeholder=\"请输入编码名称\" />\r\n        </el-form-item>\r\n        <el-form-item label=\"岗位顺序\" prop=\"postSort\">\r\n          <el-input-number\r\n            v-model=\"form.postSort\"\r\n            controls-position=\"right\"\r\n            :min=\"0\"\r\n          />\r\n        </el-form-item>\r\n        <el-form-item></el-form-item>\r\n\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\r\n        <el-form-item label=\"\" prop=\"remark\" style=\"width:100%\" class=\"textareas\">\r\n          <el-input\r\n            v-model=\"form.remark\"\r\n            type=\"textarea\"\r\n            placeholder=\"请输入内容\"\r\n          />\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  listPost,\r\n  getPost,\r\n  delPost,\r\n  addPost,\r\n  updatePost,\r\n  exportPost,\r\n} from \"@/api/system/post\";\r\n\r\nexport default {\r\n  name: \"Post\",\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      postList: [],\r\n      // 弹出层标题\r\n      title: \"\",\r\n      // 是否显示弹出层\r\n      open: false,\r\n      // 查询参数\r\n      queryParams: {\r\n        pageNum: 1,\r\n        pageSize: 10,\r\n        postCode: undefined,\r\n        postName: undefined,\r\n        status: undefined,\r\n      },\r\n      // 表单参数\r\n      form: {},\r\n      // 表单校验\r\n      rules: {\r\n        postName: [\r\n          { required: true, message: \"岗位名称不能为空\", trigger: \"blur\" },\r\n        ],\r\n        postCode: [\r\n          { required: true, message: \"岗位编码不能为空\", trigger: \"blur\" },\r\n        ],\r\n        postSort: [\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      listPost(this.queryParams).then((response) => {\r\n        this.postList = response.rows;\r\n        this.total = response.total;\r\n        this.loading = false;\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        postId: undefined,\r\n        postCode: undefined,\r\n        postName: undefined,\r\n        postSort: 0,\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.resetForm(\"queryForm\");\r\n      this.handleQuery();\r\n    },\r\n    // 多选框选中数据\r\n    handleSelectionChange(selection) {\r\n      this.ids = selection.map((item) => item.postId);\r\n      this.single = selection.length != 1;\r\n      this.multiple = !selection.length;\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    handleUpdate(row) {\r\n      this.reset();\r\n      const postId = row.postId || this.ids;\r\n      getPost(postId).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.postId != undefined) {\r\n            updatePost(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            addPost(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 postIds = row.postId || this.ids;\r\n      this.$modal\r\n        .confirm('是否确认删除岗位编号为\"' + postIds + '\"的数据项?')\r\n        .then(function () {\r\n          return delPost(postIds);\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 exportPost(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};\r\n</script>\r\n<style scoped>\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\r\n.contents {\r\n  padding: 0px 40px !important;\r\n}\r\n/* 下拉菜单 */\r\n.el-dropdown-link {\r\n  cursor: pointer;\r\n  color: #409eff;\r\n}\r\n.el-icon-arrow-down {\r\n  font-size: 12px;\r\n}\r\n/* 刷新图标 */\r\n/* .el-icon-refresh {\r\n  width: 76px;\r\n  height: 36px;\r\n  color: #fff;\r\n  background-color: #1d96ff !important;\r\n  border-radius: 4px;\r\n  border: none;\r\n  margin-left: 20px;\r\n  font-size: 14px;\r\n} */\r\n/* 下拉菜单字体/背景颜色 */\r\n.el-select-dropdown__item.hover,\r\n.el-select-dropdown__item:hover {\r\n  background-color: #004d86;\r\n  color: #fff;\r\n}\r\n.el-select-dropdown__item {\r\n  color: #fff;\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::v-deep .vue-treeselect__single-value {\r\n  color: #fff !important;\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/* 状态 */\r\n.el-radio {\r\n  color: rgb(204, 198, 198);\r\n}\r\n/* 计数器按钮 */\r\n::v-deep .el-input-number__increase {\r\n  background-color: transparent !important;\r\n  border: none;\r\n  color: #cccccc;\r\n  border-bottom: none !important;\r\n}\r\n::v-deep .el-input-number__decrease {\r\n  background-color: transparent !important;\r\n  border: none !important;\r\n  color: #cccccc;\r\n}\r\n/* 备注输入框 */\r\n.textareas ::v-deep .el-form-item__content {\r\n  width:100%;\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</style>"]}]}
 |