Pārlūkot izejas kodu

fix(link): protocol validatorId

Lind 3 gadi atpakaļ
vecāks
revīzija
a79f6f9c74

+ 18 - 0
src/pages/link/Protocol/index.tsx

@@ -187,6 +187,24 @@ const Protocol = () => {
                 validateId: true,
                 message: 'ID只能由数字、26个英文字母或者下划线组成',
               },
+              {
+                triggerType: 'onBlur',
+                validator: (value: string) => {
+                  if (!value) return;
+                  return new Promise((resolve) => {
+                    service
+                      .validator(value)
+                      .then((resp) => {
+                        if (!!resp?.result) {
+                          resolve('ID已存在');
+                        } else {
+                          resolve('');
+                        }
+                      })
+                      .catch(() => '验证失败!');
+                  });
+                },
+              },
             ],
           },
           name: {

+ 3 - 0
src/pages/link/Protocol/service.ts

@@ -1,6 +1,7 @@
 import type { ProtocolItem } from '@/pages/link/Protocol/typings';
 import { request } from 'umi';
 import BaseService from '@/utils/BaseService';
+import SystemConst from '@/utils/const';
 
 class Service extends BaseService<ProtocolItem> {
   public modifyState = (id: string, action: 'deploy' | 'un-deploy') =>
@@ -13,6 +14,8 @@ class Service extends BaseService<ProtocolItem> {
 
   public debug = (type: 'encode' | 'decode', data: Record<string, unknown>) =>
     request(`${this.uri}/${type}`, { method: 'POST', data });
+
+  public validator = (id: string) => request(`${SystemConst.API_BASE}/protocol/${id}/exists`);
 }
 
 export default Service;

+ 2 - 2
src/pages/link/Type/Save/index.tsx

@@ -247,7 +247,7 @@ const Save = observer(() => {
           gridSpan: 1,
           labelAlign: 'left',
           layout: 'vertical',
-          tooltip: '绑定到服务器上的网卡地址,绑定到所有网卡:0.0.0.0 /',
+          tooltip: '绑定到服务器上的网卡地址,绑定到所有网卡:0.0.0.0',
         },
         required: true,
         'x-reactions': {
@@ -267,7 +267,7 @@ const Save = observer(() => {
         'x-decorator-props': {
           gridSpan: 1,
           labelAlign: 'left',
-          tooltip: '监听指定端口的UDP请求',
+          tooltip: '监听指定端口的请求',
           layout: 'vertical',
         },
         required: true,