Browse Source

系统字段样式检索调整

ops-management-platform-frontend-dev
wbc 1 week ago
parent
commit
5e14e05960
  1. 16
      src/views/IO/workOrder/delayAudit/data.ts
  2. 28
      src/views/IO/workOrder/delayAudit/index.vue
  3. 13
      src/views/IO/workOrder/orderHandle/data.ts
  4. 19
      src/views/IO/workOrder/orderHandle/index.vue
  5. 2
      src/views/project/contractManage/addModal.vue
  6. 80
      src/views/project/contractManage/index.vue
  7. 7
      src/views/project/projectManage/index.vue

16
src/views/IO/workOrder/delayAudit/data.ts

@ -37,23 +37,21 @@ import { FormSchema } from '@/components/Form';
export const formSchemas: FormSchema[] = [ export const formSchemas: FormSchema[] = [
{ {
field: 'projectName', field: 'projectName',
label: '项目名称', label: '合同名称',
component: 'Select', component: 'Input',
componentProps: {
options: [
],
},
}, },
]; ];
export const columns: BasicColumn[] = [ export const columns: BasicColumn[] = [
{ {
title: '所属项目', title: '点位名称',
dataIndex: 'projectName', dataIndex: 'faultLocation',
width:'20%'
}, },
{ {
title: '所属合同', title: '所属合同',
dataIndex: 'contractName', dataIndex: 'contractName',
width:'20%'
}, },
{ {
title: '延期原因', title: '延期原因',
@ -62,10 +60,12 @@ export const columns: BasicColumn[] = [
{ {
title: '延期前时间', title: '延期前时间',
dataIndex: 'beforeDelayTime', dataIndex: 'beforeDelayTime',
width:'12%'
}, },
{ {
title: '延期后时间', title: '延期后时间',
dataIndex: 'afterDelayTime', dataIndex: 'afterDelayTime',
width:'12%'
}, },
{ {
title: '处理结果', title: '处理结果',

28
src/views/IO/workOrder/delayAudit/index.vue

@ -61,20 +61,20 @@
const showDrawer = (id:any) => { const showDrawer = (id:any) => {
detailDrawerRef.value.showDrawer(id); detailDrawerRef.value.showDrawer(id);
}; };
const projectOptions = ref([]); // const projectOptions = ref([]);
const getProjectOptions = async () => { // const getProjectOptions = async () => {
const res = await getProjectInfo(); // const res = await getProjectInfo();
res.forEach((i: any) => { // res.forEach((i: any) => {
i.value = i.projectName; // i.value = i.projectName;
i.label = i.projectName; // i.label = i.projectName;
}); // });
projectOptions.value = res; // projectOptions.value = res;
formSchemas[0].componentProps.options = projectOptions.value; // formSchemas[0].componentProps.options = projectOptions.value;
}; // };
const getOptions = () => { // const getOptions = () => {
getProjectOptions(); // getProjectOptions();
}; // };
getOptions(); // getOptions();
onActivated(()=>{ onActivated(()=>{
reload() reload()
}) })

13
src/views/IO/workOrder/orderHandle/data.ts

@ -65,16 +65,26 @@ export const formSchemas: FormSchema[] = [
valueFormat: 'YYYY-MM-DD', valueFormat: 'YYYY-MM-DD',
}, },
}, },
{
field: 'faultLocation',
label: '故障地点',
component: 'Select',
componentProps: {
options: [],
},
},
]; ];
export const columns: BasicColumn[] = [ export const columns: BasicColumn[] = [
{ {
title: '编号', title: '编号',
dataIndex: 'id', dataIndex: 'id',
width: 200,
}, },
{ {
title: '报修时间', title: '报修时间',
dataIndex: 'repairTime', dataIndex: 'repairTime',
width: 150,
}, },
{ {
title: '响应级别', title: '响应级别',
@ -87,14 +97,17 @@ export const columns: BasicColumn[] = [
{ {
title: '故障地点', title: '故障地点',
dataIndex: 'faultLocation', dataIndex: 'faultLocation',
width: '18%',
}, },
{ {
title: '剩余处理时间', title: '剩余处理时间',
dataIndex: 'restTime', dataIndex: 'restTime',
width: 150,
}, },
{ {
title: '剩余接单时间', title: '剩余接单时间',
dataIndex: 'orderAcceptDeadline', dataIndex: 'orderAcceptDeadline',
width: 150,
}, },
{ {
title: '当前状态', title: '当前状态',

19
src/views/IO/workOrder/orderHandle/index.vue

@ -10,7 +10,11 @@
cancel-text="否" cancel-text="否"
@confirm="receive(record.id)" @confirm="receive(record.id)"
> >
<a-button type="link" v-if="record.status == 1|| record.status == 9|| record.status == 10">接单</a-button> <a-button
type="link"
v-if="record.status == 1 || record.status == 9 || record.status == 10"
>接单</a-button
>
</a-popconfirm> </a-popconfirm>
<a-button <a-button
type="link" type="link"
@ -56,7 +60,7 @@
import handleModal from './handleModal.vue'; import handleModal from './handleModal.vue';
import delayModal from './delayModal.vue'; import delayModal from './delayModal.vue';
import { ref, onActivated } from 'vue'; import { ref, onActivated } from 'vue';
import { queryPointNames } from '@/api/common/index';
const [registerTable, { reload }] = useTable({ const [registerTable, { reload }] = useTable({
title: '工单处理', title: '工单处理',
api: list, api: list,
@ -113,8 +117,19 @@
projectOptions.value = res; projectOptions.value = res;
formSchemas[0].componentProps.options = projectOptions.value; formSchemas[0].componentProps.options = projectOptions.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[2].componentProps.options = faultLocationOptions.value;
};
const getOptions = () => { const getOptions = () => {
getProjectOptions(); getProjectOptions();
getFaultLocationOptions();
}; };
getOptions(); getOptions();
onActivated(() => { onActivated(() => {

2
src/views/project/contractManage/addModal.vue

@ -263,7 +263,7 @@
partyB: [{ required: true, message: '请选择' }], partyB: [{ required: true, message: '请选择' }],
partyBPerson: [{ required: true, message: '请输入' }], partyBPerson: [{ required: true, message: '请输入' }],
contractContent: [{ required: true, message: '请输入' }], contractContent: [{ required: true, message: '请输入' }],
remark: [{ required: true, message: '请输入' }], // remark: [{ required: true, message: '' }],
}; };
const handleOk = () => { const handleOk = () => {
formRef.value.validate().then((valid) => { formRef.value.validate().then((valid) => {

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

@ -29,7 +29,7 @@
@cancel="closeService" @cancel="closeService"
width="80%" width="80%"
> >
<a-form :model="serviceForm" layout="vertical" :rules="serviceRules" ref="serviceRef" > <a-form :model="serviceForm" layout="vertical" :rules="serviceRules" ref="serviceRef">
<a-row :gutter="[16, 16]"> <a-row :gutter="[16, 16]">
<a-col :span="24"> <a-col :span="24">
<a-form-item label="合同名称" name="contractId"> <a-form-item label="合同名称" name="contractId">
@ -66,13 +66,14 @@
<a-row> <a-row>
<a-col :span="24"> <a-col :span="24">
<a-form-item label="自动生成" name="auto"> <a-form-item label="自动生成" name="auto">
<a-switch v-model:checked="serviceForm.auto" disabled/> <a-switch v-model:checked="serviceForm.auto" disabled />
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row> <a-row>
<a-col :span="24"> <a-col :span="24">
<a-table :columns="serviceColumns" <a-table
:columns="serviceColumns"
:data-source="serviceProjectOptions" :data-source="serviceProjectOptions"
:row-selection="serviceRowSelection" :row-selection="serviceRowSelection"
rowKey="id" rowKey="id"
@ -82,17 +83,24 @@
</a-form> </a-form>
</a-modal> </a-modal>
<detailDrawer ref="detailDrawerRef" /> <detailDrawer ref="detailDrawerRef" />
<addModal ref="addModalRef" @success="reload()"/> <addModal ref="addModalRef" @success="reload()" />
</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, removeByIds, createPlansByHands, getCategory,findLeafNodeInfos,createPautoCreatePlanslans } from './api'; import {
list,
removeByIds,
createPlansByHands,
getCategory,
findLeafNodeInfos,
createPautoCreatePlanslans,
} from './api';
import { formSchemas, columns } from './data'; import { formSchemas, columns } from './data';
import detailDrawer from './detailDrawer.vue'; import detailDrawer from './detailDrawer.vue';
import { ref, reactive } from 'vue'; import { ref, reactive, onActivated } from 'vue';
import addModal from './addModal.vue'; import addModal from './addModal.vue';
import { message } from 'ant-design-vue'; import { message } from 'ant-design-vue';
import { commonDownload } from '@/api/common/index'; import { commonDownload } from '@/api/common/index';
@ -149,35 +157,34 @@
let serviceForm = reactive({ let serviceForm = reactive({
contractId: null, contractId: null,
categoryId: null, categoryId: null,
serviceProjectList:[], serviceProjectList: [],
auto:false auto: false,
}); });
const serviceVisible = ref(false); const serviceVisible = ref(false);
const serviceRef = ref(); const serviceRef = ref();
const serviceSubmit = () => { const serviceSubmit = () => {
serviceRef.value.validate().then((valid: any) => { serviceRef.value.validate().then((valid: any) => {
if (valid) { if (valid) {
if(serviceForm.serviceProjectList&&serviceForm.serviceProjectList.length>0){ if (serviceForm.serviceProjectList && serviceForm.serviceProjectList.length > 0) {
let params = { let params = {
contractId: serviceForm.contractId, contractId: serviceForm.contractId,
categoryId: serviceForm.categoryId, categoryId: serviceForm.categoryId,
serviceProjectList:serviceForm.serviceProjectList serviceProjectList: serviceForm.serviceProjectList,
}; };
if(serviceForm.auto){ if (serviceForm.auto) {
createPautoCreatePlanslans(params).then((_) => { createPautoCreatePlanslans(params).then((_) => {
message.success('操作成功'); message.success('操作成功');
closeService(); closeService();
}); });
}else{ } else {
createPlansByHands(params).then((_) => { createPlansByHands(params).then((_) => {
message.success('操作成功'); message.success('操作成功');
closeService(); closeService();
}); });
} }
}else{ } else {
message.warning('请选择服务协议') message.warning('请选择服务协议');
} }
} }
}); });
}; };
@ -191,10 +198,10 @@
}; };
const closeService = () => { const closeService = () => {
serviceVisible.value = false; serviceVisible.value = false;
serviceRef.value.resetFields() serviceRef.value.resetFields();
serviceForm.serviceProjectList = [] serviceForm.serviceProjectList = [];
serviceProjectOptions.value = [] serviceProjectOptions.value = [];
serviceRowKeys.value = [] serviceRowKeys.value = [];
}; };
const contractOptions = ref([]); const contractOptions = ref([]);
const getContractOptions = () => { const getContractOptions = () => {
@ -209,11 +216,11 @@
categoryOptions.value = res; categoryOptions.value = res;
}); });
}; };
const serviceProjectOptions = ref([]) const serviceProjectOptions = ref([]);
const categoryIdChange = async(val:any)=>{ const categoryIdChange = async (val: any) => {
const res = await findLeafNodeInfos({categoryId:val }) const res = await findLeafNodeInfos({ categoryId: val });
serviceProjectOptions.value = res serviceProjectOptions.value = res;
} };
const getOptions = () => { const getOptions = () => {
getCategoryOptions(); getCategoryOptions();
getContractOptions(); getContractOptions();
@ -265,20 +272,18 @@
dataIndex: 'deliverResult', dataIndex: 'deliverResult',
key: 'deliverResult', key: 'deliverResult',
}, },
] ];
const serviceRowKeys = ref([]) const serviceRowKeys = ref([]);
const serviceRowSelection = ref( const serviceRowSelection = ref({
{
selectedRowKeys: serviceRowKeys, selectedRowKeys: serviceRowKeys,
onChange:(selectedRowKeys:any)=>{ onChange: (selectedRowKeys: any) => {
serviceForm.serviceProjectList = selectedRowKeys serviceForm.serviceProjectList = selectedRowKeys;
serviceRowKeys.value = selectedRowKeys serviceRowKeys.value = selectedRowKeys;
} },
} });
)
// //
const download = async (record:any) => { const download = async (record: any) => {
const attachments = JSON.parse(record.attachment) const attachments = JSON.parse(record.attachment);
if (attachments && attachments.length > 0) { if (attachments && attachments.length > 0) {
attachments.forEach((i: any) => { attachments.forEach((i: any) => {
commonDownload(i.url).then((res) => { commonDownload(i.url).then((res) => {
@ -288,6 +293,9 @@
}); });
} }
}; };
onActivated(() => {
reload();
});
</script> </script>
<style scoped></style> <style scoped></style>

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

@ -33,7 +33,7 @@
import { list, removeByIds } from './api'; import { list, removeByIds } from './api';
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,onActivated } from 'vue';
import addModal from './addModal.vue'; import addModal from './addModal.vue';
import addDept from './addDept.vue'; import addDept from './addDept.vue';
import { commonDownload } from '@/api/common/index'; import { commonDownload } from '@/api/common/index';
@ -86,7 +86,7 @@
addModalRef.value.showModal(2, id); addModalRef.value.showModal(2, id);
}; };
const addDeptRef = ref(); const addDeptRef = ref();
const showDept = (id:any) => { const showDept = (id: any) => {
addDeptRef.value.showModal(id); addDeptRef.value.showModal(id);
}; };
// //
@ -101,6 +101,9 @@
}); });
} }
}; };
onActivated(() => {
reload();
});
</script> </script>
<style scoped></style> <style scoped></style>

Loading…
Cancel
Save