From e1aee91a98cf064bb710c0bc80f015aa7f1f34f4 Mon Sep 17 00:00:00 2001 From: chenxing Date: Tue, 29 Sep 2026 11:39:59 +0800 Subject: [PATCH] =?UTF-8?q?feat(app):=20=E5=9F=BA=E7=9F=B3=E5=BA=94?= =?UTF-8?q?=E7=94=A8=E9=9A=90=E8=97=8F=E9=97=A8=E6=88=B7=E6=8A=95=E6=94=BE?= =?UTF-8?q?=E5=AD=97=E6=AE=B5=EF=BC=88=E5=89=8D=E7=AB=AF=E7=B1=BB=E5=9E=8B?= =?UTF-8?q?/PC=C2=B7App=E5=9C=B0=E5=9D=80=E5=9B=BE=E6=A0=87/=E5=85=AC?= =?UTF-8?q?=E4=BC=97=E5=8F=B7/=E9=92=89=E9=92=89=EF=BC=89=EF=BC=9B?= =?UTF-8?q?=E6=80=A7=E8=B4=A8=E8=AF=B4=E6=98=8E=E6=94=B9=20Tooltip=20?= =?UTF-8?q?=E9=98=B2=E6=8A=98=E8=A1=8C=EF=BC=9B=E6=8A=80=E6=9C=AF=E6=A0=87?= =?UTF-8?q?=E8=AF=86=E5=8A=A0=20kebab-case=20=E6=8F=90=E7=A4=BA=E4=B8=8E?= =?UTF-8?q?=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/app/AppForm.vue | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/src/views/app/AppForm.vue b/src/views/app/AppForm.vue index 4ede284..578de06 100644 --- a/src/views/app/AppForm.vue +++ b/src/views/app/AppForm.vue @@ -38,12 +38,14 @@ - {{ natureBase ? '基石应用(不进开通/授权/模块管理)' : '业务应用' }} + + {{ natureBase ? '基石应用' : '业务应用' }} + - + @@ -65,8 +67,8 @@ - - + + @@ -101,8 +103,8 @@ - - + + @@ -126,8 +128,8 @@ - - + + @@ -252,7 +254,11 @@ const rules = computed(() => ({ }), // 技术标识新增与编辑均必填(2026-09-28 拍板,后端 Create/Update 组同口径);学校模式不展示该字段 ...(props.schoolMode ? {} : { - appCode: [{ required: true, message: '请输入技术标识', trigger: 'blur' }], + appCode: [ + { required: true, message: '请输入技术标识', trigger: 'blur' }, + // 2026-09-28 拍板命名规范:app_code 一律 kebab-case 且 = 部署名(PlatformService 枚举头注释同源) + { pattern: /^[a-z][a-z0-9-]{0,31}$/, message: '小写字母开头,仅小写字母/数字/连字符,≤32 位', trigger: 'blur' }, + ], }), }));