!86 添加表单避免超长验证规则

Merge pull request !86 from wen/dev
This commit is contained in:
lbw 2024-08-21 13:29:15 +00:00 committed by Gitee
commit c83ef9f0cf
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
15 changed files with 58 additions and 39 deletions

View File

@ -100,6 +100,7 @@ const form = reactive({
//
const dataRules = ref({
clientId: [
{validator: rule.overLength, trigger: 'blur'},
{required: true, message: '编号不能为空', trigger: 'blur'},
{validator: rule.validatorLowercase, trigger: 'blur'},
{
@ -110,21 +111,24 @@ const dataRules = ref({
},
],
clientSecret: [
{validator: rule.overLength, trigger: 'blur'},
{required: true, message: '密钥不能为空', trigger: 'blur'},
{validator: rule.validatorLower, trigger: 'blur'},
],
scope: [{required: true, message: '域不能为空', trigger: 'blur'}],
scope: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '域不能为空', trigger: 'blur'}],
authorizedGrantTypes: [{required: true, message: '授权模式不能为空', trigger: 'blur'}],
accessTokenValidity: [
{validator: rule.overLength, trigger: 'blur'},
{required: true, message: '令牌时效不能为空', trigger: 'blur'},
{type: 'number', min: 1, message: '令牌时效不能小于一小时', trigger: 'blur'},
],
refreshTokenValidity: [
{validator: rule.overLength, trigger: 'blur'},
{required: true, message: '刷新时效不能为空', trigger: 'blur'},
{type: 'number', min: 1, message: '刷新时效不能小于两小时', trigger: 'blur'},
],
autoapprove: [{required: true, message: '自动放行不能为空', trigger: 'blur'}],
webServerRedirectUri: [{required: true, message: '回调地址不能为空', trigger: 'blur'}],
webServerRedirectUri: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '回调地址不能为空', trigger: 'blur'}],
});
//

View File

@ -37,7 +37,7 @@
import {useI18n} from 'vue-i18n';
import {getObj, deptTree, addObj, putObj} from '/@/api/admin/dept';
import {useMessage} from '/@/hooks/message';
import {rule} from '/@/utils/validate';
// /
const emit = defineEmits(['refresh']);
const {t} = useI18n();
@ -55,8 +55,8 @@ const loading = ref(false);
const dataRules = ref({
parentId: [{required: true, message: '上级部门不能为空', trigger: 'blur'}],
name: [{required: true, message: '部门名称不能为空', trigger: 'blur'}],
sortOrder: [{required: true, message: '排序不能为空', trigger: 'blur'}],
name: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '部门名称不能为空', trigger: 'blur'}],
sortOrder: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '排序不能为空', trigger: 'blur'}],
});
//

View File

@ -41,7 +41,7 @@
import {useI18n} from 'vue-i18n';
import {getItemObj, addItemObj, putItemObj, validateDictItemLabel} from '/@/api/admin/dict';
import {useMessage} from '/@/hooks/message';
import {rule} from '/@/utils/validate';
// /
const emit = defineEmits(['refresh']);
const {t} = useI18n();
@ -64,8 +64,9 @@ const dataForm = reactive({
});
const dataRules = reactive({
value: [{required: true, message: '数据值不能为空', trigger: 'blur'}],
value: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '数据值不能为空', trigger: 'blur'}],
label: [
{validator: rule.overLength, trigger: 'blur'},
{required: true, message: '标签不能为空', trigger: 'blur'},
{
validator: (rule: any, value: any, callback: any) => {
@ -74,8 +75,8 @@ const dataRules = reactive({
trigger: 'blur',
},
],
description: [{required: true, message: '描述不能为空', trigger: 'blur'}],
sortOrder: [{required: true, message: '排序不能为空', trigger: 'blur'}],
description: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '描述不能为空', trigger: 'blur'}],
sortOrder: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '排序不能为空', trigger: 'blur'}],
});
//

View File

