修复小区背景颜色,巡检点顺序一致,投诉处理按钮

This commit is contained in:
Zy
2026-07-16 11:06:26 +08:00
parent 4efb535730
commit 725bdfa3fe
56 changed files with 1034 additions and 468 deletions

View File

@@ -32,7 +32,7 @@
<el-table-column label="账单名称" align="center" prop="billName" />
<el-table-column label="收费范围" align="center" prop="chargeScope" width="100">
<template #default="scope">
<template v-if="ShowHouselist.includes(scope.row.chargeTypeId)">
<template v-if="ShowHouseList.includes(scope.row.chargeTypeId)">
<DictTag :options="com_bill_charge_scope_house" :value="scope.row.chargeScope"></DictTag>
</template>
<template v-else>
@@ -56,8 +56,9 @@
<span v-else>---</span>
</template>
</el-table-column>
<el-table-column label="操作" width="120" align="center" fixed="right" class-name="small-padding fixed-width">
<el-table-column label="操作" width="200" align="center" fixed="right" class-name="small-padding fixed-width">
<template #default="scope">
<el-button link type="primary" @click="handleChange(scope.row)">生成账单</el-button>
<el-button link type="primary" @click="handleUpdate(scope.row)" v-has-permi="['bill:bill:edit']">编辑</el-button>
<el-button link type="primary" @click="handleMain(scope.row)" v-has-permi="['bill:bill:query']">详情</el-button>
</template>
@@ -65,6 +66,36 @@
</el-table>
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize" @pagination="getList" />
</el-card>
<el-dialog v-model="BillVisible" :title="BillForm.title" width="500">
<el-form :model="BillForm" label-width="auto" style="max-width: 600px">
<el-form-item label="账单生成时间">
<el-date-picker
v-if="BillForm.chargePeriod === '0'"
v-model="BillForm.year"
type="years"
format="YYYY"
value-format="YYYY"
placeholder="选择账单生成年份"
style="width: 100%"
/>
<el-date-picker
format="YYYY-MM"
value-format="YYYY-MM"
v-else
v-model="BillForm.yearMonths"
type="months"
placeholder="选择账单生成月份"
style="width: 100%"
/>
</el-form-item>
</el-form>
<template #footer>
<div class="dialog-footer">
<el-button @click="BillVisible = false">关闭</el-button>
<el-button type="primary" @click="handleChangeApi"> 生成 </el-button>
</div>
</template>
</el-dialog>
</div>
</template>
@@ -72,7 +103,7 @@
import PageHeader from '@/components/Pageheader/index.vue';
import pagination from '@/components/Pagination/index.vue';
import DictTag from '@/components/DictTag/index.vue';
import { listBill } from '@/api/system/SdbBill';
import { listBill, manualGenerateApi } from '@/api/system/SdbBill';
import { BillVO, BillQuery, BillForm } from '@/api/system/SdbBill/type';
import { listChargeItem } from '@/api/system/SdbChargeItem';
import { checkPermi } from '@/utils/permission';
@@ -92,7 +123,7 @@ const total = ref(0);
const queryFormRef = ref<ElFormInstance>();
const ShowHouselist = ['2049026484272791553', '2049026503017136129'];
const ShowHouseList = ['2049026484272791553', '2049026503017136129'];
const initFormData: BillForm = {
id: undefined,
@@ -104,7 +135,7 @@ const initFormData: BillForm = {
endDate: undefined,
villageId: undefined,
remark: undefined,
cerateTime: undefined
createTime: undefined
};
const data = reactive<PageData<BillForm, BillQuery>>({
form: { ...initFormData },
@@ -116,7 +147,7 @@ const data = reactive<PageData<BillForm, BillQuery>>({
}
});
const { queryParams, form } = toRefs(data);
const { queryParams } = toRefs(data);
const chargeItems = ref([]);
function init() {
@@ -176,7 +207,7 @@ const handleUpdate = (row?: BillVO) => {
});
};
function handleMain(row) {
function handleMain(row: BillVO) {
router.push({
path: '/sdb/sdbbillMain',
query: {
@@ -184,6 +215,44 @@ function handleMain(row) {
}
});
}
const BillVisible = ref(false);
const BillForm = ref<{
title: string;
billId: string;
chargePeriod: string;
yearMonths?: string[];
year?: string[];
}>({
title: '',
billId: '',
chargePeriod: '1'
});
function handleChange(row: BillVO) {
clearChangeBillForm();
BillVisible.value = true;
BillForm.value.title = row.billName;
BillForm.value.chargePeriod = row.chargePeriod;
BillForm.value.billId = row.id;
if (BillForm.value.chargePeriod === '1') {
BillForm.value['yearMonths'] = [];
} else {
BillForm.value['year'] = [];
}
}
function handleChangeApi() {
manualGenerateApi(BillForm.value).then((res) => {
ElMessage.success(res.msg);
clearChangeBillForm();
BillVisible.value = false;
});
}
function clearChangeBillForm() {
BillForm.value = {
title: '',
billId: '',
chargePeriod: '1'
};
}
onMounted(() => {
getList();