Browse Source

点位修改

ops-management-platform-frontend-dev
wbc 2 weeks ago
parent
commit
c44d679fbf
  1. 4
      src/views/IO/workOrder/orderAudit/auditModal.vue
  2. 2
      src/views/IO/workOrder/orderSearch/api.ts
  3. 24
      src/views/IO/workOrder/orderSearch/data.ts
  4. 40
      src/views/IO/workOrder/orderSearch/index.vue
  5. 2
      src/views/IO/workOrder/orderSend/index.vue
  6. 77
      src/views/IO/workOrder/orderSend/sendModal.vue
  7. 8
      src/views/property/point/data.ts
  8. 1
      src/views/property/point/index.vue

4
src/views/IO/workOrder/orderAudit/auditModal.vue

@ -174,8 +174,8 @@
orderTakingCost: [{ required: true, message: '请输入' }], orderTakingCost: [{ required: true, message: '请输入' }],
isHandleOverTime: [{ required: true, message: '请选择' }], isHandleOverTime: [{ required: true, message: '请选择' }],
handleCost: [{ required: true, message: '请输入' }], handleCost: [{ required: true, message: '请输入' }],
otherCost: [{ required: true, message: '请输入' }], // otherCost: [{ required: true, message: '' }],
otherCostReason: [{ required: true, message: '请输入' }], // otherCostReason: [{ required: true, message: '' }],
auditOpinion: [{ required: true, message: '请输入' }], auditOpinion: [{ required: true, message: '请输入' }],
// isCloseCase: [{ required: true, message: '' }], // isCloseCase: [{ required: true, message: '' }],
}; };

2
src/views/IO/workOrder/orderSearch/api.ts

@ -4,7 +4,6 @@ import { defHttp } from '@/utils/http/axios';
enum Api { enum Api {
root = '/platform/workOrder', root = '/platform/workOrder',
list = '/platform/workOrder/list', list = '/platform/workOrder/list',
export = '/workflow/leave/export',
getSubcategoryType = '/platform/subcategoryType/list', getSubcategoryType = '/platform/subcategoryType/list',
workOrderAdd = '/platform/workOrder/add', workOrderAdd = '/platform/workOrder/add',
getProjectInfo = '/platform/projectInfo/getNames', getProjectInfo = '/platform/projectInfo/getNames',
@ -14,6 +13,7 @@ enum Api {
dealInfo = '/platform/dealInfo/getInfoByOrderId', dealInfo = '/platform/dealInfo/getInfoByOrderId',
getOrderDelayHistory = '/platform/orderDelayHistory/queryByWorkOrderId', getOrderDelayHistory = '/platform/orderDelayHistory/queryByWorkOrderId',
getIoCompanyByName = '/platform/contractInfo/getIoCompany', getIoCompanyByName = '/platform/contractInfo/getIoCompany',
export = '/platform/excel/ExportPointInfo',
} }

24
src/views/IO/workOrder/orderSearch/data.ts

@ -88,6 +88,30 @@ export const formSchemas: FormSchema[] = [
options: [], options: [],
}, },
}, },
{
label: '编号',
field: 'id',
component: 'Input',
componentProps: {
placeholder: '输入编号',
},
},
{
field: 'faultLocation',
label: '故障地点',
component: 'Select',
componentProps: {
options: [],
},
},
{
field: 'status',
label: '当前状态',
component: 'Select',
componentProps: {
options: statusOptions,
},
},
]; ];
export const columns: BasicColumn[] = [ export const columns: BasicColumn[] = [

40
src/views/IO/workOrder/orderSearch/index.vue

@ -2,7 +2,11 @@
<PageWrapper dense> <PageWrapper dense>
<BasicTable @register="registerTable"> <BasicTable @register="registerTable">
<template #toolbar> <template #toolbar>
<a-button type="primary" @click="showFaultModal">故障上报</a-button> <!-- <a-button type="primary" @click="showFaultModal">故障上报</a-button> -->
<a-button
@click="downloadExcel(exportExcel, '工单信息', getForm().getFieldsValue())"
>工单导出</a-button
>
</template> </template>
<template #bodyCell="{ column, record }"> <template #bodyCell="{ column, record }">
<template v-if="column && record && column.key === 'action'"> <template v-if="column && record && column.key === 'action'">
@ -10,21 +14,22 @@
</template> </template>
</template> </template>
</BasicTable> </BasicTable>
<faultModal ref="falutModalRef" @success="reload()"/> <faultModal ref="falutModalRef" @success="reload()" />
<detailDrawer ref="detailDrawerRef"/> <detailDrawer ref="detailDrawerRef" />
</PageWrapper> </PageWrapper>
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import { PageWrapper } from '@/components/Page'; import { PageWrapper } from '@/components/Page';
import { BasicTable, useTable } from '@/components/Table'; import { BasicTable, useTable } from '@/components/Table';
import { list, getProjectInfo,getSubcategoryType } from './api'; import { queryPointNames } from '@/api/common/index';
import { list, getProjectInfo, getSubcategoryType, exportExcel } from './api';
import { formSchemas, columns } from './data'; import { formSchemas, columns } from './data';
import faultModal from './faultModal.vue'; import faultModal from './faultModal.vue';
import detailDrawer from './detailDrawer.vue'; import detailDrawer from './detailDrawer.vue';
import { ref,onActivated } from 'vue'; import { ref, onActivated } from 'vue';
import { downloadExcel } from '@/utils/file/download';
const [registerTable,{reload}] = useTable({ const [registerTable, { getForm, reload }] = useTable({
title: '工单搜索', title: '工单搜索',
api: list, api: list,
showIndexColumn: true, showIndexColumn: true,
@ -76,16 +81,27 @@
i.value = i.typeName; i.value = i.typeName;
i.label = i.typeName; i.label = i.typeName;
}); });
formSchemas[4].componentProps.options = projectOptions.value; formSchemas[4].componentProps.options = faultSubcategoryOptions.value;
};
const faultLocationOptions = ref([]);
const getFaultLocationOptions = async () => {
const res = await queryPointNames();
faultLocationOptions.value = res;
faultLocationOptions.value.forEach((i: any) => {
i.value = i.pointName;
i.label = i.pointName;
});
formSchemas[6].componentProps.options = faultLocationOptions.value;
}; };
const getOptions = () => { const getOptions = () => {
getProjectOptions(); getProjectOptions();
getFaultSubcategoryOptions() getFaultSubcategoryOptions();
getFaultLocationOptions();
}; };
getOptions(); getOptions();
onActivated(()=>{ onActivated(() => {
reload() reload();
}) });
// //
</script> </script>

