From 503655321fce7bfee77e5af610c3576453f0aafa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E4=BC=9F=E5=BA=9A?= Date: Fri, 11 Nov 2022 15:43:38 +0800 Subject: [PATCH] fix some bugs --- src/bg-ui/bg-upload.vue | 4 + src/page/main/config/dict/index.vue | 13 +- .../main/develop/account/add/contact-form.vue | 59 +-- src/page/main/develop/account/add/index.vue | 2 +- .../main/develop/account/add/system-form.vue | 88 +++-- .../main/system/organization/org-form.vue | 188 +++++----- .../system/organization/org-user/index.vue | 4 +- .../organization/platform-user/index.vue | 4 +- .../system/organization/user-detail/index.vue | 353 +++++++++--------- src/page/main/system/role/index.vue | 2 +- 10 files changed, 383 insertions(+), 334 deletions(-) diff --git a/src/bg-ui/bg-upload.vue b/src/bg-ui/bg-upload.vue index 43ebd5f..5bbf77d 100644 --- a/src/bg-ui/bg-upload.vue +++ b/src/bg-ui/bg-upload.vue @@ -176,6 +176,10 @@ export default { }, handleExceed(file, fileList) { console.log(file, fileList); + if (fileList && fileList.length == this.limit) { + this.$message.error(`最多只允许上传${this.limit}个文件`) + return false + } }, handlePreview(val) { let a = document.createElement("a"); // 生成一个a元素 diff --git a/src/page/main/config/dict/index.vue b/src/page/main/config/dict/index.vue index 2beb0d0..d547074 100644 --- a/src/page/main/config/dict/index.vue +++ b/src/page/main/config/dict/index.vue @@ -103,6 +103,16 @@ @@ -232,8 +242,7 @@ const state = reactive({ }, rules: { name: [ - { required: true, message: "请输入名称", trigger: "blur" }, - { max: 20, message: "名称最大为20字", trigger: "blur"} + { required: true, message: "请输入名称", trigger: "blur" } ], describe: [ { required: true, message: "请输入描述", trigger: "blur" }, diff --git a/src/page/main/develop/account/add/contact-form.vue b/src/page/main/develop/account/add/contact-form.vue index d86aadb..9a5ac56 100644 --- a/src/page/main/develop/account/add/contact-form.vue +++ b/src/page/main/develop/account/add/contact-form.vue @@ -17,7 +17,7 @@ - + @@ -44,37 +44,47 @@ const props = defineProps({ }); const checkPhone = (rule, value, callback) => { - var phone_ruler = /^(?:(?:\+|00)86)?1[3-9]\d{9}$/; - setTimeout(() => { - if (!phone_ruler.test(value)&&value.length!==0) { - callback(new Error("请输入正确的手机号码")); - } else { - callback(); - } - }); + var phone_ruler = /^(?:(?:\+|00)86)?1[3-9]\d{9}$/; + setTimeout(() => { + if (!phone_ruler.test(value)&&value.length!==0) { + callback(new Error("请输入正确的手机号码")); + } else { + callback(); + } + }); }; const checkPhoneRepet = (rule, value, callback) => { - let params = null; - if (props.id){ - params = {id: parseInt(props.id),contact_phone: value,} - }else { - params = {id: 0,contact_phone: value} - } + let params = null; + if (props.id){ + params = {id: parseInt(props.id),contact_phone: value,} + }else { + params = {id: 0,contact_phone: value} + } + $axios.post(`/apaas/system/v5/org/check`,params) + .then((res) => { + if (res.data.code == 200) { + callback() + }else { + callback(new Error(res.data.data)) + } + }) +} - $axios.post(`/apaas/system/v5/org/check`,params) - .then((res) => { - if (res.data.code == 200) { - callback() - }else { - callback(new Error(res.data.data)) - } - }) - } +const checkName = (rule, value, callback) => { + var reg = /^[a-zA-Z0-9\u4e00-\u9fa5]+$/ + if (!reg.test(value)) { + callback(new Error("只能输入字母、数字和汉字")) + }else { + callback() + } +} const contactFormRules = reactive({ contact_name: [ { required: true, message: '请输入联系人姓名', trigger: 'blur' }, + { max: 50, message: "联系人姓名最大长度为50个字符", trigger: "blur"}, + { validator: checkName, trigger: 'blur' }, ], contact_phone: [ { required: true, message: '请输入联系人手机号', trigger: 'blur' }, @@ -83,6 +93,7 @@ const contactFormRules = reactive({ ], contact_email: [ { type: 'email', message: '请输入正确的邮箱', trigger: 'blur' }, + { max: 100, message: "邮箱最大长度为100个字符", trigger: "blur"}, ] }) const contactRef = ref(null) diff --git a/src/page/main/develop/account/add/index.vue b/src/page/main/develop/account/add/index.vue index d4dec14..dd24ee9 100644 --- a/src/page/main/develop/account/add/index.vue +++ b/src/page/main/develop/account/add/index.vue @@ -191,7 +191,7 @@ const getDetail = () => { systemFormRef.value.setForm({ organization_id: form.organization_id, system_role_id: form.system_role_id, - logo: [{url:form.logo}], + logo: form.logo ? [{url:form.logo}] : [], business_code: form.business_code, business_name: form.business_name, business_desc: form.business_desc, diff --git a/src/page/main/develop/account/add/system-form.vue b/src/page/main/develop/account/add/system-form.vue index 1f6e4ad..bad2b68 100644 --- a/src/page/main/develop/account/add/system-form.vue +++ b/src/page/main/develop/account/add/system-form.vue @@ -29,7 +29,7 @@ - + @@ -118,39 +118,49 @@ const validatePass = (rule, value, callback) => { } } const validateBusinessName = (rule, value, callback) => { - let params = null; - if (props.id){ - params = {id: parseInt(props.id),business_name: value,organization_id: systemForm.organization_id} - }else { - params = {business_name: value,organization_id: systemForm.organization_id} - } - - $axios.post(`/apaas/system/v5/user/check/business`,params) - .then((res) => { - if (res.data.code == 200) { - callback() - }else { + let reg = /^[a-zA-Z0-9\u4e00-\u9fa5]+$/ + if (!reg.test(value)) { + callback(new Error("只能输入字母、数字和汉字")) + }else { + let params = null; + if (props.id){ + params = {id: parseInt(props.id),business_name: value,organization_id: systemForm.organization_id} + }else { + params = {business_name: value,organization_id: systemForm.organization_id} + } + + $axios.post(`/apaas/system/v5/user/check/business`,params) + .then((res) => { + if (res.data.code == 200) { + callback() + }else { callback(new Error(res.data.data)) - } - }) + } + }) + } } const validateSystemAccount = (rule, value, callback) => { - let params = null; - if (props.id){ - params = {id: parseInt(props.id),system_account: value,} - }else { - params = {system_account: value} - } - - $axios.post(`/apaas/system/v5/user/check/account`,params) - .then((res) => { - if (res.data.code == 200) { - callback() - }else { + let reg = /^[a-zA-Z0-9]+$/ + if (!reg.test(value)) { + callback(new Error("只能输入字母和数字")) + }else { + let params = null; + if (props.id){ + params = {id: parseInt(props.id),system_account: value,} + }else { + params = {system_account: value} + } + + $axios.post(`/apaas/system/v5/user/check/account`,params) + .then((res) => { + if (res.data.code == 200) { + callback() + }else { callback(new Error(res.data.data)) - } - }) + } + }) + } } const formRules = reactive({ @@ -159,6 +169,7 @@ const formRules = reactive({ ], business_name: [ { required: true, message: '请输入业务系统名称', trigger: 'blur' }, + { max: 50, message: '业务系统名称最大长度为50个字符', trigger: 'blur' }, { validator: validateBusinessName, trigger: 'blur' }, ], system_role_id: [ @@ -166,16 +177,24 @@ const formRules = reactive({ ], system_account: [ { required: true, message: '请输入账号', trigger: 'blur' }, + { min: 4,message: '帐号长度不得低于4个字符',trigger: 'blur' }, + { max: 20,message: '帐号最大长度为20个字符',trigger: 'blur' }, { validator: validateSystemAccount, trigger: 'blur' }, ], password: [ { required: true, message: '请输入密码', trigger: 'blur' }, - {min: 8,message: '密码长度不得低于8位',trigger: 'blur'} + { min: 8,message: '密码长度不得低于8位',trigger: 'blur' } ], confirm_password: [ { required: true, message: '请确认密码', trigger: 'blur' }, { validator: validatePass, trigger: 'blur' } ], + access_address: [ + { max: 500,message: '访问地址最大长度为500个字符',trigger: 'blur' }, + ], + develop_id: [ + { required: true, message: "请选择开发厂商", trigger: "change"} + ] }) const systemRef = ref(null) @@ -258,14 +277,13 @@ const getRoleList = () => { const getFirmList = () => { $axios.get(`/apaas/system/v5/dictionary/developer/list`) - .then((res) => { + .then((res) => { if (res.data.code == 200) { - firmList.value = res.data.data; - + firmList.value = res.data.data || []; }else { - + $message.error(res.data.data) } - }) + }) } onBeforeMount(() =>{ diff --git a/src/page/main/system/organization/org-form.vue b/src/page/main/system/organization/org-form.vue index 4b3e2df..75b0991 100644 --- a/src/page/main/system/organization/org-form.vue +++ b/src/page/main/system/organization/org-form.vue @@ -26,13 +26,13 @@ - + @@ -44,105 +44,119 @@ \ No newline at end of file diff --git a/src/page/main/system/organization/org-user/index.vue b/src/page/main/system/organization/org-user/index.vue index 0ae74cb..a35c5e9 100644 --- a/src/page/main/system/organization/org-user/index.vue +++ b/src/page/main/system/organization/org-user/index.vue @@ -4,7 +4,7 @@ 组织管理 组织管理 - 新增组织管理员 + {{route.query.id ? '编辑组织用户':'新增组织管理员'}}
@@ -192,7 +192,7 @@ const getDetail = () => { orgAccountRef.value.setForm({ organization_id: form.organization_id, select_role: form.select_role, - logo: [{url:form.logo}], + logo: form.logo ? [{url:form.logo}] : [], system_account: form.system_account, contact_phone: form.contact_phone, state: form.state, diff --git a/src/page/main/system/organization/platform-user/index.vue b/src/page/main/system/organization/platform-user/index.vue index f76a8fa..11055c9 100644 --- a/src/page/main/system/organization/platform-user/index.vue +++ b/src/page/main/system/organization/platform-user/index.vue @@ -4,7 +4,7 @@ 组织管理 组织管理 - 新增平台用户 + {{route.query.id ? '编辑平台用户':'新增平台用户'}}
@@ -217,7 +217,7 @@ const getDetail = () => { if (res.data.code == 200) { const form = res.data.data; platformAccountFormRef.value.setForm({ - logo: [{url:form.logo}], + logo: form.logo ? [{url:form.logo}] : [], system_account: form.system_account, contact_phone: form.contact_phone, state: form.state, diff --git a/src/page/main/system/organization/user-detail/index.vue b/src/page/main/system/organization/user-detail/index.vue index 0064259..763dd45 100644 --- a/src/page/main/system/organization/user-detail/index.vue +++ b/src/page/main/system/organization/user-detail/index.vue @@ -1,45 +1,45 @@ \ No newline at end of file diff --git a/src/page/main/system/role/index.vue b/src/page/main/system/role/index.vue index 809491f..9b88b2d 100644 --- a/src/page/main/system/role/index.vue +++ b/src/page/main/system/role/index.vue @@ -146,7 +146,7 @@