| 1 | {"remainingRequest":"D:\\Desktop\\supervision-ui\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\Desktop\\supervision-ui\\src\\views\\system\\role\\index.vue?vue&type=style&index=0&id=5fc99eaf&scoped=true&lang=css&","dependencies":[{"path":"D:\\Desktop\\supervision-ui\\src\\views\\system\\role\\index.vue","mtime":1647101026940},{"path":"D:\\Desktop\\supervision-ui\\node_modules\\css-loader\\dist\\cjs.js","mtime":1647101097753},{"path":"D:\\Desktop\\supervision-ui\\node_modules\\vue-loader\\lib\\loaders\\stylePostLoader.js","mtime":1647101101361},{"path":"D:\\Desktop\\supervision-ui\\node_modules\\postcss-loader\\src\\index.js","mtime":1647101099330},{"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:CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKDQovKiDlr7nor53moYbog4zmma/popzoibIgKi8NCjo6di1kZWVwIC5lbC1kaWFsb2cgew0KICBiYWNrZ3JvdW5kOiAjMDA0ZDg2ICFpbXBvcnRhbnQ7DQp9DQo6OnYtZGVlcCAuZWwtdGV4dGFyZWFfX2lubmVyIHsNCiAgd2lkdGg6IDcwMHB4Ow0KICBoZWlnaHQ6IDEwNHB4Ow0KICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDsNCn0NCjo6di1kZWVwIC5lbC1kaWFsb2dfX2hlYWRlciB7DQogIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNzE4YTlkOw0KfQ0KOjp2LWRlZXAgLmVsLWRpYWxvZ19fdGl0bGUgew0KICBjb2xvcjogI2ZmZjsNCiAgZm9udDogMThweDsNCn0NCjo6di1kZWVwIC5lbC1kaWFsb2dfX2hlYWRlcmJ0biAuZWwtZGlhbG9nX19jbG9zZSB7DQogIGNvbG9yOiAjZmZmOw0KfQ0KOjp2LWRlZXAgLmVsLWZvcm0taXRlbV9fbGFiZWwgew0KICBmb250OiAxNnB4Ow0KICBjb2xvcjogI2ZmZjsNCiAgd2lkdGg6IDEwMHB4ICFpbXBvcnRhbnQ7DQp9DQo6OnYtZGVlcCAuZWwtaW5wdXRfX2lubmVyIHsNCiAgLyogd2lkdGg6IDIwMHB4ICFpbXBvcnRhbnQ7DQogIGhlaWdodDogMzZweDsgKi8NCiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7DQogIGNvbG9yOiAjZmZmOw0KfQ0KLyog5Y2V5L2N5qGG6IOM5pmv6aKc6ImyICovDQo6OnYtZGVlcCAudnVlLXRyZWVzZWxlY3RfX2NvbnRyb2wgew0KICBiYWNrZ3JvdW5kOiAjMDA0ZDg2ICFpbXBvcnRhbnQ7DQp9DQovKiDln7rmnKzkv6Hmga/og4zmma8gKi8NCi5qaWJlbiB7DQogIHdpZHRoOiA2NjBweDsNCiAgaGVpZ2h0OiAzMnB4Ow0KICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vLi4vaW1hZ2VzL+Wwj+agh+mimOW6lS5wbmcpOw0KICBtYXJnaW4tYm90dG9tOiAyNXB4Ow0KICBjb2xvcjogI2ZmZjsNCiAgcGFkZGluZy1sZWZ0OiAxNnB4Ow0KICBsaW5lLWhlaWdodDogMzJweDsNCn0NCi8q6LCD5pW06KGo5Y2V6Ze06LedICovDQo6OnYtZGVlcCAuZWwtZm9ybS1pdGVtX19jb250ZW50IHsNCiAgd2lkdGg6IDIwMHB4Ow0KfQ0KLmNvbnRlbnRzIHsNCiAgcGFkZGluZzogMHB4IDQwcHggIWltcG9ydGFudDsNCn0NCi8qIOS4i+aLieiPnOWNlSAqLw0KLmVsLWRyb3Bkb3duLWxpbmsgew0KICBjdXJzb3I6IHBvaW50ZXI7DQogIGNvbG9yOiAjNDA5ZWZmOw0KfQ0KLmVsLWljb24tYXJyb3ctZG93biB7DQogIGZvbnQtc2l6ZTogMTJweDsNCn0NCi8qIOWIt+aWsOWbvuaghyAqLw0KLyogLmVsLWljb24tcmVmcmVzaCB7DQogIHdpZHRoOiA3NnB4Ow0KICBoZWlnaHQ6IDM2cHg7DQogIGNvbG9yOiAjZmZmOw0KICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWQ5NmZmICFpbXBvcnRhbnQ7DQogIGJvcmRlci1yYWRpdXM6IDRweDsNCiAgYm9yZGVyOiBub25lOw0KICBtYXJnaW4tbGVmdDogMjBweDsNCiAgZm9udC1zaXplOiAxNHB4Ow0KfSAqLw0KLyog5LiL5ouJ6I+c5Y2V5a2X5L2TL+iDjOaZr+minOiJsiAqLw0KLmVsLXNlbGVjdC1kcm9wZG93bl9faXRlbS5ob3ZlciwNCi5lbC1zZWxlY3QtZHJvcGRvd25fX2l0ZW06aG92ZXIgew0KICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0ZDg2Ow0KICBjb2xvcjogI2ZmZjsNCn0NCi5lbC1zZWxlY3QtZHJvcGRvd25fX2l0ZW0gew0KICBjb2xvcjogI2ZmZjsNCn0NCi8qIOaXtumXtOmAieaLqSAqLw0KOjp2LWRlZXAgLmVsLWlucHV0LS1zbWFsbCAuZWwtaW5wdXRfX2lubmVyIHsNCiAgd2lkdGg6IDIwMHB4Ow0KICBoZWlnaHQ6IDM2cHg7DQogIGxpbmUtaGVpZ2h0OiAzNnB4Ow0KfQ0KLmVsLWRhdGUtZWRpdG9yLmVsLWlucHV0IHsNCiAgd2lkdGg6IDIwMHB4Ow0KICBoZWlnaHQ6IDM2cHg7DQogIGxpbmUtaGVpZ2h0OiAzNnB4Ow0KfQ0KOjp2LWRlZXAgLmVsLWRhdGUtZWRpdG9yLmVsLWlucHV0IC5lbC1pbnB1dF9faW5uZXIgew0KICBoZWlnaHQ6IDM2cHg7DQogIGxpbmUtaGVpZ2h0OiAzNnB4Ow0KfQ0KLyog5Y2V5L2N5qGG6IOM5pmv6aKc6ImyICovDQo6OnYtZGVlcCAudnVlLXRyZWVzZWxlY3RfX2NvbnRyb2wgew0KICBiYWNrZ3JvdW5kOiAjMDA0ZDg2ICFpbXBvcnRhbnQ7DQogIGNvbG9yOiAjZmZmOw0KfQ0KLyog5Y2V5L2N5LiL5ouJ6I+c5Y2V6YCJ5Lit5a2X5L2T6aKc6ImyICovDQo6OnYtZGVlcCAudnVlLXRyZWVzZWxlY3RfX3NpbmdsZS12YWx1ZSB7DQogIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7DQp9DQovKiDliIbpobXmjInpkq4gKi8NCjo6di1kZWVwIC5lbC1wYWdpbmF0aW9uLmlzLWJhY2tncm91bmQgLmVsLXBhZ2VyIGxpIHsNCiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNGQ4NjsNCiAgY29sb3I6ICNmZmY7DQp9DQo6OnYtZGVlcCAuZWwtcGFnaW5hdGlvbi5pcy1iYWNrZ3JvdW5kIC5idG4tbmV4dCB7DQogIGJhY2tncm91bmQtY29sb3I6ICMwMDRkODY7DQogIGNvbG9yOiAjZmZmOw0KfQ0KOjp2LWRlZXAgLmVsLXBhZ2luYXRpb24uaXMtYmFja2dyb3VuZCAuYnRuLXByZXYsDQouZWwtcGFnaW5hdGlvbi5pcy1iYWNrZ3JvdW5kIC5idG4tbmV4dCwNCi5lbC1wYWdpbmF0aW9uLmlzLWJhY2tncm91bmQgLmVsLXBhZ2VyIGxpIHsNCiAgYmFja2dyb3VuZDogIzAwNGQ4NiAhaW1wb3J0YW50Ow0KICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50Ow0KfQ0KLyog5aSH5rOo6L6T5YWl5qGGICovDQoudGV4dGFyZWFzIDo6di1kZWVwIC5lbC1mb3JtLWl0ZW1fX2NvbnRlbnQgew0KICB3aWR0aDogMTAwJTsNCn0NCi8qIOiuoeaVsOWZqOaMiemSriAqLw0KOjp2LWRlZXAgLmVsLWlucHV0LW51bWJlcl9faW5jcmVhc2Ugew0KICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50Ow0KICBib3JkZXI6IG5vbmU7DQogIGNvbG9yOiAjY2NjY2NjOw0KICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7DQp9DQo6OnYtZGVlcCAuZWwtaW5wdXQtbnVtYmVyX19kZWNyZWFzZSB7DQogIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7DQogIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50Ow0KICBjb2xvcjogI2NjY2NjYzsNCn0NCi8qIOiPnOWNleadg+mZkOS4i+aLiSAqLw0KOjp2LWRlZXAgLnRyZWUtYm9yZGVyIHsNCiAgYmFja2dyb3VuZDogIzAwNGQ4NiAhaW1wb3J0YW50Ow0KfQ0KOjp2LWRlZXAgLmVsLXRyZWUgew0KICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50Ow0KfQ0KOjp2LWRlZXAgLmVsLXRyZWUtbm9kZV9fY29udGVudDpob3ZlciB7DQogIGJhY2tncm91bmQtY29sb3I6ICMwMjQyNzQgIWltcG9ydGFudDsNCn0NCi5lbC1jaGVja2JveCB7DQogIGNvbG9yOiByZ2IoMjA0LCAxOTgsIDE5OCk7DQp9DQovKiDnirbmgIEgKi8NCi5lbC1yYWRpbyB7DQogIGNvbG9yOiByZ2IoMjA0LCAxOTgsIDE5OCk7DQp9DQovKiDml6XmnJ/og4zmma/popzoibIgKi8NCjo6di1kZWVwIC5lbC1kYXRlLWVkaXRvciAuZWwtcmFuZ2UtaW5wdXQgew0KICBiYWNrZ3JvdW5kOiAjMDAzNjVmOw0KfQ0KOjp2LWRlZXAgLmVsLXRleHRhcmVhX19pbm5lciB7DQogIHdpZHRoOiA2MDBweDsNCiAgaGVpZ2h0OiAxMDRweDsNCiAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7DQp9DQo6OnYtZGVlcCAuZWwtaW5wdXQuaXMtZGlzYWJsZWQgLmVsLWlucHV0X19pbm5lciB7DQogICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNGQ4NiAhaW1wb3J0YW50Ow0KICAgIGJvcmRlci1jb2xvcjogI2RmZTRlZDsNCiAgICBjb2xvcjogI0MwQzRDQzsNCn0NCg=="},{"version":3,"sources":["index.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8vBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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/role","sourcesContent":["<template>\r\n  <div class=\"app-container\">\r\n    <el-form\r\n      :model=\"queryParams\"\r\n      ref=\"queryForm\"\r\n      v-show=\"showSearch\"\r\n      :inline=\"true\"\r\n    >\r\n      <el-form-item label=\"角色名称\" prop=\"roleName\">\r\n        <el-input\r\n          v-model=\"queryParams.roleName\"\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=\"roleKey\">\r\n        <el-input\r\n          v-model=\"queryParams.roleKey\"\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 icon=\"el-icon-search\" size=\"btn\" @click=\"handleQuery\"\r\n          >搜索</el-button\r\n        >\r\n        <el-button icon=\"el-icon-refresh\" size=\"btr\" @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:role: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:role: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:role: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:role: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=\"roleList\"\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=\"角色编号\" prop=\"roleId\" width=\"120\" />\r\n      <el-table-column\r\n        label=\"角色名称\"\r\n        prop=\"roleName\"\r\n        :show-overflow-tooltip=\"true\"\r\n        width=\"150\"\r\n      />\r\n      <el-table-column\r\n        label=\"权限字符\"\r\n        prop=\"roleKey\"\r\n        :show-overflow-tooltip=\"true\"\r\n        width=\"150\"\r\n      />\r\n      <el-table-column label=\"显示顺序\" prop=\"roleSort\" width=\"100\" />\r\n      <el-table-column label=\"状态\" align=\"center\" width=\"100\">\r\n        <template slot-scope=\"scope\">\r\n          <el-switch\r\n            v-model=\"scope.row.status\"\r\n            active-value=\"0\"\r\n            inactive-value=\"1\"\r\n            @change=\"handleStatusChange(scope.row)\"\r\n          ></el-switch>\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\" v-if=\"scope.row.roleId !== 1\">\r\n          <el-button\r\n            size=\"btu\"\r\n            type=\"text\"\r\n            @click=\"handleUpdate(scope.row)\"\r\n            v-hasPermi=\"['system:role: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:role:remove']\"\r\n            ><span class=\"delete\">删除</span></el-button\r\n          >\r\n          <el-dropdown\r\n            size=\"mini\"\r\n            @command=\"(command) => handleCommand(command, scope.row)\"\r\n            v-hasPermi=\"['system:role:edit']\"\r\n          >\r\n            <span class=\"more\">更多 </span>\r\n            <el-dropdown-menu slot=\"dropdown\">\r\n              <el-dropdown-item\r\n                command=\"handleDataScope\"\r\n                icon=\"el-icon-circle-check\"\r\n                v-hasPermi=\"['system:role:edit']\"\r\n                >数据权限</el-dropdown-item\r\n              >\r\n              <el-dropdown-item\r\n                command=\"handleAuthUser\"\r\n                icon=\"el-icon-user\"\r\n                v-hasPermi=\"['system:role:edit']\"\r\n                >分配用户</el-dropdown-item\r\n              >\r\n            </el-dropdown-menu>\r\n          </el-dropdown>\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      style=\"\"\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=\"100px\"\r\n        :inline=\"true\"\r\n      >\r\n        <el-form-item label=\"角色名称\" prop=\"roleName\">\r\n          <el-input v-model=\"form.roleName\" placeholder=\"请输入角色名称\" />\r\n        </el-form-item>\r\n        <el-form-item prop=\"roleKey\">\r\n          <span slot=\"label\">\r\n            <el-tooltip\r\n              content=\"控制器中定义的权限字符,如:@PreAuthorize(`@ss.hasRole('admin')`)\"\r\n              placement=\"top\"\r\n            >\r\n              <i class=\"el-icon-question\"></i>\r\n            </el-tooltip>\r\n            权限字符\r\n          </span>\r\n          <el-input v-model=\"form.roleKey\" placeholder=\"请输入权限字符\" />\r\n        </el-form-item>\r\n        <el-form-item label=\"角色顺序\" prop=\"roleSort\">\r\n          <el-input-number\r\n            v-model=\"form.roleSort\"\r\n            controls-position=\"right\"\r\n            :min=\"0\"\r\n          />\r\n        </el-form-item>\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 }}</el-radio\r\n            >\r\n          </el-radio-group>\r\n        </el-form-item>\r\n        <el-form-item label=\"菜单权限\" >\r\n          <el-checkbox\r\n            v-model=\"menuExpand\"\r\n            @change=\"handleCheckedTreeExpand($event, 'menu')\"\r\n            >展开/折叠</el-checkbox\r\n          >\r\n          <el-checkbox\r\n            v-model=\"menuNodeAll\"\r\n            @change=\"handleCheckedTreeNodeAll($event, 'menu')\"\r\n            >全选/全不选</el-checkbox\r\n          >\r\n          <el-checkbox\r\n            v-model=\"form.menuCheckStrictly\"\r\n            @change=\"handleCheckedTreeConnect($event, 'menu')\"\r\n            >父子联动</el-checkbox\r\n          >\r\n          <el-tree\r\n            class=\"tree-border\"\r\n            :data=\"menuOptions\"\r\n            show-checkbox\r\n            ref=\"menu\"\r\n            node-key=\"id\"\r\n            :check-strictly=\"!form.menuCheckStrictly\"\r\n            empty-text=\"加载中,请稍候\"\r\n            :props=\"defaultProps\"\r\n          ></el-tree>\r\n        </el-form-item>\r\n        <div class=\"jiben\">备注</div>\r\n\r\n        <el-form-item label=\"\" 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\r\n    <!-- 分配角色数据权限对话框 -->\r\n    <el-dialog\r\n      :title=\"title\"\r\n      :visible.sync=\"openDataScope\"\r\n      width=\"700px\"\r\n      append-to-body\r\n    >\r\n      <el-form :model=\"form\" label-width=\"80px\">\r\n        <el-form-item label=\"角色名称\">\r\n          <el-input v-model=\"form.roleName\" :disabled=\"true\" />\r\n        </el-form-item>\r\n        <el-form-item label=\"权限字符\">\r\n          <el-input v-model=\"form.roleKey\" :disabled=\"true\" />\r\n        </el-form-item>\r\n        <el-form-item label=\"权限范围\">\r\n          <el-select v-model=\"form.dataScope\" @change=\"dataScopeSelectChange\">\r\n            <el-option\r\n              v-for=\"item in dataScopeOptions\"\r\n              :key=\"item.value\"\r\n              :label=\"item.label\"\r\n              :value=\"item.value\"\r\n            ></el-option>\r\n          </el-select>\r\n        </el-form-item>\r\n        <el-form-item label=\"数据权限\" v-show=\"form.dataScope == 2\">\r\n          <el-checkbox\r\n            v-model=\"deptExpand\"\r\n            @change=\"handleCheckedTreeExpand($event, 'dept')\"\r\n            >展开/折叠</el-checkbox\r\n          >\r\n          <el-checkbox\r\n            v-model=\"deptNodeAll\"\r\n            @change=\"handleCheckedTreeNodeAll($event, 'dept')\"\r\n            >全选/全不选</el-checkbox\r\n          >\r\n          <el-checkbox\r\n            v-model=\"form.deptCheckStrictly\"\r\n            @change=\"handleCheckedTreeConnect($event, 'dept')\"\r\n            >父子联动</el-checkbox\r\n          >\r\n          <el-tree\r\n            class=\"tree-border\"\r\n            :data=\"deptOptions\"\r\n            show-checkbox\r\n            default-expand-all\r\n            ref=\"dept\"\r\n            node-key=\"id\"\r\n            :check-strictly=\"!form.deptCheckStrictly\"\r\n            empty-text=\"加载中,请稍候\"\r\n            :props=\"defaultProps\"\r\n          ></el-tree>\r\n        </el-form-item>\r\n      </el-form>\r\n      <div slot=\"footer\" class=\"dialog-footer\">\r\n        <el-button type=\"primary\" @click=\"submitDataScope\">确 定</el-button>\r\n        <el-button @click=\"cancelDataScope\">取 消</el-button>\r\n      </div>\r\n    </el-dialog>\r\n  </div>\r\n</template>\r\n\r\n<script>\r\nimport {\r\n  listRole,\r\n  getRole,\r\n  delRole,\r\n  addRole,\r\n  updateRole,\r\n  exportRole,\r\n  dataScope,\r\n  changeRoleStatus,\r\n} from \"@/api/system/role\";\r\nimport {\r\n  treeselect as menuTreeselect,\r\n  roleMenuTreeselect,\r\n} from \"@/api/system/menu\";\r\nimport {\r\n  treeselect as deptTreeselect,\r\n  roleDeptTreeselect,\r\n} from \"@/api/system/dept\";\r\n\r\nexport default {\r\n  name: \"Role\",\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      roleList: [],\r\n      // 弹出层标题\r\n      title: \"\",\r\n      // 是否显示弹出层\r\n      open: false,\r\n      // 是否显示弹出层(数据权限)\r\n      openDataScope: false,\r\n      menuExpand: false,\r\n      menuNodeAll: false,\r\n      deptExpand: true,\r\n      deptNodeAll: false,\r\n      // 日期范围\r\n      dateRange: [],\r\n      // 数据范围选项\r\n      dataScopeOptions: [\r\n        {\r\n          value: \"1\",\r\n          label: \"全部数据权限\",\r\n        },\r\n        {\r\n          value: \"2\",\r\n          label: \"自定数据权限\",\r\n        },\r\n        {\r\n          value: \"3\",\r\n          label: \"本部门数据权限\",\r\n        },\r\n        {\r\n          value: \"4\",\r\n          label: \"本部门及以下数据权限\",\r\n        },\r\n        {\r\n          value: \"5\",\r\n          label: \"仅本人数据权限\",\r\n        },\r\n      ],\r\n      // 菜单列表\r\n      menuOptions: [],\r\n      // 部门列表\r\n      deptOptions: [],\r\n      // 查询参数\r\n      queryParams: {\r\n        pageNum: 1,\r\n        pageSize: 10,\r\n        roleName: undefined,\r\n        roleKey: undefined,\r\n        status: undefined,\r\n      },\r\n      // 表单参数\r\n      form: {},\r\n      defaultProps: {\r\n        children: \"children\",\r\n        label: \"label\",\r\n      },\r\n      // 表单校验\r\n      rules: {\r\n        roleName: [\r\n          { required: true, message: \"角色名称不能为空\", trigger: \"blur\" },\r\n        ],\r\n        roleKey: [\r\n          { required: true, message: \"权限字符不能为空\", trigger: \"blur\" },\r\n        ],\r\n        roleSort: [\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      listRole(this.addDateRange(this.queryParams, this.dateRange)).then(\r\n        (response) => {\r\n          this.roleList = response.rows;\r\n          this.total = response.total;\r\n          this.loading = false;\r\n        }\r\n      );\r\n    },\r\n    /** 查询菜单树结构 */\r\n    getMenuTreeselect() {\r\n      menuTreeselect().then((response) => {\r\n        this.menuOptions = response.data;\r\n      });\r\n    },\r\n    /** 查询部门树结构 */\r\n    getDeptTreeselect() {\r\n      deptTreeselect().then((response) => {\r\n        this.deptOptions = response.data;\r\n      });\r\n    },\r\n    // 所有菜单节点数据\r\n    getMenuAllCheckedKeys() {\r\n      // 目前被选中的菜单节点\r\n      let checkedKeys = this.$refs.menu.getCheckedKeys();\r\n      // 半选中的菜单节点\r\n      let halfCheckedKeys = this.$refs.menu.getHalfCheckedKeys();\r\n      checkedKeys.unshift.apply(checkedKeys, halfCheckedKeys);\r\n      return checkedKeys;\r\n    },\r\n    // 所有部门节点数据\r\n    getDeptAllCheckedKeys() {\r\n      // 目前被选中的部门节点\r\n      let checkedKeys = this.$refs.dept.getCheckedKeys();\r\n      // 半选中的部门节点\r\n      let halfCheckedKeys = this.$refs.dept.getHalfCheckedKeys();\r\n      checkedKeys.unshift.apply(checkedKeys, halfCheckedKeys);\r\n      return checkedKeys;\r\n    },\r\n    /** 根据角色ID查询菜单树结构 */\r\n    getRoleMenuTreeselect(roleId) {\r\n      return roleMenuTreeselect(roleId).then((response) => {\r\n        this.menuOptions = response.menus;\r\n        return response;\r\n      });\r\n    },\r\n    /** 根据角色ID查询部门树结构 */\r\n    getRoleDeptTreeselect(roleId) {\r\n      return roleDeptTreeselect(roleId).then((response) => {\r\n        this.deptOptions = response.depts;\r\n        return response;\r\n      });\r\n    },\r\n    // 角色状态修改\r\n    handleStatusChange(row) {\r\n      let text = row.status === \"0\" ? \"启用\" : \"停用\";\r\n      this.$modal\r\n        .confirm('确认要\"' + text + '\"\"' + row.roleName + '\"角色吗?')\r\n        .then(function () {\r\n          return changeRoleStatus(row.roleId, row.status);\r\n        })\r\n        .then(() => {\r\n          this.$modal.msgSuccess(text + \"成功\");\r\n        })\r\n        .catch(function () {\r\n          row.status = row.status === \"0\" ? \"1\" : \"0\";\r\n        });\r\n    },\r\n    // 取消按钮\r\n    cancel() {\r\n      this.open = false;\r\n      this.reset();\r\n    },\r\n    // 取消按钮(数据权限)\r\n    cancelDataScope() {\r\n      this.openDataScope = false;\r\n      this.reset();\r\n    },\r\n    // 表单重置\r\n    reset() {\r\n      if (this.$refs.menu != undefined) {\r\n        this.$refs.menu.setCheckedKeys([]);\r\n      }\r\n      (this.menuExpand = false),\r\n        (this.menuNodeAll = false),\r\n        (this.deptExpand = true),\r\n        (this.deptNodeAll = false),\r\n        (this.form = {\r\n          roleId: undefined,\r\n          roleName: undefined,\r\n          roleKey: undefined,\r\n          roleSort: 0,\r\n          status: \"0\",\r\n          menuIds: [],\r\n          deptIds: [],\r\n          menuCheckStrictly: true,\r\n          deptCheckStrictly: true,\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    handleSelectionChange(selection) {\r\n      this.ids = selection.map((item) => item.roleId);\r\n      this.single = selection.length != 1;\r\n      this.multiple = !selection.length;\r\n    },\r\n    // 更多操作触发\r\n    handleCommand(command, row) {\r\n      switch (command) {\r\n        case \"handleDataScope\":\r\n          this.handleDataScope(row);\r\n          break;\r\n        case \"handleAuthUser\":\r\n          this.handleAuthUser(row);\r\n          break;\r\n        default:\r\n          break;\r\n      }\r\n    },\r\n    // 树权限(展开/折叠)\r\n    handleCheckedTreeExpand(value, type) {\r\n      if (type == \"menu\") {\r\n        let treeList = this.menuOptions;\r\n        for (let i = 0; i < treeList.length; i++) {\r\n          this.$refs.menu.store.nodesMap[treeList[i].id].expanded = value;\r\n        }\r\n      } else if (type == \"dept\") {\r\n        let treeList = this.deptOptions;\r\n        for (let i = 0; i < treeList.length; i++) {\r\n          this.$refs.dept.store.nodesMap[treeList[i].id].expanded = value;\r\n        }\r\n      }\r\n    },\r\n    // 树权限(全选/全不选)\r\n    handleCheckedTreeNodeAll(value, type) {\r\n      if (type == \"menu\") {\r\n        this.$refs.menu.setCheckedNodes(value ? this.menuOptions : []);\r\n      } else if (type == \"dept\") {\r\n        this.$refs.dept.setCheckedNodes(value ? this.deptOptions : []);\r\n      }\r\n    },\r\n    // 树权限(父子联动)\r\n    handleCheckedTreeConnect(value, type) {\r\n      if (type == \"menu\") {\r\n        this.form.menuCheckStrictly = value ? true : false;\r\n      } else if (type == \"dept\") {\r\n        this.form.deptCheckStrictly = value ? true : false;\r\n      }\r\n    },\r\n    /** 新增按钮操作 */\r\n    handleAdd() {\r\n      this.reset();\r\n      this.getMenuTreeselect();\r\n      this.open = true;\r\n      this.title = \"添加角色\";\r\n    },\r\n    /** 修改按钮操作 */\r\n    handleUpdate(row) {\r\n      this.reset();\r\n      const roleId = row.roleId || this.ids;\r\n      const roleMenu = this.getRoleMenuTreeselect(roleId);\r\n      getRole(roleId).then((response) => {\r\n        this.form = response.data;\r\n        this.open = true;\r\n        this.$nextTick(() => {\r\n          roleMenu.then((res) => {\r\n            let checkedKeys = res.checkedKeys;\r\n            checkedKeys.forEach((v) => {\r\n              this.$nextTick(() => {\r\n                this.$refs.menu.setChecked(v, true, false);\r\n              });\r\n            });\r\n          });\r\n        });\r\n        this.title = \"修改角色\";\r\n      });\r\n    },\r\n    /** 选择角色权限范围触发 */\r\n    dataScopeSelectChange(value) {\r\n      if (value !== \"2\") {\r\n        this.$refs.dept.setCheckedKeys([]);\r\n      }\r\n    },\r\n    /** 分配数据权限操作 */\r\n    handleDataScope(row) {\r\n      this.reset();\r\n      const roleDeptTreeselect = this.getRoleDeptTreeselect(row.roleId);\r\n      getRole(row.roleId).then((response) => {\r\n        this.form = response.data;\r\n        this.openDataScope = true;\r\n        this.$nextTick(() => {\r\n          roleDeptTreeselect.then((res) => {\r\n            this.$refs.dept.setCheckedKeys(res.checkedKeys);\r\n          });\r\n        });\r\n        this.title = \"分配数据权限\";\r\n      });\r\n    },\r\n    /** 分配用户操作 */\r\n    handleAuthUser: function (row) {\r\n      const roleId = row.roleId;\r\n      this.$router.push(\"/system/role-auth/user/\" + roleId);\r\n    },\r\n    /** 提交按钮 */\r\n    submitForm: function () {\r\n      this.$refs[\"form\"].validate((valid) => {\r\n        if (valid) {\r\n          if (this.form.roleId != undefined) {\r\n            this.form.menuIds = this.getMenuAllCheckedKeys();\r\n            updateRole(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            this.form.menuIds = this.getMenuAllCheckedKeys();\r\n            addRole(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    submitDataScope: function () {\r\n      if (this.form.roleId != undefined) {\r\n        this.form.deptIds = this.getDeptAllCheckedKeys();\r\n        dataScope(this.form).then((response) => {\r\n          this.$modal.msgSuccess(\"修改成功\");\r\n          this.openDataScope = false;\r\n          this.getList();\r\n        });\r\n      }\r\n    },\r\n    /** 删除按钮操作 */\r\n    handleDelete(row) {\r\n      const roleIds = row.roleId || this.ids;\r\n      this.$modal\r\n        .confirm('是否确认删除角色编号为\"' + roleIds + '\"的数据项?')\r\n        .then(function () {\r\n          return delRole(roleIds);\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 exportRole(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: 700px;\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.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.textareas ::v-deep .el-form-item__content {\r\n  width: 100%;\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::v-deep .tree-border {\r\n  background: #004d86 !important;\r\n}\r\n::v-deep .el-tree {\r\n  color: #fff !important;\r\n}\r\n::v-deep .el-tree-node__content:hover {\r\n  background-color: #024274 !important;\r\n}\r\n.el-checkbox {\r\n  color: rgb(204, 198, 198);\r\n}\r\n/* 状态 */\r\n.el-radio {\r\n  color: rgb(204, 198, 198);\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: 600px;\r\n  height: 104px;\r\n  margin: auto !important;\r\n}\r\n::v-deep .el-input.is-disabled .el-input__inner {\r\n    background-color: #004d86 !important;\r\n    border-color: #dfe4ed;\r\n    color: #C0C4CC;\r\n}\r\n</style>"]}]}
 |