| 1 |
- {"remainingRequest":"/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/node_modules/thread-loader/dist/cjs.js!/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/node_modules/babel-loader/lib/index.js!/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/node_modules/cache-loader/dist/cjs.js??ref--0-0!/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/node_modules/vue-loader/lib/index.js??vue-loader-options!/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/src/view/userRun/userPower.vue?vue&type=script&lang=js&","dependencies":[{"path":"/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/src/view/userRun/userPower.vue","mtime":1618306924000},{"path":"/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/node_modules/cache-loader/dist/cjs.js","mtime":1665684022107},{"path":"/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/node_modules/thread-loader/dist/cjs.js","mtime":1665684003955},{"path":"/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/node_modules/babel-loader/lib/index.js","mtime":1665684010704},{"path":"/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/node_modules/cache-loader/dist/cjs.js","mtime":1665684022107},{"path":"/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/node_modules/vue-loader/lib/index.js","mtime":1665684006084}],"contextDependencies":[],"result":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nimport axios from '@/libs/api.request';\nexport default {\n name: 'voice',\n\n data() {\n return {\n showVideoModal: false,\n queryDataPage: 1,\n total: 0,\n residueNum: '',\n // 密码\n showResidueNum: false,\n userName: '',\n // 用户组名称\n formValidate: {},\n treeData: [],\n ruleShow: false,\n // 用户组\n residueId: '',\n // 存放剩余量和投放时间的id\n roleIds: [],\n // 存放选中的页面id\n halfCheckData: [],\n // 存放半选中状态的节点\n curRoleId: '',\n // 当前点击的角色id\n permissions: [],\n // 记录当前点击的角色已有的权限\n // 查询条件\n queryData: {\n title: '',\n name: '',\n phone: '',\n pagenum: 15\n },\n columns: [{\n title: '用户组名称',\n key: 'name'\n }, {\n title: '操作',\n minWidth: 200,\n key: 'action',\n align: 'center',\n render: (h, params) => {\n return h('div', [h('Button', {\n props: {\n size: 'small',\n type: 'primary'\n },\n style: {\n marginTop: '5px',\n marginBottom: '5px',\n marginRight: '5px',\n display: params.row.is_super === 1 ? 'none' : 'inline-block'\n },\n on: {\n click: () => {\n this.showVideoModal = true;\n this.curRoleId = params.row.id;\n this.permissions = [];\n this.treeData = [];\n this.permissions = params.row.permissions;\n axios.request({\n method: 'POST',\n url: '/admins/system/permissions/tree'\n }).then(res => {\n if (res.data.code === 'success') {\n this.treeData = res.data.data;\n this.handelTreeData(this.permissions, this.treeData);\n } else {\n this.$Message.error(res.data.message, 'middle');\n }\n });\n }\n },\n directives: [{\n name: 'opcode',\n value: 'role syncPermissions'\n }]\n }, '编辑'), h('Button', {\n props: {\n size: 'small',\n type: 'error'\n },\n style: {\n marginTop: '5px',\n marginBottom: '5px',\n marginRight: '5px',\n display: params.row.is_super === 1 ? 'none' : 'inline-block'\n },\n on: {\n click: () => {\n this.$Modal.confirm({\n title: '确定删除该用户?',\n content: '',\n loading: true,\n onOk: () => {\n axios.request({\n method: 'get',\n url: '/admins/system/roles/del/' + params.row.id\n }).then(res => {\n if (res.data.code === 'success') {\n this.$Modal.remove();\n this.$Message.success(res.data.message, 'middle');\n this.taskList();\n } else {\n this.$Message.error(res.data.message, 'middle');\n }\n });\n }\n });\n }\n },\n directives: [{\n name: 'opcode',\n value: 'role del'\n }]\n }, '删除')]);\n }\n }],\n tableData: []\n };\n },\n\n created() {\n this.taskList(); // this.getData()\n },\n\n methods: {\n // 分页\n levelchangepage(res) {\n this.queryDataPage = res;\n this.taskList();\n },\n\n // 获取列表信息\n taskList() {\n axios.request({\n method: 'POST',\n url: '/admins/system/roles'\n }).then(res => {\n if (res.data.code === 'success') {\n this.tableData = res.data.data;\n } else {\n this.$Message.error(res.data.message, 'middle');\n }\n });\n },\n\n // 显示用户组弹窗\n addUser() {\n this.ruleShow = true;\n },\n\n // 添加用户组\n saverule() {\n axios.request({\n url: '/admins/system/roles/create',\n data: {\n name: this.userName\n },\n method: 'POST'\n }).then(res => {\n if (res.data.code === 'success') {\n this.$Modal.remove();\n this.$Message.success('添加成功', 'middle');\n var that = this;\n setTimeout(function () {\n that.taskList();\n }, 2000);\n } else {\n this.$Message.error(res.data.message);\n }\n });\n },\n\n // 保存用户权限\n savePermission() {\n let that = this;\n let nodes = that.$refs.tree.getCheckedNodes();\n that.halfCheckData = [];\n that.getHalfCheckData(nodes);\n let allCheckData = Array.from(new Set(nodes.concat(this.halfCheckData)));\n that.handelData(allCheckData);\n axios.request({\n url: '/admins/system/roles/syncPermissions',\n method: 'POST',\n data: {\n roleid: that.curRoleId,\n permissionId: that.roleIds.join(',')\n }\n }).then(res => {\n if (res.data.code === 'success') {\n this.showVideoModal = false;\n that.$Modal.remove();\n that.$Message.success('设置权限成功', 'middle');\n that.taskList();\n } else {\n this.$Message.error(res.data.message);\n }\n });\n },\n\n // 处理选中的权限数据\n handelData(data) {\n this.roleIds = [];\n\n if (data === null || data.length === 0) {\n return;\n }\n\n for (let i = 0; i < data.length; i++) {\n this.roleIds.push(data[i].id);\n }\n },\n\n // 获取选中和半选中的节点\n getHalfCheckData(checkData) {\n if (!checkData) {\n return;\n }\n\n let halfData = [];\n this.halfTag = false;\n let checkfidData = checkData.map(item => {\n return item.pid;\n });\n checkfidData = Array.from(new Set(checkfidData));\n checkfidData.forEach(item => {\n if (item) {\n this.halfCheckNode = {};\n this.findParent(item, this.treeData);\n halfData.push(this.halfCheckNode);\n }\n });\n\n if (halfData && halfData.length > 0) {\n this.getHalfCheckData(halfData);\n }\n },\n\n // 寻找父级\n findParent(id, tree) {\n if (this.halfTag) {\n return;\n }\n\n for (let item of tree) {\n if (item.id === id) {\n this.halfCheckNode = item;\n this.halfCheckData.push(item);\n return;\n }\n\n if (item.children && item.children.length > 0) {\n this.findParent(id, item.children);\n }\n }\n },\n\n // 处理树形数据,用于回显已勾选的页面\n handelTreeData(data, tree) {\n if (tree.length === 0 || data.length === 0) {\n return;\n }\n\n for (let i = 0; i < data.length; i++) {\n for (let j = 0; j < tree.length; j++) {\n if (tree[j].children.length !== 0) {\n if (tree[j].name === 'home') {\n // this.$set(tree[j], 'checked', true);\n this.$set(tree[j], 'disabled', true);\n this.$set(tree[j], 'expand', true);\n }\n\n this.handelTreeData(data, tree[j].children);\n } else {\n if (tree[j].id === data[i].id) {\n this.$set(tree[j], 'checked', true);\n }\n\n if (tree[j].title === '统计') {\n this.$set(tree[j], 'checked', true);\n this.$set(tree[j], 'disabled', true);\n }\n }\n }\n }\n }\n\n }\n};",null]}
|