소스 검색

用户管理模块增删改查接口对接完成

develop
余菲 2 년 전
부모
커밋
f13c7e862f
4개의 변경된 파일55개의 추가작업 그리고 34개의 파일을 삭제
  1. +2
    -2
      src/api/system/user/index.js
  2. +1
    -1
      src/components/Search/index.vue
  3. +40
    -25
      src/views/system/user/index.vue
  4. +12
    -6
      src/views/system/user/info.js

+ 2
- 2
src/api/system/user/index.js 파일 보기

@@ -39,9 +39,9 @@ export function editUser(data) {
* 删除用户
* params
*/
export function deleteUser(id) {
export function deleteUser(idList) {
return request({
url: `/user/delete${[id]}`,
url: `/user/delete/${idList}`,
method: 'DELETE'
})
}

+ 1
- 1
src/components/Search/index.vue 파일 보기

@@ -50,7 +50,7 @@ export default {
/* 初始化搜索表单信息 */
function initForm() {
data.info.forEach((item) => {
form.value[item.key] = ''
form.value[item.key] = null
})
}


+ 40
- 25
src/views/system/user/index.vue 파일 보기

@@ -3,6 +3,7 @@
<n-card>
<headSearch :info="data.info" @search="handleSearch" />
<data-table
ref="tableRef"
:columns="data.columns"
:row-key="(row) => row.id"
:request="loadDataTable"
@@ -17,9 +18,9 @@
@positive-click="deleteUsers('plural')"
>
<template #trigger>
<n-button type="primary" @click="deleteUsers"> 删除 </n-button>
<n-button type="primary"> 删除 </n-button>
</template>
确认要批量删除吗?
确认要删除选中数据吗?
</n-popconfirm>
</template>
</data-table>
@@ -30,7 +31,7 @@
v-if="data.modalShow"
v-model:visible="data.modalShow"
:row="rowData"
@done="loadDataTable"
@done="handleSearch"
/>
</template>

@@ -156,7 +157,7 @@ export default {
props: {
negativeText: '取消',
positiveText: '确认',
onPositiveClick: deleteSingle.bind(row)
onPositiveClick: deleteSingle.bind(null, row.id)
}
}
],
@@ -175,10 +176,8 @@ export default {
data.modalShow = true
}

const params = ref({
page: 1,
limit: 10
})
const params = ref({})

const tableRef = ref()

function handleSearch(data) {
@@ -195,30 +194,43 @@ export default {
}
return await getUserList(_params)
}

// 新增用户
function handleUser() {
data.rowData = {}
data.modalShow = true
}

function deleteUsers(type) {
console.log(type)
// deleteUser({ data: [] }).then((res) => {
// if (res.code === 0) {
// $message.success(res.data.msg)
// this.reload()
// } else {
// $message.error(res.data.msg)
// }
// })
// 选择表格数据
const selectedIds = ref([])
function handleCheck(rowKeys) {
selectedIds.value = rowKeys
}
function deleteSingle(type, row) {
console.log(type, row, '++000+++')
// 批量删除用户
function deleteUsers() {
if (selectedIds.value.length) {
deleteData(selectedIds.value)
} else {
$message.warning('请至少选中一条数据')
}
}
// 单个删除数据
function deleteSingle(id) {
deleteData([id])
}

const checkedRows = ref([])
function handleCheck(rowKeys) {
checkedRows.value = rowKeys
console.log(rowKeys)
// 删除用户接口
function deleteData(data) {
deleteUser(data).then((res) => {
if (res.code === 0) {
handleSearch()
$message.success(res.data.msg)
} else {
$message.error(res.data.msg)
}
}).catch(e => {
console.log(e)
})
}

return {
@@ -226,9 +238,12 @@ export default {
loadDataTable,
handleUser,
...toRefs(data),
tableRef,
handleSearch,
deleteUsers,
handleCheck
handleCheck,
selectedIds,
deleteData
}
},
methods: {

+ 12
- 6
src/views/system/user/info.js 파일 보기

@@ -1,20 +1,25 @@
import { getRoleAll } from '@/api/system/role/index'
import { dataToSelect } from '@/utils/handleData.js'
const res = await getRoleAll()
const rolesOptions = dataToSelect(res.data, { label: 'name', value: 'id' })
import { ref } from 'vue'
const rolesOptions = ref([])
async function getRolesOption() {
const res = await getRoleAll()
rolesOptions.value = dataToSelect(res.data, { label: 'name', value: 'id' })
}
getRolesOption()
const data = [
{
label: '用户姓名',
key: 'realname',
label: '用户账号',
key: 'username',
props: {
placeholder: '请输入角色名称'
placeholder: '请输入用户账号'
}
},
{
label: '用户姓名',
key: 'realname',
props: {
placeholder: '请输入角色名称'
placeholder: '请输入用户姓名'
}
},
{
@@ -22,6 +27,7 @@ const data = [
type: 'select',
key: 'roleId',
props: {
placeholder: '请选择用户角色',
options: rolesOptions
}
}

Loading…
취소
저장