8a1c1954 by 赵千

ycsl

1 parent d3bb8a8d
......@@ -27,6 +27,7 @@
"print-js": "^1.6.0",
"qrcode": "^1.5.3",
"sortablejs": "^1.15.0",
"tiff.js": "^1.0.0",
"vue": "2.6.10",
"vue-json-editor": "^1.4.3",
"vue-print-nb": "^1.7.5",
......@@ -35,7 +36,7 @@
"vue-seamless-scroll": "^1.1.23",
"vuex": "3.1.0",
"x2js": "^3.4.4",
"xlsx": "^0.17.0",
"xlsx": "^0.17.5",
"xlsx-style": "^0.8.13"
},
"devDependencies": {
......
/*
* @Description: 信息备案
* @Autor:
* @LastEditTime: 2023-09-11 11:25:22
*/
import request from '@/utils/request'
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
/**
* @description: 添加银行
* @author:
* @param params
*/
export function queryBj (params) {
return request({
url: SERVER.SERVERAPI + '/rest/wwsq/queryBj',
method: 'get',
params
})
}
/**
* @description: getSqr
* @author:
* @param ywh
*/
export function getSqr (ywh) {
return request({
url: SERVER.SERVERAPI + '/rest/wwsq/getSqr',
method: 'get',
params: {
ywh: ywh
}
})
}
/**
* @description: getSqr
* @author:
* @param ywh
*/
export function getBdcqk (ywh) {
return request({
url: SERVER.SERVERAPI + '/rest/wwsq/getBdcqk',
method: 'get',
params: {
ywh: ywh
}
})
}
/**
* @description: getSqr
* @author:
* @param ywh
*/
export function getTreeNodeList (ywh) {
return request({
url: SERVER.SERVERAPI + '/rest/fjcl/getTreeNodeList',
method: 'get',
params: {
ywh: ywh
}
})
}
/**
* @description: getSqr
* @author:
* @param datumId
*/
export function getFjnrById (datumId) {
return request({
url: SERVER.SERVERAPI + '/rest/fjcl/getFjnrById',
method: 'get',
params: {
datumId: datumId
}
})
}
......@@ -58,6 +58,65 @@ export default class filter {
return name
}
}
/**
* @description: blzt
* @param {*} val
* @author:
*/
blzt (val) {
if (val === 0) {
return "未提交"
} else if (val === 1) {
return "已提交"
} else if (val === 2) {
return "办理中"
} else if (val === 3) {
return "已办结"
} else if (val === 4) {
return "已终止"
} else if (val === 5) {
return "已退回"
} else if (val === 8) {
return "已登簿"
}
}
/**
* @description: ywlx
* @param {*} val
* @author:
*/
ywlx (val) {
if (val === "1") {
return "预售商品房买卖预告登记"
} else if (val === "2") {
return "预售商品房抵押权预告登记"
} else if (val === "3") {
return "商品房初始登记"
} else if (val === "4") {
return "不动产抵押登记"
} else if (val === "5") {
return "预购商品房预告登记/预购商品房抵押登记"
} else if (val === "6") {
return "预售商品房预告登记转房屋所有权登记/预售商品房抵押登记转抵押权登记"
} else if (val === "7") {
return "查封登记"
} else if (val === "8") {
return "解封登记"
} else if (val === "9") {
return "商品房转移登记"
} else if (val === "10") {
return "存量房转移登记"
} else if (val === "23") {
return "续封登记"
} else if (val === "41") {
return "独幢宅基地首次登记"
} else if (val === "42") {
return "多幢宅基地首次登记"
}
}
/**
* @description: filterHtml
* @param {*} content
......
<!--
* @Description:
* @Autor:
* @LastEditTime: 2023-12-24 17:18:02
-->
<template>
<div class="clxx">
<div class="left">
<div class="slxx_title title-block">
附件扫描信息
<div class="triangle"></div>
</div>
<div class="preview-content">
<img id="tifImage" alt="TIF Image"/>
</div>
</div>
<div class="right">
<div class="slxx_title title-block">
收件材料
<div class="triangle"></div>
</div>
<div class="tree-content">
<el-tree
:data="tableData"
:props="defaultProps"
accordion
@node-click="handleNodeClick">
</el-tree>
</div>
</div>
</div>
</template>
<script>
import 'tiff.js';
import store from '@/store/index.js'
import { getTreeNodeList, getFjnrById } from "@/api/ycsl.js";
export default {
components: { },
props: {
formData: {
type: Object,
default: () => {
return {}
}
}
},
data () {
return {
imgKey: 0,
isDialog: false,
iclass: "",
// 材料目录选中
treeCheckIndex: 0,
treeCheckId: "",
key: 0,
tableData: [],
defaultProps: {
children: 'nodeList',
label: 'text'
},
previewImg: {
bsmMaterial: "",
index: 0,
selectedIndex: 0,
imgList: []
}
}
},
computed: {
workFresh () {
return store.state.user.workFresh
}
},
watch: {},
created () {
},
mounted () {
console.log(this.formData)
this.getTreeNodeList(this.formData.ywh)
},
methods: {
handleNodeClick(data) {
console.log(data);
this.getFjnrById(data.id)
},
/**
* @description: 获取详情信息
* @author:
* @param ywh
*/
getTreeNodeList (ywh) {
getTreeNodeList(ywh).then(res => {
if (res.code == 200) {
this.tableData = res.result;
// this.tableData = [
// {
// "id": "4501904998761472",
// "text": "不动产登记申请书",
// "leaf": false,
// "nodeList": [
// {
// "id": "4501904999629824",
// "text": "001.tif",
// "leaf": true,
// "nodeList": []
// },
// {
// "id": "4501905001399296",
// "text": "002.tif",
// "leaf": true,
// "nodeList": []
// },
// {
// "id": "4501905004954624",
// "text": "003.tif",
// "leaf": true,
// "nodeList": []
// },
// {
// "id": "4501905007002624",
// "text": "004.tif",
// "leaf": true,
// "nodeList": []
// }
// ]
// },
// {
// "id": "4501905008690176",
// "text": "商品房预售合同",
// "leaf": false,
// "nodeList": [
// {
// "id": "4501905009443840",
// "text": "005.tif",
// "leaf": true,
// "nodeList": []
// },
// {
// "id": "4501905011491840",
// "text": "006.tif",
// "leaf": true,
// "nodeList": []
// },
// {
// "id": "4501905015194624",
// "text": "007.tif",
// "leaf": true,
// "nodeList": []
// }
// ]
// }
// ];
console.log(this.tableData)
}
})
},
/**
* @description: 获取详情信息
* @author:
* @param datumId
*/
getFjnrById (datumId) {
getFjnrById(datumId).then(res => {
if (res.code == 200) {
const tiff = new Tiff({
buffer: res.result,
});
//转成png格式的base64图片,将其用img标签展示即可
console.log(tiff.toDataURL("image/png"))
}
})
}
}
}
</script>
<style scoped lang="scss">
@import "~@/styles/mixin.scss";
.left {
width: 48%;
float: left;
.preview-content {
height: 500px;
border: 1px solid grey;
}
}
.right {
width: 48%;
float: right;
.tree-content {
height: 500px;
overflow-y: scroll;
}
}
</style>
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-09-07 14:49:06
*/
import filter from '@/utils/filter.js'
let vm = null
......@@ -27,65 +32,45 @@ class data extends filter {
label: "业务号",
},
{
prop: "sqbh",
label: "申请编号",
},
{
prop: "qlr",
label: "权利人",
},
{
prop: "ywr",
label: "义务人",
},
{
prop: "bdcdyh",
label: "不动产单元号",
width: 150
},
{
prop: "sqsj",
label: "申请时间",
width: 140
label: "权利人"
},
{
label: "登记类型",
prop: "blzt",
label: "办理状态",
render: (h, scope) => {
return <span>{this.dicStatus(scope.row.djlx, "A21")}</span>
return <span>{this.blzt(scope.row.blzt)}</span>
}
},
{
label: "权利类型",
prop: "ywlx",
label: "业务类型",
render: (h, scope) => {
return <span>{this.dicStatus(scope.row.qllx, "A8")}</span>
return <span>{this.ywlx(scope.row.ywlx)}</span>
}
},
{
label: "办理状态",
render: (h, scope) => {
return <span>{this.dicStatus(scope.row.blzt, "dyblzt")}</span>
}
prop: "sqsj",
label: "申请时间",
},
{
prop: "shyj",
label: "审核意见"
prop: "ywr",
label: "义务人",
},
{
label: "操作",
width: 250,
fixed: 'right',
label: '操作',
width: '120',
align: 'center',
render: (h, scope) => {
return <div>
<el-button type="text" icon='el-icon-view' onClick={() => { vm.handleViewClick(scope.row) }}>详情</el-button>
<el-button type="text" icon="el-icon-delete" onClick={() => { vm.handleDel(scope.row) }}>删除</el-button>
<el-button type="text" icon='el-icon-refresh-left' onClick={() => { vm.handleBack(scope.row) }}>回退</el-button>
<el-button type="text" icon='el-icon-document-copy' onClick={() => { vm.handleSync(scope.row) }}>数据同步</el-button>
return (
<div>
<el-button type="text" icon="el-icon-edit-outline" onClick={() => { vm.handleEdit(scope.row) }}>详情</el-button>
</div>
)
}
}
]
}
}
let datas = new data()
export {
......
<template>
<div class="duijie">
<img src="../../../image/duijie.png" alt="">
<!-- <div class="duijie">-->
<!-- <img src="../../../image/duijie.png" alt="">-->
<!-- </div>-->
<div class="from-clues">
<!-- 表单部分 -->
<div class="from-clues-header">
<el-form :model="queryForm" ref="queryForm" @submit.native.prevent label-width="80px">
<el-row>
<el-col :span="5">
<el-form-item label="业务号">
<el-input placeholder="业务号" v-model="queryForm.ywh" clearable class="width100">
</el-input>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="权利人">
<el-input placeholder="权利人" v-model="queryForm.qlrmc" clearable class="width100">
</el-input>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="义务人">
<el-input placeholder="义务人" v-model="queryForm.ywrmc" clearable class="width100">
</el-input>
</el-form-item>
</el-col>
<el-col :span="9" class="btnColRight">
<el-form-item>
<el-button type="primary" native-type="submit" @click="handleSearch">查询</el-button>
<el-button type="primary" native-type="submit" @click="handleAdd">添加</el-button>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
<div class="from-clues-content loadingtext">
<lb-table :page-size="pageData.size" border :current-page.sync="pageData.currentPage" :heightNum="280"
:total="tableData.total" @size-change="handleSizeChange" @p-current-change="handleCurrentChange"
:column="tableData.columns" :data="tableData.data">
</lb-table>
</div>
</div>
</template>
<script>
import { mapGetters } from 'vuex'
import table from "@/utils/mixin/table"
import { datas, sendThis } from "./data"
import { queryBj } from "@/api/ycsl.js";
export default {
name: "cwrz",
components: {},
mixins: [table],
mounted () {
sendThis(this);
},
activated () {
this.queryClick()
},
data () {
return {
queryForm: {
qymc: "",
zjh: "",
},
tableData: {
total: 0,
columns: datas.columns(),
data: [],
},
};
},
computed: {
...mapGetters(['isRefresh'])
},
watch: {
isRefresh: {
handler (newVal, oldVal) {
if (newVal) this.queryClick()
},
immediate: true
}
},
methods: {
/**
* @description: queryClick
* @author: renchao
*/
queryClick () {
this.$startLoading();
// let data = { ...this.queryForm, ...this.pageData }
let pageInfo = {
pageNo: this.pageData.currentPage,
pageSize: this.pageData.pageSize
}
let data = { ...pageInfo }
queryBj(data).then((res) => {
this.$endLoading();
if (res.code === 200) {
let { total, records } = res.result;
this.tableData.total = total;
this.tableData.data = records;
}
})
},
/**
* @description: handleSearch
* @author: renchao
*/
handleSearch () {
this.queryClick();
},
/**
* @description: handleAdd
* @author: renchao
*/
handleAdd () {
this.$popupDialog("添加企业", "xxba/components/addDialog", { isAdd: 1 }, "75%")
},
/**
* @description: handleDelete
* @author: renchao
*/
handleDelete (row) {
let _this = this
this.$confirm('此操作将永久删除该文件, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
remove(row.bsmCompany).then(res => {
if (res.code == 200) {
_this.$message({
type: 'success',
message: '删除成功!'
});
}
const totalPage = Math.ceil((_this.tableData.total - 1) / _this.pageData.pageSize) // 总页数
_this.pageData.currentPage = _this.pageData.currentPage > totalPage ? totalPage : _this.pageData.currentPage
_this.pageData.currentPage = _this.pageData.currentPage < 1 ? 1 : _this.pageData.currentPage
_this.queryClick(_this.pageData.currentPage);//重新渲染数
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
});
});
},
handleEdit (row) {
this.$popupDialog("编辑企业", "ywbl/ycsl/components/addDialog", { isAdd: 2, ...row }, "75%")
}
}
}
</script>
<style lang="scss" scoped>
.duijie{
@import "~@/styles/public.scss";
.duijie{
width: 100%;
height: 100%;
margin: auto;
text-align: center
}
}
</style>
......