src/views/err-log/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/placement-batch/components/ApprovalDialog.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/placement-batch/person.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/relocatablePersonnel/detail.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/views/err-log/index.vue
New file @@ -0,0 +1,273 @@ <template> <div class="app-container"> <!-- 搜索区域 --> <div class="search-area"> <el-form :inline="true" :model="queryParams" class="search-form"> <el-form-item label="镇街"> <el-select v-model="queryParams.street" placeholder="请选择" clearable size="small"> <el-option v-for="item in streetOptions" :key="item.dictCode" :label="item.dictLabel" :value="item.dictLabel"></el-option> </el-select> </el-form-item> <el-form-item> <el-button type="default" @click="resetQuery">重置</el-button> <el-button type="primary" @click="handleQuery">查询</el-button> </el-form-item> </el-form> </div> <!-- 表格区域 --> <el-table v-loading="loading" :data="tableData" border style="width: 100%"> <el-table-column type="index" width="50" label="序号" align="center" /> <el-table-column prop="street" label="镇(街道)" min-width="120" align="center" /> <el-table-column prop="name" label="报错次数总计" min-width="100" align="center"> </el-table-column> <el-table-column prop="totalApplicants" label="错误类型" min-width="100" align="center"> <el-table-column prop="updateTime" label="安置人员信息错误" min-width="150" align="center" /> <el-table-column prop="updateTime" label="安置面积计算错误" min-width="150" align="center" /> <el-table-column prop="updateTime" label="补偿金额计算错误" min-width="150" align="center" /> <el-table-column prop="updateTime" label="房源面积数据错误" min-width="150" align="center" /> </el-table-column> </el-table> <!-- 分页区域 --> <div class="pagination-container"> <el-pagination background @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="queryParams.pageNum" :page-sizes="[10, 20, 30, 40]" :page-size="queryParams.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="total"> </el-pagination> </div> </div> </template> <script> import Pagination from "@/components/Pagination"; import { list, add, del, update } from "@/api/storing-data"; import { getDictData } from '@/api/placement' export default { name: "StoringData", components: { Pagination, }, data() { return { // 遮罩层 loading: false, // 总条数 total: 4, // 状态数据字典 statusOptions: [ { value: "待审核", label: "待审核" }, { value: "已通过", label: "已通过" }, { value: "已驳回", label: "已驳回" }, ], // 审核相关 approvalType: "audit", // 'audit' 或 'detail' currentRow: {}, // 上传相关 uploadDialogVisible: false, uploadType: "add", // 'add' 或 'batch' // 表格数据 tableData: [], // 查询参数 queryParams: { pageNum: 1, pageSize: 10, street: undefined, name: undefined }, streetOptions: [] }; }, created() { this.getList(); // 镇(街道) getDictData('street').then(response => { this.streetOptions = response.data }) }, methods: { /** 查询列表 */ getList() { list(this.queryParams).then(res => { this.tableData = res.data.records; this.total = res.data.total; }); }, /** 搜索按钮操作 */ handleQuery() { this.queryParams.pageNum = 1; this.getList(); }, /** 重置按钮操作 */ resetQuery() { this.queryParams = { pageNum: 1, pageSize: 10, projectName: undefined, town: undefined, owner: undefined, idCard: undefined, status: undefined, }; this.handleQuery(); }, /** 新增按钮操作 */ handleAdd() { this.uploadType = "add"; this.uploadDialogVisible = true; }, /** 导入模板下载操作 */ handleImport() { // 实现下载逻辑 }, handleSizeChange(size) { this.queryParams.pageSize = size; this.getList(); }, handleCurrentChange(page) { this.queryParams.pageNum = page; this.getList(); }, /** 批量导入按钮操作 */ handleBatchImport() { this.uploadType = "batch"; this.uploadDialogVisible = true; }, /** 统一的查看/详情按钮操作 */ handleView(row, type) { this.$refs.uploadDialog.form = JSON.parse(JSON.stringify(row)); this.$refs.uploadDialog.fileList = [{ name: row.attachName, url: row.attachUrl }]; this.uploadType = type; this.uploadDialogVisible = true; }, /** 审核提交处理 */ handleApprovalSubmit(data) { // 处理审核提交 const { result, comment } = data; this.$message({ type: "success", message: result === "pass" ? "审核通过成功!" : "审核驳回成功!", }); // 刷新列表 this.getList(); }, /** 删除按钮操作 */ handleDelete(row) { this.$confirm("是否确认删除该资料?", "警告", { confirmButtonText: "确定", cancelButtonText: "取消", type: "warning", }) .then(() => { del({ id: row.id }).then(res => { this.$message({ type: "success", message: "删除成功!", }); this.getList(); }) .catch(() => { }); }) .catch(() => { }); }, /** 上传成功回调 */ handleUploadSuccess() { this.uploadDialogVisible = false; this.getList(); this.$message({ type: "success", message: this.uploadType === "add" ? "新增成功!" : "批量导入成功!", }); }, // 处理文件下载 handleDownload(row) { if (!row.attachUrl) { this.$message.error('文件不存在'); return; } // 显示加载提示 this.loading = true; // 使用fetch获取文件内容 fetch(row.attachUrl) .then(response => response.blob()) .then(blob => { // 创建blob URL const url = window.URL.createObjectURL(blob); // 创建临时a标签 const link = document.createElement('a'); link.href = url; link.download = row.attachName || '下载文件'; document.body.appendChild(link); link.click(); // 清理 document.body.removeChild(link); window.URL.revokeObjectURL(url); }) .catch(error => { console.error('下载失败:', error); this.$message.error('文件下载失败'); }) .finally(() => { this.loading = false; }); }, }, }; </script> <style lang="scss" scoped> .app-container { padding: 20px; background-color: #fff; .search-area { background-color: #fff; padding: 15px 0; margin-bottom: 20px; border-radius: 4px; .search-form { display: flex; align-items: center; .el-form-item { margin-bottom: 0; margin-right: 20px; } } } .action-buttons { margin-bottom: 20px; .el-button { margin-right: 10px; } } .el-table { margin-bottom: 20px; .el-button--text { padding: 0 8px; &:not(:last-child) { border-right: 1px solid #dcdfe6; } } } .pagination-container { text-align: center; margin-top: 20px; } .el-tag { border-radius: 2px; } } </style> src/views/placement-batch/components/ApprovalDialog.vue
@@ -104,148 +104,274 @@ <el-table v-loading="loading" :data="tableData" border style="width: 100%" max-height="300px" :row-class-name="tableRowClassName1"> <el-table-column type="index" label="序号" width="50" align="center" /> <el-table-column prop="street" label="镇(街道)" min-width="100" align="center" /> <el-table-column prop="projectName" label="拆迁项目名称" min-width="100" align="center" /> <el-table-column prop="community" label="所在村(社区)" min-width="100" align="center" /> <el-table-column prop="demolitionTime" label="拆迁时间" min-width="100" align="center" /> <el-table-column prop="street" label="镇(街道)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.street }}</span> </template> </el-table-column> <el-table-column prop="projectName" label="拆迁项目名称" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.projectName }}</span> </template> </el-table-column> <el-table-column prop="community" label="所在村(社区)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.community }}</span> </template> </el-table-column> <el-table-column prop="demolitionTime" label="拆迁时间" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.demolitionTime }}</span> </template> </el-table-column> <el-table-column prop="householdHead" label="户主姓名" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.householdHead }} <el-tooltip v-if="scope.row.householdHeadWarn == 1" class="item" effect="dark" content="户主信息不存在于待安置人员库" placement="top"> <span>{{ scope.row.householdHead }} <el-tooltip v-if="scope.row.householdHeadWarn == 1" class="item" effect="dark" content="户主信息不存在于待安置人员库" placement="top"> <el-image style="width: 12px; height: 12px; margin-left: 5px" :src="require('../../../assets/logo/warning.png')" :fit="fit"></el-image> </el-tooltip></span> :src="require('../../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip></span> </template> </el-table-column> <el-table-column prop="idCard" label="身份证号" min-width="180" align="center"> <template slot-scope="scope"> {{ scope.row.idCard || "-" }} <el-tooltip v-if="scope.row.idCardWarn == 1" class="item" effect="dark" content="身份信息不存在于待安置人员库" placement="top"> {{ scope.row.idCard || '-' }} <el-tooltip v-if="scope.row.idCardWarn == 1" class="item" effect="dark" content="身份信息不存在于待安置人员库" placement="top"> <el-image style="width: 12px; height: 12px; margin-left: 5px" :src="require('../../../assets/logo/warning.png')" :fit="fit"></el-image> :src="require('../../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip> </template> </el-table-column> <el-table-column prop="mobile" label="联系电话" min-width="100" align="center"> <template slot-scope="scope"> {{ scope.row.mobile || "-" }} {{ scope.row.mobile || '-' }} </template> </el-table-column> <el-table-column label="本次安置人数(人)" min-width="100" align="center"> <el-table-column prop="currentCollectiveNum" label="集体经济组织成员" min-width="100" align="center"> <template slot-scope="scope"> {{ scope.row.currentCollectiveNum || "-" }} {{ scope.row.currentCollectiveNum || '-' }} </template> </el-table-column> <el-table-column prop="currentNoCollectiveNum" label="非集体经济组织成员" min-width="100" align="center"> <template slot-scope="scope"> {{ scope.row.currentNoCollectiveNum || "-" }} {{ scope.row.currentNoCollectiveNum || '-' }} </template> </el-table-column> <el-table-column prop="currentCount" label="合计" min-width="100" align="center" /> <el-table-column prop="currentCount" label="合计" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.currentCount }}</span> </template> </el-table-column> </el-table-column> <el-table-column prop="waitFamilyNames" label="待安置家庭成员姓名" min-width="100" align="center"> <template slot-scope="scope"> {{ scope.row.waitFamilyNames || "-" }} <el-tooltip v-if="scope.row.waitFamilyNamesWarn == 1" class="item" effect="dark" content="身份信息存在重复数据" placement="top"> {{ scope.row.waitFamilyNames || '-' }} <el-tooltip v-if="scope.row.waitFamilyNamesWarn == 1" class="item" effect="dark" content="身份信息存在重复数据" placement="top"> <el-image style="width: 12px; height: 12px; margin-left: 5px" :src="require('../../../assets/logo/warning.png')" :fit="fit"></el-image> :src="require('../../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip> </template> </el-table-column> <el-table-column prop="waitFamilyArea" label="待安置人员应安置面积合计(㎡)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.waitFamilyArea }} <el-tooltip v-if="scope.row.waitFamilyAreaWarn == 1" class="item" effect="dark" content="应补偿面积数据异常" placement="top"> <span>{{ scope.row.waitFamilyArea }} <el-tooltip v-if="scope.row.waitFamilyAreaWarn == 1" class="item" effect="dark" content="应补偿面积数据异常" placement="top"> <el-image style="width: 12px; height: 12px; margin-left: 5px" :src="require('../../../assets/logo/warning.png')" :fit="fit"></el-image> </el-tooltip></span> :src="require('../../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip></span> </template> </el-table-column> <el-table-column label="补偿金额(万元)" min-width="100" align="center"> <el-table-column prop="compensationNewAmount" label="新建商品住房、商业用房、停车位" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.compensationNewAmount }} <el-tooltip v-if="scope.row.compensationAmountWarn == 1" class="item" effect="dark" content="检测到多个购房情况请人工核对" placement="top"> <span>{{ scope.row.compensationNewAmount }} <el-tooltip v-if="scope.row.compensationAmountWarn == 1" class="item" effect="dark" content="检测到多个购房情况请人工核对" placement="top"> <el-image style="width: 12px; height: 12px; margin-left: 5px" :src="require('../../../assets/logo/warning.png')" :fit="fit"></el-image> </el-tooltip></span> :src="require('../../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip></span> </template> </el-table-column> <el-table-column prop="compensationOldAmount" label="二手住房" min-width="100" align="center" /> <el-table-column prop="compensationOldAmount" label="二手住房" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.compensationOldAmount }}</span> </template> </el-table-column> <el-table-column prop="compensationSum" label="合计" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.compensationSum }} <el-tooltip v-if="scope.row.compensationSumWarn == 1" class="item" effect="dark" content="补偿总金额数据异常" placement="top"> <span>{{ scope.row.compensationSum }} <el-tooltip v-if="scope.row.compensationSumWarn == 1" class="item" effect="dark" content="补偿总金额数据异常" placement="top"> <el-image style="width: 12px; height: 12px; margin-left: 5px" :src="require('../../../assets/logo/warning.png')" :fit="fit"></el-image> </el-tooltip></span> :src="require('../../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip></span> </template> </el-table-column> </el-table-column> <el-table-column prop="downPaymentAmount" label="25%首付款(万元)" min-width="100" align="center" /> <el-table-column prop="quarterPayAmount" v-if="activeTab == '2'" label="每季度需支付款项(万元)" min-width="100" align="center"> <el-table-column prop="downPaymentAmount" label="25%首付款(万元)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.quarterPayAmount }} <el-tooltip v-if="scope.row.quarterPayAmountWarn == 1" class="item" effect="dark" content="季度款金额数据异常" placement="top"> <span>{{ scope.row.downPaymentAmount }}</span> </template> </el-table-column> <el-table-column prop="quarterPayAmount" v-if="activeTab == 'houseInfo'" label="每季度需支付款项(万元)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.quarterPayAmount }} <el-tooltip v-if="scope.row.quarterPayAmountWarn == 1" class="item" effect="dark" content="季度款金额数据异常" placement="top"> <el-image style="width: 12px; height: 12px; margin-left: 5px" :src="require('../../../assets/logo/warning.png')" :fit="fit"></el-image> </el-tooltip></span> :src="require('../../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip></span> </template> </el-table-column> <el-table-column prop="subsidyAmount" label="过渡补贴(万元)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.subsidyAmount }} <el-tooltip v-if="scope.row.subsidyAmount == 1" class="item" effect="dark" content="过渡补贴金额数据异常" placement="top"> <span>{{ scope.row.subsidyAmount }} <el-tooltip v-if="scope.row.subsidyAmount == 1" class="item" effect="dark" content="过渡补贴金额数据异常" placement="top"> <el-image style="width: 12px; height: 12px; margin-left: 5px" :src="require('../../../assets/logo/warning.png')" :fit="fit"></el-image> </el-tooltip></span> :src="require('../../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip></span> </template> </el-table-column> <el-table-column prop="remark" label="备注" min-width="100" align="center" /> <el-table-column prop="certificateTime" label="凭证发放时间" min-width="100" align="center" /> <el-table-column prop="buyTime" label="购房时间" min-width="100" align="center" /> <el-table-column prop="dealAmount" label="成交金额(万元)" min-width="100" align="center" /> <el-table-column prop="remark" label="备注" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.remark }}</span> </template> </el-table-column> <el-table-column prop="certificateTime" label="凭证发放时间" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.certificateTime }}</span> </template> </el-table-column> <el-table-column prop="buyTime" label="购房时间" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.buyTime }}</span> </template> </el-table-column> <el-table-column prop="dealAmount" label="成交金额(万元)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.dealAmount }}</span> </template> </el-table-column> <el-table-column label="新建商品住房" min-width="100" align="center"> <el-table-column prop="newHousingName" label="楼盘名称" min-width="100" align="center" /> <el-table-column prop="newHousingName" label="楼盘名称" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.newHousingName }}</span> </template> </el-table-column> <el-table-column prop="newHousingArea" label="面积(㎡)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.newHousingArea }} <el-tooltip v-if="scope.row.areaWarn == 1" class="item" effect="dark" content="面积数据异常" placement="top"> <span>{{ scope.row.newHousingArea }} <el-tooltip v-if="scope.row.areaWarn == 1" class="item" effect="dark" content="面积数据异常" placement="top"> <el-image style="width: 12px; height: 12px; margin-left: 5px" :src="require('../../../assets/logo/warning.png')" :fit="fit"></el-image> </el-tooltip></span> :src="require('../../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip></span> </template> </el-table-column> <el-table-column prop="newHousingNum" label="套数(套)" min-width="100" align="center" /> <el-table-column prop="newHousingNum" label="套数(套)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.newHousingNum }}</span> </template> </el-table-column> </el-table-column> <el-table-column label="二手住房" min-width="100" align="center"> <el-table-column prop="oldHousingName" label="小区名称" min-width="100" align="center" /> <el-table-column prop="householdHead" label="面积(㎡)" min-width="100" align="center" /> <el-table-column prop="householdHead" label="套数(套)" min-width="100" align="center" /> <el-table-column prop="oldHousingName" label="小区名称" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.oldHousingName }}</span> </template> </el-table-column> <el-table-column prop="oldHousingArea" label="面积(㎡)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.oldHousingArea }}</span> </template> </el-table-column> <el-table-column prop="oldHousingNum" label="套数(套)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.oldHousingNum }}</span> </template> </el-table-column> </el-table-column> <el-table-column prop="householdHead" label="新建商业用房" min-width="100" align="center"> <el-table-column prop="householdHead" label="楼盘名称" min-width="100" align="center" /> <el-table-column prop="oldHousingArea" label="面积(㎡)" min-width="100" align="center" /> <el-table-column prop="oldHousingNum" label="套数(套)" min-width="100" align="center" /> <el-table-column prop="buildHousingName" label="楼盘名称" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.buildHousingName }}</span> </template> </el-table-column> <el-table-column prop="buildHousingArea" label="面积(㎡)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.buildHousingArea }}</span> </template> </el-table-column> <el-table-column prop="buildHousingNum" label="套数(套)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.buildHousingNum }}</span> </template> </el-table-column> </el-table-column> <el-table-column label="新建停车位" min-width="100" align="center"> <el-table-column prop="newStopName" label="楼盘名称" min-width="100" align="center" /> <el-table-column prop="newStopArea" label="金额(万元)" min-width="100" align="center" /> <el-table-column prop="newStopNum" label="个数(个)" min-width="100" align="center" /> <el-table-column prop="newStopName" label="楼盘名称" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.newStopName }}</span> </template> </el-table-column> <el-table-column prop="signTime" label="自主购房协议签订时间" min-width="100" align="center" /> <el-table-column prop="compensationPayTime" label="25%补偿款及过渡补贴支付时间" min-width="100" align="center" /> <el-table-column prop="newStopArea" label="金额(万元)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.newStopArea }}</span> </template> </el-table-column> <el-table-column prop="newStopNum" label="个数(个)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.newStopNum }}</span> </template> </el-table-column> </el-table-column> <el-table-column prop="signTime" label="自主购房协议签订时间" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.signTime }}</span> </template> </el-table-column> <el-table-column prop="compensationPayTime" label="25%补偿款及过渡补贴支付时间" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.compensationPayTime }}</span> </template> </el-table-column> <el-table-column label="剩余款项支付时间" min-width="100" align="center"> <el-table-column prop="remainingTime1" label="第一年" min-width="100" align="center" /> <el-table-column prop="remainingTime2" label="第二年" min-width="100" align="center" /> <el-table-column prop="remainingTime3" label="第三年" min-width="100" align="center" /> <el-table-column prop="remainingTime4" label="第四年" min-width="100" align="center" /> <el-table-column prop="remainingTime5" label="第四年" min-width="100" align="center" /> <el-table-column prop="remainingTime1" label="第一年" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.remainingTime1 }}</span> </template> </el-table-column> <el-table-column prop="remainingTime2" label="第二年" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.remainingTime2 }}</span> </template> </el-table-column> <el-table-column prop="remainingTime3" label="第三年" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.remainingTime3 }}</span> </template> </el-table-column> <el-table-column prop="remainingTime4" label="第四年" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.remainingTime4 }}</span> </template> </el-table-column> <el-table-column prop="remainingTime5" label="第四年" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.remainingTime5 }}</span> </template> </el-table-column> </el-table-column> </el-table> </div> src/views/placement-batch/person.vue
@@ -80,11 +80,8 @@ <template slot-scope="scope"> <span>{{ scope.row.householdHead }} <el-tooltip v-if="scope.row.householdHeadWarn == 1" class="item" effect="dark" content="用户信息未通过安置申请" placement="top"> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" :fit="fit" ></el-image> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip></span> </template> </el-table-column> @@ -92,11 +89,8 @@ <template slot-scope="scope"> {{ scope.row.idCard || '-' }} <el-tooltip v-if="scope.row.idCardWarn == 1" class="item" effect="dark" content="身份信息不存在于待安置人员库" placement="top"> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" :fit="fit" ></el-image> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip> </template> </el-table-column> @@ -105,11 +99,8 @@ <template slot-scope="scope"> <span>{{ scope.row.resettledArea }} <el-tooltip v-if="scope.row.waitFamilyAreaWarn == 1" class="item" effect="dark" content="应补偿面积数据异常" placement="top"> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" :fit="fit" ></el-image> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip></span> </template> </el-table-column> @@ -118,11 +109,8 @@ <template slot-scope="scope"> <span>{{ scope.row.priceNewAmount }} <el-tooltip v-if="scope.row.priceAmountWarn == 1" class="item" effect="dark" content="补充标准数据异常" placement="top"> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" :fit="fit" ></el-image> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip></span> </template> </el-table-column> @@ -130,11 +118,8 @@ <template slot-scope="scope"> <span>{{ scope.row.priceOldAmount }} <el-tooltip v-if="scope.row.twoPriceWarn == 1" class="item" effect="dark" content="检测到多个购房情况请人工核对" placement="top"> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" :fit="fit" ></el-image> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip></span> </template> </el-table-column> @@ -143,25 +128,23 @@ <template slot-scope="scope"> <span>{{ scope.row.compensationAmount }} <el-tooltip v-if="scope.row.compensationSumWarn == 1" class="item" effect="dark" content="补偿总金额数据异常" placement="top"> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" :fit="fit" ></el-image> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip></span> </template> </el-table-column> <el-table-column prop="downPaymentAmount" label="25%首付款(㎡)" min-width="150" align="center" /> <el-table-column prop="downPaymentAmount" label="25%首付款(㎡)" min-width="150" align="center"> <template slot-scope="scope"> <span>{{ scope.row.downPaymentAmount }}</span> </template> </el-table-column> <el-table-column prop="quarterPayAmount" v-if="activeTab == 'fullReport'" label="每季度需支付款项(万元)" min-width="180" align="center"> <template slot-scope="scope"> <span>{{ scope.row.quarterPayAmount }} <el-tooltip v-if="scope.row.quarterPayAmountWarn == 1" class="item" effect="dark" content="季度款金额数据异常" placement="top"> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" :fit="fit" ></el-image> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip></span> </template> </el-table-column> @@ -169,11 +152,8 @@ <template slot-scope="scope"> <span>{{ scope.row.subsidyAmount }} <el-tooltip v-if="scope.row.subsidyAmount == 1" class="item" effect="dark" content="过渡补贴金额数据异常" placement="top"> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" :fit="fit" ></el-image> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip></span> </template> </el-table-column> @@ -198,19 +178,32 @@ <!-- 购房信息表格 --> <el-table v-loading="loading" :data="tableData" border style="width: 100%" :row-class-name="tableRowClassName1"> <el-table-column type="index" label="序号" width="50" align="center" /> <el-table-column prop="street" label="镇(街道)" min-width="100" align="center" /> <el-table-column prop="projectName" label="拆迁项目名称" min-width="100" align="center" /> <el-table-column prop="community" label="所在村(社区)" min-width="100" align="center" /> <el-table-column prop="demolitionTime" label="拆迁时间" min-width="100" align="center" /> <el-table-column prop="street" label="镇(街道)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.street }}</span> </template> </el-table-column> <el-table-column prop="projectName" label="拆迁项目名称" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.projectName }}</span> </template> </el-table-column> <el-table-column prop="community" label="所在村(社区)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.community }}</span> </template> </el-table-column> <el-table-column prop="demolitionTime" label="拆迁时间" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.demolitionTime }}</span> </template> </el-table-column> <el-table-column prop="householdHead" label="户主姓名" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.householdHead }} <el-tooltip v-if="scope.row.householdHeadWarn == 1" class="item" effect="dark" content="户主信息不存在于待安置人员库" placement="top"> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" :fit="fit" ></el-image> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip></span> </template> </el-table-column> @@ -218,11 +211,8 @@ <template slot-scope="scope"> {{ scope.row.idCard || '-' }} <el-tooltip v-if="scope.row.idCardWarn == 1" class="item" effect="dark" content="身份信息不存在于待安置人员库" placement="top"> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" :fit="fit" ></el-image> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip> </template> </el-table-column> @@ -238,18 +228,23 @@ {{ scope.row.currentCollectiveNum || '-' }} </template> </el-table-column> <el-table-column prop="currentNoCollectiveNum" label="非集体经济组织成员" min-width="100" align="center" /> <el-table-column prop="currentCount" label="合计" min-width="100" align="center" /> <el-table-column prop="currentNoCollectiveNum" label="非集体经济组织成员" min-width="100" align="center"> <template slot-scope="scope"> {{ scope.row.currentNoCollectiveNum || '-' }} </template> </el-table-column> <el-table-column prop="currentCount" label="合计" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.currentCount }}</span> </template> </el-table-column> </el-table-column> <el-table-column prop="waitFamilyNames" label="待安置家庭成员姓名" min-width="100" align="center"> <template slot-scope="scope"> {{ scope.row.waitFamilyNames || '-' }} <el-tooltip v-if="scope.row.waitFamilyNamesWarn == 1" class="item" effect="dark" content="身份信息存在重复数据" placement="top"> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" :fit="fit" ></el-image> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip> </template> </el-table-column> @@ -257,11 +252,8 @@ <template slot-scope="scope"> <span>{{ scope.row.waitFamilyArea }} <el-tooltip v-if="scope.row.waitFamilyAreaWarn == 1" class="item" effect="dark" content="应补偿面积数据异常" placement="top"> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" :fit="fit" ></el-image> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip></span> </template> </el-table-column> @@ -270,39 +262,38 @@ <template slot-scope="scope"> <span>{{ scope.row.compensationNewAmount }} <el-tooltip v-if="scope.row.compensationAmountWarn == 1" class="item" effect="dark" content="检测到多个购房情况请人工核对" placement="top"> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" :fit="fit" ></el-image> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip></span> </template> </el-table-column> <el-table-column prop="compensationOldAmount" label="二手住房" min-width="100" align="center" /> <el-table-column prop="compensationOldAmount" label="二手住房" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.compensationOldAmount }}</span> </template> </el-table-column> <el-table-column prop="compensationSum" label="合计" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.compensationSum }} <el-tooltip v-if="scope.row.compensationSumWarn == 1" class="item" effect="dark" content="补偿总金额数据异常" placement="top"> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" :fit="fit" ></el-image> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip></span> </template> </el-table-column> </el-table-column> <el-table-column prop="downPaymentAmount" label="25%首付款(万元)" min-width="100" align="center" /> <el-table-column prop="downPaymentAmount" label="25%首付款(万元)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.downPaymentAmount }}</span> </template> </el-table-column> <el-table-column prop="quarterPayAmount" v-if="activeTab == 'houseInfo'" label="每季度需支付款项(万元)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.quarterPayAmount }} <el-tooltip v-if="scope.row.quarterPayAmountWarn == 1" class="item" effect="dark" content="季度款金额数据异常" placement="top"> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" :fit="fit" ></el-image> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip></span> </template> </el-table-column> @@ -310,57 +301,151 @@ <template slot-scope="scope"> <span>{{ scope.row.subsidyAmount }} <el-tooltip v-if="scope.row.subsidyAmount == 1" class="item" effect="dark" content="过渡补贴金额数据异常" placement="top"> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" :fit="fit" ></el-image> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip></span> </template> </el-table-column> <el-table-column prop="remark" label="备注" min-width="100" align="center" /> <el-table-column prop="certificateTime" label="凭证发放时间" min-width="100" align="center" /> <el-table-column prop="buyTime" label="购房时间" min-width="100" align="center" /> <el-table-column prop="dealAmount" label="成交金额(万元)" min-width="100" align="center" /> <el-table-column prop="remark" label="备注" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.remark }}</span> </template> </el-table-column> <el-table-column prop="certificateTime" label="凭证发放时间" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.certificateTime }}</span> </template> </el-table-column> <el-table-column prop="buyTime" label="购房时间" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.buyTime }}</span> </template> </el-table-column> <el-table-column prop="dealAmount" label="成交金额(万元)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.dealAmount }}</span> </template> </el-table-column> <el-table-column label="新建商品住房" min-width="100" align="center"> <el-table-column prop="newHousingName" label="楼盘名称" min-width="100" align="center" /> <el-table-column prop="newHousingName" label="楼盘名称" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.newHousingName }}</span> </template> </el-table-column> <el-table-column prop="newHousingArea" label="面积(㎡)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.newHousingArea }} <el-tooltip v-if="scope.row.areaWarn == 1" class="item" effect="dark" content="面积数据异常" placement="top"> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" :fit="fit" ></el-image> <el-image style="width: 12px; height: 12px;margin-left:5px" :src="require('../../assets/logo/warning.png')" fit="fit"></el-image> </el-tooltip></span> </template> </el-table-column> <el-table-column prop="newHousingNum" label="套数(套)" min-width="100" align="center" /> <el-table-column prop="newHousingNum" label="套数(套)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.newHousingNum }}</span> </template> </el-table-column> </el-table-column> <el-table-column label="二手住房" min-width="100" align="center"> <el-table-column prop="oldHousingName" label="小区名称" min-width="100" align="center" /> <el-table-column prop="householdHead" label="面积(㎡)" min-width="100" align="center" /> <el-table-column prop="householdHead" label="套数(套)" min-width="100" align="center" /> <el-table-column prop="oldHousingName" label="小区名称" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.oldHousingName }}</span> </template> </el-table-column> <el-table-column prop="oldHousingArea" label="面积(㎡)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.oldHousingArea }}</span> </template> </el-table-column> <el-table-column prop="oldHousingNum" label="套数(套)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.oldHousingNum }}</span> </template> </el-table-column> </el-table-column> <el-table-column prop="householdHead" label="新建商业用房" min-width="100" align="center"> <el-table-column prop="householdHead" label="楼盘名称" min-width="100" align="center" /> <el-table-column prop="oldHousingArea" label="面积(㎡)" min-width="100" align="center" /> <el-table-column prop="oldHousingNum" label="套数(套)" min-width="100" align="center" /> <el-table-column prop="buildHousingName" label="楼盘名称" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.buildHousingName }}</span> </template> </el-table-column> <el-table-column prop="buildHousingArea" label="面积(㎡)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.buildHousingArea }}</span> </template> </el-table-column> <el-table-column prop="buildHousingNum" label="套数(套)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.buildHousingNum }}</span> </template> </el-table-column> </el-table-column> <el-table-column label="新建停车位" min-width="100" align="center"> <el-table-column prop="newStopName" label="楼盘名称" min-width="100" align="center" /> <el-table-column prop="newStopArea" label="金额(万元)" min-width="100" align="center" /> <el-table-column prop="newStopNum" label="个数(个)" min-width="100" align="center" /> <el-table-column prop="newStopName" label="楼盘名称" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.newStopName }}</span> </template> </el-table-column> <el-table-column prop="signTime" label="自主购房协议签订时间" min-width="100" align="center" /> <el-table-column prop="compensationPayTime" label="25%补偿款及过渡补贴支付时间" min-width="100" align="center" /> <el-table-column prop="newStopArea" label="金额(万元)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.newStopArea }}</span> </template> </el-table-column> <el-table-column prop="newStopNum" label="个数(个)" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.newStopNum }}</span> </template> </el-table-column> </el-table-column> <el-table-column prop="signTime" label="自主购房协议签订时间" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.signTime }}</span> </template> </el-table-column> <el-table-column prop="compensationPayTime" label="25%补偿款及过渡补贴支付时间" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.compensationPayTime }}</span> </template> </el-table-column> <el-table-column label="剩余款项支付时间" min-width="100" align="center"> <el-table-column prop="remainingTime1" label="第一年" min-width="100" align="center" /> <el-table-column prop="remainingTime2" label="第二年" min-width="100" align="center" /> <el-table-column prop="remainingTime3" label="第三年" min-width="100" align="center" /> <el-table-column prop="remainingTime4" label="第四年" min-width="100" align="center" /> <el-table-column prop="remainingTime5" label="第四年" min-width="100" align="center" /> <el-table-column prop="remainingTime1" label="第一年" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.remainingTime1 }}</span> </template> </el-table-column> <el-table-column prop="remainingTime2" label="第二年" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.remainingTime2 }}</span> </template> </el-table-column> <el-table-column prop="remainingTime3" label="第三年" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.remainingTime3 }}</span> </template> </el-table-column> <el-table-column prop="remainingTime4" label="第四年" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.remainingTime4 }}</span> </template> </el-table-column> <el-table-column prop="remainingTime5" label="第四年" min-width="100" align="center"> <template slot-scope="scope"> <span>{{ scope.row.remainingTime5 }}</span> </template> </el-table-column> </el-table-column> <el-table-column label="操作" prop="operation" fixed="right" width="180" align="center"> <template slot-scope="scope"> src/views/relocatablePersonnel/detail.vue
@@ -108,8 +108,7 @@ </div> <div class="form-col"> <el-form-item label="安置方式" prop="ways"> <el-select v-model="form.ways" placeholder="请选择" :disabled="isView" style="width: 100%"> <el-select v-model="form.ways" placeholder="请选择" :disabled="isView" style="width: 100%"> <el-option label="统规统建" value="统规统建" /> </el-select> </el-form-item> @@ -174,6 +173,35 @@ </el-form-item> </el-col> </el-row> <div v-if="$route.query.type=='view'"> <div class="section-title">补偿金额标准</div> <el-table v-loading="loading" :data="listData"> <el-table-column label="购房时间" prop="projectName" :show-overflow-tooltip="true" /> <el-table-column label="成交金额(万元)" prop="startTime" width="150" /> <el-table-column label="新建商品住房" prop="street" :show-overflow-tooltip="true"> <el-table-column prop="noHouseArea" label="楼盘名称" /> <el-table-column prop="noShopArea" label="面积(㎡)" /> <el-table-column prop="standardPrice" label="套数" /> </el-table-column> <el-table-column label="二手住房" prop="street" :show-overflow-tooltip="true"> <el-table-column prop="noHouseArea" label="小区名称" /> <el-table-column prop="noShopArea" label="面积(㎡)" /> <el-table-column prop="standardPrice" label="套数" /> </el-table-column> <el-table-column label="新建商业用房" prop="street" :show-overflow-tooltip="true"> <el-table-column prop="noHouseArea" label="小区名称" /> <el-table-column prop="noShopArea" label="金额(万元)" /> <el-table-column prop="noShopArea" label="面积(㎡)" /> <el-table-column prop="standardPrice" label="套数" /> </el-table-column> <el-table-column label="新建停车位" prop="street" :show-overflow-tooltip="true"> <el-table-column prop="noHouseArea" label="楼盘名称" /> <el-table-column prop="noShopArea" label="金额(万元)" /> <el-table-column prop="standardPrice" label="个数" /> </el-table-column> </el-table> </div> <el-row type="flex" justify="start" class="form-row"> <el-col :span="24"> @@ -193,6 +221,7 @@ export default { name: 'PersonnelForm', data() { // 身份证号码验证 const validateIdCard = (rule, value, callback) => { const reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/ @@ -249,6 +278,8 @@ status: undefined, remark: undefined }, listData: [], loading: false, endDateOptions: { disabledDate: (time) => { if (this.form.lastBeginTime) { @@ -403,6 +434,15 @@ </script> <style scoped> .section-title { font-size: 16px; font-weight: bold; color: #303133; margin-bottom: 20px; padding-left: 10px; border-left: 4px solid #409EFF; } .app-container { padding: 20px; }