773174ca by zhaoqian

代办箱工作区

1 parent b48f4ef4
import request from '@/plugin/axios'
/**
* 综合查询
*/
export function getDbxList(data) {
return request({
url: '/system/basiccommon/queryDbx',
method: 'post',
data : data,
})
}
\ No newline at end of file
......@@ -93,6 +93,12 @@ const constantRoutes = [
name: "系统管理",
code: "0-7",
component: () => import("@/views/manage/index"),
},
{
path: "/dbx",
name: "代办箱",
code: "2-1",
component: () => import("@/views/dbx/index"),
}
],
},
......
<template>
<el-tabs v-model="activeName" type="card">
<div class="main">
<!-- <p class="tips">查询条件</p> -->
<SearchHead @getSearchCondition="geQuerytData" :type="type"></SearchHead>
<!-- <p class="tips">查询列表</p> -->
<div class="dataGrid" ref="dataGrid">
<el-table
:data="tableData"
:height="tableHeight"
:row-class-name="tableRowClassName"
@row-dblclick="doubleClick"
>
<el-table-column type="index" width="80" align="center" label="序号">
</el-table-column>
<el-table-column prop="bdcdyh" align="left" label="不动产单元号">
</el-table-column>
<el-table-column prop="xmmc" align="left" width="150" label="项目名称">
</el-table-column>
<el-table-column prop="bdcqzh" align="left" label="不动产权证号">
</el-table-column>
<el-table-column prop="dylx" align="left" width="100" label="类型">
<template slot-scope="scope">
{{scope.row.dylx | bdcLxFilter}}
</template>
</el-table-column>
<el-table-column prop="qlrmc" align="left" width="120" label="权利人">
</el-table-column>
<el-table-column prop="zl" align="left" label="坐落"></el-table-column>
<el-table-column prop="addtime" align="left" width="120" label="转入时间">
<template slot-scope="scope">
{{scope.row.addtime | timeFilter}}
</template>
</el-table-column>
<!-- <el-table-column prop="cjr" align="left" width="120" label="创建人">
</el-table-column> -->
<el-table-column label="操作" align="center" width="100">
<template slot-scope="scope">
<el-tooltip class="item" effect="light" content="查看" placement="top">
<i class="iconfont iconbanli iconfontEdit" @click="handleClick(scope.row)" style="padding:0 10px"></i>
</el-tooltip>
<el-tooltip class="item" effect="light" content="定位" placement="top">
<i class="iconfont icondingwei iconfontEdit" @click="postionToMap(scope.row)"></i>
</el-tooltip>
</template>
</el-table-column>
</el-table>
<div class="pagination">
<el-pagination background layout="prev, pager, next,total" :total="total"
:current-page="pageNo" :page-size="pageSize" @current-change="handleCurrentChange">
</el-pagination>
</div>
</div>
</div>
</el-tabs>
</template>
<script>
import SearchHead from "@components/searchHead/searchHead";
import {getDbxList} from "@api/dbx";
import panelSy from "@/views/panel/index"
export default {
name: "",
inject:['getRightTree','getTreeByBsm'],
components: {SearchHead,panelSy},
props: {},
data() {
return {
activeName:'zhcx',
type:'all',
total: 0,
pageNo: 1,
pageSize: 15,
tableData: [],
tableHeight: 0,
queryData: {},
};
},
created() {
},
mounted() {
this.queryData.pageSize=this.pageSize;
this.queryData.pageNo=this.pageNo;
this.getData(this.queryData);
this.$nextTick(()=>{
this.tableHeight = this.$refs.dataGrid.offsetHeight - 68;
})
},
methods: {
onSubmit() {
},
doubleClick(row, column, event){
this.handleClick(row);
},
tableRowClassName({row, rowIndex}) {
if (rowIndex % 2 !== 0) {
return "even-row";
} else {
return "";
}
},
handleCurrentChange(val) {
this.pageNo = val;
this.queryData.pageNo = val;
this.getData(this.queryData);
},
getData(data) {
data['type'] = this.type
getDbxList(data).then(res => {
this.tableData = res.result.records
this.total = res.result.total
});
},
//获取子组件点击查询触发的事件
geQuerytData(obj) {
this.queryData = obj
//将obj作为参数调用接口查询表格数据
this.queryData['pageSize'] = this.pageSize
this.pageNo = 1
this.queryData['pageNo'] = 1
this.getData(this.queryData)
},
//点击办理
handleClick(row) {
let path = "";
this.$store.state.oldZdbsm = '';
switch (row.dylx) {
case "zrz":
this.$store.state.zrzbsm = row.glbsm;
this.getTreeByBsm(row.glbsm,row.dylx,'0,1,2');
path = "/zrz";
break;
case "zd":
this.$store.state.zdbsm = row.glbsm;
this.getRightTree(row.glbsm,'0,1,2');
path = "/zd";
break;
case "dz":
this.$store.state.dzbsm = row.glbsm;
this.getTreeByBsm(row.glbsm,row.dylx,'0,1,2');
path = "/dz";
break;
case "h":
case "h0":
case "h1":
path="/h";
this.$store.state.hbsm=row.glbsm
this.getTreeByBsm(row.glbsm,'h','0,1,2');
break;
case "gzw":
this.$store.state.gzwbsm = row.glbsm;
this.getTreeByBsm(row.glbsm,"gzw",'0,1,2');
path = "/gzw";
break;
default:
break;
}
this.$router.push({
path: path,
query: {
bsm: row.glbsm,
source: 2,
auth: '0,1,2'
}
});
},
//定位
//图形定位
postionToMap(rowData){
if(rowData.dylx == "zrz" || rowData.dylx == "zd"){
var curretRouterInfo = {
path:this.$route.path,
query:this.$route.query
}
sessionStorage.setItem("curretRouterInfo",JSON.stringify(curretRouterInfo));
this.$router.push({
path: "/viewMap",
query: {
bsm: rowData.glbsm,
type: rowData.dylx
}
});
}
}
},
computed: {},
watch: {},
};
</script>
<style scoped lang="less">
.el-tabs{
height: calc(100% - 50px);
/deep/.el-tabs__content{
height: 100%;
/deep/.el-tab-pane{
height: 100%;
}
background: #eaedf5;
padding: 0;
}
/deep/ .el-tabs__item {
height: 48px;
}
/deep/ .el-tabs__header{
background-color: #ffffff;
margin: 0;
}
.main {
width: 100%;
height: 100%;
box-sizing: border-box;
padding: 0 18px 0 0;
display: flex;
flex-direction: column;
background-color: #EAEDF5;
.tips{
color: #9B9B9B;
margin-left: 2px;
margin-bottom: 10px;
}
.demo-form-inline {
margin-top: 18px;
.moreSearchBtn {
background-color: #1ad6e1;
border-color: #1ad6e1;
}
.moreSearchBtn:focus,
.moreSearchBtn:hover {
background-color: rgba(28, 200, 229, 0.6);
}
}
.dataGrid {
flex: 1;
.pagination {
padding: 18px 0;
}
}
.hbjDialog{
/deep/ .el-dialog{
margin-top: 10vh!important;
}
}
.btnGroup{
margin: 20px auto 0;
width: 230px;
}
}
}
</style>
<template>
<el-tabs v-model="activeName" type="card" @tab-remove="removeTab">
<!-- <el-tab-pane label="首页" name="sy" ref="sy"><panelSy></panelSy></el-tab-pane>-->
<el-tab-pane label="待办箱" name="dbx"><dbxInfo></dbxInfo></el-tab-pane>
<el-tab-pane
v-for="(item, index) in editableTabs"
:key="item.name"
:label="item.title"
:name="item.name"
>
{{item.content}}
</el-tab-pane>
</el-tabs>
</template>
<script>
import SearchHead from "@components/searchHead/searchHead";
import panelSy from "@/views/panel/index"
import dbxInfo from "@/views/dbx/dbxinfo/index"
export default {
name: "",
inject:['getRightTree','getTreeByBsm'],
components: {SearchHead,panelSy,dbxInfo},
props: {},
data() {
return {
activeName:'dbx',
type:'all',
total: 0,
pageNo: 1,
pageSize: 15,
tableData: [],
tableHeight: 0,
queryData: {},
editableTabs: [
// {
// title: 'Tab 1',
// name: '1',
// content: 'Tab 1 content'
// }
],
};
},
created() {
},
mounted() {
this.queryData.pageSize=this.pageSize;
this.queryData.pageNo=this.pageNo;
},
methods: {
changeActiveName(data){
this.activeName = data;
},
removeTab(targetName) {
let tabs = this.editableTabs;
let activeName = this.activeName;
if (activeName === targetName) {
tabs.forEach((tab, index) => {
if (tab.name === targetName) {
let nextTab = tabs[index + 1] || tabs[index - 1];
if (nextTab) {
activeName = nextTab.name;
}
}
});
}
this.activeName = activeName;
this.editableTabs = tabs.filter(tab => tab.name !== targetName);
},
},
computed: {},
watch: {},
};
</script>
<style scoped lang="less">
.el-tabs{
height: calc(100% - 50px);
/deep/.el-tabs__content{
height: 100%;
/deep/.el-tab-pane{
height: 100%;
}
background: #eaedf5;
padding: 0;
}
/deep/ .el-tabs__item {
height: 48px;
}
/deep/ .el-tabs__header{
background-color: #ffffff;
margin: 0;
border-top: 1px solid #E4E7ED;
}
.main {
width: 100%;
height: 100%;
box-sizing: border-box;
padding: 0 18px 0 0;
display: flex;
flex-direction: column;
background-color: #EAEDF5;
.tips{
color: #9B9B9B;
margin-left: 2px;
margin-bottom: 10px;
}
.demo-form-inline {
margin-top: 18px;
.moreSearchBtn {
background-color: #1ad6e1;
border-color: #1ad6e1;
}
.moreSearchBtn:focus,
.moreSearchBtn:hover {
background-color: rgba(28, 200, 229, 0.6);
}
}
.dataGrid {
flex: 1;
.pagination {
padding: 18px 0;
}
}
.hbjDialog{
/deep/ .el-dialog{
margin-top: 10vh!important;
}
}
.btnGroup{
margin: 20px auto 0;
width: 230px;
}
}
}
</style>
......@@ -10,7 +10,7 @@
class="box"
v-for="(item, index) in workList"
:key="index"
@click="handleSelect"
@click="handleSelect(item)"
>
<el-badge :value="item.count" :max="99" class="item">
<img :src="item.img" alt="" />
......@@ -87,12 +87,14 @@
</template>
<script>
import {getDbxList} from "@api/dbx";
export default {
components:{},
data() {
return {
workList: [
{ name: "待办箱", img: require("@assets/images/dbx.png"),count:10 },
{ name: "退件箱", img: require("@assets/images/tjx.png"),count:3 },
{ name: "待办箱", img: require("@assets/images/dbx.png"),count:0,path:'/dbx' },
{ name: "退件箱", img: require("@assets/images/tjx.png"),count:0 },
],
list: [
{ name: "宗地分割", img: require("@assets/images/zdfg.png") },
......@@ -123,15 +125,26 @@ export default {
this.$nextTick(() => {
this.tableHeight = this.$refs.notice.offsetHeight - 54;
});
this.getDbxCount();
},
methods: {
download(row,column,event){
window.open(row.url)
},
handleSelect() {
handleSelect(item) {
console.log(this.$route.path+":this.$route.params.path")
//非编辑状态才可以点击
if (!isEdit) {
if (!this.isEdit) {
if(this.$route.path === '/dbx'){
this.$parent.changeActiveName("dbx");
}else {
if(item.path){
this.$router.push({
path:'/dbx'
})
}
}
}
},
tableRowClassName({ row, rowIndex }) {
......@@ -157,6 +170,21 @@ export default {
}).catch(() => {
});
},
getDbxCount(){
let data = {
pageSize:15,
pageNo:1
}
getDbxList(data).then((res)=>{
if(res.code === 200){
this.workList.forEach((item,index)=>{
if(item.name === '待办箱'){
item.count = res.result.total;
}
})
}
})
}
},
};
......