@ -60,6 +60,7 @@ const dataForm = reactive({
const dataRules = reactive({
dictType: [
{validator: rule.overLength, trigger: 'blur'},
{required: true, message: '类型不能为空', trigger: 'blur'},
{validator: rule.validatorNameCn, trigger: 'blur'},
{
@ -70,7 +71,7 @@ const dataRules = reactive({
},
],
systemFlag: [{required: true, message: '字典类型不能为空', trigger: 'blur'}],
description: [{required: true, message: '描述不能为空', trigger: 'blur'}],
description: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '描述不能为空', trigger: 'blur'}],
});
//

View File

@ -72,7 +72,7 @@
import {useI18n} from 'vue-i18n';
import {info, pageList, putObj, addObj} from '/@/api/admin/menu';
import {useMessage} from '/@/hooks/message';
import {rule} from '/@/utils/validate';
// /
const emit = defineEmits(['refresh']);
const {t} = useI18n();
@ -104,13 +104,13 @@ const state = reactive({
//
const dataRules = reactive({
menType: [{required: true, message: '菜单类型不能为空', trigger: 'blur'}],
menuType: [{required: true, message: '菜单类型不能为空', trigger: 'blur'}],
parentId: [{required: true, message: '上级菜单不能为空', trigger: 'blur'}],
name: [{required: true, message: '菜单不能为空', trigger: 'blur'}],
path: [{required: true, message: '路径不能为空', trigger: 'blur'}],
name: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '菜单不能为空', trigger: 'blur'}],
path: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '路径不能为空', trigger: 'blur'}],
icon: [{required: true, message: '图标不能为空', trigger: 'blur'}],
permission: [{required: true, message: '权限代码不能为空', trigger: 'blur'}],
sortOrder: [{required: true, message: '排序不能为空', trigger: 'blur'}],
permission: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '权限代码不能为空', trigger: 'blur'}],
sortOrder: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '排序不能为空', trigger: 'blur'}],
});
//

View File

