diff --git a/apps/web-antd/src/api/property/businessManagement/workOrdersType/index.ts b/apps/web-antd/src/api/property/businessManagement/workOrdersType/index.ts index f763dd31..acc9be74 100644 --- a/apps/web-antd/src/api/property/businessManagement/workOrdersType/index.ts +++ b/apps/web-antd/src/api/property/businessManagement/workOrdersType/index.ts @@ -12,10 +12,23 @@ import { requestClient } from '#/api/request'; export function workOrdersTypeList(params?: WorkOrdersTypeQuery) { return requestClient.get>('/property/workOrdersType/list', { params }); } +/** + * 查询工单类型不分页 + * @param params + * @returns 工单类型管理列表 + */ export function workOrdersTypeListAll(params?: WorkOrdersTypeQuery) { return requestClient.get('/property/workOrdersType/queryList', { params }); } +/** + * 查询工单类型树结构 + * @param params + */ +export function workOrdersTypeTree(params?: WorkOrdersTypeQuery) { + return requestClient.get('/property/workOrdersType/typeTree', { params }); +} + /** * 导出工单类型管理列表 * @param params diff --git a/apps/web-antd/src/views/property/assetManage/log/data.ts b/apps/web-antd/src/views/property/assetManage/log/data.ts index 96bed83e..c40ad90e 100644 --- a/apps/web-antd/src/views/property/assetManage/log/data.ts +++ b/apps/web-antd/src/views/property/assetManage/log/data.ts @@ -1,6 +1,7 @@ import type { FormSchemaGetter } from '#/adapter/form'; import type { VxeGridProps } from '#/adapter/vxe-table'; import {getDictOptions} from "#/utils/dict"; +import {renderDict} from "#/utils/render"; export const querySchema: FormSchemaGetter = () => [ @@ -69,19 +70,24 @@ export const querySchema: FormSchemaGetter = () => [ export const columns: VxeGridProps['columns'] = [ { type: 'checkbox', width: 60 }, { - title: '仓库id', - field: 'depotId', + title: '仓库', + field: 'depotName', minWidth:150, }, { - title: '资产id', - field: 'assetId', + title: '资产', + field: 'assetName', width:180, }, { title: '流转类型', field: 'type', width:120, + slots:{ + default:({row})=>{ + return renderDict(row.type,'wy_cklzlx') + } + } }, { @@ -95,8 +101,8 @@ export const columns: VxeGridProps['columns'] = [ width:150, }, { - title: '操作人id', - field: 'userId', + title: '操作人', + field: 'userName', width:150, }, { diff --git a/apps/web-antd/src/views/property/businessManagement/workOrders/data.ts b/apps/web-antd/src/views/property/businessManagement/workOrders/data.ts index 5ecf2907..0b7b199a 100644 --- a/apps/web-antd/src/views/property/businessManagement/workOrders/data.ts +++ b/apps/web-antd/src/views/property/businessManagement/workOrders/data.ts @@ -152,8 +152,7 @@ export const modalSchema: FormSchemaGetter = () => [ { label: '工单类型', fieldName: 'type', - component: 'ApiSelect', - componentProps: {}, + component: 'TreeSelect', rules: 'selectRequired', }, { diff --git a/apps/web-antd/src/views/property/businessManagement/workOrders/index.vue b/apps/web-antd/src/views/property/businessManagement/workOrders/index.vue index 26ac66cb..fef94b5f 100644 --- a/apps/web-antd/src/views/property/businessManagement/workOrders/index.vue +++ b/apps/web-antd/src/views/property/businessManagement/workOrders/index.vue @@ -17,7 +17,10 @@ import workOrdersDetail from './work-orders-detail.vue'; import ordersModal from './orders-modal.vue'; import {columns, querySchema} from './data'; import {onMounted, ref} from "vue"; -import {workOrdersTypeList} from "#/api/property/businessManagement/workOrdersType"; +import { + workOrdersTypeList, + workOrdersTypeListAll +} from "#/api/property/businessManagement/workOrdersType"; const ordersTypeList = ref([]); const ordersType = ref('0'); @@ -130,11 +133,10 @@ function handleMultiDelete() { async function queryOrderType() { let params = { - pageSize: 1000, - pageNum: 1 + filterSubNodes:true } - const res = await workOrdersTypeList(params) - ordersTypeList.value = res.rows.map((item) => ({ + const res = await workOrdersTypeListAll(params) + ordersTypeList.value = res.map((item) => ({ label: item.orderTypeName, value: item.id, })); diff --git a/apps/web-antd/src/views/property/businessManagement/workOrders/workOrders-modal.vue b/apps/web-antd/src/views/property/businessManagement/workOrders/workOrders-modal.vue index 5ccdda93..7712c344 100644 --- a/apps/web-antd/src/views/property/businessManagement/workOrders/workOrders-modal.vue +++ b/apps/web-antd/src/views/property/businessManagement/workOrders/workOrders-modal.vue @@ -14,9 +14,7 @@ import { import {defaultFormValueGetter, useBeforeCloseDiff} from '#/utils/popup'; import {modalSchema} from './data'; -import {personList} from "#/api/property/resident/person"; -import {renderDictValue} from "#/utils/render"; -import {workOrdersTypeList} from "#/api/property/businessManagement/workOrdersType"; +import {workOrdersTypeTree} from "#/api/property/businessManagement/workOrdersType"; const emit = defineEmits<{ reload: [] }>(); @@ -107,23 +105,28 @@ async function handleClosed() { } async function queryWorkOrdersType() { - let params = { - pageSize: 1000, - pageNum: 1 - } - const res = await tree(params) - const options = res.rows.map((item) => ({ - label: item.orderTypeName, - value: item.id, - })); - formApi.updateSchema([{ - componentProps: () => ({ - options: options, - filterOption: filterOption, - showSearch:true, - }), - fieldName: 'type', - }]) + const options = await workOrdersTypeTree() + formApi.updateSchema([ + { + componentProps: () => ({ + class: 'w-full', + fieldNames: { + key: 'id', + label: 'orderTypeName', + value: 'id', + children: 'children', + }, + placeholder: '请选择工单类型', + showSearch: true, + treeData: options, + treeDefaultExpandAll: true, + treeLine: { showLeafIcon: false }, + treeNodeFilterProp: 'orderTypeName', + treeNodeLabelProp: 'orderTypeName', + }), + fieldName: 'type', + }, + ]); } const filterOption = (input: string, option: any) => { diff --git a/apps/web-antd/src/views/property/businessManagement/workOrdersType/index.vue b/apps/web-antd/src/views/property/businessManagement/workOrdersType/index.vue index 13610bd7..cc2a8f58 100644 --- a/apps/web-antd/src/views/property/businessManagement/workOrdersType/index.vue +++ b/apps/web-antd/src/views/property/businessManagement/workOrdersType/index.vue @@ -94,6 +94,7 @@ async function handleEdit(row: Required) { } async function handleDelete(row: Required) { + console.log(row,'======row') await workOrdersTypeRemove(row.id); await tableApi.query(); } @@ -158,6 +159,7 @@ function handleMultiDelete() { danger v-access:code="['property:workOrdersType:remove']" @click.stop="" + :disabled="row.children?.length>0" > {{ $t('pages.common.delete') }} diff --git a/apps/web-antd/src/views/property/inspectionManagement/inspectionDetails/data.ts b/apps/web-antd/src/views/property/inspectionManagement/inspectionDetails/data.ts index 7b141b66..78bb0a82 100644 --- a/apps/web-antd/src/views/property/inspectionManagement/inspectionDetails/data.ts +++ b/apps/web-antd/src/views/property/inspectionManagement/inspectionDetails/data.ts @@ -32,49 +32,26 @@ export const querySchema: FormSchemaGetter = () => [ export const columns: VxeGridProps['columns'] = [ { type: 'checkbox', width: 60 }, - // { - // title: '任务编号', - // field: 'id', - // width:'auto' - // }, - // { - // title: '巡检计划', - // field: 'planName', - // minWidth:200 - // }, - // { - // title: '巡检时间范围', - // field: 'planInsTime', - // width:'auto' - // - // }, - // // { - // // title: '实际巡检时间', - // // field: 'endDate', - // // width:180 - // // - // // }, - // { - // title: '签到状态', - // field: 'actInsTime', - // width:150, - // }, - // { - // title: '巡检人', - // field: 'planUserName', - // width:'auto' - // - // }, - // { - // title: '巡检方式', - // field: 'taskType', - // width:'auto', - // slots: { - // default: ({ row }) => { - // return renderDict(row.taskType, 'wy_xjqdfs'); - // }, - // }, - // }, + { + title: '巡检计划', + field: 'planId', + minWidth:200 + }, + { + title: '巡检任务', + field: 'taskId', + width:150 + }, + { + title: '巡检路线', + field: 'routeId', + width:150 + }, + { + title: '巡检点', + field: 'pointId', + width:150 + }, { title: '签到类型', field: 'signType', @@ -118,7 +95,7 @@ export const columns: VxeGridProps['columns'] = [ { title: '备注', field: 'remark', - minWidth:120 + width:180 }, // { // field: 'action',