d19af6ad by 任超

feat:登薄日志

1 parent 0ceda15c
import request from '@/utils/request'
class journal {
// 登薄日志
async queryAccessLogs (data) {
return request({
url: '/accessLog/queryAccessLogs',
method: 'post',
data
})
}
// GET /accessLog/getXmlById登簿日志报文预览
async getXmlById (id) {
return request({
url: '/accessLog/getXmlById',
method: 'get',
params: {
id: id
}
})
}
// 上报日志
async querySjsbTask (data) {
return request({
url: '/sjsbFunctionOper/querySjsbTask',
method: 'post',
data
})
}
// 查询响应日志
async queryResponseLog (id) {
return request({
url: '/sjsbFunctionOper/queryResponseLog',
method: 'get',
params: {
msgid: id
}
})
}
// 重新发报接口
async sendXmlForPlat (id) {
return request({
url: '/sjsbFunctionOper/sendXmlForPlat',
method: 'get',
params: {
msgid: id
}
})
}
// 预览xml报文
async queryXML (id) {
return request({
url: '/sjsbFunctionOper/queryXML',
method: 'get',
params: {
msgid: id
}
})
}
// 重新抽取
async extractionAndInsertData (id) {
return request({
url: '/sjsbFunctionOper/extractionAndInsertData',
method: 'get',
params: {
msgid: id
}
})
}
// 错误日志查询
async queryErrorLog (id) {
return request({
url: '/sjsbFunctionOper/queryErrorLog',
method: 'get',
params: {
msgid: id
}
})
}
// 校验报文
async checkSjsbXmlDatas (id) {
return request({
url: '/sjsbFunctionOper/checkSjsbXmlDatas',
method: 'get',
params: {
msgid: id
}
})
}
}
export default new journal()
\ No newline at end of file
......@@ -46,6 +46,19 @@ export const asyncRoutes = [
}
]
},
// 登簿日志
{
path: '/registerLog',
component: Layout,
children: [
{
path: 'index',
component: () => import('@/views/registerLog/index'),
name: 'registerLog',
meta: { title: '登簿日志', icon: 'zhcx' }
}
]
},
// 接入业务信息
{
path: '/busineInfo',
......
......@@ -218,7 +218,6 @@ export default {
}
}
</script>
<style scoped lang="scss">
@import "~@/styles/mixin.scss";
@import "./index.scss";
......
class data {
columns () {
return [
{
prop: "areaname",
label: "行政区名称",
width: 100
},
{
prop: "areacode",
label: "行政区代码",
width: 100
},
{
prop: "accessdate",
width: 135,
label: "上报日期"
},
{
label: "类别",
render: (h, scope) => {
return (
<div>
<p>登簿</p>
<p>接入</p>
</div>
)
},
},
{
label: "总量",
render: (h, scope) => {
return (
<div class={scope.row.registerInfoModel.totalnum === scope.row.accessInfoModel.totalnum ? '' : 'difference'}>
<p>{scope.row.registerInfoModel.totalnum}</p>
<p>{scope.row.accessInfoModel.totalnum}</p>
</div>
)
},
},
{
label: "首次登记",
render: (h, scope) => {
return (
<div class={scope.row.registerInfoModel.firstreg === scope.row.accessInfoModel.firstreg ? '' : 'difference'}>
<p>{scope.row.registerInfoModel.firstreg}</p>
<p>{scope.row.accessInfoModel.firstreg}</p>
</div>
)
},
},
{
label: "转移登记",
render: (h, scope) => {
return (
<div class={scope.row.registerInfoModel.transferreg === scope.row.accessInfoModel.transferreg ? '' : 'difference'}>
<p>{scope.row.registerInfoModel.transferreg}</p>
<p>{scope.row.accessInfoModel.transferreg}</p>
</div>
)
},
},
{
label: "变更登记",
render: (h, scope) => {
return (
<div class={scope.row.registerInfoModel.changereg === scope.row.accessInfoModel.changereg ? '' : 'difference'}>
<p>{scope.row.registerInfoModel.changereg}</p>
<p>{scope.row.accessInfoModel.changereg}</p>
</div>
)
},
},
{
label: "注销登记",
render: (h, scope) => {
return (
<div class={scope.row.registerInfoModel.logoutreg === scope.row.accessInfoModel.logoutreg ? '' : 'difference'}>
<p>{scope.row.registerInfoModel.logoutreg}</p>
<p>{scope.row.accessInfoModel.logoutreg}</p>
</div>
)
},
},
{
label: "更正登记",
render: (h, scope) => {
return (
<div class={scope.row.registerInfoModel.rivisereg === scope.row.accessInfoModel.rivisereg ? '' : 'difference'}>
<p>{scope.row.registerInfoModel.rivisereg}</p>
<p>{scope.row.accessInfoModel.rivisereg}</p>
</div>
)
},
},
// 异议登记
{
label: "异议登记",
render: (h, scope) => {
return (
<div class={scope.row.registerInfoModel.dissentingreg === scope.row.accessInfoModel.dissentingreg ? '' : 'difference'}>
<p>{scope.row.registerInfoModel.dissentingreg}</p>
<p>{scope.row.accessInfoModel.dissentingreg}</p>
</div>
)
},
},
// 预告登记
{
label: "预告登记",
render: (h, scope) => {
return (
<div class={scope.row.registerInfoModel.advancereg === scope.row.accessInfoModel.advancereg ? '' : 'difference'}>
<p>{scope.row.registerInfoModel.advancereg}</p>
<p>{scope.row.accessInfoModel.advancereg}</p>
</div>
)
},
},
// 查封登记
{
label: "查封登记",
render: (h, scope) => {
return (
<div class={scope.row.registerInfoModel.seizereg === scope.row.accessInfoModel.seizereg ? '' : 'difference'}>
<p>{scope.row.registerInfoModel.seizereg}</p>
<p>{scope.row.accessInfoModel.seizereg}</p>
</div>
)
},
},
// 地役权登记
{
label: "地役权登记",
render: (h, scope) => {
return (
<div class={scope.row.registerInfoModel.easementreg === scope.row.accessInfoModel.easementreg ? '' : 'difference'}>
<p>{scope.row.registerInfoModel.easementreg}</p>
<p>{scope.row.accessInfoModel.easementreg}</p>
</div>
)
},
},
// 抵押权登记
{
label: "抵押权登记",
render: (h, scope) => {
return (
<div class={scope.row.registerInfoModel.mortgagereg === scope.row.accessInfoModel.mortgagereg ? '' : 'difference'}>
<p>{scope.row.registerInfoModel.mortgagereg}</p>
<p>{scope.row.accessInfoModel.mortgagereg}</p>
</div>
)
},
}
]
}
}
export default new data()
.registerLog {
.reportingTime {
display: flex;
align-items: center;
.line {
width: 25px;
text-align: center;
line-height: 26px;
display: inline-block;
}
}
}
\ No newline at end of file
<template>
<div class="registerLog from-clues">
<div class="registerLog-header from-clues-header">
<el-form ref="form" :model="form" label-width="80px">
<el-row>
<el-col :span="5">
<el-form-item label="行政区">
<el-select v-model="form.areacode" filterable placeholder="请选择行政区">
<!-- <el-option v-for="item in dicData['XZQ']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option> -->
</el-select>
</el-form-item>
</el-col>
<el-col :span="10">
<el-form-item label="上报时间" class="reportingTime">
<el-date-picker type="date" placeholder="选择开始日期" :picker-options="pickerOptionsStart" clearable
v-model="form.startTime" value-format="yyyy-MM-dd"></el-date-picker>
<span class="line">-</span>
<el-date-picker placeholder="选择结束日期" clearable :picker-options="pickerOptionsEnd" v-model="form.endTime"
value-format="yyyy-MM-dd">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="9" class="btnColRight">
<el-button type="primary" @click="handleSubmit">查询结果</el-button>
</el-col>
</el-row>
</el-form>
</div>
<div class="from-clues-content">
<lb-table :page-size="pageData.size" :current-page.sync="pageData.current" :total="pageData.total"
@size-change="handleSizeChange" @p-current-change="handleCurrentChange" :column="tableData.columns"
:data="tableData.data">
</lb-table>
</div>
<!-- 预览弹框 -->
<dialogBox ref="dialog" isReset saveButton="关闭" divider title="XML报文">
<div class="xmlMessage">
{{ xml }}
</div>
</dialogBox>
</div>
</template>
<script>
// 登簿日志
import data from "./data"
import journal from '@/api/journal.js'
import fromMixin from '@/mixins/fromMixin.js'
import tableMixin from '@/mixins/tableMixin.js'
export default {
name: "registerLog",
mixins: [fromMixin, tableMixin],
data () {
return {
xml: '',
form: {
areacode: '',
startTime: '',
endTime: '',
currentPage: 1
},
tableData: {
columns: [{
label: '序号',
type: 'index',
width: '50',
index: this.indexMethod,
}].concat(data.columns())
.concat([
{
label: "XML报文",
width: 130,
render: (h, scope) => {
return (
<div>
<el-button
type="text"
icon="el-icon-view"
onClick={() => { this.handlePreview(scope.$index, scope.row) }}
>
预览
</el-button>
</div>
);
},
},
]),
data: []
},
pageData: {
total: 0,
pageSize: 15,
current: 1
}
}
},
// watch: {
// 'dicData.XZQ': {
// handler (val, oldVal) {
// if (val.length == 1) {
// this.form.areacode = val[0].DCODE
// }
// },
// deep: true
// }
// },
// created () {
// if (this.dicData && this.dicData['XZQ'] && this.dicData['XZQ'].length == 1) {
// this.form.areacode = this.dicData.XZQ[0].DCODE
// }
// },
methods: {
async featchData () {
try {
this.form = Object.assign(this.form, this.formData)
let { list, total, pages: pageSize, pageNum: current
} = await journal.queryAccessLogs(this.form)
this.tableData.data = list
this.pageData = {
pageSize,
current,
total
}
} catch (error) {
this.message = error
}
},
async handlePreview (index, row) {
try {
let { result: res } = await journal.getXmlById(row.id)
if (res != null) {
this.xml = res
this.$refs.dialog.isShow();
} else {
this.$message('报文为空')
}
} catch (error) {
this.$alert(error, '提示', {
confirmButtonText: '确定',
type: 'error'
})
}
}
},
}
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
@import "./index.scss";
</style>