Browse Source

修改暂存

ops-management-platform-frontend-dev
wbc 2 months ago
parent
commit
6bfbd4da88
  1. 5
      src/views/IO/delayPatrol/waitAudit/api.ts
  2. 6
      src/views/IO/delayPatrol/waitAudit/data.ts
  3. 30
      src/views/IO/delayPatrol/waitAudit/faultModal.vue
  4. 39
      src/views/IO/delayPatrol/waitAudit/index.vue
  5. 4
      src/views/IO/delayPatrol/waitPatrol/api.ts
  6. 31
      src/views/IO/delayPatrol/waitPatrol/faultModal.vue
  7. 51
      src/views/IO/delayPatrol/waitPatrol/index.vue
  8. 20
      src/views/IO/patrol/patroling/addModal.vue
  9. 6
      src/views/IO/patrol/patroling/index.vue
  10. 3
      src/views/IO/workOrder/orderSearch/data.ts
  11. 1
      src/views/IO/workOrder/orderSearch/index.vue
  12. 7
      src/views/project/contractManage/index.vue
  13. 5
      src/views/property/point/api.ts
  14. 24
      src/views/property/point/pointModal.vue

5
src/views/IO/delayPatrol/waitAudit/api.ts

@ -7,6 +7,7 @@ enum Api {
workOrderAdd = '/platform/workOrder/add', workOrderAdd = '/platform/workOrder/add',
getProjectInfo = '/platform/projectInfo/getNames', getProjectInfo = '/platform/projectInfo/getNames',
getOrganizationType = '/platform/organizationType/list', getOrganizationType = '/platform/organizationType/list',
getContractNamesByProjectName = '/platform/contractInfo/getContractNamesByProjectName',
} }
export function list(params:any) { export function list(params:any) {
@ -43,3 +44,7 @@ export function getProjectInfo() {
export function getOrganizationType() { export function getOrganizationType() {
return defHttp.get({ url: Api.getOrganizationType }); return defHttp.get({ url: Api.getOrganizationType });
} }
export function getContractNamesByProjectName(data:any) {
return defHttp.post({ url: Api.getContractNamesByProjectName,data });
}

6
src/views/IO/delayPatrol/waitAudit/data.ts

@ -3,9 +3,13 @@ import { FormSchema } from '@/components/Form';
export const formSchemas: FormSchema[] = [ export const formSchemas: FormSchema[] = [
{ {
field: 'plaDate', field: '[scheduleStartDate, scheduleEndDate]',
label: '计划日期', label: '计划日期',
component: 'RangePicker', component: 'RangePicker',
componentProps: {
format: 'YYYY-MM-DD',
valueFormat:'YYYY-MM-DD'
},
}, },
{ {
field: 'deliverContent', field: 'deliverContent',

30
src/views/IO/delayPatrol/waitAudit/faultModal.vue

@ -8,6 +8,7 @@
v-model:value="form.projectName" v-model:value="form.projectName"
:options="projectNameOptions" :options="projectNameOptions"
placeholder="请选择" placeholder="请选择"
@change="projectNameChange"
:fieldNames="{ :fieldNames="{
label: 'projectName', label: 'projectName',
value: 'projectName', value: 'projectName',
@ -17,6 +18,23 @@
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row :gutter="[16, 16]">
<a-col :span="24">
<a-form-item label="所属合同" name="contractName">
<a-select
v-model:value="form.contractName"
:options="contractNameOptions"
placeholder="请选择"
:disabled="!form.projectName"
:fieldNames="{
label: 'contractName',
value: 'contractName',
options: 'options',
}"
/>
</a-form-item>
</a-col>
</a-row>
<a-row :gutter="[16, 16]"> <a-row :gutter="[16, 16]">
<a-col :span="12"> <a-col :span="12">
<a-form-item label="是否事故" name="isAccident"> <a-form-item label="是否事故" name="isAccident">
@ -146,7 +164,7 @@
<script> <script>
import { reactive, ref } from 'vue'; import { reactive, ref } from 'vue';
import { getInfo, getSubcategoryType, workOrderAdd,getProjectInfo,getOrganizationType } from './api'; import { getInfo, getSubcategoryType, workOrderAdd,getProjectInfo,getOrganizationType,getContractNamesByProjectName} from './api';
import { message } from 'ant-design-vue'; import { message } from 'ant-design-vue';
import AMapLoader from '@amap/amap-jsapi-loader'; import AMapLoader from '@amap/amap-jsapi-loader';
export default { export default {
@ -154,6 +172,7 @@
const visible = ref(false); const visible = ref(false);
const form = reactive({ const form = reactive({
projectName: '', projectName: '',
contractName:null,
isAccident: null, isAccident: null,
repairer: '', repairer: '',
responseTime: '', responseTime: '',
@ -176,6 +195,11 @@
const res = await getProjectInfo(); const res = await getProjectInfo();
projectNameOptions.value = res projectNameOptions.value = res
} }
const projectNameChange = async(val) =>{
const res = await getContractNamesByProjectName({projectName:val})
contractNameOptions.value = res
}
const contractNameOptions = ref([])
const organizationNameOptions = ref([]) const organizationNameOptions = ref([])
const getOrganizationNameOptions= async () =>{ const getOrganizationNameOptions= async () =>{
const res = await getOrganizationType(); const res = await getOrganizationType();
@ -289,8 +313,10 @@
faultSubcategoryOptions, faultSubcategoryOptions,
faultLocationOptions, faultLocationOptions,
projectNameOptions, projectNameOptions,
contractNameOptions,
organizationNameOptions, organizationNameOptions,
faultLocationChange faultLocationChange,
projectNameChange
}; };
}, },
}; };

39
src/views/IO/delayPatrol/waitAudit/index.vue

@ -2,7 +2,10 @@
<PageWrapper dense> <PageWrapper dense>
<BasicTable @register="registerTable"> <BasicTable @register="registerTable">
<template #toolbar> <template #toolbar>
<a-button type="primary" @click="handleReport">上报</a-button> <a-button type="primary" @click="changeDate(3)">近三天</a-button>
<a-button type="primary" @click="changeDate(7)">近七天</a-button>
<a-button type="primary" @click="changeDate(30)">近一月</a-button>
<a-button type="primary" danger @click="handleReport">上报</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'">
@ -22,10 +25,10 @@
import { formSchemas, columns } from './data'; import { formSchemas, columns } from './data';
import detailDrawer from './detailDrawer.vue'; import detailDrawer from './detailDrawer.vue';
import { ref } from 'vue'; import { ref } from 'vue';
import faultModal from './faultModal.vue' import faultModal from './faultModal.vue';
import dayjs from 'dayjs';
defineOptions({ name: 'waitAudit' }); defineOptions({ name: 'waitAudit' });
const [registerTable, { reload, getForm }] = useTable({
const [registerTable] = useTable({
rowSelection: { rowSelection: {
type: 'checkbox', type: 'checkbox',
}, },
@ -52,16 +55,36 @@
fixed: 'right', fixed: 'right',
}, },
}); });
let selectDateRange = ref<any>([]);
const changeDate = async (type: any) => {
const today = dayjs().format('YYYY-MM-DD');
const selectDay = dayjs().add(type, 'day').format('YYYY-MM-DD');
selectDateRange.value = [today, selectDay];
await getForm().setFieldsValue({
scheduleStartDate: today,
scheduleEndDate: selectDay,
});
reload();
localStorage.setItem(
'currentType',type);
};
const lastType = localStorage.getItem('currentType')
setTimeout(()=>{
if(lastType){
changeDate(lastType)
}
},1000)
// //
const detailDrawerRef = ref(); const detailDrawerRef = ref();
const handleDetail = () => { const handleDetail = () => {
detailDrawerRef.value.showDrawer(); detailDrawerRef.value.showDrawer();
}; };
const faultModalRef = ref(); const faultModalRef = ref();
const handleReport = () =>{ const handleReport = () => {
faultModalRef.value.showModal() faultModalRef.value.showModal();
} };
</script> </script>
<style scoped></style> <style scoped></style>

4
src/views/IO/delayPatrol/waitPatrol/api.ts

@ -7,6 +7,7 @@ enum Api {
workOrderAdd = '/platform/workOrder/add', workOrderAdd = '/platform/workOrder/add',
getProjectInfo = '/platform/projectInfo/getNames', getProjectInfo = '/platform/projectInfo/getNames',
getOrganizationType = '/platform/organizationType/list', getOrganizationType = '/platform/organizationType/list',
getContractNamesByProjectName = '/platform/contractInfo/getContractNamesByProjectName',
} }
export function list(params:any) { export function list(params:any) {
@ -41,3 +42,6 @@ export function getProjectInfo() {
export function getOrganizationType() { export function getOrganizationType() {
return defHttp.get({ url: Api.getOrganizationType }); return defHttp.get({ url: Api.getOrganizationType });
} }
export function getContractNamesByProjectName(data:any) {
return defHttp.post({ url: Api.getContractNamesByProjectName,data });
}

31
src/views/IO/delayPatrol/waitPatrol/faultModal.vue

@ -8,6 +8,7 @@
v-model:value="form.projectName" v-model:value="form.projectName"
:options="projectNameOptions" :options="projectNameOptions"
placeholder="请选择" placeholder="请选择"
@change="projectNameChange"
:fieldNames="{ :fieldNames="{
label: 'projectName', label: 'projectName',
value: 'projectName', value: 'projectName',
@ -17,6 +18,23 @@
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row :gutter="[16, 16]">
<a-col :span="24">
<a-form-item label="所属合同" name="contractName">
<a-select
v-model:value="form.contractName"
:options="contractNameOptions"
placeholder="请选择"
:disabled="!form.projectName"
:fieldNames="{
label: 'contractName',
value: 'contractName',
options: 'options',
}"
/>
</a-form-item>
</a-col>
</a-row>
<a-row :gutter="[16, 16]"> <a-row :gutter="[16, 16]">
<a-col :span="12"> <a-col :span="12">
<a-form-item label="是否事故" name="isAccident"> <a-form-item label="是否事故" name="isAccident">
@ -146,7 +164,7 @@
<script> <script>
import { reactive, ref } from 'vue'; import { reactive, ref } from 'vue';
import { getInfo, getSubcategoryType, workOrderAdd,getProjectInfo,getOrganizationType } from './api'; import { getInfo, getSubcategoryType, workOrderAdd,getProjectInfo,getOrganizationType,getContractNamesByProjectName} from './api';
import { message } from 'ant-design-vue'; import { message } from 'ant-design-vue';
import AMapLoader from '@amap/amap-jsapi-loader'; import AMapLoader from '@amap/amap-jsapi-loader';
export default { export default {
@ -154,6 +172,7 @@
const visible = ref(false); const visible = ref(false);
const form = reactive({ const form = reactive({
projectName: '', projectName: '',
contractName:null,
isAccident: null, isAccident: null,
repairer: '', repairer: '',
responseTime: '', responseTime: '',
@ -176,6 +195,12 @@
const res = await getProjectInfo(); const res = await getProjectInfo();
projectNameOptions.value = res projectNameOptions.value = res
} }
const projectNameChange = async(val) =>{
const res = await getContractNamesByProjectName({projectName:val})
contractNameOptions.value = res
}
const contractNameOptions = ref([])
const organizationNameOptions = ref([]) const organizationNameOptions = ref([])
const getOrganizationNameOptions= async () =>{ const getOrganizationNameOptions= async () =>{
const res = await getOrganizationType(); const res = await getOrganizationType();
@ -289,8 +314,10 @@
faultSubcategoryOptions, faultSubcategoryOptions,
faultLocationOptions, faultLocationOptions,
projectNameOptions, projectNameOptions,
contractNameOptions,
organizationNameOptions, organizationNameOptions,
faultLocationChange faultLocationChange,
projectNameChange
}; };
}, },
}; };

51
src/views/IO/delayPatrol/waitPatrol/index.vue

@ -24,11 +24,11 @@
import { list } from './api'; import { list } from './api';
import { formSchemas, columns } from './data'; import { formSchemas, columns } from './data';
import detailDrawer from './detailDrawer.vue'; import detailDrawer from './detailDrawer.vue';
import { ref, onMounted } from 'vue'; import { ref } from 'vue';
import faultModal from './faultModal.vue'; import faultModal from './faultModal.vue';
import dayjs from 'dayjs'; import dayjs from 'dayjs';
defineOptions({ name: 'WaitPatrol' }); defineOptions({ name: 'WaitPatrol' });
const [registerTable, { reload, getForm }] = useTable({ const [registerTable, { reload, getForm}] = useTable({
rowSelection: { rowSelection: {
type: 'checkbox', type: 'checkbox',
}, },
@ -55,16 +55,6 @@
fixed: 'right', fixed: 'right',
}, },
}); });
//
const detailDrawerRef = ref();
const handleDetail = () => {
detailDrawerRef.value.showDrawer();
};
const faultModalRef = ref();
const handleReport = () => {
faultModalRef.value.showModal();
};
let selectDateRange = ref<any>([]); let selectDateRange = ref<any>([]);
const changeDate = async (type: any) => { const changeDate = async (type: any) => {
const today = dayjs().format('YYYY-MM-DD'); const today = dayjs().format('YYYY-MM-DD');
@ -76,25 +66,28 @@
}); });
reload(); reload();
localStorage.setItem( localStorage.setItem(
'currentDate', 'currentType',type);
JSON.stringify({ scheduleStartDate: today, scheduleEndDate: selectDay }),
);
}; };
const beforDateSearch = async (date: any) => { const lastType = localStorage.getItem('currentType')
await getForm().setFieldsValue({ setTimeout(()=>{
scheduleStartDate: date[0], if(lastType){
scheduleEndDate: date[1], changeDate(lastType)
}); }
reload(); },1000)
//
const detailDrawerRef = ref();
const handleDetail = () => {
detailDrawerRef.value.showDrawer();
}; };
onMounted(async () => { const faultModalRef = ref();
const currentDate = JSON.parse(localStorage.getItem('currentDate')); const handleReport = () => {
console.log(currentDate) faultModalRef.value.showModal();
await getForm().setFieldsValue({ };
scheduleStartDate: currentDate[0],
scheduleEndDate: currentDate[1],
});
});
</script> </script>
<style scoped></style> <style scoped></style>

20
src/views/IO/patrol/patroling/addModal.vue

@ -2,7 +2,7 @@
<a-modal v-model:open="visible" :title="title" @ok="handleOk" width="80%"> <a-modal v-model:open="visible" :title="title" @ok="handleOk" width="80%">
<a-form :model="form" layout="vertical"> <a-form :model="form" layout="vertical">
<a-row :gutter="[16, 16]"> <a-row :gutter="[16, 16]">
<a-col :span="deliverContent == '例行操作' ? 12 : 24"> <a-col :span="form.deliverContent == '例行操作' ? 12 : 24">
<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">
@ -24,7 +24,7 @@
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row :gutter="[16, 16]" v-if="deliverContent == '例行操作'"> <a-row :gutter="[16, 16]" v-if="form.deliverContent == '例行操作'">
<a-col :span="24"> <a-col :span="24">
<a-form-item label="频率" name="frequency"> <a-form-item label="频率" name="frequency">
<a-input v-model:value="form.frequency" placeholder="请输入" disabled /> <a-input v-model:value="form.frequency" placeholder="请输入" disabled />
@ -39,7 +39,7 @@
type="primary" type="primary"
@click="createPlan" @click="createPlan"
:disabled="!form.dateRange || form.dateRange.length < 2" :disabled="!form.dateRange || form.dateRange.length < 2"
v-if="deliverContent == '例行操作'" v-if="form.deliverContent == '例行操作'"
>生成</a-button >生成</a-button
> >
</a-form-item> </a-form-item>
@ -81,7 +81,7 @@
</a-col> </a-col>
</a-row> </a-row>
</a-col> </a-col>
<a-col :span="12" v-if="deliverContent == '例行操作'"> <a-col :span="12" v-if="form.deliverContent == '例行操作'">
<a-table <a-table
:dataSource="form.finishStatus" :dataSource="form.finishStatus"
:columns="finishColumns" :columns="finishColumns"
@ -108,8 +108,7 @@
import AMapLoader from '@amap/amap-jsapi-loader'; import AMapLoader from '@amap/amap-jsapi-loader';
export default { export default {
setup() { setup() {
const title = ref('生成计划'); const title = ref('生成计划')
const deliverContent = ref('');
const visible = ref(false); const visible = ref(false);
const form = reactive({ const form = reactive({
contractName: '', contractName: '',
@ -122,6 +121,8 @@
pointName: '', pointName: '',
serviceProject: '', serviceProject: '',
finishStatus: [], finishStatus: [],
deliverContent:'',
code:''
}); });
// //
const pointNameOptions = [ const pointNameOptions = [
@ -145,14 +146,12 @@
}, },
]; ];
const showModal = async (id, type) => { 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];
} }
deliverContent.value = type;
console.log(deliverContent.value);
}; };
const handleOk = () => { const handleOk = () => {
@ -162,7 +161,7 @@
} }
params.scheduleStartDate = params.dateRange[0] params.scheduleStartDate = params.dateRange[0]
params.scheduleEndDate = params.dateRange[1] params.scheduleEndDate = params.dateRange[1]
if (deliverContent.value != '例行操作') { if (form.deliverContent != '例行操作') {
delete params['finishStatus'] delete params['finishStatus']
delete params['frequency'] delete params['frequency']
createSpecialInspection(params).then((_) => { createSpecialInspection(params).then((_) => {
@ -302,7 +301,6 @@
createPlan, createPlan,
deletePlan, deletePlan,
pointNameChange, pointNameChange,
deliverContent,
}; };
}, },
}; };

