Browse Source

信息采集

V1.0
jiangyy 3 years ago
parent
commit
0231ad1c9b
  1. 790
      src/views/modules/base/collect.vue
  2. 664
      src/views/modules/base/huji/chusheng/cpts/edit.vue
  3. 550
      src/views/modules/base/huji/chusheng/index.vue
  4. 529
      src/views/modules/plugins/change/changedeath.vue
  5. 13
      src/views/modules/plugins/change/resichange.vue
  6. 101
      src/views/modules/plugins/change/resideath.vue

790
src/views/modules/base/collect.vue

@ -1,13 +1,12 @@
<template> <template>
<div class="resi-container"> <div>
<el-card ref="searchCard" class="search-card"> <div class="div_main">
<el-form <div ref="searchDiv"
ref="searchForm" class="div_search">
:inline="true" <el-form ref="searchForm"
:model="fmData" :inline="true"
class="demo-form-inline" :model="fmData">
> <!-- <el-form-item
<!-- <el-form-item
v-if="communityList.length > 0" v-if="communityList.length > 0"
label="所在社区" label="所在社区"
prop="orgId" prop="orgId"
@ -17,7 +16,7 @@
placeholder="所在社区" placeholder="所在社区"
size="small" size="small"
clearable clearable
class="resi-cell-input" class="item_width_normal"
> >
<el-option <el-option
v-for="item in communityList" v-for="item in communityList"
@ -28,296 +27,251 @@
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> --> </el-form-item> -->
<el-form-item label="居住地址" prop="address"> <el-form-item label="居住地址"
<el-input prop="address">
v-model="fmData.address" <el-input v-model="fmData.address"
class="resi-cell-input" class="item_width_normal"
size="small" size="small"
clearable clearable
placeholder="请输入" placeholder="请输入">
> </el-input>
</el-input> </el-form-item>
</el-form-item> <el-form-item label="户籍地址"
<el-form-item label="户籍地址" prop="domicilePlace"> prop="domicilePlace">
<el-input <el-input v-model="fmData.domicilePlace"
v-model="fmData.domicilePlace" class="item_width_normal"
class="resi-cell-input" size="small"
size="small" clearable
clearable placeholder="请输入">
placeholder="请输入" </el-input>
> </el-form-item>
</el-input> <el-form-item label="填写时间"
</el-form-item> prop="startTime">
<el-form-item label="填写时间" prop="startTime"> <el-date-picker v-model="timeRange"
<el-date-picker type="daterange"
v-model="timeRange" clearable
type="daterange" size="small"
clearable class="item_width_daterange2"
size="small" range-separator="至"
range-separator="至" start-placeholder="开始日期"
start-placeholder="开始日期" end-placeholder="结束日期"
end-placeholder="结束日期" value-format="yyyy-MM-dd">
value-format="yyyy-MM-dd" </el-date-picker>
> </el-form-item>
</el-date-picker>
</el-form-item> <div class="div_search_btn">
<el-form-item> <el-button class="diy-button--white"
<el-button size="small"
class="diy-button--search" @click="resetForm('searchForm')">重置</el-button>
size="small" <el-button style="margin-left:10px"
@click="handleSearch" size="small"
>查询</el-button class="diy-button--blue"
> @click="handleSearch">查询</el-button>
<el-button
class="diy-button--reset" </div>
size="small"
@click="resetForm('searchForm')" </el-form>
>重置</el-button
>
</el-form-item>
</el-form>
</el-card>
<el-card class="resi-card-table">
<div class="resi-row-btn">
<el-button @click="handleChu" class="diy-button--reset" size="small"
>导出</el-button
>
</div> </div>
<el-table <div class="div_table">
:data="tableData" <div class="div_btn">
border <div class="div_btn_left">
style="width: 100%" <el-button @click="handleChu"
class="resi-table" class="diy-button--white"
:height="tableHeight" size="small">导出</el-button>
:span-method="arraySpanMethod" </div>
> </div>
<el-table-column label="序号" prop="desc" align="center" width="50"/> <el-table :data="tableData"
<el-table-column border
prop="houseHolderName" style="width: 100%"
width="100" class="div_table_item"
label="户主姓名" :height="tableHeight"
align="center" :span-method="arraySpanMethod">
:show-overflow-tooltip="true" <el-table-column label="序号"
/> prop="desc"
<el-table-column align="center"
prop="address" width="50" />
align="center" <el-table-column prop="houseHolderName"
min-width="140" width="100"
label="居住地址" label="户主姓名"
:show-overflow-tooltip="true" align="center"
> :show-overflow-tooltip="true" />
<template slot-scope="scope"> <el-table-column prop="address"
<span v-if="scope.row.homeId == 'other'" class="badge">房屋缺失</span> align="center"
<span>{{scope.row.address}}</span> min-width="140"
</template> label="居住地址"
</el-table-column> :show-overflow-tooltip="true">
<el-table-column <template slot-scope="scope">
prop="houseType" <span v-if="scope.row.homeId == 'other'"
align="center" class="badge">房屋缺失</span>
width="100" <span>{{scope.row.address}}</span>
label="房屋状态" </template>
> </el-table-column>
<template slot-scope="scope"> <el-table-column prop="houseType"
<span v-if="scope.row.houseType == 1">出租</span> align="center"
<span v-if="scope.row.houseType == 2">闲置</span> width="100"
<span v-if="scope.row.houseType == 3">未售出</span> label="房屋状态">
<span v-if="scope.row.houseType == 0">自住</span> <template slot-scope="scope">
</template> <span v-if="scope.row.houseType == 1">出租</span>
</el-table-column> <span v-if="scope.row.houseType == 2">闲置</span>
<el-table-column <span v-if="scope.row.houseType == 3">未售出</span>
prop="totalResi" <span v-if="scope.row.houseType == 0">自住</span>
width="80" </template>
align="center" </el-table-column>
label="居住人数" <el-table-column prop="totalResi"
/> width="80"
<el-table-column align="center"
prop="memberName" label="居住人数" />
width="100" <el-table-column prop="memberName"
label="成员姓名" width="100"
align="center" label="成员姓名"
:show-overflow-tooltip="true" align="center"
/> :show-overflow-tooltip="true" />
<el-table-column <el-table-column prop="memberIdNum"
prop="memberIdNum" width="180"
width="180" align="center"
align="center" label="成员证件号"
label="成员证件号" :show-overflow-tooltip="true" />
:show-overflow-tooltip="true" <el-table-column prop="memberMobile"
/> width="140"
<el-table-column align="center"
prop="memberMobile" label="成员手机号"
width="140" :show-overflow-tooltip="true" />
align="center" <el-table-column prop="relationship"
label="成员手机号" min-width="120"
:show-overflow-tooltip="true" align="center"
/> label="与户主关系"
<el-table-column :show-overflow-tooltip="true">
prop="relationship" <template slot-scope="scope">
min-width="120" <span>{{getRelationshipName(scope.row.relationship)}}</span>
align="center" </template>
label="与户主关系" </el-table-column>
:show-overflow-tooltip="true" <el-table-column prop="heSuanCount"
> width="120"
<template slot-scope="scope"> align="center"
<span>{{getRelationshipName(scope.row.relationship)}}</span> label="核酸检测次数" />
</template>
</el-table-column>
<el-table-column
prop="heSuanCount"
width="120"
align="center"
label="核酸检测次数"
/>
<el-table-column <el-table-column prop="ymjz"
prop="ymjz" width="140"
width="140" align="center"
align="center" label="疫苗接种情况">
label="疫苗接种情况" <template slot-scope="scope">
> <span v-if="scope.row.ymjz == 1">全程接种</span>
<template slot-scope="scope"> <span v-if="scope.row.ymjz == 2">未全程接种</span>
<span v-if="scope.row.ymjz == 1">全程接种</span> <span v-if="scope.row.ymjz == 0">未接种</span>
<span v-if="scope.row.ymjz == 2">未全程接种</span> </template>
<span v-if="scope.row.ymjz == 0">未接种</span> </el-table-column>
</template> <el-table-column prop="domicilePlace"
</el-table-column> min-width="140"
<el-table-column align="center"
prop="domicilePlace" label="户籍地址"
min-width="140" :show-overflow-tooltip="true" />
align="center" <el-table-column prop="workPlace"
label="户籍地址" min-width="120"
:show-overflow-tooltip="true" align="center"
/> label="单位名称"
<el-table-column :show-overflow-tooltip="true" />
prop="workPlace" <el-table-column prop="remark"
min-width="120" align="center"
align="center" label="备注"
label="单位名称" :show-overflow-tooltip="true">
:show-overflow-tooltip="true" </el-table-column>
/> <el-table-column prop="faceImg"
<el-table-column min-width="120"
prop="remark" align="center"
align="center" label="人脸">
label="备注" <template slot-scope="scope">
:show-overflow-tooltip="true" <el-image style="max-height: 50px; max-width: 50px;"
> :src="scope.row.faceImg"
</el-table-column> :preview-src-list="[scope.row.faceImg]">
<el-table-column <div slot="error"
prop="faceImg" class="image-slot">
min-width="120" <!-- <i class="el-icon-picture-outline"></i> -->
align="center" </div>
label="人脸" </el-image>
> </template>
<template slot-scope="scope"> </el-table-column>
<el-image <el-table-column prop="checkState"
style="max-height: 50px; max-width: 50px;" min-width="120"
:src="scope.row.faceImg" align="center"
:preview-src-list="[scope.row.faceImg]"> label="状态"
<div slot="error" class="image-slot"> :show-overflow-tooltip="true"
<!-- <i class="el-icon-picture-outline"></i> --> fixed="right">
</div> <template slot-scope="scope">
</el-image> <span v-if="scope.row.checkState === '0'">未审核</span>
</template> <span v-else-if="scope.row.checkState === '1'">未通过</span>
</el-table-column> <span v-else-if="scope.row.checkState === '2'">已通过</span>
<el-table-column <span v-else></span>
prop="checkState" </template>
min-width="120" </el-table-column>
align="center" <el-table-column label="操作"
label="状态" align="center"
:show-overflow-tooltip="true" width="100"
fixed="right" fixed="right">
> <template slot-scope="scope">
<template slot-scope="scope"> <el-button type="text"
<span v-if="scope.row.checkState === '0'">未审核</span> class="div-table-button--blue"
<span v-else-if="scope.row.checkState === '1'">未通过</span> size="small"
<span v-else-if="scope.row.checkState === '2'">已通过</span> @click="handleWatch('look', scope.row)">查看</el-button>
<span v-else></span> <el-button type="text"
</template> class="div-table-button--blue"
</el-table-column> size="small"
<el-table-column label="操作" align="center" width="100" fixed="right"> v-if="scope.row.agencyId == agencyId && scope.row.checkState === '0'"
<template slot-scope="scope"> @click="handleWatch('check', scope.row)">审核</el-button>
<el-button </template>
type="text" </el-table-column>
class="div-table-button--detail" </el-table>
size="small" <div>
@click="handleWatch('look', scope.row)" <el-pagination @size-change="handleSizeChange"
>查看</el-button @current-change="handleCurrentChange"
> :current-page.sync="pageNo"
<el-button :page-sizes="[20, 50, 100, 200]"
type="text" :page-size="parseInt(pageSize)"
class="div-table-button--detail" layout="sizes, prev, pager, next, total"
size="small" :total="total">
v-if="scope.row.agencyId == agencyId && scope.row.checkState === '0'" </el-pagination>
@click="handleWatch('check', scope.row)" </div>
>审核</el-button
>
</template>
</el-table-column>
</el-table>
<div>
<el-pagination
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page.sync="pageNo"
:page-sizes="[20, 50, 100, 200]"
:page-size="parseInt(pageSize)"
layout="sizes, prev, pager, next, total"
:total="total"
>
</el-pagination>
</div> </div>
</el-card> </div>
<!-- 修改弹出框 --> <!-- 修改弹出框 -->
<el-dialog <el-dialog :visible.sync="formShow"
:visible.sync="formShow" :close-on-click-modal="false"
:close-on-click-modal="false" :close-on-press-escape="false"
:close-on-press-escape="false" title="信息详情"
title="信息详情" width="1100px"
width="1100px" top="5vh"
top="5vh" class="dialog-h"
class="dialog-h" @closed="handleClose">
@closed="handleClose" <div class="dialog-h-content scroll-h">
> <el-form ref="ref_form"
<div class="scroll-h"> :inline="true"
<el-form :model="dataForm"
ref="ref_form" :disabled="true"
:inline="true" label-width="150px"
:model="dataForm" class="edit_form">
:disabled="true" <el-form-item label="户主姓名"
class="form" prop="houseHolderName">
>
<el-form-item
label="户主姓名:"
prop="houseHolderName"
label-width="150px"
>
<!-- <el-input class="item_width_1" <!-- <el-input class="item_width_1"
v-model="dataForm.houseHolderName"> v-model="dataForm.houseHolderName">
</el-input> --> </el-input> -->
<div class="wd50">{{ dataForm.houseHolderName }}</div> <div class="wd50">{{ dataForm.houseHolderName }}</div>
</el-form-item> </el-form-item>
<el-form-item label="居住地址:" prop="address" label-width="150px"> <el-form-item label="居住地址"
prop="address">
<!-- <el-input class="wd50" v-model="dataForm.address"> <!-- <el-input class="wd50" v-model="dataForm.address">
</el-input> --> </el-input> -->
<div class="wd50">{{ dataForm.address }}</div> <div class="wd50">{{ dataForm.address }}</div>
</el-form-item> </el-form-item>
<div> <div>
<el-form-item <el-form-item label="房屋状态"
label="房屋状态:" prop="houseType">
prop="houseType"
label-width="150px"
>
<!-- <el-input class="item_width_1" <!-- <el-input class="item_width_1"
v-model="dataForm.houseType"> v-model="dataForm.houseType">
</el-input> --> </el-input> -->
<div class="wd50">{{ dataForm.houseType }}</div> <div class="wd50">{{ dataForm.houseType }}</div>
</el-form-item> </el-form-item>
<el-form-item <el-form-item label="居住人数"
label="居住人数:" prop="totalResi">
prop="totalResi"
label-width="150px"
>
<!-- <el-input class="item_width_1" <!-- <el-input class="item_width_1"
v-model="dataForm.totalResi"> v-model="dataForm.totalResi">
</el-input> --> </el-input> -->
@ -325,102 +279,84 @@
</el-form-item> </el-form-item>
</div> </div>
</el-form> </el-form>
<el-table <el-table :data="dataForm.list"
:data="dataForm.list" border
border style="width: 1010px; margin: 20px"
style="width: 1060px; margin: 20px" :height="dialogTableHeight">
class="resi-table" <el-table-column label="序号"
:height="dialogTableHeight" type="index"
> align="center"
<el-table-column width="50" />
label="序号" <el-table-column prop="memberName"
type="index" width="100"
align="center" label="成员姓名"
width="50" align="center"
/> :show-overflow-tooltip="true" />
<el-table-column <el-table-column prop="memberIdNum"
prop="memberName" width="180"
width="100" align="center"
label="成员姓名" label="成员证件号"
align="center" :show-overflow-tooltip="true" />
:show-overflow-tooltip="true" <el-table-column prop="memberMobile"
/> width="140"
<el-table-column align="center"
prop="memberIdNum" label="成员手机号"
width="180" :show-overflow-tooltip="true" />
align="center" <el-table-column prop="heSuanCount"
label="成员证件号" width="120"
:show-overflow-tooltip="true" align="center"
/> label="核酸检测次数" />
<el-table-column
prop="memberMobile"
width="140"
align="center"
label="成员手机号"
:show-overflow-tooltip="true"
/>
<el-table-column
prop="heSuanCount"
width="120"
align="center"
label="核酸检测次数"
/>
<el-table-column <el-table-column prop="ymjz"
prop="ymjz" width="140"
width="140" align="center"
align="center" label="疫苗接种情况">
label="疫苗接种情况"
>
<template slot-scope="scope"> <template slot-scope="scope">
<span v-if="scope.row.ymjz == 1">全程接种</span> <span v-if="scope.row.ymjz == 1">全程接种</span>
<span v-if="scope.row.ymjz == 2">未全程接种</span> <span v-if="scope.row.ymjz == 2">未全程接种</span>
<span v-if="scope.row.ymjz == 0">未接种</span> <span v-if="scope.row.ymjz == 0">未接种</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="domicilePlace"
prop="domicilePlace" min-width="140"
min-width="140" align="center"
align="center" label="户籍所在地 "
label="户籍所在地 " :show-overflow-tooltip="true" />
:show-overflow-tooltip="true" <el-table-column prop="workPlace"
/> min-width="120"
<el-table-column align="center"
prop="workPlace" label="单位或学校 "
min-width="120" :show-overflow-tooltip="true" />
align="center" <el-table-column prop="remark"
label="单位或学校 " align="center"
:show-overflow-tooltip="true" label="备注"
/> :show-overflow-tooltip="true">
<el-table-column
prop="remark"
align="center"
label="备注"
:show-overflow-tooltip="true"
>
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="faceImg"
prop="faceImg" min-width="120"
min-width="120" align="center"
align="center" label="人脸">
label="人脸" <template slot-scope="scope">
> <el-image style="max-height: 50px; max-width: 50px;"
<template slot-scope="scope"> :src="scope.row.faceImg"
<el-image :preview-src-list="[scope.row.faceImg]">
style="max-height: 50px; max-width: 50px;" <div slot="error"
:src="scope.row.faceImg" class="image-slot">
:preview-src-list="[scope.row.faceImg]"> <!-- <i class="el-icon-picture-outline"></i> -->
<div slot="error" class="image-slot"> </div>
<!-- <i class="el-icon-picture-outline"></i> --> </el-image>
</div> </template>
</el-image>
</template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<div class="resi-btns">
<div class="div_btn">
<el-button @click="formShow = false">{{ $t('cancel') }}</el-button> <el-button @click="formShow = false">{{ $t('cancel') }}</el-button>
<el-button v-if="dialogType == 'check'" type="danger" @click="checkHandle('1')">{{ $t('checkBTGBtn') }}</el-button> <el-button v-if="dialogType == 'check'"
<el-button v-if="dialogType == 'check'" type="danger" @click="showAddHouse">{{ $t('checkTGBtn') }}</el-button> class="diy-button--blue"
@click="checkHandle('1')">{{ $t('checkBTGBtn') }}</el-button>
<el-button v-if="dialogType == 'check'"
class="diy-button--blue"
@click="showAddHouse">{{ $t('checkTGBtn') }}</el-button>
</div> </div>
</div> </div>
</el-dialog> </el-dialog>
@ -448,7 +384,7 @@ import axios from "axios";
import roomForm from './roomForm' import roomForm from './roomForm'
export default { export default {
data() { data () {
return { return {
agencyId: '', agencyId: '',
openSearch: false, openSearch: false,
@ -484,19 +420,19 @@ export default {
}, },
computed: { computed: {
...mapGetters(["clientHeight", "iframeHeight"]), ...mapGetters(["clientHeight", "iframeHeight"]),
tableHeight() { tableHeight () {
const h = this.clientHeight - 360 + this.iframeHeigh; const h = this.clientHeight - 360 + this.iframeHeigh;
const _h = this.clientHeight - 360; const _h = this.clientHeight - 360;
return this.$store.state.inIframe ? h : _h; return this.$store.state.inIframe ? h : _h;
}, },
dialogTableHeight() { dialogTableHeight () {
const h = this.clientHeight - 460 + this.iframeHeigh; const h = this.clientHeight - 460 + this.iframeHeigh;
const _h = this.clientHeight - 460; const _h = this.clientHeight - 460;
return this.$store.state.inIframe ? h : _h; return this.$store.state.inIframe ? h : _h;
}, },
}, },
watch: { watch: {
timeRange(val) { timeRange (val) {
if (Array.isArray(val) && val.length == 2) { if (Array.isArray(val) && val.length == 2) {
this.fmData.startTime = val[0]; this.fmData.startTime = val[0];
this.fmData.endTime = val[1]; this.fmData.endTime = val[1];
@ -515,12 +451,12 @@ export default {
this.getTableData() this.getTableData()
}, },
methods: { methods: {
async getDictList() { async getDictList () {
const url = "/sys/dict/data/relationship" const url = "/sys/dict/data/relationship"
const { data, code, msg } = await requestPost(url, { formCode: "resi_base_info" }) const { data, code, msg } = await requestPost(url, { formCode: "resi_base_info" })
if (code === 0) { if (code === 0) {
this.relationshipOptions = [ ...data ] this.relationshipOptions = [...data]
} else { } else {
this.$message.success("操作失败!") this.$message.success("操作失败!")
} }
@ -534,7 +470,7 @@ export default {
}) })
return label return label
}, },
arraySpanMethod({ row, column, rowIndex, columnIndex }) { arraySpanMethod ({ row, column, rowIndex, columnIndex }) {
// console.log('row-----r', row) // console.log('row-----r', row)
// console.log('column-----c', column) // console.log('column-----c', column)
if ( if (
@ -562,7 +498,7 @@ export default {
} }
} }
}, },
async handleChu() { async handleChu () {
const url = "/epmetuser/icresicollect/export"; const url = "/epmetuser/icresicollect/export";
const { pageSize, pageNo, fmData } = this; const { pageSize, pageNo, fmData } = this;
axios({ axios({
@ -596,33 +532,33 @@ export default {
return this.$message.error("网络错误"); return this.$message.error("网络错误");
}); });
}, },
handleSizeChange(val) { handleSizeChange (val) {
console.log(`每页 ${val}`); console.log(`每页 ${val}`);
this.pageSize = val; this.pageSize = val;
window.localStorage.setItem("pageSize", val); window.localStorage.setItem("pageSize", val);
this.getTableData(); this.getTableData();
}, },
handleCurrentChange(val) { handleCurrentChange (val) {
console.log(`当前页: ${val}`); console.log(`当前页: ${val}`);
this.pageNo = val; this.pageNo = val;
this.getTableData(); this.getTableData();
}, },
handleClose() { handleClose () {
this.formShow = false; this.formShow = false;
}, },
handleSearch(val) { handleSearch (val) {
console.log(this.fmData); console.log(this.fmData);
this.pageNo = 1; this.pageNo = 1;
this.getTableData(); this.getTableData();
}, },
resetForm(formName) { resetForm (formName) {
this.$refs[formName].resetFields(); this.$refs[formName].resetFields();
this.timeRange = ""; this.timeRange = "";
this.handleSearch(); this.handleSearch();
}, },
async handleWatch(type, row) { async handleWatch (type, row) {
this.dialogType = type this.dialogType = type
// this.formShow = true; // this.formShow = true;
await nextTick(); await nextTick();
@ -645,17 +581,17 @@ export default {
} }
}, },
async handleEdit(rowIndex) { async handleEdit (rowIndex) {
this.formShow = true; this.formShow = true;
await nextTick(); await nextTick();
this.$refs.eleEditForm.initForm("edit", this.tableData[rowIndex]); this.$refs.eleEditForm.initForm("edit", this.tableData[rowIndex]);
}, },
handleEditSuccess() { handleEditSuccess () {
this.handleClose(); this.handleClose();
this.getTableData(); this.getTableData();
}, },
async handleDel(rowData, rowIndex) { async handleDel (rowData, rowIndex) {
console.log(rowData, rowIndex); console.log(rowData, rowIndex);
const url = const url =
"/heart/iccommunityselforganization/delcommunityselforganization"; "/heart/iccommunityselforganization/delcommunityselforganization";
@ -672,7 +608,7 @@ export default {
this.$message.success("操作失败!"); this.$message.success("操作失败!");
} }
}, },
async getcommunityList() { async getcommunityList () {
const url = "/gov/org/agency/community-list"; const url = "/gov/org/agency/community-list";
const { data, code, msg } = await requestPost(url); const { data, code, msg } = await requestPost(url);
if (code === 0) { if (code === 0) {
@ -681,7 +617,7 @@ export default {
} else { } else {
} }
}, },
async getTableData() { async getTableData () {
const url = "/epmetuser/icresicollect/list" const url = "/epmetuser/icresicollect/list"
const { pageSize, pageNo, fmData } = this const { pageSize, pageNo, fmData } = this
const { data, code, msg } = await requestPost(url, { const { data, code, msg } = await requestPost(url, {
@ -713,7 +649,7 @@ export default {
} }
}, },
// //
formatArr(arr) { formatArr (arr) {
let res = []; let res = [];
let arr1 = arr.map((n, index) => { let arr1 = arr.map((n, index) => {
return { return {
@ -721,13 +657,13 @@ export default {
list: list:
n.list.length > 0 n.list.length > 0
? n.list.map((i) => { ? n.list.map((i) => {
return { return {
...n, ...n,
...i, ...i,
desc: index + 1, desc: index + 1,
list: [], list: [],
}; };
}) })
: [], : [],
}; };
}); });
@ -771,7 +707,7 @@ export default {
this.getTableData() this.getTableData()
// //
// this.fileJurisdiction(params) // this.fileJurisdiction(params)
}).catch(() => {}) }).catch(() => { })
}).catch(() => { }).catch(() => {
// //
}) })
@ -785,7 +721,7 @@ export default {
this.getTableData() this.getTableData()
// //
// this.fileJurisdiction(params) // this.fileJurisdiction(params)
}).catch(() => {}) }).catch(() => { })
} }
}, },
// //
@ -795,17 +731,17 @@ export default {
return this.$message.error(res.msg) return this.$message.error(res.msg)
} }
this.$message({ this.$message({
message: this.$t('prompt.success'), message: this.$t('prompt.success'),
type: 'success', type: 'success',
duration: 500, duration: 500,
onClose: () => { onClose: () => {
this.disabledBtn = false this.disabledBtn = false
this.checkVisible = false this.checkVisible = false
this.visible = false this.visible = false
this.$emit('refreshDataList') this.$emit('refreshDataList')
} }
}) })
}).catch(() => {}) }).catch(() => { })
}, },
roomFormOk (e) { roomFormOk (e) {
this.dataForm.buildingUnitId = e.buildingUnitId this.dataForm.buildingUnitId = e.buildingUnitId
@ -817,48 +753,6 @@ export default {
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
@import "@/assets/scss/buttonstyle.scss"; @import "@/assets/scss/modules/management/list-main.scss";
@import "@/assets/scss/modules/management/edit-main.scss";
.resi-container .resi-card-table {
::v-deep .el-table th {
color: #fff;
background-color: rgba(33, 149, 254, 1);
// border-right: 1px solid rgba(33, 149, 254, 1);
}
}
.resi-table {
::v-deep .el-button--text {
text-decoration: underline;
}
}
.resi-card-table {
margin-top: 20px;
}
.resi-row-btn {
margin-bottom: 13px;
.upload-btn {
display: inline-block;
margin: 0 10px;
}
}
.resi-btns {
margin-top: 20px;
text-align: center;
}
.resi-container .resi-card {
position: relative;
overflow: visible;
}
.wd50 {
min-width: 200px;
}
.badge {
display: block;
color: #F1F2E5;
background-color: #D7000F;
border-radius: 12px;
width: 70px;
}
</style> </style>

664
src/views/modules/base/huji/chusheng/cpts/edit.vue

@ -1,377 +1,275 @@
<template> <template>
<div> <div>
<div class="dialog-h-content scroll-h"> <div class="dialog-h-content scroll-h">
<el-form <el-form ref="ref_form"
ref="ref_form" :inline="true"
:inline="true" :model="fmData"
:model="fmData" :rules="dataRule"
:rules="dataRule" label-width="150px"
:disabled="formType === 'detail'" class="edit_form">
class="form" <el-form-item label="所属网格 "
> prop="gridId"
<el-form-item style="display: block">
label="所属网格 " <el-select v-model.trim="fmData.gridId"
prop="gridId" placeholder="请选择"
label-width="150px" size="small"
style="display: block" clearable
> class="edit_item_width_normal"
<el-select @change="handleChangeGrid"
v-model.trim="fmData.gridId" :disabled="formType === 'edit'">
placeholder="请选择" <el-option v-for="item in optionsG"
size="small" :key="item.value"
clearable :label="item.label"
class="resi-cell-select" :value="item.value">
@change="handleChangeGrid"
:disabled="formType === 'edit'"
style="width: 250px"
>
<el-option
v-for="item in optionsG"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item <el-form-item label="所属房屋 "
label="所属房屋 " prop="homeId"
prop="homeId" style="display: block">
label-width="150px" <div>
style="display: block" <el-select v-model.trim="fmData.villageId"
> placeholder="请选择小区"
<el-select size="small"
v-model.trim="fmData.villageId" clearable
placeholder="请选择小区" class="edit_item_width_normal"
size="small" @clear="handleClearVillage"
clearable @change="handleChangeV"
class="resi-cell-select" :disabled="formType === 'edit'">
@clear="handleClearVillage" <el-option v-for="item in optionsV"
@change="handleChangeV" :key="item.value"
:disabled="formType === 'edit'" :label="item.label"
style="margin-right: 8px; width: 120px" :value="item.value">
> </el-option>
<el-option </el-select>
v-for="item in optionsV" </div>
:key="item.value" <div>
:label="item.label" <el-select v-model.trim="fmData.buildId"
:value="item.value" placeholder="楼号"
> size="small"
</el-option> clearable
</el-select> class="edit_item_width_build"
<el-select :disabled="changeVDisabled || formType === 'edit'"
v-model.trim="fmData.buildId" @clear="handleClearBuild"
placeholder="楼号" @change="handleChangeB">
size="small" <el-option v-for="item in optionsB"
clearable :key="item.value"
style="margin-right: 8px; width: 120px" :label="item.label"
class="resi-cell-select" :value="item.value">
:disabled="changeVDisabled || formType === 'edit'" </el-option>
@clear="handleClearBuild" </el-select>
@change="handleChangeB" <el-select v-model.trim="fmData.unitId"
> :disabled="changeBDisabled || formType === 'edit'"
<el-option placeholder="单元"
v-for="item in optionsB" size="small"
:key="item.value" clearable
:label="item.label" style="margin-left: 10px;"
:value="item.value" class="edit_item_width_build"
> @click="handleClearDan"
</el-option> @change="handleChangeD">
</el-select> <el-option v-for="item in optionsD"
<el-select :key="item.value"
v-model.trim="fmData.unitId" :label="item.label"
:disabled="changeBDisabled || formType === 'edit'" :value="item.value">
placeholder="单元" </el-option>
size="small" </el-select>
clearable <el-select v-model.trim="fmData.homeId"
style="margin-right: 8px; width: 120px" :disabled="changeDDisabled || formType === 'edit'"
class="resi-cell-select" placeholder="房号"
@click="handleClearDan" size="small"
@change="handleChangeD" clearable
> @change="handleChangeH"
<el-option style="margin-left: 10px;"
v-for="item in optionsD" class="edit_item_width_build">
:key="item.value" <el-option v-for="item in optionsH"
:label="item.label" :key="item.value"
:value="item.value" :label="item.label"
> :value="item.value">
</el-option> </el-option>
</el-select> </el-select>
<el-select </div>
v-model.trim="fmData.homeId"
:disabled="changeDDisabled || formType === 'edit'"
placeholder="房号"
size="small"
clearable
@change="handleChangeH"
style="width: 120px"
class="resi-cell-select"
>
<el-option
v-for="item in optionsH"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</el-select>
</el-form-item> </el-form-item>
<el-form-item <el-form-item label="姓名"
label="姓名" prop="name"
prop="name" style="display: block">
label-width="150px" <el-input maxlength="30"
style="display: block" show-word-limit
> class="edit_item_width_normal"
<el-input placeholder="请输入姓名 "
class="item_width_1" :disabled="formType === 'edit'"
maxlength="30" v-model="fmData.name">
show-word-limit
style="width: 200px; margin-right: 20px"
placeholder="请输入姓名 "
:disabled="formType === 'edit'"
v-model="fmData.name"
>
</el-input> </el-input>
<div>
<el-checkbox <el-checkbox v-model="fmData.isWelfare"
v-model="fmData.isWelfare" :disabled="formType === 'edit'"
:disabled="formType === 'edit'" true-label="1"
true-label="1" false-label="0">享受福利</el-checkbox>
false-label="0" <el-checkbox v-model="fmData.isCheck"
>享受福利</el-checkbox true-label="1"
> false-label="0"
<el-checkbox :disabled="formType === 'edit'"
v-model="fmData.isCheck" @change="checkResiAvailable">补充居民信息</el-checkbox>
true-label="1" </div>
false-label="0"
:disabled="formType === 'edit'"
@change="checkResiAvailable"
>补充居民信息</el-checkbox
>
</el-form-item> </el-form-item>
<el-form-item <el-form-item label="手机号"
label="手机号" prop="mobile"
prop="mobile" style="display: block">
label-width="150px" <el-input class="edit_item_width_normal"
style="display: block" maxlength="30"
> show-word-limit
<el-input placeholder="请输入手机号 "
class="item_width_1" v-model="fmData.mobile"
maxlength="30" :disabled="formType === 'edit'">
show-word-limit
placeholder="请输入手机号 "
v-model="fmData.mobile"
:disabled="formType === 'edit'"
>
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item <el-form-item label="证件号"
label="证件号" prop="idCard"
prop="idCard" style="display: block">
label-width="150px" <el-input class="edit_item_width_normal"
style="display: block" maxlength="30"
> placeholder="请输入身份证号或护照号"
<el-input v-model="fmData.idCard"
class="item_width_1" @blur="handleBlurId"
maxlength="30" :disabled="formType === 'edit'"></el-input>
placeholder="请输入身份证号或护照号"
v-model="fmData.idCard"
@blur="handleBlurId"
:disabled="formType === 'edit'"
></el-input>
</el-form-item> </el-form-item>
<el-form-item <el-form-item label="性别"
label="性别" prop="principalName"
prop="principalName" style="display: block">
label-width="150px" <el-select v-model.trim="fmData.gender"
style="display: block" placeholder="性别"
> size="small"
<el-select clearable
v-model.trim="fmData.gender" class="edit_item_width_normal"
placeholder="性别" :disabled="formType === 'edit'">
size="small" <el-option v-for="item in optionsGender"
clearable :key="item.value"
style="width: 120px" :label="item.label"
class="resi-cell-select" :value="item.value">
:disabled="formType === 'edit'"
>
<el-option
v-for="item in optionsGender"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item <el-form-item label="出生日期"
label="出生日期" prop="birthday"
prop="birthday" style="display: block">
label-width="150px" <el-date-picker v-model="fmData.birthday"
style="display: block" type="date"
> class="edit_item_width_normal"
<el-date-picker placeholder="出生日期"
v-model="fmData.birthday" value-format="yyyy-MM-dd"
type="date" :disabled="formType === 'edit'">
placeholder="出生日期"
value-format="yyyy-MM-dd"
:disabled="formType === 'edit'"
>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item <el-form-item label="出生地"
label="出生地" prop="birthplace"
prop="birthplace" style="display: block">
label-width="150px" <el-input class="edit_item_width_normal"
style="display: block" maxlength="50"
> show-word-limit
<el-input placeholder="请输入出生地"
class="item_width_1" v-model="fmData.birthplace">
maxlength="50"
show-word-limit
placeholder="请输入出生地"
v-model="fmData.birthplace"
>
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item <el-form-item label="出生人父亲姓名"
label="出生人父亲姓名" prop="father"
prop="father" style="display: block">
label-width="150px" <el-input class="edit_item_width_normal"
style="display: block" maxlength="30"
> show-word-limit
<el-input placeholder="请输入出生人父亲姓名"
class="item_width_1" v-model="fmData.father">
maxlength="30"
show-word-limit
placeholder="请输入出生人父亲姓名"
v-model="fmData.father"
>
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item <el-form-item label="出生人母亲姓名"
label="出生人母亲姓名" prop="mother"
prop="mother" style="display: block">
label-width="150px" <el-input class="edit_item_width_normal"
style="display: block" maxlength="30"
> show-word-limit
<el-input placeholder="请输入出生人母亲姓名"
class="item_width_1" v-model="fmData.mother">
maxlength="30"
show-word-limit
placeholder="请输入出生人母亲姓名"
v-model="fmData.mother"
>
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item <el-form-item label="胎次"
label="胎次" prop="count"
prop="count" style="display: block">
label-width="150px" <el-input-number v-model="fmData.count"
style="display: block" class="edit_item_width_normal"
> :min="1"
<el-input-number :max="50"
v-model="fmData.count" label="请输入胎次"></el-input-number>
:min="1"
:max="50"
label="请输入胎次"
></el-input-number>
</el-form-item> </el-form-item>
<el-form-item <el-form-item label="申报户口日期"
label="申报户口日期" prop="reportDate"
prop="reportDate" style="display: block">
label-width="150px" <el-date-picker v-model="fmData.reportDate"
style="display: block" class="edit_item_width_normal"
> placeholder="申报户口日期"
<el-date-picker value-format="yyyy-MM-dd">
v-model="fmData.reportDate"
placeholder="申报户口日期"
value-format="yyyy-MM-dd"
>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item <el-form-item label="户主姓名"
label="户主姓名" prop="householderName"
prop="householderName" style="display: block">
label-width="150px" <el-input class="edit_item_width_normal"
style="display: block" maxlength="50"
> show-word-limit
<el-input placeholder="请输入户主姓名"
class="item_width_1" :disabled="fmData.alreadyHaveMaster"
maxlength="50" v-model="fmData.householderName">
show-word-limit
placeholder="请输入户主姓名"
:disabled="fmData.alreadyHaveMaster"
v-model="fmData.householderName"
>
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item <el-form-item label="与户主关系"
label="与户主关系" prop="householderRelation"
prop="householderRelation" style="display: block">
label-width="150px" <el-select v-model.trim="fmData.householderRelation"
style="display: block" placeholder="与户主关系"
> size="small"
<el-select clearable
v-model.trim="fmData.householderRelation" class="edit_item_width_normal">
placeholder="与户主关系" <el-option v-for="item in optionsRelation"
size="small" :key="item.value"
clearable :label="item.label"
style="width: 120px" :value="item.value">
class="resi-cell-select"
>
<el-option
v-for="item in optionsRelation"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item <el-form-item v-if="false"
v-if="false" label="备注"
label="备注" prop="remark"
prop="remark" style="display: block">
label-width="150px" <el-input class="edit_item_width_normal"
style="display: block" type="textarea"
> maxlength="500"
<el-input show-word-limit
class="item_width_1" :rows="3"
type="textarea" placeholder="请输入备注,不超过500字"
maxlength="500" v-model="fmData.remark"></el-input>
show-word-limit
:rows="3"
placeholder="请输入备注,不超过500字"
v-model="fmData.remark"
></el-input>
</el-form-item> </el-form-item>
</el-form> </el-form>
</div> </div>
<div class="div_btn resi-btns">
<el-button size="small" @click="handleCancle"> </el-button> <div class="div_btn">
<el-button <el-button size="small"
v-if="formType != 'detail'" @click="handleCancle"> </el-button>
type="primary" <el-button type="primary"
size="small" size="small"
:disabled="btnDisable" class="diy-button--blue"
@click="handleComfirm" :disabled="btnDisable"
> </el-button @click="handleComfirm"> </el-button>
>
</div> </div>
</div> </div>
</template> </template>
@ -385,7 +283,7 @@ import { isCard } from "@/utils/validate";
let loading; // let loading; //
function iniFmData() { function iniFmData () {
return { return {
id: "", id: "",
gridId: "", gridId: "",
@ -412,7 +310,7 @@ function iniFmData() {
} }
export default { export default {
data() { data () {
return { return {
formType: "add", // addeditdetail formType: "add", // addeditdetail
@ -441,7 +339,7 @@ export default {
}, },
components: {}, components: {},
computed: { computed: {
dataRule() { dataRule () {
let checkIdCard = (rule, value, callback) => { let checkIdCard = (rule, value, callback) => {
if (value === "") { if (value === "") {
callback(new Error("请输入证件号")); callback(new Error("请输入证件号"));
@ -471,27 +369,27 @@ export default {
}; };
}, },
changeVDisabled() { changeVDisabled () {
return !this.fmData.villageId; return !this.fmData.villageId;
}, },
changeBDisabled() { changeBDisabled () {
return !this.fmData.buildId; return !this.fmData.buildId;
}, },
changeDDisabled() { changeDDisabled () {
return !this.fmData.unitId; return !this.fmData.unitId;
}, },
}, },
props: {}, props: {},
watch: {}, watch: {},
async mounted() { async mounted () {
this.getGridList(); this.getGridList();
this.getValiheList(); this.getValiheList();
this.getRelationList(); this.getRelationList();
}, },
methods: { methods: {
async checkResiAvailable() { async checkResiAvailable () {
const { const {
fmData: { idCard, isCheck }, fmData: { idCard, isCheck },
} = this; } = this;
@ -517,7 +415,7 @@ export default {
} }
}, },
handleBlurId() { handleBlurId () {
const { sex, birth, age } = computedCard(this.fmData.idCard); const { sex, birth, age } = computedCard(this.fmData.idCard);
if (birth) { if (birth) {
this.fmData.birthday = birth; this.fmData.birthday = birth;
@ -526,20 +424,20 @@ export default {
} }
}, },
handleClearVillage() { handleClearVillage () {
this.fmData.buildId = ""; this.fmData.buildId = "";
this.fmData.homeId = ""; this.fmData.homeId = "";
}, },
handleClearBuild() { handleClearBuild () {
this.fmData.buildId = ""; this.fmData.buildId = "";
this.fmData.unitId = ""; this.fmData.unitId = "";
this.fmData.homeId = ""; this.fmData.homeId = "";
}, },
handleClearDan() { handleClearDan () {
this.fmData.unitId = ""; this.fmData.unitId = "";
this.fmData.homeId = ""; this.fmData.homeId = "";
}, },
handleChangeGrid(val) { handleChangeGrid (val) {
console.log("val", val); console.log("val", val);
this.fmData.villageId = ""; this.fmData.villageId = "";
this.fmData.buildId = ""; this.fmData.buildId = "";
@ -547,30 +445,30 @@ export default {
this.fmData.homeId = ""; this.fmData.homeId = "";
this.getValiheList(); this.getValiheList();
}, },
handleChangeV(val) { handleChangeV (val) {
console.log("val", val); console.log("val", val);
this.fmData.buildId = ""; this.fmData.buildId = "";
this.fmData.unitId = ""; this.fmData.unitId = "";
this.fmData.homeId = ""; this.fmData.homeId = "";
this.getBuildList(); this.getBuildList();
}, },
handleChangeB(val) { handleChangeB (val) {
console.log("val", val); console.log("val", val);
this.fmData.unitId = ""; this.fmData.unitId = "";
this.fmData.homeId = ""; this.fmData.homeId = "";
this.getUniList(); this.getUniList();
}, },
handleChangeD(val) { handleChangeD (val) {
console.log("val", val); console.log("val", val);
this.fmData.homeId = ""; this.fmData.homeId = "";
this.getHouseList(); this.getHouseList();
}, },
handleChangeH(val) { handleChangeH (val) {
console.log("val", val); console.log("val", val);
this.getHouseMaster(); this.getHouseMaster();
}, },
getRelationList() { getRelationList () {
const { user } = this.$store.state; const { user } = this.$store.state;
this.$http this.$http
.post("/sys/dict/data/relationship", { .post("/sys/dict/data/relationship", {
@ -588,7 +486,7 @@ export default {
}); });
}, },
getGridList() { getGridList () {
const { user } = this.$store.state; const { user } = this.$store.state;
this.$http this.$http
.post("/gov/org/customergrid/gridoption", { .post("/gov/org/customergrid/gridoption", {
@ -607,7 +505,7 @@ export default {
return this.$message.error("网络错误"); return this.$message.error("网络错误");
}); });
}, },
getValiheList() { getValiheList () {
const { user } = this.$store.state; const { user } = this.$store.state;
this.$http this.$http
.post("/gov/org/icneighborhood/neighborhoodoption", { .post("/gov/org/icneighborhood/neighborhoodoption", {
@ -627,7 +525,7 @@ export default {
return this.$message.error("网络错误"); return this.$message.error("网络错误");
}); });
}, },
getBuildList() { getBuildList () {
this.$http this.$http
.post("/gov/org/icbuilding/buildingoption", { .post("/gov/org/icbuilding/buildingoption", {
neighborHoodId: this.fmData.villageId, neighborHoodId: this.fmData.villageId,
@ -644,7 +542,7 @@ export default {
return this.$message.error("网络错误"); return this.$message.error("网络错误");
}); });
}, },
getUniList() { getUniList () {
this.$http this.$http
.post("/gov/org/icbuildingunit/unitoption", { .post("/gov/org/icbuildingunit/unitoption", {
buildingId: this.fmData.buildId, buildingId: this.fmData.buildId,
@ -661,7 +559,7 @@ export default {
return this.$message.error("网络错误"); return this.$message.error("网络错误");
}); });
}, },
getHouseList() { getHouseList () {
this.$http this.$http
.post("/gov/org/ichouse/houseoption", { unitId: this.fmData.unitId }) .post("/gov/org/ichouse/houseoption", { unitId: this.fmData.unitId })
.then(({ data: res }) => { .then(({ data: res }) => {
@ -677,7 +575,7 @@ export default {
}); });
}, },
getHouseMaster() { getHouseMaster () {
const { homeId } = this.fmData; const { homeId } = this.fmData;
if (!homeId) return (this.alreadyHaveMaster = false); if (!homeId) return (this.alreadyHaveMaster = false);
@ -699,7 +597,7 @@ export default {
}); });
}, },
async initForm(type, row) { async initForm (type, row) {
this.$refs.ref_form.resetFields(); this.$refs.ref_form.resetFields();
this.formType = type; this.formType = type;
@ -714,7 +612,7 @@ export default {
} }
}, },
async getInfo(id) { async getInfo (id) {
const { data, code, msg } = await requestPost( const { data, code, msg } = await requestPost(
"/epmetuser/icBirthRecord/" + id, "/epmetuser/icBirthRecord/" + id,
{ {
@ -728,7 +626,7 @@ export default {
} }
}, },
async handleComfirm() { async handleComfirm () {
this.btnDisable = true; this.btnDisable = true;
setTimeout(() => { setTimeout(() => {
this.btnDisable = false; this.btnDisable = false;
@ -749,7 +647,7 @@ export default {
}); });
}, },
async submit() { async submit () {
let url = ""; let url = "";
if (this.formType === "add") { if (this.formType === "add") {
url = "/epmetuser/icBirthRecord/save"; url = "/epmetuser/icBirthRecord/save";
@ -799,11 +697,11 @@ export default {
} }
}, },
handleCancle() { handleCancle () {
this.resetData(); this.resetData();
this.$emit("dialogCancle"); this.$emit("dialogCancle");
}, },
resetData() { resetData () {
this.checkResult = {}; this.checkResult = {};
this.optionsB = []; this.optionsB = [];
this.optionsH = []; this.optionsH = [];
@ -811,7 +709,7 @@ export default {
this.fmData = iniFmData(); this.fmData = iniFmData();
}, },
// //
startLoading() { startLoading () {
loading = Loading.service({ loading = Loading.service({
lock: true, // lock: true, //
text: "正在加载……", // text: "正在加载……", //
@ -819,7 +717,7 @@ export default {
}); });
}, },
// //
endLoading() { endLoading () {
// clearTimeout(timer); // clearTimeout(timer);
if (loading) { if (loading) {
loading.close(); loading.close();
@ -830,53 +728,5 @@ export default {
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.item_width_1 { @import "@/assets/scss/modules/management/edit-main.scss";
width: 500px;
}
.item_width_2 {
width: 400px;
}
.item_width_3 {
margin-left: 10px;
width: 200px;
}
.item_width_4 {
width: 200px;
}
.div_map {
margin-top: 10px;
}
.div_btn {
// display: flex;
// justify-content: flex-end;
}
.el-tabs {
margin: 0 20px;
}
.el-upload__tip {
color: rgb(155, 155, 155);
margin: 0;
}
.form {
margin-top: 30px;
}
.m-staffs {
width: 468px;
.item {
display: flex;
justify-content: space-around;
margin-bottom: 7px;
}
.item-add {
}
}
</style>
<style>
.el-dialog__body {
padding: 0 10px 20px !important;
}
</style> </style>

550
src/views/modules/base/huji/chusheng/index.vue

@ -1,201 +1,200 @@
<template> <template>
<div class="resi-container"> <div class="div_main">
<el-card ref="searchCard" <div ref="searchDiv"
class="search-card"> class="div_search">
<el-form ref="searchForm" <el-form ref="searchForm"
:inline="true" :inline="true"
:model="fmData" :model="fmData"
:label-width="'100px'" :label-width="'100px'">
class="demo-form-inline">
<div> <el-form-item prop="gridId"
<el-form-item prop="gridId" label="所属网格">
label="所属网格">
<div class="resi-cell-value"> <el-select v-model.trim="fmData.gridId"
<el-select v-model.trim="fmData.gridId" placeholder="请选择"
placeholder="请选择" size="small"
size="small" clearable
clearable class="item_width_normal"
class="resi-cell-select" @change="handleChangeGrid">
@change="handleChangeGrid"> <el-option v-for="item in optionsG"
<el-option v-for="item in optionsG" :key="item.value"
:key="item.value" :label="item.label"
:label="item.label" :value="item.value">
:value="item.value"> </el-option>
</el-option> </el-select>
</el-select>
</div> </el-form-item>
</el-form-item>
<el-form-item label="所属房屋">
<el-form-item label="所属房屋">
<div class="resi-cell-value"> <el-select v-model.trim="fmData.villageId"
<el-select v-model.trim="fmData.villageId" placeholder="请选择小区"
placeholder="请选择小区" size="small"
size="small" clearable
clearable class="item_width_communitycascader"
class="resi-cell-select" @clear="handleClearVillage"
@clear="handleClearVillage" @change="handleChangeV">
@change="handleChangeV"> <el-option v-for="item in optionsV"
<el-option v-for="item in optionsV" :key="item.value"
:key="item.value" :label="item.label"
:label="item.label" :value="item.value">
:value="item.value"> </el-option>
</el-option> </el-select>
</el-select> <el-select v-model.trim="fmData.buildId"
<el-select v-model.trim="fmData.buildId" placeholder="楼号"
placeholder="楼号" size="small"
size="small" clearable
clearable class="item_width_buildcascader"
style="width: 120px" style="margin-left:5px"
class="resi-cell-select" :disabled="changeVDisabled"
:disabled="changeVDisabled" @clear="handleClearBuild"
@clear="handleClearBuild" @change="handleChangeB">
@change="handleChangeB"> <el-option v-for="item in optionsB"
<el-option v-for="item in optionsB" :key="item.value"
:key="item.value" :label="item.label"
:label="item.label" :value="item.value">
:value="item.value"> </el-option>
</el-option> </el-select>
</el-select> <el-select v-model.trim="fmData.unitId"
<el-select v-model.trim="fmData.unitId" :disabled="changeBDisabled"
:disabled="changeBDisabled" placeholder="单元"
placeholder="单元" size="small"
size="small" clearable
clearable class="item_width_buildcascader"
style="width: 120px" style="margin-left:5px"
class="resi-cell-select" @click="handleClearDan"
@click="handleClearDan" @change="handleChangeD">
@change="handleChangeD"> <el-option v-for="item in optionsD"
<el-option v-for="item in optionsD" :key="item.value"
:key="item.value" :label="item.label"
:label="item.label" :value="item.value">
:value="item.value"> </el-option>
</el-option> </el-select>
</el-select> <el-select v-model.trim="fmData.homeId"
<el-select v-model.trim="fmData.homeId" :disabled="changeDDisabled"
:disabled="changeDDisabled" placeholder="房号"
placeholder="房号" size="small"
size="small" clearable
clearable class="item_width_buildcascader"
style="width: 120px" style="margin-left:5px">
class="resi-cell-select"> <el-option v-for="item in optionsH"
<el-option v-for="item in optionsH" :key="item.value"
:key="item.value" :label="item.label"
:label="item.label" :value="item.value">
:value="item.value"> </el-option>
</el-option> </el-select>
</el-select>
</div> </el-form-item>
</el-form-item>
</div> <el-form-item label="姓名"
prop="name">
<el-input v-model="fmData.name"
class="item_width_normal"
size="small"
clearable
placeholder="请输入">
</el-input>
</el-form-item>
<el-form-item label="手机号"
prop="mobile">
<el-input v-model="fmData.mobile"
class="item_width_normal"
size="small"
clearable
placeholder="请输入">
</el-input>
</el-form-item>
<el-form-item label="证件号"
prop="idCard">
<el-input v-model="fmData.idCard"
class="item_width_normal"
size="small"
clearable
placeholder="请输入证件号">
</el-input>
</el-form-item>
<el-form-item label="出生日期"
prop="birthdayTime">
<el-date-picker v-model="fmData.birthdayTime"
type="daterange"
class="item_width_daterange2"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
value-format="yyyy-MM-dd">
</el-date-picker>
</el-form-item>
<el-form-item label="享受福利"
prop="remark">
<el-select v-model.trim="fmData.isWelfare"
placeholder="请选择"
size="small"
clearable
class="item_width_normal">
<el-option v-for="item in optionsWelfare"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<div class="div_search_btn">
<el-button class="diy-button--white"
size="small"
@click="resetForm('searchForm')">重置</el-button>
<el-button style="margin-left:10px"
size="small"
class="diy-button--blue"
@click="handleSearch">查询</el-button>
<div>
<el-form-item label="姓名"
prop="name">
<el-input v-model="fmData.name"
class="resi-cell-input"
size="small"
clearable
placeholder="请输入">
</el-input>
</el-form-item>
<el-form-item label="手机号"
prop="mobile">
<el-input v-model="fmData.mobile"
class="resi-cell-input"
size="small"
clearable
placeholder="请输入">
</el-input>
</el-form-item>
<el-form-item label="证件号"
prop="idCard">
<el-input v-model="fmData.idCard"
class="resi-cell-input"
size="small"
clearable
placeholder="请输入身份证号或证件号">
</el-input>
</el-form-item>
</div> </div>
</el-form>
<div> </div>
<el-form-item label="出生日期" <div class="div_table">
prop="birthdayTime"> <div class="div_btn">
<el-date-picker v-model="fmData.birthdayTime" <div class="div_btn_left">
type="daterange" <el-button class="diy-button--blue"
range-separator="至" icon="el-icon-plus"
start-placeholder="开始日期" size="small"
end-placeholder="结束日期" @click="handleAdd">出生登记</el-button>
value-format="yyyy-MM-dd"> <el-button v-if="false"
</el-date-picker> class="diy-button--white"
</el-form-item> size="small"
@click="handleExportModule('room')">下载模板</el-button>
<el-form-item label="享受福利" <el-upload :headers="$getElUploadHeaders()"
prop="remark"> v-if="false"
<el-select v-model.trim="fmData.isWelfare" ref="upload"
placeholder="请选择" class="upload-btn"
size="small" action="uploadUlr"
clearable :limit="1"
style="width: 120px" :accept="'.xls,.xlsx'"
class="resi-cell-select"> :with-credentials="true"
<el-option v-for="item in optionsWelfare" :show-file-list="false"
:key="item.value" :auto-upload="true"
:label="item.label" :on-progress="handleProgress"
:value="item.value"> :on-success="handleExcelSuccess"
</el-option> :before-upload="beforeExcelUpload"
</el-select> :http-request="uploadHttpRequest">
</el-form-item> <el-button size="small"
class="diy-button--white"
<el-form-item> :loading="importLoading">{{ importBtnTitle }}</el-button>
<el-button class="diy-button--search" </el-upload>
size="small"
@click="handleSearch">查询</el-button> <el-button @click="handleChu"
<el-button class="diy-button--reset" class="diy-button--white"
size="small" size="small">导出</el-button>
@click="resetForm('searchForm')">重置</el-button>
</el-form-item>
</div> </div>
</el-form>
</el-card>
<el-card class="resi-card-table">
<div class="resi-row-btn">
<el-button class="diy-button--add"
size="small"
@click="handleAdd">出生登记</el-button>
<el-button v-if="false"
class="diy-button--export"
size="small"
@click="handleExportModule('room')">下载模板</el-button>
<el-upload :headers="$getElUploadHeaders()"
v-if="false"
ref="upload"
class="upload-btn"
action="uploadUlr"
:limit="1"
:accept="'.xls,.xlsx'"
:with-credentials="true"
:show-file-list="false"
:auto-upload="true"
:on-progress="handleProgress"
:on-success="handleExcelSuccess"
:before-upload="beforeExcelUpload"
:http-request="uploadHttpRequest">
<el-button size="small"
class="diy-button--delete"
:loading="importLoading">{{ importBtnTitle }}</el-button>
</el-upload>
<el-button @click="handleChu"
class="diy-button--reset"
size="small">导出</el-button>
</div> </div>
<el-table :data="tableData" <el-table :data="tableData"
border border
style="width: 100%" class="div_table_item"
class="resi-table" :height="tableHeight">
:height="maxTableHeight">
<el-table-column label="序号" <el-table-column label="序号"
fixed="left" fixed="left"
type="index" type="index"
@ -288,7 +287,7 @@
<el-table-column fixed="right" <el-table-column fixed="right"
label="操作" label="操作"
align="center" align="center"
width="160"> width="180">
<template slot-scope="scope"> <template slot-scope="scope">
<!-- <el-button <!-- <el-button
@click="handleWatch(scope.$index)" @click="handleWatch(scope.$index)"
@ -300,12 +299,12 @@
<el-button @click="handleEdit(scope.$index)" <el-button @click="handleEdit(scope.$index)"
type="text" type="text"
size="small" size="small"
class="div-table-button--edit">修改</el-button> class="div-table-button--blue">修改</el-button>
<el-button @click="handleChangeRecord(scope.row)" <el-button @click="handleChangeRecord(scope.row)"
type="text" type="text"
size="small" size="small"
class="div-table-button--detail">变更记录</el-button> class="div-table-button--blue">变更记录</el-button>
<el-popconfirm v-if="false" <el-popconfirm v-if="false"
title="删除之后无法回复,确认删除?" title="删除之后无法回复,确认删除?"
@ -314,7 +313,7 @@
<el-button slot="reference" <el-button slot="reference"
type="text" type="text"
size="small" size="small"
class="div-table-button--delete" class="div-table-button--blue"
style="margin-left: 10px">删除</el-button> style="margin-left: 10px">删除</el-button>
</el-popconfirm> </el-popconfirm>
<el-popconfirm v-if="true" <el-popconfirm v-if="true"
@ -324,7 +323,7 @@
<el-button slot="reference" <el-button slot="reference"
type="text" type="text"
size="small" size="small"
class="div-table-button--delete" class="div-table-button--blue"
style="margin-left: 10px">删除</el-button> style="margin-left: 10px">删除</el-button>
</el-popconfirm> </el-popconfirm>
</template> </template>
@ -341,14 +340,14 @@
:total="total"> :total="total">
</el-pagination> </el-pagination>
</div> </div>
</el-card> </div>
<!-- 修改弹出框 --> <!-- 修改弹出框 -->
<el-dialog :visible.sync="formShow" <el-dialog :visible.sync="formShow"
:close-on-click-modal="false" :close-on-click-modal="false"
:close-on-press-escape="false" :close-on-press-escape="false"
:title="formTitle" :title="formTitle"
width="850px" width="670px"
top="5vh" top="5vh"
class="dialog-h" class="dialog-h"
@closed="handleClose"> @closed="handleClose">
@ -362,7 +361,7 @@
:close-on-click-modal="false" :close-on-click-modal="false"
:close-on-press-escape="false" :close-on-press-escape="false"
:title="'出生详情'" :title="'出生详情'"
width="850px" width="670px"
top="5vh" top="5vh"
class="dialog-h" class="dialog-h"
@closed="detailFormCancle"> @closed="detailFormCancle">
@ -393,7 +392,7 @@ import detailForm from "./cpts/detail";
import axios from "axios"; import axios from "axios";
export default { export default {
components: { editForm, detailForm, resiChangeRecord}, components: { editForm, detailForm, resiChangeRecord },
data () { data () {
return { return {
openSearch: false, openSearch: false,
@ -450,7 +449,10 @@ export default {
// //
scoreDiaTitle: "积分记录", scoreDiaTitle: "积分记录",
scoreDiaShow: false, scoreDiaShow: false,
changeRecordShow: false, changeRecordShow: false,
searchH: 0,
tableHeight: 0,
}; };
}, },
computed: { computed: {
@ -480,24 +482,37 @@ export default {
this.fmData.birthdayEnd = ""; this.fmData.birthdayEnd = "";
} }
}, },
searchH () {
const h = this.clientHeight - this.searchH + this.iframeHeight
const _h = this.clientHeight - this.searchH
console.log('computed-searchH---_h', _h)
this.$nextTick(() => {
this.tableHeight = this.$store.state.inIframe ? h : _h
})
}
}, },
mounted () { mounted () {
this.getGridList(); this.getGridList();
this.getValiheList(); this.getValiheList();
this.getTableData(); this.getTableData();
this.searchH = this.$refs.searchDiv.offsetHeight + 290
console.log('searchH----', this.$refs.searchDiv.offsetHeight)
}, },
methods: { methods: {
diaClose () { diaClose () {
this.changeRecordShow = false this.changeRecordShow = false
}, },
// //
async handleChangeRecord (row) { async handleChangeRecord (row) {
this.changeRecordShow = true this.changeRecordShow = true
await nextTick(200) await nextTick(200)
this.$refs.ref_changerecord.initForm(row) this.$refs.ref_changerecord.initForm(row)
}, },
handleClearVillage () { handleClearVillage () {
this.fmData.buildId = ""; this.fmData.buildId = "";
this.fmData.homeId = ""; this.fmData.homeId = "";
@ -768,7 +783,20 @@ export default {
this.getTableData(); this.getTableData();
}, },
resetForm (formName) { resetForm (formName) {
this.$refs[formName].resetFields(); this.fmData = {
gridId: "",
villageId: "",
buildId: "",
unitId: "",
homeId: "",
name: "",
mobile: "",
idCard: "",
isWelfare: "", //01
birthdayStart: "",
birthdayEnd: "",
birthdayTime: ["", ""],
}
this.handleSearch(); this.handleSearch();
}, },
async handleAdd () { async handleAdd () {
@ -857,20 +885,20 @@ export default {
} }
}, },
async handleDelNew (rowData) { async handleDelNew (rowData) {
const url = "/epmetuser/icBirthRecord/deleteById"; const url = "/epmetuser/icBirthRecord/deleteById";
let params = { let params = {
id: rowData.id id: rowData.id
} }
const { data, code, msg } = await requestPost(url,params); const { data, code, msg } = await requestPost(url, params);
if (code === 0) { if (code === 0) {
this.$message.success("删除成功!"); this.$message.success("删除成功!");
this.getTableData(); this.getTableData();
} else { } else {
this.$message.success("操作失败!"); this.$message.success("操作失败!");
} }
}, },
async getTableData () { async getTableData () {
const url = "/epmetuser/icBirthRecord/page"; const url = "/epmetuser/icBirthRecord/page";
@ -895,85 +923,5 @@ export default {
}; };
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
@import "@/assets/scss/buttonstyle.scss"; @import "@/assets/scss/modules/management/list-main.scss";
.resi-container .resi-card-table {
::v-deep .el-table th {
color: #fff;
background-color: rgba(33, 149, 254, 1);
// border-right: 1px solid rgba(33, 149, 254, 1);
}
}
.resi-table {
::v-deep .el-button--text {
text-decoration: underline;
}
}
.resi-card-table {
margin-top: 20px;
}
.resi-row-btn {
margin-bottom: 13px;
.upload-btn {
display: inline-block;
margin: 0 10px;
}
}
.resi-btns {
margin-top: 20px;
text-align: center;
}
.resi-container .resi-card {
position: relative;
overflow: visible;
}
.demo-form-inline {
// display: flex;
// align-items: center;
// margin-bottom: 20px;
.resi-cell-label {
flex-shrink: 0;
min-width: 0;
box-sizing: border-box;
margin-right: 15px;
// text-align: right;
// line-height: 32;
}
.resi-cell-label1 {
width: max-content;
}
.resi-cell-value-radio {
display: flex;
align-items: center;
min-height: 32px;
}
.resi-cell-input {
width: 200px;
}
.resi-cell--daterange {
max-width: 260px;
}
.resi-cell-select {
width: 200px;
box-sizing: border-box;
margin-right: 10px;
&-middle {
width: 130px;
}
&-small {
width: 88px;
}
}
.resi-cell-select:last-child {
margin-right: 0;
}
}
.mt10 {
margin-top: 10px;
}
</style> </style>

529
src/views/modules/plugins/change/changedeath.vue

@ -1,12 +1,16 @@
<template> <template>
<div class="mod-rent__rentDeath} resi-container"> <div class="div_main">
<el-card ref="searchCard" class="search-card"> <div ref="searchDiv"
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()" label-width="70px"> class="div_search">
<el-form :inline="true"
:model="dataForm"
@keyup.enter.native="getDataList()"
label-width="100px">
<el-form-item label="姓名" <el-form-item label="姓名"
prop="name"> prop="name">
<el-input v-model="dataForm.name" <el-input v-model="dataForm.name"
size="small" size="small"
class="list_item_width_1" class="item_width_normal"
clearable clearable
placeholder="请输入姓名"> placeholder="请输入姓名">
</el-input> </el-input>
@ -15,7 +19,7 @@
prop="idCard"> prop="idCard">
<el-input v-model="dataForm.idCard" <el-input v-model="dataForm.idCard"
size="small" size="small"
class="list_item_width_1" class="item_width_normal"
clearable clearable
placeholder="请输入证件号"> placeholder="请输入证件号">
</el-input> </el-input>
@ -24,17 +28,17 @@
prop="mobile"> prop="mobile">
<el-input v-model="dataForm.mobile" <el-input v-model="dataForm.mobile"
size="small" size="small"
class="list_item_width_1" class="item_width_normal"
clearable clearable
placeholder="请输入手机"> placeholder="请输入手机">
</el-input> </el-input>
</el-form-item> </el-form-item>
<br/>
<el-form-item label="死亡时间" <el-form-item label="死亡时间"
prop="startTime"> prop="startTime">
<el-date-picker v-model="timeRange" <el-date-picker v-model="timeRange"
type="daterange" type="daterange"
clearable class="item_width_daterange2"
size="small" size="small"
range-separator="至" range-separator="至"
start-placeholder="选择日期" start-placeholder="选择日期"
@ -42,31 +46,46 @@
value-format="yyyy-MM-dd"> value-format="yyyy-MM-dd">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="享受福利" prop="isWelfare"> <el-form-item label="享受福利"
<el-select v-model="dataForm.isWelfare" placeholder="请选择" clearable> prop="isWelfare">
<el-option v-for="item in isWelfareArr" :key="item.dictValue" :label="item.dictName" :value="item.dictValue"> <el-select v-model="dataForm.isWelfare"
size="small"
class="item_width_normal"
placeholder="请选择"
clearable>
<el-option v-for="item in isWelfareArr"
:key="item.dictValue"
:label="item.dictName"
:value="item.dictValue">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item>
<el-button type="primary" size="small" @click="getDataList()">{{ $t('query') }}</el-button> <div class="div_search_btn">
</el-form-item> <el-button class="diy-button--white"
<el-form-item> size="small"
<el-button class="diy-button--reset" size="small" @click="resetForm">重置</el-button> @click="resetForm">重置</el-button>
</el-form-item> <el-button style="margin-left:10px"
<!--<el-form-item>--> size="small"
<!--<el-button type="primary" @click="addOrUpdateHandle()">{{ $t('add') }}</el-button>--> class="diy-button--blue"
<!--</el-form-item>--> @click="getDataList">查询</el-button>
<!--<el-form-item>-->
<!--<el-button type="danger" @click="deleteHandle()">{{ $t('deleteBatch') }}</el-button>--> </div>
<!--</el-form-item>-->
</el-form> </el-form>
</el-card> </div>
<el-card class="resi-card-table"> <div class="div_table">
<div class="resi-row-btn"> <div class="div_btn">
<el-button type="warning" size="small" class="diy-button--reset" @click="exportHandle()">{{ $t('export') }}</el-button> <div class="div_btn_left">
<el-button size="small"
class="diy-button--white"
@click="exportHandle()">{{ $t('export') }}</el-button>
</div> </div>
<el-table class="resi-table" v-loading="dataListLoading" :data="dataList" border @selection-change="dataListSelectionChangeHandle" style="width: 100%"> </div>
<el-table class="div_table_item"
v-loading="dataListLoading"
:data="dataList"
border
@selection-change="dataListSelectionChangeHandle">
<!--<el-table-column type="selection" header-align="center" align="center" width="50"></el-table-column>--> <!--<el-table-column type="selection" header-align="center" align="center" width="50"></el-table-column>-->
<el-table-column label="序号" <el-table-column label="序号"
type="index" type="index"
@ -76,14 +95,29 @@
</el-table-column> </el-table-column>
<!--<el-table-column prop="id" label="主键" header-align="center" align="center"></el-table-column>--> <!--<el-table-column prop="id" label="主键" header-align="center" align="center"></el-table-column>-->
<!--<el-table-column prop="userId" label="epmet用户主键" header-align="center" align="center"></el-table-column>--> <!--<el-table-column prop="userId" label="epmet用户主键" header-align="center" align="center"></el-table-column>-->
<el-table-column prop="name" label="姓名" header-align="center" align="center"> <el-table-column prop="name"
label="姓名"
header-align="center"
align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button @click="handleLook(scope.row)" type="text" size="small" class="btn-color-look">{{scope.row.name}}</el-button> <el-button @click="handleLook(scope.row)"
type="text"
size="small"
class="btn-color-look">{{scope.row.name}}</el-button>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="idCard" label="证件号" header-align="center" align="center"></el-table-column> <el-table-column prop="idCard"
<el-table-column prop="mobile" label="手机号" header-align="center" align="center"></el-table-column> label="证件号"
<el-table-column prop="gender" label="性别" header-align="center" align="center"> header-align="center"
align="center"></el-table-column>
<el-table-column prop="mobile"
label="手机号"
header-align="center"
align="center"></el-table-column>
<el-table-column prop="gender"
label="性别"
header-align="center"
align="center">
<template slot-scope="scope"> <template slot-scope="scope">
{{ {{
scope.row.gender == '2' scope.row.gender == '2'
@ -93,29 +127,39 @@
</template> </template>
</el-table-column> </el-table-column>
<!--<el-table-column prop="type" label="类型" header-align="center" align="center">--> <!--<el-table-column prop="type" label="类型" header-align="center" align="center">-->
<!--<template slot-scope="scope">--> <!--<template slot-scope="scope">-->
<!--{{--> <!--{{-->
<!--scope.row.type == '0'--> <!--scope.row.type == '0'-->
<!--? "租客"--> <!--? "租客"-->
<!--: scope.row.type == '1'--> <!--: scope.row.type == '1'-->
<!--? "房东"--> <!--? "房东"-->
<!--: ""--> <!--: ""-->
<!--}}--> <!--}}-->
<!--</template>--> <!--</template>-->
<!--</el-table-column>--> <!--</el-table-column>-->
<el-table-column prop="deathDate" label="死亡时间" header-align="center" align="center"></el-table-column> <el-table-column prop="deathDate"
label="死亡时间"
header-align="center"
align="center"></el-table-column>
<!--<el-table-column prop="joinReason" label="加入原因" header-align="center" align="center"></el-table-column>--> <!--<el-table-column prop="joinReason" label="加入原因" header-align="center" align="center"></el-table-column>-->
<!--<el-table-column prop="removeDate" label="移除时间" header-align="center" align="center"></el-table-column>--> <!--<el-table-column prop="removeDate" label="移除时间" header-align="center" align="center"></el-table-column>-->
<!--<el-table-column prop="removeReason" label="移除原因" header-align="center" align="center"></el-table-column>--> <!--<el-table-column prop="removeReason" label="移除原因" header-align="center" align="center"></el-table-column>-->
<!--<el-table-column prop="createdTime" label="创建时间" header-align="center" align="center"></el-table-column>--> <!--<el-table-column prop="createdTime" label="创建时间" header-align="center" align="center"></el-table-column>-->
<!--<el-table-column prop="customerId" label="客户ID" header-align="center" align="center"></el-table-column>--> <!--<el-table-column prop="customerId" label="客户ID" header-align="center" align="center"></el-table-column>-->
<el-table-column :label="$t('handle')" fixed="right" header-align="center" align="center" width="150"> <el-table-column :label="$t('handle')"
fixed="right"
header-align="center"
align="center"
width="170">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button @click="handleLook(scope.row)" type="text" size="small" class="btn-color-look">查看</el-button> <el-button @click="handleLook(scope.row)"
type="text"
size="small"
class="div-table-button--blue">查看</el-button>
<el-button @click="handleChangeRecord(scope.row)" <el-button @click="handleChangeRecord(scope.row)"
type="text" type="text"
size="small" size="small"
class="div-table-button--detail">变更记录</el-button> class="div-table-button--blue">变更记录</el-button>
<!--<el-button type="text" size="small" @click="addOrUpdateHandle(scope.row.id)">{{ $t('update') }}</el-button>--> <!--<el-button type="text" size="small" @click="addOrUpdateHandle(scope.row.id)">{{ $t('update') }}</el-button>-->
<!--<el-button type="text" size="small" @click="deleteHandle(scope.row.id)">{{ $t('delete') }}</el-button>--> <!--<el-button type="text" size="small" @click="deleteHandle(scope.row.id)">{{ $t('delete') }}</el-button>-->
<el-popconfirm v-if="scope.row.status !== '0'" <el-popconfirm v-if="scope.row.status !== '0'"
@ -125,39 +169,40 @@
<el-button slot="reference" <el-button slot="reference"
type="text" type="text"
size="small" size="small"
class="div-table-button--delete" class="div-table-button--blue"
style="margin-left: 10px">恢复</el-button> style="margin-left: 10px">恢复</el-button>
</el-popconfirm> </el-popconfirm>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<el-pagination <el-pagination :current-page="page"
:current-page="page" :page-sizes="[10, 20, 50, 100]"
:page-sizes="[10, 20, 50, 100]" :page-size="limit"
:page-size="limit" :total="total"
:total="total" layout="total, sizes, prev, pager, next, jumper"
layout="total, sizes, prev, pager, next, jumper" @size-change="pageSizeChangeHandle"
@size-change="pageSizeChangeHandle" @current-change="pageCurrentChangeHandle">
@current-change="pageCurrentChangeHandle">
</el-pagination> </el-pagination>
</el-card>
<!-- 弹窗, 新增 / 修改 -->
<add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></add-or-update>
<people-more v-if="showedPeopleMoreInfo && lookInfo.userId"
:userId="lookInfo.userId"
:gridName="lookInfo.gridName"
@close="handleCancleLook" />
<!-- 变更记录 -->
<el-dialog :visible.sync="changeRecordShow"
:close-on-click-modal="false"
:close-on-press-escape="false"
:title="'变更记录'"
width="1150px"
top="5vh"
@closed="diaClose">
<resi-change-record ref="ref_changerecord"></resi-change-record>
</el-dialog>
</div> </div>
<!-- 弹窗, 新增 / 修改 -->
<add-or-update v-if="addOrUpdateVisible"
ref="addOrUpdate"
@refreshDataList="getDataList"></add-or-update>
<people-more v-if="showedPeopleMoreInfo && lookInfo.userId"
:userId="lookInfo.userId"
:gridName="lookInfo.gridName"
@close="handleCancleLook" />
<!-- 变更记录 -->
<el-dialog :visible.sync="changeRecordShow"
:close-on-click-modal="false"
:close-on-press-escape="false"
:title="'变更记录'"
width="1150px"
top="5vh"
@closed="diaClose">
<resi-change-record ref="ref_changerecord"></resi-change-record>
</el-dialog>
</div>
</template> </template>
<script> <script>
@ -178,200 +223,200 @@ export default {
deleteIsBatch: true, deleteIsBatch: true,
exportURL: '/epmetuser/rentDeath/export' exportURL: '/epmetuser/rentDeath/export'
}, },
timeRange: '', timeRange: '',
dataForm: { dataForm: {
id: '', id: '',
name: '', name: '',
isWelfare: '' isWelfare: ''
}, },
// //
showedPeopleMoreInfo: false, showedPeopleMoreInfo: false,
lookInfo: { lookInfo: {
userId: '', userId: '',
gridName: '' gridName: ''
}, },
isWelfareArr: [ isWelfareArr: [
{ dictValue: '0', dictName: '否' }, { dictValue: '0', dictName: '否' },
{ dictValue: '1', dictName: '是' } { dictValue: '1', dictName: '是' }
], ],
changeRecordShow: false changeRecordShow: false
}
},
watch: {
timeRange (val) {
if (Array.isArray(val) && val.length == 2) {
this.dataForm.startTime = val[0];
this.dataForm.endTime = val[1];
} else {
this.dataForm.startTime = "";
this.dataForm.endTime = "";
}
} }
}, },
watch: {
timeRange (val) {
if (Array.isArray(val) && val.length == 2) {
this.dataForm.startTime = val[0];
this.dataForm.endTime = val[1];
} else {
this.dataForm.startTime = "";
this.dataForm.endTime = "";
}
}
},
components: { components: {
AddOrUpdate, AddOrUpdate,
peopleMore, peopleMore,
resiChangeRecord resiChangeRecord
}, },
methods: { methods: {
async handleRecovery (rowData) { async handleRecovery (rowData) {
console.log('11111') console.log('11111')
const url = "/epmetuser/rentDeath/recovery"; const url = "/epmetuser/rentDeath/recovery";
let params = { let params = {
id: rowData.id id: rowData.id
} }
const { data, code, msg } = await requestPost(url,params); const { data, code, msg } = await requestPost(url, params);
if (code === 0) { if (code === 0) {
this.$message.success("恢复成功!"); this.$message.success("恢复成功!");
this.getDataList(); this.getDataList();
} else { } else {
this.$message.success("操作失败!"); this.$message.success("操作失败!");
} }
}, },
diaClose () { diaClose () {
this.changeRecordShow = false this.changeRecordShow = false
}, },
// //
async handleChangeRecord (row) { async handleChangeRecord (row) {
this.changeRecordShow = true this.changeRecordShow = true
await nextTick(200) await nextTick(200)
this.$refs.ref_changerecord.initForm(row) this.$refs.ref_changerecord.initForm(row)
}, },
exportHandle () { exportHandle () {
const url = this.mixinViewModuleOptions.exportURL const url = this.mixinViewModuleOptions.exportURL
this.$http({ this.$http({
method: 'GET', method: 'GET',
url, url,
responseType: 'blob', responseType: 'blob',
params: this.dataForm params: this.dataForm
}).then(res => { }).then(res => {
// this.download(res.data, title + '.xls') // this.download(res.data, title + '.xls')
if (res.headers["content-disposition"]) { if (res.headers["content-disposition"]) {
let fileName = window.decodeURI(res.headers["content-disposition"].split(";")[1].split("=")[1]) let fileName = window.decodeURI(res.headers["content-disposition"].split(";")[1].split("=")[1])
console.log('filename', fileName) console.log('filename', fileName)
let blob = new Blob([res.data], { type: 'application/vnd.ms-excel' }) let blob = new Blob([res.data], { type: 'application/vnd.ms-excel' })
var url = window.URL.createObjectURL(blob) var url = window.URL.createObjectURL(blob)
var aLink = document.createElement('a') var aLink = document.createElement('a')
aLink.style.display = 'none' aLink.style.display = 'none'
aLink.href = url aLink.href = url
aLink.setAttribute('download', fileName) aLink.setAttribute('download', fileName)
document.body.appendChild(aLink) document.body.appendChild(aLink)
aLink.click() aLink.click()
document.body.removeChild(aLink) // document.body.removeChild(aLink) //
window.URL.revokeObjectURL(url) //blob window.URL.revokeObjectURL(url) //blob
} else this.$message.error('下载失败') } else this.$message.error('下载失败')
}).catch(err => { }).catch(err => {
console.log('err', err) console.log('err', err)
return this.$message.error('网络错误') return this.$message.error('网络错误')
}) })
}, },
resetForm(formName) { resetForm (formName) {
for(const n in this.dataForm) { for (const n in this.dataForm) {
this.dataForm[n] = '' this.dataForm[n] = ''
} }
this.timeRange = '' this.timeRange = ''
this.getDataList() this.getDataList()
}, },
async handleLook (row) { async handleLook (row) {
if(row.gridId !== ''){ if (row.gridId !== '') {
const url = '/gov/org/grid/griddetail' const url = '/gov/org/grid/griddetail'
let params = { let params = {
gridId : row.gridId, gridId: row.gridId,
} }
const { data, code, msg } = await requestPost(url, params) const { data, code, msg } = await requestPost(url, params)
if(code === 0){ if (code === 0) {
this.lookInfo.gridName = data.gridName this.lookInfo.gridName = data.gridName
} else { } else {
this.$message.error(msg) this.$message.error(msg)
}
}else{
this.lookInfo.gridName = ''
}
this.lookInfo.userId = row.userId
this.showedPeopleMoreInfo = true
},
handleCancleLook() {
this.lookInfo.userId = ''
this.lookInfo.gridName = ''
this.showedPeopleMoreInfo = false
} }
} else {
this.lookInfo.gridName = ''
}
this.lookInfo.userId = row.userId
this.showedPeopleMoreInfo = true
},
handleCancleLook () {
this.lookInfo.userId = ''
this.lookInfo.gridName = ''
this.showedPeopleMoreInfo = false
}
} }
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
@import "@/assets/scss/buttonstyle.scss"; @import "@/assets/scss/modules/management/list-main.scss";
/deep/.el-form-item__label {
width: 80px !important; /deep/.el-form-item__label {
width: 80px !important;
}
.resi-container .resi-card-table {
::v-deep .el-table th {
color: #fff;
background-color: rgba(33, 149, 254, 1);
// border-right: 1px solid rgba(33, 149, 254, 1);
} }
.resi-container .resi-card-table { }
::v-deep .el-table th { .resi-table {
color: #fff; ::v-deep .el-button--text {
background-color: rgba(33, 149, 254, 1); text-decoration: underline;
// border-right: 1px solid rgba(33, 149, 254, 1);
}
} }
.resi-table { ::v-deep .btn-color-del {
::v-deep .el-button--text { margin-left: 10px;
text-decoration: underline; color: rgba(213, 16, 16, 1);
}
::v-deep .btn-color-del {
margin-left: 10px;
color: rgba(213, 16, 16, 1);
}
::v-deep .btn-color-edit {
color: rgba(0, 167, 169, 1);
}
} }
.form-wr { ::v-deep .btn-color-edit {
.input-width { color: rgba(0, 167, 169, 1);
width: 260px; }
}
} .form-wr {
.input-width-textarea { .input-width {
width: 500px; width: 260px;
}
.imsg-list {
display: flex;
align-items: center;
.imgs-item {
position: relative;
margin-right: 10px;
.el-icon-delete {
position: absolute;
top: 0;
right: 0;
font-size: 18px;
color: red;
z-index: 3;
cursor: pointer;
}
}
}
} }
.div-content { .input-width-textarea {
width: 100%; width: 500px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
} }
.resi-row-btn { .imsg-list {
display: flex; display: flex;
margin-bottom: 13px; align-items: center;
.el-button { .imgs-item {
margin-left: 10px; position: relative;
border: 0; margin-right: 10px;
.el-icon-delete {
position: absolute;
top: 0;
right: 0;
font-size: 18px;
color: red;
z-index: 3;
cursor: pointer;
}
} }
// .el-button--success {
// background: rgba(34, 193, 195, 1);
// }
// .el-button--warning {
// background: rgba(254, 179, 73, 1);
// }
// .el-button--danger {
// background: rgba(254, 98, 82, 1);
// }
} }
}
.div-content {
width: 100%;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.resi-row-btn {
display: flex;
margin-bottom: 13px;
.el-button {
margin-left: 10px;
border: 0;
}
// .el-button--success {
// background: rgba(34, 193, 195, 1);
// }
// .el-button--warning {
// background: rgba(254, 179, 73, 1);
// }
// .el-button--danger {
// background: rgba(254, 98, 82, 1);
// }
}
</style> </style>

13
src/views/modules/plugins/change/resichange.vue

@ -5,7 +5,7 @@
:form-list="searchList" :form-list="searchList"
:column-name="defaultCategotyKey" :column-name="defaultCategotyKey"
@search="handleSearch" /> @search="handleSearch" />
<el-card class="resi-card-table"> <div class="div_table">
<!-- <div class="resi-row-btn"> <!-- <div class="resi-row-btn">
<el-button size="small" <el-button size="small"
class="diy-button--add" class="diy-button--add"
@ -44,8 +44,7 @@
:data="tableData" :data="tableData"
v-loading="tableLoading" v-loading="tableLoading"
border border
style="width: 100%" class="div_table_item"
class="resi-table"
:height="tableHeight" :height="tableHeight"
@select-all="selectAll" @select-all="selectAll"
@selection-change="selectionChange"> @selection-change="selectionChange">
@ -85,7 +84,7 @@
<el-button @click="handleTransfer(scope.row)" <el-button @click="handleTransfer(scope.row)"
type="text" type="text"
size="small" size="small"
class="div-table-button--detail">迁出</el-button> class="div-table-button--blue">迁出</el-button>
<!--<el-button @click="joinBlacklist(scope.row)"--> <!--<el-button @click="joinBlacklist(scope.row)"-->
<!--type="text"--> <!--type="text"-->
<!--size="small"--> <!--size="small"-->
@ -138,7 +137,7 @@
</div> </div>
</div> </div>
</el-card> </div>
<el-dialog :title="formName" <el-dialog :title="formName"
:visible.sync="dialogVisible" :visible.sync="dialogVisible"
@ -371,8 +370,8 @@ export default {
computed: { computed: {
...mapGetters(['clientHeight', 'iframeHeight']), ...mapGetters(['clientHeight', 'iframeHeight']),
tableHeight () { tableHeight () {
const h = this.clientHeight - this.searchH - 280 + this.iframeHeigh const h = this.clientHeight - this.searchH - 240 + this.iframeHeigh
const _h = this.clientHeight - 280 - this.searchH const _h = this.clientHeight - 240 - this.searchH
return this.$store.state.inIframe ? h : _h return this.$store.state.inIframe ? h : _h
} }
}, },

101
src/views/modules/plugins/change/resideath.vue

@ -1,11 +1,11 @@
<template> <template>
<div class="resi-container"> <div class="div_main">
<death-search v-if="searchList.length > 0" <death-search v-if="searchList.length > 0"
ref="deathSearch" ref="deathSearch"
:form-list="searchList" :form-list="searchList"
:column-name="defaultCategotyKey" :column-name="defaultCategotyKey"
@search="handleSearch" /> @search="handleSearch" />
<el-card class="resi-card-table"> <div class="div_table">
<!-- <div class="resi-row-btn"> <!-- <div class="resi-row-btn">
<el-button size="small" <el-button size="small"
class="diy-button--add" class="diy-button--add"
@ -44,8 +44,7 @@
:data="tableData" :data="tableData"
v-loading="tableLoading" v-loading="tableLoading"
border border
style="width: 100%" class="div_table_item"
class="resi-table"
:height="tableHeight" :height="tableHeight"
@select-all="selectAll" @select-all="selectAll"
@selection-change="selectionChange"> @selection-change="selectionChange">
@ -85,7 +84,7 @@
<el-button @click="joinBlacklist(scope.row)" <el-button @click="joinBlacklist(scope.row)"
type="text" type="text"
size="small" size="small"
class="div-table-button--detail">新增死亡人口</el-button> class="div-table-button--blue">新增死亡人口</el-button>
<!-- <el-button @click="handleLook(scope.row)" <!-- <el-button @click="handleLook(scope.row)"
type="text" type="text"
size="small" size="small"
@ -134,7 +133,7 @@
</div> </div>
</div> </div>
</el-card> </div>
<el-dialog :title="formName" <el-dialog :title="formName"
:visible.sync="dialogVisible" :visible.sync="dialogVisible"
@ -262,33 +261,63 @@
:gridName="lookInfo.gridName" :gridName="lookInfo.gridName"
@close="handleCancleLook" /> @close="handleCancleLook" />
<el-dialog title="新增死亡人口的原因" <el-dialog title="新增死亡人口"
:visible.sync="blacklistVisible" :visible.sync="blacklistVisible"
width="40%"> width="40%">
<textarea v-model="blacklistReason" <div class="dialog-h-content scroll-h">
placeholder="请输入新增死亡人口的原因" <el-form ref="ref_form"
class="blacklist-reason"></textarea> :inline="true"
<div> :model="fmData"
<br /> label-width="150px"
</div> class="edit_form">
<el-checkbox v-model="welfareFlag">享受福利</el-checkbox> <el-form-item label="死亡原因"
<div> prop="gridId"
<br /> style="display: block">
<el-input class="edit_item_width_normal"
type="textarea"
:rows="3"
placeholder="请输入死亡原因"
v-model="blacklistReason"></el-input>
</el-form-item>
<el-form-item label="享受福利"
prop="gridId"
style="display: block">
<el-checkbox v-model="welfareFlag"></el-checkbox>
</el-form-item>
<el-form-item label="死亡日期"
prop="gridId"
style="display: block">
<el-date-picker v-model="deathDate"
type="date"
value-format="yyyy-MM-dd HH:mm:ss"
format="yyyy-MM-dd"
placeholder="请选择死亡日期"
class="edit_item_width_normal"
:clearable="false">
</el-date-picker>
</el-form-item>
</el-form>
<div class="div_btn">
<el-button size="small"
@click="blacklistVisible = false"> </el-button>
<el-button type="primary"
size="small"
class="diy-button--blue"
:disabled="btnDisable"
@click="confirmJoinDeathlist"> </el-button>
</div>
<!-- <span slot="footer"
class="dialog-footer">
<el-button @click="blacklistVisible = false"> </el-button>
<el-button type="primary"
@click="confirmJoinDeathlist"> </el-button>
</span> -->
</div> </div>
<el-date-picker v-model="deathDate"
type="date"
value-format="yyyy-MM-dd HH:mm:ss"
format="yyyy-MM-dd"
placeholder="请选择死亡日期"
style="width:200px"
:clearable="false">
</el-date-picker>
<span slot="footer"
class="dialog-footer">
<el-button @click="blacklistVisible = false"> </el-button>
<el-button type="primary"
@click="confirmJoinDeathlist"> </el-button>
</span>
</el-dialog> </el-dialog>
</div> </div>
</template> </template>
@ -366,7 +395,10 @@ export default {
blacklistReason: '', // blacklistReason: '', //
welfareFlag: false, welfareFlag: false,
rowData: {}, // rowData: {}, //
deathDate: '' deathDate: '',
fmData: {
}
} }
}, },
props: { props: {
@ -386,8 +418,8 @@ export default {
computed: { computed: {
...mapGetters(['clientHeight', 'iframeHeight']), ...mapGetters(['clientHeight', 'iframeHeight']),
tableHeight () { tableHeight () {
const h = this.clientHeight - this.searchH - 280 + this.iframeHeigh const h = this.clientHeight - this.searchH - 240 + this.iframeHeigh
const _h = this.clientHeight - 280 - this.searchH const _h = this.clientHeight - 240 - this.searchH
return this.$store.state.inIframe ? h : _h return this.$store.state.inIframe ? h : _h
} }
}, },
@ -1260,6 +1292,9 @@ export default {
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
@import "@/assets/scss/modules/management/list-main.scss";
@import "@/assets/scss/modules/management/edit-main.scss";
.tabs-other-info { .tabs-other-info {
::v-deep .el-tabs__item { ::v-deep .el-tabs__item {
// width: 50px; // width: 50px;

Loading…
Cancel
Save