@ -81,6 +81,7 @@ const form = reactive({
//
const dataRules = reactive({
publicName: [
{validator: rule.overLength, trigger: 'blur'},
{required: true, message: '名称不能为空', trigger: 'blur'},
{
validator: (rule: any, value: any, callback: any) => {
@ -90,6 +91,7 @@ const dataRules = reactive({
},
],
publicKey: [
{validator: rule.overLength, trigger: 'blur'},
{required: true, message: '参数键不能为空', trigger: 'blur'},
{validator: rule.validatorCapital, trigger: 'blur'},
{
@ -99,7 +101,7 @@ const dataRules = reactive({
trigger: 'blur',
},
],
publicValue: [{required: true, message: '参数值不能为空', trigger: 'blur'}],
publicValue: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '参数值不能为空', trigger: 'blur'}],
status: [{required: true, message: '状态不能为空', trigger: 'blur'}],
publicType: [{required: true, message: '类型不能为空', trigger: 'blur'}],
systemFlag: [{required: true, message: '类型不能为空', trigger: 'blur'}],

View File

@ -28,7 +28,7 @@
import {useMessage} from '/@/hooks/message';
import {getObj, addObj, putObj, validatePostCode, validatePostName} from '/@/api/admin/post';
import {useI18n} from 'vue-i18n';
import {rule} from '/@/utils/validate';
// /
const emit = defineEmits(['refresh']);
@ -56,6 +56,7 @@ const form = reactive({
//
const dataRules = ref({
postCode: [
{validator: rule.overLength, trigger: 'blur'},
{required: true, message: '岗位编码不能为空', trigger: 'blur'},
{
validator: (rule: any, value: any, callback: any) => {
@ -65,6 +66,7 @@ const dataRules = ref({
},
],
postName: [
{validator: rule.overLength, trigger: 'blur'},
{required: true, message: '岗位名称不能为空', trigger: 'blur'},
{
validator: (rule: any, value: any, callback: any) => {
@ -73,8 +75,8 @@ const dataRules = ref({
trigger: 'blur',
},
],
postSort: [{required: true, message: '岗位排序不能为空', trigger: 'blur'}],
remark: [{required: true, message: '岗位描述不能为空', trigger: 'blur'}],
postSort: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '岗位排序不能为空', trigger: 'blur'}],
remark: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '岗位描述不能为空', trigger: 'blur'}],
});
//

View File

@ -128,6 +128,7 @@ const dataForm = reactive({
const dataRules = ref({
// 5-20
username: [
{validator: rule.overLength, trigger: 'blur'},
{ required: true, message: '用户名不能为空', trigger: 'blur' },
{ min: 5, max: 20, message: '用户名称长度必须介于 5 和 20 之间', trigger: 'blur' },
{
@ -138,6 +139,7 @@ const dataRules = ref({
},
],
password: [
{validator: rule.overLength, trigger: 'blur'},
{ required: true, message: '密码不能为空', trigger: 'blur' },
{
min: 6,
@ -149,6 +151,7 @@ const dataRules = ref({
//
name: [
{ required: true, message: '姓名不能为空', trigger: 'blur' },
{validator: rule.overLength, trigger: 'blur'},
{ validator: rule.chinese, trigger: 'blur' },
],
deptId: [{ required: true, message: '部门不能为空', trigger: 'blur' }],
@ -157,6 +160,7 @@ const dataRules = ref({
//
phone: [
{ required: true, message: '手机号不能为空', trigger: 'blur' },
{validator: rule.overLength, trigger: 'blur'},
{ validator: rule.validatePhone, trigger: 'blur' },
{
validator: (rule: any, value: any, callback: any) => {
@ -165,7 +169,7 @@ const dataRules = ref({
trigger: 'blur',
},
],
email: [{ type: 'email', message: '请输入正确的邮箱地址', trigger: ['blur', 'change'] }],
email: [{validator: rule.overLength, trigger: 'blur'},{ type: 'email', message: '请输入正确的邮箱地址', trigger: ['blur', 'change'] }],
lockFlag: [{ required: true, message: '状态不能为空', trigger: 'blur' }],
});

View File

@ -131,9 +131,9 @@ const ruleForm = reactive({
{required: true, message: '手机号不能为空', trigger: 'blur'},
{validator: rule.validatePhone, trigger: 'blur'},
],
nickname: [{required: true, message: '昵称不能为空', trigger: 'blur'}],
email: [{required: true, message: '邮箱不能为空', trigger: 'blur'}],
name: [{required: true, message: '姓名不能为空', trigger: 'blur'}],
nickname: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '昵称不能为空', trigger: 'blur'}],
email: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '邮箱不能为空', trigger: 'blur'}],
name: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '姓名不能为空', trigger: 'blur'}],
});
const validatorPassword2 = (rule: any, value: any, callback: any) => {
if (value !== passwordFormData.newpassword1) {
@ -151,7 +151,7 @@ const validatorScore = (rule: any, value: any, callback: any) => {
};
const passwordRuleForm = reactive({
password: [{required: true, message: '密码不能为空', trigger: 'blur'}],
password: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '密码不能为空', trigger: 'blur'}],
newpassword1: [
{
min: 6,

View File

@ -84,7 +84,7 @@ import {useDict} from '/@/hooks/dict';
import {useMessage} from '/@/hooks/message';
import {addObj, getObj, putObj} from '/@/api/daemon/job';
import {useI18n} from 'vue-i18n';
import {rule} from '/@/utils/validate';
const emit = defineEmits(['refresh']);
const Crontab = defineAsyncComponent(() => import('/@/components/Crontab/index.vue'));
@ -122,14 +122,14 @@ const popoverVis = (bol: boolean) => {
const popoverVisible = ref(false);
//
const dataRules = reactive({
jobName: [{required: true, message: '任务名称不能为空', trigger: 'blur'}],
jobGroup: [{required: true, message: '任务组名不能为空', trigger: 'blur'}],
jobName: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '任务名称不能为空', trigger: 'blur'}],
jobGroup: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '任务组名不能为空', trigger: 'blur'}],
jobType: [{required: true, message: '任务类型不能为空', trigger: 'blur'}],
cronExpression: [{required: true, message: 'cron不能为空', trigger: 'blur'}],
misfirePolicy: [{required: true, message: '策略不能为空', trigger: 'blur'}],
executePath: [{required: true, message: '执行路径不能为空', trigger: 'blur'}],
className: [{required: true, message: '执行文件不能为空', trigger: 'blur'}],
methodName: [{required: true, message: '执行方法不能为空', trigger: 'blur'}],
executePath: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '执行路径不能为空', trigger: 'blur'}],
className: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '执行文件不能为空', trigger: 'blur'}],
methodName: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '执行方法不能为空', trigger: 'blur'}],
});
//

View File

@ -125,6 +125,7 @@ const validateDsName = (_rule, value, callback) => {
const dataRules = ref({
name: [
{required: true, message: '别名不能为空', trigger: 'blur'},
{validator: rule.overLength, trigger: 'blur'},
{validator: validateDsName, trigger: 'blur'},
],
url: [{required: true, message: 'jdbcurl不能为空', trigger: 'blur'}, {
@ -139,7 +140,7 @@ const dataRules = ref({
confType: [{required: true, message: '配置类型不能为空', trigger: 'blur'}],
dsName: [{ validator: rule.overLength, trigger: 'blur' },{required: true, message: '数据库名称不能为空', trigger: 'blur'}],
instance: [{ validator: rule.overLength, trigger: 'blur' },{required: true, message: '实例不能为空', trigger: 'blur'}],
port: [{required: true, message: '端口不能为空', trigger: 'blur'}],
port: [{validator: rule.overLength, trigger: 'blur'},{required: true, message: '端口不能为空', trigger: 'blur'}],
host: [{ validator: rule.overLength, trigger: 'blur' },{required: true, message: '主机不能为空', trigger: 'blur'}],
});

View File

@ -24,6 +24,7 @@
import { useMessage } from '/@/hooks/message';
import { getObj, addObj, putObj, validateColumnType } from '/@/api/gen/fieldtype';
import { useI18n } from 'vue-i18n';
import {rule} from '/@/utils/validate';
// /
const emit = defineEmits(['refresh']);
const { t } = useI18n();
@ -46,13 +47,14 @@ const form = reactive({
const dataRules = ref({
columnType: [
{ required: true, message: '字段类型不能为空', trigger: 'blur' },
{validator: rule.overLength, trigger: 'blur'},
{
validator: (rule: any, value: any, callback: any) => {
validateColumnType(rule, value, callback, form.id !== '');
},
},
],
attrType: [{ required: true, message: '属性类型不能为空', trigger: 'blur' }],
attrType: [{validator: rule.overLength, trigger: 'blur'},{ required: true, message: '属性类型不能为空', trigger: 'blur' }],
});
//

View File

@ -27,6 +27,7 @@ import { useMessage } from '/@/hooks/message';
import { addObj, getObj, putObj } from '/@/api/gen/group';
import { useI18n } from 'vue-i18n';
import { list as templateList } from '/@/api/gen/template';
import {rule} from '/@/utils/validate';
// /
const emit = defineEmits(['refresh']);
const { t } = useI18n();
@ -49,7 +50,7 @@ const form = reactive({
//
const dataRules = ref({
groupName: [{ required: true, message: '分组名称不能为空', trigger: 'blur' }],
groupName: [{validator: rule.overLength, trigger: 'blur'},{ required: true, message: '分组名称不能为空', trigger: 'blur' }],
templateId: [{ required: true, message: '模板不能为空', trigger: 'blur' }],
});

View File

@ -52,8 +52,9 @@ const loginForm = reactive({
//
const loginRules = reactive({
mobile: [{ required: true, trigger: 'blur', validator: rule.validatePhone }],
mobile: [{validator: rule.overLength, trigger: 'blur'},{ required: true, trigger: 'blur', validator: rule.validatePhone }],
code: [
{validator: rule.overLength, trigger: 'blur'},
{
required: true,
trigger: 'blur',

View File

@ -63,7 +63,7 @@ import {reactive, ref, defineEmits} from 'vue';
import {useUserInfo} from '/@/stores/userInfo';
import {useI18n} from 'vue-i18n';
import {generateUUID} from "/@/utils/other";
import {rule} from '/@/utils/validate';
// 使
const {t} = useI18n();
@ -83,9 +83,9 @@ const state = reactive({
});
const loginRules = reactive({
username: [{required: true, trigger: 'blur', message: t('password.accountPlaceholder1')}], //
password: [{required: true, trigger: 'blur', message: t('password.accountPlaceholder2')}], //
code: [{required: true, trigger: 'blur', message: t('password.accountPlaceholder3')}], //
username: [{validator: rule.overLength, trigger: 'blur'},{required: true, trigger: 'blur', message: t('password.accountPlaceholder1')}], //
password: [{validator: rule.overLength, trigger: 'blur'},{required: true, trigger: 'blur', message: t('password.accountPlaceholder2')}], //
code: [{validator: rule.overLength, trigger: 'blur'},{required: true, trigger: 'blur', message: t('password.accountPlaceholder3')}], //
});
//