8/31 dev 权限,sse,账单,bug

This commit is contained in:
Zy
2026-08-31 18:00:11 +08:00
parent 466ec4675e
commit de4bae3bc1
51 changed files with 575 additions and 591 deletions

View File

@@ -2,109 +2,111 @@
<div class="ResidentMainBox p-2 w-full h-full">
<PageHeader title="住户详情"></PageHeader>
<div class="ResidentMainBody">
<el-row :span="24" :gutter="20">
<el-row :gutter="20" :span="24">
<el-col :span="16">
<div class="userInfobox">
<el-card>
<template #header>
<div class="card-header">
<span>基础资料</span>
</div>
</template>
<div class="w-full h-full">
<el-row :gutter="20">
<el-col :span="12">
<div class="userinfo_item">
<div class="title_item">住户姓名:</div>
<span> {{ userInfo.name }} </span>
</div>
<div class="userinfo_item">
<div class="title_item">手机号码:</div>
<span> {{ userInfo.phone }} </span>
</div>
<div class="userinfo_item">
<div class="title_item">证件类型:</div>
<DictTag :options="com_id_card_type" :value="userInfo.idCardType"></DictTag>
</div>
<div class="userinfo_item">
<div class="title_item">与主业主关系:</div>
<DictTag :options="com_resident_relationship" :value="userInfo.ownerRelationship"></DictTag>
</div>
<!-- <div class="userinfo_item">
<div class="title_item">住户来源:</div>
<span> {{ userInfo.name }} </span>
</div> -->
<!-- <div class="userinfo_item">
<div class="title_item">注册时间:</div>
<span> {{ userInfo.name }} </span>
</div> -->
<div class="userinfo_item img">
<div class="title_item">身份证正面:</div>
<div class="userinfo_itme_img">
<el-image class="w-full h-full" fit="fill" :src="userInfo.cardImageFront"></el-image>
<div class="h-full flex flex-col">
<div class="userInfobox">
<el-card class="h-full">
<template #header>
<div class="card-header">
<span>基础资料</span>
</div>
</template>
<div class="w-full h-full">
<el-row :gutter="20">
<el-col :span="12">
<div class="userinfo_item">
<div class="title_item">住户姓名:</div>
<span> {{ userInfo.name }} </span>
</div>
</div>
</el-col>
<el-col :span="12">
<div class="userinfo_item">
<div class="title_item">住户编号:</div>
<span> {{ userInfo.id }} </span>
</div>
<div class="userinfo_item">
<div class="title_item">住户性别:</div>
<span> {{ userInfo.gender === '0' ? '男' : '女' }} </span>
</div>
<div class="userinfo_item">
<div class="title_item">证件号码:</div>
<span> {{ userInfo.idCard }} </span>
</div>
<div class="userinfo_item img">
<div class="title_item">身份证背面:</div>
<div class="userinfo_itme_img">
<el-image class="w-full h-full" fit="fill" :src="userInfo.cardImageBack"></el-image>
<div class="userinfo_item">
<div class="title_item">手机号码:</div>
<span> {{ userInfo.phone }} </span>
</div>
</div>
</el-col>
<el-col :span="24">
<div class="userinfo_item">
<div class="title_item">备注:</div>
<span> {{ userInfo.remark ?? '无' }} </span>
</div>
</el-col>
</el-row>
</div>
</el-card>
</div>
<div class="previewbox">
<el-card>
<template #header>
<div class="card-header">
<span>审核</span>
<div class="userinfo_item">
<div class="title_item">证件类型:</div>
<DictTag :options="com_id_card_type" :value="userInfo.idCardType"></DictTag>
</div>
<div class="userinfo_item">
<div class="title_item">与主业主关系:</div>
<DictTag :options="com_resident_relationship" :value="userInfo.ownerRelationship"></DictTag>
</div>
<!-- <div class="userinfo_item">
<div class="title_item">住户来源:</div>
<span> {{ userInfo.name }} </span>
</div> -->
<!-- <div class="userinfo_item">
<div class="title_item">注册时间:</div>
<span> {{ userInfo.name }} </span>
</div> -->
<div class="userinfo_item img">
<div class="title_item">身份证正面:</div>
<div class="userinfo_itme_img">
<el-image :src="userInfo.cardImageFront" class="w-full h-full" fit="fill"></el-image>
</div>
</div>
</el-col>
<el-col :span="12">
<div class="userinfo_item">
<div class="title_item">住户编号:</div>
<span> {{ userInfo.id }} </span>
</div>
<div class="userinfo_item">
<div class="title_item">住户性别:</div>
<span> {{ userInfo.gender === '0' ? '男' : '女' }} </span>
</div>
<div class="userinfo_item">
<div class="title_item">证件号码:</div>
<span> {{ userInfo.idCard }} </span>
</div>
<div class="userinfo_item img">
<div class="title_item">身份证背面:</div>
<div class="userinfo_itme_img">
<el-image :src="userInfo.cardImageBack" class="w-full h-full" fit="fill"></el-image>
</div>
</div>
</el-col>
<el-col :span="24">
<div class="userinfo_item">
<div class="title_item">备注:</div>
<span> {{ userInfo.remark ?? '无' }} </span>
</div>
</el-col>
</el-row>
</div>
</template>
<div class="w-full h-full flex mt-2">
<div class="title">审批意见</div>
<div class="preivewBodybox">
<el-input
maxlength="200"
show-word-limit
v-model.trim="reviewInfo.propertyReviewFeedback"
placeholder="请输入"
type="textarea"
:rows="5"
></el-input>
<div class="actions">
<el-button type="primary" @click="updatePass('1')">审核通过</el-button>
<el-button type="danger" @click="updatePass('2')">审核不通过</el-button>
<el-button @click="backRoute">返回</el-button>
</el-card>
</div>
<div v-if="activeStop !== 4" class="previewbox">
<el-card>
<template #header>
<div class="card-header">
<span>审核</span>
</div>
</template>
<div class="w-full h-full flex mt-2">
<div class="title">审批意见</div>
<div class="preivewBodybox">
<el-input
v-model.trim="reviewInfo.propertyReviewFeedback"
:rows="5"
maxlength="200"
placeholder="请输入"
show-word-limit
type="textarea"
></el-input>
<div class="actions">
<el-button type="primary" @click="updatePass('1')">审核通过</el-button>
<el-button type="danger" @click="updatePass('2')">审核不通过</el-button>
<el-button @click="backRoute">返回</el-button>
</div>
</div>
</div>
</div>
</el-card>
</el-card>
</div>
</div>
</el-col>
<el-col :span="8">
<el-card style="position: relative" class="h-full">
<el-card class="h-full" style="position: relative">
<template #header>
<div class="asideCardHeader w-full h-full">
<div class="cardSubtitle">
@@ -114,7 +116,7 @@
</div>
</template>
<div class="w-full h-50%">
<el-steps space="200px" direction="vertical" :active="activeStop">
<el-steps :active="activeStop" direction="vertical" space="200px">
<el-step :description="reviewInfo.submitTime">
<template #title>
<DictTag :options="com_sub_status" :value="reviewInfo.submitStatus || '0'"></DictTag>
@@ -143,7 +145,7 @@
</div>
</div>
</template>
<script setup lang="ts">
<script lang="ts" setup>
import { ref } from 'vue';
import PageHeader from '@/components/Pageheader/index.vue';
import { getResident, getresidentReviewlistAPI, UpdateResidentReviewAPI } from '@/api/system/residentReviewProcess/resident';
@@ -199,12 +201,12 @@ if (route.query.id) {
getResident(userid.value).then((res) => {
userInfo.value = res.data;
// 获取 审核流程
getresidentReviewlistAPI(userid.value).then((res) => {
if (res.rows[0]) {
reviewInfo.value = res.rows[0];
handleActiveStaus(reviewInfo.value);
}
});
});
getresidentReviewlistAPI(userid.value).then((res) => {
if (res.rows[0]) {
reviewInfo.value = res.rows[0];
handleActiveStaus(reviewInfo.value);
}
});
}
// 在 script setup 中添加
@@ -282,7 +284,7 @@ function backRoute() {
}
</script>
<style scoped lang="scss">
<style lang="scss" scoped>
.ResidentMainBox {
display: flex;
flex-direction: column;
@@ -290,6 +292,7 @@ function backRoute() {
flex: 1;
margin-top: 20px;
.userInfobox {
flex: 1;
.card-header {
font-size: 18px;
height: 60px;
@@ -319,6 +322,7 @@ function backRoute() {
}
}
.previewbox {
height: 327px;
margin-top: 20px;
.card-header {
font-size: 18px;