diff --git a/package.json b/package.json index b812c5c6..b1629925 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ "event-source-polyfill": "^1.0.31", "global": "^4.4.0", "jetlinks-store": "^0.0.3", - "jetlinks-ui-components": "^1.0.5", + "jetlinks-ui-components": "1.0.5", "js-cookie": "^3.0.1", "less": "^4.1.3", "less-loader": "^11.1.0", diff --git a/src/components/Form/rules.ts b/src/components/Form/rules.ts new file mode 100644 index 00000000..e3e3e7e0 --- /dev/null +++ b/src/components/Form/rules.ts @@ -0,0 +1,27 @@ + +const MaxLengthStringFn = (len: number = 64) => ({ + max: len, + message: `最多输入${64}个字符`, +}) + +export const Max_Length_64 = [MaxLengthStringFn()] +export const Max_Length_200 = [MaxLengthStringFn(200)] + +export const RequiredStringFn = (name: string, type: string = 'input') => { + let typeName = '输入' + if (['select', 'date'].includes(type)) { + typeName = '选择' + } + return { + required: true, + message: `请${typeName}${name}`, + } +} + +export const ID_Rule = [ + { + pattern: /^[a-zA-Z0-9_\-]+$/, + message: '请输入英文或者数字或者-或者_', + }, + Max_Length_64[0] +] \ No newline at end of file diff --git a/src/utils/setting.ts b/src/utils/setting.ts index 7c275321..c88bb862 100644 --- a/src/utils/setting.ts +++ b/src/utils/setting.ts @@ -3,13 +3,5 @@ import { isNoCommunity } from '@/utils/utils'; // 过滤网关类型 export const accessConfigTypeFilter = (data: any[], filterKey: string = 'id'): any[] => { if (!data) return [] - const filterKeys = !isNoCommunity ? - [ - 'mqtt-server-gateway', - 'http-server-gateway', - 'mqtt-client-gateway', - 'tcp-server-gateway', - 'plugin_gateway' - ] : ['plugin_gateway'] - return data.filter(item => !filterKeys.includes(item[filterKey])).map( item => ({ ...item, label: item.name, value: item.id})) + return data.map( item => ({ ...item, label: item.name, value: item.id})) } \ No newline at end of file diff --git a/src/views/device/DashBoard/index.vue b/src/views/device/DashBoard/index.vue index 0e30a75b..b0047d7a 100644 --- a/src/views/device/DashBoard/index.vue +++ b/src/views/device/DashBoard/index.vue @@ -53,7 +53,7 @@ - +
@@ -84,6 +84,8 @@ import { useMenuStore } from '@/store/menu'; import Amap from './components/Amap.vue'; import { useSystem } from '@/store/system'; import dayjs from 'dayjs' +import { isNoCommunity } from '@/utils/utils' + const system = useSystem(); const AmapKey = system.$state.configInfo.amap?.apiKey; let productTotal = ref(0); diff --git a/src/views/home/components/Pie.vue b/src/views/home/components/Pie.vue index 1bbf3a71..3142b7c3 100644 --- a/src/views/home/components/Pie.vue +++ b/src/views/home/components/Pie.vue @@ -4,7 +4,7 @@ diff --git a/src/views/iframe/index.vue b/src/views/iframe/index.vue index 003e5fa4..c1445dc0 100644 --- a/src/views/iframe/index.vue +++ b/src/views/iframe/index.vue @@ -20,15 +20,12 @@ const handle = async (appId: string, url: string) => { const res = await getAppInfo_api(appId); let menuUrl: any = url; if (res.status === 200) { - // console.log(res.result); if (res.result.page.routeType === 'hash') { - menuUrl = `/%23/${url}`; + menuUrl = `${url}`; } if (res.result.provider === 'internal-standalone') { - //{baseUrl}/api/application/sso/{appId}/login?redirect={menuUrl} const urlStandalone = `${res.result.page.baseUrl}/api/application/sso/${appId}/login?redirect=${menuUrl}?layout=false`; iframeUrl.value = urlStandalone; - // console.log(urlStandalone); } else if (res.result.provider === 'internal-integrated') { const tokenUrl = `${ res.result.page.baseUrl @@ -44,7 +41,12 @@ const handle = async (appId: string, url: string) => { watchEffect(() => { const params = route.path.split('/')?.[1]; const url = route.path.split('/').slice(2).join('/'); - console.log(params, url); handle(params, url); }); + + diff --git a/src/views/link/AccessConfig/components/Provider/index.vue b/src/views/link/AccessConfig/components/Provider/index.vue index 24b2afb7..065f25c0 100644 --- a/src/views/link/AccessConfig/components/Provider/index.vue +++ b/src/views/link/AccessConfig/components/Provider/index.vue @@ -145,12 +145,12 @@ const click = (value: object) => { display: flex; width: calc(100% - 100px); .images { - width: 88px; - height: 88px; + width: 80px; + height: 80px; img { - width: 88px; - height: 88px; + width: 80px; + height: 80px; } } diff --git a/src/views/link/DashBoard/components/TopCard.vue b/src/views/link/DashBoard/components/TopCard.vue index 002257c8..870a6ddb 100644 --- a/src/views/link/DashBoard/components/TopCard.vue +++ b/src/views/link/DashBoard/components/TopCard.vue @@ -47,6 +47,7 @@ import { serverNode } from '@/api/link/dashboard'; import TopEchartsItemNode from './TopEchartsItemNode.vue'; import { getWebSocket } from '@/utils/websocket'; import { map } from 'rxjs/operators'; +import { isNoCommunity } from '@/utils/utils' const serverId = ref(); const serverNodeOptions = ref>([]); @@ -103,17 +104,19 @@ const getData = () => { }; onMounted(() => { - serverNode().then((resp: any) => { - if (resp.success) { - serverNodeOptions.value = resp.result.map((item: any) => ({ - label: item.name, - value: item.id, - })); - if (serverNodeOptions.value.length) { - serverId.value = serverNodeOptions.value[0]?.value; - } - } - }); + if (isNoCommunity) { + serverNode().then((resp: any) => { + if (resp.success) { + serverNodeOptions.value = resp.result.map((item: any) => ({ + label: item.name, + value: item.id, + })); + if (serverNodeOptions.value.length) { + serverId.value = serverNodeOptions.value[0]?.value; + } + } + }); + } }); watch( () => serverId.value, diff --git a/src/views/link/Protocol/Save/FileUpload.vue b/src/views/link/Protocol/Save/FileUpload.vue index fa4b9c69..cd6b7d32 100644 --- a/src/views/link/Protocol/Save/FileUpload.vue +++ b/src/views/link/Protocol/Save/FileUpload.vue @@ -30,7 +30,7 @@ import { TOKEN_KEY } from '@/utils/variable'; import { PROTOCOL_UPLOAD } from '@/api/link/protocol'; import { onlyMessage } from '@/utils/comm'; import type { UploadChangeParam, UploadProps } from 'ant-design-vue'; -import { notification as Notification } from 'ant-design-vue'; +import { notification as Notification } from 'jetlinks-ui-components'; import { useSystem } from '@/store/system'; const emit = defineEmits(['update:modelValue', 'change']); diff --git a/src/views/link/Type/Detail/index.vue b/src/views/link/Type/Detail/index.vue index 7a58cd4e..48191b97 100644 --- a/src/views/link/Type/Detail/index.vue +++ b/src/views/link/Type/Detail/index.vue @@ -1327,6 +1327,9 @@ const getSupports = async () => { label: item.name, value: item.id, })); + if (!typeOptions.value.every((item : any) => item.value === 'UDP')) { + formData.value.type = typeOptions.value[0].value + } } }; diff --git a/src/views/oauth/index.vue b/src/views/oauth/index.vue index c8550f64..547796f1 100644 --- a/src/views/oauth/index.vue +++ b/src/views/oauth/index.vue @@ -1,71 +1,73 @@