2
src/views/IO/workOrder/orderSend/index.vue

@ -2,7 +2,7 @@
<PageWrapper dense> <PageWrapper dense>
<BasicTable @register="registerTable"> <BasicTable @register="registerTable">
<template #toolbar> <template #toolbar>
<!-- <a-button type="primary" @click="showFaultModal">故障上报</a-button> --> <a-button type="primary" @click="showFaultModal">故障上报</a-button>
</template> </template>
<template #bodyCell="{ column, record }"> <template #bodyCell="{ column, record }">
<template v-if="column && record && column.key === 'action'"> <template v-if="column && record && column.key === 'action'">

77
src/views/IO/workOrder/orderSend/sendModal.vue

@ -1,5 +1,5 @@
<template> <template>
<a-modal v-model:open="visible" :title="title" @ok="handleOk" width="50%" @cancel="closeModal"> <a-modal v-model:open="visible" :title="title" @ok="handleOk" width="50%" @cancel="closeModal">
<a-form :model="form" layout="vertical" ref="formRef" :rules="rules"> <a-form :model="form" layout="vertical" ref="formRef" :rules="rules">
<a-row :gutter="[16, 16]"> <a-row :gutter="[16, 16]">
<a-col :span="24"> <a-col :span="24">
@ -11,14 +11,25 @@
<a-row :gutter="[16, 16]"> <a-row :gutter="[16, 16]">
<a-col :span="24"> <a-col :span="24">
<a-form-item label="所属合同" name="contractName"> <a-form-item label="所属合同" name="contractName">
<a-input v-model:value="form.contractName" disabled /> <a-select
v-model:value="form.contractName"
:options="contractNameOptions"
placeholder="请选择"
:disabled="!form.projectName"
:fieldNames="{
label: 'contractName',
value: 'contractName',
options: 'options',
}"
@change="contractNameChange"
/>
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row :gutter="[16, 16]"> <a-row :gutter="[16, 16]">
<a-col :span="24"> <a-col :span="24">
<a-form-item label="操作处理" name="handle"> <a-form-item label="操作处理" name="handle">
<a-select v-model:value="form.handle" :options="handleOptions" placeholder="请选择" /> <a-select v-model:value="form.handle" :options="handleOptions" placeholder="请选择" />
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
@ -29,25 +40,28 @@
v-model:value="form.maintenanceRequirement" v-model:value="form.maintenanceRequirement"
:options="maintenanceRequirementOptions" :options="maintenanceRequirementOptions"
placeholder="请选择" placeholder="请选择"
/> />
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row :gutter="[16, 16]" v-if="form.handle=='事件派遣'"> <a-row :gutter="[16, 16]" v-if="form.handle != '事件作废'">
<a-col :span="24"> <a-col :span="24">
<a-form-item label="维护单位" name="maintenanceUnit" > <a-form-item label="维护单位" name="maintenanceUnit">
<a-select <!-- <a-select
v-model:value="form.maintenanceUnit" v-model:value="form.maintenanceUnit"
:options="maintenanceUnitOptions" :options="maintenanceUnitOptions"
placeholder="请选择" placeholder="请选择"
/> /> -->
<a-input v-model:value="form.maintenanceUnit" disabled />
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row :gutter="[16, 16]"> <a-row :gutter="[16, 16]">
<a-col :span="24"> <a-col :span="24">
<a-form-item :label="form.handle=='事件作废'?'作废原因':'派遣意见'" name="dispatchOpinion"> <a-form-item
:label="form.handle == '事件作废' ? '作废原因' : '派遣意见'"
name="dispatchOpinion"
>
<a-textarea v-model:value="form.dispatchOpinion" :rows="4" placeholder="请输入" /> <a-textarea v-model:value="form.dispatchOpinion" :rows="4" placeholder="请输入" />
</a-form-item> </a-form-item>
</a-col> </a-col>
@ -59,9 +73,9 @@
<script> <script>
import { reactive, ref } from 'vue'; import { reactive, ref } from 'vue';
import { message } from 'ant-design-vue'; import { message } from 'ant-design-vue';
import { getInfo,dispatchOrder,getIoCompanyNames} from './api'; import { getInfo, dispatchOrder, getIoCompanyNames, getIoCompanyByName,getContractNamesByProjectName } from './api';
export default { export default {
setup(props,{emit}) { setup(props, { emit }) {
const title = ref('派遣'); const title = ref('派遣');
const visible = ref(false); const visible = ref(false);
const form = reactive({ const form = reactive({
@ -95,40 +109,40 @@
{ {
value: '事件派遣', value: '事件派遣',
}, },
{
value: '事件转派',
},
{ {
value: '事件作废', value: '事件作废',
}, },
]; ];
const maintenanceUnitOptions = ref([]) const contractNameOptions = ref([])
const getMaintenanceUnitOptions = async() =>{ const contractNameChange = async (val) => {
const res = await getIoCompanyNames(); const res = await getIoCompanyByName(val);
maintenanceUnitOptions.value = res.map((i) => { form.maintenanceUnit = res;
return { };
value: i,
};
});
}
const showModal = async (id) => { const showModal = async (id) => {
visible.value = true; visible.value = true;
const data = await getInfo(id); const data = await getInfo(id);
for (let i in form) { for (let i in form) {
form[i] = data[i]; form[i] = data[i];
} }
getMaintenanceUnitOptions() const res = await getContractNamesByProjectName({ projectName: form.projectName });
contractNameOptions.value = res;
}; };
const handleOk = () => { const handleOk = () => {
formRef.value.validate().then((valid) => { formRef.value.validate().then((valid) => {
if (valid) { if (valid) {
const params = {} const params = {};
for(let i in form){ for (let i in form) {
params[i] = form[i] params[i] = form[i];
} }
dispatchOrder(params).then(_=>{ dispatchOrder(params).then((_) => {
message.success('操作成功') message.success('操作成功');
closeModal() closeModal();
emit('success') emit('success');
}) });
} }
}); });
}; };
@ -148,13 +162,14 @@
title, title,
form, form,
maintenanceRequirementOptions, maintenanceRequirementOptions,
maintenanceUnitOptions, contractNameOptions,
handleOptions, handleOptions,
showModal, showModal,
handleOk, handleOk,
closeModal, closeModal,
formRef, formRef,
rules, rules,
contractNameChange
}; };
}, },
}; };

8
src/views/property/point/data.ts

@ -17,10 +17,10 @@ export const columns: BasicColumn[] = [
title: '点位名称', title: '点位名称',
dataIndex: 'pointName', dataIndex: 'pointName',
}, },
{ // {
title: '地址', // title: '地址',
dataIndex: 'address', // dataIndex: 'address',
}, // },
{ {
title: '链路维护单位', title: '链路维护单位',
dataIndex: 'linkUnit', dataIndex: 'linkUnit',

1
src/views/property/point/index.vue

@ -30,7 +30,6 @@
</a-upload> </a-upload>
<a-button <a-button
v-auth="'system:role:export'"
@click="downloadExcel(exportExcel, '点位信息', getForm().getFieldsValue())" @click="downloadExcel(exportExcel, '点位信息', getForm().getFieldsValue())"
>导出</a-button >导出</a-button
> >

Loading…
Cancel
Save