From 60d01465187cbf49644e2afd470948f9deceb7b8 Mon Sep 17 00:00:00 2001 From: fit2cloud-chenyw Date: Wed, 3 Mar 2021 17:38:41 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E7=94=A8=E6=88=B7=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/sys/SysUserController.java | 8 ++ .../sys/request/SysUserStateRequest.java | 13 +++ .../dataease/service/sys/SysUserService.java | 9 ++ frontend/src/api/system/user.js | 52 ++++++++- frontend/src/api/table.js | 32 ++++-- .../common/components/MsAsideContainer.vue | 53 +++++----- .../common/components/MsContainer.vue | 8 +- .../common/components/MsDeleteConfirm.vue | 100 +++++++++--------- .../common/components/MsDialogFooter.vue | 66 ++++++------ .../common/components/MsMainContainer.vue | 8 +- .../components/MsTableOperatorButton.vue | 9 +- .../common/components/MsTableSearchBar.vue | 5 +- frontend/src/metersphere/common/css/index.css | 4 +- frontend/src/metersphere/common/js/message.js | 30 +++--- frontend/src/router/index.js | 76 ++++--------- frontend/src/styles/index.scss | 2 +- .../views/dataset/common/DatasetTableData.vue | 61 +++++------ frontend/src/views/dataset/group/Group.vue | 6 +- .../src/views/system/datasource/index.vue | 6 +- frontend/src/views/system/dept/index.vue | 2 +- frontend/src/views/system/menu/index.vue | 9 +- frontend/src/views/system/role/index.vue | 2 +- .../system/systemParamSettings/index.vue | 6 +- frontend/src/views/system/user/index.vue | 47 ++++---- 24 files changed, 335 insertions(+), 279 deletions(-) create mode 100644 backend/src/main/java/io/dataease/controller/sys/request/SysUserStateRequest.java diff --git a/backend/src/main/java/io/dataease/controller/sys/SysUserController.java b/backend/src/main/java/io/dataease/controller/sys/SysUserController.java index 7a71c00253..a1c8c8d6d0 100644 --- a/backend/src/main/java/io/dataease/controller/sys/SysUserController.java +++ b/backend/src/main/java/io/dataease/controller/sys/SysUserController.java @@ -6,6 +6,7 @@ import com.github.pagehelper.PageHelper; import io.dataease.commons.utils.PageUtils; import io.dataease.commons.utils.Pager; import io.dataease.controller.sys.request.SysUserCreateRequest; +import io.dataease.controller.sys.request.SysUserStateRequest; import io.dataease.controller.sys.request.UserGridRequest; import io.dataease.controller.sys.response.SysUserGridResponse; import io.dataease.service.sys.SysUserService; @@ -47,4 +48,11 @@ public class SysUserController { public void delete(@PathVariable("userId") Long userId){ sysUserService.delete(userId); } + + + @ApiOperation("更新用户状态") + @PostMapping("/updateStatus") + public void updateStatus(@RequestBody SysUserStateRequest request){ + sysUserService.updateStatus(request); + } } diff --git a/backend/src/main/java/io/dataease/controller/sys/request/SysUserStateRequest.java b/backend/src/main/java/io/dataease/controller/sys/request/SysUserStateRequest.java new file mode 100644 index 0000000000..4a2fd9ef8c --- /dev/null +++ b/backend/src/main/java/io/dataease/controller/sys/request/SysUserStateRequest.java @@ -0,0 +1,13 @@ +package io.dataease.controller.sys.request; + +import lombok.Data; + +import java.io.Serializable; + +@Data +public class SysUserStateRequest implements Serializable { + + private Long userId; + + private Long enabled; +} diff --git a/backend/src/main/java/io/dataease/service/sys/SysUserService.java b/backend/src/main/java/io/dataease/service/sys/SysUserService.java index 833d890855..f6cbaca31a 100644 --- a/backend/src/main/java/io/dataease/service/sys/SysUserService.java +++ b/backend/src/main/java/io/dataease/service/sys/SysUserService.java @@ -10,6 +10,7 @@ import io.dataease.base.mapper.ext.ExtSysUserMapper; import io.dataease.commons.utils.BeanUtils; import io.dataease.commons.utils.CodingUtil; import io.dataease.controller.sys.request.SysUserCreateRequest; +import io.dataease.controller.sys.request.SysUserStateRequest; import io.dataease.controller.sys.request.UserGridRequest; import io.dataease.controller.sys.response.SysUserGridResponse; import io.dataease.controller.sys.response.SysUserRole; @@ -74,6 +75,14 @@ public class SysUserService { return sysUserMapper.updateByPrimaryKey(user); } + + public int updateStatus(SysUserStateRequest request){ + SysUser sysUser = new SysUser(); + sysUser.setUserId(request.getUserId()); + sysUser.setEnabled(request.getEnabled()); + return sysUserMapper.updateByPrimaryKeySelective(sysUser); + } + /** * 删除用户角色关联 * @param userId diff --git a/frontend/src/api/system/user.js b/frontend/src/api/system/user.js index 4f07414f86..181a809ea9 100644 --- a/frontend/src/api/system/user.js +++ b/frontend/src/api/system/user.js @@ -1,9 +1,57 @@ import request from '@/utils/request' - +const pathMap = { + queryPath: '/api/user/userGrid/', + deletePath: '/api/user/delete/', + createPath: '/api/user/create', + updatePath: '/api/user/update', + editPasswordPath: '/api/user/password', + editStatusPath: '/api/user/updateStatus' +} export function userLists(page, size, data) { return request({ - url: 'api/user/userGrid/' + page + '/' + size, + url: pathMap.queryPath + page + '/' + size, method: 'post', data }) } + +export const addUser = (data) => { + return request({ + url: pathMap.createPath, + method: 'post', + data + }) +} + +export const editUser = (data) => { + return request({ + url: pathMap.updatePath, + method: 'post', + data + }) +} + +export const delUser = (userId) => { + return request({ + url: pathMap.deletePath + userId, + method: 'post' + }) +} + +export const editPassword = (data) => { + return request({ + url: pathMap.editPasswordPath, + method: 'post', + data + }) +} + +export const editStatus = (data) => { + return request({ + url: pathMap.editStatusPath, + method: 'post', + data + }) +} + +export default { editPassword, delUser, editUser, addUser, userLists, editStatus } diff --git a/frontend/src/api/table.js b/frontend/src/api/table.js index 2752f52e16..7f7d7c9e43 100644 --- a/frontend/src/api/table.js +++ b/frontend/src/api/table.js @@ -1,9 +1,29 @@ -import request from '@/utils/request' - +import Mock from 'mockjs' +const data = Mock.mock({ + 'items|30': [{ + id: '@id', + title: '@sentence(10, 20)', + 'status|1': ['published', 'draft', 'deleted'], + author: 'name', + display_time: '@datetime', + pageviews: '@integer(300, 5000)' + }] +}) export function getList(params) { - return request({ - url: '/vue-admin-template/table/list', - method: 'get', - params +// return request({ +// url: '/vue-admin-template/table/list', +// method: 'get', +// params +// }) + return new Promise((resolve, reject) => { + const items = data.items + const result = { + code: 20000, + data: { + total: items.length, + items: items + } + } + resolve(result) }) } diff --git a/frontend/src/metersphere/common/components/MsAsideContainer.vue b/frontend/src/metersphere/common/components/MsAsideContainer.vue index 1a3a365511..f26b35de2c 100644 --- a/frontend/src/metersphere/common/components/MsAsideContainer.vue +++ b/frontend/src/metersphere/common/components/MsAsideContainer.vue @@ -1,36 +1,39 @@ diff --git a/frontend/src/views/system/systemParamSettings/index.vue b/frontend/src/views/system/systemParamSettings/index.vue index 5f570d0a71..2db8144a5c 100644 --- a/frontend/src/views/system/systemParamSettings/index.vue +++ b/frontend/src/views/system/systemParamSettings/index.vue @@ -17,9 +17,7 @@