6
src/views/IO/patrol/patroling/index.vue

@ -5,7 +5,7 @@
<template #bodyCell="{ column, record }"> <template #bodyCell="{ column, record }">
<template v-if="column && record && column.key === 'action'"> <template v-if="column && record && column.key === 'action'">
<a-button type="link" @click="handleDetail(record.id)">详情</a-button> <a-button type="link" @click="handleDetail(record.id)">详情</a-button>
<a-button type="link" @click="handleAdd(record.id,record.deliverContent)" v-show="record.progress == 0" <a-button type="link" @click="handleAdd(record.id)" v-show="record.progress == 0"
>生成计划</a-button >生成计划</a-button
> >
<a-button type="link" @click="handleAdd(record.id)" v-show="record.progress == 1" <a-button type="link" @click="handleAdd(record.id)" v-show="record.progress == 1"
@ -62,8 +62,8 @@
}); });
// //
const addModalRef = ref(); const addModalRef = ref();
const handleAdd = (id: any,deliverContent:String) => { const handleAdd = (id: any) => {
addModalRef.value.showModal(id,deliverContent); addModalRef.value.showModal(id);
}; };
// //
const detailDrawerRef = ref(); const detailDrawerRef = ref();

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

@ -181,5 +181,8 @@ export const columns: BasicColumn[] = [
{ {
title: '当前状态', title: '当前状态',
dataIndex: 'status', dataIndex: 'status',
customRender: ({ value }) => {
return value == 0 ? '启用' : '禁用';
},
}, },
]; ];

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

