Browse Source

绑定业主

ops-management-platform-frontend-dev
wbc 2 weeks ago
parent
commit
ea37bbdc18
  1. 2
      src/views/IO/workOrder/delayAudit/index.vue
  2. 2
      src/views/IO/workOrder/orderAudit/auditModal.vue
  3. 2
      src/views/IO/workOrder/orderHandle/handleModal.vue
  4. 94
      src/views/project/projectManage/addDept.vue
  5. 8
      src/views/project/projectManage/api.ts
  6. 15
      src/views/project/projectManage/index.vue
  7. 6
      src/views/property/meterial/addModal.vue

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

@ -4,7 +4,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="showAuditModal(record.id)" v-if="record.handleResult=='待处理'&&roleList[0]!='yunwei'">审核</a-button> <a-button type="link" @click="showAuditModal(record.id)" v-if="record.handleResult=='待处理'&&(roleList[0]!='yunwei'||roleList[0]!='yezhu')">审核</a-button>
<a-button type="link" @click="showDrawer(record.id)">详情</a-button> <a-button type="link" @click="showDrawer(record.id)">详情</a-button>
</template> </template>
</template> </template>

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

@ -174,7 +174,7 @@
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: false,pattern:'^[0-9]+$', 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/orderHandle/handleModal.vue

@ -135,7 +135,7 @@
faultSubcategory: [{ required: true, message: '请选择' }], faultSubcategory: [{ required: true, message: '请选择' }],
isAccident: [{ required: true, message: '请选择' }], isAccident: [{ required: true, message: '请选择' }],
fixResult: [{ required: true, message: '请输入' }], fixResult: [{ required: true, message: '请输入' }],
cost: [{ required: true, message: '请输入' }], cost: [{ required: true,pattern:'^[0-9]+$', message: '请输入' }],
attachments: [{ required: true, message: '请上传' }], attachments: [{ required: true, message: '请上传' }],
}; };
// //

94
src/views/project/projectManage/addDept.vue

@ -0,0 +1,94 @@
<template>
<a-modal v-model:open="visible" :title="title" @ok="handleOk" @cancel="closeModal" width="50%">
<a-form :model="form" layout="vertical" ref="formRef" :rules="rules">
<a-row :gutter="[16, 16]">
<a-col :span="24">
<a-form-item label="业主选择" name="deptId">
<a-select
v-model:value="form.deptId"
:options="deptOptions"
placeholder="请选择"
:fieldNames="{
label: 'deptName',
value: 'deptId',
options: 'options',
}"
/>
</a-form-item>
</a-col>
</a-row>
</a-form>
</a-modal>
</template>
<script>
import { reactive, ref } from 'vue';
import { getOwnerList,bindUnit } from './api';
import { message } from 'ant-design-vue';
import { getToken } from '@/utils/auth';
import { useGlobSetting } from '@/hooks/setting';
export default {
setup(props, { emit }) {
const title = ref('绑定业主');
const formRef = ref();
const visible = ref(false);
const form = reactive({
deptId: '',
projectId: null,
});
//
const deptOptions = ref([]);
const getOptions = async () => {
const res = await getOwnerList();
deptOptions.value = res;
};
const showModal = async (id) => {
visible.value = true;
form.projectId = id
getOptions();
};
const rules = {
deptId: [{ required: true, message: '请输入' }],
};
const handleOk = () => {
formRef.value.validate().then((valid) => {
if (valid) {
let params = {};
for (let i in form) {
params[i] = form[i];
}
bindUnit(params).then((_) => {
message.success('绑定成功');
emit('success');
closeModal();
});
}
});
};
const closeModal = () => {
formRef.value.resetFields();
visible.value = false;
};
return {
visible,
title,
form,
showModal,
handleOk,
formRef,
closeModal,
rules,
deptOptions
};
},
};
</script>
<style scoped>
/* 可选样式调整 */
.ant-modal-body {
max-width: 600px;
margin: 0 auto;
}
</style>

