24994b96 by 任超

Merge branch 'master' into dev

2 parents c7576fcd 750abf7a
Showing 133 changed files with 1251 additions and 1560 deletions
import request from '@/utils/request'
import SERVER from './config'
class business {
/*
成功率统计
startDate:开始日期
endDate:结束日期
*/
async getSuucessRate(startDate,endDate,qxdm) {
return request({
url: SERVER.SERVERAPI + '/rest/statistics/Business/sf',
method: 'get',
params: {
startDate:startDate,
endDate:endDate,
qxdm:qxdm
}
})
}
}
export default new business()
\ No newline at end of file
import request from "@/utils/request";
import SERVER from "./config";
class efficient {
/*
获取对应的业务量总数
startDate:开始日期
endDate:结束日期
*/
async getProcessCounts(startDate, endDate,qxdm) {
return request({
url: SERVER.SERVERAPI + "/rest/statistics/Efficient/getProcessCounts",
method: "post",
params: {
startDate: startDate,
endDate: endDate,
qxdm:qxdm
},
});
}
/*
获取各区县业务对应的天数
recType:业务代码
startDate:开始日期
endDate:结束日期
*/
async getProcessDays(recType, startDate, endDate) {
return request({
url: SERVER.SERVERAPI + "/rest/statistics/Efficient/getProcessDays",
method: "post",
params: {
recType: recType,
startDate: startDate,
endDate: endDate,
},
});
}
}
export default new efficient();
......@@ -61,6 +61,7 @@ export default {
background: linear-gradient(90deg, #0047B8 0%, rgba(0, 26, 95, 0.1) 100%);
line-height: 32px;
color: #FFFFFF;
margin-bottom: 8px;
}
/deep/.el-icon-arrow-right {
......
......@@ -30,9 +30,9 @@
border-right: none;
text-align: center;
padding: 0;
color: #05bbdb;
line-height: 16px;
font-size: 12px;
color: #CEF8FF;
margin-top: 8px !important;
}
......@@ -52,7 +52,7 @@
/deep/.el-textarea__inner {
margin: 5px;
width: 96%;
background: #05275B;
background: none;
color: #FFFFFF;
border-radius: 2px;
border: 1px solid #6BC1FC;
......
......@@ -74,7 +74,7 @@
</span>
<!-- <el-input :disabled="$store.state.business.Edit" v-model="ruleForm.czjg" placeholder="权利人通讯地址">
</el-input> -->
<el-select :disabled="$store.state.business.Edit" v-model="ruleForm.czjg" placeholder="请选择">
<el-select :disabled="$store.state.business.Edit" v-model="ruleForm.czjg" placeholder="操作结果">
<el-option v-for="item in dicData['A37']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
......
......@@ -95,7 +95,7 @@
领证人证件类别: <br />
<p class="label-detail">(LZRZJLB)</p>
</span>
<el-select :disabled="$store.state.business.Edit" v-model="ruleForm.LZRZJLB" placeholder="请选择">
<el-select :disabled="$store.state.business.Edit" v-model="ruleForm.LZRZJLB" placeholder="领证人证件类别">
<el-option v-for="item in dicData['A30']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
......
......@@ -110,7 +110,7 @@
<p class="label-detail">(CZJG)</p>
</span>
<el-select :disabled="$store.state.business.Edit" v-model="form.auditInfo[index].CZJG"
placeholder="请选择操作结果">
placeholder="操作结果">
<el-option v-for="item in dicData['A37']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
......
......@@ -49,7 +49,7 @@
<p class="label-detail">(SJLX)</p>
</span>
<el-select :disabled="$store.state.business.Edit" v-model="form.receivingInfo[index].SJLX"
placeholder="请选择">
placeholder="收件类型">
<el-option v-for="item in dicData['A40']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
......@@ -88,7 +88,7 @@
<p class="label-detail">(SFSJSY)</p>
</span>
<el-select :disabled="$store.state.business.Edit" v-model="form.receivingInfo[index].SFSJSY"
placeholder="请选择">
placeholder="是否收缴收验">
<el-option v-for="item in dicData['A6']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
......@@ -102,7 +102,7 @@
<p class="label-detail">(SFEWSJ)</p>
</span>
<el-select :disabled="$store.state.business.Edit" v-model="form.receivingInfo[index].SFEWSJ"
placeholder="请选择">
placeholder="是否额外收件">
<el-option v-for="item in dicData['A6']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
......@@ -116,7 +116,7 @@
<p class="label-detail">(SFBCSJ)</p>
</span>
<el-select :disabled="$store.state.business.Edit" v-model="form.receivingInfo[index].SFBCSJ"
placeholder="请选择">
placeholder="是否补充收件">
<el-option v-for="item in dicData['A6']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
......
......@@ -364,8 +364,9 @@
分摊土地面积: <br />
<p class="label-detail">(FTTDMJ)</p>
</span>
<el-input :disabled="$store.state.business.Edit" : 999999999999999, min: 0, precision: 3 }"
placeholder="分摊土地面积" type="number" v-model.number="ruleForm.fttdmj"></el-input>
<el-input :disabled="$store.state.business.Edit"
v-only-number="{ max: 999999999999999, min: 0, precision: 3 }" placeholder="分摊土地面积" type="number"
v-model.number="ruleForm.fttdmj"></el-input>
</el-form-item>
</el-col>
</el-row>
......
......@@ -110,7 +110,7 @@
状态: <br />
<p class="label-detail">(ZT)</p>
</span>
<el-select :disabled="$store.state.business.Edit" v-model="ruleForm.ZT" placeholder="请选择">
<el-select :disabled="$store.state.business.Edit" v-model="ruleForm.ZT" placeholder="状态">
<el-option v-for="item in ZTOptions" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
......
......@@ -52,7 +52,7 @@
宗海特征码: <br />
<p class="label-detail">(ZHTZM)</p>
</span>
<el-select :disabled="$store.state.business.Edit" v-model="ruleForm.ZHTZM" placeholder="请选择宗海特征码">
<el-select :disabled="$store.state.business.Edit" v-model="ruleForm.ZHTZM" placeholder="宗海特征码">
<el-option v-for="item in dicData['A44']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
......@@ -77,7 +77,7 @@
项目性质: <br />
<p class="label-detail">(XMXZ)</p>
</span>
<el-select :disabled="$store.state.business.Edit" v-model="ruleForm.XMXZ" placeholder="请选择项目性质">
<el-select :disabled="$store.state.business.Edit" v-model="ruleForm.XMXZ" placeholder="项目性质">
<el-option v-for="item in dicData['A49']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
......
......@@ -50,7 +50,7 @@
权利类型: <br />
<p class="label-detail">(QLLX)</p>
</span>
<el-select :disabled="$store.state.business.Edit" v-model="ruleForm.QLLX" placeholder="请选择">
<el-select :disabled="$store.state.business.Edit" v-model="ruleForm.QLLX" placeholder="权利类型">
<el-option v-for="item in dicData['A8']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
......@@ -63,7 +63,7 @@
登记类型: <br />
<p class="label-detail">(DJLX)</p>
</span>
<el-select :disabled="$store.state.business.Edit" v-model="ruleForm.DJLX" placeholder="请选择">
<el-select :disabled="$store.state.business.Edit" v-model="ruleForm.DJLX" placeholder="登记类型">
<el-option v-for="item in dicData['A21']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
......@@ -201,7 +201,7 @@
权属状态: <br />
<p class="label-detail">(QSZT)</p>
</span>
<el-select :disabled="$store.state.business.Edit" v-model="ruleForm.QSZT" placeholder="请选择">
<el-select :disabled="$store.state.business.Edit" v-model="ruleForm.QSZT" placeholder="权属状态">
<el-option v-for="item in dicData['A22']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
......
......@@ -83,7 +83,7 @@
<p class="label-detail">(SFCZR)</p>
</span>
<el-select :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].SFCZR"
placeholder="请选择">
placeholder="是否持证人">
<el-option v-for="item in dicData['A6']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
......@@ -97,7 +97,7 @@
<p class="label-detail">(ZJZL)</p>
</span>
<el-select :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].ZJZL"
placeholder="请选择">
placeholder="证件种类">
<el-option v-for="item in dicData['A30']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
......@@ -170,7 +170,7 @@
<p class="label-detail">(XB)</p>
</span>
<el-select :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].XB"
placeholder="请选择">
placeholder="性别">
<el-option v-for="item in dicData['A43']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
......@@ -243,7 +243,7 @@
<p class="label-detail">(QLRLX)</p>
</span>
<el-select :disabled="$store.state.business.Edit" v-model="obligeeForm.obligeeList[index].QLRLX"
placeholder="请选择">
placeholder="权利人类型">
<el-option v-for="item in dicData['A36']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
......
<template>
<el-dialog
:title="title"
:visible.sync="visible"
:width="width"
:append-to-body="appendToBody"
:modal="modal"
:close-on-click-modal="false"
:fullscreen="fullscreen"
:destroy-on-close="destroyOnClose"
:modal-append-to-body="modalAppendToBody"
:class="customClass"
@close="close"
class="dialog"
>
<el-dialog :title="title" :visible.sync="visible" :width="width" :append-to-body="appendToBody" :modal="modal"
:close-on-click-modal="false" :fullscreen="fullscreen" :destroy-on-close="destroyOnClose"
:modal-append-to-body="modalAppendToBody" :class="customClass" @close="close" class="dialog">
<slot name="content" />
<span slot="footer" class="dialog-footer">
<slot name="footer" />
......@@ -66,21 +55,21 @@ export default {
default: '30%'
}
},
data() {
data () {
return {}
},
computed: {
visible: {
get() {
get () {
return this.show
},
set(val) {
set (val) {
this.$emit('update:show', val) // visible 改变的时候通知父组件
}
}
},
methods: {
close() {
close () {
this.$emit('close')
}
}
......@@ -88,21 +77,23 @@ export default {
</script>
<style lang="scss" scoped>
.dialog {
/deep/.el-dialog{
overflow: hidden;
/deep/.el-dialog {
overflow: hidden;
background: url("~@/image/dialogBg.png") no-repeat !important;
background-size: 100% 100% !important;
}
.el-dialog__header {
padding: 0;
height: 56px;
line-height: 56px;
border-bottom: none;
.el-dialog__title {
font-weight: 400;
}
.el-dialog__title:before {
display: inline-block;
content: '';
......@@ -114,31 +105,38 @@ overflow: hidden;
position: relative;
top: 2px;
}
.el-dialog__headerbtn {
position: absolute;
// top: 2%;
right: 12px;
}
}
.el-dialog__body {
margin: 0px 12px;
padding: 48px 24px;
background: #fff;
border: 1px solid #dfe7f3;
.el-button {
padding: 8px 16px;
border: none;
}
.el-form {
.el-checkbox {
line-height: 32px;
height: 32px;
}
.form-item-mb0 {
margin-bottom: 0 !important;
}
.el-form-item {
margin-bottom: 24px;
.el-form-item__label {
height: 32px;
line-height: 32px;
......@@ -148,21 +146,25 @@ overflow: hidden;
.el-form-item__content {
// height: 32px;
line-height: 32px;
// date 组件有图标
.has-icon.el-date-editor {
.el-input__inner {
padding-left: 32px;
}
}
.el-input__inner {
padding: 0 8px;
height: 32px;
line-height: 32px;
text-align: left;
}
.el-textarea__inner {
padding: 8px 8px;
}
.el-input .el-input__icon {
font-size: 14px;
color: #747e8c;
......@@ -170,6 +172,7 @@ overflow: hidden;
}
}
}
.el-select,
.el-cascader,
.el-date-editor {
......@@ -183,11 +186,13 @@ overflow: hidden;
height: 56px;
line-height: 56px;
border: none;
.el-button {
padding: 8px 16px;
border: none;
}
.el-button + .el-button {
.el-button+.el-button {
margin-left: 12px;
}
}
......
......@@ -16,9 +16,10 @@
<slot></slot>
</div>
<div slot="footer" class="dialog_footer" v-if="isButton">
<el-button @click="closeDialog" v-if="isReset">取消</el-button>
<el-button type="primary" plain @click="submitForm" v-if="isSave" :disabled="btnDisabled" :loading="saveloding">
{{ saveButton }}</el-button>
<btn nativeType="cz" @click="closeDialog" v-if="isReset">取消</btn>
<btn nativeType="cx" type="primary" plain @click="submitForm" v-if="isSave" :disabled="btnDisabled"
:loading="saveloding">
{{ saveButton }}</btn>
</div>
</el-dialog>
</template>
......
<template>
<!-- 折线图 -->
<Echart
:options="options"
id="bottomLeftChart"
height="100%"
width="100%"
></Echart>
<Echart :options="options" id="bottomLeftChart" height="100%" width="100%"></Echart>
</template>
<script>
import Echart from "@/common/echart";
export default {
data() {
data () {
return {
xAxisData: {},
yAxisData1: {},
......@@ -30,7 +25,7 @@ export default {
},
},
methods: {
hexToRgba(hex, opacity) {
hexToRgba (hex, opacity) {
let rgbaColor = "";
let reg = /^#[\da-f]{6}$/i;
if (reg.test(hex)) {
......@@ -43,7 +38,7 @@ export default {
},
watch: {
cdata: {
handler(newData) {
handler (newData) {
this.xAxisData = newData.echartData.map((v) => v.name);
this.yAxisData1 = newData.echartData.map((v) => v.value1);
this.yAxisData2 = newData.echartData.map((v) => v.value2);
......@@ -65,12 +60,10 @@ export default {
let html = "";
params.forEach((v) => {
html += `<div style="color: #000;font-size: 14px;line-height: 24px background-color: #000000">
<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:${
newData.color[v.componentIndex]
<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:${newData.color[v.componentIndex]
};"></span>
${v.seriesName}.${v.name}
<span style="color:${
newData.color[v.componentIndex]
<span style="color:${newData.color[v.componentIndex]
};font-weight:700;font-size: 18px">${v.value}</span>
个`;
});
......@@ -140,8 +133,8 @@ export default {
{
name: newData.legendItem[0],
type: "line",
smooth: true, //是否平滑
showSymbol: false,
smooth: false, //是否平滑
showSymbol: true,
symbol: "circle",
symbolSize: 6,
zlevel: 3,
......@@ -158,8 +151,8 @@ export default {
{
name: newData.legendItem[1],
type: "line",
smooth: true,
showSymbol: false,
smooth: false,
showSymbol: true,
symbol: "circle",
symbolSize: 8,
zlevel: 3,
......@@ -176,8 +169,8 @@ export default {
{
name: newData.legendItem[2],
type: "line",
smooth: true,
showSymbol: false,
smooth: false,
showSymbol: true,
symbol: "circle",
symbolSize: 8,
zlevel: 3,
......
......@@ -76,7 +76,6 @@ export default {
itemStyle: {
normal: {
// 这里设置圆角
barBorderRadius: [0, 10, 10, 0],
color: "#16F4D2",
}
},
......@@ -89,7 +88,6 @@ export default {
itemStyle: {
normal: {
// 这里设置圆角
barBorderRadius: [0, 10, 10, 0],
color: "#C99E68"
},
},
......
......@@ -25,7 +25,7 @@ export default {
async submitViews () {
try {
let { result: res } = await work.submitViews("A20");
res.filter((item) => {
res.map((item) => {
return (
this.cdata.category.push(item.areaName),
this.cdata.barData.push(item.successCount),
......
......@@ -30,7 +30,7 @@ export default {
XZQDM: "",
};
let res = await work.getDjlxtotal(p);
res.result.filter((item) => {
res.result.map((item) => {
return (
this.cdata.category.push(item.AREACODE),
this.cdata.lineData.push(item.ywtotal)
......
......@@ -10,8 +10,8 @@ export default {
data () {
return {
options: {},
max: "9000", //最大value值
min: "500", // 最小value值
max: "100", //最大value值
min: "1", // 最小value值
};
},
components: {
......@@ -41,41 +41,6 @@ export default {
宁强县: [106.25958, 32.82881, 20],
略阳县: [106.15399, 33.33009, 20],
};
let seriesData = [
{
name: '汉台区',
},
{
name: '南郑区',
},
{
name: '城固县',
},
{
name: '洋县',
},
{
name: '西乡县',
},
{
name: '镇巴县',
},
{
name: '勉县',
},
{
name: '留坝县',
},
{
name: '佛坪县',
},
{
name: '宁强县',
},
{
name: '略阳县'
}
];
let convertData = function (data) {
let scatterData = [];
for (var i = 0; i < data.length; i++) {
......@@ -103,7 +68,7 @@ export default {
},
// 如果需要自定义 tooltip样式,需要使用formatter
formatter: params => {
return `<div style="">${params.name}:${params.value}</div>`
return `<div style="">${params.name}:${params.value + "个"}</div>`
}
},
visualMap: {
......@@ -116,15 +81,32 @@ export default {
itemWidth: 20, // 每个图元的宽度
itemGap: 2, // 每两个图元之间的间隔距离,单位为px
pieces: [ // 自定义每一段的范围,以及每一段的文字
{ gte: 6000, label: '6000以上', color: '#035cf5' }, // 不指定 max,表示 max 为无限大(Infinity)。
{ gte: 2000, lte: 6000, label: '2000-6000', color: '#3375e4' },
{ gte: 1000, lte: 2000, label: '1000-2000', color: '#6797ef' },
{ gte: 500, lte: 1000, label: '500-1000', color: '#96b5ef' },
{ gte: 100, label: '100以上', color: '#035cf5' }, // 不指定 max,表示 max 为无限大(Infinity)。
{ gte: 50, lte: 6000, label: '20-100', color: '#3375e4' },
{ gte: 20, lte: 2000, label: '1-200', color: '#6797ef' },
{ gte: 1, lte: 1000, label: '1-20', color: '#96b5ef' },
],
textStyle: {
color: '#737373'
}
},
geo: {
aspectScale: 1, //长宽比
zoom: 1.1,
mapType: '汉中市', // 自定义扩展图表类型
top: '15%',
left: '10%',
map: '汉中市',
itemStyle: {
normal: {//阴影
areaColor: '#02D9FD ',
shadowColor: '#01271F',
borderWidth: 0,
shadowOffsetX: 2,
shadowOffsetY: 25
}
}
},
series: [
{
type: 'map',
......@@ -135,22 +117,25 @@ export default {
left: '10%',
itemStyle: {
normal: {
areaColor: 'rgba(19,54,162, .5)',
borderColor: 'rgba(0,242,252,.3)',
borderWidth: 1,
areaColor: 'rgba(19,54,162,.5)',
borderColor: 'rgba(0,242,252,.5)',
borderWidth: 2,
shadowBlur: 7,
shadowColor: '#00f2fc',
borderColor: 'rgba(19,54,162,.1)',
shadowColor: '#44f2fc',
},
emphasis: {
areaColor: '#4f7fff',
borderColor: 'rgba(0,242,252,.6)',
borderColor: 'rgba(0,242,252,.5)',
borderWidth: 2,
shadowBlur: 10,
shadowColor: '#00f2fc',
},
},
label: {
formatter: params => `${params.name}`,
formatter: params => {
return `${params.name}\n${params.value+"个"}`;
},
show: true,
position: 'insideRight',
textStyle: {
......@@ -164,29 +149,7 @@ export default {
}
},
data: newData,
},
{
type: 'effectScatter',
coordinateSystem: 'geo',
symbolSize: 7,
effectType: 'ripple',
legendHoverLink: false,
showEffectOn: 'render',
rippleEffect: {
period: 4,
scale: 2.5,
brushType: 'stroke',
},
zlevel: 1,
itemStyle: {
normal: {
color: '#99FBFE',
shadowBlur: 5,
shadowColor: '#fff',
},
},
data: convertData(seriesData),
},
}
],
};
// 重新选择区域
......
......@@ -22,9 +22,9 @@ export default {
async mapViews () {
try {
let { result: res } = await work.mapViews("A20");
res.filter((item) => {
res.map((item) => {
return (
this.cdata.push({ "name": item.areaName, "value": item.areaCode })
this.cdata.push({ "name": item.areaName, "value": item.ywtotal })
)
});
......
<template>
<Echart :options="options" id="centreLeft1Chart" :key="key" height="225px" width="80%"></Echart>
</template>
<script>
import Echart from '@/common/echart'
export default {
components: {
Echart,
},
data() {
return {
key:0
}
},
props: {
cdata: {
type: Object,
default: () => ({})
},
},
watch: {
cdata: {
handler (newData) {
console.log("newData",newData);
this.options = {
grid: {
right:"1%",
bottom:"4%"
},
color: [
"#37a2da",
"#32c5e9",
"#9fe6b8",
"#ffdb5c",
"#ff9f7f",
"#fb7293",
"#e7bcf3",
"#8378ea"
],
tooltip: {
trigger: "item",
formatter: "{a} <br/>{b} : {c} ({d}%)"
},
toolbox: {
show: true
},
calculable: true,
series: [
{
name: "业务量",
type: "pie",
radius: [40,100],
roseType: "area",
data: newData.seriesData
}
],
}
this.key++
},
immediate: true,
deep: true
}
}
};
</script>
<style lang="scss" scoped>
#centreLeft1Chart {
margin-bottom: 10px;
margin-left: 60px;
}
</style>
<template>
<div>
<Chart :cdata="cdata" />
</div>
</template>
<script>
import Chart from "./Chart";
import work from "@/api/work";
export default {
data () {
return {
cdata: {
seriesData: [],
},
};
},
components: {
Chart,
},
mounted () {
this.getdjywltotal();
},
methods: {
// 获取登记业务量玫瑰图数据
async getdjywltotal () {
try {
let p = {
DJLX: "",
QLLX: "",
XZQDM: "",
};
let res = await work.getdjywltotal(p);
console.log("res",res);
// 遍历修改数组键,作为echars图表的参数
res.result.map((item) => {
return (
this.cdata.seriesData.push({ "name": item.AREACODE, "value": item.ywtotal })
)
});
} catch (error) {
console.log(error);
}
},
},
};
</script>
<style lang="scss" scoped>
</style>
<template>
<Echart :options="options" id="centreLeft1Chart" height="200px" width="100%"></Echart>
<Echart :options="options" id="centreLeft1Chart" :key="key" height="225px" width="80%"></Echart>
</template>
<script>
import Echart from '@/common/echart'
......@@ -7,6 +7,11 @@ export default {
components: {
Echart,
},
data () {
return {
key: 0
}
},
props: {
cdata: {
type: Object,
......@@ -18,9 +23,8 @@ export default {
handler (newData) {
this.options = {
grid: {
// 让图表占满容器
top: 20,
right: 0,
right: "1%",
bottom: "4%"
},
color: [
"#37a2da",
......@@ -44,12 +48,14 @@ export default {
{
name: "业务量",
type: "pie",
radius: [0, 80],
radius: [0,100],
roseType: "area",
data: newData.seriesData
}
]
],
}
this.key++
},
immediate: true,
deep: true
......@@ -60,6 +66,7 @@ export default {
<style lang="scss" scoped>
#centreLeft1Chart {
margin-left: -20px;
margin-bottom: 10px;
margin-left: 60px;
}
</style>
......
<template>
<div>
<Chart :cdata="cdata" />
<el-carousel height="40px" indicator-position="none">
<el-carousel-item v-for="item in 4" :key="item">
<div class="rotograph">佛坪县</div>
</el-carousel-item>
</el-carousel>
</div>
</template>
......@@ -29,6 +24,7 @@ export default {
},
methods: {
// 获取登记业务量玫瑰图数据
async getdjywltotal () {
try {
let p = {
......@@ -37,15 +33,16 @@ export default {
XZQDM: "",
};
let res = await work.getdjywltotal(p);
console.log("res",res);
res.result.filter((item) => {
// 遍历修改数组键,作为echars图表的参数
res.result.map((item) => {
return (
this.cdata.seriesData.push({ "name": item.AREACODE, "value": item.ywtotal })
)
});
console.log("this.cdata.seriesData",this.cdata.seriesData);
} catch (error) {
this.$refs.msg.messageShow();
console.log(error);
}
......@@ -55,16 +52,5 @@ export default {
</script>
<style lang="scss" scoped>
.rotograph {
margin: auto;
width: 200px;
height: 30px;
background-color: rgb(6, 121, 167);
font-size: 20px;
line-height: 30px;
text-align: center;
border-radius: 6px;
font-weight: 600;
color: #02d9fd;
}
</style>
......
......@@ -5,10 +5,10 @@
<template>
<div class='result'>
<p>响应xml</p>
<el-input type="textarea" :rows="6" class="resulttext" placeholder="请输入内容" v-model="REPMSGXML">
<el-input type="textarea" :rows="6" class="resulttext" placeholder="响应xml" v-model="REPMSGXML">
</el-input>
<p>错误信息</p>
<el-input type="textarea" :rows="6" class="resulttext" placeholder="请输入内容" v-model="ERRORINFO">
<el-input type="textarea" :rows="6" class="resulttext" placeholder="错误信息" v-model="ERRORINFO">
</el-input>
</div>
</template>
......
......@@ -3,90 +3,87 @@
<el-dialog :close-on-click-modal="false" top="0" @close="closeDialog"
custom-class="dialogBox editDialogBox mainCenter" :visible.sync="dialogVisible" width="85%">
<div slot="title" class="dialog_title" ref="dialogTitle">
<b>{{ title || '标题' }}</b>
{{ title || '标题' }}
</div>
<div class="editDialogBox-box">
<el-tabs v-model="titleName" type="card" @tab-click="handleTitleTab">
<el-tab-pane label="数据模型" name="sjmx"></el-tab-pane>
<el-tab-pane v-if="visiableXml" label="xml报文" name="xml"></el-tab-pane>
<el-tab-pane v-if="visiableXml" label="响应结果" name="xyjg"></el-tab-pane>
</el-tabs>
<div v-if="titleName == 'sjmx'" class="sjmx">
<div class="dialog-from">
<div class="dialog-from" v-if="titleName == 'sjmx'">
<el-row>
<el-col :span="5">
<span>业务报文ID:</span>
<div>{{ dataReport.BizMsgId }}</div>
<p>{{ dataReport.BizMsgId }}</p>
</el-col>
<el-col :span="7">
<span>接入报文ID:</span>
<div>{{ dataReport.ASID }}</div>
<p>{{ dataReport.ASID }}</p>
</el-col>
<el-col :span="5">
<span>行政区划编码:</span>
<div>{{ dataReport.AreaCode }}</div>
<p>{{ dataReport.AreaCode }}</p>
</el-col>
<el-col :span="7">
<span>上次不动产单元号:</span>
<div>{{ dataReport.PreEstateNum }}</div>
<p>{{ dataReport.PreEstateNum }}</p>
</el-col>
</el-row>
<el-row>
<el-col :span="5">
<span>业务编码:</span>
<div>{{ dataReport.RecType }}</div>
<p>{{ dataReport.RecType }}</p>
</el-col>
<el-col :span="7">
<span>权利类型:</span>
<div>{{ dataReport.RightType }}</div>
<p>{{ dataReport.RightType }}</p>
</el-col>
<el-col :span="5">
<span>登记类型:</span>
<div>{{ dataReport.RegType }}</div>
<p>{{ dataReport.RegType }}</p>
</el-col>
<el-col :span="7">
<span>不动产权证书数量:</span>
<div>{{ dataReport.CertCount }}</div>
<p>{{ dataReport.CertCount }}</p>
</el-col>
</el-row>
<el-row>
<el-col :span="5">
<span>创建时间:</span>
<div>{{ dataReport.createDate }}</div>
<p>{{ dataReport.createDate }}</p>
</el-col>
<el-col :span="7">
<span>业务流水号:</span>
<div>{{ dataReport.RecFlowID }}</div>
<p>{{ dataReport.RecFlowID }}</p>
</el-col>
<el-col :span="5">
<span>登记机构:</span>
<div>{{ dataReport.RegOrgID }}</div>
<p>{{ dataReport.RegOrgID }}</p>
</el-col>
<el-col :span="7">
<span>证明数量:</span>
<div>{{ dataReport.ProofCount }}</div>
<p>{{ dataReport.ProofCount }}</p>
</el-col>
</el-row>
<el-row>
<el-col :span="5">
<span>宗地/宗海代码:</span>
<div>{{ dataReport.ParcelID }}</div>
<p>{{ dataReport.ParcelID }}</p>
</el-col>
<el-col :span="7">
<span>不动产单元号:</span>
<div>{{ dataReport.EstateNum }}</div>
<p>{{ dataReport.EstateNum }}</p>
</el-col>
<el-col :span="10">
<el-col :span="11">
<span>上次不动产权证号/不动产登记证明:</span>
<div>{{ dataReport.PreCertID }}</div>
<p>{{ dataReport.PreCertID }}</p>
</el-col>
</el-row>
<!-- <el-row>
<el-col :span="24">
<span>数字签名:</span>
<div>{{ dataReport.digitalsign }}</div>
</el-col>
</el-row> -->
</div>
</div>
<div class="editDialogBox-box">
<div v-if="titleName == 'sjmx'" class="sjmx">
<el-tabs v-model="activeName" ref="elTabs" type="card" @tab-click="changeList">
<el-tab-pane :name="item.soleurl" v-for="item in headerList" :key="item.soleurl">
<div slot="label" class="tab-pane-item">
......@@ -104,6 +101,7 @@
<Xyjg :form-data='dataReport'></Xyjg>
</div>
<JsonEditor :resultInfo="resultInfo" v-if="titleName == 'xml'" />
</div>
</el-dialog>
</template>
......@@ -281,12 +279,16 @@ export default {
border: 1px solid #224C7C !important;
margin: 0 0 10px 0 !important;
width: 100% !important;
color: #dadde3 !important;
background: transparent !important;
}
/deep/.el-input__inner {
border: 1px solid #224C7C !important;
margin: 0 !important;
width: 100% !important;
color: #dadde3 !important;
background: transparent !important;
}
}
......@@ -296,7 +298,6 @@ export default {
}
/deep/ .el-tabs {
margin: 0 15px 0 15px;
color: #CEF8FF;
}
......@@ -342,6 +343,7 @@ export default {
/deep/.el-tabs__header {
border: none;
margin-bottom: 0;
}
/deep/.el-tabs__item.is-top:not(:last-child) {
......@@ -367,6 +369,7 @@ export default {
.tab-pane-item {
line-height: 20px;
color: #02D9FD;
p {
text-align: center;
......@@ -389,11 +392,14 @@ export default {
height: 825px !important;
.dialog-from {
padding: 15px;
background: #08346F;
padding: 13px;
border-radius: 2px;
box-sizing: border-box;
margin: -3px 15px 15px 15px;
.el-row {
display: flex;
flex-wrap: nowrap;
}
.el-col {
line-height: 18px;
......@@ -401,19 +407,22 @@ export default {
align-items: center;
margin-bottom: 3px;
color: #B5D6DC;
border-radius: 2px;
border: 1px solid #224C7C;
margin: 5px;
span {
display: inline-block;
padding: 3px;
border-radius: 3px;
overflow: hidden;
min-width: 140px;
text-align: right;
margin-right: 5px;
width: 100px;
white-space: nowrap;
text-align: left;
color: #02D9FD;
}
div {
p {
flex: 1;
width: 100%;
padding-left: 5px;
......@@ -421,6 +430,7 @@ export default {
color: #c0c4cc;
cursor: not-allowed;
margin-right: 5px;
text-align: right;
}
}
}
......@@ -428,17 +438,17 @@ export default {
.dialog_title {
display: flex;
position: relative;
top: -2px;
b {
flex: 1;
width: 100%;
@flex-center();
}
font-size: 24px;
top: -11px;
width: 38%;
height: 40px;
margin-left: 28px;
justify-content: center;
}
.el-dialog__header {
height: 50px;
display: flex;
margin-bottom: 15px;
}
.dialog_footer {
......
......@@ -28,7 +28,7 @@
</i>
</el-upload>
<div>
<el-input v-model="iconName" class="icon-name" placeholder="请输入图标代码"></el-input>
<el-input v-model="iconName" class="icon-name" placeholder="图标代码"></el-input>
</div>
<el-button class="confirm" type="primary" @click="changeIconName">确定</el-button>
</el-tab-pane>
......
<template>
<el-input type="textarea" :rows="6" placeholder="请输入内容" v-model="resultInfo">
<el-input type="textarea" :rows="6" placeholder="配置参数" v-model="resultInfo">
</el-input>
</template>
<script>
......
<template>
<div>
<i class="icon-tubiao-242 iconfont" :title="title" @click="openDialog" />
<el-dialog
:key="key"
:title="title"
:inner-dialog="true"
:visible.sync="dialogVisible"
width="600px"
:close-on-click-modal="false"
append-to-body
@cancel="cancel"
>
<vue-json-editor
id="minejson"
v-model="resultInfo"
:mode="'code'"
lang="zh"
@json-change="onJsonChange"
@json-save="onJsonSave"
@has-error="onError"
/>
<el-tooltip
content="全屏缩放"
effect="dark"
placement="bottom"
fullscreen
class="fullScreen"
>
<el-dialog :key="key" :title="title" :inner-dialog="true" :visible.sync="dialogVisible" width="600px"
:close-on-click-modal="false" append-to-body @cancel="cancel">
<vue-json-editor id="minejson" v-model="resultInfo" :mode="'code'" lang="zh" @json-change="onJsonChange"
@json-save="onJsonSave" @has-error="onError" />
<el-tooltip content="全屏缩放" effect="dark" placement="bottom" fullscreen class="fullScreen">
<i class="el-icon-full-screen" @click="enLarge" />
</el-tooltip>
<template slot="footer">
<div class="dialog-footer flex flex-pack-center">
<el-button
type="primary"
class="confirmBtn"
@click="onJsonSave"
>保存</el-button>
<el-button
type="primary"
class="cancelBtn"
@click="cancel"
>关闭</el-button>
<el-button type="primary" class="confirmBtn" @click="onJsonSave">保存</el-button>
<el-button type="primary" class="cancelBtn" @click="cancel">关闭</el-button>
</div>
</template>
</el-dialog>
......@@ -62,7 +33,7 @@ export default {
default: ''
}
},
data() {
data () {
return {
activeNames: [],
resultInfo: {},
......@@ -75,7 +46,7 @@ export default {
},
watch: {
resultInfos: {
handler: function(val) {
handler: function (val) {
++this.key
this.resultInfo =
this.resultInfos === '' ? {} : JSON.parse(this.resultInfos)
......@@ -86,17 +57,17 @@ export default {
}
},
mounted() {
mounted () {
this.resultInfo =
this.resultInfos === '' ? {} : JSON.parse(this.resultInfos)
},
methods: {
onJsonChange(value) {
onJsonChange (value) {
// 只有在格式正确的时候进入此事件
this.hasJsonFlag = true
},
onJsonSave() {
onJsonSave () {
const value = this.resultInfo
console.log(this.resultInfo, 'resultInfo')
if (this.hasJsonFlag === false) {
......@@ -109,19 +80,19 @@ export default {
return true
}
},
onError(value) {
onError (value) {
this.hasJsonFlag = false
},
openDialog() {
openDialog () {
this.dialogVisible = true
},
cancel() {
cancel () {
console.log(this.tmpResultInfo, 'tmpResultInfo')
this.resultInfo = this.tmpResultInfo
this.dialogVisible = false
},
// 放大
enLarge() {
enLarge () {
const fullarea = document.getElementById('minejson')
if (fullarea.requestFullscreen) {
fullarea.requestFullscreen()
......@@ -146,9 +117,11 @@ export default {
top: 1px;
color: #349af3;
}
::v-deep .jsoneditor-vue {
height: 100%;
}
.fullScreen {
position: absolute;
right: 5%;
......@@ -156,22 +129,28 @@ export default {
cursor: pointer;
color: #fff;
}
::v-deep .jsoneditor-modes {
display: none !important;
}
.jsoneditor-poweredBy {
display: none !important;
}
.jsoneditor-menu {
background-color: #9c9e9f !important;
border-bottom: 1px solid #9c9e9f !important;
}
.jsoneditor {
border: 1px solid #9c9e9f !important;
}
.el-collapse {
border: 0;
}
.el-collapse-item__header {
height: 44px;
}
......

33.8 KB | W: | H:

37.1 KB | W: | H:

  • 2-up
  • Swipe
  • Onion skin

13.3 KB | W: | H:

24.9 KB | W: | H:

  • 2-up
  • Swipe
  • Onion skin
......@@ -66,13 +66,24 @@ export default {
.sidebarLeft {
position: relative;
top: 13px;
left: 10px;
width: 30%;
}
/deep/.el-menu {
display: flex;
justify-content: space-between;
}
/deep/.el-menu-item {
flex: 1;
width: 100%;
}
.sidebarRight {
position: relative;
left: 10px;
top: 13px;
width: 30%;
padding-left: 20px;
}
// 导航选中背景色
......
<template>
<el-menu router :default-active="activeMenu" mode="horizontal" menu-trigger="click">
<el-menu router :default-active="activeMenu" mode="horizontal">
<!-- 权限菜单 -->
<sidebar-item v-for="route in permission_routes.slice(1, 4)" :key="route.path" :item="route"
:base-path="route.path" />
......
......@@ -38,7 +38,21 @@ let mixin = {
},
// 详情
handleEdit (row) {
this.title = row.rectypeName
let Title = ''
this.dicData['A21'].map(item => {
if (item.DCODE == row.DJLX || item.DCODE == row.djlx) {
Title = item.DNAME
return
}
})
this.dicData['A8'].map(item => {
if (item.DCODE == row.QLLX || item.DCODE == row.qllx) {
Title += '-' + item.DNAME
return
}
})
this.title = Title
this.$refs.editLog.isShow(row);
},
// // 重置表单
......
......@@ -41,22 +41,7 @@ export const constantRoutes = [
* the routes that need to be dynamically loaded based on user roles
*/
export const asyncRoutes = [
// 监管首页
{
path: '/',
component: Layout,
redirect: '/jgHome',
meta: { title: '首页' },
children: [
{
path: 'jgHome',
component: () => import('@/views/home/index'),
name: 'jgHome',
meta: { title: '首页', icon: 'workbench', affix: true }
}
]
},
// // 接收报文查询
// 接收报文查询
{
path: '/jsbwcx',
component: Layout,
......@@ -76,13 +61,13 @@ export const asyncRoutes = [
children: [
{
path: 'sbbwcx',
component: () => import('@/views/sbbwcx/index'),
component: () => import('@/views/sthj/sbbwcx/index'),
name: 'sbbwcx',
meta: { title: '上报报文', icon: 'zsgl' }
},
{
path: 'dbrzcx',
component: () => import('@/views/dbrzcx/index'),
component: () => import('@/views/sthj/dbrzcx/index'),
name: 'dbrzcx',
meta: { title: '登簿日志', icon: 'zsgl' }
}
......@@ -108,71 +93,6 @@ export const asyncRoutes = [
}
]
},
// 接入区域管理
{
path: '/jrqygl',
component: Layout,
children: [
{
path: 'index',
component: () => import('@/views/jrqygl/index'),
name: 'jrqygl',
meta: { title: '接入区域管理', icon: 'zhcx' }
}
]
},
// 接收规则管理
{
path: '/jsgzgl',
component: Layout,
children: [
{
path: 'index',
component: () => import('@/views/jsgzgl/index'),
name: 'jsgzgl',
meta: { title: '接收规则管理', icon: 'zhcx' }
}
]
},
// 接收报文重新入库
{
path: '/jsbwcxrk',
component: Layout,
children: [
{
path: 'index',
component: () => import('@/views/jsbwcxrk/index'),
name: 'jsbwcxrk',
meta: { title: '接收报文重新入库', icon: 'zhcx' }
}
]
},
// 报文重新入库日志
{
path: '/bwcxrkrz',
component: Layout,
children: [
{
path: 'index',
component: () => import('@/views/bwcxrkrz/index'),
name: 'bwcxrkrz',
meta: { title: '报文重新入库日志', icon: 'zhcx' }
}
]
},
// 中心日志
{
path: '/zxrz',
component: Layout,
children: [
{
path: 'index',
component: () => import('@/views/zxrz/index'),
name: 'zxrz',
meta: { title: '中心日志', icon: 'zhcx' }
}
]
},
// 接入业务信息-不动产数据
{
path: '/busineInfo',
......@@ -184,91 +104,91 @@ export const asyncRoutes = [
children: [
{
path: 'tdsyq',
component: () => import('@/views/business-info/tdsyq/index'),
component: () => import('@/views/bdcsj/tdsyq/index'),
name: 'tdsyq',
meta: { title: '土地所有权' }
},
{
path: 'jsydzjdsyq',
component: () => import('@/views/business-info/jsydzjdsyq/index'),
component: () => import('@/views/bdcsj/jsydzjdsyq/index'),
name: 'jsydzjdsyq',
meta: { title: '建设用地、宅基地使用权' }
},
{
path: 'fdcqdz',
component: () => import('@/views/business-info/fdcqdz/index'),
component: () => import('@/views/bdcsj/fdcqdz/index'),
name: 'fdcqdz',
meta: { title: '房地产权(项目内多幢房屋)' }
},
{
path: 'fdcqyz',
component: () => import('@/views/business-info/fdcqyz/index'),
component: () => import('@/views/bdcsj/fdcqyz/index'),
name: 'fdcqyz',
meta: { title: '房地产权(独幢、层、套、间、房屋)' }
},
{
path: 'fdcqqfsyq',
component: () => import('@/views/business-info/fdcqqfsyq/index'),
component: () => import('@/views/bdcsj/fdcqqfsyq/index'),
name: 'fdcqqfsyq',
meta: { title: '建筑物区分所有权业主共有部分' }
},
{
path: 'hysyq',
component: () => import('@/views/business-info/hysyq/index'),
component: () => import('@/views/bdcsj/hysyq/index'),
name: 'hysyq',
meta: { title: '海域(含无居民海岛)使用权' }
},
{
path: 'gzwsyq',
component: () => import('@/views/business-info/gzwsyq/index'),
component: () => import('@/views/bdcsj/gzwsyq/index'),
name: 'gzwsyq',
meta: { title: '构(建)筑物所有权' }
},
{
path: 'nydsyq',
component: () => import('@/views/business-info/nydsyq/index'),
component: () => import('@/views/bdcsj/nydsyq/index'),
name: 'nydsyq',
meta: { title: '农用地使用权(非林地)' }
},
{
path: 'lq',
component: () => import('@/views/business-info/lq/index'),
component: () => import('@/views/bdcsj/lq/index'),
name: 'lq',
meta: { title: '林权' }
},
{
path: 'zxdj',
component: () => import('@/views/business-info/zxdj/index'),
component: () => import('@/views/bdcsj/zxdj/index'),
name: 'zxdj',
meta: { title: '注销登记' }
},
{
path: 'yydj',
component: () => import('@/views/business-info/yydj/index'),
component: () => import('@/views/bdcsj/yydj/index'),
name: 'yydj',
meta: { title: '异议登记' }
},
{
path: 'ygdj',
component: () => import('@/views/business-info/ygdj/index'),
component: () => import('@/views/bdcsj/ygdj/index'),
name: 'ygdj',
meta: { title: '预告登记' }
},
{
path: 'Cfdj',
component: () => import('@/views/business-info/Cfdj/index'),
component: () => import('@/views/bdcsj/cfdj/index'),
name: 'Cfdj',
meta: { title: '查封登记' }
},
{
path: 'dyaq',
component: () => import('@/views/business-info/dyaq/index'),
component: () => import('@/views/bdcsj/dyaq/index'),
name: 'dyaq',
meta: { title: '抵押权登记' }
},
{
path: 'dyiq',
component: () => import('@/views/business-info/dyiq/index'),
component: () => import('@/views/bdcsj/dyiq/index'),
name: 'dyiq',
meta: { title: '地役权登记' }
}
......
......@@ -7,11 +7,18 @@
display: flex;
position: relative;
top: -2px;
b {
@include flex-center;
flex: 1;
width: 100%;
font-weight: 200;
display: inline-block;
position: relative;
font-size: 24px;
top: -11px;
width: 38%;
height: 40px;
margin-left: 28px;
// @include flex-center;
display: flex;
justify-content: center;
}
}
......@@ -28,13 +35,21 @@
}
.dialog_footer {
margin-top: 8px;
margin-bottom: 8px;
@include flex-center;
}
.dialogBox-content {
height: auto
}
.editDialogBox-box {
background: #031A46;
box-shadow: inset 0px 0px 12px 0px #02D9FD;
border-radius: 2px;
border: 1px solid #6BC1FC;
margin: 0 18px 15px 18px;
}
}
.dialog_title {
......@@ -57,13 +72,21 @@
padding-bottom: 0;
}
.el-dialog__headerbtn .el-dialog__close {
color: #FFFFFF !important;
position: relative;
top: -2px;
right: 15px
.el-dialog__headerbtn {
width: 42px;
height: 20px;
background: url("~@/image/closebg.png") no-repeat;
background-size: 100% 100%;
right: 40px;
top: 33px;
&:hover{
box-shadow: inset 0px 0px 12px 0px #02D9FD;
}
}
.el-dialog__close {
font-size: 0;
}
.el-form-item {
@include flex;
......@@ -88,8 +111,9 @@
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
// 展开收起按钮位置
.el-input__suffix{
.el-input__suffix {
right: 10px;
}
}
}
\ No newline at end of file
......
......@@ -66,7 +66,7 @@
// refine element ui upload
.el-input.is-disabled .el-input__inner {
color: #FFFFFF !important;
// background-color: transparent !important;
background-color: transparent !important;
border: 1px solid #224C7C !important;
}
......@@ -180,13 +180,13 @@ table th {
border-bottom: none !important;
}
.el-table__body {
-webkit-border-vertical-spacing: 6px !important; // 垂直间距
}
// .el-table__body {
// -webkit-border-vertical-spacing: 6px !important; // 垂直间距
// }
table td {
box-sizing: border-box;
border-bottom: none !important;
border-bottom: 1px solid #458ACF !important;
}
//去掉最下面的那一条线
......@@ -283,6 +283,24 @@ table td {
// 时间选择框样式
.el-date-picker {
background: url("~@/image/slbg.png") no-repeat;
background-size: 100% 100%;
padding-top: 13px;
padding-bottom: 13px;
border: none;
margin-top: 5px !important;
table {
background: url("~@/image/rqjx.png") no-repeat;
background-size: 100% 100%;
padding: 8px;
}
table td {
box-sizing: border-box;
border-bottom: 0px solid #074487 !important;
}
.el-input__inner {
background-color: #031a46;
}
......@@ -292,6 +310,7 @@ table td {
}
.el-picker-panel__footer {
display: none;
background-color: #031a46;
}
......@@ -299,18 +318,27 @@ table td {
background-color: #074487;
}
background-color: #031a46;
.el-date-picker__header {
margin-bottom: 0px;
}
.el-date-picker__header-label {
color: #A6CFD6;
}
.el-picker-panel__content {
background-color: #074487;
padding-top: 0px;
margin-top: 0px;
.disabled {
background-color: #074487;
div {
span {
color: rgba(172, 239, 250, .5)
}
}
}
}
......@@ -324,7 +352,7 @@ table td {
}
.el-date-table td span {
color: #A6CFD6;
color: #DBFAFF
}
.el-date-table td.current:not(.disabled) span {
......@@ -361,10 +389,6 @@ table td {
background-color: #031a46;
}
.el-picker-panel__footer {
background-color: #031a46;
}
.el-time-panel {
background-color: #074487 !important;
color: #E3F1FF;
......@@ -419,7 +443,7 @@ table td {
[class^="el-icon-"],
[class*=" el-icon-"] {
display: none;
// display: none;
}
.el-range-separator {
......@@ -444,7 +468,7 @@ table td {
}
.el-select-dropdown {
top: 203px !important;
margin-top: 5px !important;
}
.el-menu--horizontal .el-menu--popup .el-menu-item:not(.is-disabled):hover,
......@@ -460,5 +484,4 @@ table td {
.el-select-dropdown__item.hover,
.el-select-dropdown__item:hover {
background-color: transparent !important;
;
}
\ No newline at end of file
......
......@@ -5,16 +5,16 @@
background-color: rgba(0, 0, 0, 0);
.el-table__header-wrapper {
border-right: 1px solid #103E99;
border-right: none;
}
.el-table__row .cell {
color: #DBFAFF !important;
color: #CEF8FF !important;
}
.el-table__row {
background: #0F56A3 !important;
background: rgba(0, 0, 0, 0) !important;
}
thead {
......
import { Message } from "element-ui";
export function removeTreeListItem (treeList, dictId, idName = 'bsmDict') {
if (!treeList || !treeList.length) {
return
}
for (let i = 0; i < treeList.length; i++) {
if (treeList[i][idName] === dictId) {
treeList.splice(i, 1);
break;
}
removeTreeListItem(treeList[i].children, dictId)
}
}
// 创造id
export function getUuid (len, radix) {
var chars = "0123456789abcdefghijklmnopqrstuvwxyz".split(
""
);
var uuid = [],
i;
radix = radix || chars.length;
if (len) {
for (i = 0; i < len; i++) uuid[i] = chars[0 | (Math.random() * radix)];
} else {
var r;
uuid[8] = uuid[13] = uuid[18] = uuid[23] = "-";
uuid[14] = "4";
for (i = 0; i < 36; i++) {
if (!uuid[i]) {
r = 0 | (Math.random() * 16);
uuid[i] = chars[i == 19 ? (r & 0x3) | 0x8 : r];
}
}
}
return uuid.join("");
}
export function judgeSort (arr) {
if (arr.length) {
for (let i in arr) {
arr[i]["isTop"] = false;
arr[i]["isBottom"] = false;
arr[i] == arr[0] && (arr[i].isTop = true);
arr[i] == arr[arr.length - 1] && (arr[i].isBottom = true);
arr[i].children && arr[i].children.length && judgeSort(arr[i].children)
}
}
return arr
}
// 上下移动
export function realMove (bsmDict, operate, data) {
function changeSort (arr, bsmDict) {
if (arr.length) {
let flag = false;
for (let i in arr) {
if (arr[i].bsmDict == bsmDict) {
if (operate === "UP") {
arr[i] = arr.splice(i - 1, 1, arr[i])[0];
} else if (operate === "DOWN") {
let temp = arr.splice(i - 0 + 1, 1, arr[i])
arr[i] = temp[0];
}
flag = true;
break;
}
if (!flag && arr[i].children && arr[i].children.length) {
arr[i].children = changeSort(arr[i].children, bsmDict);
}
}
}
return arr;
}
data = judgeSort(changeSort(data, bsmDict));
}
// 获取所有父节点
export function findParents (treeData, bsmDict) {
if (treeData.length == 0) return
for (let i = 0; i < treeData.length; i++) {
if (treeData[i].bsmDict == bsmDict) {
return []
} else {
if (treeData[i].children) {
let res = findParents(treeData[i].children, bsmDict)
if (res !== undefined) {
return res.concat(treeData[i].bsmDict)
}
}
}
}
}
// 上移下移
export function upward (index, data) {
if (index > 0) {
let upData = data[index - 1];
data.splice(index - 1, 1);
data.splice(index, 0, upData);
} else {
Message({
message: '已经是第一条,上移失败'
});
}
}
export function down (index, data) {
if ((index + 1) == data.length) {
Message({
message: '已经是最后一条,下移失败'
});
} else {
let downData = data[index + 1];
data.splice(index + 1, 1);
data.splice(index, 0, downData);
}
}
......@@ -52,7 +52,7 @@ export function realMove (bsmDict, operate, data) {
if (arr.length) {
let flag = false;
for (let i in arr) {
if (arr[i].bsmDict == bsmDict) {
if (arr[i].dictid == bsmDict) {
if (operate === "UP") {
arr[i] = arr.splice(i - 1, 1, arr[i])[0];
} else if (operate === "DOWN") {
......@@ -110,3 +110,32 @@ export function down (index, data) {
data.splice(index, 0, downData);
}
}
export function timeFormat (date, end) {
if (!date || typeof (date) === "string") {
this.error("参数异常,请检查...");
}
var y = date.getFullYear(); //年
var m = date.getMonth() + 1; //月
var d = date.getDate(); //日
if (end) {
return y + "/" + m + "/" + d + ' 23:59:59';
} else {
return y + "/" + m + "/" + d + ' 00:00:00';
}
}
export function getFirstDayOfSeason (d) {
let date = d || new Date()
var month = date.getMonth();
if (month < 3) {
date.setMonth(0);
} else if (2 < month && month < 6) {
date.setMonth(3);
} else if (5 < month && month < 9) {
date.setMonth(6);
} else if (8 < month && month < 11) {
date.setMonth(9);
}
date.setDate(1);
return timeFormat(date);
}
\ No newline at end of file
......
......@@ -7,6 +7,7 @@ class data extends filter {
return [
{
label: "行政区",
width: 80,
render: (h, scope) => {
return (
<div>
......@@ -17,6 +18,7 @@ class data extends filter {
},
{
label: "权属状态",
width: 80,
render: (h, scope) => {
return (
<div>
......
......@@ -2,6 +2,9 @@
<div class="Cfdj from-clues">
<div class="from-clues-header">
<el-form ref="form" :model="form" label-width="130px">
<el-form-item>
<Breadcrumb />
</el-form-item>
<el-row>
<el-col :span="5">
<el-form-item label="行政区" label-width="80px">
......@@ -77,7 +80,7 @@
</lb-table>
</div>
<!-- 编辑 -->
<dataDetails ref="editLog" :title="title" :tabsActiveName="'qlfQlCfdj'" />
<dataDetails ref="editLog" title="查封登记" :tabsActiveName="'qlfQlCfdj'" />
</div>
</template>
<script>
......@@ -112,7 +115,7 @@ export default {
}].concat(data.columns()).concat([
{
label: "操作",
width: 170,
width: 80,
render: (h, scope) => {
return (
<div>
......
......@@ -7,6 +7,7 @@ class data extends filter {
return [
{
label: "行政区",
width: 80,
render: (h, scope) => {
return (
<div>
......@@ -17,6 +18,7 @@ class data extends filter {
},
{
label: "权属状态",
width: 80,
render: (h, scope) => {
return (
<div>
......@@ -31,11 +33,13 @@ class data extends filter {
},
{
label: "不动产单元号",
prop: "bdcdyh"
prop: "bdcdyh",
width: 150,
},
{
label: "不动产权证号",
prop: "bdcdjzmh"
prop: "bdcdjzmh",
width: 150,
},
{
label: "抵押类型",
......@@ -63,7 +67,8 @@ class data extends filter {
},
{
label: "被担保主债权数额",
prop: "bdbzzqse"
prop: "bdbzzqse",
width: 135,
},
{
label: "最高债权额",
......@@ -71,11 +76,13 @@ class data extends filter {
},
{
label: "登记时间",
prop: "djsj"
prop: "djsj",
width: 140,
},
{
label: "登记机构",
prop: "djjg"
prop: "djjg",
width: 140,
}
]
}
......
......@@ -2,6 +2,9 @@
<div class="dyaq from-clues">
<div class="from-clues-header">
<el-form ref="form" :model="form" label-width="120px">
<el-form-item>
<Breadcrumb />
</el-form-item>
<el-row>
<el-col :span="5">
<el-form-item label="行政区" label-width="80px">
......@@ -72,7 +75,7 @@
</lb-table>
</div>
<!-- 编辑 -->
<dataDetails ref="editLog" :title="title" :tabsActiveName="'qlfQlDyaq'" />
<dataDetails ref="editLog" title="抵押权登记" :tabsActiveName="'qlfQlDyaq'" />
</div>
</template>
......@@ -110,7 +113,7 @@ export default {
}].concat(data.columns()).concat([
{
label: "操作",
width: 170,
width: 80,
render: (h, scope) => {
return (
<div>
......
......@@ -2,6 +2,9 @@
<div class="from-clues">
<div class="from-clues-header">
<el-form ref="form" :model="form" label-width="150px">
<el-form-item>
<Breadcrumb />
</el-form-item>
<el-row>
<el-col :span="5">
<el-form-item label="行政区" label-width="80px">
......@@ -73,7 +76,7 @@
</lb-table>
</div>
<!-- 编辑 -->
<dataDetails ref="editLog" :title="title" :tabsActiveName="'qlfQlDyiq'" />
<dataDetails ref="editLog" title="地役权登记" :tabsActiveName="'qlfQlDyiq'" />
</div>
</template>
......
......@@ -7,7 +7,7 @@ class data extends filter {
return [
{
label: "行政区",
width: 150,
width: 80,
render: (h, scope) => {
return (
<div>
......@@ -18,7 +18,7 @@ class data extends filter {
},
{
label: "权属状态",
width: 100,
width: 80,
render: (h, scope) => {
return (
<div>
......@@ -29,8 +29,7 @@ class data extends filter {
},
{
label: "业务号",
prop: "ywh",
width: 150
prop: "ywh"
},
{
label: "不动产单元号",
......@@ -42,7 +41,8 @@ class data extends filter {
},
{
label: "权利人",
prop: "qlrmc"
prop: "qlrmc",
width: 150
},
{
label: "用途",
......@@ -50,6 +50,7 @@ class data extends filter {
},
{
label: "权利类型",
width: 150,
render: (h, scope) => {
return (
<div>
......
......@@ -2,6 +2,9 @@
<div class="fdcqdz from-clues">
<div class="from-clues-header">
<el-form ref="form" :model="form" label-width="120px">
<el-form-item>
<Breadcrumb />
</el-form-item>
<el-row>
<el-col :span="6">
<el-form-item label="行政区">
......@@ -34,7 +37,7 @@
<el-col :span="6">
<el-form-item label="登记类型">
<el-select v-model="form.DJLX" clearable class="width100" ref="selectlandDJ"
@visible-change="isShowSelectOptions" placeholder="请选择登记类型">
@visible-change="isShowSelectOptions" placeholder="登记类型">
<el-option v-for="item in dicData['A21']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
......@@ -63,7 +66,7 @@
:data="tableData.data">
</lb-table>
</div>
<dataDetails ref="editLog" :title="title" :tabsActiveName="'qltFwFdcqDz'"/>
<dataDetails ref="editLog" :title="title" :tabsActiveName="'qltFwFdcqDz'" />
</div>
</template>
......@@ -101,7 +104,7 @@ export default {
}].concat(data.columns()).concat([
{
label: "操作",
width: 170,
width: 90,
render: (h, scope) => {
return (
<div>
......
......@@ -2,6 +2,9 @@
<div class="fdcqqfsyq from-clues">
<div class="from-clues-header">
<el-form ref="form" :model="form" label-width="80px">
<el-form-item>
<Breadcrumb />
</el-form-item>
<el-row>
<el-col :span="5">
<el-form-item label="业务号">
......@@ -11,7 +14,7 @@
<el-col :span="5">
<el-form-item label="权利类型">
<el-select v-model="form.QLLX" ref="selectshareQL" @visible-change="isShowSelectOptions" clearable
placeholder="请选择权利类型">
placeholder="权利类型">
<el-option v-for="item in dicData['A8']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
......@@ -69,7 +72,7 @@ export default {
}].concat(data.columns()).concat([
{
label: "操作",
width: 170,
width: 80,
render: (h, scope) => {
return (
<div>
......
......@@ -7,7 +7,7 @@ class data extends filter {
return [
{
label: "行政区",
width: 150,
width: 80,
render: (h, scope) => {
return (
<div>
......@@ -18,7 +18,7 @@ class data extends filter {
},
{
label: "权属状态",
width: 100,
width: 80,
render: (h, scope) => {
return (
<div>
......@@ -30,19 +30,21 @@ class data extends filter {
{
label: "业务号",
prop: "ywh",
width: 150
},
{
label: "不动产单元号",
prop: "bdcdyh"
prop: "bdcdyh",
width: 150
},
{
label: "不动产权证号",
prop: "bdcqzh"
prop: "bdcqzh",
width: 150
},
{
label: "权利人",
prop: "qlrmc"
prop: "qlrmc",
width: 150
},
{
label: "用途",
......
......@@ -2,6 +2,9 @@
<div class="fdcqyz from-clues">
<div class="from-clues-header">
<el-form ref="form" :model="form" label-width="120px">
<el-form-item>
<Breadcrumb />
</el-form-item>
<el-row>
<el-col :span="6">
<el-form-item label="行政区">
......@@ -34,7 +37,7 @@
<el-col :span="6">
<el-form-item label="登记类型">
<el-select v-model="form.DJLX" clearable class="width100" ref="selectlandDJ"
@visible-change="isShowSelectOptions" placeholder="请选择登记类型">
@visible-change="isShowSelectOptions" placeholder="登记类型">
<el-option v-for="item in dicData['A21']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
......@@ -63,7 +66,7 @@
:data="tableData.data">
</lb-table>
</div>
<dataDetails ref="editLog" :title="title" :tabsActiveName="'qltFwFdcqYz'"/>
<dataDetails ref="editLog" :title="title" :tabsActiveName="'qltFwFdcqYz'" />
</div>
</template>
......@@ -101,7 +104,7 @@ export default {
}].concat(data.columns()).concat([
{
label: "操作",
width: 170,
width: 80,
render: (h, scope) => {
return (
<div>
......
......@@ -2,6 +2,9 @@
<div class="gzwsyq from-clues">
<div class="from-clues-header">
<el-form ref="form" :model="form" label-width="105px">
<el-form-item>
<Breadcrumb />
</el-form-item>
<el-row>
<el-col :span="6">
<el-form-item label="行政区">
......@@ -21,17 +24,17 @@
</el-col>
<el-col :span="6">
<el-form-item label="坐落">
<el-input v-model="form.ZL" placeholder="请输入坐落"></el-input>
<el-input v-model="form.ZL" placeholder="坐落"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="不动产权证号" label-width="105px">
<el-input v-model="form.BDCQZH" placeholder="请输入不动产权证号"></el-input>
<el-input v-model="form.BDCQZH" placeholder="不动产权证号"></el-input>
</el-form-item>
</el-col>
<el-col :span="6" class="mt-10">
<el-form-item label="权利人">
<el-input v-model="form.QLR" placeholder="请输入权利人"></el-input>
<el-input v-model="form.QLR" placeholder="权利人"></el-input>
</el-form-item>
</el-col>
<el-col :span="6" class="mt-10">
......@@ -44,7 +47,7 @@
</el-col>
<el-col :span="6" class="mt-10">
<el-form-item label="建筑名称">
<el-input v-model="form.JZWMC" placeholder="请输入建筑名称"></el-input>
<el-input v-model="form.JZWMC" placeholder="建筑名称"></el-input>
</el-form-item>
</el-col>
<el-col :span="6" class="btnColRight mt-10">
......
......@@ -2,6 +2,9 @@
<div class="hysyq from-clues">
<div class="from-clues-header">
<el-form ref="form" :model="form" label-width="105px">
<el-form-item>
<Breadcrumb />
</el-form-item>
<el-row>
<el-col :span="6">
<el-form-item label="行政区">
......@@ -21,17 +24,17 @@
</el-col>
<el-col :span="6">
<el-form-item label="坐落">
<el-input v-model="form.ZL" placeholder="请输入坐落"></el-input>
<el-input v-model="form.ZL" placeholder="坐落"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="不动产权证号" label-width="105px">
<el-input v-model="form.BDCQZH" placeholder="请输入不动产权证号"></el-input>
<el-input v-model="form.BDCQZH" placeholder="不动产权证号"></el-input>
</el-form-item>
</el-col>
<el-col :span="6" class="mt-10">
<el-form-item label="权利人">
<el-input v-model="form.QLR" placeholder="请输入权利人"></el-input>
<el-input v-model="form.QLR" placeholder="权利人"></el-input>
</el-form-item>
</el-col>
<el-col :span="6" class="mt-10">
......@@ -44,7 +47,7 @@
</el-col>
<el-col :span="6" class="mt-10">
<el-form-item label="海岛名称">
<el-input v-model="form.HDMC" placeholder="请输入海岛名称"></el-input>
<el-input v-model="form.HDMC" placeholder="海岛名称"></el-input>
</el-form-item>
</el-col>
<el-col :span="6" class="btnColRight mt-10">
......
......@@ -29,7 +29,7 @@ class data extends filter {
},
{
label: "权利类型",
width: 200,
width: 80,
render: (h, scope) => {
return (
<div>
......@@ -40,7 +40,7 @@ class data extends filter {
},
{
label: "登记类型",
width: 100,
width: 80,
render: (h, scope) => {
return (
<div>
......@@ -52,16 +52,17 @@ class data extends filter {
{
label: "业务号",
prop: "YWH",
width: 150
width: 95
},
{
label: "不动产单元号",
prop: "BDCDYH",
width: 240,
width: 150,
},
{
label: "不动产权证号",
prop: "BDCQZH"
prop: "BDCQZH",
width: 150,
},
{
label: "权利人",
......@@ -73,7 +74,8 @@ class data extends filter {
},
{
label: "使用权面积",
prop: "SYQMJ"
prop: "SYQMJ",
width: 90,
},
{
label: "坐落",
......
......@@ -2,6 +2,9 @@
<div class="jsydzjdsyq from-clues">
<div class="from-clues-header">
<el-form ref="form" :model="form" label-width="120px">
<el-form-item>
<Breadcrumb />
</el-form-item>
<el-row>
<el-col :span="6">
<el-form-item label="行政区">
......@@ -34,7 +37,7 @@
<el-col :span="6">
<el-form-item label="登记类型">
<el-select v-model="form.DJLX" clearable class="width100" ref="selectlandDJ"
@visible-change="isShowSelectOptions" placeholder="请选择登记类型">
@visible-change="isShowSelectOptions" placeholder="登记类型">
<el-option v-for="item in dicData['A21']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
......@@ -58,7 +61,7 @@
:data="tableData.data">
</lb-table>
</div>
<dataDetails ref="editLog" :title="title" :tabsActiveName="'qlfQlJsydsyq'"/>
<dataDetails ref="editLog" :title="title" :tabsActiveName="'qlfQlJsydsyq'" />
</div>
</template>
......@@ -95,7 +98,7 @@ export default {
}].concat(data.columns()).concat([
{
label: "操作",
width: 170,
width: 80,
render: (h, scope) => {
return (
<div>
......
......@@ -2,6 +2,9 @@
<div class="lq from-clues">
<div class="from-clues-header">
<el-form ref="form" :model="form" label-width="105px">
<el-form-item>
<Breadcrumb />
</el-form-item>
<el-row>
<el-col :span="6">
<el-form-item label="行政区">
......
......@@ -36,11 +36,13 @@ class data extends filter {
},
{
label: "不动产单元号",
prop: "BDCDYH"
prop: "BDCDYH",
width: 150,
},
{
label: "不动产权证号",
prop: "BDCQZH"
prop: "BDCQZH",
width: 150,
},
{
label: "地籍号",
......
......@@ -2,6 +2,9 @@
<div class="from-clues">
<div class="from-clues-header">
<el-form ref="form" :model="form" label-width="105px">
<el-form-item>
<Breadcrumb />
</el-form-item>
<el-row>
<el-col :span="6">
<el-form-item label="行政区">
......@@ -21,17 +24,17 @@
</el-col>
<el-col :span="6">
<el-form-item label="坐落">
<el-input v-model="form.ZL" placeholder="请输入坐落"></el-input>
<el-input v-model="form.ZL" placeholder="坐落"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="不动产权证号" label-width="105px">
<el-input v-model="form.BDCQZH" placeholder="请输入不动产权证号"></el-input>
<el-input v-model="form.BDCQZH" placeholder="不动产权证号"></el-input>
</el-form-item>
</el-col>
<el-col :span="6" class="mt-10">
<el-form-item label="权利人">
<el-input v-model="form.QLR" placeholder="请输入权利人"></el-input>
<el-input v-model="form.QLR" placeholder="权利人"></el-input>
</el-form-item>
</el-col>
<el-col :span="6" class="mt-10">
......@@ -44,7 +47,7 @@
</el-col>
<el-col :span="6" class="mt-10">
<el-form-item label="地籍号">
<el-input v-model="form.xxx" placeholder="请输入地籍号"></el-input>
<el-input v-model="form.xxx" placeholder="地籍号"></el-input>
</el-form-item>
</el-col>
<el-col :span="6" class="btnColRight mt-10">
......
......@@ -7,7 +7,7 @@ class data extends filter {
return [
{
label: "行政区",
width: 150,
width: 80,
render: (h, scope) => {
return (
<div>
......@@ -18,7 +18,7 @@ class data extends filter {
},
{
label: "权属状态",
width: 100,
width: 80,
render: (h, scope) => {
return (
<div>
......@@ -30,7 +30,7 @@ class data extends filter {
{
label: "业务号",
prop: "ywh",
width: 150
width: 80,
},
{
label: "不动产单元号",
......@@ -46,11 +46,13 @@ class data extends filter {
},
{
label: "用途",
prop: "yt"
prop: "yt",
width: 80,
},
{
label: "土地面积",
prop: "nydmj"
prop: "nydmj",
width: 80,
},
{
label: "坐落",
......@@ -58,6 +60,7 @@ class data extends filter {
},
{
label: "登记类型",
width: 80,
render: (h, scope) => {
return (
<div>
......
......@@ -2,6 +2,9 @@
<div class="tdsyq from-clues">
<div class="from-clues-header">
<el-form ref="form" :model="form" label-width="120px">
<el-form-item>
<Breadcrumb />
</el-form-item>
<el-row>
<el-col :span="6">
<el-form-item label="行政区">
......@@ -33,8 +36,7 @@
<el-row class="mt-10">
<el-col :span="6">
<el-form-item label="登记类型">
<el-select v-model="form.DJLX" clearable class="width100" ref="selectlandDJ"
@visible-change="isShowSelectOptions" placeholder="请选择登记类型">
<el-select v-model="form.DJLX" clearable class="width100" ref="selectlandDJ" placeholder="请选择登记类型">
<el-option v-for="item in dicData['A21']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
......@@ -94,7 +96,7 @@ export default {
}].concat(data.columns()).concat([
{
label: "操作",
width: 170,
width: 80,
render: (h, scope) => {
return (
<div>
......@@ -123,11 +125,6 @@ export default {
}
},
methods: {
// 是否显示下拉框
isShowSelectOptions (e) {
if (!e) this.$refs.selectlandQL.blur()
if (!e) this.$refs.selectlandDJ.blur()
},
async featchData () {
try {
this.form = Object.assign(this.form, this.formData)
......
......@@ -22,7 +22,7 @@ class data extends filter {
},
{
label: "登记类型",
width: 70,
width: 100,
render: (h, scope) => {
return (
<div>
......
......@@ -2,6 +2,9 @@
<div class="from-clues">
<div class="from-clues-header">
<el-form ref="form" :model="form" label-width="110px">
<el-form-item>
<Breadcrumb />
</el-form-item>
<el-row>
<el-col :span="6">
<el-form-item label="行政区" label-width="106px">
......@@ -34,7 +37,7 @@
<el-col :span="6">
<el-form-item label="预告登记种类" label-width="106px">
<el-select v-model="form.YGDJZL" clearable ref="selectnoticeRegQL" class="width100"
@visible-change="isShowSelectOptions" placeholder="请选择预告登记种类">
@visible-change="isShowSelectOptions" placeholder="预告登记种类">
<el-option v-for="item in dicData['A29']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
......@@ -42,7 +45,7 @@
</el-col>
<el-col :span="6">
<el-form-item label="登记类型">
<el-select v-model="form.DJLX" clearable class="width100" placeholder="请选择登记类型">
<el-select v-model="form.DJLX" clearable class="width100" placeholder="登记类型">
<el-option v-for="item in dicData['A21']" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
......@@ -67,7 +70,7 @@
</lb-table>
</div>
<!-- 编辑 -->
<dataDetails ref="editLog" :title="title" :tabsActiveName="'qlfQlYgdj'" />
<dataDetails ref="editLog" title="预告登记" :tabsActiveName="'qlfQlYgdj'" />
</div>
</template>
......
......@@ -2,6 +2,9 @@
<div class="from-clues">
<div class="from-clues-header">
<el-form ref="form" :model="form" label-width="105px">
<el-form-item>
<Breadcrumb />
</el-form-item>
<el-row>
<el-col :span="5">
<el-form-item label="行政区" label-width="80px">
......@@ -57,7 +60,7 @@
</lb-table>
</div>
<!-- 编辑 -->
<dataDetails ref="editLog" :title="title" :tabsActiveName="'qlfQlYydj'" />
<dataDetails ref="editLog" title="异议登记" :tabsActiveName="'qlfQlYydj'" />
</div>
</template>
......@@ -93,7 +96,7 @@ export default {
}].concat(data.columns()).concat([
{
label: "操作",
width: 170,
width: 80,
render: (h, scope) => {
return (
<div>
......
......@@ -2,6 +2,9 @@
<div class="cancellationReg from-clues">
<div class="from-clues-header">
<el-form ref="form" :model="form" label-width="105px">
<el-form-item>
<Breadcrumb />
</el-form-item>
<el-row>
<el-col :span="6">
<el-form-item label="行政区">
......@@ -21,17 +24,17 @@
</el-col> -->
<!-- <el-col :span="6">
<el-form-item label="坐落">
<el-input v-model="form.ZL" placeholder="请输入坐落"></el-input>
<el-input v-model="form.ZL" placeholder="坐落"></el-input>
</el-form-item>
</el-col> -->
<el-col :span="6">
<el-form-item label="不动产权证号" label-width="105px">
<el-input v-model="form.BDCQZH" placeholder="请输入不动产权证号"></el-input>
<el-input v-model="form.BDCQZH" placeholder="不动产权证号"></el-input>
</el-form-item>
</el-col>
<el-col :span="6" class="mt-10">
<el-form-item label="权利人">
<el-input v-model="form.QLR" placeholder="请输入权利人"></el-input>
<el-input v-model="form.QLR" placeholder="权利人"></el-input>
</el-form-item>
</el-col>
<el-col :span="6" class="mt-10">
......@@ -44,7 +47,7 @@
</el-col>
<el-col :span="6" class="mt-10">
<el-form-item label="不动产单元号" label-width="105px">
<el-input v-model="form.BDCDYH" placeholder="请输入不动产单元号"></el-input>
<el-input v-model="form.BDCDYH" placeholder="不动产单元号"></el-input>
</el-form-item>
</el-col>
<el-col :span="6" class="btnColRight mt-10">
......@@ -61,7 +64,7 @@
</lb-table>
</div>
<!-- 编辑 -->
<dataDetails ref="editLog" :title="title" :tabsActiveName="'qlfQlZxdj'" />
<dataDetails ref="editLog" title="注销登记" :tabsActiveName="'qlfQlZxdj'" />
</div>
</template>
......@@ -94,7 +97,7 @@ export default {
}].concat(data.columns()).concat([
{
label: "操作",
width: 170,
width: 80,
render: (h, scope) => {
return (
<div>
......
import filter from '@/utils/filter.js'
class data extends filter {
constructor() {
super()
}
columns () {
return [
{
prop: "qymc",
label: "区域名称",
},
{
prop: "czyymc",
label: "操作用户名称",
},
{
prop: "bwmc",
label: "报文名称",
},
{
prop: "rksj",
label: "入库时间",
},
{
prop: "rkjg",
label: "入库结果",
},
{
prop: "sbyy",
label: "失败原因",
}
]
}
}
export default new data()
<template>
<!-- 报文重新入库日志 -->
<div class="from-clues">
<!-- 头部搜索 -->
<div class="from-clues-header">
<el-form ref="ruleForm" :model="form" label-width="100px">
<el-row class="mb-5">
<el-col :span="6">
<el-form-item label="行政区" prop="pcode">
<el-select v-model="form.pcode" class="width100" clearable placeholder="行政区">
<el-option v-for="item in xzqOptions" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="报文名称" prop="bwmc">
<el-select v-model="form.ywmc" class="width100" clearable placeholder="业务名称">
<el-option v-for="item in []" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="开始日期" prop="startTime">
<el-date-picker type="date" class="width100" placeholder="开始日期" :picker-options="pickerOptionsStart"
clearable v-model="form.startTime" value-format="yyyy-MM-dd"></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="结束日期" prop="endTime">
<el-date-picker type="date" class="width100" placeholder="结束日期" :picker-options="pickerOptionsEnd"
clearable v-model="form.endTime" value-format="yyyy-MM-dd"></el-date-picker>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<el-form-item label="入库结果" prop="rkjg">
<el-select v-model="form.rkjg" class="width100" clearable placeholder="入库结果">
<el-option v-for="item in []" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-col>
<!-- 操作按钮 -->
<el-col :span="18" class="btnColRight">
<el-button @click="resetForm">重置</el-button>
<el-button type="primary" @click="handleSubmit">查询</el-button>
</el-col>
</el-row>
</el-form>
</div>
<!-- 列表 -->
<div class="from-clues-content">
<lb-table ref="table" :heightNum="300" :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>
</div>
</template>
<script>
// 报文重新入库日志
// 引入列表头部
import data from "./data"
// 引入表格混入方法
import tableMixin from '@/mixins/tableMixin.js'
export default {
name: "bwcxrkrz",
mixins: [tableMixin],
data () {
return {
// 开始结束日期限制
pickerOptionsStart: {
disabledDate: (time) => {
if (this.form.endTime) {
return (
time.getTime() >= new Date(this.form.endTime).getTime()
);
}
}
},
// 结束日期限制
pickerOptionsEnd: {
disabledDate: (time) => {
if (this.form.startTime) {
return (
time.getTime() <= new Date(this.form.startTime).getTime()
);
}
}
},
// 头部表单
form: {
pcode: '',
bwmc: '',
startTime: '',
endTime: '',
rkjg: '',
currentPage: 1
},
// 表单校验
rules: {
pcode: [
{ required: true, message: '响应结果', trigger: 'change' }
],
startTime: [
{ required: true, message: '开始日期', trigger: 'change' }
],
endTime: [
{ required: true, message: '结束日期', trigger: 'change' }
],
},
// 表格
tableData: {
// 表格头部
columns: [{
label: '序号',
type: 'index',
width: '50',
index: this.indexMethod,
}].concat(data.columns()),
// 表格列表
data: []
},
// 分页
pageData: {
total: 0,
pageSize: 15,
current: 1,
},
// 行政区
xzqOptions: [
{
value: '632321',
label: '同仁县'
},
{
value: '632322',
label: '尖扎县'
},
{
value: '632323',
label: '泽库县'
},
{
value: '632324',
label: '河南县'
}
]
}
},
methods: {
// 重置表单
resetForm () {
this.$refs.ruleForm.resetFields();
},
// 数据请求
async featchData () {
}
}
}
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
@import "./index.scss";
</style>
<template>
<div class="centercard">
<div class="card1">
<div class="title">汉中市不动产接入信息</div>
<maps class="map" />
</div>
<div class="card2 mt-10">
......
......@@ -23,7 +23,7 @@
</div>
</template>
<script>
import drawMixin from "../../utils/drawMixin";
import drawMixin from "@/utils/drawMixin";
import screencontent from './screencontent'
export default {
mixins: [drawMixin],
......
......@@ -18,7 +18,7 @@
</p>
<p>
<span>成功率</span>
<span class="cg">{{qxcgl}}</span>
<span class="cg">{{ qxcgl }}</span>
</p>
</div>
</div>
......@@ -41,7 +41,7 @@
</p>
<p>
<span>成功率</span>
<span class="cg">{{stcgl}}</span>
<span class="cg">{{ stcgl }}</span>
</p>
</div>
</div>
......@@ -66,8 +66,8 @@ export default {
stsuccess: "",
qxjrl: "",
stjrl: "",
qxcgl:"",
stcgl:""
qxcgl: "",
stcgl: ""
};
},
mounted () {
......@@ -76,10 +76,10 @@ export default {
components: { columnar },
computed: {
qxjrlList: function () {
return this.qxjrl.toString().split("");
return this.qxjrl && this.qxjrl.toString().split("");
},
stjrlList: function () {
return this.stjrl.toString().split("");
return this.stjrl && this.stjrl.toString().split("");
},
},
methods: {
......@@ -87,23 +87,25 @@ export default {
return new Promise(async (resolve) => {
try {
let p = {
DJLX: "A21",
QLLX: "A8",
XZQDM: "A20",
DJLX: "",
QLLX: "",
XZQDM: "",
};
let res = await work.getsthjqxjrtotal(p);
this.stjrl=Number(res.result.sum)
this.qxjrl=Number(res.result.sum)
this.stjrl=res.result.stsum
this.qxjrl=res.result.qxsum
this.qxerrer=Number(res.result.qxjrerrer)
this.sterrer=Number(res.result.sthjerrer)
if(res.result.sum=="0"){
this.qxcgl="100%"
this.stcgl="100%"
}else{
this.qxcgl=Number(res.result.qxjrsuccess)/this.qxjrl*100+"%"
this.stcgl=Number(res.result.sthjsuccess)/Number(res.result.sum)*100+"%"
}
let qxcglnum=Number(res.result.qxjrsuccess)/this.qxjrl*100
let stcgl=Number(res.result.sthjsuccess)/this.qxjrl*100
this.qxcgl=qxcglnum.toFixed(2)+"%";
this.stcgl=stcgl.toFixed(2)+"%";
}
} catch (error) {
this.$refs.msg.messageShow();
}
......
<template>
<div class="rightcard">
<div class="card1 cardCon d-center">
<div class="cardhead">房屋情况统计表</div>
<div class="cardhead">新建国有房屋信息</div>
<div class="cardcontent" style="margin-top: 70px">
<dv-scroll-board :config="config" class="board" />
</div>
......
......@@ -6,7 +6,7 @@
</div>
</template>
<script>
import drawMixin from "../../utils/drawMixin";
import drawMixin from "@/utils/drawMixin";
import leftcard from "./leftcard";
import centercard from "./centercard";
import rightcard from "./rightcard";
......
<template>
<screencontent />
</template>
<script>
import screencontent from '@/views/dataView/screencontent'
import screencontent from '@/views/home/dataView/screencontent'
export default {
name: "home",
components: {
screencontent
},
data () {
return {
}
},
methods: {
}
}
</script>
<style scoped lang="scss">
@import "../dataView/index.scss";
@import "./dataView/index.scss";
</style>
......
<template>
<div id="barChart"></div>
</template>
<script>
export default {
data () {
return {
};
},
mounted () {
this.drawProvinceMap();
},
methods: {
drawProvinceMap () {
var chartDom = document.getElementById('barChart');
var myChart = this.$echarts.init(chartDom);
var option;
option = {
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'shadow'
}
},
legend: {
data: ['网络断开', '网络正常']
},
grid: {
left: '3%',
right: '4%',
bottom: '3%',
containLabel: true
},
xAxis: [
{
type: 'value'
}
],
yAxis: [
{
type: 'category',
axisTick: {
show: false
},
data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
}
],
series: [
{
name: '网络正常',
type: 'bar',
itemStyle: {
color: '#67C23A'
},
label: {
show: true,
position: 'inside'
},
emphasis: {
focus: 'series'
},
data: [200, 170, 240, 244, 200, 220, 210]
},
{
name: '网络断开',
type: 'bar',
itemStyle: {
color: '#F56C6C'
},
label: {
show: true,
position: 'inside'
},
emphasis: {
focus: 'series'
},
data: [-120, -132, -101, -134, -190, -230, -210]
}
],
}
myChart.setOption(option);
window.addEventListener("resize", () => {
this.myChart.resize();
});
}
}
}
</script>
<style scoped lang="scss">
#barChart {
width: 100%;
height: 500px;
}
</style>
<template>
<div id="jgChart" />
</template>
<script>
export default {
data () {
return {
};
},
methods: {
drawInit () {
let datavalue = [26, 300, 2000, 1200, 800];
let ii = -1;
var chartDom = document.getElementById('jgChart');
var myChart = this.$echarts.init(chartDom);
var option;
option = {
radar: {
indicator: [
{ name: '原则监管', max: 2600 },
{ name: '时效监管', max: 2600 },
{ name: '证书监管', max: 3600 },
{ name: '年限监管', max: 2600 },
{ name: '内容监管', max: 2600 },
],
name: {
rich: {
a: {
color: '#606266'
},
b: {
color: '#409EFF',
align: 'center',
}
},
formatter: (a, b) => {
ii++;
return `{a|${a}}\n{b|${datavalue[ii]}}`
}
}
},
series: [
{
type: 'radar',
symbol: 'none',//去掉拐点的圈
itemStyle: {
color: '#409EFF'
},
data: [
{
value: datavalue,
}
]
}
]
};
myChart.setOption(option);
}
},
mounted () {
this.drawInit()
}
}
</script>
<style scoped>
#jgChart {
width: 100%;
height: 330px;
}
</style>
<template>
<div class="map">
<div class="map-box" ref="mapContain" />
</div>
</template>
<script>
export default {
data () {
return {
mapName: "汉中市",
listArr: [{
name: '汉台区',
value: '6000'
},
{
name: '南郑区',
value: '8000'
},
{
name: '城固县',
value: '3000'
},
{
name: '洋县',
value: '7000'
},
{
name: '西乡县',
value: '1000'
},
{
name: '镇巴县',
value: '2000'
},
{
name: '勉县',
value: '600'
},
{
name: '留坝县',
value: '3000'
},
{
name: '佛坪县',
value: '1000'
},
{
name: '宁强县',
value: '1000'
},
{
name: '略阳县',
value: '1000'
}], //城市json
max: "9000", //最大value值
min: "500", // 最小value值
};
},
methods: {
drawProvinceMap (mapName) {
this.mapName = mapName;
// 引入区域数据
require('./hanzhong.js');
let _this = this;
let myChart8 = this.$echarts.init(this.$refs.mapContain);
const option = {
visualMap: {
min: 0,
max: _this.max,
top: "bottom",
right: 10,
splitNumber: 6,
seriesIndex: [0],
itemWidth: 20, // 每个图元的宽度
itemGap: 2, // 每两个图元之间的间隔距离,单位为px
pieces: [ // 自定义每一段的范围,以及每一段的文字
{ gte: 6000, label: '6000以上', color: '#035cf5' }, // 不指定 max,表示 max 为无限大(Infinity)。
{ gte: 2000, lte: 6000, label: '2000-6000', color: '#3375e4' },
{ gte: 1000, lte: 2000, label: '1000-2000', color: '#6797ef' },
{ gte: 500, lte: 1000, label: '500-1000', color: '#96b5ef' },
],
textStyle: {
color: '#737373'
}
},
// 数据移入显示
tooltip: {
trigger: "item",
formatter: function (params) {
return params.value ? params.name + ':' + params.value + '件' : params.name + ':' + '0件'
},
// 边框颜色
borderColor: "#CB000C",
// 边框宽度
borderWidth: "1",
},
series: [
{
type: "map",
map: this.mapName,
itemStyle: {
normal: { //正常状态
label: {
show: true,
formatter: '{b}', //地图上显示的数据,分别对应data中的name和value
color: '#fff',
},
areaColor: '#409EFF' //地图区域的颜色
},
emphasis: {
label: { show: true },
areaColor: "#67C23A", //鼠标进入时的颜色
},
},
data: _this.listArr,
},
],
};
myChart8.setOption(option);
},
},
mounted () {
// 初始化数据
this.drawProvinceMap("汉中市");
}
}
</script>
<style scoped>
.map {
width: 100%;
}
.map-box {
display: inline-block;
width: 100%;
height: calc(100vh - 153px);
}
</style>
import filter from '@/utils/filter.js'
class data extends filter {
constructor() {
super()
}
columns () {
return [
{
type: 'index',
label: "序号",
},
{
prop: "xzqmc",
label: "行政区名称",
},
{
prop: "xzqzs",
label: "行政区总数",
},
{
prop: "jrl",
label: "接入量",
},
{
prop: 'jscgl',
label: '接收成功率',
render: (h, scope) => {
return (
<div>
{scope.row.jscgl} %
</div>
)
}
},
{
prop: "dk",
label: "成功率得分",
},
{
prop: "wjrqx",
label: "未接入区县",
},
{
prop: "jrdf",
label: "接入得分",
},
{
prop: "jrdf",
label: "未上传登薄日志区县",
},
{
prop: "jrdf",
label: "登薄日志得分",
},
{
prop: "jrdf",
label: "总评分",
}
]
}
}
export default new data()
.jgHome {
display: flex;
justify-content: space-between;
height: calc(100% - 20px);
.bottom10 {
margin-bottom: 10px;
}
.paddingbtm0 {
/deep/.el-card__body {
padding-bottom: 0;
}
}
&-left,
&-right {
width: 30%;
.fznum {
font-size: 24px;
color: $light-blue;
span {
font-size: 14px;
color: #606266;
}
}
.fzl {
display: flex;
align-items: center;
img {
width: 70px;
margin-right: 15px;
}
p:nth-child(1) {
font-size: 18px;
}
}
.zszm {
justify-content: space-between;
li:nth-child(1) {}
}
}
.barChart {
flex: 1;
margin-top: 10px;
height: calc(100vh - 330px);
}
&-center {
width: 39%;
}
}
\ No newline at end of file
<template>
<div class="jgHome">
<div class="jgHome-left">
<el-card>
<div slot="header">
<span>发证情况</span>
<el-button style="float: right;" type="text">更多</el-button>
</div>
<div class="fzl">
<img src="../../image/zs.png" alt="">
<div>
<p>发证量</p>
<p class="fznum">10000<span></span></p>
</div>
</div>
<ul class="zszm d-flex-center">
<li>
<p>证书</p>
<p class="fznum">600<span></span></p>
</li>
<li>
<p>证明</p>
<p class="fznum">900<span></span></p>
</li>
</ul>
</el-card>
<el-card class="barChart">
<barChart />
</el-card>
</div>
<div class="jgHome-center">
<el-card>
<hzMap />
</el-card>
</div>
<div class="jgHome-right">
<el-card class="bottom10 paddingbtm0">
<jgChart />
</el-card>
<el-card class="box-card paddingbtm0">
<div slot="header">
<span>违规总计</span>
<el-button style="float: right;" type="text">更多</el-button>
</div>
<lb-table ref="table" :pagination="false" :heightNum="546" :column="tableData.columns" :data="tableData.data">
</lb-table>
</el-card>
</div>
</div>
</template>
<script>
// 引入表格数据
import data from "./data"
import barChart from './components/barChart'
import hzMap from './components/map'
import jgChart from './components/jgChart'
export default {
name: "jgHome",
components: { barChart, hzMap, jgChart },
data () {
return {
// 表格数据
tableData: {
// 表格头部信息
columns: data.columns(),
// 表格列表数据
data: [{}]
}
}
},
methods: {}
}
</script>
<style scoped lang="scss">
@import "./index.scss";
</style>
<template>
<!-- 监控日志 -->
<div class="jktjDetail form-clues">
<!-- 头部搜索 -->
<div class="from-clues-header">
<el-form ref="form" :model="form" label-width="100px">
<el-form-item>
<Breadcrumb />
</el-form-item>
<el-row>
<el-col :span="4">
<el-form-item label="行政区">
<el-select
v-model="form.qxdm"
class="width100"
clearable
placeholder="行政区"
>
<el-option
v-for="item in dicData['A20']"
:key="item.DCODE"
:label="item.DNAME"
:value="item.DCODE"
>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="开始日期" prop="startTime">
<el-date-picker
type="datetime"
placeholder="开始日期"
:picker-options="pickerOptionsStart"
clearable
v-model="form.startTime"
value-format="yyyy/MM/dd HH:mm:ss"
></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="结束日期" prop="endTime">
<el-date-picker
type="datetime"
placeholder="结束日期"
:picker-options="pickerOptionsEnd"
clearable
v-model="form.endTime"
value-format="yyyy/MM/dd HH:mm:ss"
></el-date-picker>
</el-form-item>
</el-col>
<!-- 操作按钮 -->
<el-col :span="3" class="btnColRight">
<btn nativeType="cz" @click="resetForm">重置</btn>
<btn nativeType="cx" @click="getSuucessRate">查询</btn>
</el-col>
</el-row>
</el-form>
</div>
<!-- 图表 -->
<div class="form-clues-content echarts-box" v-if="chartData.length">
<div id="myChart" class="chart"></div>
</div>
<div class="form-clues-content echarts-box center" v-else>暂无数据</div>
</div>
</template>
<script>
import { mapGetters } from "vuex";
import { getFirstDayOfSeason, timeFormat } from "@/utils/operation";
import business from "@/api/business";
export default {
name: "jktj",
data () {
return {
// 开始日期限制
pickerOptionsStart: {
disabledDate: (time) => {
if (this.form.endTime) {
return time.getTime() >= new Date(this.form.endTime).getTime();
}
},
},
// 结束日期限制
pickerOptionsEnd: {
disabledDate: (time) => {
if (this.form.startTime) {
return time.getTime() <= new Date(this.form.startTime).getTime();
}
},
},
recTypeArr: [],
chartData: [],
// 搜索表单
form: {
startTime: getFirstDayOfSeason(),
endTime: timeFormat(new Date(),true),
qxdm: "",
},
};
},
mounted () {
// 查询成功率
this.getSuucessRate();
},
computed: {
...mapGetters(["dicData"]),
},
methods: {
async getSuucessRate () {
this.recTypeArr = [];
this.chartData = [];
let { result: res } = await business.getSuucessRate(
this.form.startTime,
this.form.endTime,
this.form.qxdm
);
this.chartData = res;
//行政区代码过滤
res.length > 0 &&
res.forEach((item) => {
this.recTypeArr.push(item.recTypeName);
});
this.$nextTick(() => {
// 初始化图表
this.chartData.length && this.echartInit();
});
},
// 重置
resetForm () {
this.form = {
startTime: getFirstDayOfSeason(),
endTime: timeFormat(new Date(),true),
};
this.getSuucessRate();
},
echartInit () {
let _this = this;
// 基于准备好的dom,初始化echarts实例
let myChart = this.$echarts.init(document.getElementById("myChart"));
// 绘制图表
myChart.setOption({
color: ["#13E5FF", "#C99E68", "#E873B2", "#ffaf48"],
tooltip: {
trigger: "axis",
formatter: '{b}<br/>{a0}:{c0}个<br/>{a1}:{c1}个<br/>{a2}:{c2}%',
axisPointer: {
type: "cross",
crossStyle: {
color: "#fff",
},
},
},
legend: {
data: ["成功", "失败", "成功率"],
top: '16',
textStyle: {
show: true,
color: "#fff",
fontSize: "16",
},
},
xAxis: [
{
type: "category",
data: _this.recTypeArr,
axisPointer: {
type: "shadow",
},
axisLabel: {
textStyle: {
show: true,
color: "#fff",
fontSize: "16",
},
formatter: function (val) {
let c = document.createElement("canvas");
const ctx = c.getContext("2d");
const arr = val.split("");
arr
.map((item) => ctx.measureText(item).width)
.reduce((pre, next, index) => {
const nLen = pre + next;
if (nLen > 40) {
arr[index - 1] += "...";
return next;
} else {
return nLen;
}
});
c = null;
let ind = arr.findIndex((i) => {
return i.indexOf("...") > -1;
});
let newArr = ind > 0 ? arr.splice(0, ind + 1) : arr;
return newArr.join("");
},
},
},
],
yAxis: [
{
type: "value",
name: "数量/个",
nameTextStyle: {
color: "#fff",
fontSize: "16",
},
interval: 50,
axisLabel: {
formatter: "{value}",
textStyle: {
show: true,
color: "#fff",
fontSize: "16",
},
},
},
{
type: "value",
name: "成功率",
nameTextStyle: {
color: "#fff",
fontSize: "16",
},
splitNumber:2,
axisLabel: {
formatter: "{value} %",
textStyle: {
show: true,
color: "#fff",
fontSize: "16",
},
},
},
],
series: [
{
name: "成功",
type: "bar",
barMaxWidth: '60',
data: this.chartData.map((item) => {
return item.success;
}),
},
{
name: "失败",
type: "bar",
barMaxWidth: '60',
data: this.chartData.map((item) => {
return item.failure;
}),
},
{
name: "成功率",
type: "line",
barMaxWidth: '60',
yAxisIndex: 1,
data: this.chartData.map((item) => {
return item.rate;
}),
},
],
});
},
},
};
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
.jktjDetail {
height: 100%;
display: flex;
flex-direction: column;
.rows {
margin-left: 100px;
}
.center {
line-height: 50vh;
text-align: center;
color: #b6b5b5
}
.echarts-box {
display: flex;
justify-content: center;
height: 500px;
.chart {
width: 100%;
height: 100%;
}
}
.form-clues-content {
flex: 1;
height: 100%;
}
}
</style>
<style scoped lang="scss">
@import "~@/styles/public.scss";
</style>
......@@ -2,44 +2,79 @@
<!-- 监控日志 -->
<div class="jktjDetail form-clues">
<!-- 头部搜索 -->
<el-form
ref="form"
:model="form"
:inline="true"
class="from-clues-header"
label-width="100px"
<div class="from-clues-header">
<el-form ref="form" :model="form" label-width="100px">
<el-form-item>
<Breadcrumb />
</el-form-item>
<el-row>
<el-col :span="4">
<el-form-item label="行政区">
<el-select
v-model="form.qxdm"
class="width100"
clearable
placeholder="行政区"
>
<el-row class="rows">
<el-col :span="8">
<el-date-picker
v-model="valueTime"
type="datetimerange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
<el-option
v-for="item in dicData['A20']"
:key="item.DCODE"
:label="item.DNAME"
:value="item.DCODE"
>
</el-date-picker>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="开始日期" prop="startTime">
<el-date-picker
type="datetime"
placeholder="开始日期"
:picker-options="pickerOptionsStart"
clearable
v-model="form.startTime"
value-format="yyyy/MM/dd HH:mm:ss"
></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="结束日期" prop="endTime">
<el-date-picker
type="datetime"
placeholder="结束日期"
:picker-options="pickerOptionsEnd"
clearable
v-model="form.endTime"
value-format="yyyy/MM/dd HH:mm:ss"
></el-date-picker>
</el-form-item>
</el-col>
<!-- 操作按钮 -->
<el-col :span="3" class="btnColRight">
<btn nativeType="cz" @click="resetForm">重置</btn>
<btn nativeType="cx">查询</btn>
<btn nativeType="cx" @click="getProcessCounts">查询</btn>
</el-col>
</el-row>
</el-form>
<!-- 表格 -->
<div class="form-clues-content echarts-box">
</div>
<!-- 图表 -->
<div class="form-clues-content echarts-box" v-if="chartData.length">
<div id="myChart" class="chart"></div>
</div>
<div class="form-clues-content echarts-box center" v-else>暂无数据</div>
</div>
</template>
<script>
import { mapGetters } from "vuex";
import efficient from "@/api/efficient";
import { getFirstDayOfSeason, timeFormat } from "@/utils/operation";
export default {
name: "jktj",
data() {
data () {
return {
// 开始结束日期限制
// 开始日期限制
pickerOptionsStart: {
disabledDate: (time) => {
if (this.form.endTime) {
......@@ -57,63 +92,57 @@ export default {
},
// 搜索表单
valueTime: "",
// 搜索表单
form: {
startTime: "",
endTime: "",
startTime: getFirstDayOfSeason(),
endTime: timeFormat(new Date(),true),
qxdm: "",
},
chartData:[]
};
},
mounted() {
// 初始化图表
this.echartInit();
// 查询业务量
this.getProcessCounts();
},
computed: {
...mapGetters(["dicData"]),
},
methods: {
async getProcessCounts(){
this.chartData = [];
let { result: res } = await efficient.getProcessCounts(
this.form.startTime,
this.form.endTime,
this.form.qxdm
);
//获取图表配置项需要的数据
this.chartData = res;
this.$nextTick(() => {
// 初始化图表
this.chartData.length && this.echartInit(this.chartData)
});
},
// 重置
resetForm() {
resetForm () {
this.form = {
startTime: "",
endTime: "",
};
},
echartInit() {
//图表渲染
echartInit(chartArr) {
// 基于准备好的dom,初始化echarts实例
let myChart = this.$echarts.init(document.getElementById("myChart"));
// 绘制图表
myChart.setOption({
color: ["#00bdb1", "#ff6e6e", "#3f99ff", "#ffaf48"],
title: {
show: true,
text: "汉中市接入数量与上报数量统计(单位:个)\n(2022年02月05日~2022年03月07日)",
left: "center",
textStyle: {
fontSize: 20,
lineHeight: 30,
height: 60,
color: "#b6b5b5",
},
},
legend: {
data: [
"接入成功数量",
"接入失败数量",
"上报成功数量",
"上报失败数量",
],
top: 80,
textStyle: {
fontSize: 20,
lineHeight: 30,
height: 60,
color: "#777",
},
},
color: ["#13E5FF"],
tooltip: {
show: true,
trigger: "axis",
textStyle: {
fontSize: 20 // 字体大小
fontSize: 16, // 字体大小
},
extraCssText: 'width:220px;height:160px;' // 背景色
},
grid: {
top: 120,
......@@ -121,12 +150,35 @@ export default {
xAxis: [
{
type: "category",
data: ["汉台区", "南郑区", "城固县", "洋县", "西乡县"],
data: chartArr.map(item=>item.recTypeName),
axisLabel: {
interval: 0,
formatter: function (val) {
let c = document.createElement("canvas");
const ctx = c.getContext("2d");
const arr = val.split("");
arr
.map((item) => ctx.measureText(item).width)
.reduce((pre, next, index) => {
const nLen = pre + next;
if (nLen > 60) {
arr[index - 1] += "...";
return next;
} else {
return nLen;
}
});
c = null;
let ind = arr.findIndex((i) => {
return i.indexOf("...") > -1;
});
let newArr = ind > 0 ? arr.splice(0, ind + 1) : arr;
return newArr.join("");
},
textStyle: {
show: true,
color: "#fff",
fontSize: "20",
fontSize: "16",
},
},
},
......@@ -134,35 +186,25 @@ export default {
yAxis: [
{
type: "value",
name: "数量/个",
nameTextStyle: {
color: "#fff",
fontSize: "16",
},
axisLabel: {
textStyle: {
show: true,
color: "#fff",
fontSize: "20",
fontSize: "16",
},
},
},
],
series: [
{
name: "接入成功数量",
type: "bar",
data: [1000, 1500, 2000, 500, 4000],
},
{
name: "接入失败数量",
data: chartArr.map(item=>item.counts),
type: "bar",
data: [900, 500, 3200, 800, 4500],
},
{
name: "上报成功数量",
type: "bar",
data: [1000, 1500, 2000, 500, 4000],
},
{
name: "上报失败数量",
type: "bar",
data: [900, 500, 3200, 800, 4500],
barMaxWidth: '60',
},
],
});
......@@ -177,9 +219,15 @@ export default {
height: 100%;
display: flex;
flex-direction: column;
.rows {
.rows {
margin-left: 100px;
}
.center {
line-height: 50vh;
text-align: center;
color:#b6b5b5
}
.echarts-box {
display: flex;
justify-content: center;
......
<template>
<!-- 编辑 -->
<dialogBox :title="title" @closeDialog="closeDialog" @submitForm="handleSubmit" v-model="myValue">
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="120px">
<el-row>
<el-col :span="6">
<el-form-item label="接入点代码" prop="jrddm">
<el-input v-model="ruleForm.jrddm" placeholder="接入点代码"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="接入点名称" prop="jrdmc">
<el-input v-model="ruleForm.jrdmc" placeholder="接入点名称"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="队列名称" prop="dlmc">
<el-input v-model="ruleForm.dlmc" placeholder="队列名称"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="ip地址" prop="ip">
<el-input v-model="ruleForm.ip" placeholder="ip地址"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<el-form-item label="负责人" prop="fzr">
<el-input v-model="ruleForm.fzr" placeholder="负责人"></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
</dialogBox>
</template>
<script>
export default {
props: {
value: { type: Boolean, default: false },
title: { type: String, default: '详情' }
},
data () {
return {
myValue: this.value,
ruleForm: {
jrddm: '',
jrdmc: '',
dlmc: '',
ywmc: '',
czsj: ''
},
rules: {
jrddm: [
{ required: true, message: '接入点代码', trigger: 'blur' }
],
jrdmc: [
{ required: true, message: '行政区名称', trigger: 'blur' }
],
dlmc: [
{ required: true, message: '队列名称', trigger: 'blur' }
],
ip: [
{ required: true, message: 'ip地址', trigger: 'blur' }
],
fzr: [
{ required: true, message: '负责人', trigger: 'blur' }
],
}
}
},
watch: {
value (val) {
this.myValue = val
}
},
methods: {
closeDialog () {
this.$emit('input', false)
},
handleSubmit () {
this.$emit('input', false)
}
}
}
</script>
\ No newline at end of file
import filter from '@/utils/filter.js'
class data extends filter {
constructor() {
super()
}
columns () {
return [
{
type: 'selection'
},
{
prop: "jrddm",
label: "接入点代码",
},
{
prop: "jrdmc",
label: "接入点名称",
},
{
prop: "dlmc",
label: "队列名称",
},
{
prop: "ip",
label: "ip地址",
},
{
prop: "dk",
label: "端口号",
},
{
prop: "fzr",
label: "负责人",
},
{
prop: 'status',
label: '状态',
render: (h, scope) => {
return (
<div>
{
scope.row.status
? <el-tag type='warning'>中断</el-tag>
: <el-tag type='warning'>中断1</el-tag>
}
</div>
)
}
},
]
}
}
export default new data()
<template>
<!-- 接入区域管理 -->
<div class="from-clues">
<!-- 头部搜索 -->
<div class="from-clues-header">
<el-form ref="ruleForm" :model="form" label-width="100px">
<el-row>
<el-col :span="6">
<el-form-item label="负责人" label-width="60px" prop="fzr">
<el-input v-model="form.fzr" placeholder="负责人"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="接入点名称" prop="jrdmc">
<el-select v-model="form.jrdmc" class="width100" clearable placeholder="接入点名称">
<el-option v-for="item in []" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-col>
<!-- 操作按钮 -->
<el-col :span="12" class="btnColRight">
<el-form-item>
<el-button type="primary">删除</el-button>
<el-button @click="resetForm">重置</el-button>
<el-button type="primary">新增</el-button>
<el-button type="primary" @click="handleSubmit">查询</el-button>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
<!-- 列表数据 -->
<div class="from-clues-content">
<lb-table ref="table" @selection-change="handleSelectionChange" :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>
<!-- 修改弹框 -->
<detailDialog v-model="isShow" />
</div>
</template>
<script>
// 接入区域管理
// 引入table数据
import data from "./data"
// 引入混入方法
import tableMixin from '@/mixins/tableMixin.js'
// 引入修改弹框
import detailDialog from './components/detailDialog'
export default {
name: "jrqygl",
mixins: [tableMixin],
// 注册组件
components: {
detailDialog
},
data () {
return {
isShow: false,
// 搜索表单
form: {
fzr: '',
jrdmc: '',
currentPage: 1
},
// 表单校验
rules: {
fzr: [
{ required: true, message: '负责人', trigger: 'change' }
],
jrdmc: [
{ required: true, message: '接入点名称', trigger: 'change' }
]
},
// 列表数据
tableData: {
// 列表头部
columns: data.columns().concat([
{
label: "操作",
width: '80',
render: (h, scope) => {
return (
<div>
<el-button
type="text"
size="mini"
onClick={() => { this.handleEdit(scope.row) }}
>
修改
</el-button>
</div>
)
}
}
]),
// 列表数据
data: [{}]
},
// 分页
pageData: {
total: 0,
pageSize: 15,
}
}
},
methods: {
// 多选
handleSelectionChange (val) {
},
// 重置表单
resetForm () {
this.$refs.ruleForm.resetFields();
},
// 初始化数据
async featchData () {
},
// 修改
handleEdit (row) {
this.isShow = true
}
}
}
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
@import "./index.scss";
</style>
......@@ -5,10 +5,10 @@
<template>
<div class='result'>
<p>响应xml</p>
<el-input type="textarea" :rows="6" class="resulttext" placeholder="请输入内容" v-model="REPMSGXML">
<el-input type="textarea" :rows="6" class="resulttext" placeholder="响应xml" v-model="REPMSGXML">
</el-input>
<p>错误信息</p>
<el-input type="textarea" :rows="6" class="resulttext" placeholder="请输入内容" v-model="ERRORINFO">
<el-input type="textarea" :rows="6" class="resulttext" placeholder="错误信息" v-model="ERRORINFO">
</el-input>
</div>
</template>
......
......@@ -36,16 +36,17 @@ class data extends filter {
{
prop: "areacode",
label: "行政区代码",
width: 70,
width: 90,
},
{
prop: "areaName",
label: "行政区名称",
width: 70,
width: 90,
},
{
prop: "bizMsgid",
label: "业务报文ID",
width: 90,
},
{
prop: "createdate",
......@@ -65,7 +66,7 @@ class data extends filter {
{
prop: "rectype",
label: "业务编码",
width: 70,
width: 80,
},
{
prop: "rectypeName",
......