物业之前,新工作台
This commit is contained in:
@@ -162,7 +162,6 @@ function init() {
|
||||
};
|
||||
})
|
||||
.filter((item) => item);
|
||||
console.log(fileList.value);
|
||||
});
|
||||
}
|
||||
});
|
||||
@@ -186,7 +185,6 @@ const handlePictureCardPreview: UploadProps['onPreview'] = (uploadFile) => {
|
||||
|
||||
// !== 选择报修人 ====================================================================
|
||||
function handleChangeResident(val: string | number) {
|
||||
console.log(val);
|
||||
form.value.residentId = val;
|
||||
}
|
||||
|
||||
@@ -199,7 +197,6 @@ function handleChangehouse(val: (string | number)[]) {
|
||||
}
|
||||
}
|
||||
function handleChangemaintenanceItem(val: (string | number)[]) {
|
||||
console.log(val);
|
||||
if (val.length >= 2) {
|
||||
form.value.maintenanceItemId = val.pop() as number;
|
||||
} else {
|
||||
@@ -249,15 +246,14 @@ const submitForm = () => {
|
||||
|
||||
const sendForm = (str: string) => {
|
||||
form.value.problemImageUrl = str;
|
||||
form.value.villageId = Number(localStorage.getItem('villageid'));
|
||||
if (userid.value) {
|
||||
updateRepair(form.value).then((res) => {
|
||||
console.log(res);
|
||||
ElMessage.success('编辑成功');
|
||||
cancelForm();
|
||||
});
|
||||
} else {
|
||||
addRepair(form.value).then((res) => {
|
||||
console.log(res);
|
||||
ElMessage.success('添加成功');
|
||||
|
||||
cancelForm();
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
<el-col :span="2"></el-col>
|
||||
<el-col :span="11">
|
||||
<el-form-item label="项目类型" prop="projectType">
|
||||
<el-radio-group v-model="form.projectType">
|
||||
<el-radio-group :disabled="form.projectLevel === '1'" v-model="form.projectType">
|
||||
<el-radio v-for="item in com_repair_project_types" :key="item.id" :value="item.value">{{ item.label }}</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
@@ -40,7 +40,7 @@
|
||||
<el-row v-if="form.projectLevel === '1'">
|
||||
<el-col :span="11">
|
||||
<el-form-item label="隶属父级" prop="email">
|
||||
<el-select v-model="form.parentId" placeholder="请选择隶属父级" style="width: 240px">
|
||||
<el-select @change="handleChange" v-model="form.parentId" placeholder="请选择隶属父级" style="width: 240px">
|
||||
<el-option v-for="item in options" :key="item.id" :label="item.projectName" :value="item.id" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
@@ -60,7 +60,6 @@
|
||||
import { ref } from 'vue';
|
||||
import PageHeader from '@/components/Pageheader/index.vue';
|
||||
import { addRepairProject, listRepairProject, updateRepairProject } from '@/api/system/RepairProject';
|
||||
import { buildTreeByLevel } from '@/utils';
|
||||
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
|
||||
const { com_repair_project_types } = toRefs<any>(proxy?.useDict('com_repair_project_types'));
|
||||
const { com_repair_project_status } = toRefs<any>(proxy?.useDict('com_repair_project_status'));
|
||||
@@ -87,10 +86,17 @@ const rules = ref({
|
||||
});
|
||||
const userid = ref(null);
|
||||
const options = ref([]);
|
||||
|
||||
function handleChange(val) {
|
||||
const find = options.value.find((item) => item.id === val);
|
||||
if (find) {
|
||||
form.value.projectType = find.projectType;
|
||||
}
|
||||
}
|
||||
// != ==========================================
|
||||
|
||||
function init() {
|
||||
listRepairProject({ pageSize: 999999999, pageNum: 1 }).then((res) => {
|
||||
listRepairProject().then((res) => {
|
||||
const arr = res.rows.filter((ite) => ite.projectLevel === 0);
|
||||
options.value = arr;
|
||||
if (route.query.id) {
|
||||
@@ -112,7 +118,7 @@ init();
|
||||
const submitForm = () => {
|
||||
formRef.value?.validate(async (valid: boolean) => {
|
||||
if (valid) {
|
||||
console.log(form.value);
|
||||
form.value.villageId = Number(localStorage.getItem('villageid'));
|
||||
if (!userid.value) {
|
||||
addRepairProject(form.value).then(() => {
|
||||
ElMessage.success('添加成功');
|
||||
|
||||
@@ -51,8 +51,8 @@
|
||||
|
||||
<el-table v-loading="loading" border :data="repairList" @selection-change="handleSelectionChange">
|
||||
<el-table-column type="selection" width="55" align="center" />
|
||||
<el-table-column label="报修房屋" align="center" prop="name" />
|
||||
<el-table-column label="维修项目" align="center" prop="maintenanceItemPath" />
|
||||
<el-table-column label="报修房屋" align="center" prop="houseName" />
|
||||
<el-table-column label="维修项目" align="center" prop="maintenanceItemName" />
|
||||
<el-table-column label="问题描述" align="center" prop="problem" />
|
||||
<el-table-column label="报修人" align="center" prop="residentName" />
|
||||
<el-table-column label="预约日期" align="center" prop="orderDate" width="180">
|
||||
@@ -127,6 +127,7 @@ const data = reactive<PageData<RepairForm, RepairQuery>>({
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
villageId: Number(localStorage.getItem('villageid')),
|
||||
houseId: undefined,
|
||||
maintenanceItemId: undefined,
|
||||
problem: undefined,
|
||||
@@ -147,19 +148,6 @@ const data = reactive<PageData<RepairForm, RepairQuery>>({
|
||||
|
||||
const { queryParams, form, rules } = toRefs(data);
|
||||
|
||||
// != 维修项目u ===========================================================================
|
||||
const RepariPorjectlist = ref([]);
|
||||
const residentlist = ref([]);
|
||||
function init() {
|
||||
listRepairProject().then((res) => {
|
||||
RepariPorjectlist.value = res.rows;
|
||||
});
|
||||
listResident().then((res) => {
|
||||
residentlist.value = res.rows;
|
||||
});
|
||||
}
|
||||
init();
|
||||
|
||||
// != 维修项目u ===========================================================================
|
||||
|
||||
/** 查询报修管理列表 */
|
||||
@@ -167,24 +155,6 @@ const getList = async () => {
|
||||
loading.value = true;
|
||||
const res = await listRepair(queryParams.value);
|
||||
repairList.value = res.rows;
|
||||
repairList.value.forEach((item2) => {
|
||||
// 维修项目
|
||||
const find = RepariPorjectlist.value.find((item) => item.id === item2.maintenanceItemId);
|
||||
item2.maintenanceItemPath = '';
|
||||
if (find) {
|
||||
item2.maintenanceItemPath = find.projectName;
|
||||
if (find.parentId) {
|
||||
const find2 = RepariPorjectlist.value.find((item3) => item3.id === find.parentId);
|
||||
console.log(find2);
|
||||
item2.maintenanceItemPath = find2.projectName + ' - ' + item2.maintenanceItemPath;
|
||||
}
|
||||
}
|
||||
// 住户
|
||||
const find2 = residentlist.value.find((item) => item.id === item2.residentId);
|
||||
if (find2) {
|
||||
item2.residentName = find2.name;
|
||||
}
|
||||
});
|
||||
total.value = res.total;
|
||||
loading.value = false;
|
||||
};
|
||||
|
||||
@@ -90,12 +90,10 @@
|
||||
<span>分配工单</span>
|
||||
</div>
|
||||
</template>
|
||||
<div class="w-full h-full flex mt-2">
|
||||
<div class="preivewBody w-full h-full flex flex-items-start mt-2">
|
||||
<div class="title">维修师傅</div>
|
||||
<div class="preivewBodybox flex-1 ml-5">
|
||||
<div class="">
|
||||
<repairUser :userid="form.repairId" @change="handleChange"></repairUser>
|
||||
</div>
|
||||
<repairUser :userid="form.repairId" @change="handleChange"></repairUser>
|
||||
<div class="actions mt-5">
|
||||
<el-button @click="handleSend" type="primary">确定派单</el-button>
|
||||
<el-button @click="backRouter">返回</el-button>
|
||||
@@ -343,6 +341,9 @@ function handleEdit() {
|
||||
.subtitle {
|
||||
font-size: 15px;
|
||||
}
|
||||
.preivewBody {
|
||||
font-size: 16px;
|
||||
}
|
||||
.repairBox {
|
||||
width: 350px;
|
||||
height: 35px;
|
||||
|
||||
@@ -20,26 +20,23 @@
|
||||
<el-card class="flex-1" shadow="never">
|
||||
<template #header>
|
||||
<el-row :gutter="10" class="mb8">
|
||||
<el-col :span="1.5">
|
||||
<el-button type="primary" plain icon="Plus" @click="handleAdd" v-hasPermi="['repairProject:repairProject:add']">新增维修类</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="danger"
|
||||
plain
|
||||
icon="Delete"
|
||||
:disabled="multiple"
|
||||
@click="handleDelete()"
|
||||
v-hasPermi="['repairProject:repairProject:remove']"
|
||||
>删除</el-button
|
||||
>
|
||||
</el-col>
|
||||
<el-button style="width: 100px" type="primary" plain icon="Plus" @click="handleAdd" v-hasPermi="['repairProject:repairProject:add']"
|
||||
>新增维修类</el-button
|
||||
>
|
||||
<el-button
|
||||
type="danger"
|
||||
plain
|
||||
icon="Delete"
|
||||
:disabled="multiple"
|
||||
@click="handleDelete()"
|
||||
v-hasPermi="['repairProject:repairProject:remove']"
|
||||
>删除</el-button
|
||||
>
|
||||
<right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>
|
||||
</el-row>
|
||||
</template>
|
||||
|
||||
<el-table
|
||||
class="h-full"
|
||||
:tree-props="{ children: 'children' }"
|
||||
v-loading="loading"
|
||||
border
|
||||
@@ -89,32 +86,15 @@
|
||||
<dict-tag :options="com_repair_project_status" :value="scope.row.status || ''"></dict-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" align="center" fixed="right" class-name="small-padding fixed-width">
|
||||
<el-table-column label="操作" width="350" align="center" fixed="right" class-name="small-padding fixed-width">
|
||||
<template #default="scope">
|
||||
<el-button link type="primary" icon="add" @click="handleUpdate(scope.row)"></el-button>
|
||||
<el-tooltip content="修改" placement="top">
|
||||
<el-button
|
||||
link
|
||||
type="primary"
|
||||
icon="Edit"
|
||||
@click="handleUpdate(scope.row)"
|
||||
v-hasPermi="['repairProject:repairProject:edit']"
|
||||
></el-button>
|
||||
</el-tooltip>
|
||||
<el-tooltip content="删除" placement="top">
|
||||
<el-button
|
||||
link
|
||||
type="primary"
|
||||
icon="Delete"
|
||||
@click="handleDelete(scope.row)"
|
||||
v-hasPermi="['repairProject:repairProject:remove']"
|
||||
></el-button>
|
||||
</el-tooltip>
|
||||
<el-button link type="primary" @click="handleUpdate(scope.row)" v-hasPermi="['repairProject:repairProject:edit']">修改</el-button>
|
||||
<el-button link type="primary" @click="handleDelete(scope.row)" v-hasPermi="['repairProject:repairProject:remove']">删除</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
||||
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize" @pagination="getList" />
|
||||
<!-- <pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize" @pagination="getList" /> -->
|
||||
</el-card>
|
||||
<!-- 添加或修改报修维修项目管理对话框 -->
|
||||
<el-dialog :title="dialog.title" v-model="dialog.visible" width="500px" append-to-body>
|
||||
@@ -206,19 +186,15 @@ const initFormData: RepairProjectForm = {
|
||||
const data = reactive<PageData<RepairProjectForm, RepairProjectQuery>>({
|
||||
form: { ...initFormData },
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
villageId: Number(localStorage.getItem('villageid')),
|
||||
projectName: undefined,
|
||||
parentId: undefined,
|
||||
projectType: undefined,
|
||||
projectLevel: undefined,
|
||||
sortOrder: undefined,
|
||||
status: undefined,
|
||||
params: {}
|
||||
status: undefined
|
||||
},
|
||||
rules: {
|
||||
id: [{ required: true, message: '维修项目表id不能为空', trigger: 'blur' }]
|
||||
}
|
||||
rules: {}
|
||||
});
|
||||
|
||||
const { queryParams, form, rules } = toRefs(data);
|
||||
@@ -327,3 +303,9 @@ onMounted(() => {
|
||||
getList();
|
||||
});
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.el-table {
|
||||
height: calc(100% - 80px);
|
||||
}
|
||||
</style>
|
||||
|
||||
Reference in New Issue
Block a user