From 1992e84b590ad9ebfb3b29b082825b4f20370357 Mon Sep 17 00:00:00 2001 From: fit2cloud-chenyw Date: Wed, 10 Mar 2021 18:26:53 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E7=94=A8=E6=88=B7=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/mapper/ext/ExtSysUserMapper.xml | 11 +- .../sys/request/UserGridRequest.java | 8 + .../business/condition-table/index.vue | 95 ++++ frontend/src/lang/index.js | 9 +- frontend/src/lang/zh.js | 1 + frontend/src/utils/auth.js | 2 + frontend/src/utils/index.js | 14 + frontend/src/utils/permission.js | 9 + frontend/src/utils/validate.js | 2 + frontend/src/views/system/user/index.vue | 247 +++++----- frontend/src/views/system/user/index1.vue | 134 ------ frontend/src/views/system/user/index_back.vue | 444 ++++++++++++++++++ 12 files changed, 709 insertions(+), 267 deletions(-) create mode 100644 frontend/src/components/business/condition-table/index.vue create mode 100644 frontend/src/utils/permission.js delete mode 100644 frontend/src/views/system/user/index1.vue create mode 100644 frontend/src/views/system/user/index_back.vue diff --git a/backend/src/main/java/io/dataease/base/mapper/ext/ExtSysUserMapper.xml b/backend/src/main/java/io/dataease/base/mapper/ext/ExtSysUserMapper.xml index 981982136c..374f4216d7 100644 --- a/backend/src/main/java/io/dataease/base/mapper/ext/ExtSysUserMapper.xml +++ b/backend/src/main/java/io/dataease/base/mapper/ext/ExtSysUserMapper.xml @@ -33,8 +33,17 @@ left join sys_role r on r.role_id = ur.role_id left join sys_dept d on d.dept_id = u.dept_id + + AND u.nick_name like CONCAT('%', #{request.quick},'%') + - AND u.name like CONCAT('%', #{request.name},'%') + AND u.nick_name like CONCAT('%', #{request.name},'%') + + + AND u.enabled = #{request.enabled} + + + AND u.dept_id = #{request.deptId} order by u.update_time desc diff --git a/backend/src/main/java/io/dataease/controller/sys/request/UserGridRequest.java b/backend/src/main/java/io/dataease/controller/sys/request/UserGridRequest.java index 4b325a3c17..55da77bea9 100644 --- a/backend/src/main/java/io/dataease/controller/sys/request/UserGridRequest.java +++ b/backend/src/main/java/io/dataease/controller/sys/request/UserGridRequest.java @@ -1,10 +1,18 @@ package io.dataease.controller.sys.request; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.io.Serializable; @Data public class UserGridRequest implements Serializable { + @ApiModelProperty("快速检索") + private String quick; + @ApiModelProperty("名称") private String name; + @ApiModelProperty("组织") + private String deptId; + @ApiModelProperty("状态") + private String enabled; } diff --git a/frontend/src/components/business/condition-table/index.vue b/frontend/src/components/business/condition-table/index.vue new file mode 100644 index 0000000000..f15562ef70 --- /dev/null +++ b/frontend/src/components/business/condition-table/index.vue @@ -0,0 +1,95 @@ + + + + + diff --git a/frontend/src/lang/index.js b/frontend/src/lang/index.js index 4a3b179365..a4cc3d7d19 100644 --- a/frontend/src/lang/index.js +++ b/frontend/src/lang/index.js @@ -11,17 +11,22 @@ import zhLocale from './zh' import twLocale from './tw' import esLocale from './es' import jaLocale from './ja' +import fuZh from 'fit2cloud-ui/src/locale/lang/zh-CN' // 加载fit2cloud的内容 + +import fuEn from 'fit2cloud-ui/src/locale/lang/en_US' // 加载fit2cloud的内容 Vue.use(VueI18n) const messages = { en: { ...enLocale, - ...elementEnLocale + ...elementEnLocale, + ...fuEn }, zh: { ...zhLocale, - ...elementZhLocale + ...elementZhLocale, + ...fuZh }, tw: { ...twLocale, diff --git a/frontend/src/lang/zh.js b/frontend/src/lang/zh.js index feac4aeec0..08f6342a5a 100644 --- a/frontend/src/lang/zh.js +++ b/frontend/src/lang/zh.js @@ -424,6 +424,7 @@ export default { input_email: '请输入邮箱', input_password: '请输入密码', input_phone: '请输入电话号码', + input_roles: '请选择角色', special_characters_are_not_supported: '不支持特殊字符', mobile_number_format_is_incorrect: '手机号码格式不正确', email_format_is_incorrect: '邮箱格式不正确', diff --git a/frontend/src/utils/auth.js b/frontend/src/utils/auth.js index c0663e529e..033e976420 100644 --- a/frontend/src/utils/auth.js +++ b/frontend/src/utils/auth.js @@ -1,5 +1,6 @@ import Cookies from 'js-cookie' import Config from '@/settings' + const TokenKey = Config.TokenKey export function getToken() { @@ -13,3 +14,4 @@ export function setToken(token) { export function removeToken() { return Cookies.remove(TokenKey) } + diff --git a/frontend/src/utils/index.js b/frontend/src/utils/index.js index 61899c6e3a..092535fee8 100644 --- a/frontend/src/utils/index.js +++ b/frontend/src/utils/index.js @@ -136,3 +136,17 @@ export function param2Obj(url) { '"}' ) } + +export function formatCondition(param) { + if (!param) { + return null + } + const condition = {} + for (const key in param) { + if (Object.hasOwnProperty.call(param, key)) { + const element = param[key] + condition[element.field] = element.value + } + } + return condition +} diff --git a/frontend/src/utils/permission.js b/frontend/src/utils/permission.js new file mode 100644 index 0000000000..54be75573a --- /dev/null +++ b/frontend/src/utils/permission.js @@ -0,0 +1,9 @@ +import store from '@/store' +export function checkPermission(pers) { + const permissions = store.getters.permissions + const hasPermission = pers.every(needP => { + const result = permissions.includes(needP) + return result + }) + return hasPermission +} diff --git a/frontend/src/utils/validate.js b/frontend/src/utils/validate.js index 1e5024e641..de31eda81e 100644 --- a/frontend/src/utils/validate.js +++ b/frontend/src/utils/validate.js @@ -18,3 +18,5 @@ export function validUsername(str) { const valid_map = ['admin', 'cyw'] return valid_map.indexOf(str.trim()) >= 0 } + +export const PHONE_REGEX = '^1[3|4|5|7|8][0-9]{9}$' diff --git a/frontend/src/views/system/user/index.vue b/frontend/src/views/system/user/index.vue index fa2b29878c..7c2a6ca953 100644 --- a/frontend/src/views/system/user/index.vue +++ b/frontend/src/views/system/user/index.vue @@ -1,62 +1,44 @@