8
src/views/project/projectManage/api.ts

@ -4,6 +4,8 @@ enum Api {
root = '/platform/projectInfo', root = '/platform/projectInfo',
list = '/platform/projectInfo/list', list = '/platform/projectInfo/list',
getFaultCategoryType = '/platform/faultCategoryType/list', getFaultCategoryType = '/platform/faultCategoryType/list',
getOwnerList = '/system/dept/getOwnerList',
bindUnit = '/platform/projectInfo/bindUnit',
} }
export function list(params: any) { export function list(params: any) {
@ -27,3 +29,9 @@ export function getFaultCategoryType() {
export function removeByIds(ids: any) { export function removeByIds(ids: any) {
return defHttp.deleteWithMsg({ url: `${Api.root}/${ids.join(',')}` }); return defHttp.deleteWithMsg({ url: `${Api.root}/${ids.join(',')}` });
} }
export function getOwnerList() {
return defHttp.get({ url: Api.getOwnerList });
}
export function bindUnit(params:any) {
return defHttp.get({ url: Api.bindUnit,params });
}

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

@ -16,12 +16,14 @@
<a-button type="link">删除</a-button> <a-button type="link">删除</a-button>
</a-popconfirm> </a-popconfirm>
<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="showDept(record.id)">绑定</a-button>
<a-button type="link" @click="download(record)" v-if="record.attachment">下载</a-button> <a-button type="link" @click="download(record)" v-if="record.attachment">下载</a-button>
</template> </template>
</template> </template>
</BasicTable> </BasicTable>
<detailDrawer ref="detailDrawerRef" /> <detailDrawer ref="detailDrawerRef" />
<addModal ref="addModalRef" @success="reload()"/> <addModal ref="addModalRef" @success="reload()" />
<addDept ref="addDeptRef" @success="reload()" />
</PageWrapper> </PageWrapper>
</template> </template>
@ -33,6 +35,7 @@
import detailDrawer from './detailDrawer.vue'; import detailDrawer from './detailDrawer.vue';
import { ref } from 'vue'; import { ref } from 'vue';
import addModal from './addModal.vue'; import addModal from './addModal.vue';
import addDept from './addDept.vue';
import { commonDownload } from '@/api/common/index'; import { commonDownload } from '@/api/common/index';
import { downloadByData } from '@/utils/file/download'; import { downloadByData } from '@/utils/file/download';
defineOptions({ name: 'ProjectManage' }); defineOptions({ name: 'ProjectManage' });
@ -58,7 +61,7 @@
}, },
columns: columns, columns: columns,
actionColumn: { actionColumn: {
width: 270, width: 320,
title: '操作', title: '操作',
key: 'action', key: 'action',
fixed: 'right', fixed: 'right',
@ -82,9 +85,13 @@
const handleEdit = (id: any) => { const handleEdit = (id: any) => {
addModalRef.value.showModal(2, id); addModalRef.value.showModal(2, id);
}; };
const addDeptRef = ref();
const showDept = (id:any) => {
addDeptRef.value.showModal(id);
};
// //
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) => {

6
src/views/property/meterial/addModal.vue

@ -63,7 +63,7 @@
update, update,
} from './api'; } from './api';
export default { export default {
setup() { setup(props,{emit}) {
const title = ref('新增'); const title = ref('新增');
const visible = ref(false); const visible = ref(false);
const form = reactive({ const form = reactive({
@ -115,7 +115,7 @@
add(params).then((_) => { add(params).then((_) => {
message.success('新增成功'); message.success('新增成功');
emit('success') emit('success')
visible.value = false; closeModal()
}); });
} else { } else {
let params = {}; let params = {};
@ -125,7 +125,7 @@
update(params).then((_) => { update(params).then((_) => {
message.success('编辑成功'); message.success('编辑成功');
emit('success') emit('success')
visible.value = false; closeModal()
}); });
} }
} }

Loading…
Cancel
Save