diff --git a/public/images/access-icon.png b/public/images/access-media.png similarity index 100% rename from public/images/access-icon.png rename to public/images/access-media.png diff --git a/public/images/access-network.png b/public/images/access-network.png index 90828abe..2bd14ec6 100644 Binary files a/public/images/access-network.png and b/public/images/access-network.png differ diff --git a/public/images/access-protocol.png b/public/images/access-protocol.png index 37b8158e..628ec99b 100644 Binary files a/public/images/access-protocol.png and b/public/images/access-protocol.png differ diff --git a/src/App.vue b/src/App.vue index b61b8ee9..1206b11a 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,5 +1,10 @@ diff --git a/src/api/device/product.ts b/src/api/device/product.ts index b366b94a..df3741d5 100644 --- a/src/api/device/product.ts +++ b/src/api/device/product.ts @@ -194,4 +194,4 @@ export const getMetadataConfig = (params: { id: string; dataType: string; }; -}) => server.get[]>(`/device/product/${params.deviceId}/config-metadata/${params.metadata.type}/${params.metadata.id}/${params.metadata.dataType}`) \ No newline at end of file +}) => server.get[]>(`/device/product/${params.deviceId}/config-metadata/${params.metadata.type}/${params.metadata.id}/${params.metadata.dataType}`) diff --git a/src/components/Layout/BasicLayoutPage.vue b/src/components/Layout/BasicLayoutPage.vue index 7a7ca687..71ebdcc8 100644 --- a/src/components/Layout/BasicLayoutPage.vue +++ b/src/components/Layout/BasicLayoutPage.vue @@ -6,6 +6,7 @@ v-model:selectedKeys="state.selectedKeys" :pure="state.pure" :breadcrumb="{ routes: breadcrumb }" + @backClick='routerBack' > + - + {{ descriptionsData?.url }} @@ -112,6 +110,9 @@ /> + diff --git a/src/views/device/DashBoard/index.vue b/src/views/device/DashBoard/index.vue index bdd884d9..457a1466 100644 --- a/src/views/device/DashBoard/index.vue +++ b/src/views/device/DashBoard/index.vue @@ -364,7 +364,7 @@ const setDevMesChartOption = ( grid: { top: '2%', bottom: '5%', - left: maxY > 100000 ? '90px' : '60px', + left: maxY > 100000 ? '50px' : '70px', right: '50px', }, series: [ diff --git a/src/views/device/Firmware/Save/index.vue b/src/views/device/Firmware/Save/index.vue index c7209f7f..331bba0e 100644 --- a/src/views/device/Firmware/Save/index.vue +++ b/src/views/device/Firmware/Save/index.vue @@ -237,6 +237,8 @@ const emit = defineEmits(['change']); const id = props.data.id; const VersionOrder = props.data.versionOrder; +const VersionSign = props.data.sign; +const VersionUrl = props.data.url; const formData: any = ref({ name: '', @@ -254,12 +256,14 @@ const extraValue: any = ref({}); const validatorSign = async (_: Record, value: string) => { const { signMethod, url } = formData.value; - if (value && !!signMethod && !!url && !extraValue.value) { - return extraValue.value[signMethod] !== value - ? Promise.reject('签名不一致,请检查文件是否上传正确') - : Promise.resolve(); - } else { + if (id && VersionSign === value && VersionUrl === url) { return Promise.resolve(); + } else { + if (value && !!signMethod && !!url && !!extraValue.value) { + return extraValue.value[signMethod] !== value + ? Promise.reject('签名不一致,请检查文件是否上传正确') + : Promise.resolve(); + } } }; const validatorVersionOrder = async (_: Record, value: string) => { @@ -270,7 +274,9 @@ const validatorVersionOrder = async (_: Record, value: string) => { if (value && !!signMethod && productId) { const res = await validateVersion(productId, value); if (res.status === 200) { - return Promise.reject(res.result ? '版本序号已存在' : ''); + return res.result + ? Promise.reject('版本序号已存在') + : Promise.resolve(); } } } diff --git a/src/views/device/Firmware/Task/Detail/index.vue b/src/views/device/Firmware/Task/Detail/index.vue index 7eec3d8e..e677650a 100644 --- a/src/views/device/Firmware/Task/Detail/index.vue +++ b/src/views/device/Firmware/Task/Detail/index.vue @@ -280,7 +280,7 @@ const getActions = (data: Partial>): ActionsType[] => { if (!data) { return []; } - const Actions = [ + const Actions: any = [ { key: 'view', text: '查看', @@ -292,7 +292,11 @@ const getActions = (data: Partial>): ActionsType[] => { handlEye(data.errorReason); }, }, - { + ]; + + const { state, mode } = data; + if (mode.value === 'push' && state.value === 'failed') { + Actions.push({ key: 'update', text: '重试', tooltip: { @@ -305,8 +309,9 @@ const getActions = (data: Partial>): ActionsType[] => { handlTry(data.id); }, }, - }, - ]; + }); + } + return Actions; }; diff --git a/src/views/device/Firmware/Task/Save/index.vue b/src/views/device/Firmware/Task/Save/index.vue index 89bdb16b..b4658025 100644 --- a/src/views/device/Firmware/Task/Save/index.vue +++ b/src/views/device/Firmware/Task/Save/index.vue @@ -208,10 +208,4 @@ watch( ); - + diff --git a/src/views/device/Firmware/index.vue b/src/views/device/Firmware/index.vue index 8d2f406d..7260fe16 100644 --- a/src/views/device/Firmware/index.vue +++ b/src/views/device/Firmware/index.vue @@ -143,7 +143,7 @@ const columns = [ key: 'createTime', dataIndex: 'createTime', search: { - type: 'time', + type: 'date', }, width: 200, scopedSlots: true, @@ -197,6 +197,9 @@ const getActions = (data: Partial>): ActionsType[] => { { key: 'delete', text: '删除', + tooltip: { + title: '删除', + }, popConfirm: { title: '确认删除?', okText: ' 确定', diff --git a/src/views/device/Instance/Detail/ChildDevice/index.vue b/src/views/device/Instance/Detail/ChildDevice/index.vue index d723385f..c39b0489 100644 --- a/src/views/device/Instance/Detail/ChildDevice/index.vue +++ b/src/views/device/Instance/Detail/ChildDevice/index.vue @@ -147,6 +147,10 @@ const columns = [ dataIndex: 'id', key: 'id', ellipsis: true, + search:{ + type:'string', + defaultTermType: 'eq' + } }, { title: '设备名称', diff --git a/src/views/device/Instance/Detail/index.vue b/src/views/device/Instance/Detail/index.vue index 0df755d7..081b6b96 100644 --- a/src/views/device/Instance/Detail/index.vue +++ b/src/views/device/Instance/Detail/index.vue @@ -1,101 +1,91 @@