@ -3,7 +3,6 @@
<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 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'">

7
src/views/project/contractManage/index.vue

@ -191,6 +191,8 @@
serviceVisible.value = false; serviceVisible.value = false;
serviceRef.value.resetFields() serviceRef.value.resetFields()
serviceForm.serviceProjectList = [] serviceForm.serviceProjectList = []
serviceProjectOptions.value = []
serviceRowKeys.value = []
}; };
const contractOptions = ref([]); const contractOptions = ref([]);
const getContractOptions = () => { const getContractOptions = () => {
@ -262,10 +264,13 @@
key: 'deliverResult', key: 'deliverResult',
}, },
] ]
const serviceRowKeys = ref([])
const serviceRowSelection = ref( const serviceRowSelection = ref(
{ {
onChange:(selectedRowKeys:any,selectedRows:any)=>{ selectedRowKeys: serviceRowKeys,
onChange:(selectedRowKeys:any)=>{
serviceForm.serviceProjectList = selectedRowKeys serviceForm.serviceProjectList = selectedRowKeys
serviceRowKeys.value = selectedRowKeys
} }
} }
) )

5
src/views/property/point/api.ts

@ -10,6 +10,7 @@ enum Api {
workOrderAdd = '/platform/workOrder/add', workOrderAdd = '/platform/workOrder/add',
getProjectInfo = '/platform/projectInfo/getNames', getProjectInfo = '/platform/projectInfo/getNames',
getOrganizationType = '/platform/organizationType/list', getOrganizationType = '/platform/organizationType/list',
getContractNamesByProjectName = '/platform/contractInfo/getContractNamesByProjectName',
} }
export function list(params: any) { export function list(params: any) {
@ -51,3 +52,7 @@ export function getProjectInfo() {
export function getOrganizationType() { export function getOrganizationType() {
return defHttp.get({ url: Api.getOrganizationType }); return defHttp.get({ url: Api.getOrganizationType });
} }
export function getContractNamesByProjectName(data:any) {
return defHttp.post({ url: Api.getContractNamesByProjectName,data });
}

24
src/views/property/point/pointModal.vue

@ -8,6 +8,23 @@
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row :gutter="[16, 16]">
<a-col :span="24">
<a-form-item label="所属合同" name="contractName">
<a-select
v-model:value="form.contractName"
:options="contractNameOptions"
placeholder="请选择"
:disabled="!form.projectName"
:fieldNames="{
label: 'contractName',
value: 'contractName',
options: 'options',
}"
/>
</a-form-item>
</a-col>
</a-row>
<a-row :gutter="[16, 16]"> <a-row :gutter="[16, 16]">
<a-col :span="12"> <a-col :span="12">
<a-form-item label="是否事故" name="isAccident"> <a-form-item label="是否事故" name="isAccident">
@ -125,7 +142,7 @@
<script> <script>
import { reactive, ref } from 'vue'; import { reactive, ref } from 'vue';
import { getInfo, getSubcategoryType, workOrderAdd } from './api'; import { getInfo, getSubcategoryType, workOrderAdd,getContractNamesByProjectName } from './api';
import { message } from 'ant-design-vue'; import { message } from 'ant-design-vue';
import AMapLoader from '@amap/amap-jsapi-loader'; import AMapLoader from '@amap/amap-jsapi-loader';
export default { export default {
@ -133,6 +150,7 @@
const visible = ref(false); const visible = ref(false);
const form = reactive({ const form = reactive({
projectName: '', projectName: '',
contractName:null,
isAccident: null, isAccident: null,
repairer: '', repairer: '',
responseTime: '', responseTime: '',
@ -171,6 +189,7 @@
}, },
]; ];
const faultSubcategoryOptions = ref([]); const faultSubcategoryOptions = ref([]);
const contractNameOptions = ref([])
const getOptions = async () => { const getOptions = async () => {
const res = await getSubcategoryType(); const res = await getSubcategoryType();
faultSubcategoryOptions.value = res.rows; faultSubcategoryOptions.value = res.rows;
@ -183,6 +202,8 @@
for (let i in form) { for (let i in form) {
form[i] = data[i]; form[i] = data[i];
} }
const res = await getContractNamesByProjectName({projectName:form.projectName})
contractNameOptions.value = res
initMap(form.longitude,form.latitude,form.organizationName); initMap(form.longitude,form.latitude,form.organizationName);
}; };
@ -233,6 +254,7 @@
responseLevelOptions, responseLevelOptions,
maintenanceRequirementOptions, maintenanceRequirementOptions,
faultSubcategoryOptions, faultSubcategoryOptions,
contractNameOptions
}; };
}, },
}; };

Loading…
Cancel
Save