diff --git a/src/api/iot-card/cardManagement.ts b/src/api/iot-card/cardManagement.ts index 4297f5b6..297b3d27 100644 --- a/src/api/iot-card/cardManagement.ts +++ b/src/api/iot-card/cardManagement.ts @@ -26,13 +26,13 @@ export const unDeploy = (cardId: string) => server.get(`/network/card/${cardId}/ /** * 复机已停机物联卡 - * @param cardId + * @param cardId */ export const resumption = (cardId: string) => server.get(`/network/card/${cardId}/_resumption`); /** * 删除物联卡 - * @param id + * @param id */ export const del = (id: string) => server.remove(`/network/card/${id}`); @@ -139,4 +139,7 @@ export const queryRechargeList = (data: any) => server.post(`/network/card/recha * 充值 * @param data */ -export const recharge = (data: any) => server.post(`/network/card/_recharge`, data) \ No newline at end of file +export const recharge = (data: any) => server.post(`/network/card/_recharge`, data) +export const queryCount = (data: any) => server.post(`/network/card/_count`,data) + +export const queryDeactivate = (id: string) => server.get(`/network/card/${id}/stop/reason`) diff --git a/src/views/Log/Access/index.vue b/src/views/Log/Access/index.vue index a5ad700d..7cbe6f91 100644 --- a/src/views/Log/Access/index.vue +++ b/src/views/Log/Access/index.vue @@ -25,8 +25,8 @@ - - + + {{ slotProps.context.userName }} @@ -34,9 +34,9 @@ - - - + + + - + {{ descriptionsData.exception }} diff --git a/src/views/Log/System/index.vue b/src/views/Log/System/index.vue index 791c63af..84c4adfb 100644 --- a/src/views/Log/System/index.vue +++ b/src/views/Log/System/index.vue @@ -92,11 +92,14 @@ {{ descriptionsData?.message }} - + + {{ descriptionsData.exceptionStack }} + + + + + + 关闭 @@ -254,4 +257,9 @@ const handleSearch = (e: any) => { .mb-10 { margin-bottom: 10px; } +.warn-content { + border: 1px solid #d9d9d9; + padding: 12px; + border-radius: 2px; +} diff --git a/src/views/device/components/Metadata/Base/hooks/useMatadata.ts b/src/views/device/components/Metadata/Base/hooks/useMatadata.ts index fbbddf20..1c73210e 100644 --- a/src/views/device/components/Metadata/Base/hooks/useMatadata.ts +++ b/src/views/device/components/Metadata/Base/hooks/useMatadata.ts @@ -20,8 +20,11 @@ const useMetadata = (type: 'device' | 'product', key?: MetadataType, ): { const { current: productCurrent } = storeToRefs(productStore) const handleMetadata = (_metadataStr: string) => { + + if(!_metadataStr) return + const fileTypeReg = new RegExp('"fileType":',"g") - const _dealMetadata = _metadataStr.replaceAll(fileTypeReg,'"bodyType":') + const _dealMetadata = _metadataStr.replace(fileTypeReg,'"bodyType":') const _metadata = JSON.parse(_dealMetadata || '{}') const newMetadata = (key ? _metadata?.[key] || [] : []) as any[] @@ -89,4 +92,4 @@ const useMetadata = (type: 'device' | 'product', key?: MetadataType, ): { productNoEdit } } -export default useMetadata \ No newline at end of file +export default useMetadata diff --git a/src/views/iot-card/CardManagement/Detail/index.vue b/src/views/iot-card/CardManagement/Detail/index.vue index 22d38f22..a69dc134 100644 --- a/src/views/iot-card/CardManagement/Detail/index.vue +++ b/src/views/iot-card/CardManagement/Detail/index.vue @@ -83,9 +83,18 @@ ? detail.residualFlow.toFixed(2) + ' M' : '' }} - {{ + + {{ detail?.cardState?.text - }} + }} + + + + + + {{ detail?.describe }} @@ -178,10 +187,10 @@ - + + diff --git a/src/views/iot-card/CardManagement/index.vue b/src/views/iot-card/CardManagement/index.vue index 317cee49..b4b35a83 100644 --- a/src/views/iot-card/CardManagement/index.vue +++ b/src/views/iot-card/CardManagement/index.vue @@ -370,6 +370,12 @@ :data="current" @change="saveChange" /> + + @@ -403,6 +409,7 @@ import { BatchActionsType } from '@/components/BatchDropdown/types'; import { usePermissionStore } from 'store/permission'; import { useRouterParams } from '@/utils/hooks/useParams'; import { OperatorMap } from '@/views/iot-card/data'; +import SyncModal from './Sync.vue' const router = useRouter(); const menuStory = useMenuStore(); @@ -418,6 +425,7 @@ const cardId = ref(); const current = ref>({}); const saveType = ref(''); const isCheck = ref(false); +const syncVisible = ref(false) const columns = [ { @@ -901,19 +909,28 @@ const handleResumption = () => { * 同步状态 */ const handleSync = async() => { - if (!_selectedRowKeys.value.length) { - onlyMessage('请选择数据', 'error'); - return; - } - const resp = await sync( - _selectedRowKeys.value.map((v) => ({ id: v })), - ); - - if (resp.status === 200) { - _selectedRowKeys.value = []; - cardManageRef.value?.reload(); - onlyMessage('同步状态成功'); - } + syncVisible.value = true + // if (!_selectedRowKeys.value.length) { + // onlyMessage('请选择数据', 'error'); + // return; + // } + + // const api = `${BASE_API_PATH}/network/card/state/_sync` + // const _source = new EventSourcePolyfill(api) + // + // _source.onmessage = (e: any) => { + // console.log(e) + // } + // + // const resp = await sync( + // _selectedRowKeys.value.map((v) => ({ id: v })), + // ); + // + // if (resp.status === 200) { + // _selectedRowKeys.value = []; + // cardManageRef.value?.reload(); + // onlyMessage('同步状态成功'); + // } }; /** @@ -998,12 +1015,7 @@ const batchActions: BatchActionsType[] = [ type: 'primary', permission: 'iot-card/CardManagement:sync', icon: 'SwapOutlined', - selected:{ - popConfirm: { - title: '确认同步状态吗?', - onConfirm: handleSync, - }, - }, + onClick: handleSync }, { key: 'delete', @@ -1020,6 +1032,11 @@ const batchActions: BatchActionsType[] = [ }, ]; +const syncClose = () => { + syncVisible.value = false + cardManageRef.value?.reload(); +} + onMounted(() => { if (routerParams.params.value.type === 'add' && paltformPermission) { handleAdd(); diff --git a/src/views/link/Certificate/Detail/index.vue b/src/views/link/Certificate/Detail/index.vue index 073d7179..3f36325e 100644 --- a/src/views/link/Certificate/Detail/index.vue +++ b/src/views/link/Certificate/Detail/index.vue @@ -185,7 +185,7 @@ const detail = async (id: string) => { cert: result.configs?.cert ? result.configs?.cert : result.configs?.trust }, mode: result.mode.value, - authenticationMethod: result.authenticationMethod.value, + authenticationMethod: result.authenticationMethod?.value, type, }; } diff --git a/src/views/media/Device/Channel/Live/Preset.vue b/src/views/media/Device/Channel/Live/Preset.vue index fc9bceae..15d2ea94 100644 --- a/src/views/media/Device/Channel/Live/Preset.vue +++ b/src/views/media/Device/Channel/Live/Preset.vue @@ -96,9 +96,14 @@ const init = new Array(50).fill(0).map((_, index) => { const dataSource = ref(init); const loading = ref(false); +const route = useRoute() const handleSearch = async (id: string, arr: Item[]) => { - const resp = await channelApi.opFunction(id, 'QueryPreset'); + const params: Record = {} + if (route.query.type === 'gb28181-2016') { + params.channel = props.data.channelId + } + const resp = await channelApi.opFunction(id, 'QueryPreset', params); if (resp.status === 200) { dataSource.value = unionBy([ ...arr, ...init], 'id').map((item) => { const _item = (resp.result?.[0] || []).find( @@ -204,4 +209,4 @@ watch( immediate: true, }, ); - \ No newline at end of file + diff --git a/vite.config.ts b/vite.config.ts index 68324a81..79e52be8 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -96,11 +96,12 @@ export default defineConfig(({ mode}) => { // target: 'http://192.168.32.244:8881', // target: 'http://192.168.32.163:8844', //张本地 // target: 'http://120.77.179.54:8844', // 120测试 - target: 'http://192.168.33.46:8844', // 本地开发环境 + target: 'http://192.168.32.66:8800', // 本地开发环境 // target: 'http://192.168.32.167:8844', // 本地开发环境1 // target: 'http://192.168.33.1:8848', // 社区版开发环境 // target: 'http://192.168.32.207:8844', // 刘本地 // target: 'http://192.168.32.187:8844', // 谭本地 + // target: 'http://192.168.33.66:8844', // 苟本地 ws: 'ws://192.168.33.46:8844', changeOrigin: true, rewrite: (path) => path.replace(/^\/api/, '')