diff --git a/apps/web-antd/src/router/routes/modules/iot.ts b/apps/web-antd/src/router/routes/modules/iot.ts index c90a5978f..3e7f87caf 100644 --- a/apps/web-antd/src/router/routes/modules/iot.ts +++ b/apps/web-antd/src/router/routes/modules/iot.ts @@ -18,7 +18,8 @@ const routes: RouteRecordRaw[] = [ title: '产品详情', activePath: '/iot/device/product', }, - component: () => import('#/views/iot/product/product/modules/detail/index.vue'), + component: () => + import('#/views/iot/product/product/modules/detail/index.vue'), }, { path: 'device/detail/:id', @@ -27,7 +28,8 @@ const routes: RouteRecordRaw[] = [ title: '设备详情', activePath: '/iot/device/device', }, - component: () => import('#/views/iot/device/device/modules/detail/index.vue'), + component: () => + import('#/views/iot/device/device/modules/detail/index.vue'), }, { path: 'ota/firmware/detail/:id', @@ -36,11 +38,11 @@ const routes: RouteRecordRaw[] = [ title: '固件详情', activePath: '/iot/ota', }, - component: () => import('#/views/iot/ota/modules/firmware-detail/index.vue'), + component: () => + import('#/views/iot/ota/modules/firmware-detail/index.vue'), }, ], }, ]; export default routes; - diff --git a/apps/web-antd/src/views/crm/backlog/modules/clue-follow-list.vue b/apps/web-antd/src/views/crm/backlog/modules/clue-follow-list.vue index ec06445f6..64776fd3f 100644 --- a/apps/web-antd/src/views/crm/backlog/modules/clue-follow-list.vue +++ b/apps/web-antd/src/views/crm/backlog/modules/clue-follow-list.vue @@ -26,7 +26,7 @@ const [Grid] = useVbenVxeGrid({ { fieldName: 'followUpStatus', label: '状态', - component: 'Select', + component: 'RadioGroup', componentProps: { allowClear: true, options: FOLLOWUP_STATUS, diff --git a/apps/web-antd/src/views/crm/backlog/modules/customer-follow-list.vue b/apps/web-antd/src/views/crm/backlog/modules/customer-follow-list.vue index 284a0ddc8..6e344d072 100644 --- a/apps/web-antd/src/views/crm/backlog/modules/customer-follow-list.vue +++ b/apps/web-antd/src/views/crm/backlog/modules/customer-follow-list.vue @@ -26,7 +26,7 @@ const [Grid] = useVbenVxeGrid({ { fieldName: 'followUpStatus', label: '状态', - component: 'Select', + component: 'RadioGroup', componentProps: { allowClear: true, options: FOLLOWUP_STATUS, diff --git a/apps/web-antd/src/views/crm/clue/data.ts b/apps/web-antd/src/views/crm/clue/data.ts index b19102343..2cd328dde 100644 --- a/apps/web-antd/src/views/crm/clue/data.ts +++ b/apps/web-antd/src/views/crm/clue/data.ts @@ -171,7 +171,7 @@ export function useGridFormSchema(): VbenFormSchema[] { { fieldName: 'transformStatus', label: '转化状态', - component: 'Select', + component: 'RadioGroup', componentProps: { options: [ { label: '未转化', value: false }, diff --git a/apps/web-antd/src/views/iot/alert/config/data.ts b/apps/web-antd/src/views/iot/alert/config/data.ts index 2eb226b36..c45a95a74 100644 --- a/apps/web-antd/src/views/iot/alert/config/data.ts +++ b/apps/web-antd/src/views/iot/alert/config/data.ts @@ -76,7 +76,7 @@ export function useFormSchema(): VbenFormSchema[] { label: '接收的用户', component: 'ApiSelect', componentProps: { - api: () => getSimpleUserList(), + api: getSimpleUserList, labelField: 'nickname', valueField: 'id', mode: 'multiple', @@ -124,7 +124,10 @@ export function useGridFormSchema(): VbenFormSchema[] { fieldName: 'createTime', label: '创建时间', component: 'RangePicker', - componentProps: getRangePickerDefaultProps(), + componentProps: { + ...getRangePickerDefaultProps(), + allowClear: true, + }, }, ]; } diff --git a/apps/web-antd/src/views/iot/alert/record/data.ts b/apps/web-antd/src/views/iot/alert/record/data.ts index 70b13b267..2c5ef9a84 100644 --- a/apps/web-antd/src/views/iot/alert/record/data.ts +++ b/apps/web-antd/src/views/iot/alert/record/data.ts @@ -17,7 +17,7 @@ export function useGridFormSchema(): VbenFormSchema[] { label: '告警配置', component: 'ApiSelect', componentProps: { - api: () => getSimpleAlertConfigList(), + api: getSimpleAlertConfigList, labelField: 'name', valueField: 'id', placeholder: '请选择告警配置', @@ -40,7 +40,7 @@ export function useGridFormSchema(): VbenFormSchema[] { label: '产品', component: 'ApiSelect', componentProps: { - api: () => getSimpleProductList(), + api: getSimpleProductList, labelField: 'name', valueField: 'id', placeholder: '请选择产品', @@ -53,7 +53,7 @@ export function useGridFormSchema(): VbenFormSchema[] { label: '设备', component: 'ApiSelect', componentProps: { - api: () => getSimpleDeviceList(), + api: getSimpleDeviceList, labelField: 'deviceName', valueField: 'id', placeholder: '请选择设备', @@ -75,7 +75,10 @@ export function useGridFormSchema(): VbenFormSchema[] { fieldName: 'createTime', label: '创建时间', component: 'RangePicker', - componentProps: getRangePickerDefaultProps(), + componentProps: { + ...getRangePickerDefaultProps(), + allowClear: true, + }, }, ]; } diff --git a/apps/web-antd/src/views/iot/device/device/data.ts b/apps/web-antd/src/views/iot/device/device/data.ts index a2fef45e8..424f0ef92 100644 --- a/apps/web-antd/src/views/iot/device/device/data.ts +++ b/apps/web-antd/src/views/iot/device/device/data.ts @@ -28,7 +28,7 @@ export function useFormSchema(): VbenFormSchema[] { label: '产品', component: 'ApiSelect', componentProps: { - api: () => getSimpleProductList(), + api: getSimpleProductList, labelField: 'name', valueField: 'id', placeholder: '请选择产品', @@ -89,7 +89,7 @@ export function useFormSchema(): VbenFormSchema[] { label: '设备分组', component: 'ApiSelect', componentProps: { - api: () => getSimpleDeviceGroupList(), + api: getSimpleDeviceGroupList, labelField: 'name', valueField: 'id', mode: 'multiple', @@ -156,7 +156,7 @@ export function useGroupFormSchema(): VbenFormSchema[] { label: '设备分组', component: 'ApiSelect', componentProps: { - api: () => getSimpleDeviceGroupList(), + api: getSimpleDeviceGroupList, labelField: 'name', valueField: 'id', mode: 'multiple', @@ -199,7 +199,7 @@ export function useGridFormSchema(): VbenFormSchema[] { label: '产品', component: 'ApiSelect', componentProps: { - api: () => getSimpleProductList(), + api: getSimpleProductList, labelField: 'name', valueField: 'id', placeholder: '请选择产品', @@ -249,7 +249,7 @@ export function useGridFormSchema(): VbenFormSchema[] { label: '设备分组', component: 'ApiSelect', componentProps: { - api: () => getSimpleDeviceGroupList(), + api: getSimpleDeviceGroupList, labelField: 'name', valueField: 'id', placeholder: '请选择设备分组', diff --git a/apps/web-antd/src/views/iot/device/group/data.ts b/apps/web-antd/src/views/iot/device/group/data.ts index 3ea5a12da..0bc313e52 100644 --- a/apps/web-antd/src/views/iot/device/group/data.ts +++ b/apps/web-antd/src/views/iot/device/group/data.ts @@ -34,7 +34,7 @@ export function useFormSchema(): VbenFormSchema[] { label: '父级分组', component: 'ApiTreeSelect', componentProps: { - api: () => getSimpleDeviceGroupList(), + api: getSimpleDeviceGroupList, labelField: 'name', valueField: 'id', placeholder: '请选择父级分组', diff --git a/apps/web-antd/src/views/iot/ota/data.ts b/apps/web-antd/src/views/iot/ota/data.ts index 287cb00bc..ff9ba6ee1 100644 --- a/apps/web-antd/src/views/iot/ota/data.ts +++ b/apps/web-antd/src/views/iot/ota/data.ts @@ -29,7 +29,7 @@ export function useFormSchema(): VbenFormSchema[] { label: '所属产品', component: 'ApiSelect', componentProps: { - api: () => getSimpleProductList(), + api: getSimpleProductList, labelField: 'name', valueField: 'id', placeholder: '请选择产品', @@ -85,7 +85,7 @@ export function useGridFormSchema(): VbenFormSchema[] { label: '产品', component: 'ApiSelect', componentProps: { - api: () => getSimpleProductList(), + api: getSimpleProductList, labelField: 'name', valueField: 'id', placeholder: '请选择产品', @@ -96,7 +96,10 @@ export function useGridFormSchema(): VbenFormSchema[] { fieldName: 'createTime', label: '创建时间', component: 'RangePicker', - componentProps: getRangePickerDefaultProps(), + componentProps: { + ...getRangePickerDefaultProps(), + allowClear: true, + }, }, ]; } diff --git a/apps/web-antd/src/views/iot/ota/firmware/data.ts b/apps/web-antd/src/views/iot/ota/firmware/data.ts index de4195809..7b684dba9 100644 --- a/apps/web-antd/src/views/iot/ota/firmware/data.ts +++ b/apps/web-antd/src/views/iot/ota/firmware/data.ts @@ -29,7 +29,7 @@ export function useFormSchema(): VbenFormSchema[] { label: '所属产品', component: 'ApiSelect', componentProps: { - api: () => getSimpleProductList(), + api: getSimpleProductList, labelField: 'name', valueField: 'id', placeholder: '请选择产品', @@ -86,7 +86,7 @@ export function useGridFormSchema(): VbenFormSchema[] { label: '产品', component: 'ApiSelect', componentProps: { - api: () => getSimpleProductList(), + api: getSimpleProductList, labelField: 'name', valueField: 'id', placeholder: '请选择产品', @@ -97,7 +97,10 @@ export function useGridFormSchema(): VbenFormSchema[] { fieldName: 'createTime', label: '创建时间', component: 'RangePicker', - componentProps: getRangePickerDefaultProps(), + componentProps: { + ...getRangePickerDefaultProps(), + allowClear: true, + }, }, ]; } diff --git a/apps/web-antd/src/views/iot/ota/firmware/index.vue b/apps/web-antd/src/views/iot/ota/firmware/index.vue index cfbdc2b93..e0f3fb906 100644 --- a/apps/web-antd/src/views/iot/ota/firmware/index.vue +++ b/apps/web-antd/src/views/iot/ota/firmware/index.vue @@ -2,9 +2,10 @@ import type { VxeTableGridOptions } from '#/adapter/vxe-table'; import type { IoTOtaFirmwareApi } from '#/api/iot/ota/firmware'; +import { useRouter } from 'vue-router'; + import { Page, useVbenModal } from '@vben/common-ui'; import { IconifyIcon } from '@vben/icons'; -import { useRouter } from 'vue-router'; import { message } from 'ant-design-vue'; @@ -39,7 +40,6 @@ function handleEdit(row: IoTOtaFirmwareApi.Firmware) { formModalApi.setData({ type: 'update', id: row.id }).open(); } - /** 删除固件 */ async function handleDelete(row: IoTOtaFirmwareApi.Firmware) { const hideLoading = message.loading({ @@ -117,19 +117,25 @@ const [Grid, gridApi] = useVbenVxeGrid({ +
+ + + 下载固件 + +
+ 无文件 +