e204bc5c by renchao@pashanhoo.com

Merge branch 'dev'

2 parents e6293395 c428efca
......@@ -111,6 +111,18 @@ export function selectZdjbxx (data) {
})
}
/**
* @description: 业务办理-选择单元-查询宗地基本信息
* @param {*} data
* @author: renchao
*/
export function selectHQjdc (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/ywsq/selectHQjdc',
method: 'post',
data
})
}
/*
业务办理-选择单元-查询宗地基本信息
*/
......
......@@ -2,7 +2,8 @@
<div class="navbar-con">
<div class="navbar" v-theme.background="mTheme">
<div class="logo">
<img v-if="logo" :src="logo" class="header-logo">
<img v-if="logo" :src="logo" class="header-logo" />
<h4>{{ userInfo.districtName }}不动产登记平台</h4>
</div>
<!-- <div class="backdrop">
<theme style="float: right;height: 26px;width: 26px;margin-top: 26px;" @change="themeChange" />
......@@ -10,75 +11,93 @@
<div class="right-menu">
<!-- <svg-icon class="function" icon-class='function' /> -->
<div class="avatar-wrapper">
<span style="padding-right:10px">{{ name }}</span>
<p>
<span style="padding-right: 10px">{{
userInfo.departmentName
}}</span>
<span style="padding-right: 10px">{{ userInfo.name }}</span>
</p>
<img :src="avatar + '?imageView2/1/w/80/h/80'" class="user-avatar" />
</div>
<svg-icon class="shutdown" @click.native="logout" icon-class='shutdown' />
<svg-icon
class="shutdown"
@click.native="logout"
icon-class="shutdown"
/>
</div>
</div>
<NoticeBar class="NoticeBar" :noticeList="noticeList" v-if="noticeList.length > 0" />
<NoticeBar
class="NoticeBar"
:noticeList="noticeList"
v-if="noticeList.length > 0"
/>
</div>
</template>
<script>
import axios from 'axios'
import Cookies from 'js-cookie'
import { mapGetters } from 'vuex'
import NoticeBar from '@/components/NoticeBar/index'
import { getHomeNoticeList } from "@/api/home"
import { setToken } from "@/utils/util";
export default {
import axios from "axios";
import Cookies from "js-cookie";
import { mapGetters } from "vuex";
import NoticeBar from "@/components/NoticeBar/index";
import { getHomeNoticeList } from "@/api/home";
import { setToken } from "@/utils/util";
export default {
components: {
NoticeBar
NoticeBar,
},
computed: {
...mapGetters(['sidebar', 'avatar', 'name']),
baseUrl () {
...mapGetters(["sidebar", "avatar", "name", "userInfo"]),
baseUrl() {
return window._config.baseUrl;
},
},
data () {
data() {
return {
logo: require('../../image/logo.png'),
noticeList: []
}
logo: require("../../image/bdclogo.png"),
noticeList: [],
};
},
created () {
this.queryNoticeList()
created() {
this.queryNoticeList();
},
mounted () {
let that = this
window.addEventListener('message', function (messageEvent) {
mounted() {
let that = this;
window.addEventListener("message", function (messageEvent) {
if (messageEvent.data.update) {
that.queryNoticeList()
that.queryNoticeList();
}
})
});
},
destroyed () {
window.removeEventListener('message')
destroyed() {
window.removeEventListener("message");
},
methods: {
/**
* @description: queryNoticeList
* @author: renchao
*/
queryNoticeList () {
getHomeNoticeList().then(res => {
queryNoticeList() {
getHomeNoticeList().then((res) => {
if (res.result) {
this.noticeList = res.result.noticeList
this.noticeList = res.result.noticeList;
}
})
});
},
/**
* @description: logout
* @author: renchao
*/
logout () {
axios.post(window._config.services.management + "/management/logout").then(() => {
setToken(undefined)
sessionStorage.removeItem('token')
localStorage.setItem('dj-location', window.location.href)
window.location.href = window._config.casBaseURL + '/logout?service=' + encodeURIComponent(window.location.href);
})
logout() {
axios
.post(window._config.services.management + "/management/logout")
.then(() => {
setToken(undefined);
sessionStorage.removeItem("token");
localStorage.setItem("dj-location", window.location.href);
window.location.href =
window._config.casBaseURL +
"/logout?service=" +
encodeURIComponent(window.location.href);
});
},
/**
......@@ -86,37 +105,37 @@
* @param {*} val
* @author: renchao
*/
themeChange (val) {
this.$store.dispatch('app/updateTheme', val)
themeChange(val) {
this.$store.dispatch("app/updateTheme", val);
},
searchMessageCenter () {
this.$router.push({ name: 'messagecenter' })
searchMessageCenter() {
this.$router.push({ name: "messagecenter" });
},
/**
* @description: handleCommand
* @param {*} command
* @author: renchao
*/
handleCommand (command) {
if (command == 'a') {
handleCommand(command) {
if (command == "a") {
//个人中心
this.$router.push({ name: 'personal' })
}
}
}
this.$router.push({ name: "personal" });
}
},
},
};
</script>
<style lang="scss" scoped>
.navbar-con {
.navbar-con {
position: relative;
}
}
.NoticeBar {
.NoticeBar {
position: absolute;
bottom: 0;
}
}
.el-dropdown-menu {
.el-dropdown-menu {
padding: 0 !important;
border: 1px solid #ebeef5;
box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.12);
......@@ -149,9 +168,9 @@
background: #f6f7f9;
color: #4a4a4a;
}
}
}
.navbar {
.navbar {
height: $headerHeight;
overflow: hidden;
position: relative;
......@@ -163,8 +182,22 @@
padding: 0 20px;
justify-content: space-between;
.logo {
// margin-top: -20px;
.header-logo {
width: 300px;
width: 40px;
float: left;
vertical-align: middle;
}
h4 {
float: left;
vertical-align: middle;
line-height: 40px;
font-size: 22px;
color: #fff;
text-indent: 6px;
letter-spacing: 2px;
}
}
.backdrop {
......@@ -262,7 +295,15 @@
height: 40px;
align-items: center;
color: #ffffff;
p {
font-size: 14px;
height: 40px;
span {
display: block;
line-height: 20px;
text-align: right;
}
}
.user-avatar {
cursor: pointer;
width: 35px;
......@@ -279,5 +320,5 @@
}
}
}
}
}
</style>
......
<template>
<div class="lpbContent-wrap" ref="lpbContentWrap">
<div class="lpbContent" ref="lpbContent" :style="{ 'height': 'calc(100% - '+ lpbContentHeight +'px)'}">
<div
class="lpbContent"
ref="lpbContent"
:style="{ height: 'calc(100% - ' + lpbContentHeight + 'px)' }"
>
<!-- 纵向倒序排列 逻辑幢位于独立幢单元和独立层户的上方 -->
<div class="ch-zdy-wrap">
<!-- 幢单元 -->
<zdy-cpn v-if="lpbData.zdys.length" :zdys="lpbData.zdys" :onlyShow="onlyShow" />
<zdy-cpn
v-if="lpbData.zdys.length"
:zdys="lpbData.zdys"
:onlyShow="onlyShow"
/>
<!-- 独立层户 -->
<ch-cpn v-if="lpbData.cs.length" :ch="lpbData.cs" :onlyShow="onlyShow" />
<ch-cpn
v-if="lpbData.cs.length"
:ch="lpbData.cs"
:onlyShow="onlyShow"
/>
</div>
<!-- 逻辑幢 -->
<ljzs-cpn v-if="lpbData.ljzs.length" :ljzs="lpbData.ljzs" :onlyShow="onlyShow" />
<ljzs-cpn
v-if="lpbData.ljzs.length"
:ljzs="lpbData.ljzs"
:onlyShow="onlyShow"
/>
</div>
<!-- 自然幢名称 -->
<p class="lpb-xmmc" v-if="onlyShow" style="border-bottom: 1px solid #e6e6e6">{{ lpbData.xmmc }}</p>
<p class="lpb-xmmc" v-else :style="{ 'border-bottom':'1px solid #e6e6e6'}">
<p
class="lpb-xmmc"
v-if="onlyShow"
style="border-bottom: 1px solid #e6e6e6"
>
{{ lpbData.xmmc }}
</p>
<p
class="lpb-xmmc"
v-else
:style="{ 'border-bottom': '1px solid #e6e6e6' }"
>
<el-checkbox @change="zdySelectAll($event)">{{
lpbData.xmmc
}}</el-checkbox>
</p>
<el-button type="primary" class="save-btn" v-if="!onlyShow && showSave" @click="saveLpb">选择确认</el-button>
<el-button type="primary" class="save-btn" v-if="!onlyShow && !showSave" @click="submitForm" :loading="loading">发起申请</el-button>
<el-button
type="primary"
class="save-btn"
v-if="!onlyShow && showSave"
@click="saveLpb"
>选择确认</el-button
>
<el-button
type="primary"
class="save-btn"
v-if="!onlyShow && !showSave"
@click="submitForm"
:loading="loading"
>发起申请</el-button
>
<!-- 右键菜单 -->
<ul
v-show="lpbChVisible"
:style="{ left: lpbChLeft + 'px', top: lpbChTop + 'px' }"
class="contextmenu">
class="contextmenu"
>
<li @click="menuClick">菜单一</li>
<li @click="menuClick">菜单二</li>
</ul>
</div>
</template>
<script>
import { getLpb } from "@/api/lpcx.js";
import chCpn from "./ch.vue";
import zdyCpn from "./zdys.vue";
import ljzsCpn from "./ljzs.vue";
import { startBusinessFlow, choiceBdcdy, againAddSldy } from "@/api/workFlow.js";
import jump from "../../ywbl/ywsq/components/mixin/jump";
import store from '@/store/index.js'
import { ywPopupCacel } from "@/utils/popup.js";
export default {
import { getLpb } from "@/api/lpcx.js";
import chCpn from "./ch.vue";
import zdyCpn from "./zdys.vue";
import ljzsCpn from "./ljzs.vue";
import {
startBusinessFlow,
choiceBdcdy,
againAddSldy,
} from "@/api/workFlow.js";
import jump from "../../ywbl/ywsq/components/mixin/jump";
import store from "@/store/index.js";
import { ywPopupCacel } from "@/utils/popup.js";
export default {
mixins: [jump],
provide () {
provide() {
return {
openMenu: this.openMenu,
selectAll: this.selectAllObj,
changeChoosedObj: this.changeChoosedObj,
clearChangeChoosedObj: this.clearChangeChoosedObj,
getBsmList: this.getBsmList
getBsmList: this.getBsmList,
};
},
name: "",
......@@ -79,42 +123,10 @@
},
sqywInfo: {
type: Object,
default: () => { }
},
name: "",
components: { chCpn, zdyCpn, ljzsCpn },
props: {
zrzbsm: {
type: String,
default: "",
},
lpbParent: {
type: String,
default: "isLpb",
},
isHb: {
type: Boolean,
default: true,
},
onlyShow: {
type: Boolean,
default: true,
},
showSave: {
type: Boolean,
default: false,
default: () => {},
},
scyclx: {
type: Number,
default: 0,
},
sqywInfo: {
type: Object,
default: () => { }
},
isJump: { type: Boolean, default: false },
},
data () {
data() {
return {
lpbData: {
ljzs: [],
......@@ -133,61 +145,89 @@
// 改变户选中状态
changeChoosedObj: {
bsms: [],
color: ''
color: "",
},
// 选中户bsm合集
bsmList: [],
loading: false,
};
},
mounted () {
this.scyclx ? this.getLpb(this.zrzbsm, this.scyclx) : this.getLpb(this.zrzbsm);
mounted() {
this.scyclx
? this.getLpb(this.zrzbsm, this.scyclx)
: this.getLpb(this.zrzbsm);
window.lpbContent = this;
},
methods: {
/**
* @description: 获取当前楼盘表选中户信息
* @param {Array} bsmList
* @author: renchao
*/
getBsmList(bsmList, compFlag) {
// 根据本次传入的组件标识删除之前对应组件标识存入hbsmList的数据
this.bsmList = this.bsmList.filter((i) => i.flag != compFlag);
// 合并本次数据
this.bsmList = this.bsmList.concat([
...new Map(bsmList.map((item) => [item.bdcdyh, item])).values(),
]);
// })
},
/**
* @description: 保存当前楼盘表
* @author: renchao
*/
saveLpb () {
saveLpb() {
if (this.bsmList.length == 0) {
this.$message.error("请至少选择一条数据");
return;
}
this.loading = true;
store.dispatch("user/reMenuRefresh", false);
againAddSldy({
bsmSqyw: this.sqywInfo.bsmSqyw,
bsmSlsq: this.sqywInfo.bsmSlsq,
bdcdysz: this.bsmList,
sjlx: "houses"
}).then((res) => {
this.loading = false
sjlx: "houses",
})
.then((res) => {
this.loading = false;
if (res.code == 200) {
this.$message({
showClose: true,
message: '添加成功',
type: 'success'
})
message: "添加成功",
type: "success",
});
if (!this.isJump) {
this.jump(res.result, this.sqywInfo.djywbm)
} else {
store.dispatch('user/refreshPage', true);
this.jump(res.result, this.sqywInfo.djywbm);
}
store.dispatch("user/refreshPage", true);
//this.close();
this.$popupCacel();
} else {
if (res.result && res.result.length > 0) {
this.$popup("申请错误明细", "components/ywdialog", { width: '36%', formData: { result: res.result } })
this.$popup("申请错误明细", "components/ywdialog", {
width: "36%",
formData: { result: res.result },
});
} else {
if (res.result && res.result.length > 0) {
this.$popup("申请错误明细", "components/ywdialog", { width: '36%', formData: { result: res.result } })
this.$popup("申请错误明细", "components/ywdialog", {
width: "36%",
formData: { result: res.result },
});
} else {
this.$popup("申请错误明细", "components/ywdialog", { width: '36%', formData: { message: res.message } })
this.$popup("申请错误明细", "components/ywdialog", {
width: "36%",
formData: { message: res.message },
});
}
}
}
}).catch(() => {
this.loading = false
})
.catch(() => {
this.loading = false;
});
// todo 调用保存接口 传入参数待定
//console.log(this.bsmList,'this.bsmList');
// 保存成功后关闭弹框
......@@ -200,7 +240,7 @@
* @param {*} color
* @author: renchao
*/
changeChoosed (bsms, color) {
changeChoosed(bsms, color) {
this.changeChoosedObj.bsms = bsms;
this.changeChoosedObj.color = color;
},
......@@ -208,7 +248,7 @@
* @description: clearChangeChoosedObj
* @author: renchao
*/
clearChangeChoosedObj () {
clearChangeChoosedObj() {
this.changeChoosedObj.bsms = [];
},
//全选户
......@@ -217,7 +257,7 @@
* @param {*} val
* @author: renchao
*/
zdySelectAll (val) {
zdySelectAll(val) {
this.selectAllObj.selectAll = val;
},
//获取楼盘表数据
......@@ -228,7 +268,7 @@
* @param {*} actual
* @author: renchao
*/
getLpb (zrzbsm, scyclx, actual) {
getLpb(zrzbsm, scyclx, actual) {
if (!zrzbsm) {
this.$message({
message: "暂无楼盘表",
......@@ -239,8 +279,11 @@
if (res.code == 200) {
if (scyclx) {
if (res.result.syclx == "1") {
res.result.lpb.ljzs = res.result.lpb.ljzs.sort(this.compare("place"));
this.lpbData = res.result.lpb == null ? this.lpbData : res.result.lpb;
res.result.lpb.ljzs = res.result.lpb.ljzs.sort(
this.compare("place")
);
this.lpbData =
res.result.lpb == null ? this.lpbData : res.result.lpb;
}
} else {
this.$message({
......@@ -256,7 +299,6 @@
}
});
}
},
//户右键点击事件
/**
......@@ -266,7 +308,7 @@
* @param {*} type
* @author: renchao
*/
openMenu (e, item, type) {
openMenu(e, item, type) {
this.lpbChLeft = e.pageX - 96;
this.lpbChTop = e.pageY - 23;
// this.lpbChVisible = true;
......@@ -276,7 +318,7 @@
* @description: 关闭户右键菜单
* @author: renchao
*/
closeMenu () {
closeMenu() {
this.lpbChVisible = false;
},
//右键菜单点击
......@@ -284,7 +326,7 @@
* @description: 右键菜单点击
* @author: renchao
*/
menuClick () {
menuClick() {
this.closeMenu();
},
/**
......@@ -292,7 +334,7 @@
* @param {*} property
* @author: renchao
*/
compare (property) {
compare(property) {
return function (a, b) {
var value1 = a[property];
var value2 = b[property];
......@@ -303,7 +345,7 @@
* @description: submitForm
* @author: renchao
*/
submitForm () {
submitForm() {
if (this.bsmList.length == 0) {
this.$message.error("请至少选择一条数据");
return;
......@@ -312,60 +354,68 @@
startBusinessFlow({
bsmSqyw: this.sqywInfo.bsmSqyw,
bdcdysz: this.bsmList,
}).then((res) => {
this.loading = false
})
.then((res) => {
this.loading = false;
if (res.code == 200) {
this.$message({
showClose: true,
message: '发起申请成功',
type: 'success'
})
message: "发起申请成功",
type: "success",
});
if (!this.isJump) {
this.jump(res.result, this.sqywInfo.djywbm)
this.jump(res.result, this.sqywInfo.djywbm);
} else {
store.dispatch('user/refreshPage', true);
store.dispatch("user/refreshPage", true);
}
this.close()
this.close();
} else {
if (res.result && res.result.length > 0) {
this.$popup("申请错误明细", "components/ywdialog", { width: '36%', formData: { result: res.result } })
this.$popup("申请错误明细", "components/ywdialog", {
width: "36%",
formData: { result: res.result },
});
} else {
this.$popup("申请错误明细", "components/ywdialog", { width: '36%', formData: { message: res.message } })
this.$popup("申请错误明细", "components/ywdialog", {
width: "36%",
formData: { message: res.message },
});
}
}
}).catch(() => {
this.loading = false
})
.catch(() => {
this.loading = false;
});
},
/**
* @description: close
* @param {*} val
* @author: renchao
*/
close () {
ywPopupCacel()
close() {
ywPopupCacel();
},
},
computed: {
lpbContentHeight () {
return this.onlyShow ? 32 : 76
lpbContentHeight() {
return this.onlyShow ? 32 : 76;
// return 76
}
},
},
watch: {
//户右键菜单显示时,监听到鼠标点击时关闭户右键菜单
lpbChVisible (value) {
lpbChVisible(value) {
if (value) {
document.body.addEventListener("click", this.closeMenu);
} else {
document.body.removeEventListener("click", this.closeMenu);
}
}
},
};
},
};
</script>
<style scoped lang="scss">
.lpbContent-wrap {
.lpbContent-wrap {
width: 100%;
height: 100%;
overflow: hidden;
......@@ -437,5 +487,5 @@
background: #ffffff;
}
}
}
}
</style>
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2024-02-02 16:52:02
* @LastEditTime: 2024-03-07 09:52:35
-->
<!-- 批量删除弹框 -->
<template>
......@@ -65,7 +65,6 @@
}
},
methods: {
// 批量删除确定按钮
/**
* @description: 批量删除确定按钮
* @author: renchao
......@@ -74,6 +73,7 @@
var formdata = new FormData();
formdata.append("bsmSldyList", this.selectBdcdy);
formdata.append("bsmSlsq", this.formData.bsmSlsq);
store.dispatch('user/refreshPage', false);
deleteSlbdcdy(formdata).then(res => {
if (res.code == 200) {
this.$popupCacel();
......
<!--
* @Description: workFrame左侧菜单列表-普通
* @Autor: renchao
* @LastEditTime: 2024-02-01 16:57:55
* @LastEditTime: 2024-03-07 09:54:56
-->
<template>
<div class="leftmenu" :class="{ 'animation-map-drawer': isShowdrawer }">
......@@ -84,7 +84,7 @@
isRefresh: {
handler (newVal, oldVal) {
if (newVal) {
this.loadBdcdylist(true)
this.loadBdcdylist()
}
},
immediate: true
......
......@@ -384,6 +384,19 @@
@upDateQlrxxList="upDateQlrxxList"
:disabled="viewEdit"
:gyfs="ruleForm.sldy.gyfs" />
<div v-if="ruleForm.ywrList && ruleForm.ywrList.length > 0 && ruleForm.qlxx.djlx==200">
<div class="slxx_title title-block">
义务人信息
<div class="triangle"></div>
</div>
<ywrCommonTable
v-if="ruleForm.ywrList"
:disabled="viewEdit"
:tableData="ruleForm.ywrList"
:key="key"
@upDateQlrxxList="upDateYwrxxList" />
</div>
<div class="slxx_title title-block">
登记原因
<div class="triangle"></div>
......@@ -414,6 +427,7 @@
<script>
import ywmix from "@/views/ywbl/mixin/index";
import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
import ywrCommonTable from "@/views/workflow/components/ywrCommonTable";
import tdytTable from "@/views/workflow/components/tdytTable";
import { Init, saveData } from "@/api/workflow/fwsyqFlow.js";
import { mapGetters } from "vuex";
......@@ -460,7 +474,7 @@
this.isSave = false
})
},
components: { qlrCommonTable, tdytTable },
components: { qlrCommonTable, tdytTable, ywrCommonTable},
computed: {
...mapGetters(["dictData", "flag"]),
},
......
......@@ -71,7 +71,7 @@
import { ywPopupDialog } from "@/utils/popup.js";
import { datas, sendThis } from "../javascript/selectH.js";
import { defaultParameters } from "../javascript/publicDefaultPar.js";
// import { selectHQjdc } from "@/api/ywsq.js";
import { selectHQjdc } from "@/api/ywsq.js";
import { startBusinessFlow, againAddSldy } from "@/api/workFlow.js";
export default {
mixins: [ywsqTable, jump],
......@@ -123,16 +123,16 @@
* @author: renchao
*/
queryClick () {
// this.$startLoading();
// this.queryForm.sqywbm = this.sqywInfo.djywbm;
// selectHQjdc({ ...this.queryForm, ...this.pageData }).then((res) => {
// this.$endLoading();
// if (res.code === 200) {
// let { total, records } = res.result;
// this.tableData.total = total;
// this.tableData.data = records;
// }
// });
this.$startLoading();
this.queryForm.sqywbm = this.sqywInfo.djywbm;
selectHQjdc({ ...this.queryForm, ...this.pageData }).then((res) => {
this.$endLoading();
if (res.code === 200) {
let { total, records } = res.result;
this.tableData.total = total;
this.tableData.data = records;
}
});
},
/**
* @description: submitForm
......