200b9bb8 by 赵千
2 parents a8a5f6ad f806fd45
Showing 135 changed files with 6626 additions and 4933 deletions
<!--
*
*   ┏┓   ┏┓+ +
*  ┏┛┻━━━┛┻┓ + +
*  ┃       ┃  
*  ┃   ━   ┃ ++ + + +
* ████━████ ┃+
*  ┃       ┃ +
*  ┃   ┻   ┃
*  ┃       ┃ + +
*  ┗━┓   ┏━┛
*    ┃   ┃           
*    ┃   ┃ + + + +
*    ┃   ┃
*    ┃   ┃ + 神兽保佑
*    ┃   ┃ 代码无bug
*    ┃   ┃  +         
*    ┃    ┗━━━┓ + +
*    ┃        ┣┓
*    ┃        ┏┛
*    ┗┓┓┏━┳┓┏┛ + + + +
*     ┃┫┫ ┃┫┫
*     ┗┻┛ ┗┻┛+ + + +
*
-->
# 安装依赖
npm install
# 建议不要直接使用 cnpm 安装依赖,会有各种诡异的 bug。可以通过如下操作解决 npm 下载速度慢的问题
......
{
"TITLE": "不动产登记系统",
"SERVERAPI": "/bdcdj"
}
\ No newline at end of file
......
{
"TITLE": "不动产登记系统",
"SERVERAPI": "/bdcdj"
}
\ No newline at end of file
......
{
"TITLE": "不动产登记系统",
"SERVERAPI": "service-bdcdj-th"
}
\ No newline at end of file
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-06 10:24:46
* @LastEditTime: 2023-05-16 09:50:40
-->
<!DOCTYPE html>
<html>
......@@ -18,6 +18,8 @@
</title>
</head>
<script>
window.baseUrl = location.origin || location.protocol + '//' + location.host
const authorization = "bearer AT-4-MxSrO29Coe7VTazx8uuixtqqgO-hvCB6"
fetch('<%= BASE_URL %>config.json')
.then(response => response.json())
.then(config => {
......@@ -29,9 +31,4 @@
<div id="app"></div>
</body>
</html>
<script>
window.baseUrl = location.origin || location.protocol + '//' + location.host
window.timeout = 5000
window.authorization = "bearer AT-4-MxSrO29Coe7VTazx8uuixtqqgO-hvCB6"
</script>
\ No newline at end of file
</html>
\ No newline at end of file
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:36:04
-->
<template>
<div id="app">
<router-view />
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-04-20 09:40:17
* @LastEditTime: 2023-05-16 14:04:18
*/
import request from '@/utils/request';
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
// 获取不动产权证列表
/**
* @description: 获取不动产权证列表
* @param {*} params
* @author: renchao
*/
export function getBdcqzList (params) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/bdcqz/getBdcqzList',
......@@ -14,7 +18,11 @@ export function getBdcqzList (params) {
params: params
})
}
// 获取印刷序列号
/**
* @description: 获取印刷序列号
* @param {*} params
* @author: renchao
*/
export function readYsxlh (params) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/bdcqz/readYsxlh',
......@@ -22,7 +30,11 @@ export function readYsxlh (params) {
params: params
})
}
// 缮证
/**
* @description: 缮证
* @param {*} data
* @author: renchao
*/
export function certificate (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/bdcqz/certificate',
......@@ -30,7 +42,11 @@ export function certificate (data) {
data
})
}
// 作废缮证信息
/**
* @description: 作废缮证信息
* @param {*} data
* @author: renchao
*/
export function invalidCertificate (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/bdcqz/invalidCertificate',
......@@ -38,7 +54,11 @@ export function invalidCertificate (data) {
data
})
}
//根据受理申请标识码获取所有缮证列表
/**
* @description: 根据受理申请标识码获取所有缮证列表
* @param {*} data
* @author: renchao
*/
export function getCertificateList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/bdcqz/getCertificateList',
......@@ -47,7 +67,11 @@ export function getCertificateList (data) {
})
}
//获取不动产权证对应缮证列表
/**
* @description: 获取不动产权证对应缮证列表
* @param {*} params
* @author: renchao
*/
export function getSzRecordList (params) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/bdcqz/getSzRecordList',
......@@ -56,7 +80,11 @@ export function getSzRecordList (params) {
})
}
//获取未领取的证书信息
/**
* @description: 获取未领取的证书信息
* @param {*} data
* @author: renchao
*/
export function getUnclaimedBdcqz (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/bdcqz/getUnclaimedBdcqz',
......@@ -65,7 +93,11 @@ export function getUnclaimedBdcqz (data) {
})
}
// 发证
/**
* @description: 发证
* @param {*} data
* @author: renchao
*/
export function issueCertificate (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/bdcqz/issueCertificate',
......@@ -73,7 +105,11 @@ export function issueCertificate (data) {
data
})
}
// 获取受理申请下全部不动产权证
/**
* @description: 获取受理申请下全部不动产权证
* @param {*} params
* @author: renchao
*/
export function getSlsqBdcqzList (params) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/bdcqz/getSlsqBdcqzList',
......@@ -82,7 +118,11 @@ export function getSlsqBdcqzList (params) {
})
}
// 证书预览
/**
* @description: 证书预览
* @param {*} data
* @author: renchao
*/
export function bdcqzPreview (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/bdcqz/bdcqzPreview',
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-06 09:15:02
* @LastEditTime: 2023-05-16 14:04:42
*/
import request from '@/utils/request'
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
// 材料目录明细初始化
/**
* @description: 材料目录明细初始化
* @param {*} data
* @author: renchao
*/
export function InitClml (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/clxx/InitClml',
......@@ -15,7 +19,11 @@ export function InitClml (data) {
})
}
// 材料目录明细移动
/**
* @description: 材料目录明细移动
* @param {*} data
* @author: renchao
*/
export function moveClml (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/clxx/moveClml',
......@@ -24,7 +32,11 @@ export function moveClml (data) {
})
}
// 材料目录明细保存
/**
* @description: 材料目录明细保存
* @param {*} data
* @author: renchao
*/
export function saveClml (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/clxx/saveClml',
......@@ -33,7 +45,11 @@ export function saveClml (data) {
})
}
// 材料目录批量删除
/**
* @description: 材料目录批量删除
* @param {*} params
* @author: renchao
*/
export function deleteSjClml (params) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/clxx/deleteSjClml',
......@@ -42,7 +58,11 @@ export function deleteSjClml (params) {
})
}
// 上传单个文件
/**
* @description: 上传单个文件
* @param {*} data
* @author: renchao
*/
export function uploadSjClmx (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/clxx/uploadSjClmx',
......@@ -51,7 +71,11 @@ export function uploadSjClmx (data) {
})
}
// 删除上传文件
/**
* @description: 删除上传文件
* @param {*} bsmClmx
* @author: renchao
*/
export function deleteClmx (bsmClmx) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/clxx/deleteClmx?bsmClmx=' + bsmClmx,
......@@ -59,7 +83,11 @@ export function deleteClmx (bsmClmx) {
})
}
// 材料导入
/**
* @description: 材料导入
* @param {*} data
* @author: renchao
*/
export function uploadUndo (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/clxx/uploadUndo',
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-16 13:36:44
*/
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
export function uploadUrl () {
return process.env.VUE_APP_BASE_API + SERVER.SERVERAPI + '/file/upload'
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-06 09:17:56
* @LastEditTime: 2023-05-16 14:01:26
*/
import request from '@/utils/request'
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
// 转出
/**
* @description: 转出
* @param {*} data
* @author: renchao
*/
export function completeTask (data) {
return request({
url: SERVER.SERVERAPI + '/rest/business/workFlow/completeTask',
......@@ -13,7 +17,11 @@ export function completeTask (data) {
data
})
}
// 回退表格数据
/**
* @description: 回退表格数据
* @param {*} params
* @author: renchao
*/
export function getTaskBackNode (params) {
return request({
url: SERVER.SERVERAPI + '/rest/business/workFlow/getTaskBackNode',
......@@ -21,7 +29,11 @@ export function getTaskBackNode (params) {
params: params
})
}
// 退回确认接口
/**
* @description: 退回确认接口
* @param {*} data
* @author: renchao
*/
export function sendBackTask (data) {
return request({
url: SERVER.SERVERAPI + '/rest/business/workFlow/sendBackTask',
......@@ -29,7 +41,11 @@ export function sendBackTask (data) {
data
})
}
// 获取左侧列表
/**
* @description: 获取左侧列表
* @param {*} data
* @author: renchao
*/
export function leftMenu (data) {
return request({
url: SERVER.SERVERAPI + '/rest/business/workFlow/leftMenu',
......@@ -38,7 +54,11 @@ export function leftMenu (data) {
})
}
// 获取下一环节信息
/**
* @description: 获取下一环节信息
* @param {*} params
* @author: renchao
*/
export function getNextLinkInfo (params) {
return request({
url: SERVER.SERVERAPI + '/rest/business/workFlow/getNextLinkInfo',
......@@ -47,7 +67,11 @@ export function getNextLinkInfo (params) {
});
}
//获取单元对应的环节表单信息
/**
* @description: 获取单元对应的环节表单信息
* @param {*} data
* @author: renchao
*/
export function getStepFormInfo (data) {
return request({
url: SERVER.SERVERAPI + '/rest/business/workFlow/getStepFormInfo',
......@@ -55,7 +79,11 @@ export function getStepFormInfo (data) {
data
});
}
// 环节扩展信息
/**
* @description: 环节扩展信息
* @param {*} data
* @author: renchao
*/
export function stepExpandInfo (data) {
return request({
url: SERVER.SERVERAPI + '/rest/business/workFlow/stepExpandInfo',
......@@ -64,7 +92,11 @@ export function stepExpandInfo (data) {
})
}
// 获取审批意见
/**
* @description: 获取审批意见
* @param {*} data
* @author: renchao
*/
export function getSpyjList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/opinion/getSpyjList',
......@@ -73,7 +105,11 @@ export function getSpyjList (data) {
})
}
// 保存审批意见
/**
* @description: 保存审批意见
* @param {*} data
* @author: renchao
*/
export function saveSpyj (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/opinion/saveSpyj',
......@@ -81,7 +117,11 @@ export function saveSpyj (data) {
data
})
}
// 根据受理申请保存审批意见
/**
* @description: 根据受理申请保存审批意见
* @param {*} data
* @author: renchao
*/
export function saveSpyjBySlsq (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/opinion/saveSpyjBySlsq',
......@@ -90,7 +130,11 @@ export function saveSpyjBySlsq (data) {
})
}
// 获取用户常用意见
/**
* @description: 获取用户常用意见
* @param {*} data
* @author: renchao
*/
export function getUserCommonOpinion (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/opinion/getUserCommonOpinion',
......@@ -99,7 +143,11 @@ export function getUserCommonOpinion (data) {
})
}
// 新增用户常用意见
/**
* @description: 新增用户常用意见
* @param {*} params
* @author: renchao
*/
export function addUserCommonOpinion (params) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/opinion/addUserCommonOpinion',
......@@ -108,7 +156,11 @@ export function addUserCommonOpinion (params) {
})
}
//删除常用意见
/**
* @description: 删除常用意见
* @param {*} params
* @author: renchao
*/
export function delUserCommonOpinion (params) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/opinion/delUserCommonOpinion',
......@@ -117,7 +169,11 @@ export function delUserCommonOpinion (params) {
})
}
// 登簿接口
/**
* @description: 登簿接口
* @param {*} data
* @author: renchao
*/
export function record (data) {
return request({
url: SERVER.SERVERAPI + '/rest/business/workFlow/record',
......@@ -135,7 +191,11 @@ export function stopTask (data) {
})
}
// 获取用户任务权限
/**
* @description: 获取用户任务权限
* @param {*} params
* @author: renchao
*/
export function judgeUserTaskPermission (params) {
return request({
url: SERVER.SERVERAPI + '/rest/business/workFlow/judgeUserTaskPermission',
......@@ -144,7 +204,11 @@ export function judgeUserTaskPermission (params) {
})
}
// 获取申请书数据
/**
* @description: 获取申请书数据
* @param {*} data
* @author: renchao
*/
export function getPrintApplicationInfo (data) {
return request({
url: SERVER.SERVERAPI + '/rest/business/workFlow/getPrintApplicationInfo',
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-16 15:56:15
*/
import request from '@/utils/request'
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
// 新增平台接口
/**
* @description: 新增平台接口
* @param {*} data
* @author: renchao
*/
export function addSysInterface (data) {
return request({
url: SERVER.SERVERAPI + "/rest/system/ptjk/addSysInterface",
......@@ -10,7 +20,11 @@ export function addSysInterface (data) {
})
}
// 编辑平台接口
/**
* @description: 编辑平台接口
* @param {*} data
* @author: renchao
*/
export function editSysInterface (data) {
return request({
url: SERVER.SERVERAPI + "/rest/system/ptjk/editSysInterface",
......@@ -18,7 +32,11 @@ export function editSysInterface (data) {
data
})
}
// 接口调取
/**
* @description: 接口调取
* @param {*} data
* @author: renchao
*/
export function interfaceRetrieve (data) {
return request({
url: SERVER.SERVERAPI + "/rest/system/ptjk/interfaceRetrieve",
......@@ -27,7 +45,11 @@ export function interfaceRetrieve (data) {
})
}
// 获取平台接口列表
/**
* @description: 获取平台接口列表
* @param {*} data
* @author: renchao
*/
export function getSysInterfaceList (data) {
return request({
url: SERVER.SERVERAPI + "/rest/system/ptjk/getSysInterfaceList",
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-06 09:17:41
* @LastEditTime: 2023-05-18 10:53:07
*/
import request from '@/utils/request'
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
const url = SERVER.LPBSERVERAPI + '/rest/zhcx/lpcx/'
/*
楼盘查询
*/
// 根据条件进行列表查询
const url = SERVER.SERVERAPI + '/rest/zhcx/lpcx/'
//
/**
* @description:楼盘查询- 根据条件进行列表查询
* @param {*} data
* @author: renchao
*/
export function getLpZrz (data) {
return request({
url: 'service-lpb/rest/zhcx/lpcx/getLpZrz',
......@@ -18,21 +20,33 @@ export function getLpZrz (data) {
})
}
// 获取楼盘表
/**
* @description: 获取楼盘表
* @param {*} zrzbsm
* @author: renchao
*/
export function getLpb (zrzbsm) {
return request({
url: url + 'getLpb?scyclx=1&zrzbsm=' + zrzbsm,
method: 'get'
})
}
// 获取楼盘表房屋用途,房屋性质右侧房屋用途统计数据
/**
* @description: 获取楼盘表房屋用途,房屋性质右侧房屋用途统计数据
* @param {*} zrzbsm
* @author: renchao
*/
export function getLpbFwytAndQlxz (zrzbsm) {
return request({
url: url + 'getLpbFwytAndQlxz?scyclx=1&zrzbsm=' + zrzbsm,
method: 'get'
})
}
// 获取楼盘表缺失项统计
/**
* @description: 获取楼盘表缺失项统计
* @param {*} zrzbsm
* @author: renchao
*/
export function getLpbQsxtj (zrzbsm) {
return request({
url: url + 'getLpbQsxtj?scyclx=1&zrzbsm=' + zrzbsm,
......
/*
* @Description: 登记簿详情页
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:11:14
*/
import request from '@/utils/request'
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
/*
登记簿详情页
*/
// 获取登记封面
/**
* @description: 获取登记封面
* @param {*} data
* @author: renchao
*/
export function getDjbfm (data) {
return request({
url: SERVER.SERVERAPI + '/rest/djbDetail/getDjbFm',
......@@ -12,7 +19,11 @@ export function getDjbfm (data) {
})
}
// 获取登记目录
/**
* @description: 获取登记目录
* @param {*} data
* @author: renchao
*/
export function getBdcqldjmlByBdcdyid (data) {
return request({
url: SERVER.SERVERAPI + '/rest/djbDetail/getBdcqldjmlByBdcdyid',
......@@ -21,7 +32,11 @@ export function getBdcqldjmlByBdcdyid (data) {
})
}
// 获取宗地信息
/**
* @description: 获取宗地信息
* @param {*} data
* @author: renchao
*/
export function getZdjjxxBybdcdyid (data) {
return request({
url: SERVER.SERVERAPI + '/rest/djbDetail/getZdjjxxBybdcdyid',
......@@ -30,7 +45,11 @@ export function getZdjjxxBybdcdyid (data) {
})
}
// 根据受理单元标识,获取宗地信息
/**
* @description: 根据受理单元标识,获取宗地信息
* @param {*} data
* @author: renchao
*/
export function getZdjjxxBySLdy (data) {
return request({
url: SERVER.SERVERAPI + '/rest/djbDetail/getZdjjxxBySLdy',
......@@ -39,7 +58,11 @@ export function getZdjjxxBySLdy (data) {
})
}
// 获取不动产权利及其他事项
/**
* @description: 获取不动产权利及其他事项
* @param {*} data
* @author: renchao
*/
export function getBdcqljqtsx (data) {
return request({
url: SERVER.SERVERAPI + '/rest/djbDetail/getBdcqljqtsx',
......@@ -48,7 +71,11 @@ export function getBdcqljqtsx (data) {
})
}
// 获取建设用地使用权
/**
* @description: 获取建设用地使用权
* @param {*} data
* @author: renchao
*/
export function getJsydsyqList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/djbDetail/getJsydsyqList',
......@@ -57,7 +84,11 @@ export function getJsydsyqList (data) {
})
}
// 获取房屋独幢信息集合
/**
* @description: 获取房屋独幢信息集合
* @param {*} data
* @author: renchao
*/
export function getFdcq2List (data) {
return request({
url: SERVER.SERVERAPI + '/rest/djbDetail/getFdcq2List',
......@@ -66,7 +97,11 @@ export function getFdcq2List (data) {
})
}
// 获取抵押权
/**
* @description: 获取抵押权
* @param {*} data
* @author: renchao
*/
export function getDiyaqList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/djbDetail/getDiyaqList',
......@@ -74,7 +109,11 @@ export function getDiyaqList (data) {
data
})
}
// 获取地役权
/**
* @description: 获取地役权
* @param {*} data
* @author: renchao
*/
export function getDiyiqList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/djbDetail/getDiyiqList',
......@@ -82,7 +121,11 @@ export function getDiyiqList (data) {
data
})
}
// 获取预告登记
/**
* @description: 获取预告登记
* @param {*} data
* @author: renchao
*/
export function getYgdjList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/djbDetail/getYgdjList',
......@@ -90,7 +133,11 @@ export function getYgdjList (data) {
data
})
}
// 获取异议登记
/**
* @description: 获取异议登记
* @param {*} data
* @author: renchao
*/
export function getYydjList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/djbDetail/getYydjList',
......@@ -98,7 +145,11 @@ export function getYydjList (data) {
data
})
}
// 获取查封登记
/**
* @description: 获取查封登记
* @param {*} data
* @author: renchao
*/
export function getCfdjList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/djbDetail/getCfdjList',
......@@ -106,7 +157,11 @@ export function getCfdjList (data) {
data
})
}
// 获取数据比对集合
/**
* @description: 获取数据比对集合
* @param {*} data
* @author: renchao
*/
export function getFdcqLSInfo (data) {
return request({
url: SERVER.SERVERAPI + '/rest/djbDetail/getFdcqLSInfo',
......@@ -114,7 +169,11 @@ export function getFdcqLSInfo (data) {
data
})
}
// 获取土地经营权、农用地使用权
/**
* @description: 获取土地经营权、农用地使用权
* @param {*} data
* @author: renchao
*/
export function getNydsyqList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/djbDetail/getNydsyqList',
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-16 13:49:57
*/
import request from '@/utils/request'
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
// 获取自然幢下其他户
/**
* @description: 获取自然幢下其他户
* @param {*} data
* @author: renchao
*/
export function selectOtherH (data) {
return request({
url: 'ywbl/ywsq/selectOtherH',
......@@ -10,9 +17,11 @@ export function selectOtherH (data) {
data
})
}
/*
业务办理-选择抵押权信息-根据条件进行列表查询
*/
/**
* @description: 业务办理-选择抵押权信息-根据条件进行列表查询
* @param {*} data
* @author: renchao
*/
export function selectDiyaq (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/ywsq/selectDiyaq',
......@@ -20,9 +29,11 @@ export function selectDiyaq (data) {
data
})
}
/*
业务办理-选择查封信息-根据条件进行列表查询
*/
/**
* @description: 业务办理-选择查封信息-根据条件进行列表查询
* @param {*} data
* @author: renchao
*/
export function selectCfdj (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/ywsq/selectCfdj',
......@@ -31,16 +42,22 @@ export function selectCfdj (data) {
})
}
/*
业务办理-业务申请-添加收藏业务
*/
/**
* @description: 业务办理-业务申请-添加收藏业务
* @param {*} bsmSqyw
* @author: renchao
*/
export function deleteCollectBiz (bsmSqyw) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/BusinessApply/deleteCollectBiz?bsmSqyw=' + bsmSqyw,
method: 'post'
})
}
// 国有建设用地使用权/房屋使用权 -选择不动产单元
/**
* @description: 国有建设用地使用权/房屋使用权 -选择不动产单元
* @param {*} data
* @author: renchao
*/
export function choiceBdcdy (data) {
return request({
url: SERVER.SERVERAPI + '/rest/business/workFlow/choiceBdcdy',
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-16 14:05:25
*/
import request from '@/utils/request'
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
// 获取申请查询列表
/**
* @description: 获取申请查询列表
* @param {*} data
* @author: renchao
*/
export function getSqcxPage (data) {
return request({
url: SERVER.SERVERAPI + '/rest/sqcx/jtfc/getSqcxPage',
......@@ -9,7 +18,11 @@ export function getSqcxPage (data) {
})
}
// 新增申请查询家庭房产信息
/**
* @description: 新增申请查询家庭房产信息
* @param {*} data
* @author: renchao
*/
export function addJtfcCxjgXx (data) {
return request({
url: SERVER.SERVERAPI + '/rest/sqcx/jtfc/addJtfcCxjgXx',
......@@ -18,7 +31,11 @@ export function addJtfcCxjgXx (data) {
})
}
// 新增申请查询房屋明细信息
/**
* @description: 新增申请查询房屋明细信息
* @param {*} data
* @author: renchao
*/
export function addFwmxCxjgXx (data) {
return request({
url: SERVER.SERVERAPI + '/rest/sqcx/jtfc/addFwmxCxjgXx',
......@@ -27,7 +44,11 @@ export function addFwmxCxjgXx (data) {
})
}
// 获取申请查询记录详细信息
/**
* @description: 获取申请查询记录详细信息
* @param {*} params
* @author: renchao
*/
export function getJtfcInfo (params) {
return request({
url: SERVER.SERVERAPI + '/rest/sqcx/jtfc/getJtfcInfo/',
......@@ -36,7 +57,11 @@ export function getJtfcInfo (params) {
})
}
// 获取房屋明细记录详细信息
/**
* @description: 获取房屋明细记录详细信息
* @param {*} params
* @author: renchao
*/
export function getFwmxInfo (params) {
return request({
url: SERVER.SERVERAPI + '/rest/sqcx/jtfc/getFwmxInfo/',
......@@ -45,7 +70,11 @@ export function getFwmxInfo (params) {
})
}
// 打印家庭房产
/**
* @description: 打印家庭房产
* @param {*} data
* @author: renchao
*/
export function printJtcfInfo (data) {
return request({
url: SERVER.SERVERAPI + '/rest/sqcx/jtfc/printJtcfInfo/',
......
/*
* @Description: 系统管理
* @Autor: renchao
* @LastEditTime: 2023-05-16 16:02:32
*/
import request from '@/utils/request'
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
// 上传单个文件
/**
* @description: 上传单个文件
* @param {*} data
* @author: renchao
*/
export function upload (data) {
return request({
url: SERVER.SERVERAPI + '/rest/file/upload',
......@@ -10,10 +20,11 @@ export function upload (data) {
})
}
/*
系统管理
申请业务规则API-根据条件进行列表查询
*/
/**
* @description: 申请业务规则API-根据条件进行列表查询
* @param {*} data
* @author: renchao
*/
export function getSysSqdjywBysearch (data) {
return request({
url: SERVER.SERVERAPI + '/rest/system/sysSqdjyw/getSysSqdjywBysearch',
......@@ -21,9 +32,12 @@ export function getSysSqdjywBysearch (data) {
data
})
}
/*
获取登记类型信息-申请业务规则
*/
/**
* @description: 获取登记类型信息-申请业务规则
* @param {*} id
* @author: renchao
*/
export function getDjlxInfo (id) {
return request({
url: SERVER.SERVERAPI + '/rest/system/sysSqdjyw/getDjlxInfo?parentid=' + id,
......@@ -31,9 +45,11 @@ export function getDjlxInfo (id) {
})
}
/*
获取登记类型信息-申请业务规则
*/
/**
* @description: 获取登记类型信息-申请业务规则
* @param {*} id
* @author: renchao
*/
export function getQllxByBsmSqyw (id) {
return request({
url: SERVER.SERVERAPI + '/rest/system/sysSqdjyw/getQllxByBsmSqyw?bsmSqyw=' + id,
......@@ -41,18 +57,23 @@ export function getQllxByBsmSqyw (id) {
})
}
/*
读取申请登记业务信息-申请业务规则
*/
/**
* @description: 读取申请登记业务信息-申请业务规则
* @param {*} bsmSqyw
* @author: renchao
*/
export function getSqdjywDetail (bsmSqyw) {
return request({
url: SERVER.SERVERAPI + '/rest/system/sysSqdjyw/getSqdjywDetail?bsmSqyw=' + bsmSqyw,
method: 'get'
})
}
/*
保存登记业务信息-申请业务规则
*/
/**
* @description: 保存登记业务信息-申请业务规则
* @param {*} data
* @author: renchao
*/
export function saveSqdjyw (data) {
return request({
url: SERVER.SERVERAPI + '/rest/system/sysSqdjyw/saveSqdjyw',
......@@ -61,9 +82,12 @@ export function saveSqdjyw (data) {
})
}
/*
其他及附记模板-列表详情
*/
/**
* @description: 其他及附记模板-列表详情
* @param {*} data
* @author: renchao
*/
export function sysSqywmbszSearch (data) {
return request({
url: SERVER.SERVERAPI + '/rest/system/sysSqywmbsz/search',
......@@ -71,18 +95,23 @@ export function sysSqywmbszSearch (data) {
data
})
}
/*
其他及附记模板-读取明细
*/
/**
* @description: 其他及附记模板-读取明细
* @param {*} id
* @author: renchao
*/
export function getSysSqywmbszDetailById (id) {
return request({
url: SERVER.SERVERAPI + '/rest/system/sysSqywmbsz/getSysSqywmbszDetailById?id=' + id,
method: 'get'
})
}
/*
其他及附记模板-修改申请业务模板设置
*/
/**
* @description: 其他及附记模板-修改申请业务模板设置
* @param {*} data
* @author: renchao
*/
export function updateSysSqywmbsz (data) {
return request({
url: SERVER.SERVERAPI + '/rest/system/sysSqywmbsz/updateSysSqywmbsz',
......@@ -91,8 +120,11 @@ export function updateSysSqywmbsz (data) {
})
}
// 通知
// 新增系统通知
/**
* @description: 新增系统通知
* @param {*} data
* @author: renchao
*/
export function addSysNotice (data) {
return request({
url: SERVER.SERVERAPI + '/rest/system/sysNotice/addSysNotice',
......@@ -101,7 +133,11 @@ export function addSysNotice (data) {
})
}
//编辑系统通知
/**
* @description: 编辑系统通知
* @param {*} data
* @author: renchao
*/
export function updateSysNotice (data) {
return request({
url: SERVER.SERVERAPI + '/rest/system/sysNotice/updateSysNotice',
......@@ -111,6 +147,11 @@ export function updateSysNotice (data) {
}
// 获取通知列表
/**
* @description:
* @param {*} data
* @author: renchao
*/
export function getSysNoticeList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/system/sysNotice/getSysNoticeList',
......@@ -119,7 +160,11 @@ export function getSysNoticeList (data) {
})
}
//获取法律法规列表
/**
* @description: 获取法律法规列表
* @param {*} data
* @author: renchao
*/
export function getSysPolicyList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/system/sysNotice/getSysPolicyList',
......@@ -128,7 +173,11 @@ export function getSysPolicyList (data) {
})
}
//删除系统通知
/**
* @description: 删除系统通知
* @param {*} params
* @author: renchao
*/
export function deleteSysNotice (params) {
return request({
url: SERVER.SERVERAPI + '/rest/system/sysNotice/deleteSysNotice',
......@@ -137,7 +186,11 @@ export function deleteSysNotice (params) {
})
}
//发布通知
/**
* @description: 发布通知
* @param {*} params
* @author: renchao
*/
export function publishNotice (params) {
return request({
url: SERVER.SERVERAPI + '/rest/system/sysNotice/publishNotice',
......@@ -146,7 +199,11 @@ export function publishNotice (params) {
})
}
//取消发布通知
/**
* @description: 取消发布通知
* @param {*} params
* @author: renchao
*/
export function unPublishNotice (params) {
return request({
url: SERVER.SERVERAPI + '/rest/system/sysNotice/unPublishNotice',
......@@ -155,7 +212,11 @@ export function unPublishNotice (params) {
})
}
//设置已读状态
/**
* @description: 设置已读状态
* @param {*} params
* @author: renchao
*/
export function setReadStatus (params) {
return request({
url: SERVER.SERVERAPI + '/rest/system/sysNotice/setReadStatus',
......@@ -164,7 +225,10 @@ export function setReadStatus (params) {
})
}
//一键设置已读
/**
* @description: 一键设置已读
* @author: renchao
*/
export function setAllRead () {
return request({
url: SERVER.SERVERAPI + '/rest/system/sysNotice/setAllRead',
......@@ -172,7 +236,11 @@ export function setAllRead () {
})
}
//获取打印模板列表
/**
* @description: 获取打印模板列表
* @param {*} data
* @author: renchao
*/
export function selectPrintTemplateList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/system/print/selectPrintTemplateList',
......@@ -181,7 +249,11 @@ export function selectPrintTemplateList (data) {
})
}
//新增打印模板列表
/**
* @description: 新增打印模板列表
* @param {*} data
* @author: renchao
*/
export function addPrintTemplate (data) {
return request({
url: SERVER.SERVERAPI + '/rest/system/print/addPrintTemplate',
......@@ -190,7 +262,11 @@ export function addPrintTemplate (data) {
})
}
//编辑打印模板列表
/**
* @description: 编辑打印模板列表
* @param {*} data
* @author: renchao
*/
export function editPrintTemplate (data) {
return request({
url: SERVER.SERVERAPI + '/rest/system/print/editPrintTemplate',
......@@ -199,7 +275,11 @@ export function editPrintTemplate (data) {
})
}
//删除打印模板列表
/**
* @description: 删除打印模板列表
* @param {*} params
* @author: renchao
*/
export function delPrintTemplate (params) {
return request({
url: SERVER.SERVERAPI + '/rest/system/print/delPrintTemplate',
......@@ -208,7 +288,11 @@ export function delPrintTemplate (params) {
})
}
//根据模板编号获取打印模板
/**
* @description: 根据模板编号获取打印模板
* @param {*} params
* @author: renchao
*/
export function getPrintTemplateByCode (params) {
return request({
url: SERVER.SERVERAPI + '/rest/system/print/getPrintTemplateByCode',
......
/*
* @Description: 用户首页
* @Autor: renchao
* @LastEditTime: 2023-05-16 16:06:51
*/
import request from '@/utils/request'
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
// 用户首页
// 获取首页通知公告列表
/**
* @description: 获取首页通知公告列表
* @author: renchao
*/
export function getHomeNoticeList () {
return request({
url: SERVER.SERVERAPI + '/rest/workBench/getHomeNoticeList',
method: 'get'
})
}
/**
* @description:
* @author: renchao
*/
// 获取首页待办事项
export function getHomeTodoList () {
return request({
......@@ -17,7 +27,10 @@ export function getHomeTodoList () {
})
}
//获取首页已办事项
/**
* @description: 获取首页已办事项
* @author: renchao
*/
export function getHomeDoneList () {
return request({
url: SERVER.SERVERAPI + '/rest/workBench/getHomeDoneList',
......@@ -25,7 +38,10 @@ export function getHomeDoneList () {
})
}
//获取首页常办项目
/**
* @description: 获取首页常办项目
* @author: renchao
*/
export function getHomeFrequentProjects () {
return request({
url: SERVER.SERVERAPI + '/rest/workBench/getHomeFrequentProjects',
......@@ -33,7 +49,11 @@ export function getHomeFrequentProjects () {
})
}
//保存常办项目
/**
* @description: 保存常办项目
* @param {*} data
* @author: renchao
*/
export function saveFrequentProjectsList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/workBench/saveFrequentProjectsList',
......@@ -43,7 +63,10 @@ export function saveFrequentProjectsList (data) {
}
// 获取用户信息
/**
* @description: 获取用户信息
* @author: renchao
*/
export function getUserInfo () {
return request({
url: SERVER.SERVERAPI + '/rest/user/getUserInfo',
......@@ -51,16 +74,21 @@ export function getUserInfo () {
})
}
// 获取菜单信息
/**
* @description: 获取菜单信息
* @author: renchao
*/
export function getMenuInfo () {
return request({
url: SERVER.SERVERAPI + '/rest/user/getUserAuthorizationMenus',
method: 'get',
})
}
/*
获取全部字典数据
*/
/**
* @description: 获取全部字典数据
* @author: renchao
*/
export function getAllDict () {
return request({
url: SERVER.SERVERAPI + '/rest/sys/dict/getAllDict',
......@@ -74,9 +102,12 @@ export function getQlxxDictList (data) {
data
})
}
/*
获取字典子级列表
*/
/**
* @description: 获取字典子级列表
* @param {*} bsmDict
* @author: renchao
*/
export function getChildDictList (bsmDict) {
return request({
url: SERVER.SERVERAPI + '/rest/sys/dict/getChildDictList',
......@@ -86,9 +117,12 @@ export function getChildDictList (bsmDict) {
}
})
}
/*
编辑字典数据
*/
/**
* @description: 编辑字典数据
* @param {*} data
* @author: renchao
*/
export function editDictNode (data) {
return request({
url: SERVER.SERVERAPI + '/rest/sys/dict/editDictNode',
......@@ -97,9 +131,11 @@ export function editDictNode (data) {
})
}
/*
刷新字典缓存
*/
/**
* @description: 刷新字典缓存
* @author: renchao
*/
export function refreshDictCache () {
return request({
url: SERVER.SERVERAPI + '/rest/sys/dict/refreshDictCache',
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-04-20 09:39:44
* @LastEditTime: 2023-05-17 10:25:58
*/
import request from '@/utils/request'
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
//批量初始化
/**
* @description: 批量初始化
* @param {*} data
* @author: renchao
*/
export function BatchInit (data) {
let apiUrl = "";
switch (data.get("djlx")) {
......@@ -27,7 +31,11 @@ export function BatchInit (data) {
})
}
// 数据保存
/**
* @description: 数据保存
* @param {*} data
* @author: renchao
*/
export function saveData (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/cfdj/saveData',
......@@ -36,7 +44,11 @@ export function saveData (data) {
})
}
// 批量数据保存
/**
* @description: 批量数据保存
* @param {*} data
* @author: renchao
*/
export function batchSaveData (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/cfdj/batchSaveData',
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:30:47
*/
import request from '@/utils/request'
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
// 初始化内容
/**
* @description: 初始化内容
* @param {*} data
* @author: renchao
*/
export function Init (data) {
let apiUrl = "";
switch (data.get("djlx")) {
......@@ -33,7 +42,12 @@ export function Init (data) {
data
})
}
// 受理信息保存
/**
* @description: 受理信息保存
* @param {*} data
* @param {*} djlx
* @author: renchao
*/
export function saveData (data, djlx) {
let apiUrl = "/rest/ywbl/dyaq/saveData";
if (djlx == "400") {
......@@ -46,7 +60,12 @@ export function saveData (data, djlx) {
})
}
// 流程图
/**
* @description: 流程图
* @param {*} bsmSlsq
* @param {*} bestepid
* @author: renchao
*/
export function getWorkFlowImage (bsmSlsq, bestepid) {
return request({
url: SERVER.SERVERAPI + '/rest/business/workFlow/getWorkFlowImage',
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:30:58
*/
import request from '@/utils/request'
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
// 初始化内容
/**
* @description: 初始化内容
* @param {*} data
* @author: renchao
*/
export function Init (data) {
let apiUrl = "";
switch (data.get("djlx")) {
......@@ -32,7 +41,11 @@ export function Init (data) {
data
})
}
// 首次登记提交
/**
* @description: 首次登记提交
* @param {*} data
* @author: renchao
*/
export function saveBatchData (data) {
return request({
url: SERVER.SERVERAPI + "/rest/ywbl/fdcq2lr/saveBatchData",
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:31:23
*/
import request from '@/utils/request'
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
......@@ -33,7 +38,11 @@ export function Init (data) {
data
})
}
// 受理信息保存
/**
* @description: 受理信息保存
* @param {*} data
* @author: renchao
*/
export function saveData (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/jsydsyqlr/saveData',
......@@ -42,7 +51,12 @@ export function saveData (data) {
})
}
// 流程图
/**
* @description: 流程图
* @param {*} bsmSlsq
* @param {*} bestepid
* @author: renchao
*/
export function getWorkFlowImage (bsmSlsq, bestepid) {
return request({
url: SERVER.SERVERAPI + '/rest/business/workFlow/getWorkFlowImage',
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:32:29
*/
import request from '@/utils/request'
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:32:37
*/
import request from '@/utils/request'
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
// 初始化内容
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:32:41
*/
import request from '@/utils/request'
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
// 初始化内容
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:32:45
*/
import request from '@/utils/request'
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-16 16:07:10
*/
import request from '@/utils/request'
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
/*
系统监控 -获取错误日志列表
*/
/**
* @description: 系统监控 -获取错误日志列表
* @param {*} data
* @author: renchao
*/
export function getErrorLogList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/xtjk/view/getErrorLogList',
......@@ -11,9 +18,12 @@ export function getErrorLogList (data) {
})
}
/*
系统监控 -获取操作日志列表
*/
/**
* @description: 系统监控 -获取操作日志列表
* @param {*} data
* @author: renchao
*/
export function getOperationLogList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/xtjk/view/getOperationLogList',
......@@ -22,9 +32,10 @@ export function getOperationLogList (data) {
})
}
/*
系统监控 -主机监控
*/
/**
* @description: 系统监控 -主机监控
* @author: renchao
*/
export function getServerInfo () {
return request({
url: SERVER.SERVERAPI + '/rest/xtjk/view/getServerInfo',
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:13:24
*/
import request from '@/utils/request'
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
/*
业务办理-获取收藏业务集合
*/
/**
* @description: 业务办理-获取收藏业务集合
* @author: renchao
*/
export function getCollectBiz () {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/BusinessApply/getCollectBiz',
......@@ -10,18 +18,22 @@ export function getCollectBiz () {
})
}
/*
业务办理-获取左侧菜单
*/
/**
* @description: 业务办理-获取左侧菜单
* @author: renchao
*/
export function getleftMenu () {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/BusinessApply/getleftMenu',
method: 'post'
})
}
/*
业务办理-获取下个节点内容
*/
/**
* @description: 业务办理-获取下个节点内容
* @param {*} bsmSqyw
* @author: renchao
*/
export function getNextNode (bsmSqyw) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/BusinessApply/getNextNode?parentid=' + bsmSqyw,
......@@ -29,9 +41,11 @@ export function getNextNode (bsmSqyw) {
})
}
/*
业务办理-选择单元-根据条件进行列表查询-国有建设用地使用权、房屋所有权(首次登记)
*/
/**
* @description: 业务办理-选择单元-根据条件进行列表查询-国有建设用地使用权、房屋所有权(首次登记)
* @param {*} data
* @author: renchao
*/
export function selectScBdcdy (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/ywsq/selectScBdcdy',
......@@ -52,7 +66,11 @@ export function selectScBdcdy (data) {
// })
// }
// 待办箱列表查询接口
/**
* @description: 待办箱列表查询接口
* @param {*} data
* @author: renchao
*/
export function searchTaskToDo (data) {
return request({
url: SERVER.SERVERAPI + '/rest/workBox/search/searchTaskToDo',
......@@ -60,7 +78,11 @@ export function searchTaskToDo (data) {
data
})
}
// 待办箱/不动产单元删除接口
/**
* @description: 待办箱/不动产单元删除接口
* @param {*} data
* @author: renchao
*/
export function deleteFlow (data) {
return request({
url: SERVER.SERVERAPI + '/rest/business/workFlow/deleteFlow',
......@@ -68,9 +90,11 @@ export function deleteFlow (data) {
data
})
}
/*
业务办理-发起业务申请流程
*/
/**
* @description: 业务办理-发起业务申请流程
* @param {*} data
* @author: renchao
*/
export function startBusinessFlow (data) {
return request({
url: SERVER.SERVERAPI + '/rest/business/workFlow/startBusinessFlow',
......@@ -78,9 +102,12 @@ export function startBusinessFlow (data) {
data
})
}
/*
已办箱列表查询接口
*/
/**
* @description: 已办箱列表查询接口
* @param {*} data
* @author: renchao
*/
export function searchTaskDone (data) {
return request({
url: SERVER.SERVERAPI + '/rest/workBox/search/searchTaskDone',
......@@ -88,9 +115,11 @@ export function searchTaskDone (data) {
data
})
}
/*
业务办理-选择权利信息-根据条件进行列表查询
*/
/**
* @description: 业务办理-选择权利信息-根据条件进行列表查询
* @param {*} data
* @author: renchao
*/
export function selectQlxx (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/ywsq/selectQlxx',
......@@ -98,9 +127,12 @@ export function selectQlxx (data) {
data
})
}
/*
业务办理-选择抵押权信息-根据条件进行列表查询
*/
/**
* @description: 业务办理-选择抵押权信息-根据条件进行列表查询
* @param {*} data
* @author: renchao
*/
export function selectDiyaq (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/ywsq/selectDiyaq',
......@@ -108,9 +140,12 @@ export function selectDiyaq (data) {
data
})
}
/*
业务办理-选择查封信息-根据条件进行列表查询
*/
/**
* @description: 业务办理-选择查封信息-根据条件进行列表查询
* @param {*} data
* @author: renchao
*/
export function selectCfdj (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/ywsq/selectCfdj',
......@@ -118,25 +153,35 @@ export function selectCfdj (data) {
data
})
}
/*
业务办理-业务申请-添加收藏业务
*/
/**
* @description: 业务办理-业务申请-添加收藏业务
* @param {*} bsmSqyw
* @author: renchao
*/
export function addCollectBiz (bsmSqyw) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/BusinessApply/addCollectBiz?bsmSqyw=' + bsmSqyw,
method: 'post'
})
}
/*
业务办理-业务申请-添加收藏业务
*/
/**
* @description: 业务办理-业务申请-添加收藏业务
* @param {*} bsmSqyw
* @author: renchao
*/
export function deleteCollectBiz (bsmSqyw) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/BusinessApply/deleteCollectBiz?bsmSqyw=' + bsmSqyw,
method: 'post'
})
}
// 国有建设用地使用权/房屋使用权 -选择不动产单元
/**
* @description: 国有建设用地使用权/房屋使用权 -选择不动产单元
* @param {*} data
* @author: renchao
*/
export function choiceBdcdy (data) {
return request({
url: SERVER.SERVERAPI + '/rest/business/workFlow/choiceBdcdy',
......@@ -145,7 +190,11 @@ export function choiceBdcdy (data) {
})
}
// 申请列表删除
/**
* @description: 申请列表删除
* @param {*} data
* @author: renchao
*/
export function deleteBdcdy (data) {
return request({
url: SERVER.SERVERAPI + '/rest/business/workFlow/deleteBdcdy',
......@@ -154,7 +203,11 @@ export function deleteBdcdy (data) {
})
}
// 获取自然幢下其他户
/**
* @description: 获取自然幢下其他户
* @param {*} data
* @author: renchao
*/
export function selectOtherH (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/ywsq/selectOtherH',
......@@ -163,7 +216,12 @@ export function selectOtherH (data) {
})
}
// 认领任务
/**
* @description: 认领任务
* @param {*} bsmSlsq
* @param {*} bestepid
* @author: renchao
*/
export function claimTask (bsmSlsq, bestepid) {
return request({
url: SERVER.SERVERAPI + '/rest/business/workFlow/claimTask?bsmSlsq=' + bsmSlsq + '&bestepid=' + bestepid,
......@@ -171,7 +229,12 @@ export function claimTask (bsmSlsq, bestepid) {
})
}
// 取消认领任务
/**
* @description: 取消认领任务
* @param {*} bsmSlsq
* @param {*} bestepid
* @author: renchao
*/
export function unClaimTask (bsmSlsq, bestepid) {
return request({
url: SERVER.SERVERAPI + '/rest/business/workFlow/unClaimTask?bsmSlsq=' + bsmSlsq + '&bestepid=' + bestepid,
......@@ -179,7 +242,11 @@ export function unClaimTask (bsmSlsq, bestepid) {
})
}
// 业务办理-选择农用地信息-根据条件进行列表查询
/**
* @description: 业务办理-选择农用地信息-根据条件进行列表查询
* @param {*} data
* @author: renchao
*/
export function selectNydsyqQlxx (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/ywsq/selectNydsyqQlxx',
......@@ -188,16 +255,31 @@ export function selectNydsyqQlxx (data) {
})
}
/**
* @description: 业务办理-选择单元-查询宗地基本信息
* @param {*} data
* @author: renchao
*/
export function selectZdjbxx (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/ywsq/selectZdjbxx',
method: 'post',
data
})
}
/*
业务办理-选择单元-查询宗地基本信息
*/
export function selectZdjbxx (data) {
export function selectZdjbxxSplitMergeLast (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/ywsq/selectZdjbxx',
url: SERVER.SERVERAPI + '/rest/ywbl/ywsq/selectZdjbxxSplitMergeLast',
method: 'post',
data
})
}
/*
业务办理-选择单元-查询自然幢信息
*/
......@@ -209,9 +291,11 @@ export function selectZrz (data) {
})
}
/*
业务办理-选择单元-查询多幢幢信息
*/
/**
* @description: 选择单元-查询多幢幢信息
* @param {*} data
* @author: renchao
*/
export function selectDz (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/ywsq/selectDz',
......@@ -232,12 +316,26 @@ export function selectH (data) {
})
}
/**
* @description: 业务办理-选择单元-查询建设用地、宅基地信息
* @param {*} data
* @author: renchao
*/
export function selectJsydQlxx (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/ywsq/selectJsydQlxx',
method: 'post',
data
})
}
/*
业务办理-选择单元-查询建设用地、宅基地信息
*/
export function selectJsydQlxx (data) {
export function selectJsydQlxxSplitMergeBefore (data) {
return request({
url: SERVER.SERVERAPI + '/rest/ywbl/ywsq/selectJsydQlxx',
url: SERVER.SERVERAPI + '/rest/ywbl/ywsq/selectJsydQlxxSplitMergeBefore',
method: 'post',
data
})
......
/*
* @Description: 综合查询-登记簿查询
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:23:50
*/
import request from '@/utils/request'
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
/*
综合查询
*/
/*
登记簿查询
*/
// 根据条件进行列表查询
/**
* @description: 根据条件进行列表查询
* @param {*} data
* @author: renchao
*/
export function getDjbBysearch (data) {
return request({
url: SERVER.SERVERAPI + '/rest/zhcx/search/qlxx/getDjbBysearch',
......@@ -16,7 +20,11 @@ export function getDjbBysearch (data) {
})
}
// 获取登记封面
/**
* @description: 获取登记封面
* @param {*} qlbsm
* @author: renchao
*/
export function getDjbfm (qlbsm) {
return request({
url: SERVER.SERVERAPI + '/rest/zhcx/djbcx/djbfm/' + qlbsm,
......@@ -24,7 +32,11 @@ export function getDjbfm (qlbsm) {
})
}
// 获取登记目录
/**
* @description: 获取登记目录
* @param {*} data
* @author: renchao
*/
export function getBdcqldjmlByBdcdyid (data) {
return request({
url: SERVER.SERVERAPI + '/rest/zhcx/djbcx/getBdcqldjmlByBdcdyid',
......@@ -33,7 +45,11 @@ export function getBdcqldjmlByBdcdyid (data) {
})
}
// 获取宗地信息
/**
* @description: 获取宗地信息
* @param {*} qlbsm
* @author: renchao
*/
export function getZdjbxx (qlbsm) {
return request({
url: SERVER.SERVERAPI + '/rest/zhcx/djbcx/zdjbxx/' + qlbsm,
......@@ -41,7 +57,11 @@ export function getZdjbxx (qlbsm) {
})
}
// 获取宗地信息
/**
* @description: 获取宗地信息
* @param {*} data
* @author: renchao
*/
export function getZdjjxxBybdcdyid (data) {
return request({
url: SERVER.SERVERAPI + '/rest/zhcx/djbcx/getZdjjxxBybdcdyid',
......@@ -50,7 +70,11 @@ export function getZdjjxxBybdcdyid (data) {
})
}
// 获取宗地信息
/**
* @description: 获取宗地信息
* @param {*} data
* @author: renchao
*/
export function getZdjjxxBySLdy (data) {
return request({
url: SERVER.SERVERAPI + '/rest/zhcx/djbcx/getZdjjxxBybdcdyid',
......@@ -59,7 +83,11 @@ export function getZdjjxxBySLdy (data) {
})
}
// 获取不动产权利及其他事项
/**
* @description: 获取不动产权利及其他事项
* @param {*} data
* @author: renchao
*/
export function getBdcqljqtsx (data) {
return request({
url: SERVER.SERVERAPI + '/rest/zhcx/djbcx/getBdcqljqtsx',
......@@ -68,7 +96,11 @@ export function getBdcqljqtsx (data) {
})
}
// 获取不动产权利及其他事项页面信息
/**
* @description: 获取不动产权利及其他事项页面信息
* @param {*} qlbsm
* @author: renchao
*/
export function getQlname (qlbsm) {
return request({
url: SERVER.SERVERAPI + '/rest/zhcx/djbcx/qlname/' + qlbsm,
......@@ -76,7 +108,11 @@ export function getQlname (qlbsm) {
})
}
// 获取权利详细信息
/**
* @description: 获取权利详细信息
* @param {*} qlbsm
* @author: renchao
*/
export function getDetail (qlbsm) {
return request({
url: SERVER.SERVERAPI + '/rest/zhcx/djbcx/detail/' + qlbsm,
......@@ -84,7 +120,11 @@ export function getDetail (qlbsm) {
})
}
// 获取建设用地使用权
/**
* @description: 获取建设用地使用权
* @param {*} data
* @author: renchao
*/
export function getJsydsyqList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/zhcx/djbcx/getJsydsyqList',
......@@ -92,7 +132,11 @@ export function getJsydsyqList (data) {
data
})
}
// 获取抵押权
/**
* @description: 获取抵押权
* @param {*} data
* @author: renchao
*/
export function getDiyaqList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/zhcx/djbcx/getDiyaqList',
......@@ -100,7 +144,11 @@ export function getDiyaqList (data) {
data
})
}
// 获取地役权
/**
* @description: 获取地役权
* @param {*} data
* @author: renchao
*/
export function getDiyiqList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/zhcx/djbcx/getDiyiqList',
......@@ -108,7 +156,11 @@ export function getDiyiqList (data) {
data
})
}
// 获取预告登记
/**
* @description: 获取预告登记
* @param {*} data
* @author: renchao
*/
export function getYgdjList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/zhcx/djbcx/getYgdjList',
......@@ -116,7 +168,11 @@ export function getYgdjList (data) {
data
})
}
// 获取异议登记
/**
* @description: 获取异议登记
* @param {*} data
* @author: renchao
*/
export function getYydjList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/zhcx/djbcx/getYydjList',
......@@ -124,7 +180,11 @@ export function getYydjList (data) {
data
})
}
// 获取查封登记
/**
* @description: 获取查封登记
* @param {*} data
* @author: renchao
*/
export function getCfdjList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/zhcx/djbcx/getCfdjList',
......@@ -132,7 +192,11 @@ export function getCfdjList (data) {
data
})
}
// 进度查询列表
/**
* @description: 进度查询列表
* @param {*} data
* @author: renchao
*/
export function getJdcxBysearch (data) {
return request({
url: SERVER.SERVERAPI + '/rest/zhcx/search/getJdcxBysearch',
......@@ -141,7 +205,11 @@ export function getJdcxBysearch (data) {
})
}
// 证书领取查询
/**
* @description: 证书领取查询
* @param {*} data
* @author: renchao
*/
export function getBdcqzReceiveList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/zhcx/search/getBdcqzReceiveList',
......@@ -150,7 +218,11 @@ export function getBdcqzReceiveList (data) {
})
}
// 在建工程抵押查询
/**
* @description: 在建工程抵押查询
* @param {*} data
* @author: renchao
*/
export function getZjgcdyList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/zhcx/search/getZjgcdyList',
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:24:24
*/
import request from '@/utils/request'
let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
/*
证书管理-获取序列号
*/
/**
* @description: 证书管理-获取序列号
* @param {*} params
* @author: renchao
*/
export function getSysSerialSingle (params) {
return request({
url: SERVER.SERVERAPI + '/rest/system/sysSerial/getSysSerialSingle',
......@@ -10,9 +17,11 @@ export function getSysSerialSingle (params) {
params: params
})
}
/*
证书管理-证书入库列表
*/
/**
* @description: 证书管理-证书入库列表
* @param {*} data
* @author: renchao
*/
export function getZsglrkList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/sys/zsgl/getZsglrkList',
......@@ -20,9 +29,11 @@ export function getZsglrkList (data) {
data
})
}
/*
证书管理-新增证书入库
*/
/**
* @description: 证书管理-新增证书入库
* @param {*} data
* @author: renchao
*/
export function zsrk (data) {
return request({
url: SERVER.SERVERAPI + '/rest/sys/zsgl/zsrk',
......@@ -30,9 +41,11 @@ export function zsrk (data) {
data
})
}
/*
证书管理-删除证书入库
*/
/**
* @description: 证书管理-删除证书入库
* @param {*} params
* @author: renchao
*/
export function removeZsgl (params) {
return request({
url: SERVER.SERVERAPI + '/rest/sys/zsgl/removeZsgl',
......@@ -40,9 +53,11 @@ export function removeZsgl (params) {
params: params
})
}
/*
证书管理-审核证书入库
*/
/**
* @description: 证书管理-审核证书入库
* @param {*} params
* @author: renchao
*/
export function verifyZsrk (params) {
return request({
url: SERVER.SERVERAPI + '/rest/sys/zsgl/verifyZsrk',
......@@ -50,9 +65,11 @@ export function verifyZsrk (params) {
params: params
})
}
/*
证书管理-证书分发列表
*/
/**
* @description: 证书管理-证书分发列表
* @param {*} data
* @author: renchao
*/
export function getZsglffList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/sys/zsgl/getZsglffList',
......@@ -60,18 +77,21 @@ export function getZsglffList (data) {
data
})
}
/*
证书管理-证书分发列表
*/
/**
* @description: 证书管理-证书分发列表
* @author: renchao
*/
export function getZsStartNo () {
return request({
url: SERVER.SERVERAPI + '/rest/sys/zsgl/getZsStartNo',
method: 'get'
})
}
/*
证书管理-获取结束序列号
*/
/**
* @description: 证书管理-获取结束序列号
* @param {*} params
* @author: renchao
*/
export function getZsEndNo (params) {
return request({
url: SERVER.SERVERAPI + '/rest/sys/zsgl/getZsEndNo',
......@@ -79,9 +99,12 @@ export function getZsEndNo (params) {
params
})
}
/*
证书管理-新增证书分发
*/
/**
* @description: 证书管理新增证书分发
* @param {*} data
* @author: renchao
*/
export function zsff (data) {
return request({
url: SERVER.SERVERAPI + '/rest/sys/zsgl/zsff',
......@@ -89,9 +112,12 @@ export function zsff (data) {
data
})
}
/*
证书管理-确定分发
*/
/**
* @description: 证书管理-确定分发
* @param {*} params
* @author: renchao
*/
export function confirmZsff (params) {
return request({
url: SERVER.SERVERAPI + '/rest/sys/zsgl/confirmZsff',
......@@ -99,9 +125,12 @@ export function confirmZsff (params) {
params: params
})
}
/*
证书管理-证书使用情况
*/
/**
* @description: 证书管理-证书使用情况
* @param {*} data
* @author: renchao
*/
export function getZssyqkList (data) {
return request({
url: SERVER.SERVERAPI + '/rest/sys/zsgl/getZssyqkList',
......@@ -109,9 +138,12 @@ export function getZssyqkList (data) {
data
})
}
/*
证书管理-证书使用情况详情
*/
/**
* @description: 证书使用情况详情
* @param {*} params
* @author: renchao
*/
export function getZssyqkInfo (params) {
return request({
url: SERVER.SERVERAPI + '/rest/sys/zsgl/getZssyqkInfo',
......@@ -119,9 +151,11 @@ export function getZssyqkInfo (params) {
params
})
}
/*
证书管理-证书入库/分发详情
*/
/**
* @description: 证书入库/分发详情
* @param {*} params
* @author: renchao
*/
export function getZsglInfo (params) {
return request({
url: SERVER.SERVERAPI + '/rest/sys/zsgl/getZsglInfo',
......
......@@ -83,7 +83,7 @@
},
minHeight: {
type: Number,
default: undefined
default: 160
},
heightNumSetting: {
type: Boolean,
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-08 15:19:43
-->
<template>
<section class="app-main">
<transition name="fade-transform" mode="out-in">
......@@ -6,26 +11,25 @@
</section>
</template>
<script>
export default {
name: 'AppMain',
computed: {
key () {
return this.$route.path
export default {
name: 'AppMain',
computed: {
key () {
return this.$route.path
},
},
},
}
}
</script>
<style lang="scss" scoped>
.hasTagsView {
.app-main {
height: calc(100% - 41px);
overflow-x: auto;
padding: 5px;
box-sizing: border-box;
background-color: #EDF1F7;
box-sizing: border-box;
.hasTagsView {
.app-main {
height: calc(100% - 50px);
overflow-x: auto;
padding: 5px;
box-sizing: border-box;
background-color: #edf1f7;
box-sizing: border-box;
}
}
}
</style>
\ No newline at end of file
......
......@@ -19,278 +19,277 @@
</template>
<script>
import ScrollPane from './ScrollPane'
import path from 'path'
import ScrollPane from './ScrollPane'
import path from 'path'
export default {
components: { ScrollPane },
data () {
return {
visible: false,
top: 0,
left: 0,
selectedTag: {},
affixTags: []
}
},
computed: {
visitedViews () {
return this.$store.state.tagsView.visitedViews
},
routes () {
return this.$store.state.permission.routes
}
},
watch: {
$route () {
this.addTags()
this.moveToCurrentTag()
},
visible (value) {
if (value) {
document.body.addEventListener('click', this.closeMenu)
} else {
document.body.removeEventListener('click', this.closeMenu)
export default {
components: { ScrollPane },
data () {
return {
visible: false,
top: 0,
left: 0,
selectedTag: {},
affixTags: []
}
}
},
mounted () {
this.initTags()
this.addTags()
},
methods: {
isActive (route) {
return route.path === this.$route.path
},
isAffix (tag) {
return tag.meta && tag.meta.affix
},
filterAffixTags (routes, basePath = '/') {
let tags = []
routes.forEach(route => {
if (route.meta && route.meta.affix) {
const tagPath = path.resolve(basePath, route.path)
tags.push({
fullPath: tagPath,
path: tagPath,
name: route.name,
meta: { ...route.meta }
})
}
if (route.children) {
const tempTags = this.filterAffixTags(route.children, route.path)
if (tempTags.length >= 1) {
tags = [...tags, ...tempTags]
}
}
})
return tags
computed: {
visitedViews () {
return this.$store.state.tagsView.visitedViews
},
routes () {
return this.$store.state.permission.routes
}
},
initTags () {
const affixTags = this.affixTags = this.filterAffixTags(this.routes)
for (const tag of affixTags) {
// Must have tag name
if (tag.name) {
this.$store.dispatch('tagsView/addVisitedView', tag)
watch: {
$route () {
this.addTags()
this.moveToCurrentTag()
},
visible (value) {
if (value) {
document.body.addEventListener('click', this.closeMenu)
} else {
document.body.removeEventListener('click', this.closeMenu)
}
}
},
addTags () {
const { name } = this.$route
if (name) {
this.$store.dispatch('tagsView/addView', this.$route)
}
return false
mounted () {
this.initTags()
this.addTags()
},
moveToCurrentTag () {
const tags = this.$refs.tag
this.$nextTick(() => {
for (const tag of tags) {
if (tag.to.path === this.$route.path) {
this.$refs.scrollPane.moveToTarget(tag)
// when query is different then update
if (tag.to.fullPath !== this.$route.fullPath) {
this.$store.dispatch('tagsView/updateVisitedView', this.$route)
methods: {
isActive (route) {
return route.path === this.$route.path
},
isAffix (tag) {
return tag.meta && tag.meta.affix
},
filterAffixTags (routes, basePath = '/') {
let tags = []
routes.forEach(route => {
if (route.meta && route.meta.affix) {
const tagPath = path.resolve(basePath, route.path)
tags.push({
fullPath: tagPath,
path: tagPath,
name: route.name,
meta: { ...route.meta }
})
}
if (route.children) {
const tempTags = this.filterAffixTags(route.children, route.path)
if (tempTags.length >= 1) {
tags = [...tags, ...tempTags]
}
break
}
})
return tags
},
initTags () {
const affixTags = this.affixTags = this.filterAffixTags(this.routes)
for (const tag of affixTags) {
// Must have tag name
if (tag.name) {
this.$store.dispatch('tagsView/addVisitedView', tag)
}
}
})
},
refreshSelectedTag (view) {
this.$store.dispatch('tagsView/delCachedView', view).then(() => {
const { fullPath } = view
},
addTags () {
const { name } = this.$route
if (name) {
this.$store.dispatch('tagsView/addView', this.$route)
}
return false
},
moveToCurrentTag () {
const tags = this.$refs.tag
this.$nextTick(() => {
this.$router.replace({
path: '/redirect' + fullPath
for (const tag of tags) {
if (tag.to.path === this.$route.path) {
this.$refs.scrollPane.moveToTarget(tag)
// when query is different then update
if (tag.to.fullPath !== this.$route.fullPath) {
this.$store.dispatch('tagsView/updateVisitedView', this.$route)
}
break
}
}
})
},
refreshSelectedTag (view) {
this.$store.dispatch('tagsView/delCachedView', view).then(() => {
const { fullPath } = view
this.$nextTick(() => {
this.$router.replace({
path: '/redirect' + fullPath
})
})
})
})
},
closeSelectedTag (view) {
this.$store.dispatch('tagsView/delView', view).then(({ visitedViews }) => {
if (this.isActive(view)) {
},
closeSelectedTag (view) {
this.$store.dispatch('tagsView/delView', view).then(({ visitedViews }) => {
if (this.isActive(view)) {
this.toLastView(visitedViews, view)
}
})
},
closeOthersTags () {
this.$router.push(this.selectedTag)
this.$store.dispatch('tagsView/delOthersViews', this.selectedTag).then(() => {
this.moveToCurrentTag()
})
},
closeAllTags (view) {
this.$store.dispatch('tagsView/delAllViews').then(({ visitedViews }) => {
if (this.affixTags.some(tag => tag.path === view.path)) {
return
}
this.toLastView(visitedViews, view)
}
})
},
closeOthersTags () {
this.$router.push(this.selectedTag)
this.$store.dispatch('tagsView/delOthersViews', this.selectedTag).then(() => {
this.moveToCurrentTag()
})
},
closeAllTags (view) {
this.$store.dispatch('tagsView/delAllViews').then(({ visitedViews }) => {
if (this.affixTags.some(tag => tag.path === view.path)) {
return
}
this.toLastView(visitedViews, view)
})
},
toLastView (visitedViews, view) {
const latestView = visitedViews.slice(-1)[0]
if (latestView) {
this.$router.push(latestView.fullPath)
} else {
// now the default is to redirect to the home page if there is no tags-view,
// you can adjust it according to your needs.
if (view.name === 'Dashboard') {
// to reload home page
this.$router.replace({ path: '/redirect' + view.fullPath })
})
},
toLastView (visitedViews, view) {
const latestView = visitedViews.slice(-1)[0]
if (latestView) {
this.$router.push(latestView.fullPath)
} else {
this.$router.push('/')
// now the default is to redirect to the home page if there is no tags-view,
// you can adjust it according to your needs.
if (view.name === 'Dashboard') {
// to reload home page
this.$router.replace({ path: '/redirect' + view.fullPath })
} else {
this.$router.push('/')
}
}
}
},
openMenu (tag, e) {
// const menuMinWidth = 105
// const offsetLeft = this.$el.getBoundingClientRect().left // container margin left
// const offsetWidth = this.$el.offsetWidth // container width
// const maxLeft = offsetWidth - menuMinWidth // left boundary
// const left = e.clientX - offsetLeft + 15 // 15: margin right
// if (left > maxLeft) {
// this.left = maxLeft
// } else {
},
openMenu (tag, e) {
// const menuMinWidth = 105
// const offsetLeft = this.$el.getBoundingClientRect().left // container margin left
// const offsetWidth = this.$el.offsetWidth // container width
// const maxLeft = offsetWidth - menuMinWidth // left boundary
// const left = e.clientX - offsetLeft + 15 // 15: margin right
// if (left > maxLeft) {
// this.left = maxLeft
// } else {
// this.left = left
// }
this.left = e.clientX
this.top = e.clientY
this.visible = true
this.selectedTag = tag
},
closeMenu () {
this.visible = false
},
handleScroll () {
this.closeMenu()
// }
this.left = e.clientX
this.top = e.clientY
this.visible = true
this.selectedTag = tag
},
closeMenu () {
this.visible = false
},
handleScroll () {
this.closeMenu()
}
}
}
}
</script>
<style lang="scss" scoped>
.tags-view-container {
height: 40px;
width: 100%;
background: #fff;
border-bottom: 1px solid #d8dce5;
box-sizing: border-box;
padding-top: 3px;
box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .12), 0 0 3px 0 rgba(0, 0, 0, .04);
.tags-view-container {
height: 50px;
width: 100%;
background: #fff;
border-bottom: 1px solid #d8dce5;
box-sizing: border-box;
padding-top: 3px;
box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.12), 0 0 3px 0 rgba(0, 0, 0, 0.04);
.tags-view-wrapper {
.tags-view-item {
display: inline-block;
position: relative;
cursor: pointer;
height: 26px;
line-height: 26px;
border: 1px solid #d8dce5;
color: #495060;
background: #fff;
padding: 0 8px;
font-size: 12px;
margin-left: 5px;
margin-top: 4px;
.tags-view-wrapper {
.tags-view-item {
display: inline-block;
position: relative;
cursor: pointer;
line-height: 30px;
border: 1px solid #d8dce5;
color: #495060;
background: #fff;
padding: 0 8px;
font-size: 12px;
margin-left: 5px;
margin-top: 4px;
&:first-of-type {
margin-left: 15px;
}
&:first-of-type {
margin-left: 15px;
}
&:last-of-type {
margin-right: 15px;
}
&:last-of-type {
margin-right: 15px;
}
&.active {
background-color: #0794FF;
color: #fff;
border-color: #0794FF;
&.active {
background-color: #0794ff;
color: #fff;
border-color: #0794ff;
&::before {
content: '';
background: #fff;
display: inline-block;
width: 8px;
height: 8px;
border-radius: 50%;
position: relative;
margin-right: 2px;
&::before {
content: "";
background: #fff;
display: inline-block;
width: 8px;
height: 8px;
border-radius: 50%;
position: relative;
margin-right: 2px;
}
}
}
}
}
.contextmenu {
margin: 0;
background: #fff;
z-index: 3000;
position: absolute;
list-style-type: none;
padding: 5px 0;
border-radius: 4px;
font-size: 12px;
font-weight: 400;
color: #333;
box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, .3);
li {
.contextmenu {
margin: 0;
padding: 7px 16px;
cursor: pointer;
background: #fff;
z-index: 3000;
position: absolute;
list-style-type: none;
padding: 5px 0;
border-radius: 4px;
font-size: 12px;
font-weight: 400;
color: #333;
box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, 0.3);
li {
margin: 0;
padding: 7px 16px;
cursor: pointer;
&:hover {
background: #eee;
&:hover {
background: #eee;
}
}
}
}
}
</style>
<style lang="scss">
//reset element css of el-icon-close
.tags-view-wrapper {
.tags-view-item {
.el-icon-close {
width: 16px;
height: 16px;
vertical-align: 2px;
border-radius: 50%;
text-align: center;
transition: all .3s cubic-bezier(.645, .045, .355, 1);
transform-origin: 100% 50%;
//reset element css of el-icon-close
.tags-view-wrapper {
.tags-view-item {
.el-icon-close {
width: 16px;
height: 16px;
vertical-align: 2px;
border-radius: 50%;
text-align: center;
transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
transform-origin: 100% 50%;
&:before {
transform: scale(.6);
display: inline-block;
vertical-align: -3px;
}
&:before {
transform: scale(0.6);
display: inline-block;
vertical-align: -3px;
}
&:hover {
background-color: #b4bccc;
color: #fff;
&:hover {
background-color: #b4bccc;
color: #fff;
}
}
}
}
}
</style>
......
......@@ -60,7 +60,7 @@ Object.keys(filters).forEach(key => {
})
Vue.config.productionTip = false
axios.get("./config.json")
axios.get("/bdcdj/config.json")
.then((res) => {
Vue.prototype.BASE_API = res.data
localStorage.setItem('ApiUrl', JSON.stringify(res.data));
......
/*
* @Description: 项目权限
* @Autor: renchao
* @LastEditTime: 2023-05-16 14:10:26
*/
import Vue from 'vue'
import router from './router'
import store from './store'
......
/*
* @Description: 全局路由
* @Autor: renchao
* @LastEditTime: 2023-05-16 14:09:37
*/
import Vue from 'vue'
import Router from 'vue-router'
Vue.use(Router)
/* Layout */
import Layout from '@/layout'
/* Router Modules */
// import componentsRouter from './modules/components'
......@@ -24,7 +27,6 @@ export const constantRoutes = [
]
},
// 业务流程框架
// 业务流程框架
{
path: '/workFrame',
component: () => import('@/views/workflow/workFrame.vue'),
......@@ -32,6 +34,14 @@ export const constantRoutes = [
hidden: true,
meta: { title: '发起申请' }
},
//登记簿详情
{
path: '/djbFrameall',
component: () => import('@/views/registerBook/djbFrameall.vue'),
name: 'djbFrameall',
hidden: true,
meta: { title: '登记簿详情' }
},
// 业务流程只读框架
{
path: '/workFrameView',
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-16 14:10:49
*/
module.exports = {
title: '爬山虎不动产登记平台',
/**
* @type {boolean} true | false
* @description Whether show the settings right-panel
......
/*
* @Description: 项目vuex管理
* @Autor: renchao
* @LastEditTime: 2023-05-16 14:10:05
*/
import Vue from 'vue'
import Vuex from 'vuex'
import getters from './getters'
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:34:44
*/
import Cookies from 'js-cookie'
const state = {
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:34:47
*/
import { getAllDict } from '@/api/user'
const state = {
dictData: {},
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:34:53
*/
const state = {
djbxx: {}
......@@ -10,7 +15,7 @@ const mutations = {
}
const actions = {
setDjbxx({ commit }, data) {
setDjbxx ({ commit }, data) {
commit('SET_DJXX', data)
}
}
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:34:57
*/
const state = {
contentWidth: ''
}
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:35:01
*/
import { asyncRoutes, constantRoutes, resetRouter } from '@/router'
import asyncRouter from '@/utils/asyncRouter.js'
const state = {
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:35:07
*/
import variables from '@/styles/element-variables.scss'
import defaultSettings from '@/settings'
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:35:13
*/
const state = {
visitedViews: [{
'fullPath': "/home",
......
/*
* @Description: 动态路由
* @Autor: renchao
* @LastEditTime: 2023-05-16 14:08:42
*/
import Layout from '@/layout'
/**
* @description:
* @param {*} routers
* @author: renchao
*/
export default function filterAsyncRouter (routers) {
routers.forEach(item => {
if (!item.children) {
......
// 获取浏览器便签标题
import defaultSettings from '@/settings'
/*
* @Description: 获取浏览器便签标题
* @Autor: renchao
* @LastEditTime: 2023-05-17 15:51:27
*/
import Vue from 'vue'
const title = Vue.prototype.BASE_API.TITLE
const title = defaultSettings.title || '厦门市房屋数据服务平台'
export default function getPageTitle(pageTitle) {
export default function getPageTitle (pageTitle) {
if (pageTitle) {
return `${pageTitle} - ${title}`
}
......
/*
* @Description:
* @Description: 此文件主要创建 axios 实例,然后添加请求拦截器和响应拦截器
* @Autor: renchao
* @LastEditTime: 2023-04-11 14:48:18
*/
/**
* 此文件主要创建 axios 实例,然后添加请求拦截器和响应拦截器
* @LastEditTime: 2023-05-16 14:07:58
*/
import axios from 'axios'
import { Message } from 'element-ui'
......@@ -12,11 +9,13 @@ import { endLoadingSubCount } from './requestLoading'
// create an axios instance
const service = axios.create({
baseURL: process.env.VUE_APP_BASE_API,
baseURL:
process.env.NODE_ENV == "development"
? process.env.VUE_APP_BASE_API
: window.baseUrl + "/",
withCredentials: true, //是否允许跨域
headers: {
'Content-Type': 'application/json; charset=utf-8',
'Authorization': 'bearer AT-4-MxSrO29Coe7VTazx8uuixtqqgO-hvCB6'
'Content-Type': 'application/json; charset=utf-8'
},
timeout: 15000
})
......@@ -24,14 +23,18 @@ const service = axios.create({
// request interceptor
service.interceptors.request.use(
config => {
config.headers.Authorization =
'bearer AT-4-MxSrO29Coe7VTazx8uuixtqqgO-hvCB6'
config.headers.Accept = 'application/json'
return config
// do something before request is sent
if (process.env.NODE_ENV === "production") {
return config;
} else {
config.headers.Authorization = authorization;
return config;
}
},
error => {
Message.error('请求超时!');
return Promise.reject(error)
// do something with request error
console.log(error); // for debug
return Promise.reject(error);
}
)
......@@ -44,13 +47,6 @@ service.interceptors.response.use(
* 如果请求不成功,就在拦截器这里统一处理(组件的代码就不用关注错误的情况了)
*/
if (response.status == 200) {
// if (response.data.code == 500) {
// Message({
// message: response.data.message,
// type: 'error',
// duration: 5 * 1000
// })
// }
return response.data;
} else {
handleErrorData(response.data);
......
/*
* @Description: 定义全局loading
* @Autor: renchao
* @LastEditTime: 2023-05-16 14:08:10
*/
import Loading from '@/components/Loading/index.js';
// 定义 loading
let loading
......@@ -11,7 +17,6 @@ function startLoading (loadingText = '正在加载中...') {
target: document.querySelector('.loadingtext')
})
}
// loading结束 方法
function endLoading () {
loading.close()
......
......@@ -17,11 +17,13 @@
<div class="thumb-wrap">
<div class="thumb-wrap-button">
<el-button type="primary" @click="clickImage">(放大) 显示(缩小)</el-button>
<el-upload class="fileUpdate" action="" :show-file-list="false" multiple :auto-upload="false"
:on-change="handleChange" accept=".JPG, .PNG, .JPEG,.jpg, .png, .jpeg" :before-upload="beforeUpload">
<el-upload class="fileUpdate" ref="upload" action="" :show-file-list="false" :multiple="true" :auto-upload="false"
:on-change="handleChange"
accept=".JPG, .PNG, .JPEG,.jpg, .png, .jpeg" :before-upload="beforeUpload">
<el-button icon="el-icon-upload" type="primary" v-if="!this.$route.query.viewtype">上传</el-button>
</el-upload>
<el-button type="primary" icon="el-icon-delete-solid" @click="handleDelete" v-if="!this.$route.query.viewtype">删除</el-button>
<el-button type="primary" icon="el-icon-delete-solid" @click="handleDelete"
v-if="!this.$route.query.viewtype && thumbnailImages.length>0">删除</el-button>
</div>
<ul>
<li v-for="(img, index) in thumbnailImages" :key="index" :class="{ active: previewImg.index === index }"
......@@ -36,262 +38,273 @@
</div>
</template>
<script>
import PhotoZoom from '@/components/PhotoZoom'
import { uploadSjClmx, deleteClmx } from "@/api/clxx.js";
import publicPicture from '@/components/publicPicture/index.vue'
export default {
name: 'PreviewImage',
props: {
previewImg: {
type: Object,
default: () => { }
}
},
components: {
PhotoZoom,
publicPicture
},
data () {
return {
transform: {
scale: 1,
degree: 0
},
// 缩略图
thumbnailImages: [],
showViewer: false,
initialIndex: undefined,
allLi: [],
}
},
watch: {
previewImg: {
handler (newValue, oldValue) {
this.allLi = _.cloneDeep(newValue.imgList).map(item => item.fjurl)
this.thumbnailImages = newValue.imgList
},
deep: true
}
},
created () {
this.allLi = _.cloneDeep(this.previewImg.imgList).map(item => item.fjurl)
this.thumbnailImages = this.previewImg.imgList
},
computed: {
isFirst () {
return this.previewImg.index === 0
},
isLast () {
return this.previewImg.index === this.previewImg.imgList.length - 1
}
},
methods: {
prev () {
let len = this.previewImg.imgList.length
if (this.isFirst || len == 0) {
this.$emit('prevPriview')
} else {
this.$parent.previewImg.index = (this.$parent.previewImg.index - 1 + len) % len
import PhotoZoom from '@/components/PhotoZoom'
import { uploadSjClmx, deleteClmx } from "@/api/clxx.js";
import publicPicture from '@/components/publicPicture/index.vue'
export default {
name: 'PreviewImage',
props: {
previewImg: {
type: Object,
default: () => { }
}
},
next () {
let len = this.previewImg.imgList.length
if (this.isLast || len == 0) {
this.$emit('nextPriview')
} else {
this.$parent.previewImg.index = (this.$parent.previewImg.index + 1) % len
}
components: {
PhotoZoom,
publicPicture
},
showCurrent (index) {
this.previewImg.index = index
data () {
return {
transform: {
scale: 1,
degree: 0
},
maxLength: 0,
// 缩略图
thumbnailImages: [],
showViewer: false,
initialIndex: undefined,
allLi: [],
}
},
closeViewer () {
this.showViewer = false
watch: {
previewImg: {
handler (newValue, oldValue) {
this.allLi = _.cloneDeep(newValue.imgList).map(item => item.fjurl)
this.thumbnailImages = newValue.imgList
},
deep: true
}
},
clickImage () {
this.showViewer = true
created () {
this.maxLength = 0;
this.allLi = _.cloneDeep(this.previewImg.imgList).map(item => item.fjurl)
this.thumbnailImages = this.previewImg.imgList
},
// 上传
beforeUpload (file) {
const isJPEG = file.type === 'image/jpeg'
const isPNG = file.type === 'image/png'
const isJPG = file.type === 'image/jpg'
const isGIF = file.type === 'image/gif'
const isLt5M = file.size / 1024 / 1024 < 5
if (!isJPEG && !isGIF && !isPNG && !isJPG && !isGIF) {
this.$message.error('请选择jpeg/png/jpg/bmp/gif格式的图片后重试')
this.loading = false
}
if (!isLt5M) {
this.$message.error('上传图片大小不能超过 5MB!')
this.loading = false
computed: {
isFirst () {
return this.previewImg.index === 0
},
isLast () {
return this.previewImg.index === this.previewImg.imgList.length - 1
}
this.imgHidden = (isJPG || isJPEG || isPNG || isGIF) && isLt5M
return this.imgHidden
},
async handleChange (file) {
let data = _.cloneDeep(this.previewImg.imgList[this.previewImg.index])
var formdata = new FormData();
formdata.append("file", file.raw);
formdata.append("bsmSj", this.previewImg.bsmSj);
formdata.append("bsmSlsq", this.previewImg.bsmSlsq);
uploadSjClmx(formdata).then((res) => {
if (res.code == 200) {
this.$emit('updateList', res.result)
this.$message({
message: '上传成功!',
type: 'success'
})
methods: {
prev () {
let len = this.previewImg.imgList.length
if (this.isFirst || len == 0) {
this.$emit('prevPriview')
} else {
this.$parent.previewImg.index = (this.$parent.previewImg.index - 1 + len) % len
}
})
},
handleDelete () {
let that = this
this.$confirm('此操作将永久删除, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(async () => {
let bsmClmx = this.previewImg.imgList[this.previewImg.index].bsmClmx
deleteClmx(bsmClmx).then(res => {
if (res.code == 200) {
that.$emit('updateList', res.result)
that.$message({
message: '删除成功!',
type: 'success'
})
}
},
next () {
let len = this.previewImg.imgList.length
if (this.isLast || len == 0) {
this.$emit('nextPriview')
} else {
this.$parent.previewImg.index = (this.$parent.previewImg.index + 1) % len
}
},
showCurrent (index) {
this.previewImg.index = index
},
closeViewer () {
this.showViewer = false
},
clickImage () {
this.showViewer = true
},
// 上传
beforeUpload (file) {
const isJPEG = file.type === 'image/jpeg'
const isPNG = file.type === 'image/png'
const isJPG = file.type === 'image/jpg'
const isGIF = file.type === 'image/gif'
const isLt5M = file.size / 1024 / 1024 < 5
if (!isJPEG && !isGIF && !isPNG && !isJPG && !isGIF) {
this.$message.error('请选择jpeg/png/jpg/bmp/gif格式的图片后重试')
this.loading = false
}
if (!isLt5M) {
this.$message.error('上传图片大小不能超过 5MB!')
this.loading = false
}
this.imgHidden = (isJPG || isJPEG || isPNG || isGIF) && isLt5M
return this.imgHidden
},
async handleChange (file, files) {
// 清空 fileList 数组
let length = files.length;
this.maxLength = Math.max(length, this.maxLength)
this.$refs.upload.clearFiles();
setTimeout(() => {
if (length !== this.maxLength) return
console.log(files);
// let data = _.cloneDeep(this.previewImg.imgList[this.previewImg.index])
var formData = new FormData();
files.forEach(file => {
formData.append('file', file.raw)
})
formData.append("bsmSj", this.previewImg.bsmSj);
formData.append("bsmSlsq", this.previewImg.bsmSlsq);
uploadSjClmx(formData).then((res) => {
if (res.code == 200) {
this.$emit('updateList', res.result)
this.$message({
message: '上传成功!',
type: 'success'
})
}
})
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
},
handleDelete () {
let that = this
this.$confirm('此操作将永久删除, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(async () => {
let bsmClmx = this.previewImg.imgList[this.previewImg.index].bsmClmx
deleteClmx(bsmClmx).then(res => {
if (res.code == 200) {
that.$emit('updateList', res.result)
that.$message({
message: '删除成功!',
type: 'success'
})
}
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
})
})
})
}
}
}
}
</script>
<style lang="scss" scoped>
// 查看大图
.rlPopup {
position: relative;
width: 100%;
text-align: center;
height: 100%;
.handle-btn {
position: absolute;
top: 50%;
transform: translateY(-100%);
width: 66px;
height: 66px;
line-height: 75px;
color: #fff;
background-color: rgb(239, 239, 239);
border-radius: 50%;
cursor: pointer;
// 查看大图
.rlPopup {
position: relative;
width: 100%;
text-align: center;
transition: all 0.3s;
i {
font-size: 24px;
}
}
.handle-btn:hover {
background-color: rgb(185, 183, 183);
}
height: 100%;
.handle-btn {
position: absolute;
top: 50%;
transform: translateY(-100%);
width: 66px;
height: 66px;
line-height: 75px;
color: #fff;
background-color: rgb(239, 239, 239);
border-radius: 50%;
cursor: pointer;
text-align: center;
transition: all 0.3s;
.prev {
left: 1%;
}
i {
font-size: 24px;
}
}
.next {
right: 1%;
}
.handle-btn:hover {
background-color: rgb(185, 183, 183);
}
.img-list-wrap {
width: 100%;
display: flex;
justify-content: center;
height: calc(100% - 80px);
align-items: center;
background: rgba(194, 190, 190, 0.1);
overflow: scroll;
.prev {
left: 1%;
}
img {
display: block;
object-fit: scale-down;
transition: all 0.3s;
max-width: 100%;
.next {
right: 1%;
}
}
.thumb-wrap {
&-button {
.img-list-wrap {
width: 100%;
display: flex;
justify-content: center;
height: calc(100% - 80px);
align-items: center;
background: rgba(194, 190, 190, 0.1);
overflow: scroll;
.fileUpdate {
margin: 0 10px;
img {
display: block;
object-fit: scale-down;
transition: all 0.3s;
max-width: 100%;
}
}
li {
float: left;
width: 60px;
height: 45px;
border: solid 1px #ececec;
position: relative;
margin-right: 5px;
cursor: pointer;
.thumb-wrap {
&-button {
display: flex;
justify-content: center;
&:last-child {
margin-right: 0;
.fileUpdate {
margin: 0 10px;
}
}
img {
max-width: 57px;
max-height: 42px;
display: block;
object-fit: scale-down;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
li {
float: left;
width: 60px;
height: 45px;
border: solid 1px #ececec;
position: relative;
margin-right: 5px;
cursor: pointer;
&:last-child {
margin-right: 0;
}
img {
max-width: 57px;
max-height: 42px;
display: block;
object-fit: scale-down;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
}
}
.active {
border-color: #409eff;
.active {
border-color: #409eff;
}
}
}
}
</style>
<style>
.zoom-on-hover {
position: relative;
overflow: hidden;
}
.zoom-on-hover {
position: relative;
overflow: hidden;
}
.zoom-on-hover .normal {
width: 100%;
}
.zoom-on-hover .normal {
width: 100%;
}
.zoom-on-hover .zoom {
position: absolute;
opacity: 0;
transform-origin: top left;
}
.zoom-on-hover .zoom {
position: absolute;
opacity: 0;
transform-origin: top left;
}
.zoom-on-hover.zoomed .zoom {
opacity: 1;
}
.zoom-on-hover.zoomed .zoom {
opacity: 1;
}
.zoom-on-hover.zoomed .normal {
opacity: 0;
}
.zoom-on-hover.zoomed .normal {
opacity: 0;
}
</style>
......
<template>
<div class="content">
<div class="left">
<el-tree ref="tree" :data="treedata" :props="defaultProps" @node-click="handleNodeClick"
:default-expand-all="true" :expand-on-click-node="false" node-key="id" :default-checked-keys="[showTab]">
</el-tree>
</div>
<div class="right">
<component :is="componentTag" v-bind="currentSelectProps" />
</div>
</div>
</template>
<script>
import { getBdcqljqtsx } from "@/api/registerBook.js";
import { loadTreeData, getNode } from "./djbFrameData.js";
import { searchTaskToDo } from "@/api/ywbl";
import {
leftMenu
} from "@/api/fqsq.js";
export default {
data () {
return {
//接收参数
// propsParam: this.$attrs,
//左侧目录
catalog: {},
//选择加载哪一个组件
componentTag: "",
//子组件接收参数
currentSelectProps: {},
//左侧树形结构数据
treedata: [],
// 查询参数
queryForm: {},
defaultNode: "",
defaultProps: {
value: "id",
children: "children",
label: "label",
},
showTab: "bdcqldjml", // 选中状态,根据表格中权利类型判断
};
},
mounted () {
this.getdata()
},
methods: {
// 截取字符的方法
getCaption (obj) {
let index = obj.lastIndexOf("=");
obj = obj.substring(index + 1, obj.length);
return obj
},
// 通过不动产业务号获取参数
getdata () {
this.queryForm = {
bdcdyh: this.getCaption(window.location.href),
currentPage: 1,
djlx: "",
pageSize: 10,
qllx: "",
ywh: "",
ywly: ""
}
if (this.queryForm) {
searchTaskToDo({
...this.queryForm,
}).then((res) => {
if (res.code === 200) {
let { records } = res.result;
this.loadBdcdylist(records[0].bsmSlsq, records[0].bestepid);
}
});
}
},
// 获取不动产信息
loadBdcdylist (a, b) {
var formdata = new FormData();
formdata.append("bsmSlsq", a);
formdata.append("bestepid", b);
leftMenu(formdata).then((res) => {
if (res.code === 200) {
if (res.result) {
this.currentSelectProps = res.result[0];
this.loadData();
}
}
});
},
loadData () {
getBdcqljqtsx({
bdcdyid: this.currentSelectProps.bdcdyid,
bdcdyh: this.currentSelectProps.bdcdyh,
}).then((res) => {
if (res.code === 200) {
this.treedata = loadTreeData(res.result, this.currentSelectProps.bdcdyh);
this.$nextTick(function () {
this.defaultNode = getNode(this.currentSelectProps.qllx, { linShi: 0, xianShi: 0, liShi: 0 }, "");
this.$refs.tree.setCurrentKey(this.defaultNode.id); //data[0].id为默认选中的节点
this.loadComponent(this.defaultNode.form);
});
}
});
this.currentSelectProps = {
bdcdyid: this.currentSelectProps.bdcdyid,
bdcdyh: this.currentSelectProps.bdcdyh,
qllx: this.currentSelectProps.qllx,
bsmQlxx: this.currentSelectProps.bsmQlxx,
};
},
/*
点击登记簿菜单
*/
handleNodeClick (data, node, elem) {
this.loadComponent(data.form);
},
loadComponent (form) {
this.componentTag = (r) =>
require.ensure([], () => r(require("@/views/registerBook/" + form)));
},
},
};
</script>
<style scoped lang="scss">
/deep/.rollTable {
height: calc(120vh - 254px) !important;
}
.content {
width: 100%;
height: 100%;
display: flex;
.left {
width: 256px;
height: 100%;
background-color: #f5f5f5;
color: #333;
border: 1px solid rgb(228, 228, 228);
}
.right {
width: calc(100% - 256px);
height: 100%;
// overflow-y: scroll;
overflow: auto;
background-color: #f5f5f5;
border: 1px solid rgb(228, 228, 228);
}
}
/deep/ .expanded.el-tree-node__expand-icon,
/deep/ .el-tree-node__expand-icon {
visibility: hidden;
}
/deep/ .el-tree-node__content {
border: 1px solid rgb(228, 228, 228);
height: 45px;
}
/deep/ .el-tree-node:focus > .el-tree-node__content {
background-color: #f5f5f5;
color: #0079fe;
border-right: 4px solid #0079fe;
}
/deep/.el-tree-node {
white-space: pre-wrap;
}
/deep/ .is-current > .el-tree-node__content {
background-color: #f5f5f5;
color: #0079fe;
border-right: 4px solid #0079fe;
}
</style>
......@@ -22,9 +22,12 @@
item.prop == 'qszt' && row.qszt == '0' ? 'linshiIcon' : '',
item.prop == 'qszt' && row.qszt == '1' ? 'xianshiIcon' : '',
]">
<div class="icon" v-if="item.prop == 'qszt' && (row.qszt == '0' || row.qszt == '1')">
<div class="icon" v-if="item.prop == 'qszt' && row.qszt == '0'">
正在办理
</div>
<div class="icon" v-if="item.prop == 'qszt' && row.qszt == '1'">
有效
</div>
<span v-if="item.prop == 'qszt'">
{{ getQsztName(row[item.prop]) }}
</span>
......
......@@ -22,9 +22,12 @@
item.prop == 'qszt' && row.qszt == '0' ? 'linshiIcon' : '',
item.prop == 'qszt' && row.qszt == '1' ? 'xianshiIcon' : '',
]">
<div class="icon" v-if="item.prop == 'qszt' && (row.qszt == '0' || row.qszt == '1')">
<div class="icon" v-if="item.prop == 'qszt' && row.qszt == '0'">
正在办理
</div>
<div class="icon" v-if="item.prop == 'qszt' && row.qszt == '1'">
有效
</div>
<span v-if="item.prop == 'qszt'">
{{ getQsztName(row[item.prop]) }}
</span>
......
......@@ -22,9 +22,12 @@
item.prop == 'qszt' && row.qszt == '0' ? 'linshiIcon' : '',
item.prop == 'qszt' && row.qszt == '1' ? 'xianshiIcon' : '',
]">
<div class="icon" v-if="item.prop == 'qszt' && (row.qszt == '0' || row.qszt == '1')">
<div class="icon" v-if="item.prop == 'qszt' && row.qszt == '0'">
正在办理
</div>
<div class="icon" v-if="item.prop == 'qszt' && row.qszt == '1'">
有效
</div>
<span v-if="item.prop == 'qszt'">
{{ getQsztName(row[item.prop]) }}
</span>
......
......@@ -109,6 +109,16 @@
.linshiIcon {
position: relative;
.icon {
position: absolute;
top: 12px;
right: -5px;
transform: rotate(45deg);
color: #fff;
font-size: 12px;
z-index: 10;
}
}
.linshiIcon::after {
......@@ -127,6 +137,16 @@
.xianshiIcon {
position: relative;
.icon {
position: absolute;
top: 9px;
right: 5px;
transform: rotate(45deg);
color: #fff;
font-size: 12px;
z-index: 10;
}
}
.xianshiIcon::after {
......@@ -143,15 +163,7 @@
transform: rotate(-90deg);
}
.icon {
position: absolute;
top: 12px;
right: -5px;
transform: rotate(45deg);
color: #fff;
font-size: 12px;
z-index: 10;
}
tr {
display: flex;
......
......@@ -6,7 +6,7 @@
</tr>
<tr>
<td>单位</td>
<td colspan="4">{{ zdjbxx.mjdw }}</td>
<td colspan="4">{{ zdjbxx.mjdw | dictionary('A7') }}</td>
</tr>
<tr>
<td>不动产类型</td>
......@@ -39,7 +39,7 @@
</tr>
<tr>
<td>权利设定方式</td>
<td>{{ zdjbxx.qlsdfs }}</td>
<td>{{zdjbxx.qlsdfs | dictionary('A10')}}</td>
<td>容积率</td>
<td>{{ zdjbxx.rjl }}</td>
</tr>
......@@ -122,79 +122,85 @@
<td>{{ zdbhqks[0].dbr }}</td>
</tr> -->
</table>
</div>
</template>
<script>
import { getZdjjxxBybdcdyid } from "@/api/registerBook.js";
import store from '@/store/index.js'
import { getZdjjxxBybdcdyid } from "@/api/registerBook.js";
export default {
data () {
return {
bhqkColumns: [
{
prop: "ssywh",
label: "上手业务号",
},
{
prop: "zddm",
label: "宗地代码",
},
{
prop: "bhqzddm",
label: "变化前宗地代码",
},
{
prop: "bhnr",
label: "变化内容",
},
{
prop: "bhyy",
label: "变化原因",
},
{
prop: "djsj",
label: "登记时间",
},
{
prop: "dbr",
label: "登簿人",
},
{
prop: "fj",
label: "附记",
},
],
bhqkTableWidth: 745,
zdjbxx: {},
zdbhqks: [],
propsParam: this.$attrs,
showGroup: false,
bdclxList: ["", "宗地", "宗海", "自然幢", "多幢", "构筑物", "林权", "户"],
};
},
created () {
this.loadData();
},
methods: {
loadData () {
getZdjjxxBybdcdyid({ bdcdyid: this.propsParam.bdcdyid }).then((res) => {
if (res.code === 200) {
this.zdjbxx = res.result.zdjbxx;
this.zdbhqks = res.result.zdbhqkList;
if (this.zdbhqks != null && this.zdbhqks.length > 0) {
this.showGroup = true;
}
export default {
data () {
return {
bhqkColumns: [
{
prop: "ssywh",
label: "上手业务号",
},
{
prop: "zddm",
label: "宗地代码",
},
{
prop: "bhqzddm",
label: "变化前宗地代码",
},
{
prop: "bhnr",
label: "变化内容",
},
{
prop: "bhyy",
label: "变化原因",
},
{
prop: "djsj",
label: "登记时间",
},
{
prop: "dbr",
label: "登簿人",
},
{
prop: "fj",
label: "附记",
},
],
bhqkTableWidth: 745,
zdjbxx: {},
zdbhqks: [],
propsParam: this.$attrs,
showGroup: false,
bdclxList: ["", "宗地", "宗海", "自然幢", "多幢", "构筑物", "林权", "户"]
}
},
filters: {
dictionary: function (value, param) {
const foundItem = store.getters.dictData[param].find(item => item.dcode === String(value))
if (foundItem) {
return foundItem.dname
}
});
}
},
},
};
created () {
this.loadData()
},
methods: {
loadData () {
getZdjjxxBybdcdyid({ bdcdyid: this.propsParam.bdcdyid }).then((res) => {
if (res.code === 200) {
this.zdjbxx = res.result.zdjbxx;
this.zdbhqks = res.result.zdbhqkList;
if (this.zdbhqks != null && this.zdbhqks.length > 0) {
this.showGroup = true;
}
}
})
}
}
}
</script>
<style lang="scss" scoped>
@import "~@/styles/tablecss.scss";
@import "~@/styles/tablecss.scss";
</style>
......
import filter from '@/utils/filter.js'
import store from '@/store/index.js'
let vm = null
const sendThis = (_this) => {
......@@ -8,7 +9,7 @@ class data extends filter {
constructor() {
super()
}
djqxCol() {
djqxCol () {
return [
{
width: '60',
......@@ -45,11 +46,9 @@ class data extends filter {
label: '登记情形编码',
render: (h, scope) => {
return (
<div>
<el-input placeholder="登记情形编码" class={{ repeat: scope.row.repeat }} value={scope.row[scope.column.property]}
onInput={(val) => { scope.row[scope.column.property] = val }} onBlur={() => { vm.nodecodeBlur(scope.$index, scope.row) }} maxlength="8">
</el-input>
</div>
<el-input placeholder="登记情形编码" class={{ repeat: scope.row.repeat }} value={scope.row[scope.column.property]}
onInput={(val) => { scope.row[scope.column.property] = val; orderNoChange() }} maxlength="8">
</el-input>
)
}
},
......@@ -58,9 +57,9 @@ class data extends filter {
label: '登记情形名称',
render: (h, scope) => {
return (
<div>
<el-input placeholder="登记情形名称" value={scope.row[scope.column.property]} onInput={(val) => { scope.row[scope.column.property] = val }}></el-input>
</div>
<el-input placeholder="登记情形名称" value={scope.row[scope.column.property]}
onInput={(val) => { scope.row[scope.column.property] = val; orderNoChange() }}>
</el-input>
)
}
},
......@@ -82,10 +81,7 @@ class data extends filter {
label: '登记原因模板',
render: (h, scope) => {
return (
<div>
<el-input placeholder="登记原因模板" value={scope.row[scope.column.property]} onInput={(val) => { scope.row[scope.column.property] = val }}></el-input>
</div>
<el-input placeholder="登记原因模板" value={scope.row[scope.column.property]} onInput={(val) => { scope.row[scope.column.property] = val; orderNoChange() }}></el-input>
)
}
},
......@@ -104,7 +100,7 @@ class data extends filter {
]
}
clxxCol() {
clxxCol () {
return [
{
width: '60',
......@@ -144,7 +140,7 @@ class data extends filter {
render: (h, scope) => {
return (
<el-input placeholder="材料编码" value={scope.row[scope.column.property]}
onInput={(val) => { scope.row[scope.column.property] = val }} maxlength="8"></el-input>
onInput={(val) => { scope.row[scope.column.property] = val; orderNoChange() }} maxlength="8"></el-input>
)
}
},
......@@ -154,7 +150,7 @@ class data extends filter {
render: (h, scope) => {
return (
<el-input placeholder="材料名称" value={scope.row[scope.column.property]}
onInput={(val) => { scope.row[scope.column.property] = val }}></el-input>
onInput={(val) => { scope.row[scope.column.property] = val; orderNoChange() }}></el-input>
)
}
},
......@@ -167,7 +163,7 @@ class data extends filter {
<el-select value={scope.row[scope.column.property]}
onChange={(val) => { scope.row[scope.column.property] = val }} clearable>
{
vm.dictData['A40'].map(option => {
store.getters.dictData['A40'].map(option => {
return (
<el-option label={option.dname} value={option.dcode}></el-option>
)
......
......@@ -68,8 +68,8 @@
</el-col>
<el-col :span="1">
<el-upload ref="upload" :action="imgUploadUrl" :limit="1" accept=".xls, .xlsx" :show-file-list="false"
:disabled="requested" :file-list="fileList" :before-upload="uploadRecord" :on-success="handleSuccess">
<el-button type="primary" icon="el-icon-upload" :loading="requested">上传材料</el-button>
:before-upload="uploadRecord" :on-success="handleSuccess">
<el-button type="primary" icon="el-icon-upload">上传材料</el-button>
</el-upload>
</el-col>
</el-row>
......@@ -84,11 +84,12 @@
</el-form>
<el-collapse class="modifycollapse" accordion>
<el-collapse-item title="登记情形设置" name="1">
<lb-table :column="djqxCol" border :pagination="false" heightNumSetting :data="form.djqx">
<lb-table :column="djqxCol" :pagination="false" heightNumSetting :minHeight="160" :data="form.djqx">
</lb-table>
</el-collapse-item>
<el-collapse-item title="材料信息设置" name="2">
<lb-table :column="clxxCol" border heightNumSetting :pagination="false" :data="form.clxx">
<lb-table :column="clxxCol" :heightNumSetting="true" :minHeight="160"
:pagination="false" :data="form.clxx">
</lb-table>
</el-collapse-item>
<el-collapse-item title="刷选权利设置" name="3" v-if="form.ywDetail.sfsxql == '1'">
......@@ -128,209 +129,237 @@
</div>
</template>
<script>
import { mapGetters } from "vuex";
import { upward, down } from "@/utils/operation";
import { getDjlxInfo, getSqdjywDetail, saveSqdjyw } from "@/api/system.js";
import { datas, sendThis } from "./sqywDetail";
export default {
name: "componentDialog",
props: {
formData: {
type: Object,
default: () => { }
}
},
data () {
return {
tn: 0,
n: 0,
djlxList: [],
title: "",
activeName: "1",
form: {},
djqxCol: datas.djqxCol(),
clxxCol: datas.clxxCol(),
};
},
computed: {
...mapGetters(["dictData"]),
},
mounted () {
sendThis(this)
this.init()
},
methods: {
//页面初始化
init () {
this.tn = 0;
getDjlxInfo(this.formData.bsmSqyw).then((res) => {
let { result } = res;
this.djlxList = result ? result : [];
if (this.djlxList.length > 0) {
this.getDetail(this.djlxList[0].bsmSqyw);
} else {
this.getDetail(this.formData.bsmSqyw);
}
})
import { uploadUrl } from '@/api/file'
import { upward, down } from "@/utils/operation";
import { getDjlxInfo, getSqdjywDetail, saveSqdjyw } from "@/api/system.js";
import { datas, sendThis } from "./sqywDetail";
export default {
name: "componentDialog",
props: {
formData: {
type: Object,
default: () => { }
}
},
data () {
return {
key: 0,
tn: 0,
n: 0,
djlxList: [],
options: [],
imgUploadUrl: uploadUrl(),
title: "",
activeName: "1",
form: {
bsmSqyw: '',
ywDetail: {}
},
djqxCol: datas.djqxCol(),
clxxCol: datas.clxxCol(),
};
},
//tab选项卡事件
handleTitleSelct (obj, index) {
this.n = 0;
this.tn = index;
this.getDetail(this.djlxList[index].bsmSqyw);
mounted () {
sendThis(this)
this.init()
},
//获取业务具体明细内容
getDetail (bsmSqyw) {
getSqdjywDetail(bsmSqyw).then((res) => {
if (res.code === 200) {
this.form = res.result;
console.log(this.form, 'this.formthis.formthis.form');
methods: {
//页面初始化
init () {
this.tn = 0;
getDjlxInfo(this.formData.bsmSqyw).then((res) => {
let { result } = res;
this.djlxList = result ? result : [];
if (this.djlxList.length > 0) {
this.getDetail(this.djlxList[0].bsmSqyw);
} else {
this.getDetail(this.formData.bsmSqyw);
}
})
},
orderNoChange () {
this.$forceUpdate();
},
uploadRecord (file) {
this.requested = true
this.files = file;
const extension = file.name.split('.')[1] === 'xls'
const extension2 = file.name.split('.')[1] === 'xlsx'
const isLt5M = file.size / 1024 / 1024 < 5
if (!extension && !extension2) {
this.$message.warning('上传模板只能是 xls、xlsx格式!')
this.requested = false
}
if (!isLt5M) {
this.$message.warning('上传模板大小不能超过 5MB!')
this.requested = false
}
return (extension || extension2) && isLt5M
},
handleSuccess () { },
//tab选项卡事件
handleTitleSelct (obj, index) {
this.n = 0;
this.tn = index;
this.getDetail(this.djlxList[index].bsmSqyw);
},
//获取业务具体明细内容
getDetail (bsmSqyw) {
getSqdjywDetail(bsmSqyw).then((res) => {
if (res.code === 200) {
// this.form.bsmSqyw = res.result.bsmSqyw
// this.form.ywDetail = res.result.ywDetail
this.$set(this.form, 'djqx', res.result.djqx)
// this.$set(this.form, 'sxql', res.result.sxql)
this.$set(this.form, 'clxx', res.result.clxx)
// this.$set(this.form, 'sxzt', res.result.sxzt)
// this.$set(this.form, 'ywDetail', res.result.ywDetail)
} else {
this.$alert(res.message)
}
})
},
//提交保存数据
submit () {
let that = this;
saveSqdjyw(this.form).then((res) => {
if (res.code == 200) {
that.$message({
message: "修改成功",
type: "success"
});
this.$popupCacel()
}
})
},
// 上移下移
moveUpward (index, row, type) {
if (type == "clxx") {
upward(index, this.form.clxx);
} else {
this.$alert(res.message);
upward(index, this.form.djqx);
}
});
},
//提交保存数据
submit () {
let that = this;
saveSqdjyw(this.form).then((res) => {
if (res.code == 200) {
that.$message({
message: "修改成功",
type: "success",
});
this.$popupCacel()
},
moveDown (index, row, type) {
if (type == "clxx") {
down(index, this.form.clxx);
} else {
down(index, this.form.djqx);
}
});
},
// 上移下移
moveUpward (index, row, type) {
if (type == "clxx") {
upward(index, this.form.clxx);
} else {
upward(index, this.form.djqx);
}
},
moveDown (index, row, type) {
if (type == "clxx") {
down(index, this.form.clxx);
} else {
down(index, this.form.djqx);
},
addDjqx () {
this.form.djqx.push({
nodecode: "",
nodename: "",
enabled: "1",
djyy: "",
sfqydjyymb: "0",
});
},
removeDjqx (index, row) {
this.form.djqx.splice(index, 1);
},
addClxx () {
this.form.clxx.push({
isrequired: "1",
djqxbm: "",
clbm: "",
clmc: "",
cllx: "",
sfggcl: "1",
});
},
removeClxx (index, row) {
this.form.clxx.splice(index, 1);
}
},
addDjqx () {
this.form.djqx.push({
nodecode: "",
nodename: "",
enabled: "1",
djyy: "",
sfqydjyymb: "0",
});
},
removeDjqx (index, row) {
this.form.djqx.splice(index, 1);
},
addClxx () {
this.form.clxx.push({
isrequired: "1",
djqxbm: "",
clbm: "",
clmc: "",
cllx: "",
sfggcl: "1",
});
},
removeClxx (index, row) {
this.form.clxx.splice(index, 1);
},
},
};
}
}
</script>
<style lang='scss' scoped>
@import "~@/styles/mixin.scss";
@import "~@/styles/dialogBox.scss";
@import "~@/styles/collapse.scss";
@import "~@/styles/dialogBoxheader.scss";
@import "~@/styles/mixin.scss";
@import "~@/styles/dialogBox.scss";
@import "~@/styles/collapse.scss";
@import "~@/styles/dialogBoxheader.scss";
.contentBox {
height: 75vh;
overflow-y: scroll;
}
.contentBox {
height: 75vh;
overflow-y: scroll;
}
.el-radio-group {
white-space: nowrap;
}
.el-radio-group {
white-space: nowrap;
}
.form {
background: #eee;
padding: 0 10px;
}
.form {
background: #eee;
padding: 0 10px;
}
.edit-title-list {
@include flex;
.edit-title-list {
@include flex;
li {
flex: 1;
@include flex-center;
border: 1px solid $borderColor;
line-height: 36px;
margin-bottom: 10px;
cursor: pointer;
transition: all 0.3s;
li {
flex: 1;
@include flex-center;
border: 1px solid $borderColor;
line-height: 36px;
margin-bottom: 10px;
cursor: pointer;
transition: all 0.3s;
&:hover {
@extend .active;
&:hover {
@extend .active;
}
}
}
}
.active {
background: $light-blue !important;
color: #fff;
}
.dyztsd-title {
@include flex;
align-items: center;
justify-content: space-between;
padding-left: 20px;
}
.qlxx-list {
@include flex;
flex-wrap: wrap;
padding-left: 20px;
li {
width: 25%;
margin-bottom: 15px;
.active {
background: $light-blue !important;
color: #fff;
}
}
.screen-list {
@include flex;
align-items: center;
flex-wrap: wrap;
border: 1px solid $borderColor;
border-bottom: none;
li {
.dyztsd-title {
@include flex;
align-items: center;
width: 25%;
line-height: 50px;
border-bottom: 1px solid $borderColor;
justify-content: space-between;
padding-left: 20px;
}
&-left {
margin-right: 20px;
width: 160px;
white-space: nowrap;
.qlxx-list {
@include flex;
flex-wrap: wrap;
padding-left: 20px;
li {
width: 25%;
margin-bottom: 15px;
}
}
li:nth-child(odd) {
border-right: 1px solid $borderColor;
.screen-list {
@include flex;
align-items: center;
flex-wrap: wrap;
border: 1px solid $borderColor;
border-bottom: none;
li {
@include flex;
align-items: center;
width: 25%;
line-height: 50px;
border-bottom: 1px solid $borderColor;
padding-left: 20px;
}
&-left {
margin-right: 20px;
width: 160px;
white-space: nowrap;
}
li:nth-child(odd) {
border-right: 1px solid $borderColor;
}
}
}
</style>
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:41:09
-->
<template>
<div>
<lb-table :column="column" border :maxHeight="300" heightNumSetting :pagination="false" :key="key" :data="tableDataList">
......@@ -6,159 +11,158 @@
</div>
</template>
<script>
import addJtcy from './addJtcy.vue'
import { mapGetters } from 'vuex'
export default {
components: {
addJtcy
},
computed: {
...mapGetters(["dictData"]),
},
props: {
tableData: {
type: Array,
default: function () {
return []
import addJtcy from './addJtcy.vue'
import { mapGetters } from 'vuex'
export default {
components: {
addJtcy
},
computed: {
...mapGetters(["dictData"]),
},
props: {
tableData: {
type: Array,
default: function () {
return []
}
},
gyfs: {
type: String,
default: '1'
}
},
gyfs: {
type: String,
default: '1'
}
},
data () {
return {
key: 0,
dataIndex: 0,
dialog: false,
details: {},
tableDataList: [],
qlrCommonTable: [
{
width: '50',
renderHeader: (h, scope) => {
return <div> {
this.$route.query.viewtype == 1 ? '序号' : <i class="el-icon-plus pointer" onClick={() => { this.addClick() }}></i>
data () {
return {
key: 0,
dataIndex: 0,
dialog: false,
details: {},
tableDataList: [],
qlrCommonTable: [
{
width: '50',
renderHeader: (h, scope) => {
return <div> {
this.$route.query.viewtype == 1 ? '序号' : <i class="el-icon-plus pointer" onClick={() => { this.addClick() }}></i>
}
</div>
},
render: (h, scope) => {
return (
<div>
{
this.$route.query.viewtype == 1 ? <span>{scope.$index + 1}</span> :
<i class="el-icon-minus pointer" onClick={() => { this.deleClick(scope.$index, scope.row) }}></i>
}
</div>
)
}
</div>
},
render: (h, scope) => {
return (
<div>
{
this.$route.query.viewtype == 1 ? <span>{scope.$index + 1}</span> :
<i class="el-icon-minus pointer" onClick={() => { this.deleClick(scope.$index, scope.row) }}></i>
}
</div>
)
{
label: '身份证读卡器',
align: 'center',
render: (h, scope) => {
return <el-button type="text" icon="el-icon-tickets" onClick={() => { this.readClick(scope) }}>读取</el-button>
}
},
{
prop: "cyxm",
label: "成员姓名"
},
{
prop: "sfzhm",
label: "身份证号码"
},
{
prop: "dh",
label: "联系电话"
},
{
label: '修改',
render: (h, scope) => {
return (
<div>
{
this.$route.query.viewtype == 1 ? <el-button
icon="el-icon-view"
type="text"
onClick={() => { this.queryViewClick(scope.$index, scope.row) }}>查看</el-button> : <el-button
icon="el-icon-edit-outline"
type="text"
onClick={() => { this.editClick(scope.$index, scope.row) }}>编辑</el-button>
}
</div>
)
}
}
},
{
label: '身份证读卡器',
align: 'center',
render: (h, scope) => {
return <el-button type="text" icon="el-icon-tickets" onClick={() => { this.readClick(scope) }}>读取</el-button>
],
column: this.qlrCommonTable
}
},
watch: {
tableData: {
handler: function (val, oldVal) {
let that = this
if (val.length == 0 || !val) {
that.tableDataList = _.cloneDeep([{
sqrmc: '',
dlrzjlx: '',
dlrzjh: '',
fr: ''
}])
} else {
that.tableDataList = _.cloneDeep(val)
}
},
{
prop: "cyxm",
label: "成员姓名"
},
{
prop: "sfzhm",
label: "身份证号码"
},
{
prop: "dh",
label: "联系电话"
},
{
label: '修改',
render: (h, scope) => {
return (
<div>
{
this.$route.query.viewtype == 1 ? <el-button
icon="el-icon-view"
type="text"
onClick={() => { this.queryViewClick(scope.$index, scope.row) }}>查看</el-button> : <el-button
icon="el-icon-edit-outline"
type="text"
onClick={() => { this.editClick(scope.$index, scope.row) }}>编辑</el-button>
}
</div>
)
}
}
],
column: this.qlrCommonTable
}
},
watch: {
tableData: {
handler: function (val, oldVal) {
let that = this
if (val.length == 0 || !val) {
that.tableDataList = _.cloneDeep([{
sqrmc: '',
dlrzjlx: '',
dlrzjh: '',
fr: ''
}])
} else {
that.tableDataList = _.cloneDeep(val)
}
immediate: true,
deep: true
},
immediate: true,
deep: true
gyfs: {
handler (newVal, oldValue) {
let dataList = _.cloneDeep(this.qlrCommonTable)
if (newVal == '1') {
this.column = _.cloneDeep(dataList).slice(1, dataList.length)
} else {
this.column = dataList
}
},
immediate: true
}
},
gyfs: {
handler (newVal, oldValue) {
let dataList = _.cloneDeep(this.qlrCommonTable)
if (newVal == '1') {
this.column = _.cloneDeep(dataList).slice(1, dataList.length)
} else {
this.column = dataList
}
methods: {
updateDetail (value) {
this.tableDataList[this.dataIndex] = value
this.key++
this.$emit('upDateJtcyList', this.tableDataList)
},
immediate: true
}
},
methods: {
updateDetail (value) {
this.tableDataList[this.dataIndex] = value
this.key++
this.$emit('upDateJtcyList', this.tableDataList)
},
// 新增
addClick () {
this.dialog = true
},
// 删除
deleClick (index, row) {
this.tableData.splice(index, 1)
},
// 新增
addClick () {
this.dialog = true
},
// 删除
deleClick (index, row) {
this.tableData.splice(index, 1)
},
// 身份证读取
readClick () { },
// 身份证读取
readClick () { },
// 修改
editClick (index, row) {
console.log(row, 'rowrowrowrowrow');
this.dataIndex = index
this.dialog = true
this.details = row
},
// 修改
editClick (index, row) {
console.log(row, 'rowrowrowrowrow');
this.dataIndex = index
this.dialog = true
this.details = row
},
queryViewClick () {
this.dialog = true
queryViewClick () {
this.dialog = true
}
}
}
}
</script>
<style scoped lang='scss'>
</style>
\ No newline at end of file
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:40:28
-->
<template>
<dialogBox title="家庭成员信息" width="60%" isMain v-model="myValue" :isFullscreen="false" @submitForm="submitForm"
@closeDialog="closeDialog">
......@@ -101,105 +106,105 @@
</dialogBox>
</template>
<script>
import { mapGetters } from 'vuex'
export default {
props: {
value: { type: Boolean, default: false },
details: { type: Object, default: {} }
},
computed: {
...mapGetters(["dictData"]),
},
data () {
return {
myValue: this.value,
jtgx: [
{value:'0',label:'本人或户主'},
{value:'1',label:'配偶'},
{value:'2',label:'子'},
{value:'3',label:'女'},
{value:'4',label:'子孙、孙女、外孙子、外孙女'},
{value:'5',label:'父母'},
{value:'6',label:'祖父母、外祖父母'},
{value:'7',label:'兄、弟、姐、妹'},
{value:'8',label:'其他'},
],
ruleForm: {
qlrlx: '',
sqrmc: '',
zjzl: '',
zjh: '',
dh: '',
xb: '',
frmc: '',
gjdq: '',
szss: '',
dz: '',
yb: '',
fzjg: '',
dzyj: '',
qlbl: '',
gzdw: '',
dljg: '',
dlrxm: '',
dlrzjlx: '',
dlrzjh: ''
},
rules: {
qlrlx: [
{ required: true, message: '权利人类型', trigger: 'change' }
],
sqrmc: [
{ required: true, message: '姓名/名称', trigger: 'blur' }
],
zjzl: [
{ required: true, message: '证件种类', trigger: 'change' }
import { mapGetters } from 'vuex'
export default {
props: {
value: { type: Boolean, default: false },
details: { type: Object, default: {} }
},
computed: {
...mapGetters(["dictData"]),
},
data () {
return {
myValue: this.value,
jtgx: [
{ value: '0', label: '本人或户主' },
{ value: '1', label: '配偶' },
{ value: '2', label: '子' },
{ value: '3', label: '女' },
{ value: '4', label: '子孙、孙女、外孙子、外孙女' },
{ value: '5', label: '父母' },
{ value: '6', label: '祖父母、外祖父母' },
{ value: '7', label: '兄、弟、姐、妹' },
{ value: '8', label: '其他' },
],
zjh: [
{ required: true, message: '证件号', trigger: 'blur' }
]
ruleForm: {
qlrlx: '',
sqrmc: '',
zjzl: '',
zjh: '',
dh: '',
xb: '',
frmc: '',
gjdq: '',
szss: '',
dz: '',
yb: '',
fzjg: '',
dzyj: '',
qlbl: '',
gzdw: '',
dljg: '',
dlrxm: '',
dlrzjlx: '',
dlrzjh: ''
},
rules: {
qlrlx: [
{ required: true, message: '权利人类型', trigger: 'change' }
],
sqrmc: [
{ required: true, message: '姓名/名称', trigger: 'blur' }
],
zjzl: [
{ required: true, message: '证件种类', trigger: 'change' }
],
zjh: [
{ required: true, message: '证件号', trigger: 'blur' }
]
}
}
}
},
watch: {
value (val) {
this.myValue = _.cloneDeep(val)
},
details: {
handler: function (val, oldVal) {
this.ruleForm = val
watch: {
value (val) {
this.myValue = _.cloneDeep(val)
},
deep: true
}
},
methods: {
closeDialog () {
this.$emit("input", false);
this.$refs['ruleForm'].resetFields();
details: {
handler: function (val, oldVal) {
this.ruleForm = val
},
deep: true
}
},
submitForm () {
this.$emit("input", false);
this.$emit("updateDetail", _.cloneDeep(this.ruleForm));
// this.$refs['ruleForm'].validate((valid) => {
// if (valid) {
// this.$message({
// message: '修改成功!',
// type: 'success'
// })
methods: {
closeDialog () {
this.$emit("input", false);
this.$refs['ruleForm'].resetFields();
},
submitForm () {
this.$emit("input", false);
this.$emit("updateDetail", _.cloneDeep(this.ruleForm));
// this.$refs['ruleForm'].validate((valid) => {
// if (valid) {
// this.$message({
// message: '修改成功!',
// type: 'success'
// })
// } else {
// this.$message.error('请完善必填项');
// }
// })
// } else {
// this.$message.error('请完善必填项');
// }
// })
}
}
}
}
</script>
<style scoped lang="scss">
.submit-button {
text-align: center;
height: 52px;
padding-top: 10px;
background-color: #fff;
}
.submit-button {
text-align: center;
height: 52px;
padding-top: 10px;
background-color: #fff;
}
</style>
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:40:48
-->
<template>
<lb-table :column="column" :maxHeight="200" :heightNumSetting="true" :pagination="false" :key="key" :data="tableData">
</lb-table>
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:40:46
-->
<template>
<div class="clxx">
<div class="left">
......@@ -36,497 +41,496 @@
</div>
</template>
<script>
import { mapGetters } from "vuex";
import clxxAddDialog from "./clxxAddDialog.vue";
import imagePreview from '@/views/components/imagePreview.vue'
import {InitClml,saveClml,deleteSjClml,moveClml} from "@/api/clxx.js";
export default {
components: { clxxAddDialog, imagePreview },
data () {
return {
isDialog: false,
menuList: [
{
id: "1",
label: "材料目录明细",
},
{
id: "2",
label: "材料预览",
},
],
iclass: "",
// 材料目录选中
treeCheckIndex: 0,
treeCheckId: "",
checkedId: "1",
column: [
{
width: "50",
renderHeader: (h, scope) => {
return (
<div>
{
this.$route.query.viewtype == 1 ? '序号' :
<i
class="el-icon-plus pointer"
onClick={() => {
this.handleAdd()
}}
></i>
}
</div>
)
import { mapGetters } from "vuex";
import clxxAddDialog from "./dialog/clxxAddDialog.vue";
import imagePreview from '@/views/components/imagePreview.vue'
import { InitClml, saveClml, deleteSjClml, moveClml } from "@/api/clxx.js";
export default {
components: { clxxAddDialog, imagePreview },
data () {
return {
isDialog: false,
menuList: [
{
id: "1",
label: "材料目录明细",
},
render: (h, scope) => {
// 新建的材料,可删除
// v-show='scope.row.sfxjcl == 1'
return (
<div>
{
this.$route.query.viewtype == 1 ? <span>{scope.$index + 1}</span> :
<i
class="el-icon-minus pointer"
onClick={() => {
this.handleDelete(scope.$index, scope.row);
}}
></i>
}
</div>
)
}
},
{
prop: "isrequired",
label: "是否必选",
width: "50",
render: (h, scope) => {
if (scope.row.sfxjcl === "1") {
{
id: "2",
label: "材料预览",
},
],
iclass: "",
// 材料目录选中
treeCheckIndex: 0,
treeCheckId: "",
checkedId: "1",
column: [
{
width: "50",
renderHeader: (h, scope) => {
return (
<div>
<span>可选</span>
{
this.$route.query.viewtype == 1 ? '序号' :
<i
class="el-icon-plus pointer"
onClick={() => {
this.handleAdd()
}}
></i>
}
</div>
);
}
else {
)
},
render: (h, scope) => {
// 新建的材料,可删除
// v-show='scope.row.sfxjcl == 1'
return (
<div>
<span>必选</span>
{
this.$route.query.viewtype == 1 ? <span>{scope.$index + 1}</span> :
<i
class="el-icon-minus pointer"
onClick={() => {
this.handleDelete(scope.$index, scope.row);
}}
></i>
}
</div>
);
)
}
},
},
{
prop: "sjmc",
label: "材料名称",
},
{
prop: "sjlx",
label: "材料类型",
width: "80",
render: (h, scope) => {
return (
<div>
<span>{this.dicStatus(scope.row.sjlx, "A40")}</span>
</div>
);
{
prop: "isrequired",
label: "是否必选",
width: "50",
render: (h, scope) => {
if (scope.row.sfxjcl === "1") {
return (
<div>
<span>可选</span>
</div>
);
}
else {
return (
<div>
<span>必选</span>
</div>
);
}
},
},
{
prop: "sjmc",
label: "材料名称",
},
},
{
prop: "sjsl",
label: "份数",
width: "50"
},
{
prop: "smzt",
label: "扫描状态",
width: "80",
render: (h, scope) => {
if (scope.row.children.length > 0) {
{
prop: "sjlx",
label: "材料类型",
width: "80",
render: (h, scope) => {
return (
<div>
<span>已扫描</span>
<span>{this.dicStatus(scope.row.sjlx, "A40")}</span>
</div>
);
} else {
},
},
{
prop: "sjsl",
label: "份数",
width: "50"
},
{
prop: "smzt",
label: "扫描状态",
width: "80",
render: (h, scope) => {
if (scope.row.children.length > 0) {
return (
<div>
<span>已扫描</span>
</div>
);
} else {
return (
<div>
<span>未扫描</span>
</div>
);
}
},
},
{
prop: "ys",
label: "扫描页数",
width: "50"
},
{
label: "操作",
width: "80",
render: (h, scope) => {
return (
<div>
<span>未扫描</span>
<el-button
type="text"
disabled={scope.$index == 0}
onClick={() => {
this.moveUpward(scope.$index, scope.row);
}}
>
上移
</el-button>
<el-button
type="text"
disabled={scope.$index + 1 == this.tableData.length}
onClick={() => {
this.moveDown(scope.$index, scope.row);
}}
>
下移
</el-button>
</div>
);
}
},
},
},
{
prop: "ys",
label: "扫描页数",
width: "50"
},
{
label: "操作",
width: "80",
render: (h, scope) => {
return (
<div>
<el-button
type="text"
disabled={scope.$index == 0}
onClick={() => {
this.moveUpward(scope.$index, scope.row);
}}
>
上移
</el-button>
<el-button
type="text"
disabled={scope.$index + 1 == this.tableData.length}
onClick={() => {
this.moveDown(scope.$index, scope.row);
}}
>
下移
</el-button>
</div>
);
},
},
],
key: 0,
tableData: [],
previewImg: {
// 收件标识码
bsmSj: '',
bsmSlsq: this.$parent.bsmSlsq,
index: 0,
selectedIndex: 0,
imgList: []
}
}
},
computed: {
...mapGetters(["dictData"])
},
created () {
this.clmlInitList()
},
methods: {
// 自动预览
nextPriview () {
if (this.treeCheckIndex < this.tableData.length) {
this.treeCheckIndex++
this.treeCheckId = this.tableData[this.treeCheckIndex].bsmSj
this.previewImg.index = 0
this.previewImg.imgList = this.tableData[this.treeCheckIndex].children
this.previewImg.bsmSj = this.tableData[this.treeCheckIndex].bsmSj
],
key: 0,
tableData: [],
previewImg: {
// 收件标识码
bsmSj: '',
bsmSlsq: this.$parent.bsmSlsq,
index: 0,
selectedIndex: 0,
imgList: []
}
}
},
prevPriview () {
if (this.treeCheckIndex >= 1) {
this.treeCheckIndex--
this.treeCheckId = this.tableData[this.treeCheckIndex].bsmSj
this.previewImg.index = this.previewImg.imgList.length
this.previewImg.imgList = this.tableData[this.treeCheckIndex].children
this.previewImg.bsmSj = this.tableData[this.treeCheckIndex].bsmSj
}
computed: {
...mapGetters(["dictData"])
},
// 材料目录明细初始化
clmlInitList () {
return new Promise(resolve => {
this.unitData = this.$parent.unitData;
var formdata = new FormData();
formdata.append("bsmSldy", this.unitData[0]?.bsmSldy);
formdata.append("bsmSlsq", this.$parent.bsmSlsq);
InitClml(formdata).then((res) => {
if(res.result.code == 200){
resolve(res.code)
if (res.result.result && res.result.result.length > 0) {
this.tableData = res.result.result;
this.treeCheckId = this.tableData[0].bsmSj;
this.title = this.tableData[0].sjmc;
this.titleYs = 1;
this.titleNum = this.tableData[0].children.length;
this.previewImg.imgList = this.tableData[0]?.children;
this.previewImg.bsmSj = this.tableData[0]?.bsmSj;
}
}else{
this.$message.error(res.result.message)
}
})
})
created () {
this.clmlInitList()
},
updateList (val) {
let that = this
if (val != null) { //删除最后一张图片时 val=null
this.tableData.forEach(item => {
if (item.bsmSj === val.bsmSj) {
item.children = val.children
}
})
this.previewImg.imgList = _.cloneDeep(val.children)
if (this.previewImg.index == this.previewImg.imgList.length) {
this.previewImg.index = this.previewImg.index - 1
methods: {
// 自动预览
nextPriview () {
if (this.treeCheckIndex < this.tableData.length) {
this.treeCheckIndex++
this.treeCheckId = this.tableData[this.treeCheckIndex].bsmSj
this.previewImg.index = 0
this.previewImg.imgList = this.tableData[this.treeCheckIndex].children
this.previewImg.bsmSj = this.tableData[this.treeCheckIndex].bsmSj
}
} else {
this.previewImg.imgList = []
this.tableData.forEach((item, index) => {
if (this.treeCheckId == item.bsmSj) {
item.children = []
that.treeCheckIndex = index
}
})
}
},
prevPriview () {
if (this.treeCheckIndex >= 1) {
this.treeCheckIndex--
this.treeCheckId = this.tableData[this.treeCheckIndex].bsmSj
this.previewImg.index = this.previewImg.imgList.length
this.previewImg.imgList = this.tableData[this.treeCheckIndex].children
this.previewImg.bsmSj = this.tableData[this.treeCheckIndex].bsmSj
}
},
// 材料目录明细初始化
clmlInitList () {
return new Promise(resolve => {
this.unitData = this.$parent.unitData;
var formdata = new FormData();
formdata.append("bsmSldy", this.unitData[0]?.bsmSldy);
formdata.append("bsmSlsq", this.$parent.bsmSlsq);
InitClml(formdata).then((res) => {
if (res.result.code == 200) {
resolve(res.code)
if (res.result.result && res.result.result.length > 0) {
this.tableData = res.result.result;
this.treeCheckId = this.tableData[0].bsmSj;
this.title = this.tableData[0].sjmc;
this.titleYs = 1;
this.titleNum = this.tableData[0].children.length;
},
// 左侧菜单点击
menuClick (item) {
this.checkedId = item.id
},
// 添加材料目录
handleAdd () {
this.isDialog = true;
},
// 上移
moveUpward (index, row) {
let obj = {
xh: row.xh,
bsmSlsq: row.bsmSlsq,
moveDirection: "UP",
};
// 接口待调
moveClml(obj).then(async (res) => {
if (res.code == 200) {
let res = await this.clmlInitList()
if (res == 200) this.$message({
message: '上移成功',
type: 'success'
this.previewImg.imgList = this.tableData[0]?.children;
this.previewImg.bsmSj = this.tableData[0]?.bsmSj;
}
} else {
this.$message.error(res.result.message)
}
})
} else {
this.$message.error(res.message);
}
})
},
// 下移
moveDown (index, row) {
let obj = {
xh: row.xh,
bsmSlsq: row.bsmSlsq,
moveDirection: "DOWN",
}
// 接口待调
moveClml(obj).then(async (res) => {
if (res.code == 200) {
let res = await this.clmlInitList()
if (res == 200) this.$message({
message: '下移成功',
type: 'success'
})
},
updateList (val) {
let that = this
if (val != null) { //删除最后一张图片时 val=null
this.tableData.forEach(item => {
if (item.bsmSj === val.bsmSj) {
item.children = val.children
}
})
this.previewImg.imgList = _.cloneDeep(val.children)
if (this.previewImg.index == this.previewImg.imgList.length) {
this.previewImg.index = this.previewImg.index - 1
}
} else {
this.$message.error(res.message);
}
})
},
// 新增弹窗保存
addSave (data) {
let obj = {
bsmSlsq: this.$parent.bsmSlsq,
isrequired: "1",
sjmc: data.clmc,
sjsl: 0,
smzt: '',
ys: 0,
sjlx: data.cllx,
sfxjcl: "1", // 是否必选
};
saveClml(obj).then(async (res) => {
if (res.code == 200) {
let res = await this.clmlInitList()
if (res == 200) this.$message({
message: "新增成功",
type: "success",
this.previewImg.imgList = []
this.tableData.forEach((item, index) => {
if (this.treeCheckId == item.bsmSj) {
item.children = []
that.treeCheckIndex = index
}
})
}
});
},
// 材料目录删除
handleDelete (index, row) {
let that = this
this.$confirm('此操作将永久删除该 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
deleteSjClml({ sjBsm: row.bsmSj }).then(async (res) => {
},
// 左侧菜单点击
menuClick (item) {
this.checkedId = item.id
},
// 添加材料目录
handleAdd () {
this.isDialog = true;
},
// 上移
moveUpward (index, row) {
let obj = {
xh: row.xh,
bsmSlsq: row.bsmSlsq,
moveDirection: "UP",
};
// 接口待调
moveClml(obj).then(async (res) => {
if (res.code == 200) {
let res = await that.clmlInitList()
if (res == 200) that.$message({
message: "删除成功",
type: "success",
let res = await this.clmlInitList()
if (res == 200) this.$message({
message: '上移成功',
type: 'success'
})
} else {
this.$message.error(res.message);
}
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
},
// 下移
moveDown (index, row) {
let obj = {
xh: row.xh,
bsmSlsq: row.bsmSlsq,
moveDirection: "DOWN",
}
// 接口待调
moveClml(obj).then(async (res) => {
if (res.code == 200) {
let res = await this.clmlInitList()
if (res == 200) this.$message({
message: '下移成功',
type: 'success'
})
} else {
this.$message.error(res.message);
}
})
})
},
// 材料目录点击选中
treeClick (item, index) {
this.previewImg.index = 0
this.treeCheckId = item?.bsmSj
this.treeCheckIndex = index
this.previewImg.imgList = item?.children
this.previewImg.bsmSj = item?.bsmSj
},
// 小图片点击
imgClick (item, index) {
this.showImg = item;
this.titleYs = index + 1;
},
// 字典
dicStatus (val, code) {
let data = this.$store.getters.dictData[code],
name = "暂无";
if (data) {
data.map((item) => {
if (item.dcode == val) {
name = item.dname;
},
// 新增弹窗保存
addSave (data) {
let obj = {
bsmSlsq: this.$parent.bsmSlsq,
isrequired: "1",
sjmc: data.clmc,
sjsl: 0,
smzt: '',
ys: 0,
sjlx: data.cllx,
sfxjcl: "1", // 是否必选
};
saveClml(obj).then(async (res) => {
if (res.code == 200) {
let res = await this.clmlInitList()
if (res == 200) this.$message({
message: "新增成功",
type: "success",
})
}
});
return name;
}
},
// 材料目录删除
handleDelete (index, row) {
let that = this
this.$confirm('此操作将永久删除该 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
deleteSjClml({ sjBsm: row.bsmSj }).then(async (res) => {
if (res.code == 200) {
let res = await that.clmlInitList()
if (res == 200) that.$message({
message: "删除成功",
type: "success",
})
}
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
})
})
},
// 材料目录点击选中
treeClick (item, index) {
this.previewImg.index = 0
this.treeCheckId = item?.bsmSj
this.treeCheckIndex = index
this.previewImg.imgList = item?.children
this.previewImg.bsmSj = item?.bsmSj
},
// 小图片点击
imgClick (item, index) {
this.showImg = item;
this.titleYs = index + 1;
},
// 字典
dicStatus (val, code) {
let data = this.$store.getters.dictData[code],
name = "暂无";
if (data) {
data.map((item) => {
if (item.dcode == val) {
name = item.dname;
}
});
return name;
}
},
},
},
};
};
</script>
<style scoped lang='scss'>
@import "~@/styles/mixin.scss";
.active {
background: $light-blue !important;
color: #fff;
}
.required {
font-size: 12px;
color: $pink;
float: left;
}
@import "~@/styles/mixin.scss";
.cl_number {
float: right;
}
.clxx {
width: 100%;
display: flex;
padding-left: 5px;
height: calc(100vh - 125px);
.left {
display: flex;
flex-direction: column;
justify-content: space-between;
.active {
background: $light-blue !important;
color: #fff;
}
.item {
width: 28px;
height: 49%;
@include flex-center;
background-color: #E4E7ED;
border-bottom-right-radius: 10px;
padding: 5px;
cursor: pointer;
transition: all 0.3s;
.required {
font-size: 12px;
color: $pink;
float: left;
}
&:hover {
@extend .active;
}
}
.cl_number {
float: right;
}
.right {
.clxx {
width: 100%;
height: 100%;
display: flex;
padding-left: 5px;
height: calc(100vh - 125px);
.clmlmx-box {
margin: 0 auto;
.left {
display: flex;
flex-direction: column;
justify-content: space-between;
.title {
text-align: center;
height: 60px;
line-height: 60px;
border: 1px solid #dfe6ec;
font-size: 20px;
background: #81d3f81a;
margin-bottom: -1px;
.item {
width: 28px;
height: 49%;
@include flex-center;
background-color: #e4e7ed;
border-bottom-right-radius: 10px;
padding: 5px;
cursor: pointer;
transition: all 0.3s;
&:hover {
@extend .active;
}
}
}
.clyl-box {
.right {
width: 100%;
height: 100%;
display: flex;
.menu-tree {
width: 20%;
min-width: 160px;
height: 100%;
margin-right: 10px;
border-right: 1px dotted #d9d9d9;
padding: 0 15px;
.clmlmx-box {
margin: 0 auto;
.item {
line-height: 30px;
padding-top: 5px;
border-bottom: 1px solid #e8e8e8;
font-size: 16px;
.title {
text-align: center;
color: $light-blue;
height: 60px;
line-height: 60px;
border: 1px solid #dfe6ec;
font-size: 20px;
background: #81d3f81a;
margin-bottom: -1px;
}
}
.itemIcon {
float: right;
line-height: 60px;
cursor: pointer;
}
.clyl-box {
width: 100%;
height: 100%;
display: flex;
.child {
line-height: 32px;
border-bottom: 1px solid #e8e8e8;
padding-left: 10px;
color: #6b6b6b;
cursor: pointer;
box-sizing: border-box;
border-radius: 6px;
line-height: 20px;
transition: all 0.3s;
padding: 8px 0;
}
.menu-tree {
width: 20%;
min-width: 160px;
height: 100%;
margin-right: 10px;
border-right: 1px dotted #d9d9d9;
padding: 0 15px;
.child:hover {
.item {
line-height: 30px;
padding-top: 5px;
border-bottom: 1px solid #e8e8e8;
font-size: 16px;
text-align: center;
color: $light-blue;
transform: scale(1.1);
}
.checked {
border: 1px solid $light-blue;
color: $light-blue;
.itemIcon {
float: right;
line-height: 60px;
cursor: pointer;
}
.child {
line-height: 32px;
border-bottom: 1px solid #e8e8e8;
padding-left: 10px;
color: #6b6b6b;
cursor: pointer;
box-sizing: border-box;
border-radius: 6px;
line-height: 20px;
transition: all 0.3s;
padding: 8px 0;
}
.child:hover {
color: $light-blue;
transform: scale(1.1);
}
.checked {
border: 1px solid $light-blue;
color: $light-blue;
}
}
}
}
.clyl-img {
width: 75%;
height: 100%;
background: #f3f4f7;
margin: 0 auto;
position: relative;
.clyl-img {
width: 75%;
height: 100%;
background: #f3f4f7;
margin: 0 auto;
position: relative;
}
}
}
}
}
</style>
\ No newline at end of file
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:40:38
-->
<template>
<div class="clxx">
<div class="right">
<!-- 材料预览 -->
<div class="clyl-box">
<div class="menu-tree">
<el-button type="primary" native-type="submit" @click="viewDetail" style="width:100%;margin-top:10px;">查看明细</el-button>
<el-button type="primary" native-type="submit" @click="viewDetail" style="width:100%;margin-top:10px;">查看明细</el-button>
<div class="item">
材料目录({{tableData.length}})
<div style="margin-top:10px">
......@@ -24,310 +29,310 @@
</div>
</div>
<clxxAddDialog v-model="isDialog" />
<clxxDetailDialog v-model="detailDialog" :data="tableData"/>
<!-- <clxxDetailDialog v-model="detailDialog" :data="tableData" /> -->
</div>
</template>
<script>
import { mapGetters } from "vuex";
import clxxAddDialog from "./clxxAddDialog.vue";
import clxxDetailDialog from "./clxxDetailDialog.vue";
import imagePreview from '@/views/components/imagePreview.vue'
import {InitClml,saveClml,deleteSjClml,moveClml} from "@/api/clxx.js";
import { popupDialog } from "@/utils/popup.js";
export default {
components: { clxxAddDialog, imagePreview,clxxDetailDialog },
data () {
return {
isDialog: false,
detailDialog: false,
iclass: "",
// 材料目录选中
treeCheckIndex: 0,
treeCheckId: "",
key: 0,
tableData: [],
previewImg: {
// 收件标识码
bsmSj: '',
bsmSlsq: this.$parent.bsmSlsq,
index: 0,
selectedIndex: 0,
imgList: []
}
}
},
computed: {
...mapGetters(["dictData"])
},
created () {
this.clmlInitList(1)
},
methods: {
// 自动预览
nextPriview () {
if (this.treeCheckIndex < this.tableData.length) {
this.treeCheckIndex++
this.treeCheckId = this.tableData[this.treeCheckIndex].bsmSj
this.previewImg.index = 0
this.previewImg.imgList = this.tableData[this.treeCheckIndex].children
this.previewImg.bsmSj = this.tableData[this.treeCheckIndex].bsmSj
import { mapGetters } from "vuex";
import clxxAddDialog from "./dialog/clxxAddDialog.vue";
import clxxDetailDialog from "./dialog/clxxDetailDialog.vue";
import imagePreview from '@/views/components/imagePreview.vue'
import { InitClml, saveClml, deleteSjClml, moveClml } from "@/api/clxx.js";
import { popupDialog } from "@/utils/popup.js";
export default {
components: { clxxAddDialog, imagePreview, clxxDetailDialog },
data () {
return {
isDialog: false,
iclass: "",
// 材料目录选中
treeCheckIndex: 0,
treeCheckId: "",
key: 0,
tableData: [],
previewImg: {
// 收件标识码
bsmSj: '',
bsmSlsq: this.$parent.bsmSlsq,
index: 0,
selectedIndex: 0,
imgList: []
}
}
},
prevPriview () {
if (this.treeCheckIndex >= 1) {
this.treeCheckIndex--
this.treeCheckId = this.tableData[this.treeCheckIndex].bsmSj
this.previewImg.index = this.previewImg.imgList.length
this.previewImg.imgList = this.tableData[this.treeCheckIndex].children
this.previewImg.bsmSj = this.tableData[this.treeCheckIndex].bsmSj
}
computed: {
...mapGetters(["dictData"])
},
// 材料目录明细初始化
clmlInitList (type) {
//type 1:列表初始化 2:新增材料
return new Promise(resolve => {
this.unitData = this.$parent.unitData;
var formdata = new FormData();
formdata.append("bsmSldy", this.unitData[0]?.bsmSldy);
formdata.append("bsmSlsq", this.$parent.bsmSlsq);
InitClml(formdata).then((res) => {
if(res.code == 200){
resolve(res.code)
if (res.result && res.result.length > 0) {
this.tableData = res.result;
if(type == 1){
this.treeClick(this.tableData[0],0);
}else{
//新增材料后刷新列表焦点置于新增的对象上
this.treeClick(this.tableData[this.tableData.length - 1],this.tableData.length - 1);
created () {
this.clmlInitList(1)
},
methods: {
// 自动预览
nextPriview () {
if (this.treeCheckIndex < this.tableData.length) {
this.treeCheckIndex++
this.treeCheckId = this.tableData[this.treeCheckIndex].bsmSj
this.previewImg.index = 0
this.previewImg.imgList = this.tableData[this.treeCheckIndex].children
this.previewImg.bsmSj = this.tableData[this.treeCheckIndex].bsmSj
}
},
prevPriview () {
if (this.treeCheckIndex >= 1) {
this.treeCheckIndex--
this.treeCheckId = this.tableData[this.treeCheckIndex].bsmSj
this.previewImg.index = this.previewImg.imgList.length
this.previewImg.imgList = this.tableData[this.treeCheckIndex].children
this.previewImg.bsmSj = this.tableData[this.treeCheckIndex].bsmSj
}
},
// 材料目录明细初始化
clmlInitList (type) {
//type 1:列表初始化 2:新增材料
return new Promise(resolve => {
this.unitData = this.$parent.unitData;
var formdata = new FormData();
formdata.append("bsmSldy", this.unitData[0]?.bsmSldy);
formdata.append("bsmSlsq", this.$parent.bsmSlsq);
InitClml(formdata).then((res) => {
if (res.code == 200) {
resolve(res.code)
if (res.result && res.result.length > 0) {
this.tableData = res.result;
if (type == 1) {
this.treeClick(this.tableData[0], 0);
} else {
//新增材料后刷新列表焦点置于新增的对象上
this.treeClick(this.tableData[this.tableData.length - 1], this.tableData.length - 1);
}
}
} else {
this.$message.error(res.message)
}
}else{
this.$message.error(res.message)
}
})
})
},
setChecked(item){
this.treeCheckId = item.bsmSj;
this.title = item.sjmc;
this.titleYs = 1;
this.titleNum = item.children.length;
this.previewImg.imgList = item.children;
this.previewImg.bsmSj = item.bsmSj;
},
updateList (val) {
let that = this
if (val != null) { //删除最后一张图片时 val=null
this.tableData.forEach(item => {
if (item.bsmSj === val.bsmSj) {
item.children = val.children
}
})
})
this.previewImg.imgList = _.cloneDeep(val.children)
if (this.previewImg.index == this.previewImg.imgList.length) {
this.previewImg.index = this.previewImg.index - 1
}
} else {
this.previewImg.imgList = []
this.tableData.forEach((item, index) => {
if (this.treeCheckId == item.bsmSj) {
item.children = []
that.treeCheckIndex = index
},
setChecked (item) {
this.treeCheckId = item.bsmSj;
this.title = item.sjmc;
this.titleYs = 1;
this.titleNum = item.children.length;
this.previewImg.imgList = item.children;
this.previewImg.bsmSj = item.bsmSj;
},
updateList (val) {
let that = this
if (val != null) { //删除最后一张图片时 val=null
this.tableData.forEach(item => {
if (item.bsmSj === val.bsmSj) {
item.children = val.children
}
})
this.previewImg.imgList = _.cloneDeep(val.children)
if (this.previewImg.index == this.previewImg.imgList.length) {
this.previewImg.index = this.previewImg.index - 1
}
})
}
},
// 添加材料目录
handleAdd () {
this.isDialog = true;
},
// 新增弹窗保存
addSave (data) {
let obj = {
bsmSlsq: this.$parent.bsmSlsq,
isrequired: "1",
sjmc: data.clmc,
sjsl: 0,
smzt: '',
ys: 0,
sjlx: data.cllx,
sfxjcl: "1", // 是否必选
};
saveClml(obj).then(async (res) => {
if (res.code == 200) {
let res = await this.clmlInitList(2)
if (res == 200) this.$message({
message: "新增成功",
type: "success",
} else {
this.previewImg.imgList = []
this.tableData.forEach((item, index) => {
if (this.treeCheckId == item.bsmSj) {
item.children = []
that.treeCheckIndex = index
}
})
}
});
},
// 材料目录点击选中
treeClick (item, index) {
this.previewImg.index = 0
this.treeCheckId = item?.bsmSj
this.treeCheckIndex = index
this.previewImg.imgList = item?.children
this.previewImg.bsmSj = item?.bsmSj
},
// 小图片点击
imgClick (item, index) {
this.showImg = item;
this.titleYs = index + 1;
},
// 字典
dicStatus (val, code) {
let data = this.$store.getters.dictData[code],
name = "暂无";
if (data) {
data.map((item) => {
if (item.dcode == val) {
name = item.dname;
},
// 添加材料目录
handleAdd () {
this.isDialog = true;
},
// 新增弹窗保存
addSave (data) {
let obj = {
bsmSlsq: this.$parent.bsmSlsq,
isrequired: "1",
sjmc: data.clmc,
sjsl: 0,
smzt: '',
ys: 0,
sjlx: data.cllx,
sfxjcl: "1", // 是否必选
};
saveClml(obj).then(async (res) => {
if (res.code == 200) {
let res = await this.clmlInitList(2)
if (res == 200) this.$message({
message: "新增成功",
type: "success",
})
}
});
return name;
}
},
//查看明细
viewDetail(){
this.detailDialog = true;
},
//设置tableData
setTableData(tableData){
this.$nextTick(res => {
this.tableData = tableData;
},
// 材料目录点击选中
treeClick (item, index) {
this.previewImg.index = 0
this.treeCheckId = item?.bsmSj
this.treeCheckIndex = index
this.previewImg.imgList = item?.children
this.previewImg.bsmSj = item?.bsmSj
},
// 小图片点击
imgClick (item, index) {
this.showImg = item;
this.titleYs = index + 1;
},
// 字典
dicStatus (val, code) {
let data = this.$store.getters.dictData[code],
name = "暂无";
if (data) {
data.map((item) => {
if (item.dcode == val) {
name = item.dname
}
});
return name
}
},
//查看明细
viewDetail () {
this.$popupDialog("查看明细", "workflow/components/dialog/clxxDetailDialog", {
data: this.tableData
}, "60%")
},
//设置tableData
setTableData (tableData) {
this.$nextTick(res => {
this.tableData = tableData;
})
},
},
},
};
};
</script>
<style scoped lang='scss'>
@import "~@/styles/mixin.scss";
.active {
background: $light-blue !important;
color: #fff;
}
.required {
font-size: 12px;
color: $pink;
float: left;
}
@import "~@/styles/mixin.scss";
.cl_number {
float: right;
}
.clxx {
width: 100%;
display: flex;
padding-left: 5px;
height: calc(100vh - 125px);
.left {
display: flex;
flex-direction: column;
justify-content: space-between;
.active {
background: $light-blue !important;
color: #fff;
}
.item {
width: 28px;
height: 49%;
@include flex-center;
background-color: #E4E7ED;
border-bottom-right-radius: 10px;
padding: 5px;
cursor: pointer;
transition: all 0.3s;
.required {
font-size: 12px;
color: $pink;
float: left;
}
&:hover {
@extend .active;
}
}
.cl_number {
float: right;
}
.right {
.clxx {
width: 100%;
height: 100%;
display: flex;
padding-left: 5px;
height: calc(100vh - 125px);
.left {
display: flex;
flex-direction: column;
justify-content: space-between;
.clmlmx-box {
margin: 0 auto;
.item {
width: 28px;
height: 49%;
@include flex-center;
background-color: #e4e7ed;
border-bottom-right-radius: 10px;
padding: 5px;
cursor: pointer;
transition: all 0.3s;
.title {
text-align: center;
height: 60px;
line-height: 60px;
border: 1px solid #dfe6ec;
font-size: 20px;
background: #81d3f81a;
margin-bottom: -1px;
&:hover {
@extend .active;
}
}
}
.clyl-box {
.right {
width: 100%;
height: 100%;
display: flex;
.menu-tree {
width: 20%;
min-width: 160px;
height: 100%;
margin-right: 10px;
border-right: 1px dotted #d9d9d9;
padding: 0 15px;
.clmlmx-box {
margin: 0 auto;
.item {
line-height: 30px;
padding-top: 5px;
border-bottom: 1px solid #e8e8e8;
font-size: 16px;
.title {
text-align: center;
color: $light-blue;
height: 60px;
line-height: 60px;
border: 1px solid #dfe6ec;
font-size: 20px;
background: #81d3f81a;
margin-bottom: -1px;
}
}
.itemIcon {
float: right;
line-height: 60px;
cursor: pointer;
}
.clyl-box {
width: 100%;
height: 100%;
display: flex;
.child {
line-height: 32px;
border-bottom: 1px solid #e8e8e8;
padding-left: 10px;
color: #6b6b6b;
cursor: pointer;
box-sizing: border-box;
border-radius: 6px;
line-height: 20px;
transition: all 0.3s;
padding: 8px 0;
}
.menu-tree {
width: 20%;
min-width: 160px;
height: 100%;
margin-right: 10px;
border-right: 1px dotted #d9d9d9;
padding: 0 15px;
.child:hover {
.item {
line-height: 30px;
padding-top: 5px;
border-bottom: 1px solid #e8e8e8;
font-size: 16px;
text-align: center;
color: $light-blue;
transform: scale(1.1);
}
.checked {
border: 1px solid $light-blue;
color: $light-blue;
.itemIcon {
float: right;
line-height: 60px;
cursor: pointer;
}
.child {
line-height: 32px;
border-bottom: 1px solid #e8e8e8;
padding-left: 10px;
color: #6b6b6b;
cursor: pointer;
box-sizing: border-box;
border-radius: 6px;
line-height: 20px;
transition: all 0.3s;
padding: 8px 0;
}
.child:hover {
color: $light-blue;
transform: scale(1.1);
}
.checked {
border: 1px solid $light-blue;
color: $light-blue;
}
}
}
}
.clyl-img {
width: 75%;
height: 100%;
background: #f3f4f7;
margin: 0 auto;
position: relative;
.clyl-img {
width: 75%;
height: 100%;
background: #f3f4f7;
margin: 0 auto;
position: relative;
}
}
}
}
}
</style>
\ No newline at end of file
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:39:47
-->
<template>
<dialogBox title="申请人信息" width="60%" isMain v-model="myValue" :isFullscreen="false" @submitForm="submitForm"
@closeDialog="closeDialog" :isButton="showButton">
......@@ -138,83 +143,83 @@
</dialogBox>
</template>
<script>
import { mapGetters } from "vuex";
export default {
props: {
value: { type: Boolean, default: false },
details: { type: Object, default: {} },
showButton: {type: Boolean, default: false}
},
computed: {
...mapGetters(["dictData"]),
},
data () {
return {
myValue: this.value,
ruleForm: {
sqrlx: "",
sqrmc: "",
zjzl: "",
zjh: "",
dh: "",
xb: "",
frmc: "",
gjdq: "",
szss: "",
txdz: "",
yb: "",
fzjg: "",
dzyj: "",
qlbl: "",
gzdw: "",
dljg: "",
dlrxm: "",
dlrzjlx: "",
dlrzjh: "",
import { mapGetters } from "vuex";
export default {
props: {
value: { type: Boolean, default: false },
details: { type: Object, default: {} },
showButton: { type: Boolean, default: false }
},
computed: {
...mapGetters(["dictData"]),
},
data () {
return {
myValue: this.value,
ruleForm: {
sqrlx: "",
sqrmc: "",
zjzl: "",
zjh: "",
dh: "",
xb: "",
frmc: "",
gjdq: "",
szss: "",
txdz: "",
yb: "",
fzjg: "",
dzyj: "",
qlbl: "",
gzdw: "",
dljg: "",
dlrxm: "",
dlrzjlx: "",
dlrzjh: "",
},
rules: {
sqrlx: [{ required: true, message: "权利人类型", trigger: "change" }],
sqrmc: [{ required: true, message: "姓名/名称", trigger: "blur" }],
zjzl: [{ required: true, message: "证件种类", trigger: "change" }],
zjh: [{ required: true, message: "证件号", trigger: "blur" }],
},
};
},
watch: {
value (val) {
this.myValue = _.cloneDeep(val);
},
rules: {
sqrlx: [{ required: true, message: "权利人类型", trigger: "change" }],
sqrmc: [{ required: true, message: "姓名/名称", trigger: "blur" }],
zjzl: [{ required: true, message: "证件种类", trigger: "change" }],
zjh: [{ required: true, message: "证件号", trigger: "blur" }],
details: {
handler: function (val, oldVal) {
this.ruleForm = val;
},
deep: true,
},
};
},
watch: {
value (val) {
this.myValue = _.cloneDeep(val);
},
details: {
handler: function (val, oldVal) {
this.ruleForm = val;
methods: {
closeDialog () {
this.$emit("input", false);
this.$refs["ruleForm"].resetFields();
},
submitForm () {
this.$refs.ruleForm.validate((valid) => {
if (valid) {
this.$emit("input", false);
this.$emit("updateDetail", _.cloneDeep(this.ruleForm));
} else {
return false;
}
});
},
deep: true,
},
},
methods: {
closeDialog () {
this.$emit("input", false);
this.$refs["ruleForm"].resetFields();
},
submitForm () {
this.$refs.ruleForm.validate((valid) => {
if (valid) {
this.$emit("input", false);
this.$emit("updateDetail", _.cloneDeep(this.ruleForm));
} else {
return false;
}
});
},
},
};
};
</script>
<style scoped lang="scss">
@import "~@/styles/dialogBoxheader.scss";
.submit-button {
text-align: center;
height: 52px;
padding-top: 10px;
background-color: #fff;
}
@import "~@/styles/dialogBoxheader.scss";
.submit-button {
text-align: center;
height: 52px;
padding-top: 10px;
background-color: #fff;
}
</style>
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-09 09:20:10
-->
<template>
<dialogBox title="新建材料信息" width="20%" isMain v-model="myValue" @closeDialog="closeDialog" @submitForm="handleSubmit"
:isFullscreen="false">
......@@ -24,48 +29,52 @@
</template>
<script>
import { mapGetters } from "vuex";
export default {
props: {
value: { type: Boolean, default: false },
},
data () {
return {
myValue: this.value,
ruleForm: {
cllx: "",
clmc: "",
},
};
},
computed: {
...mapGetters(["dictData"]),
},
watch: {
value (val) {
this.myValue = val;
import { mapGetters } from "vuex";
export default {
props: {
value: { type: Boolean, default: false },
},
data () {
return {
myValue: this.value,
ruleForm: {
cllx: "",
clmc: "",
},
};
},
computed: {
...mapGetters(["dictData"]),
},
},
methods: {
closeDialog () {
this.$emit("input", false);
this.ruleForm = {
cllx: "",
clmc: "",
}
watch: {
value (val) {
this.myValue = val;
},
},
handleSubmit () {
this.$parent.addSave(this.ruleForm);
this.$emit("input", false);
methods: {
closeDialog () {
this.$emit("input", false);
this.ruleForm = {
cllx: "",
clmc: "",
}
},
handleSubmit () {
this.$parent.addSave(this.ruleForm);
this.ruleForm = {
cllx: "",
clmc: "",
}
this.$emit("input", false);
},
},
},
};
};
</script>
<style scoped lang="scss">
.submit-button {
text-align: center;
height: 52px;
padding-top: 10px;
background-color: #fff;
}
.submit-button {
text-align: center;
height: 52px;
padding-top: 10px;
background-color: #fff;
}
</style>
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:39:57
-->
<template>
<dialogBox title="材料明细" width="60%" v-model="value" @closeDialog="closeDialog" :isButton="false">
<div class="clxx">
<div class="right">
<!-- 材料目录明细 -->
<div class="clmlmx-box">
<div class="title">申请材料目录</div>
<lb-table :column="column" :key="key" :heightNum="150" :pagination="false" :data="data">
</lb-table>
</div>
</div>
<div class="clmlmx-box">
<div class="title">申请材料目录</div>
<lb-table :column="column" :key="key" :heightNumSetting="true" :pagination="false" :data="formData.data">
</lb-table>
<div class="text-center">
<el-button @click="$popupCacel">取消</el-button>
</div>
</dialogBox>
</div>
</template>
<script>
import { mapGetters } from "vuex";
import {InitClml,saveClml,deleteSjClml,moveClml} from "@/api/clxx.js";
export default {
components: { },
props: {
value: { type: Boolean, default: false },
data: { type: Array, default: () => {} },
},
data () {
return {
isDialog: false,
iclass: "",
column: [
{
width: "50",
renderHeader: (h, scope) => {
return (
<div>
{
''
}
</div>
)
import store from '@/store/index.js'
import { InitClml, saveClml, deleteSjClml, moveClml } from "@/api/clxx.js";
export default {
props: {
formData: {
type: Object,
default: () => {
return {}
}
}
},
data () {
return {
column: [
{
width: "50",
label: '序号',
type: 'index'
},
render: (h, scope) => {
return (
<div>
{
this.$route.query.viewtype || scope.row.sfxjcl == '0' ? <span>{}</span> :
<i class="el-icon-minus pointer"
onClick={() => {
this.handleDelete(scope.$index, scope.row);
}}
></i>
}
</div>
)
}
},
{
width: "50",
label: '序号',
render: (h, scope) => {
return <span>{scope.$index + 1}</span>
}
},
{
prop: "isrequired",
label: "是否必选",
width: "50",
render: (h, scope) => {
if (scope.row.sfxjcl === "1") {
return (
<div>
<span>可选</span>
</div>
);
}
else {
return (
<div>
<span>必选</span>
</div>
);
}
{
prop: "isrequired",
label: "是否必选",
width: "80",
render: (h, scope) => {
if (scope.row.sfxjcl === "1") {
return (
<div>
<span>可选</span>
</div>
);
}
else {
return (
<div>
<span>必选</span>
</div>
);
}
},
},
},
{
prop: "sjmc",
label: "材料名称",
},
{
prop: "sjlx",
label: "材料类型",
width: "80",
render: (h, scope) => {
return (
<div>
<span>{this.dicStatus(scope.row.sjlx, "A40")}</span>
</div>
);
{
prop: "sjmc",
label: "材料名称",
},
},
{
prop: "sjsl",
label: "份数",
width: "50"
},
{
prop: "smzt",
label: "扫描状态",
width: "80",
render: (h, scope) => {
if (scope.row.children && scope.row.children.length > 0) {
return (
<div>
<span>已扫描</span>
</div>
);
} else {
{
prop: "sjlx",
label: "材料类型",
width: "80",
render: (h, scope) => {
return (
<div>
<span>未扫描</span>
<span>{this.dicStatus(scope.row.sjlx, "A40")}</span>
</div>
);
}
},
},
},
{
label: "扫描页数",
width: "50",
render: (h, scope) => {
if (scope.row.children && scope.row.children.length > 0) {
return (
<div>
<span>{scope.row.children.length}</span>
</div>
);
} else {
{
prop: "sjsl",
label: "份数",
width: "50"
},
{
prop: "smzt",
label: "扫描状态",
width: "80",
render: (h, scope) => {
if (scope.row.children && scope.row.children.length > 0) {
return (
<div>
<span>已扫描</span>
</div>
);
} else {
return (
<div>
<span>未扫描</span>
</div>
);
}
},
},
{
label: "扫描页数",
width: "80",
render: (h, scope) => {
if (scope.row.children && scope.row.children.length > 0) {
return (
<div>
<span>{scope.row.children.length}</span>
</div>
);
} else {
return (
<div>
<span>0</span>
</div>
);
}
},
},
{
label: "操作",
width: "80",
render: (h, scope) => {
return (
<div>
<span>0</span>
<el-button
type="text"
disabled={scope.$index == 0}
onClick={() => {
this.moveUpward(scope.$index, scope.row);
}}
>
上移
</el-button>
<el-button
type="text"
disabled={scope.$index + 1 == this.tableData.length}
onClick={() => {
this.moveDown(scope.$index, scope.row);
}}
>
下移
</el-button>
</div>
);
}
},
},
},
{
label: "操作",
width: "80",
render: (h, scope) => {
return (
<div>
<el-button
type="text"
disabled={scope.$index == 0}
onClick={() => {
this.moveUpward(scope.$index, scope.row);
}}
>
上移
</el-button>
<el-button
type="text"
disabled={scope.$index + 1 == this.tableData.length}
onClick={() => {
this.moveDown(scope.$index, scope.row);
}}
>
下移
</el-button>
</div>
);
},
},
],
key: 0,
tableData: [],
}
},
computed: {
...mapGetters(["dictData"])
},
created () {
},
methods: {
// 材料目录明细初始化
clmlInitList () {
return new Promise(resolve => {
this.unitData = this.$parent.unitData;
var formdata = new FormData();
formdata.append("bsmSldy", this.unitData[0]?.bsmSldy);
formdata.append("bsmSlsq", this.$route.query.bsmSlsq);
InitClml(formdata).then((res) => {
if(res.code == 200){
resolve(res.code)
if(res.result && res.result.length > 0){
this.data = res.result;
}else{
this.data = []
}
}else{
this.$message.error(res.message)
}
})
})
],
key: 0,
tableData: []
}
},
// 上移
moveUpward (index, row) {
let obj = {
xh: row.xh,
bsmSlsq: row.bsmSlsq,
moveDirection: "UP",
};
// 接口待调
moveClml(obj).then(async (res) => {
if (res.code == 200) {
let res = await this.clmlInitList()
if (res == 200) {
this.$message({
message: '上移成功',
type: 'success'
})
this.$parent.setTableData(this.data)
}
} else {
this.$message.error(res.message);
}
})
created () {
console.log(this.formData.data, 'formData');
},
// 下移
moveDown (index, row) {
let obj = {
xh: row.xh,
bsmSlsq: row.bsmSlsq,
moveDirection: "DOWN",
}
// 接口待调
moveClml(obj).then(async (res) => {
if (res.code == 200) {
let res = await this.clmlInitList()
if (res == 200) {
methods: {
// 材料目录明细初始化
clmlInitList () {
return new Promise(resolve => {
this.unitData = this.$parent.unitData;
var formdata = new FormData();
formdata.append("bsmSldy", this.unitData[0]?.bsmSldy);
formdata.append("bsmSlsq", this.$route.query.bsmSlsq);
InitClml(formdata).then((res) => {
if (res.code == 200) {
resolve(res.code)
if (res.result && res.result.length > 0) {
this.data = res.result;
} else {
this.data = []
}
} else {
this.$message.error(res.message)
}
})
})
},
// 上移
moveUpward (index, row) {
let obj = {
xh: row.xh,
bsmSlsq: row.bsmSlsq,
moveDirection: "UP",
};
// 接口待调
moveClml(obj).then(async (res) => {
if (res.code == 200) {
let res = await this.clmlInitList()
if (res == 200) {
this.$message({
message: '下移成功',
type: 'success'
})
this.$parent.setTableData(this.data)
message: '上移成功',
type: 'success'
})
this.$parent.setTableData(this.data)
}
} else {
this.$message.error(res.message);
}
} else {
this.$message.error(res.message);
})
},
// 下移
moveDown (index, row) {
let obj = {
xh: row.xh,
bsmSlsq: row.bsmSlsq,
moveDirection: "DOWN",
}
})
},
// 材料目录删除
handleDelete (index, row) {
let that = this
this.$confirm('此操作将永久删除该 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
deleteSjClml({ sjBsm: row.bsmSj }).then(async (res) => {
// 接口待调
moveClml(obj).then(async (res) => {
if (res.code == 200) {
let res = await that.clmlInitList()
let res = await this.clmlInitList()
if (res == 200) {
that.$message({
message: "删除成功",
type: "success",
this.$message({
message: '下移成功',
type: 'success'
})
this.$parent.setTableData(this.data)
}
} else {
this.$message.error(res.message);
}
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
},
// 材料目录删除
handleDelete (index, row) {
let that = this
this.$confirm('此操作将永久删除该 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
deleteSjClml({ sjBsm: row.bsmSj }).then(async (res) => {
if (res.code == 200) {
let res = await that.clmlInitList()
if (res == 200) {
that.$message({
message: "删除成功",
type: "success",
})
// this.$parent.setTableData(this.data)
}
}
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
})
})
})
},
// 字典
dicStatus (val, code) {
let data = this.$store.getters.dictData[code],
name = "暂无";
if (data) {
data.map((item) => {
if (item.dcode == val) {
name = item.dname;
}
});
return name;
}
},
closeDialog(){
this.$emit("input", false);
},
},
};
</script>
<style scoped lang='scss'>
@import "~@/styles/mixin.scss";
.active {
background: $light-blue !important;
color: #fff;
}
.required {
font-size: 12px;
color: $pink;
float: left;
}
.cl_number {
float: right;
}
.clxx {
width: 100%;
display: flex;
padding-left: 5px;
height: calc(100vh - 125px);
.left {
display: flex;
flex-direction: column;
justify-content: space-between;
.item {
width: 28px;
height: 49%;
@include flex-center;
background-color: #E4E7ED;
border-bottom-right-radius: 10px;
padding: 5px;
cursor: pointer;
transition: all 0.3s;
&:hover {
@extend .active;
},
// 字典
dicStatus (val, code) {
let data = store.getters.dictData[code],
name = "暂无";
if (data) {
data.map((item) => {
if (item.dcode == val) {
name = item.dname;
}
});
return name;
}
}
}
}
</script>
<style scoped lang='scss'>
@import "~@/styles/mixin.scss";
.clmlmx-box {
margin: 0 auto;
.right {
width: 100%;
height: 100%;
.clmlmx-box {
margin: 0 auto;
.title {
text-align: center;
height: 60px;
line-height: 60px;
border: 1px solid #dfe6ec;
font-size: 20px;
background: #81d3f81a;
margin-bottom: -1px;
}
}
.clyl-box {
width: 100%;
height: 100%;
display: flex;
.menu-tree {
width: 20%;
min-width: 160px;
height: 100%;
margin-right: 10px;
border-right: 1px dotted #d9d9d9;
padding: 0 15px;
.item {
line-height: 30px;
padding-top: 5px;
border-bottom: 1px solid #e8e8e8;
font-size: 16px;
text-align: center;
color: $light-blue;
.itemIcon {
float: right;
line-height: 60px;
cursor: pointer;
}
.child {
line-height: 32px;
border-bottom: 1px solid #e8e8e8;
padding-left: 10px;
color: #6b6b6b;
cursor: pointer;
box-sizing: border-box;
border-radius: 6px;
line-height: 20px;
transition: all 0.3s;
padding: 8px 0;
}
.child:hover {
color: $light-blue;
transform: scale(1.1);
}
.checked {
border: 1px solid $light-blue;
color: $light-blue;
}
}
}
.clyl-img {
width: 75%;
height: 100%;
background: #f3f4f7;
margin: 0 auto;
position: relative;
}
.title {
text-align: center;
height: 60px;
line-height: 60px;
border: 1px solid #dfe6ec;
font-size: 20px;
background: #81d3f81a;
margin-bottom: -1px;
}
}
}
</style>
\ No newline at end of file
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:40:02
-->
<template>
<div>
<el-button type="primary" native-type="submit" @click="openDialog">新增常用</el-button>
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:40:09
-->
<template>
<div>
<div class="zsdy-content loadingtext">
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-18 10:53:49
-->
<template>
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px">
<el-row>
......@@ -53,7 +58,6 @@
</el-form-item>
</el-form>
</template>
<script>
import Vue from 'vue'
import store from '@/store/index.js'
......@@ -95,13 +99,13 @@
],
lzrdh: [
{ required: true, message: '请输入电话号码', trigger: 'blur' }
],
]
},
tableData: {
total: 0,
columns: datas.columns().lzgrid,
data: [],
},
data: []
}
}
},
mounted () {
......@@ -119,7 +123,6 @@
this.ruleForm.fzsj = res.result.fzsj
this.ruleForm.fzsl = res.result.fzsl
this.ruleForm.bdcqzList = res.result.list;
}
})
},
......@@ -154,3 +157,4 @@
@import "~@/styles/mixin.scss";
</style>
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:40:23
-->
<template>
<div class="from-clues loadingtext" v-Loading="loading" element-loading-text="拼命加载中..." style="height:720px">
<!-- 表单部分 -->
......@@ -11,147 +16,147 @@
</template>
<script>
import { datas } from "../../javascript/zsyl.js";
import { getSlsqBdcqzList, bdcqzPreview } from "@/api/bdcqz.js"
export default {
name: "zsyl",
components: {
},
props: {
formData: {
type: Object,
default: {}
}
},
data () {
return {
loading: false,
//印刷序列号集合
ysxlh: [],
//列名称对象
columns: [],
//选择的不动产权证文件
bdcqz: '',
//证书打开类型 是否需要展示打印按钮
isToPrint: false,
//tab切换栏数组
headTabBdcqz: [],
//tab选择绑定值
activeName: '',
//证书图片预览
previewImage: '',
ruleForm: {
bsmBdcqz: '',
szmc: '不动产权证书',
bdcqzlx: '',
szzh: '',
ysxlh: '',
},
}
},
mounted () {
this.columns = datas.columns();
if (this.formData.bdcqz) {
//从缮证进入
this.bdcqz = this.formData.bdcqz
} else {
//从按钮进入
this.getHeadTabBdcqz();
}
},
methods: {
//获取证书内容
getRowValue (code) {
var value = this.bdcqz[code];
return value;
import { datas } from "../../javascript/zsyl.js";
import { getSlsqBdcqzList, bdcqzPreview } from "@/api/bdcqz.js"
export default {
name: "zsyl",
components: {
},
//获取受理申请下全部不动产权证
getHeadTabBdcqz () {
this.loading = true
getSlsqBdcqzList({ bsmSlsq: this.formData.bsmSlsq }).then(res => {
if (res.code == 200) {
if (res.result && res.result.length > 0) {
this.activeName = res.result[0].bsmBdcqz
this.bdcqz = res.result[0]
this.headTabBdcqz = res.result
this.getBdcqzPreview();
} else {
this.loading = false
}
}
})
props: {
formData: {
type: Object,
default: {}
}
},
//tab表头切换方法
handleClick (e) {
this.bdcqz = this.headTabBdcqz[e.index - 0]
this.activeName = this.headTabBdcqz.bsmBdcqz
this.getBdcqzPreview();
data () {
return {
loading: false,
//印刷序列号集合
ysxlh: [],
//列名称对象
columns: [],
//选择的不动产权证文件
bdcqz: '',
//证书打开类型 是否需要展示打印按钮
isToPrint: false,
//tab切换栏数组
headTabBdcqz: [],
//tab选择绑定值
activeName: '',
//证书图片预览
previewImage: '',
ruleForm: {
bsmBdcqz: '',
szmc: '不动产权证书',
bdcqzlx: '',
szzh: '',
ysxlh: '',
},
}
},
getBdcqzPreview () {
bdcqzPreview(this.bdcqz).then(res => {
this.loading = false
let blob = new Blob([res]);
let url = window.URL.createObjectURL(blob);
this.previewImage = url;
})
mounted () {
this.columns = datas.columns();
if (this.formData.bdcqz) {
//从缮证进入
this.bdcqz = this.formData.bdcqz
} else {
//从按钮进入
this.getHeadTabBdcqz();
}
},
methods: {
//获取证书内容
getRowValue (code) {
var value = this.bdcqz[code];
return value;
},
//获取受理申请下全部不动产权证
getHeadTabBdcqz () {
this.loading = true
getSlsqBdcqzList({ bsmSlsq: this.formData.bsmSlsq }).then(res => {
if (res.code == 200) {
if (res.result && res.result.length > 0) {
this.activeName = res.result[0].bsmBdcqz
this.bdcqz = res.result[0]
this.headTabBdcqz = res.result
this.getBdcqzPreview();
} else {
this.loading = false
}
}
})
},
//tab表头切换方法
handleClick (e) {
this.bdcqz = this.headTabBdcqz[e.index - 0]
this.activeName = this.headTabBdcqz.bsmBdcqz
this.getBdcqzPreview();
},
getBdcqzPreview () {
bdcqzPreview(this.bdcqz).then(res => {
this.loading = false
let blob = new Blob([res]);
let url = window.URL.createObjectURL(blob);
this.previewImage = url;
})
},
}
}
}
</script>
<style scoped lang="scss">
@import "~@/styles/mixin.scss";
@import "~@/styles/mixin.scss";
.imgClass {
display: inline-block;
height: auto;
max-width: 100%;
}
.imgClass {
display: inline-block;
height: auto;
max-width: 100%;
}
.middle_padding {
padding-bottom: 10px;
}
.middle_padding {
padding-bottom: 10px;
}
.zsyl-button {
text-align: center;
margin-top: 20px;
.zsyl-button {
text-align: center;
margin-top: 20px;
.operation_button {
width: 100px;
border: 1px solid rgb(0, 121, 254);
}
.operation_button {
width: 100px;
border: 1px solid rgb(0, 121, 254);
}
.dy-button {
color: white;
background-color: rgb(0, 121, 254);
.dy-button {
color: white;
background-color: rgb(0, 121, 254);
}
}
}
.table-column {
border-spacing: 1px;
width: 100%;
.table-column {
border-spacing: 1px;
width: 100%;
tr td {
border: 1px solid #ccc;
text-align: center;
height: 40px;
padding: 4px;
font-size: 13px;
background: rgb(251, 249, 229);
tr td {
border: 1px solid #ccc;
text-align: center;
height: 40px;
padding: 4px;
font-size: 13px;
background: rgb(251, 249, 229);
}
}
}
.zsyl-title {
background: #FAFBE5;
text-align: center;
padding: 5px 0px;
font-size: 20px;
}
.zsyl-title {
background: #fafbe5;
text-align: center;
padding: 5px 0px;
font-size: 20px;
}
.no-data {
font-size: 18px;
display: flex;
text-align: center;
justify-content: center;
}
.no-data {
font-size: 18px;
display: flex;
text-align: center;
justify-content: center;
}
</style>
......
<!--
功能:流程图
作者:calliope
* @Description: 功能:流程图
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:40:57
-->
<template>
<div class='flowChart'>
......@@ -9,19 +10,19 @@
</template>
<script>
export default {
props: {
formData: {
type: String,
default: ''
export default {
props: {
formData: {
type: String,
default: ''
}
}
}
}
</script>
<style scoped lang="scss">
@import "~@/styles/mixin.scss";
@import "~@/styles/mixin.scss";
.flowChart {
margin: 20px 0;
}
.flowChart {
margin: 20px 0;
}
</style>
\ No newline at end of file
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-04 10:29:45
* @LastEditTime: 2023-05-16 15:55:45
-->
<template>
<div class="from-clues">
......@@ -51,12 +51,12 @@
ysxlh: '',
zsh: '',
qlr: '',
bsmSldy: '',
bsmSldy: ''
},
tableData: {
total: 0,
columns: datas.columns().fzgrid,
data: [],
data: []
},
dialogVisible: false
}
......@@ -66,12 +66,12 @@
this.ruleForm.bsmSlsq = this.$route.query.bsmSlsq;
getCertificateList(this.ruleForm).then(res => {
if (res.code === 200) {
this.tableData.data = res.result;
this.tableData.data = res.result ? res.result : []
}
})
},
zslqClick () {
this.$popupDialog("不动产权证领取", "workflow/components/dialog/zslq", {}, '80%', true);
this.$popupDialog("不动产权证领取", "workflow/components/dialog/zslq", {}, '80%', true)
}
}
}
......
<!--
* @Description: workFrame左侧菜单列表-普通
* @Autor: renchao
* @LastEditTime: 2023-05-18 14:39:07
-->
<template>
<div class="leftmenu" :class="{ 'animation-map-drawer': isShowdrawer }">
<el-menu :default-active="activeIndex" @select="batchUnitClick" class="title-batch" v-if="showBatch">
<el-menu-item index="-1" key="-1" class="menus">
<div>{{ batchButtonName }}</div>
</el-menu-item>
</el-menu>
<div v-if="this.isShowdrawer">
<div class="title">
申请单元列表({{ unitData.length }})
<el-button type="text" class="batchDel" @click="handleBatchDel" v-if="unitData.length > 1">批量删除</el-button>
</div>
<el-menu :default-active="activeIndex" @select="unitClick">
<el-menu-item v-for="(item, index) in unitData" :index="index.toString()" :key="index">
<div>
<p>{{ item.bdcdyh }}</p>
<p class="title-detail">{{ item.zl }}</p>
</div>
<i class="el-icon-delete" v-if="unitData.length > 1" @click.stop="handleDel(item)"></i>
</el-menu-item>
</el-menu>
</div>
<div class="map-drawer-click map-drawer" v-if="!isShowdrawer" @click="
() => {
this.isShowdrawer = !this.isShowdrawer;
}
"></div>
<div class="map-drawer-expand map-drawer" v-else @click="
() => {
this.isShowdrawer = !this.isShowdrawer;
}
"></div>
</div>
</template>
<script>
import { leftMenu } from "@/api/fqsq.js"
import { deleteFlow } from "@/api/ywbl.js";
export default {
data () {
return {
//受理申请标识码
bsmSlsq: this.$route.query.bsmSlsq,
//当前流程所在环节
bestepid: this.$route.query.bestepid,
// 默认选中
activeIndex: '0',
// 折叠
isShowdrawer: true,
// 批量操作
showBatch: false,
//批量操作按钮名称
batchButtonName: '',
//左侧菜单数据集合
unitData: [],
// 设置表单传递数据
currentSelectProps: {}
}
},
mounted () {
this.loadBdcdylist();
},
methods: {
//读取申请单元信息
loadBdcdylist () {
var formdata = new FormData();
formdata.append("bsmSlsq", this.bsmSlsq);
formdata.append("bestepid", this.bestepid);
leftMenu(formdata).then((res) => {
if (res.code === 200 && res.result) {
this.unitData = res.result;
this.currentSelectProps = res.result[0];
this.$emit('getCurrentSelectProps', this.currentSelectProps);
this.judgeBatchShow();
if (this.showBatch) {
//满足批量查封/批量抵押按钮出现 即先展示批量表单
this.batchUnitClick();
} else {
//默认选择单元列表第一个
this.unitClick(0);
}
}
})
},
//批量按钮判断
judgeBatchShow () {
this.showBatch = false;
if (this.unitData.length > 1) {
let qllx = this.$route.query.sqywbm.substring(0, 3);
switch (qllx) {
case 'B39':
this.showBatch = true;
this.batchButtonName = '批量查封清单信息';
break;
case 'A37':
this.showBatch = true;
this.batchButtonName = '批量抵押';
break;
default:
this.batchButtonName = '批量操作';
}
}
},
/**
* @description: 删除左侧列表
* @param {*} item
* @author: renchao
*/
handleDel (item) {
this.$confirm("确定要删除吗, 是否继续?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => {
var formdata = new FormData();
formdata.append("bsmSldyList", item.bsmSldy.split(","));
formdata.append("bsmSlsq", this.bsmSlsq);
deleteFlow(formdata).then((res) => {
if (res.code == 200) {
this.$message.success("删除成功");
this.$parent.updateDialog();
} else {
this.$message.error(res.message);
}
});
})
.catch(() => {
this.$message({
type: "info",
message: "已取消删除",
});
});
},
//批量按钮点击事件
batchUnitClick () {
this.currentSelectProps.batchOperation = true;
this.activeIndex = "-1";
this.$parent.stepForm();
},
//批量操作
handleBatchDel () {
this.$popupDialog("批量删除", "workflow/components/batchDel", {
bsmSlsq: this.bsmSlsq,
dataList: this.unitData,
}, '50%', true)
},
//申请单元点击事件
unitClick (index) {
this.currentSelectProps = this.unitData[index];
this.currentSelectProps.batchOperation = false;
this.activeIndex = index.toString();
this.$parent.stepForm(index);
}
}
}
</script>
<style scoped lang='scss'>
@import "~@/styles/mixin.scss";
@import "../../workFrame.scss";
</style>
\ No newline at end of file
<!--
* @Description: workFrame左侧菜单列表-分割
* @Autor: renchao
* @LastEditTime: 2023-05-18 16:32:02
-->
<template>
<div class="leftmenu" :class="{ 'animation-map-drawer': isShowdrawer }">
<el-menu :default-active="activeIndex" @select="batchUnitClick" class="title-batch" v-if="showBatch">
<el-menu-item index="-1" key="-1" class="menus">
<div>{{ batchButtonName }}</div>
</el-menu-item>
</el-menu>
<div v-if="this.isShowdrawer">
<!-- 变更前单元 -->
<div class="title">
<b>变更前单元</b>/申请单元列表({{ aroundUnitData.length }})
</div>
<el-menu :default-active="activeIndex" @select="unitClick">
<el-menu-item v-for="(item, index) in aroundUnitData" :index="index.toString()" :key="index">
<div>
<p>{{ item.bdcdyh }}</p>
<p class="title-detail">{{ item.zl }}</p>
</div>
<i class="el-icon-delete" v-if="aroundUnitData.length > 1" @click.stop="handleDel(item)"></i>
</el-menu-item>
</el-menu>
<!-- 变更后单元 -->
<div class="title">
<b>变更后单元</b>/申请单元列表({{ afterUnitData.length }})
</div>
<el-menu :default-active="activeHIndex" @select="handleAfterunitClick">
<el-menu-item v-for="(item, index) in afterUnitData" :index="index.toString()" :key="index">
<div>
<p>{{ item.bdcdyh }}</p>
<p class="title-detail">{{ item.zl }}</p>
</div>
<i class="el-icon-delete" v-if="afterUnitData.length > 1" @click.stop="handleDel(item)"></i>
</el-menu-item>
</el-menu>
</div>
<div class="map-drawer-click map-drawer" v-if="!isShowdrawer" @click="
() => {
this.isShowdrawer = !this.isShowdrawer;
}
"></div>
<div class="map-drawer-expand map-drawer" v-else @click="
() => {
this.isShowdrawer = !this.isShowdrawer;
}
"></div>
</div>
</template>
<script>
import { leftMenu } from "@/api/fqsq.js"
import { deleteFlow } from "@/api/ywbl.js";
export default {
data () {
return {
//受理申请标识码
bsmSlsq: this.$route.query.bsmSlsq,
//当前流程所在环节
bestepid: this.$route.query.bestepid,
// 变更前单元默认选中
activeIndex: '0',
// 变更后单元默认选中
activeHIndex: '-1',
// 折叠
isShowdrawer: true,
// 批量操作
showBatch: false,
//批量操作按钮名称
batchButtonName: '',
//左侧菜单数据集合-变更前单元
aroundUnitData: [],
//左侧菜单数据集合-变更后单元
afterUnitData: [],
// 设置表单传递数据
currentSelectProps: {}
}
},
mounted () {
this.loadBdcdylist();
},
methods: {
//读取申请单元信息
loadBdcdylist () {
var formdata = new FormData();
formdata.append("bsmSlsq", this.bsmSlsq);
formdata.append("bestepid", this.bestepid);
leftMenu(formdata).then((res) => {
if (res.code === 200 && res.result) {
this.aroundUnitData = res.result.filter(item => item.bglx == '1')
this.afterUnitData = res.result.filter(item => item.bglx == '2')
this.currentSelectProps = res.result[0];
this.$emit('getCurrentSelectProps', this.currentSelectProps);
this.judgeBatchShow();
if (this.showBatch) {
//满足批量查封/批量抵押按钮出现 即先展示批量表单
this.batchUnitClick();
} else {
//默认选择单元列表第一个
this.unitClick(0);
}
}
})
},
//批量按钮判断
judgeBatchShow () {
this.showBatch = false;
if (this.afterUnitData.length > 1) {
let qllx = this.$route.query.sqywbm.substring(0, 3);
switch (qllx) {
case 'B39':
this.showBatch = true;
this.batchButtonName = '批量查封清单信息';
break;
case 'A37':
this.showBatch = true;
this.batchButtonName = '批量抵押';
break;
default:
this.batchButtonName = '批量操作';
}
}
},
/**
* @description: 删除左侧列表
* @param {*} item
* @author: renchao
*/
handleDel (item) {
this.$confirm("确定要删除吗, 是否继续?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => {
var formdata = new FormData();
formdata.append("bsmSldyList", item.bsmSldy.split(","));
formdata.append("bsmSlsq", this.bsmSlsq);
deleteFlow(formdata).then((res) => {
if (res.code == 200) {
this.$message.success("删除成功");
this.$parent.updateDialog();
} else {
this.$message.error(res.message);
}
});
})
.catch(() => {
this.$message({
type: "info",
message: "已取消删除",
});
});
},
//批量按钮点击事件
batchUnitClick () {
this.currentSelectProps.batchOperation = true;
this.activeIndex = "-1";
this.$parent.stepForm();
},
//申请单元点击事件
unitClick (index) {
this.activeHIndex = '-1'
this.currentSelectProps = this.aroundUnitData[index];
this.currentSelectProps.batchOperation = false;
this.activeIndex = index.toString();
this.$parent.stepForm(index);
},
handleAfterunitClick (index) {
this.activeIndex = '-1'
this.currentSelectProps = this.afterUnitData[index];
this.currentSelectProps.batchOperation = false;
this.activeHIndex = index.toString();
this.$parent.stepForm(index);
}
}
}
</script>
<style scoped lang='scss'>
@import "~@/styles/mixin.scss";
@import "../../workFrame.scss";
</style>
\ No newline at end of file
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:41:15
-->
<template>
<div>
<div class="process-viewer">
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:41:20
-->
<template>
<div>
<lb-table :column="column" :pagination="false" :key="key" :heightNumSetting="true" :minHeight="150"
......
<!--
功能:审批意见
作者:calliope
* @Description: 功能:审批意见
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:41:24
-->
<template>
<div class='spyj loadingtext'>
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:41:35
-->
<template>
<lb-table :column="column" :maxHeight="300" heightNumSetting :pagination="false" :key="key" :data="tableData">
</lb-table>
</template>
<script>
import addQlr from './dialog/addQlr.vue'
import { mapGetters } from 'vuex'
export default {
components: {
addQlr
},
computed: {
...mapGetters(["dictData"]),
},
props: {
tableData: {
type: Array,
default: function () {
return []
import addQlr from './dialog/addQlr.vue'
import { mapGetters } from 'vuex'
export default {
components: {
addQlr
},
computed: {
...mapGetters(["dictData"]),
},
props: {
tableData: {
type: Array,
default: function () {
return []
}
},
gyfs: {
type: String,
default: '1'
}
},
gyfs: {
type: String,
default: '1'
}
},
data () {
return {
key: 0,
dataIndex: 0,
dialog: false,
details: {},
tableDataList: [],
qlrCommonTable: [
{
width: '50',
renderHeader: (h, scope) => {
return <div> {
this.$route.query.viewtype == 1 ? '序号' : <i class="el-icon-plus pointer" onClick={() => { this.handleAdd() }}></i>
data () {
return {
key: 0,
dataIndex: 0,
dialog: false,
details: {},
tableDataList: [],
qlrCommonTable: [
{
width: '50',
renderHeader: (h, scope) => {
return <div> {
this.$route.query.viewtype == 1 ? '序号' : <i class="el-icon-plus pointer" onClick={() => { this.handleAdd() }}></i>
}
</div>
},
render: (h, scope) => {
return (
<div>
{
this.$route.query.viewtype == 1 ? <span>{scope.$index + 1}</span> :
<i class="el-icon-minus pointer" onClick={() => { this.handleMinus(scope.$index, scope.row) }}></i>
}
</div>
)
}
</div>
},
render: (h, scope) => {
return (
<div>
{
this.$route.query.viewtype == 1 ? <span>{scope.$index + 1}</span> :
<i class="el-icon-minus pointer" onClick={() => { this.handleMinus(scope.$index, scope.row) }}></i>
}
</div>
)
{
prop: "sqrmc",
label: "姓名/名称"
},
{
prop: "zjzl",
label: "证件种类"
},
{
prop: "zjh",
label: "证件号"
},
{
prop: "dh",
label: "联系电话"
},
{
prop: "frmc",
label: "法人"
},
{
label: '操作',
render: (h, scope) => {
return (
<div>
{
<el-button icon="el-icon-view" type="text" onClick={() => { this.handleView(scope.$index, scope.row) }}>查看</el-button>
}
</div>
)
}
}
},
{
prop: "sqrmc",
label: "姓名/名称"
},
{
prop: "zjzl",
label: "证件种类"
},
{
prop: "zjh",
label: "证件号"
},
{
prop: "dh",
label: "联系电话"
},
{
prop: "frmc",
label: "法人"
},
{
label: '操作',
render: (h, scope) => {
return (
<div>
{
<el-button icon="el-icon-view" type="text" onClick={() => { this.handleView(scope.$index, scope.row) }}>查看</el-button>
}
</div>
)
],
column: this.qlrCommonTable
}
},
watch: {
tableData: {
handler: function (val, oldVal) {
let that = this
if (val.length == 0 || !val) {
that.tableDataList = _.cloneDeep([{
sqrmc: '',
dlrzjlx: '',
dlrzjh: '',
fr: ''
}])
} else {
that.tableDataList = _.cloneDeep(val)
}
}
],
column: this.qlrCommonTable
}
},
watch: {
tableData: {
handler: function (val, oldVal) {
let that = this
if (val.length == 0 || !val) {
that.tableDataList = _.cloneDeep([{
sqrmc: '',
dlrzjlx: '',
dlrzjh: '',
fr: ''
}])
} else {
that.tableDataList = _.cloneDeep(val)
}
},
immediate: true,
deep: true
},
immediate: true,
deep: true
gyfs: {
handler (newVal, oldValue) {
let dataList = _.cloneDeep(this.qlrCommonTable)
if (newVal == '1') {
this.column = _.cloneDeep(dataList).slice(1, dataList.length)
} else if ((newVal == '2')) {
this.column = dataList
} else {
this.column = _.cloneDeep(dataList)
this.column.splice(
2, 0, {
prop: "fs",
label: "份数"
})
}
},
immediate: true
}
},
gyfs: {
handler (newVal, oldValue) {
let dataList = _.cloneDeep(this.qlrCommonTable)
if (newVal == '1') {
this.column = _.cloneDeep(dataList).slice(1, dataList.length)
} else if ((newVal == '2')) {
this.column = dataList
} else {
this.column = _.cloneDeep(dataList)
this.column.splice(
2, 0, {
prop: "fs",
label: "份数"
})
}
methods: {
updateDetail (value) {
this.tableDataList[this.dataIndex] = value
this.key++
this.$emit('upDateQlrxxList', this.tableDataList)
},
immediate: true
}
},
methods: {
updateDetail (value) {
this.tableDataList[this.dataIndex] = value
this.key++
this.$emit('upDateQlrxxList', this.tableDataList)
},
// 添加
handleAdd () {
this.dialog = true
},
// 减
handleMinus (index, row) {
this.tableData.splice(index, 1)
},
// 身份证读取
readClick () { },
// 修改
handleEdit (index, row) {
console.log(row, 'rowrowrowrowrow');
this.dataIndex = index
this.dialog = true
this.details = row
},
handleView () {
this.dialog = true
// 添加
handleAdd () {
this.dialog = true
},
// 减
handleMinus (index, row) {
this.tableData.splice(index, 1)
},
// 身份证读取
readClick () { },
// 修改
handleEdit (index, row) {
console.log(row, 'rowrowrowrowrow');
this.dataIndex = index
this.dialog = true
this.details = row
},
handleView () {
this.dialog = true
}
}
}
}
</script>
<style scoped lang='scss'>
</style>
\ No newline at end of file
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:41:45
-->
<template>
<div class="from-clues">
<div class="invalid-title">
......@@ -9,77 +14,74 @@
v-model="stopMessage"
placeholder="请输入终止原因"
type="textarea"
:rows="4"
></el-input>
:rows="4"></el-input>
<el-button style="float: right">取消</el-button>
<el-button type="primary" @click="onSubmit" style="float: right"
>退件</el-button
>
<el-button type="primary" @click="onSubmit" style="float: right">退件</el-button>
</div>
</template>
<script>
import { stopTask } from "@/api/fqsq.js";
export default {
props: {
formData: {
type: Object,
default: {},
import { stopTask } from "@/api/fqsq.js";
export default {
props: {
formData: {
type: Object,
default: {},
},
},
},
data() {
return {
stopMessage: "",
};
},
methods: {
onSubmit() {
stopTask({
bsmSlsq: this.formData.bsmSlsq,
bestepid: this.formData.bestepid,
stopMessage: this.stopMessage,
}).then((res) => {
this.$message.success("终止成功");
setTimeout(() => {
// window.opener.location.reload(); //刷新父窗口
if (window.opener && window.opener.getBpageList) {
window.opener.getBpageList();
} else {
window.opener.frames[0].getBpageList();
}
window.close();
this.$emit("input", false);
}, 1000);
});
data () {
return {
stopMessage: "",
};
},
},
};
methods: {
onSubmit () {
stopTask({
bsmSlsq: this.formData.bsmSlsq,
bestepid: this.formData.bestepid,
stopMessage: this.stopMessage,
}).then((res) => {
this.$message.success("终止成功");
setTimeout(() => {
// window.opener.location.reload(); //刷新父窗口
if (window.opener && window.opener.getBpageList) {
window.opener.getBpageList();
} else {
window.opener.frames[0].getBpageList();
}
window.close();
this.$emit("input", false);
}, 1000);
});
},
},
};
</script>
<style scoped lang="scss">
@import "~@/styles/mixin.scss";
.invalid-title {
display: flex;
align-content: center;
@import "~@/styles/mixin.scss";
.invalid-title {
display: flex;
align-content: center;
.invalid-icon {
color: rgb(254, 148, 0);
font-size: 34px;
margin-right: 10px;
}
.invalid-icon {
color: rgb(254, 148, 0);
font-size: 34px;
margin-right: 10px;
.invalid-body {
line-height: 40px;
margin-bottom: 10px;
}
}
.invalid-body {
line-height: 40px;
.invalid-reson {
margin-bottom: 10px;
}
}
.invalid-reson {
margin-bottom: 10px;
}
.dialog-footer {
margin-top: 10px;
display: flex;
justify-content: flex-end;
}
.dialog-footer {
margin-top: 10px;
display: flex;
justify-content: flex-end;
}
</style>
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:41:49
-->
<template>
<div class="szxx">
<el-card class="box-card" v-for="(item, index) in tableData" :key="index">
......@@ -44,7 +49,7 @@
<el-button class="operation_button" type="text" @click="openRecordPop(item)">缮证记录</el-button>
</div>
<div class="text" v-else>
<el-button class="operation_button" type="text" @click="openZsylDialog(item, 2)">证书打印({{ item.szcs
<el-button class="operation_button" type="text" @click="openZsylDialog(item, 2)">证书打印1{{ item.szcs
}}</el-button>
<el-button class="operation_button" type="text" @click="openRecordPop(item)">缮证记录</el-button>
</div>
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:41:57
-->
<template>
<div class="from-clues">
<!-- 表单部分 -->
......@@ -9,14 +14,12 @@
v-for="(item, index) in dataList"
class="listDetail"
:key="index"
@click="changeSelectItem(item)"
>
@click="changeSelectItem(item)">
<p class="icon">
<el-radio
v-model="selectActivity"
:label="item.activityId"
@change="changeSelectItem(item)"
></el-radio>
@change="changeSelectItem(item)"></el-radio>
</p>
<p>{{ item.activityName }}</p>
<p v-for="(child, childIndex) in item.userInfos" :key="childIndex">
......@@ -30,8 +33,7 @@
class="textArea"
type="textarea"
v-model="outstepopinion"
placeholder="请输入退回意见"
></el-input>
placeholder="请输入退回意见"></el-input>
</el-form-item>
<el-form-item>
<el-button style="float:right" @click="cancelBack">取消</el-button>
......@@ -44,104 +46,104 @@
<script>
import { getTaskBackNode, sendBackTask } from "@/api/fqsq.js"
import { popupCacel } from "@/utils/popup.js";
import { getTaskBackNode, sendBackTask } from "@/api/fqsq.js"
import { popupCacel } from "@/utils/popup.js";
export default {
props: {
formData: {
type: Object,
default: {},
export default {
props: {
formData: {
type: Object,
default: {},
},
},
},
data() {
return {
selectActivity: "",
dataList: [],
outstepopinion: "",
selectItem: {},
};
},
created() {
this.getBackNode();
},
methods: {
onSubmit() {
this.selectItem.outstepopinion = this.outstepopinion;
sendBackTask({
bsmSlsq: this.formData.bsmSlsq,
backNodeList: [this.selectItem],
}).then((res) => {
this.$message.success("退回成功");
setTimeout(() => {
// window.opener.location.reload(); //刷新父窗口
if (window.opener && window.opener.getBpageList) {
window.opener.getBpageList();
} else {
window.opener.frames[0].getBpageList();
}
window.close();
this.$emit("input", false);
}, 1000);
});
data () {
return {
selectActivity: "",
dataList: [],
outstepopinion: "",
selectItem: {},
};
},
changeSelectItem(item) {
this.selectItem = item;
this.selectActivity = item.activityId;
created () {
this.getBackNode();
},
//获取可回退环节信息
getBackNode() {
getTaskBackNode(this.formData).then((res) => {
if (res.code == 200) {
this.dataList = res.result;
if (res.result) {
this.selectActivity = res.result[0].activityId;
this.selectItem = res.result[0];
methods: {
onSubmit () {
this.selectItem.outstepopinion = this.outstepopinion;
sendBackTask({
bsmSlsq: this.formData.bsmSlsq,
backNodeList: [this.selectItem],
}).then((res) => {
this.$message.success("退回成功");
setTimeout(() => {
// window.opener.location.reload(); //刷新父窗口
if (window.opener && window.opener.getBpageList) {
window.opener.getBpageList();
} else {
window.opener.frames[0].getBpageList();
}
window.close();
this.$emit("input", false);
}, 1000);
});
},
changeSelectItem (item) {
this.selectItem = item;
this.selectActivity = item.activityId;
},
//获取可回退环节信息
getBackNode () {
getTaskBackNode(this.formData).then((res) => {
if (res.code == 200) {
this.dataList = res.result;
if (res.result) {
this.selectActivity = res.result[0].activityId;
this.selectItem = res.result[0];
}
}
}
});
},
});
},
cancelBack(){
popupCacel();
cancelBack () {
popupCacel();
}
}
}
}
</script>
<style scoped lang="scss">
@import "~@/styles/mixin.scss";
.listDetail {
display: flex;
align-items: center;
width: 100%;
@import "~@/styles/mixin.scss";
p {
line-height: 30px;
height: 30px;
@include flex-center;
flex: 1;
.listDetail {
display: flex;
align-items: center;
width: 100%;
border: 1px solid rgb(233, 235, 237);
margin-top: -1px;
margin-left: -1px;
}
.icon {
flex: 0 0 60px;
p {
line-height: 30px;
height: 30px;
@include flex-center;
flex: 1;
width: 100%;
border: 1px solid rgb(233, 235, 237);
margin-top: -1px;
margin-left: -1px;
}
.icon {
flex: 0 0 60px;
}
}
}
.title {
margin-bottom: 10px;
}
.title {
margin-bottom: 10px;
}
.textArea {
/deep/.el-textarea__inner {
min-height: 90px !important;
.textArea {
/deep/.el-textarea__inner {
min-height: 90px !important;
}
}
/deep/.el-radio .el-radio__label {
display: none;
}
}
/deep/.el-radio .el-radio__label {
display: none;
}
</style>
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:42:01
-->
<template>
<dialogBox title="转出" @submitForm="submitForm" saveButton="确认转出" width="45%" height='30%' @closeDialog="closeDialog"
v-model="value">
......@@ -19,50 +24,50 @@
</template>
<script>
import { completeTask, getNextLinkInfo } from "@/api/fqsq.js"
export default {
components: {
},
props: {
value: { type: Boolean, default: false },
queryForm: { type: Object, default: false }
},
data () {
return {
tableData: {},
usernames: '',
}
},
methods: {
tablelistFn () {
getNextLinkInfo(this.queryForm).then(res => {
if (res.code === 200) {
this.tableData = res.result
if (res.result.usernames) {
this.usernames = String(res.result.usernames)
}
}
})
import { completeTask, getNextLinkInfo } from "@/api/fqsq.js"
export default {
components: {
},
submitForm () {
completeTask(this.queryForm).then(res => {
if (res.code === 200) {
this.$message.success('转件成功')
setTimeout(() => {
window.opener = null;
window.open("about:blank", "_self");
window.close();
this.$emit('input', false)
}, 1000);
}
})
props: {
value: { type: Boolean, default: false },
queryForm: { type: Object, default: false }
},
closeDialog () {
this.$emit("input", false);
data () {
return {
tableData: {},
usernames: '',
}
},
methods: {
tablelistFn () {
getNextLinkInfo(this.queryForm).then(res => {
if (res.code === 200) {
this.tableData = res.result
if (res.result.usernames) {
this.usernames = String(res.result.usernames)
}
}
})
},
submitForm () {
completeTask(this.queryForm).then(res => {
if (res.code === 200) {
this.$message.success('转件成功')
setTimeout(() => {
window.opener = null;
window.open("about:blank", "_self");
window.close();
this.$emit('input', false)
}, 1000);
}
})
},
closeDialog () {
this.$emit("input", false);
},
}
}
}
</script>
<style scoped lang="scss">
@import "~@/styles/mixin.scss";
@import "~@/styles/mixin.scss";
</style>
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:38:37
*/
//流程环节操作按钮
export function getForm (tabName, djywbm) {
let form;
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:38:57
*/
import filter from '@/utils/filter.js'
let vm = null
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:39:03
*/
import filter from '@/utils/filter.js'
let vm = null
......@@ -40,12 +45,12 @@ class data extends filter {
{
label: "是否作废",
render: (h, scope) => {
if(scope.row.sfzf == '0'){
return <div></div>
}else{
return <div>已作废</div>
}
if (scope.row.sfzf == '0') {
return <div></div>
} else {
return <div>已作废</div>
}
}
},
{
prop: "bz",
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:39:07
*/
import filter from '@/utils/filter.js'
class data extends filter {
constructor() {
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-18 15:01:31
*/
import { getWorkFlowImage } from "@/api/workflow/jsydsyqFlow.js";
import { getPrintTemplateByCode } from "@/api/system";
import { getPrintApplicationInfo } from "@/api/fqsq";
......@@ -5,14 +10,12 @@ import { uploadUndo } from "@/api/clxx";
import { deleteFlow } from "@/api/ywbl";
import { getLodop } from "@/utils/LodopFuncs"
import {
leftMenu,
stepExpandInfo,
record,
completeTask,
getNextLinkInfo,
} from "@/api/fqsq.js";
import { mapGetters } from 'vuex'
import { log } from "bpmn-js-token-simulation";
export default {
data () {
return {
......@@ -28,6 +31,8 @@ export default {
rightButtonList: [],
//批量按钮名称
batchButtonName: '',
// 受理申请信息
slsq: {}
}
},
computed: {
......@@ -37,55 +42,14 @@ export default {
isRefresh: {
handler (newVal, oldVal) {
if (newVal) this.loadBdcdylist()
}
},
immediate: true
}
},
mounted () {
this.flowInitParam();
this.loadBdcdylist();
},
methods: {
//读取申请单元信息
loadBdcdylist () {
var formdata = new FormData();
formdata.append("bsmSlsq", this.bsmSlsq);
formdata.append("bestepid", this.bestepid);
leftMenu(formdata).then((res) => {
if (res.code === 200) {
if (res.result) {
this.unitData = res.result;
this.currentSelectProps = res.result[0];
this.judgeBatchShow();
if (this.showBatch) {
//满足批量查封/批量抵押按钮出现 即先展示批量表单
this.batchUnitClick();
} else {
//默认选择单元列表第一个
this.unitClick(0);
}
}
}
});
},
//批量按钮判断
judgeBatchShow () {
this.showBatch = false;
if (this.unitData.length > 1) {
let qllx = this.$route.query.sqywbm.substring(0, 3);
switch (qllx) {
case 'B39':
this.showBatch = true;
this.batchButtonName = '批量查封清单信息';
break;
case 'A37':
this.showBatch = true;
this.batchButtonName = '批量抵押';
break;
default:
this.batchButtonName = '批量操作';
}
}
},
//加载流程初始参数
flowInitParam () {
var formdata = new FormData();
......@@ -95,8 +59,9 @@ export default {
if (res.code === 200) {
this.leftButtonList = res.result.button;
this.rightButtonList = res.result.operation;
this.slsq = res.result.slsq
}
});
})
},
//流程环节操作按钮
operation (item) {
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:38:51
*/
import { getForm } from "../flowform";
import { getHomeNoticeList } from "@/api/user.js"
export default {
data () {
return {
noticeList: [],
noticeList: []
}
},
created () {
this.getHomeNotice()
},
mounted () {
let that = this
window.addEventListener('message', function (messageEvent) {
that.getHomeNotice()
this.getHomeNotice()
}, false)
},
methods: {
......
......@@ -53,7 +53,7 @@
ul {
position: relative;
height: calc(100vh - 120px);
// height: calc(100vh - 120px);
overflow-y: auto;
.xian {
......@@ -157,13 +157,13 @@
}
.map-drawer-expand {
background: url("../../image/right.png");
background: url("~@/image/right.png");
background-size: cover;
right: 0%;
}
.map-drawer-click {
background: url("../../image/left.png");
background: url("~@/image/left.png");
background-size: cover;
left: 0%;
}
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-22 09:45:59
-->
<template>
<div class="container">
<!-- 顶部内容框 -->
......@@ -20,39 +25,9 @@
</div>
<!-- 内容框架 -->
<div class="containerFrame">
<!-- 左侧菜单栏 -->
<div class="leftmenu" :class="{ 'animation-map-drawer': isShowdrawer }">
<el-menu :default-active="activeIndex" @select="batchUnitClick" class="title-batch" v-if="showBatch">
<el-menu-item index="-1" key="-1" class="menus">
<div>{{ batchButtonName }}</div>
</el-menu-item>
</el-menu>
<div v-if="this.isShowdrawer">
<div class="title">
申请单元列表({{ unitData.length }})
<el-button type="text" class="batchDel" @click="handleBatchDel" v-if="unitData.length > 1">批量删除</el-button>
</div>
<el-menu :default-active="activeIndex" @select="unitClick">
<el-menu-item v-for="(item, index) in unitData" :index="index.toString()" :key="index">
<div>
<p>{{ item.bdcdyh }}</p>
<p class="title-detail">{{ item.zl }}</p>
</div>
<i class="el-icon-delete" v-if="unitData.length > 1" @click.stop="handleDel(item)"></i>
</el-menu-item>
</el-menu>
</div>
<div class="map-drawer-click map-drawer" v-if="!isShowdrawer" @click="
() => {
this.isShowdrawer = !this.isShowdrawer;
}
"></div>
<div class="map-drawer-expand map-drawer" v-else @click="
() => {
this.isShowdrawer = !this.isShowdrawer;
}
"></div>
</div>
<!-- 左侧菜单栏 区分业务-->
<segmentMenu v-if="slsq.djqxbm == 'A0320099' || slsq.djqxbm == 'A0330099'" @getCurrentSelectProps="getCurrentSelectProps" />
<ordinaryMenu v-else @getCurrentSelectProps="getCurrentSelectProps" />
<div class="leftCon">
<!-- 分屏左侧预览 -->
<div v-if="splitScreen" class="splitScreen-con">
......@@ -79,174 +54,141 @@
</div>
</template>
<style scoped lang="scss">
@import "~@/styles/mixin.scss";
@import "./workFrame.scss";
@import "~@/styles/mixin.scss";
@import "./workFrame.scss";
</style>
<script>
import { mapGetters } from 'vuex'
import WorkFlow from "./mixin/index";
import publicFlow from "./mixin/public.js";
import { getStepFormInfo } from "@/api/fqsq.js";
import { getForm } from "./flowform";
import NoticeBar from "@/components/NoticeBar/index";
import { deleteFlow, unClaimTask } from "@/api/ywbl.js";
import ProcessViewer from "./components/processViewer.vue";
import selectBdc from "@/views/ywbl/ywsq/selectBdc.vue";
export default {
components: {
selectBdc,
NoticeBar,
ProcessViewer,
},
mixins: [WorkFlow, publicFlow],
data () {
return {
isDialog: false,
// 折叠
isShowdrawer: true,
// 默认选中
activeIndex: "0",
//受理申请标识码
bsmSlsq: this.$route.query.bsmSlsq,
//当前流程所在环节
bestepid: this.$route.query.bestepid,
//设置那个表单选中
tabName: "",
//设置那个表单选择
currentSelectTab: {},
//表单集合
tabList: [],
//选择加载哪一个组件
componentTag: "",
//设置表单传递数据
currentSelectProps: {},
//材料分屏表单
clxxForm: "",
//材料信息选择卡索引
clxxIndex: "",
//材料信息选项卡对象
clxxTab: {},
//页面监听时间
_beforeUnload_time: "",
//批量操作
showBatch: false,
//批量操作按钮名称
batchButtonName: "",
};
},
computed: {
...mapGetters(['isRefresh'])
},
watch: {
isRefresh: {
handler (newVal, oldVal) {
if (newVal) this.updateDialog()
}
}
},
mounted () {
//添加页面监听事件
window.addEventListener("beforeunload", (e) => this.beforeunloadHandler(e));
window.addEventListener("unload", (e) => this.unloadHandler(e));
},
destroyed () {
window.removeEventListener("beforeunload", (e) =>
this.beforeunloadHandler(e)
);
window.removeEventListener("unload", (e) => this.unloadHandler(e));
},
methods: {
beforeunloadHandler () {
this._beforeUnload_time = new Date().getTime();
import { mapGetters } from 'vuex'
import WorkFlow from "./mixin/index"
import publicFlow from "./mixin/public.js"
import { getStepFormInfo } from "@/api/fqsq.js"
import { getForm } from "./flowform"
import NoticeBar from "@/components/NoticeBar/index"
import { unClaimTask } from "@/api/ywbl.js"
import ProcessViewer from "./components/processViewer.vue"
// 引入左侧菜单
import ordinaryMenu from "./components/leftmenu/ordinaryMenu.vue"
// 引入左侧菜单
import segmentMenu from "./components/leftmenu/segmentMenu.vue"
import selectBdc from "@/views/ywbl/ywsq/selectBdc.vue"
export default {
components: {
selectBdc,
NoticeBar,
ProcessViewer,
ordinaryMenu,
segmentMenu
},
unloadHandler (e) {
this._gap_time = new Date().getTime() - this._beforeUnload_time;
//判断是窗口关闭还是刷新
if (this._gap_time <= 10) {
//取消认领
unClaimTask(this.bsmSlsq, this.bestepid);
mixins: [WorkFlow, publicFlow],
data () {
return {
isDialog: false,
//受理申请标识码
bsmSlsq: this.$route.query.bsmSlsq,
//当前流程所在环节
bestepid: this.$route.query.bestepid,
//设置那个表单选中
tabName: "",
//设置那个表单选择
currentSelectTab: {},
//表单集合
tabList: [],
//选择加载哪一个组件
componentTag: "",
//设置表单传递数据
currentSelectProps: {},
//材料分屏表单
clxxForm: "",
//材料信息选择卡索引
clxxIndex: "",
//材料信息选项卡对象
clxxTab: {},
//页面监听时间
_beforeUnload_time: ""
}
},
changeLoadIndex () {
this.loadIndex++;
computed: {
...mapGetters(['isRefresh'])
},
closeDialog () {
this.myValue = false;
watch: {
isRefresh: {
handler (newVal, oldVal) {
if (newVal) this.updateDialog()
}
}
},
// 更新列表
updateDialog () {
this.loadBdcdylist();
mounted () {
//添加页面监听事件
window.addEventListener("beforeunload", (e) => this.beforeunloadHandler(e));
window.addEventListener("unload", (e) => this.unloadHandler(e));
},
// 删除左侧列表
handleDel (item) {
this.$confirm("确定要删除吗, 是否继续?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => {
var formdata = new FormData();
formdata.append("bsmSldyList", item.bsmSldy.split(","));
formdata.append("bsmSlsq", this.bsmSlsq);
deleteFlow(formdata).then((res) => {
if (res.code == 200) {
this.$message.success("删除成功");
this.loadBdcdylist();
} else {
this.$message.error(res.message);
}
});
})
.catch(() => {
this.$message({
type: "info",
message: "已取消删除",
});
});
destroyed () {
window.removeEventListener("beforeunload", (e) =>
this.beforeunloadHandler(e)
);
window.removeEventListener("unload", (e) => this.unloadHandler(e));
},
//申请单元点击事件
stepForm (index) {
getStepFormInfo(this.currentSelectProps).then((res) => {
if (res.code === 200) {
this.fresh++;
//获取单元对应的所有表单信息
this.tabList = res.result;
//默认加载第一个表单信息
this.tabName = res.result[0].value;
//批量操作无分屏按钮
if (index != null) {
//处理分屏材料信息
let that = this;
this.tabList.forEach(function (item, index) {
if (item.value == "clxx") {
that.clxxIndex = index;
that.clxxForm = getForm(item.value, that.$route.query.sqywbm);
that.clxxTab = item;
}
});
methods: {
getCurrentSelectProps (val) {
this.currentSelectProps = val
},
beforeunloadHandler () {
this._beforeUnload_time = new Date().getTime();
},
unloadHandler (e) {
this._gap_time = new Date().getTime() - this._beforeUnload_time;
//判断是窗口关闭还是刷新
if (this._gap_time <= 10) {
//取消认领
unClaimTask(this.bsmSlsq, this.bestepid);
}
},
changeLoadIndex () {
this.loadIndex++;
},
/**
* @description: 更新列表
* @author: renchao
*/
updateDialog () {
this.loadBdcdylist();
},
//申请单元点击事件
stepForm (index) {
getStepFormInfo(this.currentSelectProps).then((res) => {
if (res.code === 200) {
this.fresh++;
//获取单元对应的所有表单信息
this.tabList = res.result;
//默认加载第一个表单信息
this.tabName = res.result[0].value;
//批量操作无分屏按钮
if (index != null) {
//处理分屏材料信息
let that = this;
this.tabList.forEach(function (item, index) {
if (item.value == "clxx") {
that.clxxIndex = index;
that.clxxForm = getForm(item.value, that.$route.query.sqywbm);
that.clxxTab = item;
}
})
}
}
})
},
openDialog () {
this.$store.dispatch('user/refreshPage', false)
let data = JSON.parse(localStorage.getItem('ywbl'))
let title
if (data?.sqywmc) {
title = "申请业务:" + data?.sqywmc
} else {
title = "申请业务:" + data?.djywmc
}
});
},
//申请单元点击事件
unitClick (index) {
this.currentSelectProps = this.unitData[index];
this.currentSelectProps.batchOperation = false;
this.activeIndex = index.toString();
this.stepForm(index);
},
//批量按钮点击事件
batchUnitClick () {
this.currentSelectProps.batchOperation = true;
this.activeIndex = "-1";
this.stepForm();
},
openDialog () {
let data = JSON.parse(localStorage.getItem('ywbl'))
let title = "申请业务:" + data.sqywmc;
this.$popupDialog(title, "ywbl/ywsq/selectBdc", { 'djywbm': this.$route.query.sqywbm, 'isJump': true, 'sqywInfo': data }, "80%", true)
this.$popupDialog(title, "ywbl/ywsq/selectBdc", { 'djywbm': this.$route.query.sqywbm, 'isJump': true, 'sqywInfo': data }, "80%", true)
}
}
}
}
</script>
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-18 11:03:17
-->
<template>
<div class="container">
<!-- 顶部内容框 -->
......@@ -185,7 +190,7 @@
this.$confirm("确定要删除吗, 是否继续?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
type: "warning"
})
.then(() => {
deleteFlow(formdata).then((res) => {
......@@ -204,9 +209,9 @@
.catch(() => {
this.$message({
type: "info",
message: "已取消删除",
});
});
message: "已取消删除"
})
})
},
//读取申请单元信息
loadBdcdylist () {
......@@ -219,7 +224,7 @@
this.currentSelectProps = res.result[0];
this.unitClick(0);
}
});
})
},
//申请单元点击事件
unitClick (index) {
......@@ -233,8 +238,9 @@
//默认加载第一个表单信息
this.tabName = res.result[0].value;
}
});
},
},
};
})
}
}
}
</script>
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:42:27
-->
<template>
<div>
<el-row :gutter="20">
<el-col :span="12">
<el-card class="box-card">
<div slot="header" class="clearfix">
<span class="font-border">CPU</span>
</div>
<div class="flex-display">
<div class="width-50 font-border">属性</div>
<div class="font-border"></div>
</div>
<div class="flex-display">
<div class="width-50">核心数</div>
<div>{{serverData.xtjkCpu.cpuNum}}</div>
</div>
<div class="flex-display">
<div class="width-50">用户使用率</div>
<div>{{serverData.xtjkCpu.used}}%</div>
</div>
<div class="flex-display">
<div class="width-50">系统使用率</div>
<div>{{serverData.xtjkCpu.sys}}%</div>
</div>
<div class="flex-display">
<div class="width-50">当前空闲率</div>
<div>{{serverData.xtjkCpu.free}}%</div>
</div>
</el-card>
</el-col>
<el-col :span="12">
<el-card class="box-card">
<div slot="header" class="clearfix">
<span class="font-border">内存</span>
</div>
<div class="flex-display">
<div class="width-33 font-border">属性</div>
<div class="width-33 font-border">内存</div>
<div class="font-border">JVM</div>
</div>
<div class="flex-display">
<div class="width-33">总内存</div>
<div class="width-33">{{serverData.xtjkMem.total}}G</div>
<div>{{serverData.xtjkJvm.total}}M</div>
</div>
<div class="flex-display">
<div class="width-33">已用内存</div>
<div class="width-33">{{serverData.xtjkMem.used}}G</div>
<div>{{serverData.xtjkJvm.used}}M</div>
</div>
<div class="flex-display">
<div class="width-33">剩余内存</div>
<div class="width-33">{{serverData.xtjkMem.free}}G</div>
<div>{{serverData.xtjkJvm.free}}M</div>
</div>
<div class="flex-display">
<div class="width-33">使用率</div>
<div class="width-33" v-if="serverData.xtjkMem.usage > 80" style="color:red">{{serverData.xtjkMem.usage}}%</div>
<div class="width-33" v-else>{{serverData.xtjkMem.usage}}%</div>
<div>{{serverData.xtjkJvm.usage}}%</div>
</div>
</el-card>
</el-col>
<el-col :span="12">
<el-card class="box-card">
<div slot="header" class="clearfix">
<span class="font-border">CPU</span>
</div>
<div class="flex-display">
<div class="width-50 font-border">属性</div>
<div class="font-border"></div>
</div>
<div class="flex-display">
<div class="width-50">核心数</div>
<div>{{serverData.xtjkCpu.cpuNum}}</div>
</div>
<div class="flex-display">
<div class="width-50">用户使用率</div>
<div>{{serverData.xtjkCpu.used}}%</div>
</div>
<div class="flex-display">
<div class="width-50">系统使用率</div>
<div>{{serverData.xtjkCpu.sys}}%</div>
</div>
<div class="flex-display">
<div class="width-50">当前空闲率</div>
<div>{{serverData.xtjkCpu.free}}%</div>
</div>
</el-card>
</el-col>
<el-col :span="12">
<el-card class="box-card">
<div slot="header" class="clearfix">
<span class="font-border">内存</span>
</div>
<div class="flex-display">
<div class="width-33 font-border">属性</div>
<div class="width-33 font-border">内存</div>
<div class="font-border">JVM</div>
</div>
<div class="flex-display">
<div class="width-33">总内存</div>
<div class="width-33">{{serverData.xtjkMem.total}}G</div>
<div>{{serverData.xtjkJvm.total}}M</div>
</div>
<div class="flex-display">
<div class="width-33">已用内存</div>
<div class="width-33">{{serverData.xtjkMem.used}}G</div>
<div>{{serverData.xtjkJvm.used}}M</div>
</div>
<div class="flex-display">
<div class="width-33">剩余内存</div>
<div class="width-33">{{serverData.xtjkMem.free}}G</div>
<div>{{serverData.xtjkJvm.free}}M</div>
</div>
<div class="flex-display">
<div class="width-33">使用率</div>
<div class="width-33" v-if="serverData.xtjkMem.usage > 80" style="color:red">{{serverData.xtjkMem.usage}}%</div>
<div class="width-33" v-else>{{serverData.xtjkMem.usage}}%</div>
<div>{{serverData.xtjkJvm.usage}}%</div>
</div>
</el-card>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="24">
<el-card class="box-card">
<div slot="header" class="clearfix">
<span class=" font-border">服务器信息</span>
</div>
<div class="flex-display">
<div class="width-25 font-border">服务器名称</div>
<div class="width-25">{{serverData.xtjkSys.computerName}}</div>
<div class="width-25 font-border">操作系统</div>
<div>{{serverData.xtjkSys.osName}}</div>
</div>
<div class="flex-display">
<div class="width-25 font-border">服务器IP</div>
<div class="width-25">{{serverData.xtjkSys.computerIp}}</div>
<div class="width-25 font-border">系统架构</div>
<div>{{serverData.xtjkSys.osArch}}</div>
</div>
</el-card>
</el-col>
<el-col :span="24">
<el-card class="box-card">
<div slot="header" class="clearfix">
<span class=" font-border">服务器信息</span>
</div>
<div class="flex-display">
<div class="width-25 font-border">服务器名称</div>
<div class="width-25">{{serverData.xtjkSys.computerName}}</div>
<div class="width-25 font-border">操作系统</div>
<div>{{serverData.xtjkSys.osName}}</div>
</div>
<div class="flex-display">
<div class="width-25 font-border">服务器IP</div>
<div class="width-25">{{serverData.xtjkSys.computerIp}}</div>
<div class="width-25 font-border">系统架构</div>
<div>{{serverData.xtjkSys.osArch}}</div>
</div>
</el-card>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="24">
<el-card class="box-card">
<div slot="header" class="clearfix">
<span class=" font-border">Java虚拟机信息</span>
</div>
<div class="flex-display">
<div class="width-25 font-border">Java名称</div>
<div class="width-25">{{serverData.xtjkJvm.name}}</div>
<div class="width-25 font-border">Java版本</div>
<div>{{serverData.xtjkJvm.version}}</div>
</div>
<div class="flex-display">
<div class="width-25 font-border">启动时间</div>
<div class="width-25">{{serverData.xtjkJvm.startTime}}</div>
<div class="width-25 font-border">运行时长</div>
<div>{{serverData.xtjkJvm.runTime}}</div>
</div>
<div class="flex-display">
<div class="width-25 font-border">安装路径</div>
<div>{{serverData.xtjkJvm.home}}</div>
</div>
<div class="flex-display">
<div class="width-25 font-border">项目路径</div>
<div>{{serverData.xtjkSys.userDir}}</div>
</div>
</el-card>
</el-col>
</el-row>
<el-col :span="24">
<el-card class="box-card">
<div slot="header" class="clearfix">
<span class=" font-border">Java虚拟机信息</span>
</div>
<div class="flex-display">
<div class="width-25 font-border">Java名称</div>
<div class="width-25">{{serverData.xtjkJvm.name}}</div>
<div class="width-25 font-border">Java版本</div>
<div>{{serverData.xtjkJvm.version}}</div>
</div>
<div class="flex-display">
<div class="width-25 font-border">启动时间</div>
<div class="width-25">{{serverData.xtjkJvm.startTime}}</div>
<div class="width-25 font-border">运行时长</div>
<div>{{serverData.xtjkJvm.runTime}}</div>
</div>
<div class="flex-display">
<div class="width-25 font-border">安装路径</div>
<div>{{serverData.xtjkJvm.home}}</div>
</div>
<div class="flex-display">
<div class="width-25 font-border">项目路径</div>
<div>{{serverData.xtjkSys.userDir}}</div>
</div>
</el-card>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="24">
<el-card class="box-card">
<div slot="header" class="clearfix">
<span class=" font-border">磁盘信息</span>
</div>
<div>
<el-table :data="serverData.sysFiles" stripe style="width: 100%">
<el-table-column prop="dirName" label="盘符路径" width="180"></el-table-column>
<el-table-column prop="sysTypeName" label="文件系统" width="180"></el-table-column>
<el-table-column prop="typeName" label="盘符类型"></el-table-column>
<el-table-column prop="total" label="总大小"></el-table-column>
<el-table-column label="可用大小">
<template slot-scope="scope">
<div v-if="scope.row.free < '20 GB'" style="color:red">{{scope.row.free}}</div>
<div v-else>{{scope.row.free}}</div>
</template>
</el-table-column>
<el-table-column prop="used" label="已用大小"></el-table-column>
<el-table-column prop="usage" label="已用百分比"></el-table-column>
</el-table>
</div>
</el-card>
</el-col>
</el-row>
<el-col :span="24">
<el-card class="box-card">
<div slot="header" class="clearfix">
<span class=" font-border">磁盘信息</span>
</div>
<div>
<el-table :data="serverData.sysFiles" stripe style="width: 100%">
<el-table-column prop="dirName" label="盘符路径" width="180"></el-table-column>
<el-table-column prop="sysTypeName" label="文件系统" width="180"></el-table-column>
<el-table-column prop="typeName" label="盘符类型"></el-table-column>
<el-table-column prop="total" label="总大小"></el-table-column>
<el-table-column label="可用大小">
<template slot-scope="scope">
<div v-if="scope.row.free < '20 GB'" style="color:red">{{scope.row.free}}</div>
<div v-else>{{scope.row.free}}</div>
</template>
</el-table-column>
<el-table-column prop="used" label="已用大小"></el-table-column>
<el-table-column prop="usage" label="已用百分比"></el-table-column>
</el-table>
</div>
</el-card>
</el-col>
</el-row>
</div>
</template>
<script>
import table from "@/utils/mixin/table"
import { getServerInfo } from "@/api/xtjk.js"
export default {
name: "zjjk",
components: { },
mixins: [table],
mounted () {
//sendThis(this);
},
computed: {
},
data () {
return {
serverData: {}
};
},
methods: {
// 列表渲染接口
queryClick () {
getServerInfo().then(res => {
if (res.code === 200) {
this.serverData = res.result
}
})
import table from "@/utils/mixin/table"
import { getServerInfo } from "@/api/xtjk.js"
export default {
name: "zjjk",
components: {},
mixins: [table],
mounted () {
//sendThis(this);
},
}
};
computed: {
},
data () {
return {
serverData: {}
};
},
methods: {
// 列表渲染接口
queryClick () {
getServerInfo().then(res => {
if (res.code === 200) {
this.serverData = res.result
}
})
},
}
};
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
.box-card{
margin: 5px 10px 10px 5px;
}
.flex-display {
display: flex;
margin-bottom: 10px;
border-bottom: 1px solid #e6ebf5;
}
.width-50 {
width: 50%;
padding-bottom: 10px;
}
.width-33 {
width: 33%;
padding-bottom: 10px;
}
.width-25 {
width: 25%;
padding-bottom: 10px;
}
.font-border {
font-weight: bolder;
}
@import "~@/styles/public.scss";
.box-card {
margin: 5px 10px 10px 5px;
}
.flex-display {
display: flex;
margin-bottom: 10px;
border-bottom: 1px solid #e6ebf5;
}
.width-50 {
width: 50%;
padding-bottom: 10px;
}
.width-33 {
width: 33%;
padding-bottom: 10px;
}
.width-25 {
width: 25%;
padding-bottom: 10px;
}
.font-border {
font-weight: bolder;
}
</style>
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:42:32
-->
<template>
<div class="clxx">
<div class="left">
......@@ -36,472 +41,472 @@
</div>
</template>
<script>
import { mapGetters } from "vuex";
import clxxAddDialog from "./clxxAddDialog.vue";
import imagePreview from '@/views/components/imagePreview.vue'
import {InitClml,saveClml,deleteSjClml,moveClml} from "@/api/clxx.js";
export default {
components: { clxxAddDialog, imagePreview },
data () {
return {
isDialog: false,
menuList: [
{
id: "1",
label: "材料目录明细",
},
{
id: "2",
label: "材料预览",
},
],
menuOpen: true,
iclass: "itemIcon el-icon-caret-bottom",
treeCheckId: "",
checkedId: "1",
column: [
{
width: "35",
renderHeader: (h, scope) => {
return (
<i
class="el-icon-plus pointer"
onClick={() => {
this.handleAdd()
}}
></i>
);
import { mapGetters } from "vuex";
import clxxAddDialog from "./clxxAddDialog.vue";
import imagePreview from '@/views/components/imagePreview.vue'
import { InitClml, saveClml, deleteSjClml, moveClml } from "@/api/clxx.js";
export default {
components: { clxxAddDialog, imagePreview },
data () {
return {
isDialog: false,
menuList: [
{
id: "1",
label: "材料目录明细",
},
{
id: "2",
label: "材料预览",
},
render: (h, scope) => {
// 新建的材料,可删除
if (scope.row.sfxjcl === "1") {
],
menuOpen: true,
iclass: "itemIcon el-icon-caret-bottom",
treeCheckId: "",
checkedId: "1",
column: [
{
width: "35",
renderHeader: (h, scope) => {
return (
<i
class="el-icon-minus pointer"
class="el-icon-plus pointer"
onClick={() => {
this.handleDelete(scope.$index, scope.row);
this.handleAdd()
}}
></i>
);
}
},
render: (h, scope) => {
// 新建的材料,可删除
if (scope.row.sfxjcl === "1") {
return (
<i
class="el-icon-minus pointer"
onClick={() => {
this.handleDelete(scope.$index, scope.row);
}}
></i>
);
}
},
},
},
{
width: "35",
label: "序号",
type: "index",
},
{
prop: "isrequired",
label: "是否必选",
width: "50",
render: (h, scope) => {
if (scope.row.sfxjcl === "1") {
return (
<div>
<span>可选</span>
</div>
);
}
else {
return (
<div>
<span>必选</span>
</div>
);
}
{
width: "35",
label: "序号",
type: "index",
},
},
{
prop: "sjmc",
label: "材料名称",
},
{
prop: "sjlx",
label: "材料类型",
width: "80",
render: (h, scope) => {
return (
<div>
<span>{this.dicStatus(scope.row.sjlx, "A40")}</span>
</div>
);
{
prop: "isrequired",
label: "是否必选",
width: "50",
render: (h, scope) => {
if (scope.row.sfxjcl === "1") {
return (
<div>
<span>可选</span>
</div>
);
}
else {
return (
<div>
<span>必选</span>
</div>
);
}
},
},
{
prop: "sjmc",
label: "材料名称",
},
},
{
prop: "sjsl",
label: "份数",
width: "50"
},
{
prop: "smzt",
label: "扫描状态",
width: "80",
render: (h, scope) => {
if (scope.row.children.length > 0) {
{
prop: "sjlx",
label: "材料类型",
width: "80",
render: (h, scope) => {
return (
<div>
<span>已扫描</span>
<span>{this.dicStatus(scope.row.sjlx, "A40")}</span>
</div>
);
} else {
},
},
{
prop: "sjsl",
label: "份数",
width: "50"
},
{
prop: "smzt",
label: "扫描状态",
width: "80",
render: (h, scope) => {
if (scope.row.children.length > 0) {
return (
<div>
<span>已扫描</span>
</div>
);
} else {
return (
<div>
<span>未扫描</span>
</div>
);
}
},
},
{
prop: "ys",
label: "扫描页数",
width: "50"
},
{
label: "操作",
width: "80",
render: (h, scope) => {
return (
<div>
<span>未扫描</span>
<el-button
type="text"
disabled={scope.$index == 0}
onClick={() => {
this.moveUpward(scope.$index, scope.row);
}}
>
上移
</el-button>
<el-button
type="text"
disabled={scope.$index + 1 == this.tableData.length}
onClick={() => {
this.moveDown(scope.$index, scope.row);
}}
>
下移
</el-button>
</div>
);
}
},
},
},
{
prop: "ys",
label: "扫描页数",
width: "50"
},
{
label: "操作",
width: "80",
render: (h, scope) => {
return (
<div>
<el-button
type="text"
disabled={scope.$index == 0}
onClick={() => {
this.moveUpward(scope.$index, scope.row);
}}
>
上移
</el-button>
<el-button
type="text"
disabled={scope.$index + 1 == this.tableData.length}
onClick={() => {
this.moveDown(scope.$index, scope.row);
}}
>
下移
</el-button>
</div>
);
},
},
],
key: 0,
tableData: [],
previewImg: {
// 收件标识码
bsmSj: '',
bsmSlsq: this.$parent.bsmSlsq,
index: 0,
selectedIndex: 0,
imgList: [
{
fjurl: 'https://img2.baidu.com/it/u=2955521104,3257476296&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=1111'
}
]
}
}
},
computed: {
...mapGetters(["dictData"]),
},
created () {
this.clmlInitList()
},
methods: {
// 材料目录明细初始化
clmlInitList () {
return new Promise(resolve => {
this.unitData = this.$parent.unitData;
var formdata = new FormData();
formdata.append("bsmSldy", this.unitData[0]?.bsmSldy);
formdata.append("bsmSlsq", this.$parent.bsmSlsq);
clmlInit(formdata).then((res) => {
resolve(res.code)
if (res.result.result && res.result.result.length > 0) {
this.tableData = res.result.result;
this.treeCheckId = this.tableData[0].bsmSj;
this.title = this.tableData[0].sjmc;
this.titleYs = 1;
this.titleNum = this.tableData[0].children.length;
this.previewImg.imgList = this.tableData[0]?.children;
this.previewImg.bsmSj = this.tableData[0]?.bsmSj;
}
})
})
},
updateList (val) {
this.tableData.forEach(item => {
if (item.bsmSj === val.bsmSj) {
item.children = val.children
],
key: 0,
tableData: [],
previewImg: {
// 收件标识码
bsmSj: '',
bsmSlsq: this.$parent.bsmSlsq,
index: 0,
selectedIndex: 0,
imgList: [
{
fjurl: 'https://img2.baidu.com/it/u=2955521104,3257476296&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=1111'
}
]
}
})
this.previewImg.imgList = _.cloneDeep(val.children)
if (this.previewImg.index == this.previewImg.imgList.length) {
this.previewImg.index = this.previewImg.index - 1
}
},
// 左侧菜单点击
menuClick (item) {
this.checkedId = item.id
computed: {
...mapGetters(["dictData"]),
},
// 添加材料目录
handleAdd () {
this.isDialog = true;
created () {
this.clmlInitList()
},
// 上移
moveUpward (index, row) {
let obj = {
xh: row.xh,
bsmSlsq: row.bsmSlsq,
moveDirection: "UP",
};
// 接口待调
moveClml(obj).then(async (res) => {
if (res.code == 200) {
let res = await this.clmlInitList()
if (res == 200) this.$message({
message: '上移成功',
type: 'success'
})
} else {
this.$message.error(res.message);
}
})
},
// 下移
moveDown (index, row) {
let obj = {
xh: row.xh,
bsmSlsq: row.bsmSlsq,
moveDirection: "DOWN",
}
// 接口待调
moveClml(obj).then(async (res) => {
if (res.code == 200) {
let res = await this.clmlInitList()
if (res == 200) this.$message({
message: '下移成功',
type: 'success'
})
} else {
this.$message.error(res.message);
}
})
},
// 新增弹窗保存
addSave (data) {
let obj = {
bsmSlsq: this.$parent.bsmSlsq,
isrequired: "1",
sjmc: data.clmc,
sjsl: 0,
smzt: '',
ys: 0,
sjlx: data.cllx,
sfxjcl: "1", // 是否必选
};
saveClml(obj).then(async (res) => {
if (res.code == 200) {
let res = await this.clmlInitList()
if (res == 200) this.$message({
message: "新增成功",
type: "success",
methods: {
// 材料目录明细初始化
clmlInitList () {
return new Promise(resolve => {
this.unitData = this.$parent.unitData;
var formdata = new FormData();
formdata.append("bsmSldy", this.unitData[0]?.bsmSldy);
formdata.append("bsmSlsq", this.$parent.bsmSlsq);
clmlInit(formdata).then((res) => {
resolve(res.code)
if (res.result.result && res.result.result.length > 0) {
this.tableData = res.result.result;
this.treeCheckId = this.tableData[0].bsmSj;
this.title = this.tableData[0].sjmc;
this.titleYs = 1;
this.titleNum = this.tableData[0].children.length;
this.previewImg.imgList = this.tableData[0]?.children;
this.previewImg.bsmSj = this.tableData[0]?.bsmSj;
}
})
})
},
updateList (val) {
this.tableData.forEach(item => {
if (item.bsmSj === val.bsmSj) {
item.children = val.children
}
})
this.previewImg.imgList = _.cloneDeep(val.children)
if (this.previewImg.index == this.previewImg.imgList.length) {
this.previewImg.index = this.previewImg.index - 1
}
});
},
// 材料目录删除
handleDelete (index, row) {
let that = this
this.$confirm('此操作将永久删除该 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
deleteSjClml({ sjBsm: row.bsmSj }).then(async (res) => {
},
// 左侧菜单点击
menuClick (item) {
this.checkedId = item.id
},
// 添加材料目录
handleAdd () {
this.isDialog = true;
},
// 上移
moveUpward (index, row) {
let obj = {
xh: row.xh,
bsmSlsq: row.bsmSlsq,
moveDirection: "UP",
};
// 接口待调
moveClml(obj).then(async (res) => {
if (res.code == 200) {
let res = await that.clmlInitList()
if (res == 200) that.$message({
message: "删除成功",
type: "success",
let res = await this.clmlInitList()
if (res == 200) this.$message({
message: '上移成功',
type: 'success'
})
} else {
this.$message.error(res.message);
}
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
},
// 下移
moveDown (index, row) {
let obj = {
xh: row.xh,
bsmSlsq: row.bsmSlsq,
moveDirection: "DOWN",
}
// 接口待调
moveClml(obj).then(async (res) => {
if (res.code == 200) {
let res = await this.clmlInitList()
if (res == 200) this.$message({
message: '下移成功',
type: 'success'
})
} else {
this.$message.error(res.message);
}
})
})
},
// 材料目录关闭收起
iconClick () {
this.menuOpen = !this.menuOpen;
if (this.menuOpen) {
this.iclass = "itemIcon el-icon-caret-bottom close";
} else {
this.iclass = "itemIcon el-icon-caret-bottom open";
}
},
// 材料目录点击选中
treeClick (item) {
this.treeCheckId = item.bsmSj;
this.previewImg.imgList = item?.children;
this.previewImg.bsmSj = item?.bsmSj;
},
// 小图片点击
imgClick (item, index) {
this.showImg = item;
this.titleYs = index + 1;
},
// 字典
dicStatus (val, code) {
let data = this.$store.getters.dictData[code],
name = "暂无";
if (data) {
data.map((item) => {
if (item.dcode == val) {
name = item.dname;
},
// 新增弹窗保存
addSave (data) {
let obj = {
bsmSlsq: this.$parent.bsmSlsq,
isrequired: "1",
sjmc: data.clmc,
sjsl: 0,
smzt: '',
ys: 0,
sjlx: data.cllx,
sfxjcl: "1", // 是否必选
};
saveClml(obj).then(async (res) => {
if (res.code == 200) {
let res = await this.clmlInitList()
if (res == 200) this.$message({
message: "新增成功",
type: "success",
})
}
});
return name;
}
},
// 材料目录删除
handleDelete (index, row) {
let that = this
this.$confirm('此操作将永久删除该 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
deleteSjClml({ sjBsm: row.bsmSj }).then(async (res) => {
if (res.code == 200) {
let res = await that.clmlInitList()
if (res == 200) that.$message({
message: "删除成功",
type: "success",
})
}
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
})
})
},
// 材料目录关闭收起
iconClick () {
this.menuOpen = !this.menuOpen;
if (this.menuOpen) {
this.iclass = "itemIcon el-icon-caret-bottom close";
} else {
this.iclass = "itemIcon el-icon-caret-bottom open";
}
},
// 材料目录点击选中
treeClick (item) {
this.treeCheckId = item.bsmSj;
this.previewImg.imgList = item?.children;
this.previewImg.bsmSj = item?.bsmSj;
},
// 小图片点击
imgClick (item, index) {
this.showImg = item;
this.titleYs = index + 1;
},
// 字典
dicStatus (val, code) {
let data = this.$store.getters.dictData[code],
name = "暂无";
if (data) {
data.map((item) => {
if (item.dcode == val) {
name = item.dname;
}
});
return name;
}
},
},
},
};
};
</script>
<style scoped lang='scss'>
@import "~@/styles/mixin.scss";
@import "~@/styles/mixin.scss";
.active {
background: $light-blue !important;
color: #fff;
}
.clxx {
width: 100%;
display: flex;
padding-left: 5px;
height: calc(100vh - 125px);
.left {
display: flex;
flex-direction: column;
justify-content: space-between;
.item {
width: 28px;
height: 49%;
@include flex-center;
background-color: #E4E7ED;
border-bottom-right-radius: 10px;
padding: 5px;
cursor: pointer;
transition: all 0.3s;
&:hover {
@extend .active;
}
}
.active {
background: $light-blue !important;
color: #fff;
}
.right {
.clxx {
width: 100%;
height: 100%;
display: flex;
padding-left: 5px;
height: calc(100vh - 125px);
.left {
display: flex;
flex-direction: column;
justify-content: space-between;
.clmlmx-box {
margin: 0 auto;
.item {
width: 28px;
height: 49%;
@include flex-center;
background-color: #e4e7ed;
border-bottom-right-radius: 10px;
padding: 5px;
cursor: pointer;
transition: all 0.3s;
.title {
text-align: center;
height: 60px;
line-height: 60px;
border: 1px solid #dfe6ec;
font-size: 20px;
background: #81d3f81a;
margin-bottom: -1px;
&:hover {
@extend .active;
}
}
}
.clyl-box {
.right {
width: 100%;
height: 100%;
display: flex;
.menu-tree {
width: 20%;
min-width: 160px;
height: 100%;
margin-right: 10px;
border-right: 1px dotted #d9d9d9;
padding: 0 15px;
.clmlmx-box {
margin: 0 auto;
.item {
.title {
text-align: center;
height: 60px;
line-height: 60px;
border-bottom: 1px solid #e8e8e8;
font-size: 16px;
color: #4a4a4a;
border: 1px solid #dfe6ec;
font-size: 20px;
background: #81d3f81a;
margin-bottom: -1px;
}
}
.clyl-box {
width: 100%;
height: 100%;
display: flex;
.menu-tree {
width: 20%;
min-width: 160px;
height: 100%;
margin-right: 10px;
border-right: 1px dotted #d9d9d9;
padding: 0 15px;
.itemIcon {
float: right;
.item {
height: 60px;
line-height: 60px;
cursor: pointer;
}
border-bottom: 1px solid #e8e8e8;
font-size: 16px;
color: #4a4a4a;
@keyframes open {
100% {
transform: rotate(180deg);
.itemIcon {
float: right;
line-height: 60px;
cursor: pointer;
}
}
@keyframes close {
0% {
transform: rotate(180deg);
@keyframes open {
100% {
transform: rotate(180deg);
}
}
100% {
transform: rotate(-0deg);
@keyframes close {
0% {
transform: rotate(180deg);
}
100% {
transform: rotate(-0deg);
}
}
}
.open {
animation: open 0.5s;
animation-fill-mode: both;
}
.open {
animation: open 0.5s;
animation-fill-mode: both;
}
.close {
animation: close 0.5s;
animation-fill-mode: both;
}
.close {
animation: close 0.5s;
animation-fill-mode: both;
}
.child {
line-height: 36px;
border-bottom: 1px solid #e8e8e8;
padding-left: 10px;
color: #6b6b6b;
cursor: pointer;
box-sizing: border-box;
}
.child {
line-height: 36px;
border-bottom: 1px solid #e8e8e8;
padding-left: 10px;
color: #6b6b6b;
cursor: pointer;
box-sizing: border-box;
}
.checked {
border-radius: 6px;
border: 1px solid #4083f9;
.checked {
border-radius: 6px;
border: 1px solid #4083f9;
}
}
}
}
.clyl-img {
width: 75%;
height: 100%;
background: #f3f4f7;
margin: 0 auto;
position: relative;
.clyl-img {
width: 75%;
height: 100%;
background: #f3f4f7;
margin: 0 auto;
position: relative;
}
}
}
}
}
</style>
\ No newline at end of file
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:42:38
-->
<template>
<dialogBox title="新建材料信息" width="20%" isMain v-model="myValue" @closeDialog="closeDialog" @submitForm="handleSubmit"
:isFullscreen="false">
......@@ -24,44 +29,44 @@
</template>
<script>
import { mapGetters } from "vuex";
export default {
props: {
value: { type: Boolean, default: false },
},
data () {
return {
myValue: this.value,
ruleForm: {
cllx: "",
clmc: "",
},
};
},
computed: {
...mapGetters(["dictData"]),
},
watch: {
value (val) {
this.myValue = val;
import { mapGetters } from "vuex";
export default {
props: {
value: { type: Boolean, default: false },
},
data () {
return {
myValue: this.value,
ruleForm: {
cllx: "",
clmc: "",
},
};
},
computed: {
...mapGetters(["dictData"]),
},
},
methods: {
closeDialog () {
this.$emit("input", false);
watch: {
value (val) {
this.myValue = val;
},
},
handleSubmit () {
this.$parent.addSave(this.ruleForm);
this.$emit("input", false);
methods: {
closeDialog () {
this.$emit("input", false);
},
handleSubmit () {
this.$parent.addSave(this.ruleForm);
this.$emit("input", false);
},
},
},
};
};
</script>
<style scoped lang="scss">
.submit-button {
text-align: center;
height: 52px;
padding-top: 10px;
background-color: #fff;
}
.submit-button {
text-align: center;
height: 52px;
padding-top: 10px;
background-color: #fff;
}
</style>
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:42:40
*/
export default {
data() {
data () {
return {
isSearch: false,
searchList: [],
......@@ -9,12 +14,12 @@ export default {
methods: {
// 点击高级查询弹出查询弹框
moreQueryClick() {
moreQueryClick () {
this.isSearch = true
},
// 查询事件
handleSelect(bs, mc, code) {
handleSelect (bs, mc, code) {
this.dictData[bs].forEach(item => {
if (item.dcode == this.queryForm[code]) {
this.searchForm[mc] = item.dname
......@@ -22,7 +27,7 @@ export default {
})
},
// 清空单个表单
handleEmpty(el) {
handleEmpty (el) {
for (var i = 0; i < this.searchList.length; i++) {
if (el == this.searchList[i].zdm) {
this.searchList.splice(i, 1)
......@@ -44,7 +49,7 @@ export default {
},
// 删除单个查询条件
handelItem(item, index) {
handelItem (item, index) {
let obj = {
ywlymc: 'ywly',
qllxmc: 'qllx',
......@@ -60,7 +65,7 @@ export default {
}
this.searchForm[item.zdm] = ''
},
iterationData() {
iterationData () {
let obj = {
ywlymc: '业务来源', qllxmc: '权利类型', djlxmc: '登记类型', ywh: '业务号', sqywmc: '申请业务名称',
qlrmc: '权利人', ywrmc: '义务人', slsj: '受理时间'
......@@ -70,13 +75,13 @@ export default {
if (value) return { name: obj[name], value, zdm: name }
}).filter(Boolean)
},
getSearch(val) {
getSearch (val) {
this.otherForm = val
this.iterationData()
this.queryClick()
},
// 清空查询条件
hanldeCleanAll() {
hanldeCleanAll () {
this.searchForm = {}
this.queryForm = {
ywly: "",
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:42:49
-->
<template>
<div class="from-clues">
<div class="from-clues-header">
......@@ -66,7 +71,7 @@
</el-col>
<el-col :span="6">
<el-form-item label="坐落">
<el-input placeholder="如需要模糊查询,前后输入%" v-model="queryForm.zl" clearable class="width100">
<el-input placeholder="如需要模糊查询,前后输入%" v-model.trim="queryForm.zl" clearable class="width100">
</el-input>
</el-form-item>
</el-col>
......@@ -101,6 +106,7 @@
import { datas, sendThis } from "./dbxdata";
import { searchTaskToDo, deleteFlow, claimTask } from "@/api/ywbl";
import { judgeUserTaskPermission } from "@/api/fqsq";
import { log } from 'bpmn-js-token-simulation';
export default {
name: "dbx",
components: { searchBox },
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:42:55
*/
import filter from '@/utils/filter.js'
let vm = null
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:43:00
-->
<template>
<div class="slxx">
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" :label-position="flagTop" :inline="flag"
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:43:10
-->
<template>
<div class="slxx">
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" :label-position="flagTop" :inline="flag"
......@@ -199,78 +204,78 @@
</div>
</template>
<script>
import sqrViewTable from "@/views/workflow/components/sqrViewTable";
import { BatchInit, saveData } from "@/api/workflow/cfdjFlow.js";
import { mapGetters } from "vuex";
export default {
data () {
return {
disabled: true,
flagTop: this.flag ? "top" : "",
rules: {},
//传递参数
propsParam: {},
//页面数据
ruleForm: {},
//是否可编辑
ableEdit: false,
//是否为解封
isJfOperation: false,
};
},
async created () {
this.propsParam = this.$attrs;
this.ableEdit = this.$parent.showBatch;
if (this.propsParam.djlx == '400') {
this.isJfOperation = true;
}
var formdata = new FormData();
formdata.append("bsmSldy", this.propsParam.bsmSldy);
formdata.append("bsmSlsq", this.$route.query.bsmSlsq);
formdata.append("djlx", this.propsParam.djlx);
BatchInit(formdata).then((res) => {
if (res.code === 200 && res.result) {
this.ruleForm = res.result
import sqrViewTable from "@/views/workflow/components/sqrViewTable";
import { BatchInit, saveData } from "@/api/workflow/cfdjFlow.js";
import { mapGetters } from "vuex";
export default {
data () {
return {
disabled: true,
flagTop: this.flag ? "top" : "",
rules: {},
//传递参数
propsParam: {},
//页面数据
ruleForm: {},
//是否可编辑
ableEdit: false,
//是否为解封
isJfOperation: false,
};
},
async created () {
this.propsParam = this.$attrs;
this.ableEdit = this.$parent.showBatch;
if (this.propsParam.djlx == '400') {
this.isJfOperation = true;
}
});
},
watch: {
var formdata = new FormData();
formdata.append("bsmSldy", this.propsParam.bsmSldy);
formdata.append("bsmSlsq", this.$route.query.bsmSlsq);
formdata.append("djlx", this.propsParam.djlx);
BatchInit(formdata).then((res) => {
if (res.code === 200 && res.result) {
this.ruleForm = res.result
}
});
},
watch: {
},
components: { sqrViewTable },
props: {
flag: {
type: Boolean,
default: false,
},
fetch: {
type: Boolean,
default: false,
components: { sqrViewTable },
props: {
flag: {
type: Boolean,
default: false,
},
fetch: {
type: Boolean,
default: false,
},
},
computed: {
...mapGetters(["dictData"]),
},
},
computed: {
...mapGetters(["dictData"]),
},
methods: {
onSubmit () {
saveData(this.ruleForm).then((res) => {
if (res.code === 200) {
this.$message.success('保存成功');
}
});
methods: {
onSubmit () {
saveData(this.ruleForm).then((res) => {
if (res.code === 200) {
this.$message.success('保存成功');
}
});
},
changeCflx (e) {
let cflxItem = {}
cflxItem = this.dictData['A32'].find((item) => {
return item.dcode == e
})
this.ruleForm.cfdj.cflxmc = cflxItem.dname;
}
},
changeCflx (e) {
let cflxItem = {}
cflxItem = this.dictData['A32'].find((item) => {
return item.dcode == e
})
this.ruleForm.cfdj.cflxmc = cflxItem.dname;
}
},
};
};
</script>
<style scoped lang='scss'>
@import "~@/styles/public.scss";
@import "~@/styles/slxx/slxx.scss";
@import "~@/styles/public.scss";
@import "~@/styles/slxx/slxx.scss";
</style>
\ No newline at end of file
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:43:15
-->
<template>
<!-- 受理信息 -->
<div class="slxx">
......@@ -242,79 +247,79 @@
</div>
</template>
<script>
import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
import { Init, saveData } from "@/api/workflow/diyaqFlow.js";
import { mapGetters } from "vuex";
export default {
mounted () {
this.propsParam = this.$attrs;
var formdata = new FormData();
this.$startLoading();
formdata.append("bsmSldy", this.propsParam.bsmSldy);
formdata.append("bsmSlsq", this.$route.query.bsmSlsq);
formdata.append("djlx", this.propsParam.djlx);
Init(formdata).then((res) => {
if (res.code === 200 && res.result) {
this.ruleForm = res.result;
this.$endLoading();
this.ruleForm.diyaq.sfczjzhxz = "0";
}
})
},
components: { qlrCommonTable },
computed: {
...mapGetters(["dictData", "flag"]),
},
data () {
return {
disabled: true,
czrOptions: [],
ruleForm: {
slywxx: {},
qlxxold: {},
diyaq: {},
gyfs: "",
},
//传递参数
propsParam: {},
rules: {},
};
},
methods: {
onSubmitClick () {
saveData(this.ruleForm, this.propsParam.djlx).then((res) => {
if (res.code === 200) {
this.$message({
showClose: true,
message: "保存成功!",
type: "success",
});
} else {
this.$message({
showClose: true,
message: res.message,
type: "error",
});
import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
import { Init, saveData } from "@/api/workflow/diyaqFlow.js";
import { mapGetters } from "vuex";
export default {
mounted () {
this.propsParam = this.$attrs;
var formdata = new FormData();
this.$startLoading();
formdata.append("bsmSldy", this.propsParam.bsmSldy);
formdata.append("bsmSlsq", this.$route.query.bsmSlsq);
formdata.append("djlx", this.propsParam.djlx);
Init(formdata).then((res) => {
if (res.code === 200 && res.result) {
this.ruleForm = res.result;
this.$endLoading();
this.ruleForm.diyaq.sfczjzhxz = "0";
}
});
})
},
// 更新权利人信息
upDateQlrxxList (val) {
if (!_.isEqual(val, this.ruleForm.qlrList)) {
this.ruleForm.qlrList = _.cloneDeep(val);
}
components: { qlrCommonTable },
computed: {
...mapGetters(["dictData", "flag"]),
},
data () {
return {
disabled: true,
czrOptions: [],
ruleForm: {
slywxx: {},
qlxxold: {},
diyaq: {},
gyfs: "",
},
//传递参数
propsParam: {},
rules: {},
};
},
// 更新义务人信息
upDateYwrxxList (val) {
if (!_.isEqual(val, this.ruleForm.ywrList)) {
this.ruleForm.ywrList = _.cloneDeep(val);
methods: {
onSubmitClick () {
saveData(this.ruleForm, this.propsParam.djlx).then((res) => {
if (res.code === 200) {
this.$message({
showClose: true,
message: "保存成功!",
type: "success",
});
} else {
this.$message({
showClose: true,
message: res.message,
type: "error",
});
}
});
},
// 更新权利人信息
upDateQlrxxList (val) {
if (!_.isEqual(val, this.ruleForm.qlrList)) {
this.ruleForm.qlrList = _.cloneDeep(val);
}
},
// 更新义务人信息
upDateYwrxxList (val) {
if (!_.isEqual(val, this.ruleForm.ywrList)) {
this.ruleForm.ywrList = _.cloneDeep(val);
}
}
}
}
};
};
</script>
<style scoped lang='scss'>
@import "~@/styles/public.scss";
@import "~@/styles/slxx/slxx.scss";
@import "~@/styles/public.scss";
@import "~@/styles/slxx/slxx.scss";
</style>
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:43:19
-->
<template>
<!-- 受理信息 -->
<div class="slxx">
......@@ -146,7 +151,6 @@
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="担保范围:">
......@@ -239,74 +243,74 @@
</div>
</template>
<script>
import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
import { Init, saveData } from "@/api/workflow/diyaqFlow.js";
import { mapGetters } from "vuex";
export default {
mounted () {
this.propsParam = this.$attrs;
var formdata = new FormData();
this.$startLoading();
formdata.append("bsmSldy", this.propsParam.bsmSldy);
formdata.append("bsmSlsq", this.$route.query.bsmSlsq);
formdata.append("djlx", this.propsParam.djlx);
Init(formdata).then((res) => {
if (res.code === 200 && res.result) {
this.ruleForm = res.result;
this.$endLoading();
this.ruleForm.diyaq.sfczjzhxz = "0";
}
});
},
components: { qlrCommonTable },
computed: {
...mapGetters(["dictData", "flag"]),
},
data () {
return {
disabled: true,
czrOptions: [],
ruleForm: {
slywxx: {},
qlxxold: {},
diyaq: {},
gyfs: "",
},
//传递参数
propsParam: {},
rules: {},
};
},
methods: {
onSubmitClick () {
saveData(this.ruleForm, this.propsParam.djlx).then((res) => {
if (res.code === 200) {
this.$message({
showClose: true,
message: "保存成功!",
type: "success",
});
} else {
this.$message({
showClose: true,
message: res.message,
type: "error",
});
import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
import { Init, saveData } from "@/api/workflow/diyaqFlow.js";
import { mapGetters } from "vuex";
export default {
mounted () {
this.propsParam = this.$attrs;
var formdata = new FormData();
this.$startLoading();
formdata.append("bsmSldy", this.propsParam.bsmSldy);
formdata.append("bsmSlsq", this.$route.query.bsmSlsq);
formdata.append("djlx", this.propsParam.djlx);
Init(formdata).then((res) => {
if (res.code === 200 && res.result) {
this.ruleForm = res.result;
this.$endLoading();
this.ruleForm.diyaq.sfczjzhxz = "0";
}
});
},
// 更新权利人信息
upDateQlrxxList (val) {
this.ruleForm.qlrList = _.cloneDeep(val);
components: { qlrCommonTable },
computed: {
...mapGetters(["dictData", "flag"]),
},
data () {
return {
disabled: true,
czrOptions: [],
ruleForm: {
slywxx: {},
qlxxold: {},
diyaq: {},
gyfs: "",
},
//传递参数
propsParam: {},
rules: {},
};
},
// 更新义务人信息
upDateYwrxxList (val) {
this.ruleForm.ywrList = _.cloneDeep(val);
methods: {
onSubmitClick () {
saveData(this.ruleForm, this.propsParam.djlx).then((res) => {
if (res.code === 200) {
this.$message({
showClose: true,
message: "保存成功!",
type: "success",
});
} else {
this.$message({
showClose: true,
message: res.message,
type: "error",
});
}
});
},
// 更新权利人信息
upDateQlrxxList (val) {
this.ruleForm.qlrList = _.cloneDeep(val);
},
// 更新义务人信息
upDateYwrxxList (val) {
this.ruleForm.ywrList = _.cloneDeep(val);
}
}
}
}
</script>
<style scoped lang='scss'>
@import "~@/styles/public.scss";
@import "~@/styles/slxx/slxx.scss";
@import "~@/styles/public.scss";
@import "~@/styles/slxx/slxx.scss";
</style>
......
<!--
* @Description: 受理信息
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:43:23
-->
<template>
<!-- 受理信息 -->
<div class="slxx">
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" :label-position="flag ? 'top' : ''" :inline="flag"
label-width="120px">
......@@ -202,143 +206,143 @@
</div>
</template>
<script>
import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
import { Init, saveBatchData } from "@/api/workflow/fwsyqFlow.js";
import { mapGetters } from "vuex";
export default {
created () {
this.propsParam = this.$attrs;
var formdata = new FormData();
formdata.append("bsmSldy", this.propsParam.bsmSldy);
formdata.append("djlx", this.propsParam.djlx);
Init(formdata).then((res) => {
if (res.code === 200 && res.result) {
this.ruleForm = {
...res.result,
...res.result.qlxxdatas,
import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
import { Init, saveBatchData } from "@/api/workflow/fwsyqFlow.js";
import { mapGetters } from "vuex";
export default {
created () {
this.propsParam = this.$attrs;
var formdata = new FormData();
formdata.append("bsmSldy", this.propsParam.bsmSldy);
formdata.append("djlx", this.propsParam.djlx);
Init(formdata).then((res) => {
if (res.code === 200 && res.result) {
this.ruleForm = {
...res.result,
...res.result.qlxxdatas,
}
}
}
});
},
components: { qlrCommonTable },
computed: {
...mapGetters(["dictData", "flag"]),
},
data () {
return {
disabled: true,
tdytOption: [],
czrOptions: [],
ruleForm: {},
//传递参数
propsParam: this.$attrs,
rules: {},
};
},
methods: {
// 更新权利人信息
upDateQlrxxList (val) {
this.ruleForm.qlrList = _.cloneDeep(val);
});
},
showCZInfo () {
console.log(this.ruleForm.slywxx.gyfs);
components: { qlrCommonTable },
computed: {
...mapGetters(["dictData", "flag"]),
},
// 更新权利人信息
upDateYwrxxList (val) {
this.ruleForm.ywrList = _.cloneDeep(val);
data () {
return {
disabled: true,
tdytOption: [],
czrOptions: [],
ruleForm: {},
//传递参数
propsParam: this.$attrs,
rules: {},
};
},
onSubmit () {
saveBatchData(this.ruleForm).then((res) => {
if (res.code === 200) {
this.$message({
showClose: true,
message: "保存成功!",
type: "success",
});
} else {
this.$message({
showClose: true,
message: res.message,
type: "error",
});
}
});
methods: {
// 更新权利人信息
upDateQlrxxList (val) {
this.ruleForm.qlrList = _.cloneDeep(val);
},
showCZInfo () {
console.log(this.ruleForm.slywxx.gyfs);
},
// 更新权利人信息
upDateYwrxxList (val) {
this.ruleForm.ywrList = _.cloneDeep(val);
},
onSubmit () {
saveBatchData(this.ruleForm).then((res) => {
if (res.code === 200) {
this.$message({
showClose: true,
message: "保存成功!",
type: "success",
});
} else {
this.$message({
showClose: true,
message: res.message,
type: "error",
});
}
});
},
},
},
};
};
</script>
<style scoped lang='scss'>
@import "~@/styles/public.scss";
@import "~@/styles/public.scss";
/deep/.el-form {
display: flex;
flex-direction: column;
height: calc(100vh - 130px);
}
/deep/.el-form {
display: flex;
flex-direction: column;
height: calc(100vh - 130px);
}
/deep/.el-form-item__label {
padding: 0;
}
/deep/.el-form-item__label {
padding: 0;
}
/deep/.el-radio {
margin-right: 10px;
}
/deep/.el-radio {
margin-right: 10px;
}
/deep/.el-select {
width: 100%;
}
/deep/.el-select {
width: 100%;
}
/deep/.el-form-item {
margin-bottom: 8px;
}
/deep/.el-form-item {
margin-bottom: 8px;
}
.marginBot0 {
margin-bottom: 0 !important;
}
.marginBot0 {
margin-bottom: 0 !important;
}
.slxx {
box-sizing: border-box;
}
.slxx {
box-sizing: border-box;
}
.slxx_con {
flex: 1;
height: 100%;
background-color: #ffffff;
overflow-y: auto;
padding-right: 3px;
overflow-x: hidden;
}
.slxx_con {
flex: 1;
height: 100%;
background-color: #ffffff;
overflow-y: auto;
padding-right: 3px;
overflow-x: hidden;
}
.submit_btn {
height: 50px;
}
.submit_btn {
height: 50px;
}
.slxx_title {
border-bottom: 1px solid $borderColor;
padding-left: 10px;
padding-bottom: 5px;
margin-bottom: 10px;
margin-top: 5px;
font-size: 16px;
font-weight: 500;
color: #4a4a4a;
}
.slxx_title {
border-bottom: 1px solid $borderColor;
padding-left: 10px;
padding-bottom: 5px;
margin-bottom: 10px;
margin-top: 5px;
font-size: 16px;
font-weight: 500;
color: #4a4a4a;
}
.btn {
text-align: center;
padding-top: 10px;
height: 36px;
background-color: #ffffff;
padding: 5px 0;
}
.btn {
text-align: center;
padding-top: 10px;
height: 36px;
background-color: #ffffff;
padding: 5px 0;
}
.textArea {
/deep/.el-textarea__inner {
min-height: 90px !important;
.textArea {
/deep/.el-textarea__inner {
min-height: 90px !important;
}
}
}
/deep/.el-form-item__label {
padding-bottom: 0px;
}
/deep/.el-form-item__label {
padding-bottom: 0px;
}
</style>
......
<!--
* @Description: 受理信息
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:43:30
-->
<template>
<!-- 受理信息 -->
<div class="slxx">
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" :label-position="flag ? 'top' : ''" :inline="flag"
label-width="120px">
......@@ -186,183 +190,183 @@
</div>
</template>
<script>
import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
import { Init, saveBatchData } from "@/api/workflow/fwsyqFlow.js";
import { mapGetters } from "vuex";
export default {
async created () {
this.propsParam = this.$attrs;
var formdata = new FormData();
formdata.append("bsmSldy", this.propsParam.bsmSldy);
formdata.append("djlx", this.propsParam.djlx);
Init(formdata).then((res) => {
if (res.code === 200 && res.result) {
this.ruleForm = {
...res.result,
...res.result.zdjbxxdatas,
...res.result.qlxxdatas,
...res.result.jsydsyqdatas,
};
}
});
},
components: { qlrCommonTable },
computed: {
...mapGetters(["dictData", "flag"]),
},
data () {
return {
disabled: true,
tdytOption: [],
czrOptions: [],
ruleForm: {
ywh: "",
slry: "",
slsj: "",
qllx: "",
djlx: "",
djqx: "",
// 宗地代码
zddm: "",
bdcdyh: "",
qlxzmc: "",
qlrxx: [],
// 自然幢号
zrzh: "",
// 户不动产单元号
hbdcdyh: '',
djzt: '',
// 图幅丘幢号
tfqzh: '',
zl: '',
// 房屋用途
fwyt: '',
fwxz: '',
fwjg: '',
// 权利人信息
gyfs: "1",
// 是否分别持证
sffbcz: "",
// 持证人
czr: "",
djyy: ''
},
//传递参数
propsParam: {},
rules: {},
};
},
methods: {
dataSelectClick () {
this.$popup("房屋信息比对", this.BASE_API.SERVERAPI + "/rest/ywbl/fdcq2/slxxCompareDetai",
{
formData: {
bsmSldy: this.propsParam.bsmSldy,
qllx: this.propsParam.qllx
}
});
import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
import { Init, saveBatchData } from "@/api/workflow/fwsyqFlow.js";
import { mapGetters } from "vuex";
export default {
async created () {
this.propsParam = this.$attrs;
var formdata = new FormData();
formdata.append("bsmSldy", this.propsParam.bsmSldy);
formdata.append("djlx", this.propsParam.djlx);
Init(formdata).then((res) => {
if (res.code === 200 && res.result) {
this.ruleForm = {
...res.result,
...res.result.zdjbxxdatas,
...res.result.qlxxdatas,
...res.result.jsydsyqdatas,
};
}
});
},
// 更新权利人信息
upDateQlrxxList (val) {
this.ruleForm.qlrList = _.cloneDeep(val);
components: { qlrCommonTable },
computed: {
...mapGetters(["dictData", "flag"]),
},
// 更新权利人信息
upDateYwrxxList (val) {
this.ruleForm.ywrList = _.cloneDeep(val);
data () {
return {
disabled: true,
tdytOption: [],
czrOptions: [],
ruleForm: {
ywh: "",
slry: "",
slsj: "",
qllx: "",
djlx: "",
djqx: "",
// 宗地代码
zddm: "",
bdcdyh: "",
qlxzmc: "",
qlrxx: [],
// 自然幢号
zrzh: "",
// 户不动产单元号
hbdcdyh: '',
djzt: '',
// 图幅丘幢号
tfqzh: '',
zl: '',
// 房屋用途
fwyt: '',
fwxz: '',
fwjg: '',
// 权利人信息
gyfs: "1",
// 是否分别持证
sffbcz: "",
// 持证人
czr: "",
djyy: ''
},
//传递参数
propsParam: {},
rules: {},
};
},
onSubmit () {
saveBatchData(this.ruleForm).then((res) => {
if (res.code === 200) {
this.$message({
showClose: true,
message: "保存成功!",
type: "success",
});
} else {
this.$message({
showClose: true,
message: res.message,
type: "error",
methods: {
dataSelectClick () {
this.$popup("房屋信息比对", this.BASE_API.SERVERAPI + "/rest/ywbl/fdcq2/slxxCompareDetai",
{
formData: {
bsmSldy: this.propsParam.bsmSldy,
qllx: this.propsParam.qllx
}
});
}
});
},
// 更新权利人信息
upDateQlrxxList (val) {
this.ruleForm.qlrList = _.cloneDeep(val);
},
// 更新权利人信息
upDateYwrxxList (val) {
this.ruleForm.ywrList = _.cloneDeep(val);
},
onSubmit () {
saveBatchData(this.ruleForm).then((res) => {
if (res.code === 200) {
this.$message({
showClose: true,
message: "保存成功!",
type: "success",
});
} else {
this.$message({
showClose: true,
message: res.message,
type: "error",
});
}
});
},
},
},
};
};
</script>
<style scoped lang='scss'>
@import "~@/styles/public.scss";
@import "~@/styles/public.scss";
/deep/.el-form {
display: flex;
flex-direction: column;
height: calc(100vh - 130px);
}
/deep/.el-form {
display: flex;
flex-direction: column;
height: calc(100vh - 130px);
}
/deep/.el-form-item__label {
padding: 0;
}
/deep/.el-form-item__label {
padding: 0;
}
/deep/.el-radio {
margin-right: 10px;
}
/deep/.el-radio {
margin-right: 10px;
}
/deep/.el-select {
width: 100%;
}
/deep/.el-select {
width: 100%;
}
/deep/.el-form-item {
margin-bottom: 8px;
}
/deep/.el-form-item {
margin-bottom: 8px;
}
.marginBot0 {
margin-bottom: 0 !important;
}
.marginBot0 {
margin-bottom: 0 !important;
}
.slxx {
box-sizing: border-box;
}
.slxx {
box-sizing: border-box;
}
.slxx_con {
flex: 1;
height: 100%;
background-color: #ffffff;
overflow-y: auto;
padding-right: 3px;
overflow-x: hidden;
}
.slxx_con {
flex: 1;
height: 100%;
background-color: #ffffff;
overflow-y: auto;
padding-right: 3px;
overflow-x: hidden;
}
.submit_btn {
height: 50px;
}
.submit_btn {
height: 50px;
}
.slxx_title {
border-bottom: 1px solid $borderColor;
padding-left: 10px;
padding-bottom: 5px;
margin-bottom: 10px;
margin-top: 5px;
font-size: 16px;
font-weight: 500;
color: #4a4a4a;
}
.slxx_title {
border-bottom: 1px solid $borderColor;
padding-left: 10px;
padding-bottom: 5px;
margin-bottom: 10px;
margin-top: 5px;
font-size: 16px;
font-weight: 500;
color: #4a4a4a;
}
.btn {
text-align: center;
padding-top: 10px;
height: 36px;
background-color: #ffffff;
padding: 5px 0;
}
.btn {
text-align: center;
padding-top: 10px;
height: 36px;
background-color: #ffffff;
padding: 5px 0;
}
.textArea {
/deep/.el-textarea__inner {
min-height: 90px !important;
.textArea {
/deep/.el-textarea__inner {
min-height: 90px !important;
}
}
}
/deep/.el-form-item__label {
padding-bottom: 0px;
}
/deep/.el-form-item__label {
padding-bottom: 0px;
}
</style>
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:43:41
-->
<template>
<div class="djxxTable" :style="{'max-height': this.timeLineHeight + 'px' }"
style="overflow-y:scroll;">
<div class="tableBox" >
style="overflow-y:scroll;">
<div class="tableBox">
<div class="title">
<span>{{ title }}</span>
</div>
......@@ -12,7 +17,7 @@
<td>变更前</td>
<td>变更后</td>
</tr>
<tr v-for="(item, colindex) in columns" :key="colindex">
<tr v-for="(item, colindex) in columns" :key="colindex">
<td>
{{ item.label }}
</td>
......@@ -23,8 +28,7 @@
row.qszt == '2' ? 'lishi' : '',
row.qszt == '0' ? 'linshi' : '',
item.prop == 'qszt' && row.qszt == '0' ? 'linshiIcon' : '',
]"
>
]">
<div class="icon" v-if="item.prop == 'qszt' && row.qszt == '0'">
正在办理
</div>
......@@ -42,73 +46,73 @@
</template>
<script>
import {getFdcqLSInfo} from "@/api/registerBook.js";
import { datas } from "@/views/registerBook/qlxxFormData.js";
import { getFdcqLSInfo } from "@/api/registerBook.js";
import { datas } from "@/views/registerBook/qlxxFormData.js";
export default {
data() {
return {
title: "房地产权登记信息(独幢、层、套、间房屋)",
qsztList: datas.columns().qsztList,
checkList: datas.columns().checkList,
//传递参数
propsParam: this.$attrs,
//列表数据
tableData: [],
//空列值个数
emptycolNum: 1,
//列名称对象
columns: datas.columns().FDCQ2,
tdColumns: datas.columns().JSYDSYQ
export default {
data () {
return {
title: "房地产权登记信息(独幢、层、套、间房屋)",
qsztList: datas.columns().qsztList,
checkList: datas.columns().checkList,
//传递参数
propsParam: this.$attrs,
//列表数据
tableData: [],
//空列值个数
emptycolNum: 1,
//列名称对象
columns: datas.columns().FDCQ2,
tdColumns: datas.columns().JSYDSYQ
};
},
created() {
this.loadData();
},
mounted() {
this.timeLineHeight = document.documentElement.clientHeight - 210;
window.onresize = () => {
};
},
created () {
this.loadData();
},
mounted () {
this.timeLineHeight = document.documentElement.clientHeight - 210;
};
},
methods: {
loadData() {
var formdata = new FormData();
formdata.append("bsmSldy", this.propsParam.formData.bsmSldy);
formdata.append("qllx", this.propsParam.formData.qllx);
getFdcqLSInfo(formdata).then((res) => {
if (res.code === 200) {
this.tableData = res.result;
if (this.tableData.length < datas.columns().emptycolNum) {
this.emptycolNum =
datas.columns().emptycolNum - this.tableData.length;
} else {
this.emptycolNum = 0;
window.onresize = () => {
this.timeLineHeight = document.documentElement.clientHeight - 210;
};
},
methods: {
loadData () {
var formdata = new FormData();
formdata.append("bsmSldy", this.propsParam.formData.bsmSldy);
formdata.append("qllx", this.propsParam.formData.qllx);
getFdcqLSInfo(formdata).then((res) => {
if (res.code === 200) {
this.tableData = res.result;
if (this.tableData.length < datas.columns().emptycolNum) {
this.emptycolNum =
datas.columns().emptycolNum - this.tableData.length;
} else {
this.emptycolNum = 0;
}
}
});
},
checkChange () {
if (this.checkList.length === 0) {
this.tableData = [];
this.emptycolNum = datas.columns().emptycolNum;
} else {
this.loadData();
}
});
},
checkChange() {
if (this.checkList.length === 0) {
this.tableData = [];
this.emptycolNum = datas.columns().emptycolNum;
} else {
this.loadData();
}
},
getQsztName(code) {
let name = "";
for (let item of this.qsztList) {
if (item.value == code) {
name = item.label;
break;
},
getQsztName (code) {
let name = "";
for (let item of this.qsztList) {
if (item.value == code) {
name = item.label;
break;
}
}
}
return name;
return name;
},
},
},
};
};
</script>
<style lang="scss" scoped>
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:45:21
-->
<template>
<!-- 受理信息 -->
<div class="slxx">
......@@ -173,75 +178,14 @@
</div>
</template>
<script>
import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
import { Init } from "@/api/workflow/fwsyqFlow.js";
import { mapGetters } from "vuex";
export default {
async created () {
this.propsParam = this.$attrs;
var formdata = new FormData();
formdata.append("bsmSldy", this.propsParam.bsmSldy);
Init(formdata).then((res) => {
if (res.code === 200 && res.result) {
this.ruleForm = {
...res.result,
...res.result.zdjbxxdatas,
...res.result.qlxxdatas,
...res.result.jsydsyqdatas,
};
}
});
},
components: { qlrCommonTable },
computed: {
...mapGetters(["dictData", "flag"]),
},
data () {
return {
disabled: true,
tdytOption: [],
czrOptions: [],
ruleForm: {
ywh: "",
slry: "",
slsj: "",
qllx: "",
djlx: "",
djqx: "",
// 宗地代码
zddm: "",
bdcdyh: "",
qlxzmc: "",
qlrxx: [],
// 自然幢号
zrzh: "",
// 户不动产单元号
hbdcdyh: '',
djzt: '',
// 图幅丘幢号
tfqzh: '',
zl: '',
// 房屋用途
fwyt: '',
fwxz: '',
fwjg: '',
// 权利人信息
gyfs: "1",
// 是否分别持证
sffbcz: "",
// 持证人
czr: "",
djyy: ''
},
//传递参数
propsParam: {},
rules: {},
};
},
methods: {
list (bsmSldy) {
import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
import { Init } from "@/api/workflow/fwsyqFlow.js";
import { mapGetters } from "vuex";
export default {
async created () {
this.propsParam = this.$attrs;
var formdata = new FormData();
formdata.append("bsmSldy", bsmSldy);
formdata.append("bsmSldy", this.propsParam.bsmSldy);
Init(formdata).then((res) => {
if (res.code === 200 && res.result) {
this.ruleForm = {
......@@ -253,89 +197,150 @@ export default {
}
});
},
onSubmit () {
fristReg(this.ruleForm).then((res) => {
if (res.code === 200 && res.result) {
console.log(res);
//this.ruleForm = { ...res.result, ...res.result.zdjbxxdatas, ...res.result.qlxxdatas, ...res.result.jsydsyqdatas }
}
});
components: { qlrCommonTable },
computed: {
...mapGetters(["dictData", "flag"]),
},
data () {
return {
disabled: true,
tdytOption: [],
czrOptions: [],
ruleForm: {
ywh: "",
slry: "",
slsj: "",
qllx: "",
djlx: "",
djqx: "",
// 宗地代码
zddm: "",
bdcdyh: "",
qlxzmc: "",
qlrxx: [],
// 自然幢号
zrzh: "",
// 户不动产单元号
hbdcdyh: '',
djzt: '',
// 图幅丘幢号
tfqzh: '',
zl: '',
// 房屋用途
fwyt: '',
fwxz: '',
fwjg: '',
// 权利人信息
gyfs: "1",
// 是否分别持证
sffbcz: "",
// 持证人
czr: "",
djyy: ''
},
//传递参数
propsParam: {},
rules: {},
};
},
},
};
methods: {
list (bsmSldy) {
var formdata = new FormData();
formdata.append("bsmSldy", bsmSldy);
Init(formdata).then((res) => {
if (res.code === 200 && res.result) {
this.ruleForm = {
...res.result,
...res.result.zdjbxxdatas,
...res.result.qlxxdatas,
...res.result.jsydsyqdatas,
};
}
});
},
onSubmit () {
fristReg(this.ruleForm).then((res) => {
if (res.code === 200 && res.result) {
console.log(res);
//this.ruleForm = { ...res.result, ...res.result.zdjbxxdatas, ...res.result.qlxxdatas, ...res.result.jsydsyqdatas }
}
});
},
},
};
</script>
<style scoped lang='scss'>
@import "~@/styles/public.scss";
@import "~@/styles/public.scss";
/deep/.el-form {
display: flex;
flex-direction: column;
height: calc(100vh - 130px);
}
/deep/.el-form {
display: flex;
flex-direction: column;
height: calc(100vh - 130px);
}
/deep/.el-form-item__label {
padding: 0;
}
/deep/.el-form-item__label {
padding: 0;
}
/deep/.el-radio {
margin-right: 10px;
}
/deep/.el-radio {
margin-right: 10px;
}
/deep/.el-select {
width: 100%;
}
/deep/.el-select {
width: 100%;
}
/deep/.el-form-item {
margin-bottom: 8px;
}
/deep/.el-form-item {
margin-bottom: 8px;
}
.marginBot0 {
margin-bottom: 0 !important;
}
.marginBot0 {
margin-bottom: 0 !important;
}
.slxx {
box-sizing: border-box;
}
.slxx {
box-sizing: border-box;
}
.slxx_con {
flex: 1;
height: 100%;
background-color: #ffffff;
overflow-y: auto;
padding-right: 3px;
overflow-x: hidden;
}
.slxx_con {
flex: 1;
height: 100%;
background-color: #ffffff;
overflow-y: auto;
padding-right: 3px;
overflow-x: hidden;
}
.submit_btn {
height: 50px;
}
.submit_btn {
height: 50px;
}
.slxx_title {
border-bottom: 1px solid $borderColor;
padding-left: 10px;
padding-bottom: 5px;
margin-bottom: 10px;
margin-top: 5px;
font-size: 16px;
font-weight: 500;
color: #4a4a4a;
}
.slxx_title {
border-bottom: 1px solid $borderColor;
padding-left: 10px;
padding-bottom: 5px;
margin-bottom: 10px;
margin-top: 5px;
font-size: 16px;
font-weight: 500;
color: #4a4a4a;
}
.btn {
text-align: center;
padding-top: 10px;
height: 36px;
background-color: #ffffff;
padding: 5px 0;
}
.btn {
text-align: center;
padding-top: 10px;
height: 36px;
background-color: #ffffff;
padding: 5px 0;
}
.textArea {
/deep/.el-textarea__inner {
min-height: 90px !important;
.textArea {
/deep/.el-textarea__inner {
min-height: 90px !important;
}
}
}
/deep/.el-form-item__label {
padding-bottom: 0px;
}
/deep/.el-form-item__label {
padding-bottom: 0px;
}
</style>
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:45:26
-->
<template>
<!-- 受理信息 -->
<div class="slxx">
......@@ -201,6 +206,7 @@
Init(formdata).then((res) => {
this.$nextTick(() => {
that.ruleForm = res.result;
console.log(that.ruleForm, 'that.ruleFormthat.ruleFormthat.ruleForm');
that.$endLoading();
that.isShow = true;
this.czrOptions = this.ruleForm.qlrList;
......@@ -260,14 +266,16 @@
//是否分别持证
if (this.ruleForm.slywxx.sqfbcz == '1') { //是
this.ruleForm.qlrList.forEach((item, index) => {
item.sfczr = "1";
item.sfczr = "1"
});
} else {
this.ruleForm.qlrList.forEach((item, index) => {
if (item.zjh == this.ruleForm.czr) {
item.sfczr = "1";
item.sfczr = "1"
} else {
item.sfczr = "0"
}
});
})
}
}
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:45:28
-->
<template>
<!-- 受理信息 -->
<div class="slxx">
......@@ -182,82 +187,87 @@
</div>
</template>
<script>
import { mapGetters } from "vuex";
import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
import { Init, saveData } from "@/api/workflow/jsydsyqFlow.js";
export default {
mounted () {
this.propsParam = this.$attrs;
var formdata = new FormData();
this.$startLoading();
formdata.append("bsmSldy", this.propsParam.bsmSldy);
formdata.append("djlx", this.propsParam.djlx);
Init(formdata).then((res) => {
if (res.code === 200 && res.result) {
this.ruleForm = res.result;
this.$endLoading();
}
});
},
components: { qlrCommonTable },
computed: {
...mapGetters(["dictData", "flag"])
},
data () {
return {
disabled: true,
czrOptions: [],
ruleForm: {},
//传递参数
propsParam: {},
rules: {},
};
},
methods: {
// 更新权利人信息
upDateQlrxxList (val) {
this.ruleForm.qlrList = _.cloneDeep(val);
},
onSubmit () {
saveData(this.ruleForm).then((res) => {
if (res.code === 200) {
this.$message({
showClose: true,
message: "保存成功!",
type: "success",
});
} else {
this.$message({
showClose: true,
message: res.message,
type: "error",
});
import { mapGetters } from "vuex";
import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
import { Init, saveData } from "@/api/workflow/jsydsyqFlow.js";
export default {
mounted () {
this.propsParam = this.$attrs;
var formdata = new FormData();
this.$startLoading();
formdata.append("bsmSldy", this.propsParam.bsmSldy);
formdata.append("djlx", this.propsParam.djlx);
Init(formdata).then((res) => {
if (res.code === 200 && res.result) {
this.ruleForm = res.result;
this.$endLoading();
}
});
},
compare () {
this.$popup({
titleStyle: "left",
title: "土地变化情况比对", // 弹窗标题
editItem: "registerBook/jsydsyq", // 弹窗内容
formData: this.propsParam,
width: "1220px",
height: "790px",
// cancelText: '取消摆烂', // 右边按钮文本
// confirmText: '确定点击', //左边按钮文本
cancel: () => {
console.log("取消回调");
},
confirm: () => {
console.log("确认回调");
components: { qlrCommonTable },
computed: {
...mapGetters(["dictData", "flag"])
},
data () {
return {
disabled: true,
czrOptions: [],
ruleForm: {
slywxx: {},
qlxx: {},
zdjbxx: {},
jsydsyq: {}
},
});
}
},
//传递参数
propsParam: {},
rules: {},
};
},
methods: {
// 更新权利人信息
upDateQlrxxList (val) {
this.ruleForm.qlrList = _.cloneDeep(val);
},
onSubmit () {
saveData(this.ruleForm).then((res) => {
if (res.code === 200) {
this.$message({
showClose: true,
message: "保存成功!",
type: "success",
});
} else {
this.$message({
showClose: true,
message: res.message,
type: "error",
});
}
});
},
compare () {
this.$popup({
titleStyle: "left",
title: "土地变化情况比对", // 弹窗标题
editItem: "registerBook/jsydsyq", // 弹窗内容
formData: this.propsParam,
width: "1220px",
height: "790px",
// cancelText: '取消摆烂', // 右边按钮文本
// confirmText: '确定点击', //左边按钮文本
cancel: () => {
console.log("取消回调");
},
confirm: () => {
console.log("确认回调");
},
});
}
},
};
};
</script>
<style scoped lang='scss'>
@import "~@/styles/public.scss";
@import "~@/styles/slxx/slxx.scss";
@import "~@/styles/public.scss";
@import "~@/styles/slxx/slxx.scss";
</style>
......
......@@ -55,15 +55,15 @@
</el-row>
</el-form>
</div>
<div class="from-clues-content">
<lb-table ref="table" @row-dblclick="handleRowClick" :page-size="pageData.pageSize" :heightNum="400"
<div class="from-clues-content loadingtext">
<lb-table ref="table" @row-dblclick="handleRowClick" :page-size="pageData.pageSize" :calcHeight="300"
:current-page.sync="pageData.currentPage" :total="zrztableData.total" @size-change="handleSizeChange"
@p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="zrztableData.columns"
:data="zrztableData.data">
</lb-table>
</div>
<div class="submit_button">
<el-button @click="closeDialog">取消</el-button>
<el-button @click="$popupCacel">取消</el-button>
<el-button type="primary" plain @click="submitForm">发起申请</el-button>
</div>
</div>
......@@ -72,7 +72,7 @@
<el-form :model="querydzForm" ref="querydzForm" label-width="110px">
<el-row>
<el-col :span="7">
<el-form-item label="宗地代码11">
<el-form-item label="宗地代码">
<el-input placeholder="请输入宗地代码" v-model="querydzForm.zddm" clearable>
</el-input>
</el-form-item>
......@@ -107,7 +107,7 @@
</el-form>
</div>
<div class="from-clues-content loadingtext">
<lb-table ref="table" @row-dblclick="handleRowClick" :page-size="pageData.pageSize" :calcHeight="300"
<lb-table ref="table" @row-dblclick="handleRowClick" :page-size="pageData.pageSize" :calcHeight="400"
:current-page.sync="pageData.currentPage" :total="dztableData.total" @size-change="handleSizeChange"
@p-current-change="handleCurrentChange" @selection-change="handleSelectionChange" :column="dztableData.columns"
:data="dztableData.data">
......@@ -121,10 +121,10 @@
</div>
</template>
<script>
import Vue from 'vue'
import store from '@/store/index.js'
//国有建设用地使用权/房屋使用权
import { datas, sendThis } from "../javascript/fwsyq.js";
// import { datasduo, sendThisduo } from "../javascript/fwsyqduo.js";
import table from "@/utils/mixin/table";
import jump from "@/views/ywbl/ywsq/components/mixin/jump";
import { selectScBdcdy, startBusinessFlow, choiceBdcdy, selectOtherH, selectZrz, selectDz } from "@/api/ywbl.js";
......@@ -199,7 +199,7 @@
} else {
//从办理框架选择不动产单元进入
//房屋首次办理选择不动产需找出对应自然幢下未选择的户
this.queryzrzForm.bsmSlsq = this.$route.query.bsmSlsq;
this.queryzrzForm.bsmSlsq = Vue.prototype.$currentRoute.query.bsmSlsq;
selectOtherH({ ...this.queryzrzForm, ...this.pageData }).then((res) => {
this.$endLoading();
if (res.code === 200) {
......@@ -241,7 +241,7 @@
})
} else {
choiceBdcdy({
bsmSlsq: this.$route.query.bsmSlsq,
bsmSlsq: Vue.prototype.$currentRoute.query.bsmSlsq,
bdcdysz: this.bdcdysz
}).then(res => {
if (res.code == 200) {
......@@ -268,6 +268,8 @@
width: '85%',
formData: {
bsm: item.bsm,
zrzbsm: item.bsm,
zdbsm: item.zdbsm,
bsmSqyw: this.bsmSqyw,
djqxbm: this.sqywInfo.nodetype == "djqx" ? this.sqywInfo.nodecode : "",
djqxmc: this.sqywInfo.nodetype == "djqx" ? this.sqywInfo.nodename : "",
......
......@@ -8,7 +8,7 @@ export default {
methods: {
//点击行选中或取消复选框
handleRowClick (row, column, event) {
(this.$refs.table.toggleRowSelection(row))
this.$refs.table.toggleRowSelection(row)
},
jump (data, type) {
const { href } = Router.resolve(
......
......@@ -12,7 +12,7 @@
</el-col>
<el-col :span="10">
<el-form-item label="坐落">
<el-input placeholder="请输入坐落" v-model="queryForm.zl" clearable class="width300px">
<el-input placeholder="请输入坐落" v-model.trim="queryForm.zl" clearable class="width300px">
</el-input>
</el-form-item>
</el-col>
......
......@@ -12,7 +12,7 @@
</el-col>
<el-col :span="10">
<el-form-item label="坐落">
<el-input placeholder="请输入坐落" v-model="queryForm.zl" clearable class="width100">
<el-input placeholder="请输入坐落" v-model.trim="queryForm.zl" clearable class="width100">
</el-input>
</el-form-item>
</el-col>
......
......@@ -77,7 +77,7 @@
methods: {
queryClick () {
this.$startLoading();
selectAllHInfo({ ...this.queryForm, ...this.pageData }).then((res) => {
selectAllHInfo({ "zrzbsm":this.sqywInfo.zrzbsm,...this.queryForm, ...this.pageData }).then((res) => {
this.$endLoading();
if (res.code === 200) {
let { total, records } = res.result;
......
......@@ -19,7 +19,7 @@
</el-col>
<el-col :span="8">
<el-form-item label="坐落">
<el-input placeholder="请输入坐落" v-model="queryForm.zl" clearable class="width100">
<el-input placeholder="请输入坐落" v-model.trim="queryForm.zl" clearable class="width100">
</el-input>
</el-form-item>
</el-col>
......@@ -106,6 +106,7 @@
if (!this.isJump) {
this.jump(res.result, this.sqywInfo.djywbm);
} else {
this.$popupCacel()
store.dispatch('user/refreshPage', true);
}
} else {
......
......@@ -26,7 +26,7 @@
</el-col>
<el-col :span="10">
<el-form-item label="坐落">
<el-input placeholder="请输入坐落" v-model="queryForm.zl" clearable class="width100">
<el-input placeholder="请输入坐落" v-model.trim="queryForm.zl" clearable class="width100">
</el-input>
</el-form-item>
</el-col>
......
<template>
<div class="from-clues">
<!-- 表单部分 -->
<div class="from-clues-header">
<el-form :model="queryForm" ref="queryForm" label-width="100px">
<el-row>
<el-col :span="8">
<el-form-item label="不动产单元号">
<el-input placeholder="请输入不动产单元号" v-model="queryForm.bdcdyh" clearable maxlength="28" class="width100">
</el-input>
</el-form-item>
</el-col>
<el-col :span="10">
<el-form-item label="不动产权证号">
<el-input placeholder="请输入不动产权证号" v-model="queryForm.bdcqzh" clearable class="width100">
</el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="权利人">
<el-input placeholder="请输入权利人" v-model="queryForm.qlr" clearable class="width100">
</el-input>
</el-form-item>
</el-col>
<el-col :span="10">
<el-form-item label="坐落">
<el-input placeholder="请输入坐落" v-model.trim="queryForm.zl" clearable class="width100">
</el-input>
</el-form-item>
</el-col>
<el-col :span="6" class="btnColRight">
<el-form-item>
<el-button type="primary" @click="resetForm(true)">重置</el-button>
<el-button type="primary" @click="handleSearch">查询</el-button>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
<!-- 表格 -->
<div class="from-clues-content loadingtext">
分割合并前权利信息
<lb-table ref="table" @row-click="handleRowClick" heightNumSetting :pagination=false
:column="tableData.columns" :data="tableData.data">
</lb-table>
</div>
<div class="from-clues-content loadingtext">
分割合并后宗地信息
<lb-table ref="table" :pagination=false :calcHeight="500" :column="tableData.columns1"
:data="tableData.datastwo">
</lb-table>
</div>
<div class="submit_button">
<el-button @click="$popupCacel">取消</el-button>
<el-button type="primary" plain @click="submitForm">发起申请</el-button>
</div>
</div>
</template>
<script>
//首次登记
import store from '@/store/index.js'
import { datas, datastwo, sendThis } from "../javascript/selectJsydsyq.js";
import { defaultParameters } from "../javascript/publicDefaultPar.js";
import table from "@/utils/mixin/table";
import jump from "./mixin/jump";
import { startBusinessFlow, selectJsydQlxxSplitMergeBefore, selectZdjbxxSplitMergeLast } from "@/api/ywbl.js";
export default {
mixins: [table, jump],
props: {
isJump: { type: Boolean, default: false },
sqywInfo: { type: Object, default: () => { } },
},
data () {
return {
queryForm: defaultParameters.defaultParameters(),
// 表格数据
tableData: {
columns: [{
label: '选择',
width: '50px',
render: (h, scope) => {
return (
<div class="orgColumn">
<el-radio v-model={this.radioVal} label={scope.row.bhqkbsm}>
&ensp;
</el-radio>
</div>
)
}
},].concat(datas.columns()),
data: [],
columns1: datastwo.columns1(),
datastwo: []
},
bdcdysz: [],
radioVal: ""
}
},
mounted () {
sendThis(this)
},
methods: {
// 单选事件
close () {
this.queryForm.bhqkbsm = this.radioVal
selectZdjbxxSplitMergeLast({ ...this.queryForm }).then((res) => {
this.$endLoading();
if (res.code === 200) {
this.tableData.datastwo = res.result
this.tableData.datastwo.forEach(item => {
item.bglx = '2'
})
this.bdcdysz = [this.bdcdysz[0], ...this.tableData.datastwo]
}
})
},
queryClick () {
this.$startLoading();
this.queryForm.sqywbm = this.sqywInfo.djywbm;
selectJsydQlxxSplitMergeBefore({ ...this.queryForm, ...this.pageData }).then((res) => {
this.$endLoading();
if (res.code === 200) {
this.tableData.data = res.result
}
});
},
handleRowClick (val) {
this.radioVal = val.bhqkbsm
let obj = val
obj.bsmSsql = val.bsmQlxx;
obj.ybdcqzsh = val.bdcqzh;
obj.bglx = '1';
this.bdcdysz[0] = obj
this.close()
},
submitForm () {
startBusinessFlow({
bsmSqyw: this.sqywInfo.parentid,
bdcdysz: this.bdcdysz,
djqxbm: this.sqywInfo.nodetype == "djqx" ? this.sqywInfo.nodecode : "",
djqxmc: this.sqywInfo.nodetype == "djqx" ? this.sqywInfo.nodename : "",
}).then((res) => {
if (res.code == 200) {
this.$message({
showClose: true,
message: "发起申请成功",
type: "success",
});
if (!this.isJump) {
this.jump(res.result, this.sqywInfo.djywbm);
} else {
store.dispatch('user/refreshPage', true);
}
} else {
this.$message.error(res.message)
}
})
},
openBook (row) {
var param = {
bdcdyid: row.bdcdyid,
qllx: row.qllx,
bdcdyh: row.bdcdyh,
bsmQlxx: row.bsmQlxx,
};
this.$popup("登记簿详情", "registerBook/djbFrame", {
formData: param
})
}
}
}
</script>
<style scoped lang="scss">
@import "~@/styles/mixin.scss";
@import "~@/styles/public.scss";
</style>
......@@ -12,7 +12,7 @@
</el-col>
<el-col :span="10">
<el-form-item label="坐落">
<el-input placeholder="请输入坐落" v-model="queryForm.zl" clearable class="width300px">
<el-input placeholder="请输入坐落" v-model.trim="queryForm.zl" clearable class="width300px">
</el-input>
</el-form-item>
</el-col>
......
......@@ -19,7 +19,7 @@
</el-col>
<el-col :span="6">
<el-form-item label="坐落">
<el-input placeholder="" v-model="queryForm.zl" clearable class="width200px">
<el-input placeholder="" v-model.trim="queryForm.zl" clearable class="width200px">
</el-input>
</el-form-item>
</el-col>
......
......@@ -19,7 +19,7 @@
</el-col>
<el-col :span="6">
<el-form-item label="坐落">
<el-input placeholder="" v-model="queryForm.zl" clearable class="width200px">
<el-input placeholder="" v-model.trim="queryForm.zl" clearable class="width200px">
</el-input>
</el-form-item>
</el-col>
......
......@@ -19,7 +19,7 @@
</el-col>
<el-col :span="6">
<el-form-item label="坐落">
<el-input placeholder="" v-model="queryForm.zl" clearable class="width200px">
<el-input placeholder="" v-model.trim="queryForm.zl" clearable class="width200px">
</el-input>
</el-form-item>
</el-col>
......
......@@ -19,7 +19,7 @@
<div class="right-title">常办业务列表</div>
<ul>
<li :class="item.selected ? 'cactive' : ''" v-for="(item, index) in collectList" :key="index"
@dblclick="dblclick(collectList, index)" @click="selectSqywClick(collectList, index)">
@dblclick="dblclick(collectList, index, item)" @click="selectSqywClick(collectList, index)">
<p v-if="item.nodetype == 'djqx'">{{ item.djywmc }}<br>{{ item.nodename }}</p>
<dt v-else>{{ item.djywmc }}</dt>
<p class="active" @click.stop="handleCollection(item)">
......@@ -37,7 +37,7 @@
<div class="right-type el-card box-card is-always-shadow">
<div class="right-title">登记类型</div>
<ul class="type-content">
<li :class="item.selected ? 'cactive' : ''" @dblclick="item.sffqlc == 1 && dblclick(djlxList, index)"
<li :class="item.selected ? 'cactive' : ''" @dblclick="item.sffqlc == 1 && dblclick(djlxList, index, item)"
@click="selectSqywClick(djlxList, index)" v-for="(item, index) in djlxList" :key="index">
<p>
{{ item.nodename }}
......@@ -53,7 +53,7 @@
<div class="right-title">登记情形</div>
<ul>
<li :class="item.selected ? 'cactive' : ''" v-for="(item, index) in djqxList" :key="index"
@dblclick="dblclick(djqxList, index)" @click="selectSqywClick(djqxList, index)">
@dblclick="dblclick(djqxList, index, item)" @click="selectSqywClick(djqxList, index)">
<dt>{{ item.nodename }}</dt>
<p :class="item.userCollect == 1 ? 'active' : ''" @click.stop="handleCollection(item)">
<i class="el-icon-star-off"></i>
......@@ -69,206 +69,207 @@
</div>
</template>
<script>
import { getCollectBiz, getleftMenu, getNextNode, addCollectBiz, deleteCollectBiz } from "@/api/ywbl"
export default {
data () {
return {
//申请业务类型集合
sqywlxList: [
{ name: "常办业务", type: "collect" },
{ name: "一并申请", type: "together" },
{ name: "登记簿补录", type: "amend" }
],
//类型默认选择常办业务
selectType: "collect",
//堆叠框选中第一个
activeNames: ['1'],
//收藏业务集合
collectList: [],
//申请权利类型集合
sqywQllxList: [],
//登记类型集合
djlxList: [],
//申请权利类型集合
djqxList: [],
//选中业务的参数
selectParam: {},
//选择按钮显示或隐藏
btnDisabled: true,
}
},
created () {
this.getDataList();
},
methods: {
getDataList () {
//获取收藏信息集合
getCollectBiz().then(res => {
this.collectList = res.result;
this.collectList.forEach(item => {
this.$set(item, 'selected', false);
});
});
//获取申请权利信息集合
getleftMenu().then(res => {
this.sqywQllxList = res.result;
})
},
//申请业务类型菜单事件
sqywlxClick (item) {
this.btnDisabled = true;
this.selectType = item.type;
this.sqywQllxList.forEach(item => {
if (item.check) item.check = false;
})
},
//权利类型菜单事件
qllxClick (index) {
this.btnDisabled = true;
this.sqywQllxList.forEach(item => {
if (item.check) item.check = false;
})
this.sqywQllxList[index].check = true;
this.selectType = "apply";
this.djlxList = [];
this.djqxList = [];
this.getNextNode(this.sqywQllxList[index].bsmSqyw);
},
//选择申请业务事件
selectSqywClick (data, index) {
data.forEach(item => {
item.selected = false;
});
data[index].selected = true;
if (data[index].sffqlc == "1") {
this.selectParam = data[index];
this.btnDisabled = false;
} else {
this.btnDisabled = true;
this.getNextNode(data[index].bsmSqyw);
import { getCollectBiz, getleftMenu, getNextNode, addCollectBiz, deleteCollectBiz } from "@/api/ywbl"
export default {
data () {
return {
//申请业务类型集合
sqywlxList: [
{ name: "常办业务", type: "collect" },
{ name: "一并申请", type: "together" },
{ name: "登记簿补录", type: "amend" }
],
//类型默认选择常办业务
selectType: "collect",
//堆叠框选中第一个
activeNames: ['1'],
//收藏业务集合
collectList: [],
//申请权利类型集合
sqywQllxList: [],
//登记类型集合
djlxList: [],
//申请权利类型集合
djqxList: [],
//选中业务的参数
selectParam: {},
//选择按钮显示或隐藏
btnDisabled: true,
}
},
//获取下个节点类型数据
getNextNode (bsmSqyw) {
getNextNode(bsmSqyw).then(res => {
if (res.result.djqx) {
this.djqxList = res.result.djqx;
this.djqxList.forEach(item => {
this.$set(item, 'selected', false);
});
}
if (res.result.djlx) {
this.djlxList = res.result.djlx;
this.djlxList.forEach(item => {
created () {
this.getDataList();
},
methods: {
getDataList () {
//获取收藏信息集合
getCollectBiz().then(res => {
this.collectList = res.result;
this.collectList.forEach(item => {
this.$set(item, 'selected', false);
});
});
//获取申请权利信息集合
getleftMenu().then(res => {
this.sqywQllxList = res.result;
})
},
//申请业务类型菜单事件
sqywlxClick (item) {
this.btnDisabled = true;
this.selectType = item.type;
this.sqywQllxList.forEach(item => {
if (item.check) item.check = false;
})
},
//权利类型菜单事件
qllxClick (index) {
this.btnDisabled = true;
this.sqywQllxList.forEach(item => {
if (item.check) item.check = false;
})
this.sqywQllxList[index].check = true;
this.selectType = "apply";
this.djlxList = [];
this.djqxList = [];
this.getNextNode(this.sqywQllxList[index].bsmSqyw);
},
//选择申请业务事件
selectSqywClick (data, index) {
data.forEach(item => {
item.selected = false;
});
data[index].selected = true;
if (data[index].sffqlc == "1") {
this.selectParam = data[index];
this.btnDisabled = false;
} else {
this.btnDisabled = true;
this.getNextNode(data[index].bsmSqyw);
}
})
},
//双击事件
dblclick (data, index) {
this.selectSqywClick(data, index);
this.dialogClick();
},
//打开弹框内容
dialogClick () {
this.openDialog();
},
//收藏操作
handleCollection (item) {
let that = this
if (item.userCollect == '2') {
addCollectBiz(item.bsmSqyw).then(res => {
if (res.code == 200) {
item.userCollect = '1'
that.$message({
message: '收藏成功!',
type: 'success'
})
that.getDataList()
},
//获取下个节点类型数据
getNextNode (bsmSqyw) {
getNextNode(bsmSqyw).then(res => {
if (res.result.djqx) {
this.djqxList = res.result.djqx;
this.djqxList.forEach(item => {
this.$set(item, 'selected', false);
});
}
if (res.result.djlx) {
this.djlxList = res.result.djlx;
this.djlxList.forEach(item => {
this.$set(item, 'selected', false);
});
}
})
} else {
this.$confirm('此操作将取消收藏, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
deleteCollectBiz(item.bsmSqyw).then(res => {
},
//双击事件
dblclick (data, index, item) {
localStorage.setItem('ywbl', JSON.stringify(item));
this.selectSqywClick(data, index);
this.dialogClick();
},
//打开弹框内容
dialogClick () {
this.openDialog();
},
//收藏操作
handleCollection (item) {
let that = this
if (item.userCollect == '2') {
addCollectBiz(item.bsmSqyw).then(res => {
if (res.code == 200) {
item.userCollect = '2'
item.userCollect = '1'
that.$message({
message: '取消收藏成功!',
message: '收藏成功!',
type: 'success'
})
that.getDataList()
}
})
} else {
this.$confirm('此操作将取消收藏, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
deleteCollectBiz(item.bsmSqyw).then(res => {
if (res.code == 200) {
item.userCollect = '2'
that.$message({
message: '取消收藏成功!',
type: 'success'
})
that.getDataList()
}
})
})
}
},
handleSelect (item) {
this.busList.forEach(item => {
item.cselect = false
})
item.cselect = !item.cselect
},
// 登记类型
handleDjlxSelect (item) {
this.djlxList.forEach(item => {
item.cselect = false
})
}
},
handleSelect (item) {
this.busList.forEach(item => {
item.cselect = false
})
item.cselect = !item.cselect
},
// 登记类型
handleDjlxSelect (item) {
this.djlxList.forEach(item => {
item.cselect = false
})
this.btnDisabled = true
item.cselect = true;
this.djqxObj = item;
if (item.sffqlc == '1') {
this.btnDisabled = false
this.bsmSqyw = item.bsmSqyw
this.djywbm = item.djywbm;
} else {
this.getNextNode(item.bsmSqyw, false)
}
this.djqxList = []
},
handleDjqxItem (item) {
this.djlxList.forEach(item => {
item.cselect = false
})
if (item.sffqlc == 1) {
this.djywbm = item.djywbm
this.bsmSqyw = item.bsmSqyw
item.cselect = true
this.openDialog()
this.btnDisabled = true
item.cselect = true;
this.djqxObj = item;
if (item.sffqlc == '1') {
this.btnDisabled = false
this.bsmSqyw = item.bsmSqyw
this.djywbm = item.djywbm;
} else {
this.getNextNode(item.bsmSqyw, false)
}
this.djqxList = []
},
handleDjqxItem (item) {
this.djlxList.forEach(item => {
item.cselect = false
})
if (item.sffqlc == 1) {
this.djywbm = item.djywbm
this.bsmSqyw = item.bsmSqyw
item.cselect = true
this.openDialog()
this.btnDisabled = true
}
},
handleSelectItem (item, list) {
this.handleSelectYw(item, list)
this.openDialog()
},
// 选择不动产信息
bthSelectClick () {
this.openDialog()
},
openDialog () {
let title = "申请业务:" + this.selectParam?.djywmc ? this.selectParam?.djywmc : '';
this.$popupDialog(title, "ywbl/ywsq/selectBdc", { 'sqywInfo': this.selectParam }, "80%")
},
loadView (view) {
return r => require.ensure([], () => r(require(`./components/${view}/${view}.vue`)))
}
},
handleSelectItem (item, list) {
this.handleSelectYw(item, list)
this.openDialog()
},
// 选择不动产信息
bthSelectClick () {
this.openDialog()
},
openDialog () {
let title = "申请业务:" + this.selectParam?.djywmc ? this.selectParam?.djywmc : '';
this.$popupDialog(title, "ywbl/ywsq/selectBdc", { 'sqywInfo': this.selectParam }, "80%")
},
loadView (view) {
return r => require.ensure([], () => r(require(`./components/${view}/${view}.vue`)))
}
}
}
</script>
<style scoped lang='scss'>
@import "~@/styles/mixin.scss";
@import './ywsq.scss';
@import "~@/styles/mixin.scss";
@import "./ywsq.scss";
/deep/.el-collapse-item__content {
padding-bottom: 0;
}
/deep/.el-collapse-item__content {
padding-bottom: 0;
}
/deep/.el-collapse-item__wrap {
border-bottom: none;
}
/deep/.el-collapse-item__wrap {
border-bottom: none;
}
</style>
\ No newline at end of file
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:36:52
*/
import filter from '@/utils/filter.js'
let vm = null
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:36:58
*/
import filter from '@/utils/filter.js'
let vm = null
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:37:01
*/
import filter from '@/utils/filter.js'
let vm = null
......@@ -13,11 +18,11 @@ class data extends filter {
{
type: 'selection',
label: '全选',
width: '30',
width: '50',
selectable: this.selected
},
{
label: '序号1',
label: '序号',
type: 'index',
width: '50',
render: (h, scope) => {
......@@ -68,6 +73,7 @@ class data extends filter {
{
prop: "jzwmc",
label: "建筑物名称",
minWidth: '80'
},
{
label: "土地/房屋性质",
......@@ -130,11 +136,11 @@ class data extends filter {
{
type: 'selection',
label: '全选',
width: '30',
width: '50',
selectable: this.selected
},
{
label: '序号2',
label: '序号',
type: 'index',
width: '50',
render: (h, scope) => {
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:37:05
*/
import filter from '@/utils/filter.js'
let vm = null
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:37:08
*/
import filter from '@/utils/filter.js'
let vm = null
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:37:14
*/
import filter from '@/utils/filter.js'
let vm = null
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:37:18
*/
import filter from '@/utils/filter.js'
let vm = null
......@@ -62,19 +67,19 @@ class data extends filter {
label: "不动产单元号",
},
{
prop: "fwxz",
prop: "fwxzmc",
label: "房屋性质",
},
{
prop: "fwjgmc",
prop: "showfwjg",
label: "房屋结构",
},
{
prop: "mj",
prop: "jzmj",
label: "面积",
},
{
prop: "showTdyt",
prop: "showFwyt",
label: "用途",
},
{
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:37:22
*/
import filter from '@/utils/filter.js'
let vm = null
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:37:24
*/
import filter from '@/utils/filter.js'
let vm = null
const sendThis = (_this) => {
vm = _this
}
// const sendThiss= (_this) => {
// vm1 = _this
// }
class data extends filter {
constructor() {
super()
......@@ -11,11 +19,6 @@ class data extends filter {
columns () {
return [
{
type: 'selection',
label: '全选',
selectable: this.selected
},
{
label: '序号',
type: 'index',
width: '50',
......@@ -105,10 +108,89 @@ class data extends filter {
]
}
}
class datatwo extends filter {
constructor() {
super()
}
columns1 () {
return [
{
label: '序号',
type: 'index',
width: '50',
render: (h, scope) => {
return (
<div>
{(vm.pageData.currentPage - 1) * vm.pageData.pageSize + scope.$index + 1}
</div>
)
}
},
{
label: "状态",
render: (h, scope) => {
return (
<div>
{/* <a v-on:click="doSomething"></a> */}
<a style='color:#3498db;' v-show={scope.row.djblzt == 1} >正在办理</a>
<span v-show={scope.row.zjgcdyzt == 1}>,在建工程抵押</span>
<span v-show={scope.row.ycfzt == 1}>,已预查封</span>
<span v-show={scope.row.ycfzt == 1}>,已预查封</span>
<span v-show={scope.row.cfzt == 1}>,已查封</span>
<span v-show={scope.row.diyizt == 1}>,已地役</span>
<span v-show={scope.row.yyzt == 1}>,异议中</span>
<span v-show={scope.row.xzzt == 1}>,已限制</span>
<span v-show={scope.row.ygmmzt == 1}>,已预告买卖</span>
<span v-show={scope.row.ygdyzt == 1}>,已预告抵押</span>
<span v-show={scope.row.dyzt == 1}>,已抵押</span>
</div>
)
}
},
{
prop: "qllxmc",
label: "权利类型",
},
{
prop: "zddm",
label: "宗地代码",
},
{
prop: "bdcdyh",
label: "不动产单元号",
minWidth: '110'
},
{
prop: "qlxzmc",
label: "权利性质",
},
{
prop: "mj",
label: "宗地面积(㎡)",
},
{
prop: "qlsdfsmc",
label: "权利设定方式",
},
{
prop: "ytmc",
label: "土地用途",
},
{
prop: "zl",
label: "坐落",
minWidth: '110'
},
]
}
}
let datas = new data()
let datastwo = new datatwo ()
export {
datas,
datastwo ,
sendThis
}
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:37:39
*/
import filter from '@/utils/filter.js'
let vm = null
......
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-05-17 10:37:47
*/
import filter from '@/utils/filter.js'
let vm = null
......
export function queueDjywmc(djywbm) {
export function queueDjywmc(djywbm, djqxbm) {
console.log(djqxbm);
if (djqxbm == "A0320099" || djqxbm == "A0330099") {
return "selectJsydsyqSplitMerge";
}
let vm = null;
switch (djywbm) {
case "A03100"://建设用地使用权(首次登记)
......@@ -26,7 +30,7 @@ export function queueDjywmc(djywbm) {
case "A04200":
case "A04300":
case "A04400":
vm="selectFwsyq";
vm = "selectFwsyq";
break;
case "A23100"://农用地使用权(首次登记)
case "A09100"://土地经营权(首次登记)
......@@ -50,19 +54,19 @@ export function queueDjywmc(djywbm) {
vm = "cfdj";
break;
case "B40100"://预告首次
vm ="selectYgdj100";
break;
vm = "selectYgdj100";
break;
case "B40200"://预告转移
case "B40300"://预告变更
case "B40400"://预告注销
case "B41100": //预告抵押首次
vm ="selectYgdj200";
break;
vm = "selectYgdj200";
break;
case "B41200": //预告抵押转移
case "B41300": //预告抵押变更
case "B41400": //预告抵押注销
vm ="selectYgdy";
break;
vm = "selectYgdy";
break;
default:
vm = "selecBdcql";
break;
......
<!--
* @Description:
* @Description: 选择不动产单元号
* @Autor: renchao
* @LastEditTime: 2023-04-17 16:06:24
* @LastEditTime: 2023-05-18 10:59:48[文件:bdcdj-index.html]
-->
<template>
<component :is="router" :sqywInfo="formData.sqywInfo" :isJump="formData.isJump ? formData.isJump : false"
@updateDialog="updateDialog" />
</template>
<script>
import { queueDjywmc } from "./slectBdcdata.js";
export default {
props: {
formData: {
type: Object,
default: () => { }
}
},
data () {
return {
title: "",
router: ""
}
},
mounted () {
if (this.formData?.sqywInfo?.djywbm || this.formData?.djywbm) {
let view = queueDjywmc(this.formData?.sqywInfo?.djywbm || this.formData?.djywbm);
this.router = this.loadView(view);
} else {
let view = queueDjywmc(this.$route.query?.sqywbm);
this.router = this.loadView(view);
}
},
methods: {
loadView (view) {
console.log(view, 'view');
return (r) =>
require.ensure([], () => r(require(`./components/${view}.vue`)));
import { queueDjywmc } from "./javascript/slectBdcdata.js";
export default {
props: {
formData: {
type: Object,
default: () => { }
}
},
updateDialog () {
this.$popupCacel()
this.$emit("updateDialog", true);
data () {
return {
title: "",
router: ""
}
},
mounted () {
if (this.formData?.sqywInfo?.djywbm || this.formData?.djywbm) {
let view = queueDjywmc(this.formData?.sqywInfo?.djywbm || this.formData?.djywbm,this.formData?.sqywInfo?.nodecode || this.formData?.nodecode);
this.router = this.loadView(view);
} else {
let view = queueDjywmc(this.$route.query?.sqywbm);
this.router = this.loadView(view);
}
},
methods: {
loadView (view) {
console.log(view, 'view');
return (r) =>
require.ensure([], () => r(require(`./components/${view}.vue`)));
},
updateDialog () {
this.$popupCacel()
this.$emit("updateDialog", true)
}
}
}
}
</script>
<style scoped lang="scss">
@import "~@/styles/mixin.scss";
@import "~@/styles/public.scss";
@import "~@/styles/mixin.scss";
@import "~@/styles/public.scss";
/deep/.submit_button {
text-align: center;
padding: 10px;
margin: 10px;
}
/deep/.submit_button {
text-align: center;
padding: 10px;
margin: 10px;
}
</style>
......
......@@ -63,7 +63,7 @@
</el-col>
<el-col :span="5">
<el-form-item label="坐落">
<el-input placeholder="如需要模糊查询,前后输入%" v-model="queryForm.zl" clearable class="width100">
<el-input placeholder="如需要模糊查询,前后输入%" v-model.trim="queryForm.zl" clearable class="width100">
</el-input>
</el-form-item>
</el-col>
......@@ -80,82 +80,82 @@
</div>
</template>
<script>
import { mapGetters } from 'vuex'
import table from "@/utils/mixin/table";
import { datas, sendThis } from "./jdcxdata";
import { getJdcxBysearch } from "@/api/zhcx.js"
export default {
name: "jdcx",
components: {},
mixins: [table],
mounted () {
sendThis(this);
},
computed: {
...mapGetters(['dictData'])
},
data () {
return {
queryForm: {
ywly: "",
qllx: "",
djlx: "",
ywh: "",
},
// pageData: {
// currentPage: 1,
// pageSize: 10,
// total: 0,
// },
tableData: {
total: 0,
columns: datas.columns(),
data: []
}
}
},
methods: {
// 初始化数据
queryClick () {
this.$startLoading()
getJdcxBysearch({ ...this.queryForm, ...this.pageData }).then(res => {
this.$endLoading()
if (res.code === 200) {
let { total, records } = res.result
// let str = ''
// records.forEach(item => {
// if (item.userNameList.length != 0) {
// str = String(item.userNameList)
// item.blStatus = item.zbhj + '(' + str.replace(/,/g, "+") + ')'
// }
// if (item.qlrmc.length != 0) {
// item.qlrmcStr = String(item.qlrmc)
// }
// if (item.ywrmc.length != 0) {
// item.ywrmcStr = String(item.ywrmc)
// }
// if (item.zlList.length != 0) {
// item.zlStr = String(item.zlList)
// }
// })
// this.pageData.total = total;
// this.tableData.data = records
this.tableData.total = total ? total : 0;
this.tableData.data = records ? records : [];
}
})
import { mapGetters } from 'vuex'
import table from "@/utils/mixin/table";
import { datas, sendThis } from "./jdcxdata";
import { getJdcxBysearch } from "@/api/zhcx.js"
export default {
name: "jdcx",
components: {},
mixins: [table],
mounted () {
sendThis(this);
},
computed: {
...mapGetters(['dictData'])
},
handleSort (name, sort) {
console.log(name, sort);
data () {
return {
queryForm: {
ywly: "",
qllx: "",
djlx: "",
ywh: "",
},
// pageData: {
// currentPage: 1,
// pageSize: 10,
// total: 0,
// },
tableData: {
total: 0,
columns: datas.columns(),
data: []
}
}
},
openDialog (item) {
const { href } = this.$router.resolve('/workFrameView?bsmSlsq=' + item.bsmSlsq + '&bestepid=' + item.bestepid + '&bsmBusiness=' + item.bsmBusiness + '&viewtype=3')
// window.open(href, '_blank');
window.open(href, `urlname${item.bsmSlsq}`);
methods: {
// 初始化数据
queryClick () {
this.$startLoading()
getJdcxBysearch({ ...this.queryForm, ...this.pageData }).then(res => {
this.$endLoading()
if (res.code === 200) {
let { total, records } = res.result
// let str = ''
// records.forEach(item => {
// if (item.userNameList.length != 0) {
// str = String(item.userNameList)
// item.blStatus = item.zbhj + '(' + str.replace(/,/g, "+") + ')'
// }
// if (item.qlrmc.length != 0) {
// item.qlrmcStr = String(item.qlrmc)
// }
// if (item.ywrmc.length != 0) {
// item.ywrmcStr = String(item.ywrmc)
// }
// if (item.zlList.length != 0) {
// item.zlStr = String(item.zlList)
// }
// })
// this.pageData.total = total;
// this.tableData.data = records
this.tableData.total = total ? total : 0;
this.tableData.data = records ? records : [];
}
})
},
handleSort (name, sort) {
console.log(name, sort);
},
openDialog (item) {
const { href } = this.$router.resolve('/workFrameView?bsmSlsq=' + item.bsmSlsq + '&bestepid=' + item.bestepid + '&bsmBusiness=' + item.bsmBusiness + '&viewtype=3')
// window.open(href, '_blank');
window.open(href, `urlname${item.bsmSlsq}`);
}
}
}
}
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
@import "~@/styles/public.scss";
</style>
......
......@@ -8,7 +8,7 @@ class data extends filter {
constructor() {
super()
}
columns () {
columns() {
return [
{
label: '序号',
......@@ -38,6 +38,21 @@ class data extends filter {
}
},
{
prop: "lzrxm",
label: "领取人",
width: '100'
},
{
prop: "fzsj",
label: "领取时间",
width: '140'
},
{
prop: "ywh",
label: "业务号",
width: '100'
},
{
label: "证书内容",
width: '80',
render: (h, scope) => {
......@@ -49,6 +64,11 @@ class data extends filter {
}
},
{
prop: "ysxlh",
label: "印刷序列号",
width: '100'
},
{
label: "权利类型",
prop: "qllx",
},
......@@ -58,22 +78,14 @@ class data extends filter {
minWidth: '110'
},
{
prop: "ysxlh",
label: "印刷序列号",
},
{
prop: "lzrxm",
label: "领取人",
},
{
prop: "fzsj",
label: "领取时间",
width: '140'
prop: "qlr",
label: "权利人",
},
{
prop: "ywh",
label: "业务号"
prop: "ywr",
label: "义务人",
},
{
prop: "bdcdyh",
label: "不动产单元号",
......
......@@ -6,7 +6,6 @@ function resolve (dir) {
return path.join(__dirname, dir)
}
const name = defaultSettings.title
const port = process.env.port || process.env.npm_config_port || 8888 // dev port
// All configuration item explanations can be find in https://cli.vuejs.org/config/
......@@ -49,7 +48,7 @@ module.exports = {
}
},
css: {
extract: false, // 是否使用css分离插件 ExtractTextPlugin
extract: true, // 是否使用css分离插件 ExtractTextPlugin
sourceMap: false, // 开启 CSS source maps?
loaderOptions: {
sass: {
......@@ -60,7 +59,10 @@ module.exports = {
},
// configureWebpack通过操作对象的形式,来修改默认的webpack配置
configureWebpack: {
name: name,
optimization: {
usedExports: true,
minimize: true
},
entry: {
app: './src/main.js'
},
......@@ -69,12 +71,11 @@ module.exports = {
'@': resolve('src')
}
},
devtool: '#eval-source-map' //测试
devtool: process.env.NODE_ENV === 'development' ? '#eval-source-map' : false
},
// chainWebpack通过链式编程的形式,来修改默认的webpack配置
chainWebpack (config) {
// it can improve the speed of the first screen, it is recommended to turn on preload
// it can improve the speed of the first screen, it is recommended to turn on preload
config.plugin('preload').tap(() => [
{
rel: 'preload',
......@@ -84,7 +85,6 @@ module.exports = {
include: 'initial'
}
])
// when there are many pages, it will cause too many meaningscss requests
config.plugins.delete('prefetch')
config.module
......